Целое число с фиксированной точкой в бит и преобразование бита в целое число в Simulink

Используйте блоки Bit to Integer Converter и Integer to Bit Converter в примере с сигналами с фиксированной точкой, который выполняет скремблирование звука и дескремблирование в Simulink ®.

Исследуйте модель

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

В подсистеме audio scrambler блок Целого числа в Bit Converter распаковывает каждый 16-битовый аудио выборки в двоичный 1-битный сигнал. Двоичный сигнал переходит к скремблеру линейного регистра сдвига с обратной связью (LFSR) с использованием блока Scrambler. После прохождения сигнала через канал сигнал дескремблируется с помощью той же операции LFSR. Операция скремблирования случайным образом распределяет любые ошибки, введенные каналом, управляемым способом.

Из LFSR скремблированный аудио биты переходят к блоку Бита в Integer Converter. Этот блок упаковывает скремблированные 1-битные выборки в 16-битные аудиосборки. Аудиосборки передаются в блок Data Type Conversion (Simulink), который преобразует аудиосборки на основе целого числа обратно в выборки с фиксированной точкой.

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

В подсистеме audio descrambler блок Целого числа в Bit Converter распаковывает каждый 16-битный аудио выборки в двоичный 1-битный сигнал. Чтобы отменить процесс скремблирования, двоичный сигнал переходит к дескремблеру LFSR. Реализация дескремблера LFSR использует блок Descrambler. Из LFSR дескремблированный аудио биты переходят к блоку Бита в Integer Converter. Этот блок упаковывает дескремблированные 1-битные выборки в 16-битные аудиосборки. Аудиосборки передаются в блок Data Type Conversion (Simulink), который преобразует аудиосборки на основе целого числа обратно в выборки с фиксированной точкой.

В Simulink ® sfix16_En15 тип данных представляет сигнал со знаком (ами) с фиксированной точкой (fix) с размером слова 16 и длиной дроби 15. Эта модель представляет аудиосигналы, использующие sfix16_En15 тип данных, за исключением случаев преобразования в и из 1-битных двоичных сигналов. Все 1-битные сигналы представлены ufix1, как видно на выходе блока «Целое число в битовый конвертер». Источник звука имеет 1024 выборки на систему координат. Для получения дополнительной информации о сигналах с фиксированной точкой смотрите Номера с фиксированной точкой (Simulink).

Опишите настройки блоков конвертера

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

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

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

  • Выход бита: MSB первый

  • Тип выходных данных: Наследование через внутреннее правило

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

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

  • Вход бита: MSB первый

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

  • Тип выходных данных: Наследование через внутреннее правило

Запуск модели

Вы можете прослушать исходный аудиосигнал, скремблированный аудиосигнал и дескремблированный аудиосигнал, запустив модель в Simulink. Выберите Open model кнопка. Когда модель откроется, выберите Run, а затем, чтобы услышать аудиосигналы, щелкните значки 'Play Audio:' в модели.