lteSCFDMAModulate

Модулируйте использование SC-FDMA

Описание

пример

[waveform,info] = lteSCFDMAModulate(ue,grid) выполняет деление частоты одно поставщика услуг, несколько получают доступ (SC-FDMA) к модуляции для определенных для оборудования пользователя настроек ue (UE-specific). Функция возвращает waveform, форма волны SC-FDMA-modulated и ее соответствующая информация info. Можно использовать этот синтаксис для LTE и многочастотного узкополосного Интернета Вещей (NB-IoT) настройки.

Функция вычисляет обратное быстрое преобразование Фурье (IFFT), сдвиги полуподнесущей и циклические префиксные вставки. Функция также опционально выполняет работу с окнами повышенного косинуса и наложение смежных символов SC-FDMA в массиве ресурса grid. Для блок-схемы, которая иллюстрирует шаги в модуляции SC-FDMA, см. Алгоритмы.

пример

[waveform,info] = lteSCFDMAModulate(ue,grid,windowing) выполняет модуляцию SC-FDMA для выбранного количества оконных и перекрытых выборок, windowing, используемый в работе с окнами временного интервала. Если вы задаете Windowing поле в ue, функция игнорирует его, и выход Windowing поле info столь же задан в windowing. Можно использовать этот синтаксис для LTE и многочастотных настроек NB-IoT.

пример

[waveform,info] = lteSCFDMAModulate(ue,chs,grid) выполняет модуляцию SC-FDMA для настройки передачи канала chs. Можно использовать этот синтаксис для LTE, одно тон NB-IoT и многочастотные настройки NB-IoT. Когда вы используете этот синтаксис, не конфигурируя ue для NB-IoT функция игнорирует chs.

[waveform,info] = lteSCFDMAModulate(ue,chs,grid,windowing) выполняет модуляцию SC-FDMA для заданной настройки передачи канала и количества оконных и перекрытых выборок. Можно использовать этот синтаксис для LTE, одно тон NB-IoT и многочастотные настройки NB-IoT. Когда вы используете этот синтаксис, не конфигурируя ue для NB-IoT функция игнорирует chs.

Примеры

свернуть все

Выполните модуляцию SC-FDMA одного подкадра случайного равномерно распределенного шума.

Инициализируйте настройки UE-specific для конкретного количества блоков ресурса.

ue = struct('NULRB',50);

Получите размер массива ресурса.

d = lteULResourceGridSize(ue);

Получите сетку ресурса путем отображения случайным образом сгенерированного вектора битов к соответствующим символам модуляции, определения модуляции QPSK.

grid = reshape(lteSymbolModulate(randi([0,1],prod(d)*2,1),'QPSK'),d);

Выполните модуляцию SC-FDMA для заданных настроек UE-specific и сетки ресурса.

waveform = lteSCFDMAModulate(ue,grid);

Выполните модуляцию SC-FDMA десяти временных интервалов равномерно распределенного шума, задав многочастотную настройку нисходящего канала NB-IoT и значение работы с окнами.

Инициализируйте настройки UE-specific путем определения интервала поднесущей восходящего канала NB-IoT.

ue.NBULSubcarrierSpacing = '15kHz';

Получите сетку ресурса для конкретного количества временных интервалов.

NSlots = 10; % Number of slots in the generated waveform
dims = [12 7*NSlots];
grid = reshape(lteSymbolModulate(randi([0,1],prod(dims)*2,1),'QPSK'),dims);

Задайте значение работы с окнами 6.

windowing = 6;

Выполните модуляцию SC-FDMA и отобразите первые пять символов модулируемой формы волны.

waveform = lteSCFDMAModulate(ue,grid,windowing);
disp(waveform(1:5));
   0.0152 + 0.0178i
   0.0126 + 0.0159i
   0.0092 + 0.0130i
   0.0052 + 0.0092i
   0.0006 + 0.0047i

Выполните модуляцию SC-FDMA десяти временных интервалов равномерно распределенного шума, задав многочастотную настройку нисходящего канала NB-IoT.

Инициализируйте настройки UE-specific путем определения интервала поднесущей восходящего канала NB-IoT.

ue.NBULSubcarrierSpacing = '15kHz';

Получите сетку ресурса для конкретного количества временных интервалов.

NSlots = 10; % Number of slots in the generated waveform
dims = [12 7*NSlots];
grid = reshape(lteSymbolModulate(randi([0,1],prod(dims)*2,1),'QPSK'),dims);

Выполните модуляцию SC-FDMA и отобразите первые пять символов модулируемой формы волны.

