exponenta event banner

Пулы ресурсов LTE Sidelink и период PSCCH

В этом примере показано, как определяются и параметризуются пулы ресурсов прямой связи и периоды PSCCH. Здесь показана взаимосвязь между полустатическими параметрами пула RRC и структурой периодов PSCCH. Он также показывает, как динамические параметры планирования (DCI и SCI) для режима 1 передачи и режима 2 влияют на окончательный выбор ресурса передачи.

Введение в Prose Direct Communications и Sidelink

В 12-й версии стандарта 3GPP LTE появился новый интерфейс «устройство-устройство» (D2D), предназначенный главным образом для того, чтобы позволить LTE поддерживать системы связи общественной безопасности. С точки зрения общего RAN LTE этот интерфейс обеспечивает два вида услуг на основе близости (известных в 3GPP как Prose):

  • Prose Direct Communication, где прямая связь UE с множеством UE (групповая связь) возможна без передачи данных по восходящей или нисходящей линии связи. Это разрешено только для приложений общественной безопасности и поддерживает одно или несколько UE, находящихся вне зоны покрытия (сеть и/или частота).

  • Prose Direct Discovery, где бизнес-услуги могут быть включены для UE, которые близки друг к другу. Эта функция может использоваться для коммерческих приложений (например, для рекламы услуг) в случае, когда оба UE находятся в зоне действия сети.

В терминах нижнего стека интерфейс LTE D2D называется боковой линией связи и, в терминах архитектуры системы, известен как PC5 (в отличие от интерфейса UE/eNireB, Uu). Она содержит набор новых физических сигналов, физических каналов, транспортных каналов и сообщений. Поскольку боковая линия связи передается UE, она тесно связана с восходящей линией связи, но она также включает в себя некоторые аспекты синхронизации нисходящей линии связи и сигнализации управления. Одним из существенных результатов этой конструкции является то, что UE теперь должно принимать и генерировать восходящую линию связи (боковую линию связи).

Этот пример фокусируется исключительно на прямой связи, где релевантными каналами и сигналами физического уровня являются,

  • Физический общий канал Sidelink (PSSCH)

  • Физический канал управления боковой линией (PSCCH) (несущий SCI)

  • Физический широковещательный канал Sidelink (PSBCH)

  • Общий канал боковых линий (SL-SCH)

  • Широковещательный канал SL-BCH (несущий MIB-SL)

  • Сигналы синхронизации боковых линий

В дополнение к вышеупомянутым каналам были введены новые процедуры физического уровня, как описано в TS 36.213 Раздел 14. Ключевой концепцией в этих процессах является концепция пула ресурсов, который определяет подмножество доступных подкадров и блоков ресурсов для передачи или приема боковой линии связи. Связь по боковой линии связи представляет собой полудуплексную схему, и UE может быть сконфигурировано с множеством пулов ресурсов передачи и множеством пулов ресурсов приема. Пулы ресурсов конфигурируются полустатически посредством передачи сообщений уровня 3. Когда данные должны быть отправлены с использованием пула ресурсов, фактические ресурсы передачи выбираются динамически из пула с использованием одного из двух различных режимов:

  • Режим передачи 1 - обслуживающий eNireB определяет ресурсы посредством сообщения формата DCI 5, отправленного в передающее UE. Этот режим требует полного подключения UE к сети (состояние RRC_CONNECTED).

  • Режим передачи 2 - передающее UE самостоятельно выбирает ресурсы согласно правилам, направленным на минимизацию риска столкновения. Этот режим может использоваться, когда UE подключен, свободен (RRC_IDLE) или находится вне сети.

Введение в пулы ресурсов Sidelink и период PSCCH

Пул ресурсов прямой связи боковой линии связи конфигурируется на полустатической основе с использованием уровня 3 SL-CommResourcePool Сообщение RRC (TS 36.331 раздел 6.3.8). Физические ресурсы уровня 1 (подкадры и блоки ресурсов), связанные с пулом, разбиваются на последовательность повторяющихся «гиперкадров», известных как периоды PSCCH. Это стандартизированный термин, используемый в TS 36.213, но он также иногда упоминается как период SA (назначение планирования) или период SC (управление боковыми линиями связи). В течение периода PSCCH существуют отдельные пулы подкадров и пулы блоков ресурсов для управления (PSCCH) и данных (PSSCH). Подкадры PSCCH всегда предшествуют кадрам для передачи PSSCH. Это аналогично компоновке символов OFDM-символов PDCCH и PDSCH в пределах одного подкадра нисходящей линии связи, где область управления предшествует части данных. PSCCH несет сообщения управляющей информации боковых линий (SCI), которые описывают динамические свойства передачи PSSCH, которые следуют за ней. Принимающее UE выполняет поиск всех сконфигурированных пулов ресурсов PSCCH для интересующих его передач SCI. UE может быть членом более чем одной группы связи боковых линий связи.

