Восстановление MIB HDL LTE

Этот пример показывает проект системы восстановления MIB LTE, оптимизированной для генерации HDL-кода и аппаратной реализации.

Введение

Модель, представленная в этом примере, может использоваться, чтобы определить местоположение и декодировать MIB от сигналов нисходящего канала LTE. Это полагается на пример Поиска Ячейки HDL LTE, добавляя этапы обработки, чтобы декодировать MIB. Сообщение Основного блока информации (MIB) передается в Физическом Канале телевизионного вещания (PBCH) и несет существенную информацию о системе:

  • Количество Нисходящих Блоков Ресурса (NDLRB), указывая на системную пропускную способность

  • Системный номер кадра (SFN)

  • PHICH (физический канал индикатора HARQ) настройка

Проект оптимизирован для генерации HDL-кода, и архитектура расширяема, позволяя дополнительным этапам обработки быть добавленной, такие как индексация и декодирование для PCFICH, PDCCH и PDSCH (см. восстановление LTE HDL SIB1).

Этапы обработки MIB

В порядке декодировать MIB обмениваются сообщениями, этот пример выполняет эти операции:

  • Поиск ячейки и демодуляция OFDM

  • Буферизация данных о сетке

  • Оценка канала и коррекция

  • PBCH, Индексирующий - определяющий местоположение PBCH в сетке

  • PBCH, Декодирующий - декодирующий PBCH, BCH и MIB

Поиск ячейки и демодуляция OFDM

Обнаружение сигнала LTE, синхронизация и синхронизация частоты и демодуляция OFDM выполняются на полученных данных. Это производит данные о сетке и предоставляет информацию о номере подкадра и ячейке ID полученной формы волны. Сообщение MIB всегда несут в подкадре 0, и заключенное используется, чтобы определить местоположение специфичных для ячейки ссылочных сигналов (CRS) для оценки канала, а также раньше инициализировать последовательность дескремблирования для Декодера PBCH.

Буферизация данных о сетке

Когда сообщение MIB всегда несут в подкадре 0 из нисходящего сигнала, подкадр 0 буферизуется в сегменте памяти. Если подкадр был записан в сегмент памяти, местоположение CRS вычисляется с помощью заключенного. CRS читается из памяти сетки и отправляется в средство оценки канала.

Оценка канала

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

Индексация PBCH

PBCH всегда выделяется центральным 6 Блокам Ресурса (RBS) подкадра 0 в первых 4 символах OFDM 2-го слота. Это занимает все Элементы Ресурса (REs) в этой области, исключая местоположения, выделенные CRS. Местоположения CRS вычисляются с помощью заключенного, затем адреса REs, занятого PBCH, могут быть вычислены (240 мест всего), и полученные данные от сегмента памяти сетки.

Декодирование PBCH

Когда данные PBCH считаны из сегмента памяти сетки, это компенсируется с помощью оценки канала. Компенсируемые символы 240 PBCH буферизуются, и PBCH и декодирование BCH предприняты для каждой из 4 возможных версий MIB в транспортном блоке PBCH. Каждая из этих версий требует различной последовательности дескремблирования, таким образом дескремблируя, демодуляции, восстановления уровня, сверточного декодирования, и проверка CRC должна быть предпринята для каждого. Если успешно декодируется, значение CRC дает cellRefP значение - количество антенн передачи, и биты MIB могут быть проанализированы, чтобы дать системные параметры.

Архитектура модели

Архитектуру Поиска Ячейки HDL LTE и Внедрения системы восстановления MIB показывают в схеме ниже.

Вход к получателю является основополосными данными I/Q, выбранными в 30.72 члена Шотландского парламента. БПФ с 2048 точками используется для демодуляции OFDM и достаточен, чтобы декодировать всю поддерживаемую пропускную способность LTE. Буфер сетки ресурса способен к хранению одного подкадра данных о LTE. Если получатель синхронизировался с ячейкой, данные из демодулятора OFDM записаны в буфер сетки. PBCH, индексирующий блок затем, генерирует индексы элементов ресурса, которые несут PBCH. Те элементы ресурса читаются из буфера сетки и компенсируются, прежде чем быть переданным через декодер PBCH. Эта архитектура разработана, чтобы быть расширяемой и масштабируемой так, чтобы дополнительная индексация канала и декодирование функций могли быть вставлены по мере необходимости. Например, это может быть расширено, чтобы выполнить восстановление SIB1 как показано в примере LTE HDL SIB1 Восстановления.