waveform = lteSCFDMAModulate(ue,grid);
disp(waveform(1:5));
   0.0152 + 0.0178i
   0.0126 + 0.0159i
   0.0092 + 0.0130i
   0.0052 + 0.0092i
   0.0006 + 0.0047i

Выполните модуляцию SC-FDMA 20 временных интервалов равномерно распределенного шума, задав одно тон настройка NB-IoT с интервалом поднесущей на 15 кГц.

Инициализируйте настройки UE-specific, задав настройку NB-IoT с интервалом поднесущей 15 кГц.

ue.NBULSubcarrierSpacing = '15kHz';

Установите настройку передачи канала, задав поля, требуемые для выбранной настройки NB-IoT

chs.NULSlots = 16;
chs.NRU = 2;
chs.NRep = 4;
chs.SlotIdx = 120;
chs.NBULSubcarrierSet = 0;
chs.Modulation = 'QPSK';

Получите сетку ресурса для конкретного количества временных интервалов.

NSlots =  20;
grid = zeros([12 7*NSlots]);
grid(chs.NBULSubcarrierSet+1,:) = lteSymbolModulate(randi([0,1],size(grid,2)*2,1),'QPSK').';

Выполните модуляцию SC-FDMA и отобразите первые пять символов в модулируемой форме волны временного интервала.

waveform = lteSCFDMAModulate(ue,chs,grid);
disp(waveform(1:5));
   0.0074 + 0.0026i
   0.0078 + 0.0006i
   0.0077 - 0.0015i
   0.0070 - 0.0035i
   0.0058 - 0.0052i

Входные параметры

свернуть все

Настройки UE-specific в виде структуры. Поля вы задаете в ue и chs определите, выполняет ли функция модуляцию SC-FDMA для настройки NB-IoT или LTE. Чтобы выбрать настройку NB-IoT, задайте NBULSubcarrierSpacing поле . Чтобы выбрать настройку LTE, не используйте NBULSubcarrierSpacing поле . Windowing поле является дополнительным, и можно задать его или для LTE или для настройки NB-IoT. CyclicPrefixUL поле является дополнительным и является применимым только для настройки LTE..

Количество выборок работы с окнами в виде неотрицательного даже целое число. Значение, которое вы задаете, определяет номер выборок временного интервала, по которым можно применить работу с окнами и наложение символов SC-FDMA. Это поле является дополнительным.

Примечание

Если вы не задаете Windowing, lteSCFDMAModulate возвращает Windowing поле info как значение по умолчанию, выбранное в качестве функции NULRB (для настроек восходящего канала LTE) или NBULSubcarrierSpacing (для настроек восходящего канала NB-IoT). Это поведение идет на компромисс между эффективной длительностью циклического префикса (и поэтому допуском распространения задержки канала) и спектральные характеристики переданного сигнала (не рассматривающий дополнительной КИХ-фильтрации). Если Windowing нуль, проблемы, идентифицированные в описании grid касающаяся конкатенация пазов перед модуляцией SC-FDMA не применяется.

Количество выборок, используемых для работы с окнами, зависит от длины циклического префикса (нормальный или расширенный) и количество блоков ресурса. Значение по умолчанию выбрано в соответствии с максимальными значениями, подразумеваемыми в TS 36.104, Таблицы E.5.1-1 и E.5.1-2 [1]. Для большего значения Windowing, эффективная длительность циклического префикса уменьшается, но переданный спектр сигнала имеет меньшую внеполосную эмиссию.

Количество ресурса блокирует NRB

Выборки работы с окнами для нормального циклического префикса

Выборки работы с окнами для расширенного циклического префикса

6

4

4

15

6

6

25

4

4

50

6

6

75

8

8

100

8

8

Типы данных: double

Длина циклического префикса в виде 'Normal' или 'Extended'. Это поле является дополнительным.

Зависимости

Это поле применяется только, когда вы выбираете настройку LTE путем исключения NBULSubcarrierSpacing поле .

Типы данных: char | string

Интервал поднесущей NB-IoT в виде '3.75kHz' или '15kHz'. Чтобы установить интервал поднесущей 3,75 кГц, задайте NBULSubcarrierSpacing как '3.75kHz'. Чтобы установить интервал поднесущей 15 кГц, задайте NBULSubcarrierSpacing как '15kHz'.

Использовать lteSCFDMAModulate для модуляции NB-IoT необходимо задать это поле. Чтобы указать на настройку LTE, не используйте это поле.

Примечание

Для интервала поднесущей 3,75 кГц, lteSCFDMAModulate поддержки только одно тон настройки NB-IoT.

