Rectangular QAM TCM Decoder

Декодируйте данные решетчатой модуляции, модулируемые методом QAM

Библиотека

TCM, в цифровой поддиапазоне базовых частот модуляции

  • Rectangular QAM TCM Decoder block

Описание

Блок Rectangular QAM TCM Decoder использует алгоритм Viterbi, чтобы декодировать сигнал trellis-кодированной модуляции (TCM), который ранее был модулирован с использованием сигнального созвездия QAM.

Параметр M-ary number представляет число точек в сигнальном созвездии, что также равняется количеству возможных выходных символов от сверточного энкодера. (То есть log2 ( M-ary number) является количеством выходных битовых потоков от сверточного энкодера.)

Параметры Trellis structure и M-ary number в этом блоке должны совпадать с параметрами в блоке Rectangular QAM TCM Encoder, чтобы гарантировать правильное декодирование.

Входные и выходные сигналы

Этот блок принимает вектор-столбец входной сигнал, содержащий комплексные числа. Дополнительные сведения о типах данных, которые поддерживает каждый порт блока см. в разделе Поддерживаемые типы данных.

Если сверточный энкодер, описанный структурой решетки, представляет собой код скорости k/ n, то выход блока декодера QAM TCM является двоичным вектором-столбцом с длиной, в k раз превышающей длину вектора входного сигнала.

Операции

Блок имеет три возможных способа перехода между последовательными системами координат. Параметр Operation mode управляет тем, какой метод использует блок. Этот параметр также влияет на область значений возможных значений для параметра Traceback depth, D.

  • В Continuous mode, блок инициализирует все метрики состояния до нуля в начале симуляции, ждет, пока не накопит D символов, а затем использует последовательность D символов, чтобы вычислить каждый из путей трассировки. D может быть любым положительным целым числом. В конце каждой системы координат блок сохраняет свою метрику внутреннего состояния для использования со следующей системой координат.

    Если вы выбираете Enable the reset input, блок отображает другой входной порт, маркированный Rst. Этот порт получает целочисленный скалярный сигнал. Каждый раз, когда значение в Rst порт ненулевый, блок сбрасывает все метрики состояния на нуль и устанавливает память трассировки на нуль.

  • В Truncated mode, блок обрабатывает каждую систему координат независимо. Путь трассировки начинается в состоянии с самой низкой метрики. D должен быть меньше или равен длине вектора входа.

  • В Terminated mode, блок обрабатывает каждую систему координат независимо. Путь к трассировке всегда начинается с состояния «все нули». D должен быть меньше или равен длине вектора входа. Если вы знаете, что каждая система координат данных обычно заканчивается в состоянии «все нули», то этот режим является подходящим выбором.

Задержка декодирования

Если вы задаете Operation mode Continuousзатем этот блок вводит задержку декодирования, равную Traceback depth * k битам, для сверточного кода скорости k/n. Задержка декодирования является количеством нулей, которые предшествуют первому декодированному биту на выходе.

Блок не имеет задержки для других значений Operation mode.

Параметры

Trellis structure

MATLAB® структура, которая содержит описание решетки сверточного энкодера.

M-ary number

Число точек в сигнальном созвездии.

Traceback depth

Количество ветвей шпалеры (эквивалентно количеству символов), которое блок использует в алгоритме Viterbi, чтобы создать каждый путь следования.

Operation mode

Режим работы декодера Viterbi. Варианты Continuous, Truncated, и Terminated.

Enable the reset input port

При установке этого флажка блок имеет маркированный второй входной порт Rst. Предоставление ненулевого входного значения этому порту заставляет блок устанавливать свою внутреннюю память в начальное состояние перед обработкой входных данных. Эта опция появляется только, если для Operation mode задано значение Continuous.

Output data type

Выберите тип данных для выходного сигнала блока следующим boolean или single. По умолчанию блок устанавливает это на double.

Поддерживаемые типы данных

ПортПоддерживаемые типы данных

Вход

  • Плавающая точка двойной точности

  • Плавающая точка с одной точностью

Сброс

  • Плавающая точка двойной точности

  • Булев

Выход

  • Плавающая точка двойной точности

  • Булев

Парный блок

Rectangular QAM TCM Encoder

Ссылки

[1] Biglieri, E., D. Divsalar, P. J. McLane and M. K. Simon, Introduction to Trellis-Coded Modulation With Applications, New York, Macmillan, 1991.

[2] Proakis, John G., Digital Communications, Fourth edition, New York, McGraw-Hill, 2001.

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.

См. также

Блоки

Функции

Представлено до R2006a