Эти пулы подкадров и блоков ресурсов определяются различными параметрами в SL-CommResourcePool-r12 сообщение. Определение типа сообщения в ASN.1 (общие термины см. в TS 36.331, раздел 6.1) определяется следующим образом:

SL-CommResourcePool-r12 ::= SEQUENCE {

    sc-CP-Len-r12                       SL-CP-Len-r12,
    sc-Period-r12                       SL-PeriodComm-r12,
    sc-TF-ResourceConfig-r12            SL-TF-ResourceConfig-r12,
    data-CP-Len-r12                     SL-CP-Len-r12,
    dataHoppingConfig-r12               SL-HoppingConfigComm-r12,
    ue-SelectedResourceConfig-r12       SEQUENCE {
        data-TF-ResourceConfig-r12          SL-TF-ResourceConfig-r12,
        trpt-Subset-r12                     SL-TRPT-Subset-r12          OPTIONAL    -- Need OP
    }                                                               OPTIONAL,   -- Need OR
    rxParametersNCell-r12               SEQUENCE {
        tdd-Config-r12                      TDD-Config                  OPTIONAL,   -- Need OP
        syncConfigIndex-r12                 INTEGER (0..15)
    }                                                               OPTIONAL,   -- Need OR
    txParameters-r12                    SEQUENCE {
        sc-TxParameters-r12                 SL-TxParameters-r12,
        dataTxParameters-r12                SL-TxParameters-r12
    }                                                               OPTIONAL,   -- Cond Tx
    ...

}

В этом примере используется структура MATLAB, содержащая все параметры моделирования, включая параметры, представляющие подмножество SL-CommResourcePool-r12 сообщение.

% This example bundles all parameters into a structure based on
% SL-CommResourcePool-r12. Compare this parameter structure with the RRC
% message definition from TS 36.331 Section 6.3.8
commpoolparameters = PSCCHPeriod.defaultConfig(1,'5MHz')
commpoolparameters = 

  struct with fields:

                            NSLRB: 25
                       DuplexMode: 'FDD'
                        TDDConfig: 0
                       UESelected: 'On'
                       SyncEnable: 'On'
                     NPSCCHPeriod: 0
                    sc_CP_Len_r12: 'Normal'
                    sc_Period_r12: 40
         sc_TF_ResourceConfig_r12: [1x1 struct]
                  data_CP_Len_r12: 'Normal'
            dataHoppingConfig_r12: [1x1 struct]
    ue_SelectedResourceConfig_r12: [1x1 struct]
                       syncConfig: [1x1 struct]

Следует отметить, что некоторые параметры или информационные элементы (IE) в сообщении являются необязательными, например, в зависимости от того, предназначена ли конфигурация пула для передачи или приема. Если ue-SelectedResourceConfig-r12 включается в сообщение, тогда UE находится в режиме 2 передачи (UE выбрано), иначе он находится в режиме 1 передачи (eNeyB запланировано). Для получения дополнительной информации см. следующие 3GPP технические стандартные документы: * TS 36.331 Раздел 6.3.8 для определения всех сообщений и информационных элементов, связанных с боковыми линиями связи; * TS 36.331 Раздел 5.10 для процедур боковых линий связи уровня 3; * TS 36.213 Раздел 14 для процедур боковых линий связи уровня 1.

Моделирование коммуникационных пулов Sidelink и периода PSCCH с помощью инструментария LTE

В этом примере используется класс дескриптора MATLAB с именем PSCCHPeriod для представления структуры периода PSCCH для пула ресурсов прямой связи с одной боковой линией связи. Объекты типа PSCCHPeriod может быть создана с использованием структуры параметров, которая объединяет общие параметры передачи, такие как полоса пропускания передачи и режим дуплексирования, с параметрами RRC уровня 3 полустатического типа, прежде всего из SL-CommResourcePool сообщение (TS 36.331 раздел 6.3.8). Затем объект можно использовать для:

  • Получение свойств, которые предоставляют ключевую информацию о процедурных сущностях в периоде PSCCH, таких как пулы субкадров и пулы блоков ресурсов

  • Отображение изображения, представляющего ресурсы, используемые в периоде PSCCH, как для пулов ресурсов, так и для фактических ресурсов передачи

  • Формирование сигнала основной полосы частот для периода PSCCH, содержащего передачи PSCCH, PSSCH и синхронизации