Верхний уровень ltehdlMIBRecovery модели показывают ниже. HDL-код может быть сгенерирован для подсистемы Восстановления MIB LTE HDL.

Скрипт ltehdlMIBRecovery_init.m выполняется автоматически коллбэком InitFcn модели. Этот скрипт генерирует входные данные и стартовые сигналы стимула, а также любая из констант должна была инициализировать модель. Входные данные могут загрузиться из файла, который, для этого примера, является Получателем LTE Используя Аналоговые устройства AD9361/AD9364 (Пакет Поддержки Communications Toolbox для Xilinx Находящееся в Zynq Радио). Также форма волны LTE может быть синтезирована с помощью функций LTE Toolbox. Чтобы выбрать входной источник, измените параметр loadfromfile в ltehdlMIBRecovery_init.m.

SamplingRate = 30.72e6;
simParams.Ts = 1/SamplingRate;
loadfromfile = true;
if loadfromfile
    load('eNodeBWaveform.mat');
    dataIn = resample(rxWaveform,SamplingRate,fs);
else
    dataIn = hGenerateDLRXWaveform();
end

HDL оптимизированное восстановление MIB LTE

Структуру подсистемы Восстановления MIB LTE HDL показывают ниже. Блок Downlink Sync Demod выполняет частоту и синхронизацию времени, обнаружение сигнала PSS/SSS и демодуляцию OFDM. Подсистема Декодера MIB буферизует подкадр 0 из входящих данных, выполняет оценку канала и пытается декодировать PBCH, чтобы восстановить информацию о MIB.

Нисходящая синхронизация и демодуляция

Нисходящая Синхронизирующая подсистема Demod берет в данных I/Q в 30.72 членах Шотландского парламента и выводит некомпенсируемые нисходящие данные о сетке ресурса. Это - экземпляр ltehdlDownlinkSyncDemod модели - ссылки, которая реализует следующие функции:

  • Восстановление частоты

  • Обнаружение Первичного сигнала синхронизации (PSS)

  • Обнаружение Вторичного сигнала синхронизации (SSS)

  • Синхронизация восстановления, на основе PSS и сигналов SSS

  • Демодуляция OFDM (использующий 2 048 БПФ точки)

  • Вычисление ID ячейки, на основе PSS и результатов обнаружения SSS

Операция ltehdlDownlinkSyncDemod описана более подробно в примере Поиска Ячейки HDL LTE.

Декодер MIB

Подсистему Декодера MIB показывают ниже. Это состоит из четырех подсистем: Индексация PBCH, Память Сетки Ресурса, Коррекция Канала и Декодер PBCH. Порядок операций следующие:

  1. Вход cellDetected утверждается, готовя подсистему, чтобы получить и обработать данные.

  2. Данные OFDM передаются потоком в подсистему Декодера MIB, и подкадр 0 хранится в Памяти Сетки Ресурса.

  3. Подсистема Коррекции Канала. вычисляет оценку канала для подкадра 0

  4. Блок PBCH Indexing начинает генерировать индексы элемента ресурса PBCH.

  5. Те элементы ресурса затем читаются из Памяти Сетки Ресурса и компенсируются блоком Channel Equalization.

  6. Наконец компенсируемые данные PBCH передаются через блок PBCH Decoder, и MIB извлечен.

Память сетки ресурса

Блок памяти Сетки Ресурса содержит сегмент памяти, контроллер записи и контроллер чтения. Способность сегмента памяти является одним подкадром демодулируемых данных OFDM в самой большой поддерживаемой пропускной способности LTE (20 МГц).

Диспетчер записи памяти ответственен за запись подкадров данных к сегменту памяти. Вход writeSubframe включает контроллеру записи для соответствующих подкадров; подкадр 0 в случае существующего примера. Сегмент памяти LTE содержит RAM размерностей 14 x 2 048 комплексных чисел на 16 битов; это - 14 символов ODFM, каждый содержащий 2 048 комплексных чисел. Контроллер Записи MemoryBank startChest вывод используется, чтобы запустить процесс оценки канала, если последний ссылочный символ для текущего подкадра был записан в сегмент памяти. Контроллер Чтения refSymbol вычисляет индексы, требуемые считать символы ссылки на ячейку из сетки, которая эквивалентна функции LTE Toolbox lteCellRSIndices.

