В этом примере показано, как непрямые пулы ресурсов непосредственной связи и периоды PSCCH заданы и параметрированы. Это показывает отношение между полустатическими параметрами пула RRC и структурой периода PSCCH. Это также показывает, как динамические параметры планирования (DCI и SCI) для режима передачи 1 и режима 2 влияют на итоговый выбор ресурса передачи.
Релиз 12 3GPP стандарт LTE ввел новый интерфейс (D2D) от устройства к устройству, нацеленный, в основном, на разрешение LTE поддержать системы связи общественной безопасности. В терминах полного LTE ЗАПУСТИЛСЯ, этот интерфейс включает два вида основанных на близости сервисов (известный в 3GPP как ProSe):
Непосредственная связь ProSe, где прямой UE нескольким коммуникация UE (коммуникация группы) возможна без передачи данных на восходящем канале или нисходящем канале. Это позволено для приложений общественной безопасности только и поддерживает один или несколько UEs, являющиеся из покрытия (сеть и/или частота).
Прямое Открытие ProSe, где бизнес-услуги могут быть включены для UEs, которые являются друг близко к другу. Эта функция может быть использована для коммерческого применения (например, сервисная реклама) в случае, когда оба UEs находятся в сетевом покрытии.
В терминах более низкого стека интерфейс LTE D2D называется непрямым и, в терминах архитектуры системы, это известно как PC5 (в отличие от интерфейса UE/eNodeB, Uu). Это включает набор новых физических сигналов, физических каналов, транспортных каналов и сообщений. Поскольку непрямое передается UE, это тесно связано с восходящим каналом, но это также включает некоторые аспекты нисходящей сигнализации синхронизации и управления. Один значительный результат этого проекта состоит в том, что UE должен будет теперь получить и сгенерировать (непрямой) восходящий стиль.
Этот пример фокусируется только на прямых коммуникациях, где соответствующие непрямые каналы физического уровня и сигналы,
Физический Sidelink разделяемый канал (PSSCH)
Физический канал управления Sidelink (PSCCH) (несущий SCI)
Физический канал телевизионного вещания Sidelink (PSBCH)
Sidelink разделяемый канал (SL-SCH)
Канал телевизионного вещания Sidelink (SL-BCH) (несущий MIB-SL)
Сигналы синхронизации Sidelink
В дополнение к вышеупомянутым каналам новые процедуры физического уровня были введены как описано в Разделе TS 36.213 14. Ключевой концепцией в этих процессах является концепция пула ресурсов, который задает подмножество доступных подкадров и блоков ресурса или для непрямой передачи или для приема. Коммуникация Sidelink является полудуплексной схемой, и UE может быть сконфигурирован с несколькими пулами ресурсов передачи, и несколько получают пулы ресурсов. Пулы ресурсов сконфигурированы полустатически обменом сообщениями слоя 3. Когда данные должны быть отправлены с помощью пула ресурсов, фактические ресурсы передачи выбраны динамически из пула с помощью одного из двух различных режимов:
Режим Transmission 1 - обслуживание eNodeB задает ресурсы с помощью сообщения формата 5 DCI, отправленного в передачу UE. Этот режим требует, чтобы UE был полностью соединен с сетью (состояние RRC_CONNECTED).
Режим Transmission 2 - передача UE самовыбирает ресурсы согласно правилам, нацеленным на минимизацию риска столкновения. Этот режим может использоваться, когда UE соединяется, неактивен (RRC_IDLE) или покрытие из сети.
Непрямой пул ресурсов непосредственной связи сконфигурирован на полустатической основе с помощью слоя 3 SL-CommResourcePool
Сообщение RRC (Раздел TS 36.331 6.3.8). Слой 1 физические ресурсы (подкадры и блоки ресурса) сопоставленный с пулом разделен в последовательность повторяющихся 'гиперкадров', известных как периоды PSCCH. Это - стандартизированный термин, использованный в TS 36.213, но это также иногда упоминается как SA (планирующий присвоение) период или SC (непрямое управление) период. В период PSCCH существуют отдельные пулы подкадра и пулы блока ресурса для управления (PSCCH) и данных (PSSCH). Подкадры PSCCH всегда предшествуют тем для передачи PSSCH. Это походит на размещение символа PDCCH и символов PDSCH OFDM в одном нисходящем подкадре, где область управления предшествует части данных. 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 (eNodeB запланировано). Для получения дополнительной информации смотрите следующее 3GPP документы технического стандарта: * Раздел TS 36.331 6.3.8 для определения всех непрямых похожих сообщений и информационный элементов, * Раздел TS 36.331 5.10 для слоя 3 непрямые процедуры, * Раздел TS 36.213 14 для слоя 1 непрямые процедуры.
Этот пример использует класс Handle MATLAB под названием PSCCHPeriod, чтобы представлять структуру периода PSCCH для одного непрямого прямого коммуникационного пула ресурсов. Объекты типа, PSCCHPeriod может быть создан с помощью структуры параметра, которая комбинирует общие параметры передачи, как пропускная способность передачи и режим дуплекса, с полустатичным слоем 3 параметра RRC, в основном, от 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 параметрируется 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 относительно № 0 SFN/DFN. Первый подкадр i-th 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
информационный элемент. Поскольку пул подкадра, первые восходящие подкадры в период PSCCH выбраны, где длина битового массива. Эти подкадры обозначаются своими индексами. Пул подкадра PSCCH затем включает восходящие подкадры, сопоставленные с 1's в битовом массиве, и получившийся пул обозначается тем, где количество подкадров в пуле.
% 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
(prb-Start-r12
+ prb-Num-r12
) и (prb-End-r12
- prb-Num-12
) prb-End-r12
. Получившиеся индексы обозначаются тем, где количество блоков в пуле ресурсов. Полосы могут перекрыться, чтобы сформировать один непрерывный блок.
% 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 и пула блока ресурса зависят от режима передачи.
Для режима передачи 1, пул подкадра PSSCH включает все остающиеся восходящие подкадры, которые сразу запускаются после последнего подкадра пула подкадра PSCCH. Пул блока ресурса PSSCH включает полную пропускную способность передачи.
Для режима передачи 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 битов), который используется, чтобы ограничить набор (индекс шаблона ресурса времени) значения, можно выбрать UE. Это влияет на общее количество подкадров передачи, которые UE может выбрать из пула подкадра PSSCH и поэтому максимального количества транспортных блоков, которые могут быть отправлены в запланированный период.
Для пула подкадра PSSCH, subframeBitmap-r12
битовый массив выбирает подкадры пула из набора всех восходящих подкадров, которые запускаются в номере подкадра, данном 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;
prb_Num_r12: 10 prb_Start_r12: 2 prb_End_r12: 24 offsetIndicator_r12: 0 subframeBitmap_r12: '0000000011111111111111111111111111111111'
Аналогичный описанному выше, когда данные должны быть отправлены с помощью пула ресурсов, фактические ресурсы передачи выбраны динамически из пула с помощью одного из двух различных режимов,
Режим Transmission 1 - обслуживание eNodeB направляет ресурсы с помощью сообщения формата 5 DCI, отправленного в передачу UE
Режим Transmission 2 - передача UE самовыбирает ресурсы согласно правилам, нацеленным на минимизацию риска столкновения
В обоих случаях те же параметры физического уровня используются, чтобы справиться с фактическим выбором ресурса. Различие, являющееся этим, для режима 1, эти параметры обеспечиваются сетью, тогда как, для режима 2, они выбраны случайным образом UE (Раздел TS 36.321 5.14.1.1 задает - "случайным образом выбирают время и ресурсы частоты для SL-SCH и SCI непрямого предоставления от пула ресурсов, сконфигурированного верхними уровнями. Случайная функция должна быть такова, что каждый из позволенных выборов может быть выбран с равной вероятностью".)
Параметры физического уровня:
Ресурс для значения PSCCH () - подкадры PSCCH и блоки ресурса
Индекс Шаблона Ресурса времени () - подкадры PSSCH
Параметры Распределения ресурсов (RIV, скачкообразно перемещая биты) - блоки ресурса PSSCH
Управляющая информация PSCCH, сопоставленная с любой передачей данных PSSCH, отправляется дважды на двух отдельных экземплярах PSCCH. Каждый PSCCH использует различный один PRB, выбранный из пула блока ресурса PSCCH. Пара подкадров выбрана из пула подкадра PSCCH. Эти ресурсы PSCCH сообщены одним скалярным значением ("Ресурс для PSCCH"). Два подкадра и пары индекса PRB выведены согласно Разделам TS 36.213 14.2.1.1 и 14.2.1.2. Область значений позволенных значений. Количество позволенных значений дано свойством 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, которое содержит информацию, используемую получением UEs, чтобы декодировать связанную последовательность PSSCH. В кодировании SCI нет никакого маскирования CRC RNTI. Вместо этого UEs получения используют целевой ID группы, содержавший в полезной нагрузке сообщения SCI, чтобы помочь отфильтровать коммуникации PSSCH интереса (дополнительная целевая фильтрация также сделана более высокими слоями).
Сообщение Формата 0 SCI
Релиз 12 стандарта LTE задает один формат SCI (для получения дополнительной информации см. lteSCI. Формат 0 SCI задан в Разделе 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
- биты
- Для скачкообразного движения PSSCH:
Hopping bits
- Биты MSB используются, чтобы получить значение, как обозначено в разделе TS 36.213 8.4
RIV
- биты обеспечивают распределение ресурсов в подкадре
- Для нескачкообразного движения PSSCH:
RIV
- биты обеспечивают распределение ресурсов в подкадре, как задано в разделе TS 36.213 8.1.1
- Time resource pattern
- 7 битов, как задано в разделе TS 36.213 14.1.1 ()
- Modulation and coding scheme
- 5 битов, как задано в разделе TS 36.213 14.1.1 ()
- Timing advance indication
- 11 битов, как задано в разделе TS 36.213 14.2.1
- Group destination ID
- 8 битов, как задано более высокими слоями ()
% 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 различные параметры используются, чтобы задать ресурсы частоты и время. Это отличается от PSCCH, который сигнализирует, чтобы подкадры и PRB использовались одним значением.
Подкадры, сопоставленные с передачей PSSCH, обозначаются индексом шаблона ресурса времени. Этот индекс используется, чтобы искать битовый массив от набора таблиц с выбором таблицы, являющейся зависящим от настройки дуплекса. Выбранное растровое изображение обозначается тем, где 6,7 или 8 в зависимости от таблицы. Этот битовый массив повторяется, чтобы сформировать расширенный битовый массив, который покрывает целый пул подкадра PSSCH. Подкадры, используемые в передаче PSSCH, выбраны этим 1 значением в этом расширенном битовом массиве, чтобы дать итоговый набор подкадра, обозначенный тем, где количество подкадров, которые могут использоваться в передаче PSSCH в период PSCCH и которые будут также кратными 4. Это выравнивается с тем, что каждый транспортный блок, переданный в период, будет отправлен четыре раза с помощью фиксированной последовательности HARQ RV = 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 TS 36.101 "Передача радио оборудования пользователя (UE) и прием"
3GPP TS 36.211 "Физические каналы и модуляция"
3GPP TS 36.212 "Мультиплексирование и кодирование канала"
3GPP TS 36.213 "Процедуры физического уровня"
3GPP TS 36.321 "Спецификация протокола Среднего управления доступом (MAC)"
3GPP TS 36.331 "Спецификация протокола Радио-управления ресурсами (RRC)"