Документация Engee

Uniform Decoder

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

uniform decoder

Описание

Блок Uniform Decoder выполняет обратную операцию по отношению к блоку унифицированного кодера Uniform Encoder и восстанавливает квантованные значения с плавающей точкой из закодированных целочисленных входных данных.

Блок придерживается определения равномерного декодирования, приведенного в «ITU-T Recommendation G.701».

Более подробная информация о том, как блок вычисляет декодированный выходной сигнал с плавающей точкой, приведена в разделе Алгоритмы.

Порты

Вход

Input — входной сигнал
вектор | матрица

Укажите целочисленные входные данные, которые необходимо декодировать, как вектор или матрицу.

Действительные и мнимые компоненты комплексных входных данных преобразуются независимо.

Типы данных: Float32, Float64, Int8, Int16, Int32, UInt8, UInt16, UInt32, Bool, Fixed

Поддержка комплексных чисел: Да

Выход

Output — декодированный выходной сигнал
вектор | матрица

Декодированный выходной сигнал с плавающей точкой, возвращаемый в виде вектора или матрицы.

Тип выходных данных зависит от значения параметра Output type:

  • single – тип данных Float32.

  • double – тип данных Float64.

Дополнительные сведения о том, как блок вычисляет выходные данные, см. в разделе Алгоритмы.

Типы данных: Float32 | Float64

Поддержка комплексных чисел: Да

Параметры

Main

Peak — наибольшая амплитуда в кодированном входном сигнале
1 (по умолчанию) | неотрицательный скаляр

Укажите наибольшую амплитуду, представленную в кодированном входном сигнале в виде неотрицательного скаляра.

Чтобы правильно декодировать значения, закодированные блоком Uniform Encoder, установите для параметра Peak в обоих блоках одно и то же значение.

Bits — количество бит
3 (по умолчанию) | целое число в диапазоне [2, 32]

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

Чтобы правильно декодировать значения, закодированные блоком Uniform Encoder, установите для параметра Peak в обоих блоках одно и то же значение.

Overflow mode — режим переполнения
Saturate (по умолчанию) | Wrap

Определите поведение блока, когда входное целое число выходит за пределы диапазона, представляемого битами . Входные данные, выходящие за пределы диапазона, могут либо насыщаться на крайнем значении, либо возвращаться в диапазон.

  • При установке для параметра Overflow mode значения Saturate беззнаковые входные значения, превышающие , насыщаются на уровне , а знаковые входные значения, превышающие или менее , насыщаются на этих пределах. Действительные и мнимые компоненты комплексных входных сигналов насыщаются независимо.

  • При установке для параметра Overflow mode значения Wrap беззнаковые входные значения , превышающие , возвращаются в диапазон ] с помощью арифметики .

Знаковые входные значения, , больше чем или меньше чем , заворачиваются обратно в этот диапазон с помощью арифметики .

Вещественные и мнимые компоненты комплексных входных данных обрабатываются независимо друг от друга.

Output type — тип выходных данных
Double (по умолчанию) | Single

Укажите точность декодирования выходных данных с плавающей точкой: одинарная (Single) или двойная (Double).

Вы можете использовать любой уровень точности вывода с любым из шести целочисленных типов входных данных.

Дополнительно

Алгоритмы

Блок Uniform Decoder сначала преобразует целочисленные входные значения в значения с плавающей точкой, а затем однозначно сопоставляет (декодирует) их одному из равномерно распределенных значений с плавающей точкой в диапазоне ], где вы указываете в параметре Bits (как целое число от 2 до 32), а – это значение с плавающей точкой, заданное параметром Peak.

Блок сопоставляет наименьшее входное значение, представляемое битами (0 для беззнакового типа входных данных и для знакового типа входных данных), со значением .

Наибольшее входное значение, представляемое битами ( для беззнакового типа входных данных и для знакового типа входных данных), он отображает на значение . Он линейно отображает промежуточные входные значения на промежуточные значения в диапазоне ].

Для корректного декодирования значений, закодированных блоком Uniform Encoder, параметры Bits и Peak блока Uniform Decoder должны быть установлены в те же значения, что и параметры Bits и Peak блока Uniform Encoder.

Ссылки