Типы данных: char | string

Сетка ресурса в виде числового массива размера M-by-N-by-P, где:

  • M является количеством поднесущих.

  • N является количеством символов SC-FDMA.

  • P является количеством антенн передачи.

Можно задать grid содержать REs в течение различных временных интервалов через все сконфигурированные порты антенны, как описано в Представлении Сеток Ресурса. В качестве альтернативы можно задать grid содержать несколько таких матриц, конкатенированных через второе измерение, чтобы дать несколько пазов. Плоскости антенны в grid каждый OFDM, модулируемый, чтобы дать столбцы waveform вывод .

Для настройки восходящего канала LTE M должен быть кратным 12, поскольку количеством блоков ресурса является N RB = M/12 максимум до 2 048. Для нисходящего канала NB-IoT или восходящей настройки с NBULSubcarrierSpacing поле ue установите на '15kHz', M = 12. Для настройки восходящего канала NB-IoT с NBULSubcarrierSpacing установите на '3.75kHz', M = 48. Задайте N как кратное количеству символов в пазе L, где L = 14 для нормального циклического префикса и L = 12 для расширенного циклического префикса. Можно задать P как 1, 2, или 4.

Сетка может охватить несколько временных интервалов. Работа с окнами и наложение применяются между всеми смежными символами SC-FDMA, включая последний из одного паза и первый из следующих. Поэтому различный результат получен чем тогда, когда lteSCFDMAModulate называется на отдельных пазах, и те формы волны временного интервала конкатенированы. Получившаяся форма волны в последнем случае имеет разрывы в начале и конце каждого паза. Рекомендуется, чтобы все пазы для модуляции SC-FDMA сначала были конкатенированы перед вызовом lteSCFDMAModulate на получившемся массиве мультипаза. Однако можно выполнить модуляцию OFDM на отдельных пазах и создать получившуюся форму волны временного интервала мультипаза путем ручного наложения.

Типы данных: double
Поддержка комплексного числа: Да

Настройка передачи канала в виде структуры. Для настройки NB-IoT можно установить дополнительные восходящие специфичные параметры путем определения полей NB-IoT-specific в chs. За исключением NBULSubcarrierSet поле, поля в chs применимы также когда NBULSubcarrierSpacing поле ue '3.75kHz' или когда NBULSubcarrierSpacing '15kHz' и length(chs.NBULSubcarrierSet) 1.

Индексы поднесущей восходящего канала NB-IoT в виде вектора из неотрицательных целых чисел в интервале [0, 11] или неотрицательного целого числа в интервале [0, 47]. Индексы находятся в основанной на нуле форме. Использовать lteSCFDMAModulate для одно тона модуляция NB-IoT необходимо задать NBULSubcarrierSet как скаляр. Если вы не задаете NBULSubcarrierSet, lteSCFDMAModulate выполняет многочастотную модуляцию NB-IoT по умолчанию. Если вы задаете NBULSubcarrierSpacing поле ue как '15kHz', это поле требуется.

Типы данных: double

Тип модуляции в виде 'BPSK' или 'QPSK'. Для бинарного манипулирования сдвига фазы (BPSK) задайте Modulation как 'BPSK'. Для квадратурного манипулирования сдвига фазы (QPSK) задайте Modulation как 'QPSK'.

Типы данных: char | string

Количество пазов на модуль ресурса (RU) в виде положительного целого числа. Использовать lteSCFDMAModulate для одно тона модуляция NB-IoT необходимо задать это поле.

Типы данных: double

Количество РУССКИХ в виде положительного целого числа. Использовать lteSCFDMAModulate для одно тона модуляция NB-IoT необходимо задать это поле.

Типы данных: double

Количество повторений для кодовой комбинации в виде неотрицательного целого числа. Использовать lteSCFDMAModulate для одно тона модуляция NB-IoT необходимо задать это поле.

Типы данных: double

Относительный индекс паза в узкополосном физическом восходящем канале совместно использованный канал (NPUSCH) связывается в виде неотрицательного целого числа. Это поле определяет основанный на нуле относительный индекс паза в пакете временных интервалов для передачи транспортного блока или бита управляющей информации.

Типы данных: double

Типы данных: struct

Количество оконных и перекрытых выборок в виде неотрицательного даже целое число. Этот аргумент управляет количеством оконных и перекрытых выборок, используемых в работе с окнами временного интервала. Если вы задаете windowing, это используется для модуляции SC-FMDA (вместо Windowing поле в ue) и возвратился для значения Windowing поле в info.

Типы данных: double

Выходные аргументы

свернуть все

