exponenta event banner

Полярный декодер NR

Выполните полярную расшифровку согласно 5G НОМЕР стандарта

  • Библиотека:
  • Беспроводная панель инструментов HDL/обнаружение и исправление ошибок

  • NR Polar Decoder block

Описание

Блок NR Polar Decoder реализует потоковый полярный декодер с аппаратными управляющими сигналами. Вы можете настроить блок, чтобы использовать передачу информации из космоса или кодирующие схемы канала восходящей связи, как определено 5G НОМЕР стандарта. Стандарт 5G NR использует полярные коды для канального кодирования каналов передачи DCI, UCI и BCH.

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

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

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

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

Порты

Вход

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

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

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

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

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

  • start - Указывает начало входного кадра.

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

  • valid - Указывает, что данные на порте входных данных являются допустимыми

Дополнительные сведения см. в разделе Пример шины управления.

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

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

Блок не поддерживает значения K из 18 кому 25 поскольку стандарт 5G NR требует кодов с поддержкой четности для этих размеров.

Зависимости

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

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

Согласованная по скорости длина вывода в битах, заданная как скалярное положительное целое число. Укажите значение E, которое больше K и меньше или равно 8192.

Зависимости

Чтобы включить этот порт, установите для параметра 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 = KCRCLen. Для сообщений нисходящей линии связи значение CRCLen равно 24. Для сообщений восходящей линии связи значение CRCLen равно 11, как определено стандартом 5G NR.

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

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

  • start - Указывает начало выходного кадра.

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

  • valid - Указывает, что данные порта выходных данных являются допустимыми

Дополнительные сведения см. в разделе Пример шины управления.

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

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

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

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

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

Дополнительные сведения см. в разделе Использование выходного сигнала nextFrame.

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

Параметры

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

Направление 5G НОМЕР связи, определенной как Downlink или Uplink. При выборе Downlinkблок выполняет обратное перемежение, как указано в стандарте 5G NR. При выборе Uplinkблок пропускает логику обращенного перемежения.

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

Выбрать Input port для активизации портов K и E. Выбрать Property для использования параметров Длина сообщения (K) и Согласованная по скорости длина (E).

Для сообщений нисходящей линии связи K должно находиться в диапазоне от 36 до 164. Для сообщений восходящей линии связи K должно находиться в диапазоне от 31 до 1023.

Блок не поддерживает значения K из 18 кому 25 поскольку стандарт 5G NR требует кодов с поддержкой четности для этих размеров.

Зависимости

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

Укажите значение E, которое больше K и меньше или равно 8192.

Зависимости

Чтобы включить этот параметр, установите для параметра 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 в 65535. Для декодирования MIB можно отключить этот порт или установить целевой RNTI равным 0.

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

Зависимости

Чтобы включить этот параметр, задайте для параметра «Направление связи» значение Downlink.

Алгоритмы

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

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

На этой диаграмме показана архитектура полярного декодера.

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

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

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

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

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

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

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

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

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

Ссылки

[1] 3GPP TS 38.211. "НР; Физические каналы и модуляция. "Проект партнерства 3-го поколения; Техническая спецификация на сеть радиодоступа группы. URL: https://www.3gpp.org.

[2] Арикан, Эрдал. «Поляризация канала: метод построения кодов достижения пропускной способности для симметричных каналов без двоичного ввода и запоминания». Сделки IEEE по теории информации 55, № 7 (июль 2009 года): 3051-73. https://doi.org/10.1109/TIT.2009.2021379.

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

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

.

См. также

| (5G Панель инструментов)

Представлен в R2020a