lteSCI

Структура формата управляющей информации Sidelink и битная полезная нагрузка

Описание

пример

[sciout,bitsout] = lteSCI(ue) возвращает структуру сообщения непрямой управляющей информации (SCI), sciout, и SCI передает битовый вектор, bitsout, для настроек, заданных в структуре оборудования пользователя.

Эта функция создает и управляет сообщениями формата 0 SCI, заданными в TS 36.212 [1], Раздел 5.4.3. Можно использовать lteSCI создать сообщение SCI по умолчанию, вслепую декодировать типы формата SCI и определить размеры битовых полей.

По умолчанию все возвращенные поля обнуляются.

пример

[sciout,bitsout] = lteSCI(ue,sciin) возвращает поля структуры SCI и настройки использования битового вектора, заданные в структуре входа SCI sciin. Поля, не заданные в sciin установлены в значения по умолчанию, заданные ue. Можно использовать этот синтаксис, чтобы инициализировать значения полей SCI, в частности бит скачкообразного движения частоты, который влияет на поля, которые использует формат.

пример

[sciout,bitsout] = lteSCI(ue,bitsin) возвращает поля структуры SCI и настройки использования битового вектора, заданные в битном входном векторе bitsin. Входной битовый вектор возвращен как полезная нагрузка бита информации о SCI, где bitsout == bitsin.

пример

[sciout,bitsout] = lteSCI(___,opts) форматирует возвращенную структуру с помощью опций, заданных opts.

Примеры

свернуть все

Создайте структуру сообщения SCI формата 0.

Создайте структуру настроек UE.

ue = struct('NSLRB','15MHz');

Сгенерируйте сообщение SCI и просмотрите возвращенное содержимое структуры сообщения SCI.

[sci0,bits] = lteSCI(ue);
sci0
sci0 = struct with fields:
              SCIFormat: 'Format0'
            FreqHopping: 0
             Allocation: [1x1 struct]
    TimeResourcePattern: 0
              ModCoding: 0
            TimeAdvance: 0
                  NSAID: 0

allocfields = sci0.Allocation
allocfields = struct with fields:
    RIV: 0

Создайте структуру сообщения SCI формата 0 с распределенным типом выделения VRB. Поля сообщения выделения содержатся в Allocation подструктура. Создать соответствующий набор полей при выходе, FreqHopping поле инициализируется во входе к функции.

Создайте структуру настроек UE и задайте FreqHopping использование входа SCI передает структуру.

ue = struct('NSLRB',50);
sciin = struct('FreqHopping',1);

Сгенерируйте сообщение SCI и просмотрите возвращенное содержимое структуры сообщения SCI.

[sci0,bits] = lteSCI(ue,sciin);
sci0
sci0 = struct with fields:
              SCIFormat: 'Format0'
            FreqHopping: 1
             Allocation: [1x1 struct]
    TimeResourcePattern: 0
              ModCoding: 0
            TimeAdvance: 0
                  NSAID: 0

allocfields = sci0.Allocation
allocfields = struct with fields:
    HoppingBits: 0
            RIV: 0

Восстановитесь содержимое SCI формата 0 передает битовый вектор.

Создайте структуру настроек UE.

ue = struct('NSLRB',50);

Сгенерируйте структуру сообщения SCI.

[sci0,bits] = lteSCI(ue);
sci0
sci0 = struct with fields:
              SCIFormat: 'Format0'
            FreqHopping: 0
             Allocation: [1x1 struct]
    TimeResourcePattern: 0
              ModCoding: 0
            TimeAdvance: 0
                  NSAID: 0

Измените ModCoding установка на 22 и генерирует вектор битов SCI.

sci0.ModCoding = 22;
[~,bits_new] = lteSCI(ue,sci0);

Используйте новые биты, чтобы восстановить новое сообщение SCI. Просмотрите новую структуру сообщения SCI и подтвердите что ModCoding установка равняется теперь 22.

[sci0_new,~] = lteSCI(ue,bits_new)
sci0_new = struct with fields:
              SCIFormat: 'Format0'
            FreqHopping: 0
             Allocation: [1x1 struct]
    TimeResourcePattern: 0
              ModCoding: 22
            TimeAdvance: 0
                  NSAID: 0

Создайте структуру сообщения SCI формата 0. Используйте opts введите, чтобы просмотреть размеры поля сообщения и исключить поля с нулевой длиной.

Создайте структуру настроек UE.

ue = struct('NSLRB','5MHz');
opts = {'fieldsizes','excludeunusedfields'}
opts = 1x2 cell array
    {'fieldsizes'}    {'excludeunusedfields'}

Сгенерируйте сообщение SCI и просмотрите размеры поля возвращенного содержимого структуры сообщения SCI.

[sci0,bits] = lteSCI(ue,opts);
sci0
sci0 = struct with fields:
              SCIFormat: 'Format0'
            FreqHopping: 1
             Allocation: [1x1 struct]
    TimeResourcePattern: 7
              ModCoding: 5
            TimeAdvance: 11
                  NSAID: 8

allocfields = sci0.Allocation
allocfields = struct with fields:
    RIV: 9

