В этом примере показано, как генерировать узкополосные сигналы IoT (NB-IoT) LTE-Advanced Pro Release 13 для тестовых и измерительных приложений с использованием Toolbox™ LTE.
3GPP представил новый радиоинтерфейс, Narrowband IoT (NB-IoT), оптимизированный для низкоскоростной связи машинного типа в LTE-Advanced Pro Release 13. NB-IoT обеспечивает повышение стоимости и энергоэффективности, поскольку позволяет избежать необходимости в сложных служебных сигналах, необходимых для систем на базе LTE.
Панель LTE Toolbox может использоваться для генерации стандартных, совместимых с NB-IoT комплексных сигналов основной полосы частот нисходящей линии связи, представляющих узкополосную несущую 180 кГц, пригодную для испытаний и измерений. Форма сигнала состоит из отдельных каналов и сигналов физического уровня, и класс значений MATLAB NBioTDownlinkWaveformGenerator может использоваться для формирования сетки элемента полного ресурса (RE) и формы сигнала во временной области. LTE Toolbox поддерживает все режимы работы NB-IoT - автономный, защитный и внутриполосный.
Автономный: несущая NB-IoT, развернутая вне спектра LTE, например, спектр, используемый для GSM или спутниковой связи
Защитная полоса: несущая NB-IoT развернута в защитной полосе между двумя несущими LTE
Внутриполосная: несущая NB-IoT развернута в блоках ресурсов несущей LTE
Способ в группе может быть далее сгруппирован в зависимости от используемой физической идентичности клетки (PCI), Inband-SamePCI и Inband-DifferentPCI. Если Inband-SamePCI, идентификатор ячейки физического уровня и PCI одинаковы, и UE может делать предположения о портах и канале из сигналов LTE. Режим работы указывается в главном информационном блоке NB-IoT (MIB-NB), который предоставляет существенную информацию для пользовательского оборудования (UE). Сеть может использовать информацию управления радиоресурсами для назначения неузловой несущей UE, работающему в опорной несущей, см. TS 36.331 6.7.3.2 [5] и раздел 7.3.2.4 в [9].
В этом примере создается нисходящий канал NB-IoT, где соответствующие каналы и сигналы физического уровня:
Узкополосный сигнал первичной синхронизации (NPSS)
Узкополосный вторичный сигнал синхронизации (NSSS)
Узкополосный опорный сигнал (NRS)
Узкополосный физический широковещательный канал (NPBCH)
Узкополосный физический общий канал нисходящей линии связи (NPDSCH)
Узкополосный физический канал управления нисходящей линии связи (NPDCCH)
NB-IoT поддерживает две конфигурации несущих:
Якорь: Несущая, используемая UE для выбора начальной ячейки NB-IoT, получения блоков основной/системной информации и произвольного доступа в режиме ожидания. NPSS, NSSS, NPBCH и системная информация передаются по несущей
Non-anchor - несущая, используемая только для фактического обмена данными в подключенном режиме. NPSS, NSSS, NPBCH и системная информация не передаются на несущей
В этом примере мы демонстрируем сетку RE нисходящей линии связи NB-IoT и генерацию формы сигнала. В следующих разделах описываются физические сигналы и каналы, которые образуют сетку, наряду с ключевыми концепциями, включая повторение подкадров, логическое и транспортное отображение каналов и соответствующие сетки для различных конфигураций. Кроме того, показаны параметры, участвующие в формировании формы сигнала, для создания формы сигнала в соответствии с требованиями пользователя.
Пример выводит комплексный сигнал основной полосы частот вместе с заполненной сеткой, содержащей все вышеупомянутые физические каналы и сигналы, а также информацию о типе данных, содержащихся в каждом подкадре. Форма сигнала может быть использована для ряда применений от радиочастотного тестирования до моделирования реализаций приемника.
В этом разделе поясняется, как упомянутые выше каналы и сигналы физического уровня отображаются в подкадры нисходящей линии связи.
Битовая карта нисходящей линии связи: логический вектор для конфигурирования подкадров нисходящей линии связи NB-IoT. Подкадры NB-IoT нисходящей линии связи определяются как подкадры, используемые для NPDCCH и NPDSCH, не несущих SIB1-NB, они не включают подкадры, несущие NPSS, NSSS, NPBCH и системный информационный блок NB-IoT типа 1 (SIS Подкадры NB-IoT нисходящей линии связи могут быть сконфигурированы с использованием параметра Config.DownlinkBitmap в классе NBioTDownlinkWaveformGenerator.
NPSS&NSSS: Как показано на рисунке ниже, NPSS передается в подкадре 5 в каждом кадре, а NSSS передается в подкадре 9 в кадрах с номером кадра nf выполнение nf mod 2 = 0. NPSS и NSSS позволяют UE синхронизироваться с ячейкой NB-IoT.

NPBCH: NPBCH используется для переноса 34-разрядной MIB-NB (TS 36.212 6.4.1 [2]). MIB-NB кодируется для формирования 1600-битового кодового слова (TS 36.211 10.2.4.1 [1]). Кодовое слово равномерно сегментировано на 8 подблоков, каждый из которых имеет 200 битов, которые передаются в подкадре 0 и повторяются в 7 следующих последовательных кадрах (TS 36.211 10.2.4.4 [1]). Отображение битов кодового слова проиллюстрировано на рисунке ниже.

NPDSCH: Ключевой особенностью NPDSCH является повторение подкадров. NB-IoT определяет две схемы повторения для случая, когда NPDSCH переносит широковещательный канал управления (BCCH) или not. BCCH является логическим каналом для передачи SIB1-NB, системных информационных сообщений и т.д. Отсутствие BCCH подразумевает, что NPDSCH может нести канал управления пейджингом (PCCH), общий канал управления (CCCH), выделенный канал управления (DCCH), выделенный канал трафика (DTCH) и т.д. (TS 36.300 6.1.3.2 и 5.3.1a [6]). Две схемы повторения показаны на рисунке ниже. Параметры повторения NPDSCH включают в себя количество подкадров в кодовом слове NSF и число повторений NRep. Пример на рисунке показывает шаблон повторения с NRep = 4 для случая, когда NPDSCH несет BCCH и NRep = 8 для случая, когда NPDSCH не переносит BCCH и NSF = 3 для обоих случаев. В случае передачи ВКУ все подкадры кодового слова передаются перед повторением кодового слова. Для случая, когда BCCH не несет, подкадр в кодовом слове повторяется min(NRep,4) перед выполнением того же повторения для других подкадров. После того, как кодовое слово повторяется min(NRep,4) раз, одна и та же процедура выполняется до полного повторения, т.е. повторяется NRep времена. Подробное описание схемы повторения приведено в TS 36.211 10.2.3 [1].

Повторные подкадры, показанные на приведенном выше рисунке, отображаются на доступные подкадры, назначенные для передачи NPDSCH. В качестве типичного примера на следующем рисунке показано, как выполнять отображение для подкадров NPDSCH, несущих SIB1-NB, который содержит наиболее важную системную информацию для UE (TS 36.331 6.7.2 [5]).
A SIB1-NB переносится в 8 подкадрах (NSF = 8) и отображается в подкадр 4 в каждом другом кадре в 16 непрерывных кадрах, которые повторяются NRep времена (NRep = 4, 8 или 16, см. TS 36.213 16.4.1.3 Таблица 16.4.1.3-3 [3]). Повторы равномерно разнесены в течение 256 кадров (TS 36.331 5.2.1.2a [5]). Начальный номер кадра для первой передачи NPDSCH в периоде зависит от идентификации узкополосной физической соты. NNCellID а также количество повторений NRep (TS 36.213 16.4.1.3 Таблица 16.4.1.3-4 [3]).

В дополнение к распределению субкадров, описанному выше, сгенерированные сетки ниже дополнительно объясняют распределение RE в субкадре. Сетка предназначена для двух кадров опорной несущей, содержащей подкадры NPSS, NSSS, NRS, NPBCH, SIB1-NB и NB-IoT нисходящей линии связи, несущие NPDSCH и NPDCCH. Сетки сравниваются в Standalone и Inband-SamePCI режимы работы. Сетка может быть создана с использованием метода отображения сетки в классе NBioTDownlinkWaveformGenerator, т.е. путем создания объекта. ngen типа NBioTDownlinkWaveformGenerator и вызова ngen.displayResourceGrid.
NRS: Позиции RE могут быть сконфигурированы по количеству портов NRS и идентификатору узкополосной физической соты, т.е. по полям параметров NBRefP и NNCellID в структуре ngen.Configсоответственно.
NPSS&NSSS: Первые 11 поднесущих используются для NPSS, все 12 поднесущих в блоке физических ресурсов используются для NSSS. Первые 3 символа OFDM в подкадре не используются для NPSS/NSSS. NRS не передается ни в одном подкадре, содержащем NPSS/NSSS. RE NPSS/NSSS прокалываются опорным сигналом (CRS), специфичным для соты LTE, только в внутриполосных режимах. Количество портов CRS, влияющих на прокалывание, можно сконфигурировать по полю параметров CellRefP в структуре ngen.Config (TS 36.211 10.2.6 и 10.2.7 [1]).
NPBCH: RE проколоты NRS и CRS с использованием максимального количества антенных портов NRS и CRS (2 и 4 соответственно) для обоих режимов работы (TS 36.211 10.2.4 [1]). Это происходит потому, что UE не знает о количестве используемых антенных портов и режиме работы.
NPDSCH: Для режимов работы Standalone и GuardbandRE проколоты только NRS; для внутриполосных режимов работы RE прокалывается как NRS, так и CRS. Когда режим работы является внутриполосным, первые 3 символа OFDM в подкадре не используются для передачи SIB1-NB NPDSCH, первый ControlRegionSize Символы OFDM в подкадре не используются, когда NPDSCH переносится подкадром NB-IoT нисходящей линии связи. ControlRegionSize является полем параметра в структуре ngen.Config конфигурирование размера области управления LTE для распределения RE NPDSCH (TS 36.211 10.2.3.4 [1], TS 36.213 16.4.1.4 [3] и TS 36.331 6.7.2 [5]). Размер области управления LTE конфигурирует начальное положение символа OFDM в подкадре NB-IoT нисходящей линии связи, несущем NPDSCH и NPDCCH в режимах внутриполосной работы.
NPDCCH: NRS и CRS прокалывание такие же, как в NPDSCH, описанных выше. Когда режим работы находится в полосе частот, первый ControlRegionSize Символы OFDM в подкадре не используются для NPDCCH. То же, что и для NPDSCH, ControlRegionSize используется для конфигурирования назначений RE NPDCCH (TS 36.211 10.2.3.4 [1], TS 36.213 16.4.1.4 [3] и TS 36.331 6.7.2 [5]).
ngen = NBIoTDownlinkWaveformGenerator; figure; % Display the resource grid with default 'Standalone' operation mode ngen.displayResourceGrid; figure; % Change the operation mode to 'Inband-SamePCI' ngen.Config.OperationMode = 'Inband-SamePCI'; ngen.displayResourceGrid;
0 0


Объект ngen содержит:
Таблицы распределения ресурсов и размера транспортного блока (TBS) для NPDSCH (см. TS 36.213 16.4.1.3 и 16.4.1.5 [3])
Структура ngen.Config с конфигурацией NB-IoT eNeyB, где поля параметров NPBCH, SIB1NPDSCH, NPDCCH и NPDSCH сконфигурировать NPBCH, NPDSCH, несущий SIB1-NB, NPDCCH и NPDSCH, не несущий SIB1-NB (т.е. NPDSCH, несущий подкадры NB-IoT нисходящей линии связи) соответственно.
ngen % Show all available properties nsfTable = ngen.NSFTable % Display number of subframe table in TS 36.213 16.4.1.3 enbConfig = ngen.Config % Display NB-IoT eNodeB configuration npbchConfig = ngen.Config.NPBCH % Display NPBCH configuration sib1npdschConfig = ngen.Config.SIB1NPDSCH % Display the configuration of NPDSCH when carrying SIB1-NB
ngen =
NBIoTDownlinkWaveformGenerator with properties:
Config: [1x1 struct]
NSFTable: [8x2 table]
NRepTable: [16x2 table]
TBSTable: [112x3 table]
NRepTableSIB1: [12x2 table]
TBSTableSIB1: [12x2 table]
nsfTable =
8x2 table
ISF NSF
___ ___
0 1
1 2
2 3
3 4
4 5
5 6
6 8
7 10
enbConfig =
struct with fields:
TotSubframes: 20
NNCellID: 0
NBRefP: 1
CellRefP: 4
ControlRegionSize: 3
NFrame: 0
OperationMode: 'Inband-SamePCI'
DownlinkBitmap: [1 1 1 1 1 1 1 1 1 1]
CarrierType: 'Anchor'
DLGapThreshold: 32
DLGapPeriodicity: 64
DLGapDurationCoeff: 0.1250
NPSSPower: 0
NSSSPower: 0
NPBCH: [1x1 struct]
SIB1NPDSCH: [1x1 struct]
NPDCCH: [1x1 struct]
NPDSCH: [1x1 struct]
npbchConfig =
struct with fields:
Power: 0
EnableCoding: 'On'
DataBlkSize: 34
DataSource: 'PN9'
sib1npdschConfig =
struct with fields:
Enable: 'On'
Power: 0
NRep: 4
EnableCoding: 'On'
DataBlkSize: 208
DataSource: 'PN9'
Сгенерированная ниже сетка RE объясняет, как конфигурировать подкадры, используемые для подкадров NB-IoT нисходящей линии связи, используя битовую карту нисходящей линии связи, и как конфигурировать параметры NPDCCH/NPDSCH, переносимые подкадрами NB-IoT нисходящей линии связи. Подкадры NB-IoT нисходящей линии связи могут быть сконфигурированы по полю параметров DownlinkBitmap в структуре ngen.Config. В примере несущая без привязки используется для отключения NPSS, NSSS, NPBCH и SIB1-NB в сетке.
Генератор сигналов поддерживает несколько каналов NPDCCH и NPDSCH. Каждый NPDSCH и NPDCCH содержит, соответственно, один транспортный блок и сообщение управляющей информации нисходящей линии связи (DCI). Параметры NPDCCH/NPDSCH определяются структурой, и несколько NPDCCH/NPDSCH выражаются в виде структурного вектора.
NPDCCH конфигурируется по следующим параметрам в структуре ngen.Config.NPDCCH:
Enable: Включение или отключение NPDCCH (On, Off).
PowerОтносительная мощность для символов NPDCCH в частотной области с предположением, что мощность NRS равна 1.
NCCE: Выбранные узкополосные элементы канала управления (NCCE) для переноса NDPCCH. Значение может быть скаляром или вектором из двух записей. Скаляр или вектор указывает формат NPDCCH 0 или 1 соответственно. Значение 0 (или 1) указывает NCCE 0 (или NCCE 1). NCCE 0 занимает поднесущие от 0 до 5, и NCCE 1 занимает поднесущие от 6 до 11 соответственно. (TS 36.211 10.2.5.1 [1]).
NRepЧисло повторений для кандидата в NPDCCH (TS 36.213 16.6 [3]). Допустимые значения:,
где n = 1... 10.
RmaxМаксимальное количество повторений для NPDCCH (TS 36.213 16.6 [3]). Это влияет на разрыв передачи NPDCCH. Допустимые значения:,
где n = 1... 10.
RNTIВременный идентификатор радиосети, используемый для скремблирования.
StartSubframeиндекс начального подкадра NPDCCH в сформированной сетке RE на основе 0.
DataBlkSize: Длина информационных битов DCI.
DataSource: Информационные биты DCI. Параметр может быть определен непосредственно как битовый вектор или с использованием случайного типа данных, например, «PN9-ITU», «PN9», «PN11», «PN15», «PN23». В последнем случае для выбранного типа генерируется случайный битовый вектор.
NPDSCH конфигурируется по следующим параметрам в структуре ngen.Config.NPDSCH:
Enable: Включение или отключение NPDSCH (On, Off).
PowerОтносительная мощность для символов NPDSCH в частотной области с предположением, что мощность NRS равна 1.
NPDSCHDataType: Тип данных, которые несет NPDSCH, допустимые значения: «BCCHNotSIB1NB» или «NotBCCH». Это значение влияет на схему повторения, как описано выше.
NRepЧисло повторений (TS 36.211 16.4.1.3 [1]).
NSFКоличество подкадров в кодовом слове NPDSCH (TS 36.211 16.4.1.3 [1]).
Rmax: Максимальное количество повторений для NPDCCH, связанного с NPDSCH, его значение должно быть равно значению того же поля в соответствующем NPDCCH.
StartSubframeиндекс начального подкадра NPDSCH в сформированной сетке RE на основе 0.
DataBlkSizeРазмер транспортного блока.
DataSourceИнформационные биты транспортного блока. Использование совпадает с использованием того же поля в структуре. ngen.Config.NPDCCH.
ngen = NBIoTDownlinkWaveformGenerator; ngen.Config.CarrierType = 'NonAnchor'; % Anchor or NonAnchor ngen.Config.DownlinkBitmap = [1 0 1 1 1 1 1 1 0 1]; ngen.Config.TotSubframes = 30; % Configure the parameters of the first NPDCCH npdcch1.Enable = 'On'; npdcch1.Power = 0; npdcch1.NCCE = 1; % NPDCCH format 0 with NCCE 1 npdcch1.NRep = 2; npdcch1.Rmax = 16; npdcch1.RNTI = 0; npdcch1.StartSubframe = 0; npdcch1.DataBlkSize = 23; npdcch1.DataSource = randi([0 1],npdcch1.DataBlkSize,1); % Users can define their own information bits % Configure the parameters of the second NPDCCH npdcch2.Enable = 'On'; npdcch2.Power = 0; npdcch2.NCCE = 0; % NPDCCH format 0 with NCCE 0 npdcch2.NRep = 4; npdcch2.Rmax = 16; npdcch2.RNTI = 1; npdcch2.StartSubframe = 3; npdcch2.DataBlkSize = 23; npdcch2.DataSource = 'PN9'; % Configure the parameters of the first NPDSCH npdsch1.Enable = 'On'; npdsch1.Power = 0; npdsch1.NPDSCHDataType = 'BCCHNotSIB1NB'; npdsch1.NSF = 3; npdsch1.NRep = 2; npdsch1.Rmax = npdcch1.Rmax; npdsch1.RNTI = 0; npdsch1.StartSubframe = 10; npdsch1.DataBlkSize = 616; npdsch1.DataSource = 'PN15'; % Configure the parameters of the second NPDSCH npdsch2.Enable = 'On'; npdsch2.Power = 0; npdsch2.NPDSCHDataType = 'NotBCCH'; npdsch2.NSF = 2; npdsch2.NRep = 4; npdsch2.Rmax = npdcch2.Rmax; npdsch2.RNTI = 1; npdsch2.StartSubframe = 20; npdsch2.DataBlkSize = 616; npdsch2.DataSource = 'PN23'; % Prepare NPDSCH and NPDCCH structure vectors ngen.Config.NPDCCH = [npdcch1 npdcch2]; ngen.Config.NPDSCH = [npdsch1 npdsch2]; figure; ngen.displayResourceGrid;
0

Сгенерированная ниже сетка RE объясняет, как сконфигурировать разрыв передачи для NPDSCH/NPDCCH в соответствии с TS 36.211 10.2.3.4 и 10.2.5.5 [1]. Зазор определяется полем параметра Rmax упомянутые выше, а также следующие параметры в структуре ngen.Config:
DLGapThreshold: Пороговое значение для запуска промежутка передачи, т.е. нет промежутков в передаче NPDSCH, если Rmax < DLGapThreshold. Допустимые значения: 32, 64, 128, 256 (TS 36.331 6.7.1 [5]).
DLGapPeriodicityПериодичность разрыва в количестве подкадров. Он также определяет начальный подкадр промежутка, т.е. номер начального подкадра. sf удовлетворяющее условию (sf mod DLGapPeriodicity) = 0. Допустимые значения: 64, 128, 256, 512 (TS 36.331 6.7.1 [5]).
DLGapDurationCoeffИспользуется для расчета длительности разрыва в количестве подкадров вместе с DLGapPeriodicity. Длительность разрыва определяется DLGapPeriodicity
DLGapDurationCoeff. Допустимые значения: 1/8, 1/4, 3/8, 1/2 (TS 36.331 6.7.1 [5]).
В следующем примере используются параметры по умолчанию DLGapThreshold = 32, DLGapPeriodicity = 64 и DLGapDurationCoeff = 1/8, чтобы объяснить разрыв передачи NPDSCH. На рисунке ниже показано, что 96 (NRep
NSFПодкадры NPDSCH прерываются двумя промежутками длительностью 8 подкадров, и два промежутка начинаются в подкадре 0 и подкадре 64 соответственно.
ngen = NBIoTDownlinkWaveformGenerator; ngen.Config.CarrierType = 'NonAnchor'; % Anchor or NonAnchor ngen.Config.TotSubframes = 150; ngen.Config.NPDCCH.Enable = 'Off'; % Disable the NPDCCH ngen.Config.NPDSCH.StartSubframe = 0; ngen.Config.NPDSCH.Rmax = ngen.Config.DLGapThreshold; % Minimum value to trigger the transmission gap based on given DLGapThreshold ngen.Config.NPDSCH.NRep = 32; ngen.Config.NPDSCH.NSF = 3; figure; ngen.displayResourceGrid;
0

Формирование формы сигнала во временной области опорного канала измерения (RMC) для требований к производительности NPDSCH в соответствии с TS 36.101 A.3.12 [7] или NB Test Model (N-TM), определенной в TS 36.141, разделы 6.1.3-6.1.6 [8]. Форма сигнала может быть сгенерирована с использованием метода генерации формы сигнала в классе NBIoTDownlinkWaveformGenerator, чтобы вызвать метод, объект ngen создается, и метод может быть вызван с помощью ngen.generateWaveform.
rc = 'R.NB.5-1'; % Allowed values are 'R.NB.5','R.NB.5-1','R.NB.6','R.NB.6-1','R.NB.7','N-TM' ngen = NBIoTDownlinkWaveformGenerator(rc); [waveform,grid,ofdmInfo] = ngen.generateWaveform; ofdmInfo % Display OFDM configuration spectrumAnalyzer = dsp.SpectrumAnalyzer(ngen.Config.NBRefP); spectrumAnalyzer.ShowLegend = true; spectrumAnalyzer.SampleRate = ofdmInfo.SamplingRate; if ngen.Config.NBRefP == 1 spectrumAnalyzer.ChannelNames = {['Signal for RMC ' rc ' (Port 2000)']}; spectrumAnalyzer(waveform); else % NBRefP == 2 spectrumAnalyzer.ChannelNames = {['Signal for RMC ' rc ' (Port 2000)'], ... ['Signal for RMC ' rc ' (Port 2001)']}; spectrumAnalyzer(waveform(:,1),waveform(:,2)); end
ofdmInfo =
struct with fields:
SamplingRate: 1920000
Nfft: 128
Windowing: 6
CyclicPrefixLengths: [10 9 9 9 9 9 9 10 9 9 9 9 9 9]
SubframeChannelTypes: [1x20 string]

На следующих фигурах сравниваются спектры сигналов для генерируемого сигнала во временной области. Как показано в анализаторе спектра, сигнал желтого цвета имеет более сильную мощность, чем сигнал синего цвета. Это происходит потому, что процент использования RE желтого выше.
% Set up a standalone, non-anchor carrier, disable the NPDCCH and make the % REs grid fully occupied by NPDSCH/NRS. ngen = NBIoTDownlinkWaveformGenerator; ngen.Config.CarrierType = 'NonAnchor'; ngen.Config.NPDCCH.Enable = 'Off'; % Disable the NPDCCH ngen.Config.NPDSCH.StartSubframe = 0; ngen.Config.NPDSCH.NRep = 8; ngen.Config.NPDSCH.NSF = 5; % Display the grid and generate the time-domain signal figure; ngen.displayResourceGrid; [waveform1,~,ofdmInfo1] = ngen.generateWaveform; % Set up a standalone, anchor carrier, disable the NPDSCH and NPDCCH so % that it contains NPSS/NSSS/NPBCH/SIB1-NB/NRS only. ngen = NBIoTDownlinkWaveformGenerator; ngen.Config.NPDCCH.Enable = 'Off'; % Disable the NPDCCH ngen.Config.NPDSCH.Enable = 'Off'; % Disable the NPDSCH % Display the grid and generate the time-domain signal figure; ngen.displayResourceGrid; waveform2 = ngen.generateWaveform; % Plot the signal spectrums of the generated two waveforms. spectrumAnalyzer = dsp.SpectrumAnalyzer(2); spectrumAnalyzer.ShowLegend = true; spectrumAnalyzer.ChannelNames = {'Non-Anchor carrier fully occupied by NPDSCH/NRS (Port 2000)', ... 'Anchor carrier with NPSS/NSSS/NPBCH/SIB1-NB/NRS only (Port 2000)'}; spectrumAnalyzer.SampleRate = ofdmInfo1.SamplingRate; spectrumAnalyzer(waveform1,waveform2);
0 0



В этом примере используется класс помощника:
3GPP ТС 36.211 «Физические каналы и модуляция»
3GPP TS 36.212 «Мультиплексирование и канальное кодирование»
3GPP ТС 36.213 «Процедуры физического уровня»
3GPP TS 36.321 "Управление доступом к среде (MAC); Спецификация протокола "
3GPP TS 36.331 "Управление радиоресурсами (RRC); Спецификация протокола "
3GPP ТС 36.300 "Общее описание; Этап 2 "
3GPP ТС 36.101 «Радиопередача и прием пользовательского оборудования (UE)»
3GPP TS 36.141 «Тестирование соответствия базовой станции (BS)»
О. Либерг, М. Сундберг, Я. -П. Ван, Дж. Бергман и Дж. Сакс, Сотовый интернет вещей: технологии, стандарты и производительность, Elsevier, 2018.