NR Polar Decoder

Выполните полярное декодирование согласно 5G стандарт NR

  • Библиотека:
  • Wireless HDL Toolbox / Выявление ошибок и Коррекция

  • NR Polar Decoder block

Описание

Блок NR Polar Decoder реализует передающий потоком полярный декодер с благоприятными для оборудования управляющими сигналами. 5G стандарт NR использует полярные коды для кодирования канала DCI, UCI и каналов передачи BCH.

Необходимо задать направление ссылки, потому что схема кодирования, заданная 5G стандарт NR, отличается для нисходящих и восходящих сообщений. Нисходящие сообщения закодированы с перемежением и используют продолжительность CRC 24 битов. Восходящие сообщения не используют перемежение и используют продолжительность CRC 6 или 11.

Этот блок реализует помогший CRC декодер списка последовательных отмен. Эта реализация совпадает с эффективностью nrPolarDecode (5G Toolbox) функция. Можно выбрать длину списка 2, 4, или 8. Увеличение длины списка увеличивает эффективность исправления ошибок, но использует больше аппаратных ресурсов и увеличивает задержку декодирования. Можно улучшать производительность декодирования для сообщений DCI при помощи дополнительного порта RNTI, чтобы задать ожидаемое значение RNTI.

Этот блок также выполняет декодирование CRC сообщения, эквивалентного nrCRCDecode (5G Toolbox) функция. Блок выбирает продолжительность CRC на основе вашей спецификации направления ссылки и значения K, которое вы вводите. Блок обнаруживает сообщения DCI от значений K и E, и автоматически предварительно ожидает 1 с к сообщению, эквивалентному padCRC входной параметр nrPolarDecode (5G Toolbox) функция.

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

Порты

Входной параметр

развернуть все

Введите выборку в виде скалярного отношения логарифмической правдоподобности (LLR). Блок поддерживает встроенные типы и подписанные значения фиксированной точки с wordlength 4 - 16 битов.

double и single типы данных поддерживаются для симуляции, но не для генерации HDL-кода.

Типы данных: fixed point | int8 | int16 | double | single

Управляющие сигналы, сопровождающие демонстрационный поток в виде samplecontrol шина. Шина включает startконец, и valid управляющие сигналы, которые указывают на контуры системы координат и валидность выборок.

  • start — Указывает на запуск входного кадра

  • end — Указывает на конец входного кадра

  • valid — Указывает, что данные по порту входа data допустимы

Для большего количества детали смотрите Демонстрационную Шину управления.

Типы данных: bus

Длина блока информации в битах в виде положительного целого числа. Для нисходящих сообщений K должен быть в области значений 36 - 164. Для восходящих сообщений K должен быть в области значений 18 - 25 или 31 - 1 023.

Зависимости

Чтобы включить этот порт, установите параметр Configuration source на Input port.

Типы данных: fixdt(0,10,0)

Соответствующая уровню продолжительность выхода в битах в виде скалярного положительного целого числа. Задайте значение для E, который больше K и меньше чем или равный 8 192.

Зависимости

Чтобы включить этот порт, установите параметр Configuration source на Input port.

Типы данных: fixdt(0,14,0)

Предназначайтесь для RNTI в виде 16-битного беззнакового целого. Этот повышения стоимости, декодирующие точность для сообщений DCI. Например, при декодировании сообщений SIB1 DCI, включите этот порт и поставьте цель RNTI к 65 535. Для декодирования MIB можно отключить этот порт или поставить цель RNTI к 0.

Зависимости

Чтобы включить этот порт, установите Link direction на Downlink и выберите параметр Enable target RNTI port.

Типы данных: uint16

Вывод

развернуть все

Декодируемый бит данных, возвращенный как скаляр. Длина выходного сигнала является битами A, где A = K – CRCLen. Для нисходящих сообщений CRCLen равняется 24. Для восходящих сообщений CRCLen равняется 11 или 6, как задано 5G стандарт NR.

Типы данных: fixdt(0,1,0) | Boolean | double | single
Поддержка комплексного числа: Да