Сегмент памяти всегда выводит данные из всех 14 символов OFDM. Однако не все эти данные необходимы для оценки канала, или для PBCH декодируют. refSymbolSelect и gridBankSelect подсистемы выбирают соответствующие символы OFDM для оценки канала (ссылочные символы) и данные соответственно.

Индексация PBCH

Блок PBCH Indexing вычисляет адреса памяти, требуемые получать PBCH из буфера памяти сетки. Это эквивалентно функции ltePBCHIndices LTE Toolbox. Полученные данные из памяти сетки затем компенсируются и передаются Декодеру PBCH для обработки. PBCH Индексация подсистемы становится активной после оценки канала для подкадра 0, готов, как обозначено hestRdy выводом подсистемы Коррекции Канала. PBCH всегда является 240 символами в длине, центрируемой в middile поднесущих, в первых 4 символах в 2-м слоте подкадра 0.

Оценка канала и коррекция

Блок Channel Equalization содержит три подсистемы. cellRefGen генерирует символы специфичного для ячейки ссылочного сигнала (CRS) с помощью Золотого генератора Последовательности. грудь выполняет оценку канала с помощью простого, благоприятного для оборудования алгоритма оценки канала. Коррекция выполняет исправление фазы путем умножения данных о сетке с сопряженным комплексным числом соответствующего оценочного значения канала. Средство оценки канала генерирует одну оценку канала с комплексным знаком для каждой поднесущей подкадра с помощью следующего алгоритма.

  1. Оцените канал в каждом элементе ресурса CRS путем деления полученного значения на переданный символ (сгенерированный cellRefGen).

  2. Насчитайте эти оценки канала через время (на время подкадра), чтобы сгенерировать одну оценку канала с комплексным знаком для каждой поднесущей, которая содержит символы CRS.

  3. Используйте линейную интерполяцию, чтобы оценить канал для поднесущих, которые не содержат символы CRS.

Вход к подсистеме грудной клетки является вектором 4 символов QPSK, соответствуя символам OFDM 0, 4, 7 и 11 из подкадра. Это позволяет груди извлекать элементы ресурса CRS и оценивать канал, как описано выше.

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

Если оценка канала вычисляется, она используется, чтобы компенсировать gridData, когда она считана из Памяти Сетки Ресурса.

Декодер PBCH

Декодер PBCH выполняет демодуляцию QPSK, дескремблирование, восстановление уровня и декодирование BCH. Это затем извлекает выходные параметры MIB с помощью функционального блока Интерпретации MIB. Эти операции эквивалентны ltePBCHDecode и функциям lteMIB в LTE Toolbox.

PBCH Controller хранит компенсируемые данные в памяти для итеративных сверточных попыток декодирования. 4 попытки, предпринятые декодирования MIB, соответствуют 4 повторениям данных о MIB на транспортный блок PBCH.

Декодер BCH

Декодер BCH квантует мягкие решения и затем декодирует данные с помощью LTE Сверточный Декодер и блоки Декодера CRC LTE. Рекомендуемый wordlength мягких решений во входе к сверточному декодеру составляет 4 бита. Однако блок BCH Decoder получает 20-битные мягкие решения, как введено. Поэтому блок softBitScalingUnit динамически масштабирует данные так, чтобы это использовало полный динамический диапазон мягких решений на 4 бита. Блок декодера CRC сконфигурирован, чтобы возвратить полное значение несоответствия контрольной суммы. Маска CRC, когда-то проверяемая по позволенным значениям, обеспечивает cellRefP; количество специфичных для ячейки ссылочных портов антенны сигнала в передатчике. Если контрольная сумма CRC не совпадает с одним из принятых значений затем, MIB успешно не декодировался, и Диспетчер PBCH решает, инициировать ли другую попытку декодирования.

Когда MIB успешно декодировался, извлечения подсистемы Интерпретации MIB и выводит поля сообщения.

Анализ производительности

