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.