В этом примере показано, как сгенерировать стандартно-совместимый 5G тестовые модели NR (NR-TMs) и восходящий канал и нисходящий канал зафиксированные ссылочные каналы (FRCs) для частотного диапазона 1 (FR1) и частотного диапазона 2 (FR2). Для NR-TM и генерации сигналов FRC, можно задать NR-TM или имя FRC, полосу пропускания канала, расстояние между поднесущими и режим дуплекса.
3GPP 5G стандарт NR задает наборы ссылки и настроек формы волны в целях проверки на соответствие стандарту. Два определенных типа нисходящих форм волны соответствия являются тестовыми моделями NR (NR-TM), в целях базовой станции (BS) тестирование RF, и передают в нисходящем направлении фиксированные ссылочные каналы (FRC) для входного тестирования оборудования пользователя (UE).
NR-TMs для FR1 заданы в TS 38.141-1 Разделов 4.9.2, и NR-TMs для FR2 заданы в TS 38.141-2 Разделов 4.9.2.
Они используются в области значений тестов RF, включая:
Выходная мощность BS
Синхронизация ошибки выравнивания (TAE)
Эмиссия занимаемой полосы
Смежное отношение утечки канала (ACLR)
Операционная полоса нежелательная эмиссия
Передатчик побочная эмиссия
Интермодуляция передатчика
Определенные тестовые модели нацелены на определенные наборы измерений.
Физический нисходящий канал совместно использованный канал (PDSCH) FRC для FR1 задан в TS 38.101-1 Приложений A.3, и для FR2, задан в TS 38.101-2 Приложений A.3.
Они используются во многих тестах UE, включая:
Требования приемника UE
Максимальное тестирование уровня на входе UE
Физический восходящий канал совместно использованный канал (PUSCH) FRC для FR1 и FR2 задан в приложении A TS 38.104.
Они используются во многих тестах приема базовой станции, включая:
Ссылочная чувствительность
Смежная селективность канала (ACS)
Внутриполосное и внеполосное блокирование
Интермодуляция приемника
Селективность в канале
Динамический диапазон
Требования к производительности
ТМ NR и FRCs заданы через стандартизированный набор настроек полосы пропускания передачи для допустимой области значений полосы пропускания канала и комбинаций расстояния между поднесущими.
Этот пример примера готовых узлов использует класс MATLAB hNRReferenceWaveformGenerator
. Этот класс обеспечивает доступ к таблицам настройки полосы пропускания, тестовой модели Релиза 15 и Релиза 16 и спискам FRC, и обеспечивает основополосную генерацию сигналов и визуализацию сетки ресурса.
hNRReferenceWaveformGenerator
класс содержит два постоянных свойств таблиц MATLAB. FR1BandwidthTable
свойство содержит настройки полосы пропускания передачи FR1, заданные в таблице 5.3.2-1 TS 38.104. См. также максимальные настройки полосы пропускания передачи FR1, заданные в TS 38.101-1 Таблиц 5.3.2-1. FR2BandwidthTable
свойство содержит настройки полосы пропускания передачи FR2, заданные в таблице 5.3.2-2 TS 38.104. См. также максимальные настройки полосы пропускания передачи FR2, заданные в TS 38.101-2 Таблиц 5.3.2-1.
% NR transmission bandwidth configurations
fr1bandwidthtable = hNRReferenceWaveformGenerator.FR1BandwidthTable
fr1bandwidthtable=3×13 table
5MHz 10MHz 15MHz 20MHz 25MHz 30MHz 40MHz 50MHz 60MHz 70MHz 80MHz 90MHz 100MHz
____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ ______
15kHz 25 52 79 106 133 160 216 270 NaN NaN NaN NaN NaN
30kHz 11 24 38 51 65 78 106 133 162 189 217 245 273
60kHz NaN 11 18 24 31 38 51 65 79 93 107 121 135
fr2bandwidthtable = hNRReferenceWaveformGenerator.FR2BandwidthTable
fr2bandwidthtable=2×4 table
50MHz 100MHz 200MHz 400MHz
_____ ______ ______ ______
60kHz 66 132 264 NaN
120kHz 32 66 132 264
hNRReferenceWaveformGenerator
класс также содержит два постоянных свойства, которые перечисляют имена тестовой модели для FR1 (TS 38.141-1 Разделов 4.9.2) и имена тестовой модели для FR2 (TS 38.141-2 Разделов 4.9.2).
% Release 15 and Release 16 NR-TM test models for FR1 and FR2
fr1testmodels = hNRReferenceWaveformGenerator.FR1TestModels
fr1testmodels = 8x1 string
"NR-FR1-TM1.1"
"NR-FR1-TM1.2"
"NR-FR1-TM2"
"NR-FR1-TM2a"
"NR-FR1-TM3.1"
"NR-FR1-TM3.1a"
"NR-FR1-TM3.2"
"NR-FR1-TM3.3"
fr2testmodels = hNRReferenceWaveformGenerator.FR2TestModels
fr2testmodels = 5x1 string
"NR-FR2-TM1.1"
"NR-FR2-TM2"
"NR-FR2-TM2a"
"NR-FR2-TM3.1"
"NR-FR2-TM3.1a"
Для нисходящего FRCs класс содержит дополнительные постоянные свойства, которые перечисляют нисходящие имена FRC для FR1 (TS 38.101-1 Приложений A.3) и для FR2 (TS 38.101-2 Приложений A.3).
% Release 15 downlink fixed reference channels for FR1 and FR2
fr1downlinkfrc = hNRReferenceWaveformGenerator.FR1DownlinkFRC
fr1downlinkfrc = 3x1 string
"DL-FRC-FR1-QPSK"
"DL-FRC-FR1-64QAM"
"DL-FRC-FR1-256QAM"
fr2downlinkfrc = hNRReferenceWaveformGenerator.FR2DownlinkFRC
fr2downlinkfrc = 3x1 string
"DL-FRC-FR2-QPSK"
"DL-FRC-FR2-16QAM"
"DL-FRC-FR2-64QAM"
Для восходящего FRCs класс содержит два постоянных свойства, которые перечисляют восходящие имена FRC для FR1 и FR2 (приложение A TS 38.104).
% Release 15 uplink fixed reference channels for FR1 and FR2
fr1uplinkfrc = hNRReferenceWaveformGenerator.FR1UplinkFRC
fr1uplinkfrc = 89x1 string
"G-FR1-A1-1"
"G-FR1-A1-2"
"G-FR1-A1-3"
"G-FR1-A1-4"
"G-FR1-A1-5"
"G-FR1-A1-6"
"G-FR1-A1-7"
"G-FR1-A1-8"
"G-FR1-A1-9"
"G-FR1-A2-1"
"G-FR1-A2-2"
"G-FR1-A2-3"
"G-FR1-A2-4"
"G-FR1-A2-5"
"G-FR1-A2-6"
"G-FR1-A3-1"
"G-FR1-A3-2"
"G-FR1-A3-3"
"G-FR1-A3-4"
"G-FR1-A3-5"
"G-FR1-A3-6"
"G-FR1-A3-7"
"G-FR1-A3-8"
"G-FR1-A3-9"
"G-FR1-A3-10"
"G-FR1-A3-11"
"G-FR1-A3-12"
"G-FR1-A3-13"
"G-FR1-A3-14"
"G-FR1-A3-15"
⋮
fr2uplinkfrc = hNRReferenceWaveformGenerator.FR2UplinkFRC
fr2uplinkfrc = 37x1 string
"G-FR2-A1-1"
"G-FR2-A1-2"
"G-FR2-A1-3"
"G-FR2-A1-4"
"G-FR2-A1-5"
"G-FR2-A3-1"
"G-FR2-A3-2"
"G-FR2-A3-3"
"G-FR2-A3-4"
"G-FR2-A3-5"
"G-FR2-A3-6"
"G-FR2-A3-7"
"G-FR2-A3-8"
"G-FR2-A3-9"
"G-FR2-A3-10"
"G-FR2-A3-11"
"G-FR2-A3-12"
"G-FR2-A4-1"
"G-FR2-A4-2"
"G-FR2-A4-3"
"G-FR2-A4-4"
"G-FR2-A4-5"
"G-FR2-A4-6"
"G-FR2-A4-7"
"G-FR2-A4-8"
"G-FR2-A4-9"
"G-FR2-A4-10"
"G-FR2-A5-1"
"G-FR2-A5-2"
"G-FR2-A5-3"
⋮
Для получения дополнительной информации получите доступ к справке hNRReferenceWaveformGenerator
путем ввода 'doc hNRReferenceWaveformGenerator'
.
Каждая ссылочная форма волны PDSCH задана комбинацией:
ТМ NR или имя FRC
Полоса пропускания канала
Расстояние между поднесущими
Режим Duplexing
Различные NR-TMs заданы для FR1 и FR2. В зависимости от целей тестовой модели NR-TMs имеют варьирование характеристики PDSCH. Например: полная полоса, одна схема модуляции, или полная полоса, несколько схем модуляции с различным повышением/замедлением степени или один, варьируясь выделение PRB. Типичные функции ко всем NR-TMs: никакой пакет SS, PDSCH отображение типа A с одним (FR2) или два (FR1) DM-RS положения на передачу паза и один PDCCH через два символа с NCCE = 1. Нет никакого транспорта или DCI, кодирование используемого и вход к PDSCH и PDCCH является всем 0 или PN23. FDD НОМЕР форм волны ТМ составляет 10 мс в длине и случаях TDD, составляют 20 мс. PT-RS заданы для NR-TM FR2.
Для сравнения передайте в нисходящем направлении формы волны FRC, содержат закодированный PDSCH транспорта, использующий RV = 0. Ссылочные PDSCH не заданы в пазах, которые перекрывают пакет SS (паз 0 или пазы 0 и 1). Они используют загруженный PDSCH передней стороны отображение типа A с 2 дополнительными положениями DM-RS. Нет никакого FDM между PDSCH и DM-RS. Полная полоса, которую PDSCH запускают в символе 2 и первых 2 символах в пазе, содержит полный занятый CORESET. Формы волны FRC, сгенерированные в этом примере, не содержат дополнительный OCNG. Уровни мощности для всех элементов ресурса универсальны. Транспортный источник данных блока является ITU PN9.
Полоса пропускания канала и комбинация расстояния между поднесущими должны быть допустимой парой из связанной таблицы настройки полосы пропускания FR. Стандарт только задает NR-TM FR2 и FRC для TDD, но с этим примером можно также создать формы волны FDD.
Этот код MATLAB создает hNRReferenceWaveformGenerator
объект для выбранного NR-TM или настройки FRC. Можно использовать этот объект сгенерировать связанную основополосную форму волны и отобразить базовый PRB и сетки ресурса уровня поднесущей.
% Select the NR-TM or PDSCH FRC waveform parameters dlnrref = "NR-FR1-TM3.2"; % Model name and properties bw = "10MHz"; % Channel bandwidth scs = "15kHz"; % Subcarrier spacing dm = "FDD"; % Duplexing mode ncellid = 1; % NCellID sv = "16.7.0"; % TS 38.141-x version (NR-TM only) % Run this entire section to generate the required waveform % Create generator object for the above NR-TM/PDSCH FRC reference model dlrefwavegen = hNRReferenceWaveformGenerator (dlnrref, bw, scs, dm, ncellid, sv)
dlrefwavegen = hNRReferenceWaveformGenerator with properties: FR1BandwidthTable: [3x13 table] FR2BandwidthTable: [2x4 table] FR1TestModels: [8x1 string] FR2TestModels: [5x1 string] FR1DownlinkFRC: [3x1 string] FR2DownlinkFRC: [3x1 string] FR1UplinkFRC: [89x1 string] FR2UplinkFRC: [37x1 string] Config: [1x1 nrDLCarrierConfig] IsReadOnly: 1 ConfiguredModel: {1x6 cell} TargetRNTI: 1
% Generate waveform [dlrefwaveform,dlrefwaveinfo,dlresourceinfo] = generateWaveform(dlrefwavegen); % View transmission information about the set of PDSCH within the waveform dlresourceinfo.WaveformResources.PDSCH
ans=1×3 struct array with fields:
Name
CDMLengths
Resources
% View detailed information about one of the PDSCH sequences
dlresourceinfo.WaveformResources.PDSCH(1).Resources
ans=1×10 struct array with fields:
NSlot
TransportBlockSize
TransportBlock
RV
Codeword
G
Gd
ChannelIndices
ChannelSymbols
DMRSIndices
DMRSSymbols
DMRSSymbolSet
PTRSIndices
PTRSSymbols
PTRSSymbolSet
% Waveform sample rate (Hz)
samplerate = dlrefwaveinfo.Info.SampleRate
samplerate = 15360000
plot(abs(dlrefwaveform)); title(sprintf('Magnitude of %s Baseband Waveform',dlnrref)); xlabel('Sample Index'); ylabel('Magnitude');
% Visualize the associated PRB and subcarrier resource grids
displayResourceGrid(dlrefwavegen);
fullparameterset = dlrefwavegen.Config % Full low-level parameter set
fullparameterset = nrDLCarrierConfig with properties: Label: 'NR-FR1-TM3.2' FrequencyRange: 'FR1' ChannelBandwidth: 10 NCellID: 1 NumSubframes: 10 WindowingPercent: 0 SampleRate: [] CarrierFrequency: 0 SCSCarriers: {[1x1 nrSCSCarrierConfig]} BandwidthParts: {[1x1 nrWavegenBWPConfig]} SSBurst: [1x1 nrWavegenSSBurstConfig] CORESET: {[1x1 nrCORESETConfig]} SearchSpaces: {[1x1 nrSearchSpaceConfig]} PDCCH: {[1x1 nrWavegenPDCCHConfig]} PDSCH: {1x3 cell} CSIRS: {[1x1 nrWavegenCSIRSConfig]}
% Make the Config parameters writable and boost the power on all PDSCH DM-RS
dlrefwavegen = makeConfigWritable(dlrefwavegen)
dlrefwavegen = hNRReferenceWaveformGenerator with properties: FR1BandwidthTable: [3x13 table] FR2BandwidthTable: [2x4 table] FR1TestModels: [8x1 string] FR2TestModels: [5x1 string] FR1DownlinkFRC: [3x1 string] FR2DownlinkFRC: [3x1 string] FR1UplinkFRC: [89x1 string] FR2UplinkFRC: [37x1 string] Config: [1x1 nrDLCarrierConfig] IsReadOnly: 0 ConfiguredModel: {1x6 cell} TargetRNTI: 1
% Set DM-RS power parameter on all the PDSCH pdscharray = [dlrefwavegen.Config.PDSCH{:}]; % Extract all PDSCH configs into an array [pdscharray.DMRSPower] = deal(3); % Boost the DM-RS power on all the PDSCH dlrefwavegen.Config.PDSCH = num2cell(pdscharray); % Reassign the updated PDSCH configs
Каждое определение канала ссылки PUSCH FRC в приложении A TS 38.104 явным образом задает много основных параметров включая:
Частотный диапазон
Полоса пропускания канала
Расстояние между поднесущими
Скорость кода
Модуляция
Настройка DM-RS
Кроме того, связанные тесты приемника вводят некоторые дополнительные параметры, которые не заданы в таблицах TS 38.104 Annex A, например, общие тестовые параметры, заданные в:
Таблица 8.2.1.1-1 (Проводимые требования к производительности для PUSCH без предварительного кодирования преобразования)
Таблица 8.2.2.1-1 (Проводимые требования к производительности для PUSCH с предварительным кодированием преобразования)
Таблица 11.2.2.1.1-1 (Излученные требования к производительности для типа 2-o BS для PUSCH без предварительного кодирования преобразования)
Таблица 11.2.2.2.1-1 (Излученные требования к производительности для типа 2-o BS для PUSCH с предварительным кодированием преобразования)
Наборы параметров, которые получены в генераторе формы волны ссылки MATLAB, используют источники указанных выше технических условий. Поскольку данный FRC может использоваться в различных тестах с различными требованиями параметров, следующие общие правила применяются к настройкам генератора по умолчанию. Все параметры могут быть изменены после конструкции. Преобразуйте предварительное кодирование, включен для соответствующего FRC. Формы волны FR2 являются TDD и 20 мс в длине, и формы волны FR1 являются FDD и 10 мс. PUSCH FRC задан с типом отображением, отображением типа B, или, в некоторых случаях, любым типом отображения. В последнем случае отображение тип, сконфигурирован. Формы волны FR2 без предварительного кодирования преобразования сконфигурированы с PT-RS, в противном случае PT-RS выключены. Борющиеся тождества установлены в 0. Уровни мощности для всех элементов ресурса универсальны. Транспортный источник данных блока является ITU PN9 с RV = 0 i.e. никакие повторные передачи.
Этот код MATLAB создает hNRReferenceWaveformGenerator
объект для выбранной настройки PUSCH FRC. Из-за большого количества FRC, live скрипт FRC выпадающие списки только те от раздела TS 38.104 1 (ссылка sensistivity, ACS, внутриполосное блокирование и т.д.) и 2 (динамический диапазон). Тест производительности FRC, заданный в 3, 4, 5 банка быть выбранным путем определения FRC, называет строку непосредственно в коде ниже. После того, как объект генератора создается, все параметры конфигурации могут быть изменены путем создания их перезаписываемым использованием makeConfigWritable
функция.
% Select the PUSCH FRC waveform ulnrref = "G-FR1-A1-1"; % This live script down-drop list is preconfigured for TS 38.104 Annex A.1 and A.2 subsets % Possible overrides to Annex A definitions (empty values provide the Annex A defaults) bw = []; % Bandwidth override (5,10,15,20,25,30,40,50,60,70,80,90,100,200,400 MHz) scs = []; % Subcarrier spacing override (15,30,60,120 kHz) dm = []; % Duplexing mode override ("FDD","TDD") ncellid = []; % Cell identity override (used to control scrambling identities) % Run this entire section to generate the required waveform % Create generator object for the above PUSCH FRC reference model ulrefwavegen = hNRReferenceWaveformGenerator (ulnrref, bw, scs, dm, ncellid)
ulrefwavegen = hNRReferenceWaveformGenerator with properties: FR1BandwidthTable: [3x13 table] FR2BandwidthTable: [2x4 table] FR1TestModels: [8x1 string] FR2TestModels: [5x1 string] FR1DownlinkFRC: [3x1 string] FR2DownlinkFRC: [3x1 string] FR1UplinkFRC: [89x1 string] FR2UplinkFRC: [37x1 string] Config: [1x1 nrULCarrierConfig] IsReadOnly: 1 ConfiguredModel: {["G-FR1-A1-1"] [] [] ["FDD"] [0]} TargetRNTI: 0
% Generate waveform [ulrefwaveform,ulrefwaveinfo,ulresourceinfo] = generateWaveform(ulrefwavegen); % View transmission information about the set of PUSCH within the waveform ulresourceinfo.WaveformResources.PUSCH
ans = struct with fields:
Name: 'PUSCH sequence for G-FR1-A1-1'
CDMLengths: [1 1]
Resources: [1x10 struct]
% View detailed information about one of the PUSCH sequences
ulresourceinfo.WaveformResources.PUSCH(1).Resources
ans=1×10 struct array with fields:
NSlot
TransportBlockSize
TransportBlock
RV
Codeword
G
Gd
ChannelIndices
ChannelSymbols
DMRSIndices
DMRSSymbols
DMRSSymbolSet
PTRSIndices
PTRSSymbols
PTRSSymbolSet
% Waveform sample rate (Hz)
samplerate = ulrefwaveinfo.Info.SampleRate
samplerate = 7680000
plot(abs(ulrefwaveform)); title(sprintf('Magnitude of %s Baseband Waveform',ulnrref)); xlabel('Sample Index'); ylabel('Magnitude');
% Visualize the associated PRB and subcarrier resource grids
displayResourceGrid(ulrefwavegen);
fullparameterset = ulrefwavegen.Config % Full low-level parameter set
fullparameterset = nrULCarrierConfig with properties: Label: 'G-FR1-A1-1' FrequencyRange: 'FR1' ChannelBandwidth: 5 NCellID: 0 NumSubframes: 10 WindowingPercent: 0 SampleRate: [] CarrierFrequency: 0 SCSCarriers: {[1x1 nrSCSCarrierConfig]} BandwidthParts: {[1x1 nrWavegenBWPConfig]} PUSCH: {[1x1 nrWavegenPUSCHConfig]} PUCCH: {[1x1 nrWavegenPUCCH0Config]} SRS: {[1x1 nrWavegenSRSConfig]}
[1] 3GPP TS 38.101-1. “NR; передача радио Оборудования пользователя (UE) и прием; Часть 1: Область значений 1 Автономное”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.
[2] 3GPP TS 38.101-2. “NR; передача радио Оборудования пользователя (UE) и прием; Часть 2: Область значений 2 Автономных”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.
[3] 3GPP TS 38.104. “NR; передача радио Базовой станции (BS) и прием”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.
[4] 3GPP TS 38.141-1. “NR; Часть 1 проверки на соответствие стандарту Базовой станции (BS): Проводимая проверка на соответствие стандарту”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.
[5] 3GPP TS 38.141-2. “NR; Часть 2 проверки на соответствие стандарту Базовой станции (BS): Излученная проверка на соответствие стандарту”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group.