Продукт LTE Toolbox™ может сгенерировать и управлять сигналами для расположений дуплекса, заданных в стандарте LTE. В LTE нисходящие и восходящие передачи организованы в радио-кадры длительности 10 мс, состоящих из 10 последовательных подкадров, каждый состоящий из многих последовательных символов OFDM, как показано в следующей фигуре.
Этот пример показывает, как создать сетку ресурса или для нормального или расширил циклический префикс. Количество символов OFDM в одном подкадре или 14 для нормального циклического префикса, или 12 для расширенного циклического префикса.
Создайте структуру настроек всей ячейки.
enb.CyclicPrefix = 'Normal';
enb.NDLRB = 9;
enb.CellRefP = 1;
Получите размерности сетки ресурса подкадра.
dims = lteDLResourceGridSize(enb)
dims = 1×3
108 14 1
Переключитесь на расширенный циклический префикс.
enb.CyclicPrefix = 'Extended';
dims = lteDLResourceGridSize(enb)
dims = 1×3
108 12 1
Второе измерение вывода lteDLResourceGridSize
является количеством символов в подкадре.
Этот пример показывает, как создать кадр, содержащий специфичные для ячейки ссылочные сигналы (CellRS) в каждом подкадре. Радио-кадр представлен в продукте LTE Toolbox™ при помощи последовательности 10 структур настроек всей ячейки с набором поля NSubframe
от 0 до 9 в каждом случае.
Инициализируйте структуру установки всей ячейки и создайте пустую сетку ресурса
Измените параметр NDLRB
, чтобы определить номер блоков ресурса. Измените CellRefP
, чтобы установить один порт антенны передачи. Измените NCellID
, чтобы установить ячейку ID. Задайте нормальный циклический префикс и нуль порта антенны.
enb.NDLRB = 6;
enb.CellRefP = 1;
enb.NCellID = 1;
enb.CyclicPrefix = 'Normal';
antenna = 0;
Создайте пустую сетку ресурса, которая будет заполнена с подкадрами.
txGrid = [];
Заполните сетку ресурса для каждого подкадра
Создайте пустую сетку ресурса для каждого подкадра и определите текущий номер подкадра.
Сгенерируйте специфичные для ячейки ссылочные символы сигнала и индексы.
Сопоставьте специфичный для ячейки ссылочный сигнал с сеткой и добавьте подкадр к сетке, которая будет передана.
for sf = 0:9 subframe = lteDLResourceGrid(enb); enb.NSubframe = sf; cellRsSym = lteCellRS(enb,antenna); cellRsInd = lteCellRSIndices(enb,antenna); subframe(cellRsInd) = cellRsSym; txGrid = [txGrid subframe]; end
В режиме дуплекса FDD все 10 подкадров в радио-кадре содержат нисходящие или восходящие подкадры в зависимости от направления ссылки.
Восходящие и нисходящие передатчики имеют отдельную пропускную способность, в которой можно сделать их передачи. Поэтому каждый может передать в любом случае.
В продукте LTE Toolbox можно создать сигналы или индексы для режима дуплекса FDD просто путем установки поля NSubframe
структуры настроек всей ячейки к соответствующему номеру подкадра. Функции, поведение которых зависит от режима дуплекса, имеют поле DuplexMode
, которое можно установить на 'FDD'
или 'TDD'
. Если вы не задаете это поле, 'FDD'
используется по умолчанию.
Этот пример показывает, как сгенерировать индексы первичного сигнала синхронизации (PSS) в подкадре 0 использований режима дуплекса FDD.
Во-первых, создайте структуру настроек всей ячейки.
enb.CyclicPrefix = 'Normal'; enb.NDLRB = 9; enb.NCellID = 1; enb.NSubframe = 0; enb.DuplexMode = 'FDD';
Затем, создайте индексы PSS, размер дисплея и первые пять индексов в подкадре 0.
ind = ltePSSIndices(enb); size(ind)
ans = 1×2
62 1
ind(1:5)
ans = 5x1 uint32 column vector
672
673
674
675
676
Если тот же вызов выполняется для подкадра 1 вместо этого, то результатом является пустая матрица.
enb.NSubframe = 1;
Пустая матрица указывает, что PSS не присутствует в подкадре 1. Путем вызывания функций для индексов и значений для подкадров 0 до 9 путем установки поля NSubframe
, могут быть сформированы соответствующие передачи через радио-кадр.
ind = ltePSSIndices(enb)
ind = 0x1 empty uint32 column vector
В режиме дуплекса TDD одна пропускная способность совместно используется восходящим каналом и нисходящим каналом с совместным использованием, выполняемым путем выделения различных промежутков времени восходящему каналу и нисходящему каналу. В LTE существует 7 различных шаблонов переключения восходящего нисходящего канала, назвал восходящие нисходящие настройки 0 до 6, как показано в следующей фигуре.
Специальный подкадр (подкадр 1 в каждой восходящей нисходящей настройке и подкадре 6 в восходящих нисходящих настройках 0, 1, 2 и 6) содержит фрагмент нисходящей передачи в начале подкадра (Нисходящий Экспериментальный Временной интервал, DwPTS), фрагмент неиспользованных символов посреди подкадра (Период охраны) и фрагмент восходящей передачи в конце подкадра (Восходящий Экспериментальный Временной интервал, UpPTS), как показано в следующей фигуре.
Длины DwPTS, GP и UpPTS могут взять одну из 10 комбинаций значений, назвал специальные настройки подкадра 0 до 9. Стандарт LTE, таблица 4.2-1 TS 36.211, задает длины с точки зрения основного периода модуляции OFDM, но длины могут быть интерпретированы с точки зрения символов OFDM как показано в следующей таблице.
Настройка специального подкадра (длины DwPTS/GP/UpPTS) | ||||||
---|---|---|---|---|---|---|
Специальная настройка подкадра | Нормальный циклический префикс в нисходящем канале | Расширенный циклический префикс в нисходящем канале | ||||
DwPTS | UpPTS | DwPTS | UpPTS | |||
Нормальный циклический префикс в восходящем канале | Расширенный циклический префикс в восходящем канале | Нормальный циклический префикс в восходящем канале | Расширенный циклический префикс в восходящем канале | |||
0 | 3 | 1 | 1 | 3 | 1 | 1 |
1 | 9 | 8 | ||||
2 | 10 | 9 | ||||
3 | 11 | 10 | ||||
4 | 12 | 3 | 2 | 2 | ||
5 | 3 | 2 | 2 | 8 | ||
6 | 9 | 9 | ||||
7 | 10 | 5 | ||||
8 | 11 | - | - | - | ||
9 | 6 | - | - | - |
Таким образом, в действительности, специальный подкадр является и нисходящим подкадром и восходящим подкадром с некоторым ограничением, установленным для количества символов OFDM, которые заняты в каждом случае.
Чтобы задать операцию TDD, в структуре настроек всей ячейки, устанавливают дополнительное поле DuplexMode
на 'TDD'
. Когда вы используете эту установку, функции, которые требуют, DuplexMode
также требуют, чтобы вы задали восходящую нисходящую настройку (0, …, 6) в поле TDDConfig
, номере подкадра в поле NSubframe
и специальной настройке подкадра (0, …, 9) в поле SSC
.
Этот пример показывает, как создать индексы для положений специфичного для ячейки ссылочного сигнала (CellRS) для порта антенны 0 в подкадре 6 для восходящей нисходящей настройки 2 и специальной настройки подкадра 4 с расширенным циклическим префиксом.
Во-первых, создайте структуру параметра.
enb.NDLRB = 9; enb.NCellID = 1; enb.DuplexMode = 'TDD'; enb.NSubframe = 6; enb.TDDConfig = 2; enb.SSC = 4; enb.CyclicPrefix = 'Extended';
Затем, создайте специфичные для ячейки индексы RS.
sub = lteCellRSIndices(enb,0,'sub')
sub = 18x3 uint32 matrix
2 1 1
8 1 1
14 1 1
20 1 1
26 1 1
32 1 1
38 1 1
44 1 1
50 1 1
56 1 1
⋮
Второй столбец, который дает номер символа OFDM (на основе 1) в подкадре, имеет значения 1 указания, что только 1-й символ OFDM будет содержать специфичные для ячейки ссылочные сигналы в этом случае. Это вызвано тем, что выбранный подкадр является специальным подкадром с DwPTS длины 3 и поэтому другие специфичные для ячейки ссылочные элементы сигнала (в символах OFDM 4, 7 и 10), который присутствовал бы в полных нисходящих подкадрах, не сгенерированы.
Чтобы подтвердить эту теорию, измените дуплексный режим на FDD.
enb.DuplexMode = 'FDD'; sub = lteCellRSIndices(enb,0,'sub'); unique(sub(:,2))
ans = 4x1 uint32 column vector
1
4
7
10
В этом случае переключатель к FDD означает, что теперь несоответствующие поля, TDDConfig
и SSC
, проигнорированы.
Этот пример показывает, как извлечь информацию от структуры параметра. Чтобы упростить работу с различными расположениями дуплекса, продукт LTE Toolbox™ обеспечивает lteDuplexingInfo
информационную функцию. Эта функция берет структуру настроек всей ячейки, содержащую поля, упомянутые в предыдущих разделах. Это возвращает структуру, которая указывает на тип текущего подкадра и количество символов в текущем подкадре.
Во-первых, создайте структуру параметра.
enb.NDLRB = 9; enb.NCellID = 1; enb.DuplexMode = 'TDD'; enb.NSubframe = 6; enb.TDDConfig = 2; enb.SSC = 4; enb.CyclicPrefix = 'Extended';
Затем, извлеките информацию о размерности.
lteDuplexingInfo(enb)
ans = struct with fields:
SubframeType: 'Special'
NSymbols: 12
NSymbolsDL: 3
NSymbolsGuard: 7
NSymbolsUL: 2
Наконец, измените свойство NSubframe
и извлеките информацию о размерности снова.
enb.NSubframe = 0; lteDuplexingInfo(enb)
ans = struct with fields:
SubframeType: 'Downlink'
NSymbols: 12
NSymbolsDL: 12
NSymbolsGuard: 0
NSymbolsUL: 0
Эта функция обеспечивает прямой доступ к восходящим нисходящим шаблонам настройки через поле SubframeType
и специальный подкадр DwPTS, GP и длины UpPTS через NSymbolsDL
, NSymbolsGuard
и поля NSymbolsUL
.