Качество входной формы волны является важным фактором, который влияет на производительность декодирования. Общие множители, которые влияют на качество сигнала, являются многопутевыми условиями распространения, затуханием канала и интерференцией от других ячеек. Качество входной формы волны может быть измерено с помощью функции cellQualitySearch. Эта функция обнаруживает ячейки LTE во входной форме волны и возвращает структуру на ячейку LTE, содержащую следующие поля:

  • FrequencyOffset: смещение Частоты получено функцией lteFrequencyOffsets

  • NCellID: идентичность ячейки Физического уровня

  • TimingOffset: Синхронизация смещения первого кадра во входной форме волны

  • RSRQdB: значение Ссылочного полученного качества сигнала (RSRQ) в дБ на Раздел TS 36.214 5.1.3 [1]

  • ReportedRSRQ: отчет измерения RSRQ (целое число между 0 и 34) на Раздел TS 36.133 9.1.7 [1]

При применении функции cellQualitySearch к полученной форме волны eNodeBWaveform.mat, используемый в ltehdlMIBRecovery_init.m, возвращает следующий отчет:

FrequencyOffset: 536.8614
NCellID: 76
TimingOffset: 12709
RSRQdB: -5.3654
ReportedRSRQ: 29
FrequencyOffset: 536.8614
NCellID: 160
TimingOffset: 3108
RSRQdB: -18.1206
ReportedRSRQ: 3

Существует две ячейки в полученной форме волны, один с ячейкой ID 76 и один с ячейкой ID 160. Ячейка с NCellID = 76 имеет намного более высокий ReportedRSRQ, указывая, что это - более сильный сигнал. В этом примере модель Simulink декодирует MIB для NCellID = 76.

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

Осциллограф ниже показов ключевые управляющие сигналы для этого примера. После того, как импульс утверждается на сигнале запуска, что процесс поиска ячейки запускается. Успешное обнаружение ячейки обозначается сигналом cellDetected. Когда сигнал cellDetected утверждается, NCellID и сигнал TDDMode становятся активными, указывая на идентификационный номер ячейки и использует ли ячейка TDD (1) или FDD (0). После того, как ячейка была обнаружена, демодулятор OFDM ожидает до подкадра 0 из следующего кадра, чтобы начать выводить данные о сетке, следовательно существует разрыв между cellDetected, идущим высоко и данными о сетке, выводимыми, как обозначено сигналом gridDataValid. Когда gridDataValid будет сначала утверждаться, subFrameNum будет нулем и постепенно увеличится для последующих подкадров. Симуляция останавливается на MIBDetected или утверждаемых сигналах mibError.

Если MIB был обнаружен NDLRB, PHICH, Ын, nFrame, и CellRefP сигнализирует, что все становятся активными, указывая на основные параметры ячейки. Эти параметры отображены в модели, когда они - статические значения, когда симуляция останавливается.

Следующая информация о MIB декодируется при декодировании полученной формы волны:

NCellID (Cell ID): 76
TDDMode (0 = FDD, 1 = TDD) : 0
NDLRB (Number of downlink resource blocks): 25
PHICH (PHICH duration) index: 0
Ng (HICH group multiplier): 2
NFrame (Frame number): 262
CellRefP (Cell-specific reference signals): 2

Это указывает, что дуплексный режим, используемый ячейкой, является FDD, MIB декодировался в кадре номер 262, длительностью PHICH является 'Normal', и значение множителя группы HICH является 'Тем'.

Генерация HDL-кода и верификация

Чтобы сгенерировать HDL-код для этого примера, у вас должна быть лицензия HDL Coder™. Используйте makehdl и команды makehdltb, чтобы сгенерировать HDL-код и испытательный стенд HDL для подсистемы Восстановления MIB LTE HDL. Поскольку входная форма волны в этом примере содержит по крайней мере 40 подкадров, чтобы завершить поиск ячейки и восстановление MIB, генерация испытательного стенда занимает много времени. Этот пример сконфигурирован, чтобы использовать Систему испытательный стенд DPI Verilog, чтобы ускорить генерацию испытательного стенда.

Подсистема Восстановления MIB LTE HDL синтезировалась на оценочной плате Xilinx® Zynq®-7000 ZC706. Место сообщения и результаты использования ресурса маршрута показывают в приведенной ниже таблице. Проект соответствовал синхронизации с частотой часов 140 МГц.

       Resource        Usage
    _______________    _____

    Slice Registers    51582
    Slice LUTs         29859
    RAMB18                38
    RAMB36                39
    DSP48                134

Для получения дополнительной информации см. Прототипные Алгоритмы LTE на Оборудовании.

Ссылки

1. 3GPP "физический уровень" TS 36.214

Похожие темы