Uniform Encoder
Квантование и кодирование входных данных с плавающей точкой в целочисленные выходные данные.
Тип: UniformEncoder
Путь в библиотеке:
|
Описание
Блок Uniform Encoder выполняет операцию квантования и преобразования входных данных с плавающей точкой в целочисленные выходные данные.
Блок придерживается определения равномерного декодирования, приведенного в «ITU-T Recommendation G.701».
Более подробная информация о том, как блок вычисляет кодированный выходной целочисленный сигнал, приведена в разделе Алгоритмы.
Порты
Вход
#
IN_1
—
входной сигнал
вектор | матрица
Details
Входной сигнал с плавающей точкой в виде вектора или матрицы.
Входные сигналы, превышающие или меньшие, чем , приравниваются к этим значениям.
Вещественные и мнимые компоненты комплексных входных данных преобразуются независимо.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Выход
#
OUT_1
—
кодированный выходной сигнал
вектор | матрица
Details
Выходные данные кодера, возвращаемые в виде вектора или матрицы.
Блок квантует каждый отсчет во входных данных с плавающей точкой и преобразует квантованное значение с плавающей точкой в целое число.
Дополнительные сведения о том, как блок вычисляет выходные данные, см. в разделе Алгоритмы.
| Типы данных |
|
| Поддержка комплексных чисел |
Да |
Параметры
Основные
#
Peak —
наибольшая амплитуда в кодированном входном сигнале
Real number
Details
Укажите наибольшую амплитуду входного сигнала в виде неотрицательного скаляра.
Вещественные или мнимые входные значения, превышающие или меньшие , приравниваются (независимо для комплексных входов) к этим пределам.
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Bits —
количество бит
Real number
Details
Укажите количество битов , необходимое блоку для представления целочисленных выходных данных. Количество битов может быть любым целым числом от 2 до 32 включительно.
Количество уровней, на которых блок квантует входные данные с плавающей точкой, равно .
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Да |
#
Output type —
тип выходных данных
Unsigned integer | Signed integer
Details
Укажите тип данных для выходных данных блока:
-
Unsigned integer— блок преобразует наименьшее квантованное значение с плавающей точкой в целое число и наибольшее квантованное значение с плавающей точкой в целое число . Он линейно (равномерно) преобразует промежуточные квантованные значения с плавающей точкой на промежуточные целые числа в диапазоне . Для повышения эффективности блок автоматически выбирает беззнаковый тип выходных данных (UInt8,UInt16илиUInt32) с минимальным количеством битов, равным или большим . -
Signed integer— блок преобразует наименьшее квантованное значение с плавающей точкой в целое число , а наибольшее квантованное значение с плавающей точкой — в целое число . Он линейно преобразует промежуточные квантованные значения с плавающей точкой на промежуточные целые числа в диапазоне . Блок автоматически выбирает знаковый тип выходных данных (Int8,Int16илиInt32) с минимальным количеством битов, равным или большим .
В таблице приведены типы выходных данных, которые использует блок.
Bits |
|
|
От |
|
|
От |
|
|
От |
|
|
| Значения |
|
| Значение по умолчанию |
|
| Имя для программного использования |
|
| Настраиваемый |
Нет |
| Вычисляемый |
Нет |
Алгоритмы
Details
Блок Uniform Encoder выполняет две операции с каждым отсчетом с плавающей точкой во входных данных:
-
Квантует значение с одинаковой точностью.
-
Кодирует квантованное значение с плавающей точкой в целое число.
На первом этапе блок квантует входное значение до одного из равномерно распределенных уровней в диапазоне , где — значение параметра Bits, а — значение параметра Peak. Процесс квантования округляет как положительные, так и отрицательные входные данные в меньшую сторону до ближайшего уровня квантования, за исключением тех, которые находятся точно на границе квантования. Блок независимо квантует вещественную и мнимую составляющие комплексных входных данных.
На втором этапе блок уникальным образом преобразует (кодирует) квантованное значение с плавающей точкой в одно из целых значений.
Когда для параметра Output type установлено значение Unsigned integer, блок преобразуют наименьшее квантованное значение с плавающей точкой в целое число , а наибольшее квантованное значение с плавающей точкой в целое число . Блок линейно (равномерно) преобразует промежуточные квантованные значения с плавающей точкой в промежуточные целые числа в диапазоне . Для повышения эффективности блок автоматически выбирает тип выходных данных без знака (UInt8, UInt16 или UInt32) с минимальным количеством битов, равным или превышающим .
Когда для параметра Output type установлено значение Signed integer, блок преобразуют наименьшее квантованное значение с плавающей точкой в целое число , а наибольшее квантованное значение с плавающей точкой в целое число . Блок линейно (равномерно) преобразует промежуточные квантованные значения с плавающей точкой в промежуточные целые числа в диапазоне . Блок автоматически выбирает тип выходных данных со знаком (Int8, Int16 или Int32) с минимальным количеством битов, равным или превышающим .