Целое число фиксированной точки к биту и биту к целочисленному преобразованию (Аудио борющийся и дескремблирующий пример)

Этот пример иллюстрирует, как использовать Бит для Целочисленного Конвертера и Целое число с Битными блоками Конвертера с сигналами фиксированной точки в Simulink®.

Этот пример использует упрощенную аудио настройку скремблера и 16-битный источник цифрового аудио фиксированной точки, который является записанной речью. Левая сторона модели представляет аудио подсистему скремблера, и правая сторона представляет подсистему дескремблера.

Открытая модель

model = "ex_int_to_bit_bit_to_int";
open_system(model);
sim(model);

Структура

В аудио подсистеме скремблера блок Integer to Bit Converter распаковывает каждый 16-битный аудиосэмпл в двоичный файл, 1-битный сигнал. Двоичный сигнал передает скремблеру линейного сдвигового регистра обратной связи (LFSR), который рандомизирует биты управляемым способом, таким образом, скремблируя сигнал. Реализация Скремблера LFSR использует блок Scrambler. От LFSR скремблированные аудио биты передают блоку Bit to Integer Converter. Этот блок упаковывает скремблированные 1-битные выборки в 16-битные аудиосэмплы. Аудиосэмплы передают блоку Data Type Conversion, который преобразует основанные на целом числе аудиосэмплы назад в выборки фиксированной точки.

Выборки фиксированной точки передают от подсистемы скремблера до канала. Канал отправляет выборки в подсистему дескремблера. В иллюстративных целях этот пример использует бесшумный канал. В фактической системе канал может ввести шум. Удаление такого шума требует более сложного проекта.

В аудио подсистеме дескремблера блок Integer to Bit Converter распаковывает каждый 16-битный аудиосэмпл в двоичный файл, 1-битный сигнал. Двоичный сигнал передает дескремблеру линейного сдвигового регистра обратной связи (LFSR), который рандомизирует биты управляемым способом, инвертируя процесс скремблирования. Эта реализация дескремблера LFSR использует блок Communications Toolbox™ Descrambler. От LFSR дескремблированные аудио биты передают блоку Bit to Integer Converter. Этот блок упаковывает дескремблированные 1-битные выборки в 16-битные аудиосэмплы. Аудиосэмплы передают блоку Data Type Conversion, который преобразует основанные на целом числе аудиосэмплы назад в выборки фиксированной точки.

В Simulink® sfix16_En15 тип данных представляет (s) фиксированную точку со знаком (фиксируют) сигнал с размером слова 16 и дробная длина 15. Поэтому эта модель представляет звуковые сигналы с помощью sfix16_En15 типа данных, кроме тех случаев, когда, преобразовывая в и от 1-битных двоичных сигналов. Все 1-битные сигналы представлены ufix1, как замечено при выходе блока Integer to Bit Converter. Источник аудиосигналов имеет формат кадра (или количество выборок на систему координат) 1 024. Для получения дополнительной информации о сигналах фиксированной точки обратитесь к Числам Фиксированной точки в документации Simulink®.

Настройки блока конвертера

В аудио подсистемах скремблера и дескремблера настройки блока Integer to Bit Converter:

Количество битов на целое число: 16

Обработайте входные значения как: Signed

Выведите битный порядок: MSB first

Тип выходных данных: Inherit via internal rule

В аудио подсистемах скремблера и дескремблера настройки блока Bit to Integer Converter:

Количество битов на целое число: 16

Введите битный порядок: MSB first

После битной упаковки обработайте получившиеся целочисленные значения как: Signed

Тип выходных данных: Inherit via internal rule

Запустите модель

Необходимо запустить пример, прежде чем можно будет слушать любой из звуковых сигналов. Чтобы запустить пример, нажмите Run. Можно услышать звуковые сигналы путем нажатия на желтые значки аудио в модели.