Смотрите возвращенную структуру, чтобы видеть длину в битах каждого поля в сообщении SCI.

fieldsLength = sci0.FreqHopping + sci0.Allocation.RIV + ...
    sci0.TimeResourcePattern + sci0.ModCoding + sci0.TimeAdvance + ...
    sci0.NSAID
fieldsLength = uint64
    41
bitsLength = size(bits,1)
bitsLength = 41
isequal(fieldsLength,bitsLength)
ans = logical
   1

Сумма размеров поля совпадает с длиной возвращенного bits вывод .

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

свернуть все

Настройки оборудования пользователя, заданные как структура, содержащая эти поля параметра:

Количество подканалов в пуле ресурсов V2X PSSCH, заданном как целочисленный скаляр от 1 до 110. Это требуется когда sciin установлен в 'Format1'.

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

Количество непрямых блоков ресурса, заданных как целочисленный скаляр от 6 до 110. (NRB\sl)

Пример 6, который соответствует пропускной способности канала 1,4 МГц.

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

Параметры форматирования для структуры выхода SCI, заданной как вектор символов, массив ячеек из символьных векторов или массив строк. Можно задать формат для Полевого содержимого и Полей, чтобы включать. Для удобства можно задать несколько опций как односимвольный вектор или представить скаляр в виде строки разделенным пробелом списком значений, помещенных в кавычках. Значения для opts когда задано как вектор символов включают (используйте двойные кавычки в строке):

Категория Опции Описание

Полевое содержимое

'fieldvalues' (значение по умолчанию)

Обнулите поля или к их входным значениям.

'fieldsizes'

Устанавливает значения полей к их диаметрам долота и добавляет Padding поле к sciout. Padding указывает на количество дополнения добавленных битов.

Поля, чтобы включать

'includeallfields' (значение по умолчанию)

sciout включает все возможные поля для требуемого формата SCI.

'excludeunusedfields'

sciout исключает поля нулевой длины для данного набора параметра.

Пример: 'fieldsizes excludeunusedfields', "fieldsizes excludeunusedfields", {'fieldsizes','excludeunusedfields'}, или ["fieldsizes","excludeunusedfields"] задайте те же параметры форматирования.

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

Настройки сообщения SCI, заданные как структура, содержащая любые поля, возвращенные в sciout. Смотрите sciout для определенных полей выход для каждого SCIFormat. Сообщение формата 0 SCI задано в TS 36.212 [1], Раздел 5.4.3.1. Это может содержать следующее поле:

Тип формата SCI, заданный как 'Format0' или 'Format1'.

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

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

Введите биты, заданные как вектор-столбец. bitsin обработан как полезная нагрузка бита сообщения SCI, то есть, bitsout == bitsin. Длина bitsin должен выровняться с количеством блоков ресурса, ue.NSLRB. Используйте lteSCIInfo чтобы определить SCI передают длину для заданного ue настройки.

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

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

свернуть все

Структура сообщения SCI, возвращенная как структура, поля которой совпадают со связанным содержимым формата SCI.

Имена полей сопоставлены с sciout зависьте от поля формата SCI в sciin. По умолчанию все значения обнуляются. Однако, если какое-либо из полей SCI уже присутствует во входе sciin, их значения продвинуты в sciout. Значения поля ввода появляются в связанных позициях двоичного разряда в bitsout. Продвижение значений допускает легкую инициализацию значений полей SCI. sciout также продвигает NSLRB поле задано в sciin.

Эта таблица показывает поля, сопоставленные с каждым форматом SCI, как задано в TS 36.212 [1], Раздел 5.4.3.1.

Форматы SCIsciout Поля РазмерОписание
'Format0' SCIFormat-'Format0'
FreqHopping1 бит Флаг скачкообразного движения частоты PSSCH
Allocationот 5 до 13 битов, журнал2(NRB\sl×(NRB\sl+1)2)Присвоение блока ресурса и скачкообразно двигающаяся подструктура распределения ресурсов, тип 0 или выделение типа 1
TimeResourcePattern7 битов Шаблон ресурса времени (I TRP)
ModCoding5 битов Модуляция и схема кодирования (MCS I)
TimeAdvance11 битов Индикация опережения
NSAID8 битов Целевой ID группы, как задано более высокими слоями
Padding0 битовВсегда нуль для Формата 0 SCI
'Format1' SCIFormat-'Format1'
Priority3 битаНа пакетный приоритет
ResourceReservation4 битаРезервирование ресурса
RIVот 0 до 13 битов, журнал2(Nподканал\sl×(Nподканал\sl+1)2)Значение индикации ресурса
TimeGap4 бита

Разрыв времени между начальной передачей и повторной передачей

ModCoding5 битовМодуляция и схема кодирования
RetransmissionIdx1 битИндекс повторной передачи

Сообщение SCI в битной форме полезной нагрузки, возвращенной как вектор-столбец. bitsout представляет набор полей сообщения, сопоставленных с информационной полезной нагрузкой бита (включая любое дополнение нуля).

Ссылки

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

Смотрите также

| | |

Введенный в R2017b