exponenta event banner

ltePSSCHIndices

Индексы элементов ресурсов PSSCH

Описание

пример

[ind] = ltePSSCHIndices(ue) возвращает вектор столбца индексов элемента ресурса (RE) физического общего канала боковой линии связи (PSSCH) для указанной структуры настроек UE. По умолчанию индексы возвращаются в форме линейного индексирования на основе одного элемента. Эту форму можно использовать для прямого индексирования элементов матрицы, представляющей сетку ресурсов субкадра для антенного порта 1000. Дополнительные сведения см. в разделе Индексирование общего канала физических боковых линий.

пример

[ind,info] = ltePSSCHIndices(ue) также возвращает структуру, содержащую информацию, относящуюся к PSSCH, для указанной структуры настроек UE.

пример

[___] = ltePSSCHIndices(ue,opts) форматирует возвращенные индексы с помощью параметров, указанных в opts. Этот синтаксис поддерживает параметры вывода из предыдущих синтаксисов.

Примеры

свернуть все

Запишите комплексные значения PSSCH в элементы ресурсов PSSCH в подкадре PSSCH как для нормального циклического префикса D2D так и для V2X. Отображение изображения их расположения для сравнения обоих режимов боковых линий. Это отображение записывает значения PSSCH в последний защитный символ SC-FDMA в подкадре. Модулятор sidelink SC-FDMA удаляет эти значения перед передачей сигнала.

Создайте структуру настроек UE, пустую сетку ресурсов боковых линий связи и обычный циклический префикс D2D. Определение распределения PRB, ue.PRBSet, со значениями RB от 30 до 39.

ue = struct('NSLRB',50,'CyclicPrefixSL','Normal');
ue.NSAID = 1;
ue.NSubframePSSCH = 1;
ue.PRBSet = [30:39]';
ue.Modulation = 'QPSK';
subframe_D2D = lteSLResourceGrid(ue);

Создание индексов PSSCH. Заполните элементы ресурсов PSSCH в подкадре с помощью вектора, заполненного нулями. Для D2D нормального циклического префикса подкадр PSSCH содержит (144 * nprb ) RE. Количество блоков ресурсов установлено равным 10. Поскольку PSSCH использует модуляцию QPSK, на символ приходится 2 бита.

pssch_indices = ltePSSCHIndices(ue);
subframe_D2D(pssch_indices) = ltePSSCH(ue,zeros(2*10*144,1));

Измените настройки пользовательского оборудования на режим V2X sidelink. Установите идентификатор скремблирования V2X в значение 4567.

ue.SidelinkMode = 'V2X';
ue.NXID = 4567;
subframe_V2X = lteSLResourceGrid(ue);
pssch_indices = ltePSSCHIndices(ue);
subframe_V2X(pssch_indices) = ltePSSCH(ue,zeros(2*10*120,1));

Просмотрите сетку ресурсов для обоих режимов боковых линий.

subplot(2,1,1);
image(400*abs(subframe_D2D)); 
axis xy; title('D2D');
subplot(2,1,2);
image(400*abs(subframe_V2X)); 
axis xy; title(ue.SidelinkMode);

Figure contains 2 axes. Axes 1 with title D2D contains an object of type image. Axes 2 with title V2X contains an object of type image.

Просмотр информационной структуры, выводимой функцией индексации элементов ресурсов PSSCH.

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

ue = struct('NSLRB',25,'CyclicPrefixSL','Normal','PRBSet',[5:22]', ...
    'Modulation','16QAM');

Создание индексов PSSCH и информационной структуры. Просмотрите информационную структуру для просмотра битовой и символьной емкости PSSCH для этой конфигурации.

[pssch_indices,info] = ltePSSCHIndices(ue);
info
info = struct with fields:
     G: 10368
    Gd: 2592

Сравнение форматов индексирования элементов ресурсов PSSCH.

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

ue = struct('NSLRB',15,'CyclicPrefixSL','Normal','PRBSet',12);

Создайте индексы PSSCH, используя линейную индексацию на основе одной строки (по умолчанию), линейную индексацию на основе нуля и стиль строк на основе одного подстрочного индекса.

Одноосновная линейная индексация

pssch_indices = ltePSSCHIndices(ue);
pssch_indices(1)
ans = uint32
    145

Линейная индексация на основе нуля

opts = '0based';
pssch_indices_0based = ltePSSCHIndices(ue,opts);
pssch_indices_0based(1)
ans = uint32
    144

Для индексации на основе нуля первый назначенный индекс на единицу ниже, чем индекс на основе единицы.

Одноуровневая индексация в [subcarrier,symbol,port] стиль строки нижнего индекса

Проверьте уникальные значения символов, чтобы увидеть, какие символы заняты PSSCH.

opts = {'sub' '1based'};
pssch_indices_sub = ltePSSCHIndices(ue,opts);
unique(pssch_indices_sub(:,2,:))
ans = 12x1 uint32 column vector

    1
    2
    3
    5
    6
    7
    8
    9
   10
   12
      ⋮

Только символы 4 и 11 не заняты. Для одноосновного индексирования эти два символа подкадра PSSCH всегда зарезервированы для передачи PSSCH DM-RS.

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

свернуть все

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

Режим боковых линий связи, указанный как 'D2D' или 'V2X'.

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

Число блоков ресурсов боковой линии связи, указанное как целочисленный скаляр от 6 до 110.

Пример: 6, что соответствует полосе пропускания канала 1,4 МГц.

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

Длина циклического префикса, указанная как 'Normal' или 'Extended'.

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

