exponenta event banner

Цифровое видеовещание - кабельное (DVB-C)

В этой модели показана часть стандарта ETSI (Европейский институт телекоммуникационных стандартов) EN 300 429 для передачи кабельных систем цифровых телевизионных сигналов [1]. Стандарт предписывает конструкцию передатчика и устанавливает минимальные требования к производительности приемника.

Целью этого примера является:

  • Смоделируйте главные части возможного дизайна передатчика (работающий в 64-QAM способе с Транспортными данными о Пакете MPEG-2)

  • Моделирование основных частей возможной конструкции приемника (работа в режиме 64-QAM с использованием MPEG-2 транспортных пакетных данных)

  • Создание статистики ошибок, которая поможет определить, удовлетворяет ли модель требованиям к производительности системы

  • Проиллюстрировать использование ключевых блоков библиотеки Communications Toolbox™ для проектирования систем DVB-C (или аналогичных)

Доступные примерные версии

Существует две различные версии этого примера.

Версия с плавающей запятой: commdvbc.slx

Версия с фиксированной точкой: commdvbc_fixpt.slx

Структура примера

Определения переменных параметров рабочей области MATLAB ®

При первой загрузке модели-примера создается переменная рабочей области MATLAB prmDVBC, которая представляет собой структуру с элементами, используемыми в качестве параметров в блоках в файле модели. Обратите внимание, что эта переменная рабочей области очищается при закрытии модели.

prmDVBC = 

  struct with fields:

             bitsPerByte: 8
             bitsPerMTpl: 6
     MPEG2DatRateBitPerS: 9600000
     rawMPEG2DataPcktLen: 184
     MPEG2TrnsprtPcktLen: 188
    MPEG2TrnsprtFramePer: 1.5667e-04
     MPEG2PcktsPerSprFrm: 8
     MPEG2TrnsSuperFrame: 1504
      PRBSSeqPeriodBytes: 1503
       PRBSSeqPeriodBits: 12024
        RSCodewordLength: 204
       CableChanFrameLen: 272
      CableChanFrmPeriod: 1.5667e-04
      RCosineSampsPerSym: 8
       CableSymbolPeriod: 7.1998e-08
       RCosineFilterSpan: 16
     TxRxSymbolSampDelay: 288
     DeintrlvrAlignDelay: 192
        QAMSymbolMapping: [1x64 double]
     ConvIntlNumBranches: 12
       ConvIntlCellDepth: 17

Физический интерфейс основной полосы частот (моделируемый MPEG-2 источник данных)

Эта часть модели соответствует разделам 4.1, 5 и 6 в [1]. Транспортный пакет MPEG-2 определен в стандарте ISO ®/IEC 13818-1 [2] и состоит из 188-байтовых пакетов.

Блоки Communications Toolbox, DSP System Toolbox™ и библиотеки Simulink ® используются для моделирования потока пакетных данных MPEG-2 Transport в целях моделирования системы и измерения производительности BER.

Обработка основной полосы частот передатчика

  • Sync1 Инверсия и рандомизация

Эта подсистема соответствует разделам 4.2 и 7.1 в [1]. В MPEG-2 Sync1 байт инвертируется, и поток данных (отличный от байтов синхронизации) рандомизируется для целей формирования спектра. Восстановленное PN Sequence Generator блок библиотеки используется как часть скремблера для этого процесса рандомизации данных.

  • Укороченный (204 188) кодировщик Рида-Соломона

Этот блок библиотеки соответствует разделам 4.3 и 7.2 в [1]. Как описано в стандарте, этот процесс добавляет байты четности 16 к MPEG-2 транспортному пакету, чтобы дать (204 188) кодовое слово. Это позволяет исправлять до восьми (8) ошибочных байтов на транспортный пакет соответствующим приемником. Reed-Solomon Decoder блок.

  • Сверточный перемежитель

Этот блок библиотеки соответствует разделам 4.4 и 7.3 в [1]. Процесс перемежения основан на подходе Форни [3] и совместим с подходом Рамзи типа III [4], с I = 12.

  • Преобразование байта (8 бит) в M-кортеж (6 бит)

A MATLAB® Function используется для выполнения этой обработки. 8-разрядные байты данных преобразуются в 64-кратные (6-разрядные) значения. Этот блок соответствует разделам 4.5 и 8 в [1].

  • Дифференциальное кодирование

Пример реализации блока дифференциального кодирования, как описано в разделах 4.6 и 8 в [1], показан с использованием MATLAB Function блок. Для целей этой примерной модели выход блока дифференциального кодирования соединен с терминатором (т.е. блок обходится).

  • 64-QAM Отображение созвездий

Rectangular QAM Modulator Baseband блок-диаграммы библиотеки основная полоса частот, 64-ary (M-кортеж), оценивает комплексу (я и Q) 64-QAM символ созвездия, оценивают за передачу, как описано в разделах 4.7 и 9 в [1].

Фильтр интерполяции косинусов квадратного корня

Этот библиотечный блок выполняет формирование основной полосы комплексных (I и Q) значений символов созвездия для передачи, как описано в разделах 4.7, 9 и Приложении А в [1].