Управляющие сигналы, сопровождающие демонстрационный поток, возвращенный как samplecontrol шина. Шина включает startконец, и valid управляющие сигналы, которые указывают на контуры системы координат и валидность выборок.

  • start — Указывает на запуск выходной системы координат

  • end — Указывает на конец выходной системы координат

  • valid — Указывает, что данные по порту выхода data допустимы

Для большего количества детали смотрите Демонстрационную Шину управления.

Типы данных: bus

Результат CRC, возвращенный как скаляр. Если вы очищаете параметр Full checksum mismatch, это значение является Boolean. Когда вы выбираете параметр Full checksum mismatch, этим значением является ufix24 скаляр для нисходящих сообщений и ufix11 или ufix6 скаляр для восходящих сообщений.

Если вы включаете порт RNTI, блок сравнивает внутреннюю контрольную сумму CRC с целевым значением RNTI. В противном случае блок сравнивает контрольную сумму CRC со значением 0.

Типы данных: Boolean | ufix11 | ufix24

Блок устанавливает этот сигнал на 1 когда блок готов принять запуск следующей системы координат. Если блок получает сигнал входа start, в то время как nextFrame является 0, блок отбрасывает происходящую систему координат и начинает обрабатывать новые данные.

Для получения дополнительной информации смотрите Используя nextFrame Выходной сигнал.

Типы данных: Boolean

Параметры

развернуть все

Направление 5G ссылка NR в виде Downlink или Uplink. Когда вы выбираете Downlink, блок выполняет устранение чередования, как задано в 5G стандарт NR. Когда вы выбираете Uplink, блок не использует логику устранения чередования.

Декодирование нисходящего канала использует продолжительность CRC 24 битов. Декодирование восходящего канала использует продолжительность CRC 6 битов (K в области значений 18 - 25) или 11 битов (K в области значений 31 - 1 023).

Этот параметр является максимальным количеством параллельных путей, обеспеченных в дереве декодирования. Увеличение длины списка увеличивает эффективность исправления ошибок, но использует больше аппаратных ресурсов и увеличивает задержку декодирования. Когда вы используете длины списка 4 и 8, задержка может варьироваться в зависимости от ОСШ входного сигнала и не является постоянной для данных значений K и E. Используйте выходной сигнал nextFrame , чтобы определить, когда блок будет доступен для нового сообщения.

Выберите Input port включить порты K и E. Выберите Property использовать параметры Rate-matched length (E) и Message length (K).

Для нисходящих сообщений K должен быть в области значений 36 - 164. Для восходящих сообщений K должен быть в области значений 18 - 25 или 31 - 1 023.

Зависимости

Чтобы включить этот параметр, установите параметр Configuration source на Property.

Задайте значение для E, который больше K и меньше чем или равный 8 192.

Зависимости

Чтобы включить этот параметр, установите параметр Configuration source на Property.

Когда вы очищаете этот параметр, блок возвращает булев скаляр на порте err, который указывает, был ли CRC успешен. Когда вы выбираете этот параметр, блок возвращает полную контрольную сумму CRC на порте err. Если ваш проект декодирует сообщения DCI и использует остаток RNTI, выберите этот параметр.

Если вы включаете порт RNTI, блок сравнивает внутреннюю контрольную сумму CRC с целевым значением RNTI. В противном случае блок сравнивает контрольную сумму CRC со значением 0.

nrPolarDecode функция (5G Toolbox) возвращает декодируемое сообщение, которое включает биты CRC. Этот блок возвращает декодируемое сообщение без битов CRC и возвращает состояние CRC отдельно на порте err. Это поведение эквивалентно вызову nrCRCDecode (5G Toolbox) функция после использования nrPolarDecode функция. Не перевычисление битов CRC сохраняет аппаратную задержку и ресурсы.

Выберите этот параметр, чтобы включить входной порт RNTI. Обеспечение целевого RNTI повышений стоимости, декодирующих точность для сообщений DCI. Например, при декодировании сообщений SIB1 DCI, включите этот порт и поставьте цель RNTI к 65 535. Для декодирования MIB можно отключить этот порт или поставить цель RNTI к 0.

