exponenta event banner

Восстановление MIB NR HDL для FR2

Этот пример показывает, как к дизайну a 5G НОМЕР модели восстановления основного информационного блока (MIB), которая оптимизирована для генерации объектного кода HDL и внедрения аппаратных средств, и поддерживает и частотный диапазон 1 (FR1) и частотный диапазон 2 (FR2).

Введение

5G вышки сотовой связи могут работать в FR1 или FR2 диапазонах частот. FR1 охватывает частоты до 6 ГГц и FR2 - частоты выше 6 ГГц, включая полосу миллиметровых волн. В этом примере представлены новые функциональные возможности, необходимые для поддержки FR2 и процесса обновления существующей конструкции FR1.

Модели Simulink ®, описанные в этом примере, представляют собой реализации восстановления MIB для 5G NR FR1 и FR2, оптимизированные для HDL с фиксированной точкой. Этот пример - один из связанного набора, которые показывают технологический процесс для проектирования и развертывания 5G НОМЕР поиска клетки и алгоритма восстановления МИБ к аппаратным средствам. Отображается полный рабочий процесс.

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

  1. Золотой эталонный алгоритм MATLAB: пример поиска ячеек NR и MIB и восстановления SIB1 (5G Toolbox) показывает золотой эталонный алгоритм с плавающей запятой.

  2. Эталонный аппаратный алгоритм MATLAB: NR HDL Cell Search и MIB Recovery MATLAB Reference моделирует аппаратные алгоритмы и генерирует тестовые сигналы. Этот код MATLAB ® работает с векторами и матрицами выборок данных с плавающей запятой и не поддерживает генерацию кода HDL.

  3. Модель реализации Simulink Fixed-Point: пример поиска ячеек NR HDL демонстрирует подсистему поиска ячеек 5G Simulink, которая использует тот же алгоритм, что и ссылка MATLAB. Пример восстановления NR HDL MIB добавляет подсистему декодирования широковещательного канала и восстановления MIB. NR HDL MIB Recovery для FR2 примера (этот пример) показывает модели поиска ячеек и восстановления MIB, которые были расширены для поддержки FR2. Эти модели работают на данных с фиксированной точкой и оптимизированы для генерации кода HDL.

  4. Модель развертывания SoC Simulink: Примеры использования эталонных приложений NR HDL на SoC основаны на моделях реализации с фиксированной точкой и используют пакеты аппаратной поддержки для развертывания алгоритмов на оборудовании.

Общее описание совместного использования MATLAB и Simulink для разработки развертываемых моделей см. в разделе Проектирование беспроводных коммуникаций для FPGA и ASIC.

Структура файла

В этом примере используются эти файлы.

Модели Simulink

  • nrhdlMIBRecovery.slx: Эта модель Simulink объединяет обработку детектора SSB и декодера SSB в интегрированную модель, иллюстрирующую полный процесс восстановления MIB. В этой модели используется nrhdlSSBDetectionCore.slx и nrhdlSSBDecodingCore.slx привязки модели.

  • nrhdlSSBDecodingCore.slxЭта ссылка на модель реализует алгоритм декодирования SSB.

  • nrhdlSSBDetectionCore.slxЭта ссылка на модель реализует алгоритм обнаружения SSB.

Словарь данных Simulink

  • nrhdlReceiverData.slddЭтот словарь данных Simulink содержит объекты шины, которые определяют шины, содержащиеся в примерах моделей.

Код MATLAB

  • runMIBRecoveryModelFR2.m: Сценарий для запуска и проверки nrhdlMIBRecovery модель с FR2 формой сигнала.

  • nrhdlexamplesПакет, содержащий ссылочный код MATLAB и служебные функции для проверки моделей реализации.

Обнаружение SSB

В этом разделе описываются изменения в обнаружении SSB в примере поиска ячеек NR HDL, которые необходимы для поддержки FR2. В нем подробно описываются алгоритмические требования к эталонной версии MATLAB и реализации Simulink, а также оптимизации для генерации кода HDL.