Канал AWGN

Система FEC в соответствии со стандартом предназначена для повышения частоты битовых ошибок (BER) с 10 ^ -4 до диапазона, от 10 ^ -10 до 10 ^ -11 (операция «Quasi Error Free »). AWGN Channel блок библиотеки Signal to Noise Ratio (Eb/No) имеет значение 16,5 дБ, соответствующее рабочей BER, равной приблизительно 10 ^ -4.

Фильтр децимации Cosine Rx с квадратным корнем

Этот библиотечный блок выполняет согласованную прореживающую фильтрацию принятых комплексных (I и Q) значений символов созвездия, как описано в разделах 4.7, 9 и Приложении А в [1].

Обработка основной полосы частот получателя

  • 64-QAM Демонстрация созвездия

Rectangular QAM Demodulator Baseband блок библиотеки сравнивает принятые комплексные (I и Q) 64-QAM значения символов созвездия с 64-ary M-кортежами, как описано в разделах 4.7 и 9 в [1].

  • Дифференциальное декодирование

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

  • Преобразование M-кортежа (6 бит) в байт (8 бит)

A MATLAB Function блок используется для выполнения этой обработки, которая является обратной обработке Byte-M-Tuple, используемой в передатчике. 64-кратные (6-разрядные) значения M-кортежа переупаковываются в 8-разрядные байты данных.

  • Сверточный обращенный перемежитель

Convolutional Deinterleaver блок библиотеки соответствует Convolutional Interleaver блок библиотеки, появляющийся в реализации подсистемы передатчика. Процесс обращенного перемежения основан на подходе Форни [3] и совместим с подходом Рамзи типа III [4], с I = 12.

Для простоты примерной модели используется простая дополнительная задержка для синхронизации первого байта синхронизации в ветви «0» сверточного обращенного перемежителя. Более реалистичная реализация системы приемника, вероятно, будет иметь дополнительную обработку синхронизации восходящего потока до этой части модели.

  • Укороченный (204 188) декодер Рида-Соломона

Этот библиотечный блок выполняет R-S декодирование, соответствующее кодированным пакетам данных.

  • Sync1 Инверсия и удаление рассеяния энергии

Эта подсистема выполняет данные descrambling, чтобы получить полученные Транспортные байты данных о Пакете MPEG-2.

Результаты и отображение

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

Общие результаты и отображение системы:

  • Bit rate (Mbit/s) показ

  • Cable symbol rate (MBaud) показ

  • 64-QAM bit error rate (BER) показ

  • System bit error rate (BER) показ

  • Различные внутренние индикаторы частоты битовых ошибок (BER) (в разделе Internal Tx and Rx BER подсистема)

Результаты и дисплеи передатчика/приемника:

  • Rx 64-QAM Constellation график рассеяния

  • Tx/Rx Spectrum (2MHz BW) объем

  • Total Number of Errors Corrected показ

Различия между версиями с фиксированной и плавающей точками

Существует две различные версии этого примера - версия с плавающей запятой и версия с фиксированной запятой. Примеры аналогичны. В частности, большая часть Transmitter Baseband Processing и Receiver Baseband Processing подсистемы идентичны и в основном используют неподписанные целочисленные типы данных в своих сигнальных трактах.

Различия между двумя версиями заключаются в том, как сигналы обрабатываются Byte to M-tuple Conversion, 64-QAM Constellation Mapping, Square Root Raised Cosine Tx Interpolation Filter, Square Root Raised Cosine Rx Decimation Filter, 64-QAM Constellation Demapping, и M-Tuple to Byte Conversion блоки. Эти блоки используют арифметику с плавающей запятой (и встроенное целое число), когда их входные и/или выходные сигналы являются сигналами с плавающей запятой (т.е. тип данных double или single) или чисто встроенное целое число (например, uint8), как и в версии с плавающей запятой (commdvbc.slx).

Однако в варианте с фиксированной точкой (commdvbc_fixpt.slx) эти блоки используют арифметику с фиксированной точкой, поскольку их входные и/или выходные сигналы являются типами данных с фиксированной точкой (т.е. sfix или ufix в Simulink). Также следует отметить, что для запуска версии примера с фиксированной точкой требуется лицензия Fixed-Point Designer™.

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

Избранная библиография

[1] Стандарт ETSI EN 300 429 V1.2.1: цифровое видеовещание (DVB); Структура кадров, канальное кодирование и модуляция для кабельных систем, Европейский институт телекоммуникационных стандартов, Вальбонна, Франция, 1998 год.

[2] ISO/IEC 13818-1, «Кодирование движущихся изображений и соответствующего звука».

[3] Форни, Г., Д., младший «Коды коррекции пакетов для классического канала Bursty». IEEE Transactions on Communications, vol. COM-19, October 1971, pp. 772-781.

[4] Рэмзи, Дж. Л. «Реализация оптимальных перемежителей». IEEE Transactions on Information Theory, IT-16 (3), май 1970, стр. 338-345.