Следующий код показывает, как PSCCHPeriod может быть создан объект, связь между его параметрами конфигурации и SL-CommResourcePool сообщение и способ отображения местоположений пулов физических ресурсов в пределах периода PSCCH.

% Construct a default PSCCH period object to illustrate PSCCH/PSSCH
% resource pool layout within the period. This default example is
% configured for 5MHz bandwidth and 40ms length, so the overall period
% contains 40 subframes. The displayed properties of the PSCCHPeriod object
% include the 0-based indices for both PSCCH and PSSCH subframe and
% resource block pools. The subframe pool indices are relative to the
% beginning of the period
period = PSCCHPeriod

% Display an image representing the structure of this particular PSCCH
% period. The lighter blue part represents the PSCCH resource pool for SCI
% control information, and the yellow region is the PSSCH resource pool for
% PSSCH shared data
displayPeriod(period);
snapnow;

% Re-configure for TDD then display the updated properties and pool
% locations
period.Config.DuplexMode = 'TDD';
displayPeriod(period);
snapnow;

% The PSCCHPeriod class includes other default parameter structures that
% can be used to configure an object. These are based on a subset of the
% reference pool configurations of TS 36.101 Section A.7.2
configuration = PSCCHPeriod.defaultConfig(1,'5MHz')
period = 

  PSCCHPeriod with properties:

            NSubframeBegin: 0
              PeriodLength: 40
                    TxMode: 'Mode2'
         PSCCHSubframePool: [3 4]
    PSCCHResourceBlockPool: [25x1 double]
          NumPSCCHResource: 24
         PSSCHSubframePool: [1x32 double]
    PSSCHResourceBlockPool: [25x1 double]
               AllowedITRP: [70x1 double]
             SyncSubframes: []
                    Config: [1x1 struct]

configuration = 

  struct with fields:

                            NSLRB: 25
                       DuplexMode: 'FDD'
                        TDDConfig: 0
                       UESelected: 'On'
                       SyncEnable: 'On'
                     NPSCCHPeriod: 0
                    sc_CP_Len_r12: 'Normal'
                    sc_Period_r12: 40
         sc_TF_ResourceConfig_r12: [1x1 struct]
                  data_CP_Len_r12: 'Normal'
            dataHoppingConfig_r12: [1x1 struct]
    ue_SelectedResourceConfig_r12: [1x1 struct]
                       syncConfig: [1x1 struct]

Пулы подкадров и блоков ресурсов PSCCH

Пул ресурсов PSCCH параметризуется sc-TF-ResourceConfig-r12 информационный элемент, который имеет тип SL-TF-ResourceConfig-r12. Этот тип также используется для определения пула ресурсов PSSCH в случае режима передачи PSSCH 2. Параметры в этом IE определяют как подкадр PSCCH, так и пулы блоков ресурсов. Он содержит следующие параметры:

SL-TF-ResourceConfig-r12 ::= SEQUENCE {

    prb-Num-r12                         INTEGER (1..100),
    prb-Start-r12                       INTEGER (0..99),
    prb-End-r12                         INTEGER (0..99),
    offsetIndicator-r12                 SL-OffsetIndicator-r12,
    subframeBitmap-r12                  SubframeBitmapSL-r12

}

В случае PSCCH, offsetIndicator-r12 параметр определяет смещение последовательности периодов PSCCH относительно SFN/DFN # 0. Первый подкадр i-го периода PSCCH задается jbegin =offsetIndicator-r12 + i * sc-Period-r12. subframeBitmap-r12 используется для выбора подкадров из начала периода для пула подкадров PSCCH. Три параметра, prb-Num-r12, prb-Start-r12 и prb-End-r12 используются для выбора PRB для пула блоков ресурсов PSCCH. В зависимости от значений параметров этот пул может быть сформирован из одного или двух смежных наборов блоков ресурсов. Это более подробно описано ниже.

