Этот пример показывает, как сгенерировать формы волны LTE-Advanced Pro Release 15 узкополосного Интернета вещей (NB-IoT), состоящие из узкополосного физического канала произвольного доступа (NPRACH) для типа 1 системы координат, при помощи LTE Toolbox™.
3GPP представил новый беспроводной интерфейс NB-IoT, оптимизированный для низкоскоростных коммуникаций типа машины в LTE-Advanced Pro Release 13. NB-IoT обеспечивает улучшение затрат и степени эффективности, поскольку избегает необходимости в сложных служебных данных сигнализации, необходимых для других основанных на LTE систем.
Можно использовать LTE Toolbox, чтобы сгенерировать стандартные совместимые с NB-IoT комплексные формы волны основной полосы, представляющие узкополосную несущую частотой 180 кГц, подходящую для тестирования и измерения. Каналы физического слоя восходящей линии NB-IoT и сигналы:
Узкополосный опорный сигнал демодуляции (DM-RS)
Узкополосный физический общий восходящий канал (NPUSCH)
Узкополосный физический канал произвольного доступа (NPRACH)
В этом примере мы демонстрируем распределение NPRACH в ресурсной сетке и генерацию сигналов NPRACH. В частности, этот пример рассматривает аспект частотного дуплекса NB-IoT PRACH, заданный в LTE Advanced-Pro Release 15. Это называется структурой системы координат типа 1 в TS 36.211 раздел 10.0.1 [1].
Пример генерирует сложную форму волны полосы частот наряду с заполненной сеткой, содержащей сигнал NPRACH.
В этом разделе приводится общее описание распределения NPRACH по времени и частоте.
С временной точки зрения передача NPRACH определяется как NRep
повторения преамбул NPRACH, в которых преамбула NPRACH определяется как набор P
группы символов. TS 36.211 Раздел 10.1.6.1 определяет группу символов как последовательность N
идентичные символы, которым предшествует циклический префикс. По этой причине группа символов, а не символ OFDM, может быть рассмотрена как атомарный модуль NPRACH. Длительность группы символов NPRACH является функцией формата преамбулы, как описано в TS 36.211 Таблица 10.1.6.1-1. Этот рисунок показывает схему групп символов для трех форматов преамбулы NPRACH.
С точки зрения частоты NPRACH характеризуется однотональной передачей с скачкообразной перестройкой частоты и интервалом между поднесущими, заданным в TS 36.211 Таблица 10.1.6.2-1. Каждая группа символов занимает одну поднесущую, следуя шаблону скачкообразного изменения частоты, описанному в TS 36.211 Раздел 10.1.6.1. SubcarrierOffset
определяет частотное местоположение первой поднесущей, назначенной NPRACH. NumSubcarriers
определяет общее количество поднесущих, выделенных NPRACH. Среди них местоположение поднесущей первой группы символов первой преамбулы определяется NInit
. Для всех последующих преамбул частота первой группы символов каждой преамбулы NPRACH зависит от псевдослучайной последовательности, определенной в TS 36.211 Раздел 7.2 и инициализированной NNCellID
. Этот рисунок показывает схему шаблона скачкообразного изменения частоты для первых двух повторений формата преамбулы 0, учитывая строение NPRACH, используемую в этом примере. Можно увидеть, что первые группы символов двух преамбул занимают различные поднесущие.
В этом разделе мы конфигурируем параметры, необходимые для генерации NPRACH. Список всех допустимых областей значений для параметров в ue
и chs
структуры, см. lteNPRACH
.
% Define the user equipment (UE) parameters ue = struct(); ue.NBULSubcarrierSpacing = '15kHz'; % Uplink subcarrier spacing ('3.75kHz', '15kHz') ue.NNCellID = 0; % Narrowband cell identity ue.Windowing = 0; % Number of time-domain samples over which the function applies windowing and overlapping of OFDM symbols. % Set Windowing to empty ([]) to use its default value. % Define the channel parameters chs = struct(); chs.NPRACHFormat = '0'; % Preamble format ('0','1','2') chs.Periodicity = 80; % NPRACH resource periodicity in ms chs.SubcarrierOffset = 12; % Frequency location of the first subcarrier allocated to NPRACH chs.NumSubcarriers = 24; % Number of subcarriers allocated to NPRACH chs.NRep = 8; % Number of NPRACH repetitions chs.StartTime = 8; % NPRACH starting time in ms chs.NInit = 2; % Initial subcarrier for NPRACH chs.NPRACHPower = 30; % NPRACH power scaling in dB for plot visualization
В этом разделе мы создаем ресурсную сетку NPRACH и сигнал временной области. Пример генерирует форму волны, которая охватывает chs.Periodicity
и дискретизируется с той же частотой дискретизации, используемой для сигналов восходящей линии связи с интервалом поднесущих, заданным ue.NBULSubcarrierSpacing
.
[waveform,info,resourceGrid] = lteNPRACH(ue,chs);
Постройте график ресурсной сетки NPRACH. Можно наблюдать шаблон скачкообразного изменения частоты символов NPRACH. Обратите внимание, что график сетки ресурсов использует уровни степени NPRACH, чтобы назначить цвета ресурсным элементам. Чтобы отключить график ресурсной сетки, установите значение displayGrid
на 'off'
.
displayGrid = 'on'; % Display the NPRACH resource grid ('on','off') hNPRACHResourceGridPlot(chs,resourceGrid,displayGrid);
В этом примере показано, как сгенерировать сигнал во временной области и визуализировать ресурсную сетку для одного строения PRACH NB-IoT. Сгенерированный сигнал NPRACH охватывает chs.Periodicity
и дискретизируется с той же частотой дискретизации, используемой для сигналов восходящей линии связи с интервалом поднесущих, заданным ue.NBULSubcarrierSpacing
. Это позволяет вам сгенерировать сигнал NPRACH и добавить его к существующему сигналу восходящего канала NB-IoT. Для получения дополнительной информации о генерации формы волны восходящего канала NB-IoT, смотрите NB-IoT Генерация сигналов восходящего канала.
3GPP ТС 36.211. «Физические каналы и модуляция», проект Партнерства 3-ьей генерации; Группа технических спецификаций Радиосеть доступ.
Этот пример использует эту локальную функцию:
function hNPRACHResourceGridPlot(chs,resourceGrid,displayGrid) %hNPRACHResourceGridPlot Plots the NPRACH resource grid % hNPRACHResourceGridPlot(CHS,RESOURCEGRID,DISPLAYGRID) plots the NPRACH % resource grid. Set DISPLAYGRID to 'off' to disable the plot of the % resource grid. if strcmpi(displayGrid,'on') figure % Create an image of the NPRACH resource grid im = image(resourceGrid); % Adjust plot colors, axes, and add title and labels cmap = parula(64); colormap(im.Parent,cmap); axis xy; xlabel('OFDM symbols') ylabel('Subcarriers') title(sprintf('NB-IoT PRACH RE Grid (Format = ''%s'')',chs.NPRACHFormat)) end end