Алгоритм обнаружения SSB выполняет поиск и демодуляцию с заданным интервалом между поднесущими (SCS). Параметры SCS: 15 кГц или 30 кГц для FR1 и 120 кГц или 240 кГц для FR2. Для добавления FR2 функциональности необходимо поддерживать новые параметры SCS. Детектор выполняет поиск SSB путем понижающей дискретизации принятого сигнала до одной из скоростей, показанных в таблице в соответствии с SCS. Затем сигнал перекрестно коррелируется с последовательностями PSS.

    SCS (kHz)    Sample Rate (MHz)
    _________    _________________

        15              3.84      
        30              7.68      
       120             30.72      
       240             61.44      

Для адаптации увеличенной полосы пропускания SSB в FR2 используется частота выборки на входе 122,88 мс по сравнению с 61,44 мс для FR1 конструкции. Блоки опорных синхросигналов не изменились и все еще измеряются в выборках при 61,44 мс. Счетчики опорных синхросигналов увеличиваются на 16, 8, 2 и 1 для SCS 15, 30, 120 и 240 кГц соответственно. Эта модель включает в себя модифицированную конструкцию DDC, которая поддерживает эти дополнительные расстояния между поднесущими и их соответствующие частоты дискретизации. DDC корректирует смещения частоты, а затем понижает выборку до 61,44 МГц. Выход DDC является входом подсистемы выбора SCS. Эта подсистема создает потоки данных для каждой опции SCS путем последовательной понижающей дискретизации с помощью полубандовых фильтров. Все четыре потока выровнены, что позволяет поддерживать опорный синхросигнал при переключении между различными интервалами поднесущих. Выбранный поток коррелируется с каждой из трех последовательностей PSS для обнаружения SSB.

Реализация FPGA этих корреляторов во временной области использует 576 DSP, в 4 раза больше, чем версия, которая поддерживает только FR1. Это изменение в ресурсах связано с тем, что частоты дискретизации уменьшают объем совместного использования ресурсов, который может быть достигнут в фильтрах. Способ наложения-добавления частотной области используется для минимизации использования DSP за счет увеличения задержки. Корреляция «перекрытие-добавление» в nrhdlSSBDetectionCore модель показана. Подсистема вычисляет четыре этапа метода наложения-добавления. Это FFT, умножение на три набора коэффициентов частотной области (по одному для каждой PSS), IFFT и перекрытие и добавление последующих окон. Эта реализация использует один FFT, три комплексных мультипирена и три IFFT, что требует 48 DSP в целом.

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

В этом разделе описываются обновления, необходимые для добавления поддержки FR2 в алгоритм декодирования SSB. Полное описание модели FR1 см. в примере восстановления MIB NR HDL. В нем подробно описываются алгоритмические требования к эталону MATLAB и реализации Simulink.

Алгоритм декодирования SSB декодирует широковещательный канал (BCH), содержащийся в SSB. Процесс декодирования выводит главный информационный блок (MIB) и индекс луча обнаруженного SSB. В FR1, существует максимум 8 SSB, которые могут быть независимо сформированы. FR2 поддерживает передачу 64 SSB, каждая на своем луче. Содержание ВСН варьируется между FR1 и FR2, чтобы приспособиться к различным максимальным подсчетам лучей.

nrhdlexamples.ssbDecode функции и nrhdlSSBDecodingCore модель принимает Lmax в качестве входных данных. Lmax - максимальное количество лучей, которые могут передаваться вышкой сотовой связи, и зависит от несущей частоты. Допустимые параметры Lmax: 4 или 8 для FR1 и 64 для FR2. Lmax влияет на дескремблирование в подсистеме обработки/извлечения полезной нагрузки BCH и на то, как анализируется конечная полезная нагрузка BCH.

Моделирование восстановления MIB