% Display the parameter structure used to configure the PSCCH resource pools
period = PSCCHPeriod;
pscchpoolparams = period.Config.sc_TF_ResourceConfig_r12
pscchpoolparams = 

  struct with fields:

            prb_Num_r12: 13
          prb_Start_r12: 0
            prb_End_r12: 24
    offsetIndicator_r12: 0
     subframeBitmap_r12: '0001100000000000000000000000000000000000'

Пул подкадров PSCCH определяется subframeBitmap-r12 параметр, являющийся частью sc-TF-ResourceConfig-r12 информационный элемент. Для пула подкадров$N'$ выбираются первые подкадры восходящей линии связи в периоде PSCCH, где$N'$ - длина битовой карты. Эти подкадры обозначаются их индексами. $(l_0,l_1,\ldots,l_{N'-1})$Затем пул подкадров PSCCH содержит подкадры восходящей линии связи, связанные с 1 в битовой карте, и$(a_0, a_1,\ldots, a_{N'-1})$ результирующий пул обозначается как$(l^{PSCCH}_0, l^{PSCCH}_1,\ldots, l^{PSCCH}_{L_{PSCCH}-1})$ где -$L_{PSCCH}$ количество подкадров в пуле.

% Display the PSCCH subframe pool bitmap parameter, subframeBitmap_r12
pscchsubframebitmap = period.Config.sc_TF_ResourceConfig_r12.subframeBitmap_r12
% Display the subframe pool indices (0-based, relative to the start of the
% PSCCH period) selected by the 1's in the bitmap
pscchsubframepool = period.PSCCHSubframePool

% Change the duplexing mode to TDD and observe the difference in subframe
% pool indices to account for the new uplink subframe positions for the
% current TDD configuration
period.Config.DuplexMode = 'TDD';
tddconfig = period.Config.TDDConfig
pscchsubframepool = period.PSCCHSubframePool
pscchsubframebitmap =

    '0001100000000000000000000000000000000000'


pscchsubframepool =

     3     4


tddconfig =

     0


pscchsubframepool =

     7     8

Пул блоков ресурсов PSCCH определяется тремя параметрами prb-Start-r12, prb-End-r12 и prb-Num-r12, которые также являются частью sc-TF-ResourceConfig-r12 информационный элемент.

Параметры определяют две области данных prb-Start-r12 $\le q <$ (prb-Start-r12 + prb-Num-r12) и (prb-End-r12 - prb-Num-12) $< q \le$ prb-End-r12. Результирующие индексы обозначаются как$(m^{PSCCH}_0, m^{PSCCH}_1,\ldots, m^{PSCCH}_{M^{PSCCH\_RP}_{RB}-1})$ где$M^{PSCCH\_RP}_{RB}$ - количество блоков в пуле ресурсов. Полосы могут перекрываться, образуя один смежный блок.

% Display the PSCCH resource block pool parameters, prb_Start-r12, prb-End-r12, prb-Num-r12
prbstart = period.Config.sc_TF_ResourceConfig_r12.prb_Start_r12
prbend = period.Config.sc_TF_ResourceConfig_r12.prb_End_r12
prbnum = period.Config.sc_TF_ResourceConfig_r12.prb_Num_r12

% Display the resource block pool indices (0-based) resulting from these
% parameters
pscchprbpool = period.PSCCHResourceBlockPool

% Change the prb-Num-r12 parameter and observe the difference in the
% resource block pool indices to account for the reduction in the size of
% the pool bands
prbnum = 2
period.Config.sc_TF_ResourceConfig_r12.prb_Num_r12 = prbnum;
pscchprbpool = period.PSCCHResourceBlockPool
prbstart =

     0


prbend =

    24


prbnum =

    13


pscchprbpool =

     0
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24


prbnum =

     2


pscchprbpool =

     0
     1
    23
    24

Ниже показаны некоторые эффекты этих параметров визуально.

% Display the PSCCH pool resource locations for the default configuration.
% For this parameterization the PSCCH resource block pool spans the entire
% bandwidth and the PSCCH subframe pool is a pair of contiguous subframes
% (the lighter blue area towards the start of the period)
period = PSCCHPeriod;
displayPeriod(period);
snapnow;

% Modify the subframe bitmap and resource block pool parameters to create
% non-contiguous pools
newconfig.prb_Num_r12 = 6;
newconfig.prb_Start_r12 = 2;
newconfig.prb_End_r12 = 23;
newconfig.offsetIndicator_r12 = 0;
newconfig.subframeBitmap_r12 = '0101010000000000000000000000000000000000';
period.Config.sc_TF_ResourceConfig_r12 = newconfig;
displayPeriod(period);
snapnow;

