dsp.UniformEncoder

Квантуйте и закодируйте вход с плавающей точкой в целочисленный выход

Описание

dsp.UniformEncoder Система object™ квантует вход с плавающей точкой, с помощью точности, которую вы задаете в NumBits свойство, и кодирует квантованный вход в целочисленный выход. Работа универсального энкодера придерживается определения для линейного кодирования, заданного в Рекомендации G.701 ITU-T.

Квантовать и закодировать вход с плавающей точкой в целочисленный выход:

  1. Создайте dsp.UniformEncoder объект и набор его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Описание

пример

ue = dsp.UniformEncoder возвращает универсальный энкодер, ue, это квантует входные выборки с плавающей точкой и кодирует их как целые числа с помощью квантования 2N-уровня, где N является целым числом.

ue = dsp.UniformEncoder(peakvalue,numbits) возвращает универсальный энкодер, ue, с PeakValue набор свойств к peakvalue и NumBits набор свойств к numbits.

ue = dsp.UniformEncoder(___,Name,Value) возвращает универсальный энкодер, ue, с PeakValue набор свойств к peakvalue, NumBits набор свойств к numbits, и другой заданный набор свойств к заданным значениям.

Свойства

развернуть все

Если в противном случае не обозначено, свойства являются ненастраиваемыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируют, когда вы вызываете их и release функция разблокировала их.

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

Задайте самую большую входную амплитуду, которая будет закодирована, в виде неотрицательного числа. Если действительный или мнимый вход находится вне интервала [–P, (  1 – 2 (1 – B)) P], где P является пиковым значением, и B является значением NumBits свойство, универсальный энкодер насыщает (независимо для комплексных входных параметров) в тех пределах.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Укажите, что количество битов должно было представлять целочисленный выход как целочисленное значение между 2 и 32. Количество уровней, на которых универсальный энкодер квантует вход с плавающей точкой, 2B, где B является количеством битов.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Задайте тип данных выхода как 'Unsigned integer' или 'Signed integer'. Выходными параметрами без знака является uint8uint16, или uint32, и подписанными выходными параметрами является int8int16, или int32. Квантованные входные параметры линейно (однородно) сопоставлены с промежуточными целыми числами в интервале [0, 2 (B – 1)], когда вы устанавливаете это свойство на 'Unsigned integer', и в интервале [–2 (B – 1), 2 (B – 1) – 1], когда вы устанавливаете это свойство на 'Signed integer'. Переменная B в обоих выражениях соответствует значению NumBits свойство.

Использование

Синтаксис

Описание

пример

Y = ue(X) квантует и кодирует вход X к выходу Y.

Входные параметры

развернуть все

Ввод данных в виде вектора или матрицы. Вход X может быть действительным или объединить и удвоиться - или значения с одинарной точностью.

Типы данных: single | double
Поддержка комплексного числа: Да

Выходные аргументы

развернуть все

Квантованный и закодированный выходной параметр, возвращенный как вектор или матрица.

Универсальный энкодер выбирает тип выходных данных согласно таблице.

Количество битовЦелое число без знакаЦелое число со знаком
2 - 8uint8int8
9 - 16uint16int16
17 - 32uint32int32

Строка в таблице соответствует значению NumBits свойство и столбец в таблице соответствуют значению OutputDataType свойство.

Типы данных: int8 | int16 | int32 | uint8 | uint16 | uint32
Поддержка комплексного числа: Да

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

свернуть все

Примечание: Если вы используете R2016a или более ранний релиз, заменяете каждый вызов объекта с эквивалентным step синтаксис. Например, obj(x) становится step(obj,x).

ue = dsp.UniformEncoder;
ue.PeakValue = 2;
ue.NumBits = 4;
ue.OutputDataType = 'Signed integer';
x = (-1:0.01:1)'; % Create an input sequence
x_encoded = ue(x);
plot(x, x_encoded,'.')
xlabel('Input')
ylabel('Encoded Output')
grid

Алгоритмы

Этот объект реализует алгоритм, входные параметры и выходные параметры, описанные на странице с описанием блока Uniform Encoder. Свойства объектов соответствуют параметрам блоков.

Смотрите также

Объекты

Представленный в R2012a