Включение этого порта также изменяется, как блок вычисляет значение выходного порта err. Если вы включаете порт RNTI, блок сравнивает внутреннюю контрольную сумму CRC с целевым значением RNTI. В противном случае блок сравнивает контрольную сумму CRC со значением 0.

Зависимости

Чтобы включить этот параметр, установите параметр Link direction на Downlink.

Алгоритмы

развернуть все

Этот блок реализует помогший CRC декодер списка последовательных отмен. Это может использовать длину списка 2, 4, или 8, как сконфигурировано параметром List length. Декодер выполняет итерации по всему LLRs в дереве, чтобы достигнуть решения некоторое время и затем использует то решение декодировать следующий бит. Шаг устранения чередования включен только, когда вы устанавливаете параметр Link direction на Downlink.

Эта схема показывает архитектуру полярного декодера.

Блок использует этап Настройки, когда K и значения входного порта E изменяются. Блок вычисляет местоположения информационных битов и передает их этапу Решения. Поскольку шаблоны отображения вычисляются по мере необходимости, а не хранятся в оборудовании, блок поддерживает весь K и значения E в поддерживаемой области значений. Этап Настройки также вычисляет шаблон чередования, когда вы устанавливаете параметр Link direction на Downlink.

Когда вы устанавливаете параметр Configuration source на Property, K и значения E являются константами, таким образом, декодер не реализует этап Настройки. В этом случае блок включает статические интерполяционные таблицы, которые содержат предварительно вычисленную настройку.

Чтобы минимизировать расчеты для каждого декодируют, Древовидная Память хранит вероятность каждого узла, являющегося тем или нулем. Каждая итерация обновляет только LLRs, которые изменились. Базовый этап декодирования использует уравнения обновления LLR от [3].

Этап Решения проверяет значение LLR по ожидаемым местоположениям информационных битов и замороженных битов и возвращает трудное решение в Древовидную Память. Если бит, как ожидают, будет заморожен, этап Решения возвращает трудное решение о нуле и обновляет вероятности связанных путей. Память Пути восстанавливает наиболее вероятные пути от результатов трудного решения и передает пути и баллы к следующему этапу.

Древовидная Память Памяти и Пути содержит до путей List length. Если все замороженные биты на пути являются нулями (как ожидалось), то блок отбрасывает другие параллельные пути. Это результаты оптимизации в переменной задержке в операции декодирования для длин списка, больше, чем два. Для сигналов с высоким уровнем шума декодер должен увеличить число параллельных путей и циклов для декодирования. Для малошумящих сигналов декодер может использовать только два параллельных пути и уменьшать задержку декодирования.

Этап Выбора Пути вычисляет CRC для всех путей и затем выбирает путь, который передает CRC. Когда вы используете входной порт RNTI, блок сравнивает внутреннюю контрольную сумму CRC с целевым значением RNTI. В противном случае блок сравнивает контрольную сумму CRC со значением 0. Если все CRCs перестали работать, блок возвращает путь, который имеет более высокий счет.

Эта реализация совпадает с эффективностью функции 5G Toolbox™ nrPolarDecode (5G Toolbox) с той же длиной списка. Поскольку блок использует фиксированную точку внутренние типы, любыми различиями является результат квантования.

Этот график показывает эффективность частоты появления ошибочных блоков с тремя возможными длинами списка. Вход является 6-битными значениями LLR.

A plot showing the increase in performance for higher list lengths.

Ссылки

[1] 3GPP TS 38.211. "NR; Физические каналы и модуляция". Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group. URL: https://www.3gpp.org.

[2] Arikan, Erdal. "Поляризация канала: Метод для Построения Достигающих Способности Кодов для Симметричных Каналов без памяти Двоичного входа". Транзакции IEEE на Теории информации 55, № 7 (июль 2009): 3051–73. https://doi.org/10.1109/TIT.2009.2021379.

[3] Balatsoukas-Stimming, Алексиос, Мани Бэстэни Пэризи и Андреас Бург. "Основанное на LLR Последовательное Декодирование Списка Отмен Полярных Кодов". Транзакции IEEE на Обработке сигналов 63, № 19 (октябрь 2015): 5165–79. https://doi.org/10.1109/TSP.2015.2439211.

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

Смотрите также

(5G Toolbox) |

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