Используйте runMIBRecoveryModelFR2 сценарий для запуска моделирования восстановления FR2 MIB и проверки результатов. Сценарий отображает ход выполнения в командной строке MATLAB. В моделировании используется nrhdlMIBRecovery модель, которая ссылается на nrhdlSSBDetectionCore и nrhdlSSBDecodingCore модели. Входным стимулом для моделирования является FR2 форма сигнала, содержащая пакет SS с этими параметрами.

  • Шаблон SSB - это вариант D.

  • Интервал между поднесущими составляет 120 кГц.

  • NCellID равен 249.

  • Активные SSB передаются по индексам SSB 24:31.

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

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

runMIBRecoveryModelFR2;
Searching for SSBs using the MATLAB reference.
SSBs found by MATLAB reference:
    NCellID2    timingOffset    pssCorrelation    pssEnergy    frequencyOffset
    ________    ____________    ______________    _________    _______________

       0         1.0918e+05        0.42856          0.9903          51134     
       0         1.1137e+05        0.76446          1.6985          49836     
       0         1.1576e+05        0.27392         0.66928          48771     
       0         1.1795e+05          4.138          7.8159          49815     
       0         1.2456e+05        0.58574           1.249          51829     
       0         1.2675e+05         1.2834          2.7073          49390     
       0         1.3113e+05        0.18099         0.49988          48119     
       0         1.3332e+05        0.59469          1.2165          47641     

Demodulating the strongest SSBs using the MATLAB reference.
Decoding the SSB using the MATLAB reference.
Successfully decoded SSB with MATLAB reference
Demodulating the strongest SSBs using Simulink model.
Running nrhdlMIBRecovery.slx
### Starting serial model reference simulation build
### Model reference simulation target for nrhdlSSBDecodingCore is up to date.
### Model reference simulation target for nrhdlSSBDetectionCore is up to date.

Build Summary

0 of 2 models built (2 models already up to date)
Build duration: 0h 0m 3.4464s
..........
Successfully decoded SSB with Simulink model
 MATLAB decoded information
    pbchPayload: 218103955
       ssbIndex: 27
            hrf: 0
            err: 0
            mib: [1×1 struct]

 Simulink decoded information
    pbchPayload: 218103955
       ssbIndex: 27
            hrf: 0
            err: 0
            mib: [1×1 struct]

 MATLAB decoded MIB parameters
                     NFrame: 105
    SubcarrierSpacingCommon: 120
                      k_SSB: 0
          DMRSTypeAPosition: 2
            PDCCHConfigSIB1: 0
                 CellBarred: 0
       IntraFreqReselection: 0

 Simulink decoded MIB parameters
                     NFrame: 105
    SubcarrierSpacingCommon: 120
                      k_SSB: 0
          DMRSTypeAPosition: 2
            PDCCHConfigSIB1: 0
                 CellBarred: 0
       IntraFreqReselection: 0

Результаты создания и внедрения кода HDL

Для создания кода HDL в этом примере необходимо иметь лицензию HDL Coder™. Используйте makehdl и makehdltb команды для генерации кода HDL и стенда для тестирования HDL для nrhdlMIBRecovery/MIB Recovery подсистема. Полученный код HDL синтезировали для оценочной платы Xilinx ® Zynq ® -7000 ZC706. В таблице показаны результаты использования ресурсов после размещения и маршрута для каждой ссылки на модель и комбинированной модели. Конструкция отвечает синхронизации с тактовой частотой 200 МГц.

Распределение использования ресурсов по моделям:

       Resource        nrhdlMIBRecovery    nrhdlSSBDetectionCore    nrhdlSSBDecodingCore
    _______________    ________________    _____________________    ____________________

    Slice Registers         64317                  55969                    8302        
    Slice LUTs              43304                  32380                   11138        
    RAMB18                     40                     34                       6        
    RAMB36                     10                      5                       5        
    DSP48                     207                    170                      37        

Связанные темы