Пулы подкадров и блоков ресурсов PSSCH

Параметризация и структура подкадра PSSCH и пула блоков ресурсов зависит от режима передачи.

Для режима 1 передачи пул подкадров PSSCH содержит все оставшиеся подкадры восходящей линии связи, которые начинаются непосредственно после последнего подкадра пула подкадров PSCCH. $l^{PSCCH}_{L_{PSCCH}-1}$Пул блоков ресурсов PSSCH содержит полную полосу пропускания передачи.$(0,\ldots, N_{RB}^{SL})$

Для режима передачи 2 сообщение RRC использует подход параметризации, аналогичный подходу PSCCH. Если сообщение пула связи содержит ue-SelectedResourceConfig-r12 затем UE находится в режиме 2 передачи и самостоятельно выбирает свои конечные ресурсы передачи из пулов ресурсов PSSCH. Эти пулы определяются с использованием другого экземпляра того же самого SL-TF-ResourceConfig-r12 набор параметров, используемый для структурирования пулов PSCCH.

ue-SelectedResourceConfig-r12 информационный элемент задается,

ue-SelectedResourceConfig-r12 ::= SEQUENCE {

    data-TF-ResourceConfig-r12              SL-TF-ResourceConfig-r12,
    trpt-Subset-r12                         SL-TRPT-Subset-r12  OPTIONAL  -- Need OP

}

Дополнительное trpt-Subset-r12 параметр представляет собой небольшую битовую карту (от 3 до 5 битов), которая используется для ограничения набора$I_{TRP}$ значений (индекс шаблона временных ресурсов), выбираемых UE. Это влияет на общее количество подкадров передачи, которые UE может выбрать из пула подкадров PSSCH, и, следовательно, на максимальное количество транспортных блоков, которые могут быть посланы в запланированный период.

Для пула подкадров PSSCH, subframeBitmap-r12 bitmap выбирает подкадры пула из набора всех подкадров восходящей линии связи, которые начинаются с номера подкадра, заданного offsetIndicator-r12 (относительно начала периода) и продолжить до конца периода. subframeBitmap-r12 битовую карту повторяют так, чтобы она была по меньшей мере такой же длинной, как набор субкадров восходящей линии связи, и используют для выбора окончательного пула субкадров PSSCH. Пул блоков ресурсов PSSCH определяется так же, как и для PSCCH, с использованием трех параметров, prb-Num-r12, prb-Start-r12 и prb-End-r12.

% Configure for transmission mode 1 (not UE selected).
% Note that the PSSCH resource pool (yellow) is always full band and
% includes all uplink subframes in the period starting immediately after
% the PSCCH pool (lighter blue)
period = PSCCHPeriod;
period.Config.UESelected = 'off';
displayPeriod(period);
snapnow;

% Change to TDD and note the subframe gaps in the period due to the
% downlink subframes
period.Config.DuplexMode = 'TDD';
displayPeriod(period);
snapnow;

% Change back to transmission mode 2 (UE selected) and FDD.
% Modify the PSSCH resource block pool parameters to create two distinct
% PRB bands
period.Config.UESelected = 'on';
period.Config.DuplexMode = 'FDD';
period.Config.ue_SelectedResourceConfig_r12.data_TF_ResourceConfig_r12.prb_Num_r12 = 10;
period.Config.ue_SelectedResourceConfig_r12.data_TF_ResourceConfig_r12.prb_Start_r12 = 2;
% Although the offset indicator is 0 relative to the start of the period,
% the leading 0's in the subframe bitmap create the gap between the period
% start and that of the PSSCH subframe pool
display(period.Config.ue_SelectedResourceConfig_r12.data_TF_ResourceConfig_r12);
displayPeriod(period);
snapnow;

% Increase the length of the period and note the gaps created in PSSCH
% subframe pool due to the repetition of the pattern of 0's in the
% configured subframe bitmap (40 bits) to cover the increased number of
% uplink subframes in the period.
period.Config.sc_Period_r12 = 160;  % 40,60,70,80,120,140,160,240,280,320 subframes, depending on duplexing config
displayPeriod(period);
snapnow;

  struct with fields:

            prb_Num_r12: 10
          prb_Start_r12: 2
            prb_End_r12: 24
    offsetIndicator_r12: 0
     subframeBitmap_r12: '0000000011111111111111111111111111111111'