Индексы блоков физических ресурсов (PRB) на основе нуля, заданные как вектор целочисленного столбца или целочисленная матрица из двух столбцов.

PSSCH предназначен для передачи в одном и том же PRB в каждом слоте подкадра. Поэтому указание PRBSet как единый столбец индексов PRB рекомендуется. Однако для нестандартного распределения PRB со скачкообразной перестройкой временных интервалов, PRBSet может быть определена в виде двухколонной матрицы индексов, соответствующих выделениям ресурсов по интервалам для PSSCH.

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

Тип модуляции, указанный как 'QPSK' или '16QAM'. Требуется только в том случае, если info назначается выходной сигнал. Modulation используется для установки info.G поле вывода.

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

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

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

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

Стиль индексирования

'ind' (по умолчанию)

Возвращаемые индексы находятся в линейном индексном стиле.

'sub'

Возвращенные индексы находятся в [subcarrier,symbol,port] стиль строки подстрочного индекса.

База индекса

'1based' (по умолчанию)

Возвращаемые индексы основаны на единице.

'0based'

Возвращаемые индексы основаны на нулях.

Пример: 'ind 1based', "ind 1based", {'ind','1based'}, или ["ind","1based"] укажите те же параметры форматирования.

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

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

свернуть все

Индексы элемента ресурса PSSCH, возвращаемые как целочисленный вектор-столбец или целочисленная матрица из трех столбцов. У возвращенного вектора или матрицы есть   индексы NPRB × 144 PSSCH элемента ресурса для нормального циклического префикса D2D, или   индексы NPRB × 120 PSSCH элемента ресурса для D2D расширили циклический префикс и V2X. NPRB - количество блоков физических ресурсов (PRB), используемых для передачи. Дополнительные сведения см. в разделах Индексирование физических общих каналов Sidelink и Обработка физических общих каналов Sidelink.

Информация о ресурсах подкадра PSSCH, возвращенная в виде структуры, содержащей следующие поля:

Битовая емкость PSSCH, возвращаемая как целое число. Дополнительные сведения см. в разделе Обработка физических общих каналов Sidelink.

Емкость символа PSSCH, возвращаемая как целое число. Количество элементов ресурсов PSSCH (NRE) в подкадре. Дополнительные сведения см. в разделе Обработка физических общих каналов Sidelink.

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

Подробнее

свернуть все

Индексирование физических общих каналов Sidelink

Используйте ltePSSCHIndices функцию и соответствующую ltePSSCH функция последовательности для заполнения сетки ресурсов подкадров PSSCH. PSSCH передается в доступных символах SC-FDMA в подкадре PSSCH, используя один уровень на антенном порту 1000. Он исключает каждый символ на слот, назначенный PSSCH DM-RS. Для получения дополнительной информации о PSSCH DM-RS см. ltePSSCHDRSIndices функция. Индексы упорядочиваются, так как символы модуляции PSSCH должны быть отображены, применяя первое частотное отображение. Элементы ресурса в последнем символе SC-FDMA в подкадре подсчитываются в процессе отображения, но не должны передаваться. Модуляция SC-FDMA, специфичная для боковых линий, создает этот защитный символ. Дополнительные сведения о сопоставлении символов с сеткой элемента ресурса см. в разделе Индексирование сетки ресурсов.

Обработка физических общих каналов Sidelink

Обработка физического общего канала боковой линии связи (PSSCH) включает в себя PCSCH-специфическое скремблирование, QPSK или 16-QAM модуляцию и предварительное кодирование с преобразованием SC-FDMA. Обработка PSSCH выполняется в соответствии с этапами обработки, используемыми для PUSCH, с изменениями, определенными в TS 36.211, раздел 9.3.

Для PSSCH длина входного кодового слова равна Mbits  = NRE  × Nbps, где Nbps - количество битов на символ. Модуляция PSSCH представляет собой либо QPSK (2 бита на символ), либо 16 QAM (4 бита на символ).

Количество элементов ресурса PSSCH (NRE) в субкадре равно NRE  = NPRB  × NREperPRB  × NSYM и включает в себя символы, связанные с гардином sidelink SC-FDMA.

  • NPRB - количество блоков физических ресурсов (PRB), используемых для передачи.

  • NREperPRB - количество элементов ресурсов в PRB. Каждый PRB имеет 12 элементов ресурсов.

  • NSYM - это количество символов SC-FDMA в подкадре PSSCH, включая символы, связанные с защитным символом sidelink SC-FDMA. Количество символов SC-FDMA в подкадре PSSCH равно 12 для нормального циклического префикса или 10 для D2D расширенного циклического префикса и D2D V2X.

info вывод структуры по ltePSSCHIndices обеспечивает Mbits и NRE как info.G и info.Gd соответственно.

Генератор скремблирующих последовательностей инициализируется с помощью cinit = nIDX × 214 + nssfPSSCH × 29 + 510 в начале каждого подкадра PSSCH. Для D2D боковой линии nIDSA является идентификатором назначения (NSAID), полученный из общего канала боковой линии связи. Для V2X nIDSA - это V2X идентификатор скремблирования (NXID). nssfPSSCH - номер подкадра в пуле подкадров PSSCH (NSubframePSSCH).

ltePSSCH требует CyclicPrefixSL выводят количество блоков ресурсов, выделенных для символов предварительного кодирования SC-FDMA.

Ссылки

[1] 3GPP TS 36.211. "Развитый универсальный наземный радиодоступа (E-UTRA); Физические каналы и модуляция. "Проект партнерства 3-го поколения; Техническая спецификация на сеть радиодоступа группы. URL: https://www.3gpp.org.

Представлен в R2016b