General TCM Decoder

Декодируйте данные шпалерной модуляции, отображенные с использованием произвольных созвездий

Библиотека

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

  • General TCM Decoder block

Описание

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

Параметры Trellis structure и Signal constellation в этом блоке должны совпадать с параметрами в блоке General TCM Encoder, чтобы гарантировать правильное декодирование. В частности, параметр Signal constellation должен быть в установленном порядке.

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

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

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

Операции

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

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

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

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

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

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

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

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

Параметры

Trellis structure

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

Signal constellation

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

Traceback depth

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

Operation mode

Режим работы декодера Viterbi. Выбор следующий Continuous, Truncated, и Terminated.

Enable the reset input port

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

Output data type

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

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

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

Вход

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

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

Сброс

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

  • Булев

Выход

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

  • Булев

Парный блок

General 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