Форма волны SC-FDMA-modulated, возвращенная как матрица с комплексным знаком. Размерности waveform T-by-P, где T является количеством выборок временного интервала, и P является количеством антенн передачи. Размерность, которую T дан T = 15K/NFFT, где БПФ N является размером ОБПФ и K, является номером временных интервалов в grid входной параметр. Когда M ≥ 72, БПФ N является функцией количества блоков ресурса (N RB), и N RB = M/12.

N RB

БПФ N

6

128

15

256

25

512

50

1024

75

2048

100

2048

Когда M = 12 или NBULSubcarrierSpacing полем является '15kHz' (Нисходящий канал NB-IoT или восходящий канал NB-IoT с интервалом поднесущей на 15 кГц), БПФ N = 128. Когда NBULSubcarrierSpacing полем является '3.75kHz' (Восходящий канал NB-IoT с интервалом поднесущей на 3,75 кГц), NFFT = 512. Когда M ≥ 72, NFFT является самой маленькой степенью 2 больших, чем или равный 12NRB/0.85. Это значение является самым маленьким БПФ, который охватывает все поднесущие и приводит к заполнению пропускной способности (12NRB/NFFT) не больше, чем 85%.

Типы данных: double
Поддержка комплексного числа: Да

Информация о SC-FDMA модулировала форму волны, возвращенную как структура, содержащая эти поля.

Количество заполненных выборок разрыва в конце каждого временного интервала, возвращенного как положительное целое число. Когда NBULSubcarrierSpacing полем является '3.75kHz', NBULGapSamples 144. В противном случае, NBULGapSamples 0.

Зависимости

Этот аргумент возвращен только когда NBULSubcarrierSpacing поле ue задан.

Типы данных: double

Длина циклического префикса, в количестве выборок временного интервала, возвратилась как вектор из положительных целых чисел. Каждая запись представляет длину циклического префикса соответствующего символа ортогонального мультиплексирования деления частоты (OFDM) во временной интервал. Функция возвращает CyclicPrefixLengths в соответствии с заданными полями ввода, показанными в этих таблицах.

Настройка LTE

NfftCyclicPrefixLengths когда CyclicPrefixUL установлен в 'Normal'CyclicPrefixLengths когда CyclicPrefixUL установлен в 'Extended')
128[10 9 9 9 9 9 9 10 9 9 9 9 9 9][32 32 32 32 32 32 32 32 32 32 32 32]
256[20 18 18 18 18 18 18 20 18 18 18 18 18 18][64 64 64 64 64 64 64 64 64 64 64 64]
512[40 36 36 36 36 36 36 40 36 36 36 36 36 36][128 128 128 128 128 128 128 128 128 128 128 128]
1024[80 72 72 72 72 72 72 80 72 72 72 72 72 72][256 256 256 256 256 256 256 256 256 256 256 256]
2048[160 144 144 144 144 144 144 160 144 144 144 144 144 144][512 512 512 512 512 512 512 512 512 512 512 512]

Настройка NB-IoT

NfftNBULSubcarrierSpacingCyclicPrefixLengths
128'15kHz'[10 9 9 9 9 9 9 10 9 9 9 9 9 9]
512'3.75kHz'[16 16 16 16 16 16 16 16 16 16 16 16 16 16]

Примечание

Как показано в таблицах, для значений Nfft меньше чем 2 048, записи CyclicPrefixLengths даны путем умножения длин циклического префикса когда Nfft 2048 Nfft/2048.

Типы данных: int32

Количество выборок временного интервала, по которым применяются работа с окнами и наложение символа SC-FDMA, возвратилось как положительное целое число.

Типы данных: double

Количество точек БПФ, БПФ N, возвращенного как положительное целое число.

Типы данных: double

Частота дискретизации модулятора SC-FDMA, возвращенного как положительная скалярная величина. Когда NBULSubcarrierSpacing полем является '15kHz' или незаданный, частота дискретизации формы волны 15000×NFFT, где БПФ N является количеством точек быстрого преобразования Фурье (FFT). Когда вы указываете на настройку NB-IoT путем определения ue.NBULSubcarrierSpacing, частота дискретизации составляет 1,92 МГц.

Типы данных: double

Типы данных: struct

Алгоритмы

свернуть все

Обработка модуляции SC-FDMA

Эта схема показывает обработку, выполняемую модуляцией SC-FDMA.

Ссылки

[1] 3GPP TS 36.104. “Передача радио Базовой станции (BS) и прием”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group; Развитый Универсальный Наземный Радио-доступ (к E-UTRA). URL: https://www.3gpp.org.

Введенный в R2014a