Параллельная передача и динамическое планирование ресурсов

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

  • Режим передачи 1 - обслуживающий eNireB направляет ресурсы через сообщение формата DCI 5, отправленное в передающее UE.

  • Режим передачи 2 - передающее UE самостоятельно выбирает ресурсы в соответствии с правилами, направленными на минимизацию риска столкновения

В обоих случаях для управления фактическим выбором ресурсов используются одни и те же параметры физического уровня. Отличие состоит в том, что для режима 1 эти параметры обеспечиваются сетью, тогда как для режима 2 они выбираются пользовательским оборудованием случайным образом (TS 36.321, раздел 5.14.1.1 определяет - "случайным образом выбирать временные и частотные ресурсы для SL-SCH и SCI предоставления боковой линии связи из пула ресурсов, сконфигурированного верхними уровнями. Случайная функция должна быть такой, чтобы каждый из разрешенных вариантов выбора мог быть выбран с равной вероятностью ").

Параметры физического уровня:

  • Ресурс для значения PSCCH $n_{PSCCH}$() - подкадры и блоки ресурсов PSCCH

  • Индекс шаблона временных ресурсов $I_{TRP}$() - подкадры PSSCH

  • Параметры выделения ресурсов (RIV, биты скачкообразного изменения) - блоки ресурсов PSSCH

Выбор ресурсов для передачи PSCCH

Управляющая информация PSCCH, связанная с любой передачей данных PSSCH, посылается дважды в двух отдельных экземплярах PSCCH. Каждый PSCCH использует отдельный PRB, выбранный из пула блоков ресурсов PSCCH. Пара подкадров выбирается из пула подкадров PSCCH. Эти ресурсы PSCCH сигнализируются одним скалярным значением$n_{PSCCH}$ («Resource for PSCCH»). Две пары индексов субкадра и PRB выводятся в соответствии с TS 36.213, разделы 14.2.1.1 и 14.2.1.2. Диапазон допустимых значений:. $0 \leq n_{PSCCH} < \lfloor M^{PSCCH\_RP}_{RB} / 2 \rfloor \cdot L_{PSCCH}$Количество допустимых значений задается параметром NumPSCCHResource собственность.

% Create an example PSCCH period and observe the location of the PSCCH
% subframe and resource block pools. Note that the PSCCH subframe pool
% contains only 2 entries in this case so all of the pool subframes will
% be used
period = PSCCHPeriod
displayPeriod(period);
snapnow;

% Select a valid nPSCCH value (use the last value in the allowed range)
% and return the associated PSCCH subframe and PRB indices
dci.PSCCHResource = period.NumPSCCHResource-1;
[subframes1,prb1,selected1] = period.getPSCCHResources(dci)

% Let the function select an nPSCCH value at random, as required by
% the collision avoidance mechanism used in transmission mode 2
sci.PSCCHResource = [];
[subframes2,prb2,selected2] = period.getPSCCHResources(sci)
period = 

  PSCCHPeriod with properties:

            NSubframeBegin: 0
              PeriodLength: 40
                    TxMode: 'Mode2'
         PSCCHSubframePool: [3 4]
    PSCCHResourceBlockPool: [25x1 double]
          NumPSCCHResource: 24
         PSSCHSubframePool: [1x32 double]
    PSSCHResourceBlockPool: [25x1 double]
               AllowedITRP: [70x1 double]
             SyncSubframes: []
                    Config: [1x1 struct]

subframes1 =

     4     3


prb1 =

    11    23


selected1 =

    23


subframes2 =

     4     3


prb2 =

     9    21


selected2 =

    19

Подобно использованию PDCCH и DCI в нисходящей линии связи, пара экземпляров PSCCH несет сообщение формата 0 SCI, которое содержит информацию, используемую принимающими UE для декодирования связанной последовательности PSSCH. В кодировке SCI отсутствует маскирование CRC RNTI. Вместо этого принимающие UE используют идентификатор назначения группы, содержащийся в полезной нагрузке сообщения SCI, чтобы помочь отфильтровывать интересующие сообщения PSSCH (дополнительная фильтрация назначения также выполняется более высокими уровнями).

Сообщение формата 0 SCI

В версии 12 стандарта LTE указывается один формат SCI. Для получения дополнительной информации см. lteSCI. Формат SCI 0 определен в TS 36.212 раздел 5.4.3.1.1 следующими информационными полями:

- Frequency hopping flag - 1 бит, как определено в TS 36.213 раздел 14.1.1

