Получение информации OFDM
задает опции с помощью одного или нескольких аргументов пары "имя-значение" в дополнение к входным параметрам в любом из предыдущих синтаксисов.info
= nrOFDMInfo(___,Name,Value
)
Сгенерируйте форму волны путем выполнения OFDM модуляции ресурсного массива, который содержит зондирующие опорные сигналы (SRS). Массив ресурсов охватывает целую систему координат.
Установите параметры конфигурации несущей, задав интервал между поднесущими 30 кГц и 24 ресурсных блока (RB) в массиве ресурсов несущей.
carrier = nrCarrierConfig('SubcarrierSpacing',30,'NSizeGrid',24);
Сконфигурируйте параметры SRS, установив периодичность паза равной 2
и смещение в нуль.
srs = nrSRSConfig('SRSPeriod',[2 0]);
Получите информацию OFDM для указанного строения поставщика услуг.
info = nrOFDMInfo(carrier);
Создайте массив ресурсов системы координат путем создания и конкатенации отдельных массивов ресурсов пазов.
grid = []; for nslot = 0:(info.SlotsPerFrame - 1) carrier.NSlot = nslot; slotGrid = nrResourceGrid(carrier); ind = nrSRSIndices(carrier,srs); sym = nrSRS(carrier,srs); slotGrid(ind) = sym; grid = [grid slotGrid]; end
Выполните модуляцию OFDM для ресурсного массива для указанного строения несущей.
[waveform,info] = nrOFDMModulate(carrier,grid);
Установите параметры конфигурации несущей, задав интервал между поднесущими 60 кГц и расширенный циклический префикс.
scs = 60;
cpl = 'Extended';
Установите количество ресурсных блоков равным 150
.
Сгенерируйте и отобразите информацию OFDM.
nrb = 150;
info = nrOFDMInfo(nrb,scs,'CyclicPrefix',cpl)
info = struct with fields:
Nfft: 4096
SampleRate: 245760000
CyclicPrefixLengths: [1x48 double]
SymbolLengths: [1x48 double]
Windowing: 116
SymbolPhases: [1x48 double]
SymbolsPerSlot: 12
SlotsPerSubframe: 4
SlotsPerFrame: 40
Установите параметры конфигурации поставщика услуг, задав 106 RB в массиве ресурсов поставщика услуг.
carrier = nrCarrierConfig('NSizeGrid',106);
Сгенерируйте и отобразите информацию OFDM для заданной частоты дискретизации.
sr = 1e8;
info = nrOFDMInfo(carrier,'SampleRate',sr)
info = struct with fields:
Nfft: 3200
SampleRate: 100000000
CyclicPrefixLengths: [1x14 double]
SymbolLengths: [1x14 double]
Windowing: 112
SymbolPhases: [0 0 0 0 0 0 0 0 0 0 0 0 0 0]
SymbolsPerSlot: 14
SlotsPerSubframe: 1
SlotsPerFrame: 10
carrier
- Параметры конфигурации поставщика услугnrCarrierConfig
объектПараметры конфигурации несущей для определенной нумерологии OFDM, заданные как nrCarrierConfig
объект. Только эти свойства объекта релевантны для этой функции.
NSizeGrid
- Количество RB в ресурсной сетке поставщика услуг52
(по умолчанию) | целое число от 1 до 275Количество RB в ресурсной сетке поставщика услуг, заданное в виде целого числа от 1 до 275. Значение по умолчанию 52
соответствует максимальному количеству RB несущей 10 МГц с 15 кГц SCS.
Типы данных: double
SubcarrierSpacing
- Интервал между поднесущими в кГц15
(по умолчанию) | 30
| 60
| 120
| 240
Интервалы между поднесущими в кГц, для всех каналов и опорных сигналов несущей, заданные как 15
, 30
, 60
, 120
, или 240
.
Типы данных: double
CyclicPrefix
- Длина циклического префикса'normal'
(по умолчанию) | 'extended'
Длина циклического префикса, заданная как один из следующих опций.
'normal'
- Используйте это значение, чтобы задать нормальный циклический префикс. Эта опция соответствует 14 символам OFDM в пазе.
'extended'
- Используйте это значение для задания расширенного циклического префикса. Эта опция соответствует 12 символам OFDM в пазе. Для нумераций, указанных в TS 38.211 Раздел 4.2, удлиненная длина циклического префикса применяется только для интервалов между поднесущими 60 кГц.
Типы данных: char
| string
nrb
- Количество ресурсных блоковКоличество ресурсных блоков в виде целого числа от 1 до 275.
Типы данных: double
scs
- Интервал между поднесущими в кГц15
| 30
| 60
| 120
| 240
Интервалы между поднесущими в кГц, заданные как 15
, 30
, 60
, 120
, или 240
.
Типы данных: double
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'SampleRate','1e9'
задает частоту дискретизации 1 × 109 Гц.'CyclicPrefix'
- Длина циклического префикса'normal'
(по умолчанию) | 'extended'
Длина циклического префикса, заданная как разделенная разделенными запятой парами, состоящая из 'CyclicPrefix'
и одно из следующих значений:
'normal'
- Используйте это значение, чтобы задать нормальный циклический префикс. Эта опция соответствует 14 символам OFDM в пазе.
'extended'
- Используйте это значение для задания расширенного циклического префикса. Эта опция соответствует 12 символам OFDM в пазе. Для нумераций, указанных в TS 38.211 Раздел 4.2, расширенная длина циклического префикса применяется только к интервалу между поднесущими 60 кГц.
Примечание
Если вы задаете carrier
введите, используйте CyclicPrefix
свойство carrier
вход для задания длины циклического префикса. Вы не можете использовать этот аргумент пары "имя-значение" вместе со carrier
вход.
Типы данных: char
| string
'Nfft'
- Количество точек БПФ[]
Количество точек быстрого преобразования Фурье (FFT), заданное как разделенная разделенными запятой парами, состоящая из 'Nfft'
и неотрицательное целое число, больше 127 или []
. Заданное значение должно привести к целочисленным длинам циклического префикса и максимальной заполненности 100%. Заполнение определяется как значение (12 × N RB )/ Nfft
, где N RB - количество ресурсных блоков.
Если вы не задаете этот вход, или если вы задаете 'Nfft',[]
, функция устанавливает целочисленное значение, больше 127, как значение по умолчанию для этого входа. Фактическое значение по умолчанию зависит от других входных значений.
Если вы не задаете SampleRate
вход, или если вы задаете 'SampleRate',[]
, функция устанавливает Nfft
удовлетворение этих условий.
Nfft
- целочисленная степень 2.
Nfft
обеспечивает максимальное заполнение 85%.
Если вы задаете SampleRate
вход, функция устанавливает Nfft
удовлетворение этих условий.
Типы данных: double
'SampleRate'
- Частота выборки формы волны[]
Частота выборки формы волны, заданная как разделенная разделенными запятой парами, состоящая из 'SampleRate'
и либо положительная скалярная величина, либо []
.
Если вы не задаете этот вход, или если вы задаете 'SampleRate',[]
, затем функция устанавливает этот вход в значение N fft × SCS.
Типы данных: double
'Windowing'
- Количество выборок во временной области для окончения и перекрытия символов OFDM[]
Количество выборок во временной области, над которыми функция применяет приподнятое оконное окно косинуса и перекрытие символов OFDM, заданное как разделенная разделенными запятой парами, состоящая из 'Windowing'
и неотрицательное целое число или []
.
Если вы не задаете этот вход, или если вы задаете 'Windowing',[]
функция устанавливает этот вход в E максимальных значений, которая не влияет на тесты величины вектора ошибок (EVM), как указано в TS 38.101-1 Приложения F.5.3 и F.5.4, TS 38.101-2 Приложения F.5.3 и F.5.4 и TS 38.104 Приложения B.5.2 и C.5.2. E равно значению floor
((N CP − <reservedrangesplaceholder1>) × <reservedrangesplaceholder0>
.Nfft
⁄ N БПФ, номинальный), где N CP, W и N БПФ, номинальными являются значения в столбцах таблицы, обозначенных «Длина циклического префикса», «Длина окна EVM» и «Размер FFT», соответственно.
Типы данных: double
'CarrierFrequency'
- Несущая частота в Гц0
(по умолчанию) | вещественное числоНесущая частота в Гц, заданная как разделенная разделенными запятой парами, состоящая из 'CarrierFrequency'
и действительное число. Этот вход соответствует f 0, определенному в TS 38,211 Section 5,4.
Типы данных: double
info
- информация OFDMИнформация OFDM, возвращенная как структура, содержащая эти поля.
Области | Значения | Описание |
---|---|---|
Nfft | Положительное целое число | Количество точек БПФ |
SampleRate | Положительная скалярная величина | Частота выборки формы волны |
CyclicPrefixLengths | 1-by N вектор положительных целых чисел, где N - количество символов OFDM в подкадре. | Длины циклического префикса каждого символа OFDM в выборках |
SymbolLengths | 1-by - N вектор положительных целых чисел | Длины символов OFDM, в выборках |
Windowing | Положительное целое число | Количество выборок во временной области, над которыми функция применяет приподнятое оконное окно косинуса и перекрытие символов OFDM |
SymbolPhases | 1-by N вектор чисел в интервале [- | Фазовая компенсация каждого символа OFDM в радианах |
SymbolsPerSlot | Положительное целое число | Количество символов OFDM в пазе |
SlotsPerSubframe | Положительное целое число | Количество пазов в подрамнике 1 мс |
SlotsPerFrame | Положительное целое число | Количество пазов в системе координат 10 мс |
Типы данных: 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.211. "NR; Физические каналы и модуляция ". 3rd Генерация Partnership Project; Группа технических спецификаций Радиосеть доступ.
Указания и ограничения по применению:
Имена и значения в аргументах пары "имя-значение" должны быть константами времени компиляции. Для примера при указании расширенного циклического префикса включите {coder.Constant('CyclicPrefix'),coder.Constant('extended')}
в -args
значение codegen
функция. Для получения дополнительной информации смотрите coder.Constant
(MATLAB Coder) класс.
Входные параметры nrb
и scs
должны быть постоянными во время компиляции. Включите {coder.Constant(nrb)}
и {coder.Constant(scs)}
в -args
значение codegen
функция.
The 'SampleRate'
аргумент пары "имя-значение" не может использоваться вместе со carrier
вход.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.