lteSCI

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

Синтаксис

[sciout,bitsout] = lteSCI(ue)
[sciout,bitsout] = lteSCI(ue,sciin)
[sciout,bitsout] = lteSCI(ue,bitsin)
[sciout,bitsout] = lteSCI(___,opts)

Описание

пример

[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.

Форматы SCIПоля scioutРазмерОписание
'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. “Мультиплексирование и кодирование канала”. Проект Партнерства третьего поколения; Сеть радиодоступа Technical Specification Group; Развитый Универсальный Наземный Радио-доступ (к E-UTRA). URL: http://www.3gpp.org.

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

| | |

Введенный в R2017b