- Resource block assignment and hopping resource allocation -$\lceil log_2(N^{SL}_{RB}(N^{SL}_{RB}+1)/2)\rceil$ биты

- Для скачкообразной перестройки PSSCH:

  • Hopping bits -$N_{SL\_hop}$ биты MSB используются для получения значения$\tilde{n}_{PRB}(i)$, указанного в TS 36.213 раздел 8.4

  • RIV -$( \lceil log_2(N^{SL}_{RB}(N^{SL}_{RB}+1)/2)\rceil )$ биты обеспечивают распределение ресурсов в подкадре

- Для не-скачкообразного PSSCH:

  • RIV -$( \lceil log_2(N^{SL}_{RB}(N^{SL}_{RB}+1)/2)\rceil - N_{SL\_hop})$ биты обеспечивают распределение ресурсов в субкадре, как определено в TS 36.213 раздел 8.1.1

- Time resource pattern - 7 бит, как определено в TS 36.213 раздел 14.1.1 ()$I_{TRP}$

- Modulation and coding scheme - 5 бит, как определено в TS 36.213 раздел 14.1.1 ()$I_{MCS}$

- Timing advance indication - 11 бит, как определено в TS 36.213 раздел 14.2.1

- Group destination ID - 8 бит, как определено более высокими уровнями ()$N^{SA}_{ID}$

% Display the SCI format 0 message field sizes for this example (5 MHz BW)
sci0 = lteSCI(period.Config,struct('SCIFormat','Format0','FreqHopping',1),'fieldsizes')
allocfields = sci0.Allocation

% Change BW to 10 MHz and notice the difference in resource field sizes
period.Config.NSLRB = 50;
sci0 = lteSCI(period.Config,struct('SCIFormat','Format0','FreqHopping',1),'fieldsizes')
allocfields = sci0.Allocation
sci0 = 

  struct with fields:

              SCIFormat: 'Format0'
            FreqHopping: 1
             Allocation: [1x1 struct]
    TimeResourcePattern: 7
              ModCoding: 5
            TimeAdvance: 11
                  NSAID: 8
                Padding: 0


allocfields = 

  struct with fields:

    HoppingBits: 1
            RIV: 8


sci0 = 

  struct with fields:

              SCIFormat: 'Format0'
            FreqHopping: 1
             Allocation: [1x1 struct]
    TimeResourcePattern: 7
              ModCoding: 5
            TimeAdvance: 11
                  NSAID: 8
                Padding: 0


allocfields = 

  struct with fields:

    HoppingBits: 2
            RIV: 9

Выбор ресурсов для передачи PSSCH

В случае PSSCH для определения временных и частотных ресурсов используются различные параметры. Это отличается от PSCCH, который сигнализирует о том, что подкадры и PRB должны использоваться одним значением.

