Этот пример показов, как сгенерировать совместимые со стандартом 5G NR экспериментальные модели (NR-TM) и каналы фиксированной ссылки восходящей и нисходящей линий связи (FRC) для частотных областей значений 1 (FR1) и область значений 2 (FR2). Для генерации сигналов NR-TM и FRC можно задать имя NR-TM или FRC, пропускную способность канала, интервал между поднесущими и режим дуплекса.
Стандарт 3GPP 5G NR задает наборы строений ссылки и формы волны для целей проверки на соответствие. Двумя конкретными типами сигналов соответствия нисходящей линии связи являются NR экспериментальных моделей (NR-TM), для целей RF проверки базовой станции (BS) и нисходящие каналы фиксированной ссылки (FRC), для входных проверок пользовательского оборудования (UE).
НР-ТМ для FR1 определены в TS 38.141-1 раздел 4.9.2, а НР-ТМ для FR2 определены в TS 38.141-2 раздел 4.9.2.
Они используются в область значений тестов РФ, включая:
Степень BS
Ошибка выравнивания синхронизации (TAE)
Занимаемая полоса
Коэффициент утечек по соседнему каналу (ACLR)
Рабочая полоса нежелательных выбросов
Паразитные выбросы датчика
Интермодуляция передатчика
Конкретные экспериментальные модели направлены на конкретные наборы измерений.
Физический общий канал нисходящей линии связи (PDSCH) FRC для FR1 определен в TS 38.101-1, приложение A.3, и для FR2 определены в TS 38.101-2, приложение A.3.
Они используются в ряде тестов UE, включая:
Требования к приемнику UE
Максимальная проверка входного уровня UE
FRC физического восходящего общего канала (PUSCH) для FR1 и FR2 определены в TS 38.104 Приложение А.
Они используются в ряде тестов приема базовых станций, включая:
Эталонная чувствительность
Селективность смежного канала (ACS)
Внутриполосная и внеполосная блокировка
Интермодуляция приемника
Внутриканальная селективность
Динамическая область значений
Требования к эффективности
NR-TM и FRC заданы через стандартизированный набор строений полосы пропускания передачи для допустимой области значений комбинаций полосы пропускания канала и интервалов поднесущих.
Этот пример готовых узлов пример использует класс MATLAB hNRReferenceWaveformGenerator
. Этот класс предоставляет доступ к таблицам строения полосы пропускания, экспериментальной модели Release 15 и спискам FRC, и обеспечивает генерацию сигналов основной полосы и визуализацию сетки ресурсов.
The hNRReferenceWaveformGenerator
класс содержит два постоянных свойства таблицы MATLAB. The FR1BandwidthTable
свойство содержит FR1 строения полосы пропускания передачи, определенные в TS 38.104 Таблица 5.3.2-1. Смотрите также FR1 максимальную пропускную способность передачи строений заданную в TS 38,101-1 таблице 5,3,2-1. The FR2BandwidthTable
свойство содержит FR2 строения полосы пропускания передачи, определенные в TS 38.104 Таблица 5.3.2-2. Смотрите также FR2 максимальную пропускную способность передачи строений заданную в TS 38,101-2 таблице 5,3,2-1.
% Release 15 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
The hNRReferenceWaveformGenerator
класс также содержит два постоянных свойства, которые перечисляют имена экспериментальных моделей для FR1 (TS 38.141-1, раздел 4.9.2) и имена экспериментальных моделей для FR2 (TS 38.141-2, раздел 4.9.2).
% Release 15 NR-TM test models for FR1 and FR2
fr1testmodels = hNRReferenceWaveformGenerator.FR1TestModels
fr1testmodels = 8×1 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 = 3×1 string
"NR-FR2-TM1.1"
"NR-FR2-TM2"
"NR-FR2-TM3.1"
Для нисходящих 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 = 3×1 string
"DL-FRC-FR1-QPSK"
"DL-FRC-FR1-64QAM"
"DL-FRC-FR1-256QAM"
fr2downlinkfrc = hNRReferenceWaveformGenerator.FR2DownlinkFRC
fr2downlinkfrc = 3×1 string
"DL-FRC-FR2-QPSK"
"DL-FRC-FR2-16QAM"
"DL-FRC-FR2-64QAM"
Для FRC восходящей линии связи класс содержит два постоянных свойства, которые перечисляют имена FRC восходящей линии связи для FR1 и FR2 (TS 38.104, приложение A).
% Release 15 uplink fixed reference channels for FR1 and FR2
fr1uplinkfrc = hNRReferenceWaveformGenerator.FR1UplinkFRC
fr1uplinkfrc = 89×1 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 = 37×1 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-TM или FRC
Пропускная способность канала
Интервал между поднесущими
Режим дуплекса
Различные NR-TM определены для FR1 и FR2. В зависимости от целей экспериментальной модели NR-TM имеют различные характеристики PDSCH. Для примера: полная полоса, одна схема модуляции или полная полоса, несколько схем модуляции с изменяющимися степенями ускорением/демонтажем или одним, варьирующимся выделением PRB. Общими функциями для всех NR-TM являются отсутствие пакета SS, отображение типа A PDSCH с одной (FR2) или двумя (FR1) положениями DM-RS на паз и один PDCCH на двух символах с NCCE = 1. Не используется транспортное или DCI-кодирование, и вход в PDSCH и PDCCH все 0 или PN23. Формы волны FDD NR-TM имеют длину 10 мс, а случаи TDD - 20 мс. PT-RS заданы для FR2 NR-TM.
Для сравнения, формы FRC нисходящей линии связи содержат кодированный транспортом PDSCH с использованием RV = 0. PDSCH ссылки не заданы в пазы, которые перекрывают пакет SS (паз 0 или пазы 0 и 1). Они используют передний загруженный PDSCH тип отображения A с 2 дополнительными положениями DM-RS. Между PDSCH и DM-RS нет FDM. Полнодиапазонный PDSCH начинается с символа 2, а первые 2 символа в пазе содержат полный занятый CORESET. Формы волны FRC, сгенерированные в этом примере, не содержат дополнительного OCNG. Уровни степени для всех ресурсных элементов одинаковы. Источником данных транспортного блока является PN9 ITU.
Комбинация пропускной способности канала и интервалов между поднесущими должна быть допустимой парой из связанной таблицы строения полосы FR. Стандарт задает только FR2 NR-TM и 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 = "15.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: [3×13 table] FR2BandwidthTable: [2×4 table] FR1TestModels: [8×1 string] FR2TestModels: [3×1 string] FR1DownlinkFRC: [3×1 string] FR2DownlinkFRC: [3×1 string] FR1UplinkFRC: [89×1 string] FR2UplinkFRC: [37×1 string] Config: [1×1 nrDLCarrierConfig] IsReadOnly: 1 ConfiguredModel: {["NR-FR1-TM3.2"] ["10MHz"] ["15kHz"] ["FDD"] [1] ["15.7.0"]} 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: {[1×1 nrSCSCarrierConfig]} BandwidthParts: {[1×1 nrWavegenBWPConfig]} SSBurst: [1×1 nrWavegenSSBurstConfig] CORESET: {[1×1 nrCORESETConfig]} SearchSpaces: {[1×1 nrSearchSpaceConfig]} PDCCH: {[1×1 nrWavegenPDCCHConfig]} PDSCH: {[1×1 nrWavegenPDSCHConfig] [1×1 nrWavegenPDSCHConfig] [1×1 nrWavegenPDSCHConfig]} CSIRS: {[1×1 nrWavegenCSIRSConfig]}
% Make the Config parameters writable and boost the power on all PDSCH DM-RS
dlrefwavegen = makeConfigWritable(dlrefwavegen)
dlrefwavegen = hNRReferenceWaveformGenerator with properties: FR1BandwidthTable: [3×13 table] FR2BandwidthTable: [2×4 table] FR1TestModels: [8×1 string] FR2TestModels: [3×1 string] FR1DownlinkFRC: [3×1 string] FR2DownlinkFRC: [3×1 string] FR1UplinkFRC: [89×1 string] FR2UplinkFRC: [37×1 string] Config: [1×1 nrDLCarrierConfig] IsReadOnly: 0 ConfiguredModel: {["NR-FR1-TM3.2"] ["10MHz"] ["15kHz"] ["FDD"] [1] ["15.7.0"]} 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 в TS 38.104 в приложении А четко определяет ряд ключевых параметров, включая:
Частотная область значений
Пропускная способность канала
Интервал между поднесущими
Скорость кода
Модуляция
DM-RS строения
Кроме того, связанные тесты приемника вводят некоторые дополнительные параметры, которые не указаны в таблицах TS 38.104 приложения А, например, общие параметры испытаний, определенные в:
Таблица 8.2.1.1-1 (Требования к эффективности ПУСК без предварительного кодирования преобразования)
Таблица 8.2.2.1-1 (Требования к эффективности для PUSCH с предварительным кодированием преобразования)
Таблица 11.2.2.1.1-1 (Требования к эффективности для типа BS 2-O для PUSCH без предварительного кодирования преобразования)
Таблица 11.2.2.2.1-1 (Требования к эффективности для типа BS 2-O для PUSCH с предварительным кодированием преобразования)
Наборы параметров, которые захвачены в генераторе опорной формы волны MATLAB, используют вышеуказанные источники спецификаций. Поскольку данный FRC может использоваться в различных тестах с различными требованиями к параметрам, следующие общие правила применяются к строениям генератора по умолчанию. Все параметры могут быть изменены после конструкции. Предварительное кодирование преобразования включено для соответствующего FRC. FR2 волны являются TDD и 20 мс в длину, и FR1 волны являются FDD и 10 мс. PUSCH FRC определяются отображением типа A, отображением типа B или, в некоторых случаях, типом отображения. В последнем случае сконфигурировано отображение типа A. FR2 волны без предварительного кодирования преобразования сконфигурированы с PT-RS, в противном случае PT-RS отключены. Тождества скремблирования устанавливаются на 0. Уровни степени для всех ресурсных элементов одинаковы. Источником данных транспортного блока является ITU, PN9 с RV = 0, т.е. нет повторных передач.
Этот код MATLAB создает hNRReferenceWaveformGenerator
объект для выбранного строения PUSCH FRC. Из-за большого количества FRC в раскрывающемся списке FRC live скрипта перечислены только те из раздела TS 38.104 A.1 (чувствительность к ссылкам, ACS, внутриполосная блокировка и т.д.) и A.2 (динамическая область значений). FRC тестирования эффективности, определенный в A.3, A.4, A.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: [3×13 table] FR2BandwidthTable: [2×4 table] FR1TestModels: [8×1 string] FR2TestModels: [3×1 string] FR1DownlinkFRC: [3×1 string] FR2DownlinkFRC: [3×1 string] FR1UplinkFRC: [89×1 string] FR2UplinkFRC: [37×1 string] Config: [1×1 struct] 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: [1×10 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 = struct with fields:
Name: 'G-FR1-A1-1'
NCellID: 0
ChannelBandwidth: 5
FrequencyRange: "FR1"
NumSubframes: 10
Windowing: 0
DisplayGrids: 0
Carriers: [1×1 struct]
BWP: [1×1 struct]
PUCCH: [1×1 struct]
PUSCH: [1×1 struct]
[1] 3GPP TS 38.101-1. "NR; радиопередача и прием пользовательского оборудования (UE); Часть 1: Область значений 1 Standalone ". 3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.
[2] 3GPP TS 38.101-2. "NR; радиопередача и прием пользовательского оборудования (UE); Часть 2: Область значений 2 Standalone ". 3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.
[3] 3GPP TS 38.104. "NR; радиопередача и прием базовой станции (BS). "3-ья Генерация партнерский проект; Группа технических спецификаций Радиосеть доступ.
[4] 3GPP TS 38.141-1. "NR; Соответствие базовой станции (BS) проверки Часть 1: Проведена проверка соответствия ". 3-ья Генерация Партнерский проект; Группа технических спецификаций Радиосеть доступ.
[5] 3GPP ТС 38.141-2. "NR; Соответствие базовой станции (BS) проверки часть 2: Проверка радиационного соответствия ". 3-ья Генерация Партнерский проект; Группа технических спецификаций Радиосеть доступ.