Подкадры, связанные с передачей PSSCH, обозначаются индексом шаблона временных ресурсов. $I_{TRP}$Этот индекс используется для поиска растрового изображения из набора таблиц, причем выбор таблицы зависит от конфигурации дуплексирования. Выбранное растровое изображение обозначается как$({b'}_0,b'_1,\ldots,b'_{N_{TRP}-1})$$N_{TRP}$ 6,7 или 8 в зависимости от таблицы. Это растровое изображение повторяется для формирования расширенного растрового изображения$(b_0,b_1,\ldots,b_{L_{PSSCH}-1})$, которое охватывает весь пул субкадров PSSCH. Подкадры, используемые для передачи PSSCH, выбираются значениями 1 в этой расширенной битовой карте, чтобы дать окончательный набор подкадров, обозначенный где$(n^{PSSCH}_0, n^{PSSCH}_1,\ldots, n^{PSSCH}_{N_{PSSCH}-1})$ -$N_{PSSCH}$ количество подкадров, которые могут использоваться для передачи PSSCH в периоде PSCCH и которые также будут кратны 4. Это согласуется с тем фактом, что каждый транспортный блок, переданный в течение периода, будет послан четыре раза с использованием фиксированной последовательности RV HARQ = 0,2,3,1. В течение периода PSCCH столько запланированных четверных используется в качестве транспортных блоков, которые доступны для передачи в это время.

Если скачкообразная перестройка частоты активизирована, то блоки ресурсов, используемые в каждом из подкадров передачи, зависят от поля RIV и битов скачкообразной перестройки. Это в дополнение к полустатическому dataHoppingConfig-r12 параметры и зависимый пул блоков ресурсов. PRB будет затем зависеть от положения активного подкадра в пуле подкадров.

% Display the transmission resources used within the PSCCH/PSSCH resource
% pools. Turn PSSS/SSSS/PSBCH on for this example
period = PSCCHPeriod;
period.Config.SyncEnable = 'on';
period.Config.syncConfig.syncOffsetIndicator_r12 = 0;

% Define all the allocation control parameters, including an explicit PSCCH
% resource. Although in mode 2, this is effectively full DCI format 5
% parameterization, indicating SCI format 0 and PSCCH resource control
dci.PSCCHResource = 0;             % Select a specific PSCCH resource value
dci.TimeResourcePattern = 106;     % Select an unrestricted bitmap (all 1's)
dci.FreqHopping = 1;               % Configure frequency hopping with hopping type 2 (predefined sequence) and a single PRB allocation
dci.Allocation.HoppingBits = 3;    % Setting the value=3 will enable hopping type 2 for all BW (1 or 2 bits)

% Get the set of RIV that is associated with contiguous allocations within
% the current PSSCH resource pool. Set the first RIV which will be a single
% PRB allocation
[riv,range] = getAllowedRIV(period,dci);
dci.Allocation.RIV = riv(1);

% Display subframe indices and prb indices associated with the dynamic allocation
[subframes,prb,poolindices] = period.getPSSCHResources(dci)
% Display the transmission resources in addition to the pool positions
displayPeriod(period,dci);
snapnow;

% Display the RRC parameters that affect the PSSCH resource allocation and
% modify the RB offset to move the PRB allocation away from the PRB pool edges
period.Config.dataHoppingConfig_r12
period.Config.dataHoppingConfig_r12.numSubbands_r12 = 2;
period.Config.dataHoppingConfig_r12.rb_Offset_r12 = 4;
displayPeriod(period,dci);
snapnow;

% Display the UE selected (mode 2) PSCCH resource pool configuration then
% modify the PRB resource block pool parameters to created two distinct
% resource groups in the pool away from the band edges
dataresconfig = period.Config.ue_SelectedResourceConfig_r12.data_TF_ResourceConfig_r12
dataresconfig.prb_Start_r12 = 0;
dataresconfig.prb_End_r12 = 22;
dataresconfig.prb_Num_r12 = 8;
period.Config.ue_SelectedResourceConfig_r12.data_TF_ResourceConfig_r12 = dataresconfig;
% Display the updated resource pool and its effect on the transmission resources
displayPeriod(period,dci);
snapnow;

% Finally generate and plot the associated baseband waveform
figure
waveform = generateWaveform(period,dci);
plot(abs(waveform)); title('PSCCH period baseband waveform');
snapnow;
subframes =

  Columns 1 through 13

     8     9    10    11    12    13    14    15    16    17    18    19    20

  Columns 14 through 26

    21    22    23    24    25    26    27    28    29    30    31    32    33

  Columns 27 through 32

    34    35    36    37    38    39


prb =

  1x32 uint64 row vector

  Columns 1 through 15

   12   12   11   12   23   12    0    0    0   11   12   12   11   12   23

  Columns 16 through 30

   12    0    0    0   11   12   12   11   12   23   12    0    0    0   11

  Columns 31 through 32

   12   12


poolindices =

  Columns 1 through 13

     0     1     2     3     4     5     6     7     8     9    10    11    12

  Columns 14 through 26

    13    14    15    16    17    18    19    20    21    22    23    24    25

  Columns 27 through 32

    26    27    28    29    30    31

ans = 

  struct with fields:

    hoppingParameter_r12: 504
         numSubbands_r12: 2
           rb_Offset_r12: 0

dataresconfig = 

  struct with fields:

            prb_Num_r12: 13
          prb_Start_r12: 0
            prb_End_r12: 24
    offsetIndicator_r12: 0
     subframeBitmap_r12: '0000000011111111111111111111111111111111'

Приложение

В этом примере используется этот класс помощника.

Избранная библиография

3GPP ТС 36.101 «Радиопередача и прием пользовательского оборудования (UE)»

3GPP ТС 36.211 «Физические каналы и модуляция»

3GPP TS 36.212 «Мультиплексирование и канальное кодирование»

3GPP ТС 36.213 «Процедуры физического уровня»

3GPP TS 36.321 «Спецификация протокола управления доступом к среде (MAC)»

3GPP TS 36.331 «Спецификация протокола управления радиоресурсами (RRC)»