5G/NR - Applicable Time Domain Allocation

 

 

 

Applicable Time Domain Allocation

PDSCH and PUSCH scheduling is done by the combination of many different factors summarizied at Scheduling : Overview page. But most of those factors are optional parameters which can be omitted. If any of those parameters are omitted (not configured), at set of predefined scheduling parameters (called 'Default' parameter). This page shows those default parameter sets for various cases.

Applicable PDSCH Time Domain Resource Allocation 

The tables in this section shows the set of default parameters that are used for PDSCH scheduling. A default is what applies when nothing was configured. These tables therefore matter most before the UE has a dedicated configuration. The first one picks which of the other four is used.

This is the table that chooses between the four that follow. A row is matched from the left. The RNTI comes first, then the PDCCH search space and the multiplexing pattern. Whether an allocation list was configured is the last input. The rightmost column holds the answer.

< 38.214 v15.3 - Table 5.1.2.1.1-1: Applicable PDSCH time domain resource allocation >

38.214 Table 5.1.2.1.1-1, applicable PDSCH time domain resource allocation. Columns are RNTI, PDCCH search space, SS/PBCH block and CORESET multiplexing pattern, whether pdsch-ConfigCommon includes pdsch-TimeDomainAllocationList, whether pdsch-Config includes it, and the allocation to apply. Rows cover SI-RNTI, RA-RNTI, TC-RNTI, P-RNTI, C-RNTI, MCS-C-RNTI and CS-RNTI

 

Sixteen rows, each giving a start symbol S and a length L in symbols. Rows 1 to 7 carry two variants, one for dmrs-TypeA-Position 2 and one for position 3. K0 is 0 in every row of this table, so the PDSCH stays in the slot that scheduled it.

< 38.214 v15.3 - Table 5.1.2.1.1-2: Default PDSCH time domain resource allocation A for normal CP >

38.214 Table 5.1.2.1.1-2, default PDSCH time domain resource allocation A for normal CP. Sixteen rows of dmrs-TypeA-Position, PDSCH mapping type, K0, S and L, with K0 zero throughout

 

The same sixteen rows for the extended cyclic prefix. A slot holds twelve symbols here rather than fourteen, so the lengths are shorter. Row 1 gives a length of 6 where the normal CP table above gives 12.

< 38.214 v15.3 - Table 5.1.2.1.1-3: Default PDSCH time domain resource allocation A for extended CP >

38.214 Table 5.1.2.1.1-3, default PDSCH time domain resource allocation A for extended CP. Sixteen rows in the same columns as the normal CP table, with shorter lengths

 

Fifteen usable rows and one Reserved. Every row is PDSCH mapping type B except row 14, which is type A and carries two variants. Rows 6 and 7 are the only rows in any of these tables with K0 set to 1.

< 38.214 v15.3 - Table 5.1.2.1.1-4: Default PDSCH time domain resource allocation B >

38.214 Table 5.1.2.1.1-4, default PDSCH time domain resource allocation B. Fifteen usable rows with row 16 Reserved, K0 zero or one, and a note that the allocation may be assumed not applied when the PDSCH was scheduled with SI-RNTI in Type0 common search space

 

Rows 6 and 7 are Reserved in this table, so it offers fourteen usable rows rather than fifteen. Row 14 is again the type A exception. Several rows carry a note about the SI-RNTI case in the Type0 common search space.

< 38.214 v15.3 - Table 5.1.2.1.1-5: Default PDSCH time domain resource allocation C >

38.214 Table 5.1.2.1.1-5, default PDSCH time domain resource allocation C. Rows 6 and 7 are Reserved, and a note covers the SI-RNTI case in Type0 common search space

  • Three inputs pick the table : the RNTI, the PDCCH search space, and whether pdsch-TimeDomainAllocationList was configured. A fourth column adds the SS/PBCH and CORESET multiplexing pattern.
  • A configured list takes precedence : where the list is present, the last column names it rather than a default. The defaults cover only the unsignalled case.
  • The multiplexing pattern chooses A, B or C : pattern 1 gives Default A, 2 gives B and 3 gives C. That holds in the Type0 and Type0A common search spaces.
  • dmrs-TypeA-Position splits a row in two : the first rows of Default A carry one value for position 2 and another for position 3. The start symbol has to clear the DMRS.
  • Not every row is usable : row 16 of Default B is Reserved, and rows 6 and 7 of Default C are. A four bit index does not reach sixteen live rows.
  • K0 is almost always zero : every row of Default A carries K0 = 0. Only rows 6 and 7 of Default B use K0 = 1.

Applicable PUSCH Time Domain Resource Allocation

The tables in this section shows the set of default parameters that are used for PUSCH scheduling. The uplink follows the same shape as the downlink, with one difference. The K2 column does not hold a number. The two small tables at the end are what turn it into one.

 

The uplink selection table is shorter than the downlink one, because it has no multiplexing pattern column. Its first block covers PUSCH scheduled by a MAC RAR, which is the Msg3 case. The remaining blocks turn on the search space and the configured list.

< 38.214 v15.3 - Table 6.1.2.1.1-1: Applicable PUSCH time domain resource allocation >

38.214 Table 6.1.2.1.1-1, applicable PUSCH time domain resource allocation. Columns are RNTI, PDCCH search space, whether pusch-ConfigCommon includes pusch-TimeDomainAllocationList, whether pusch-Config includes it, and the allocation to apply

 

Sixteen rows for the uplink, in four columns rather than five. The K2 column holds j, j+1, j+2 or j+3 instead of a number, and the two small tables further down resolve it. Most rows are mapping type A starting at symbol 0.

< 38.214 v15.3 - Table 6.1.2.1.1-2: Default PUSCH time domain resource allocation A for normal CP >

38.214 Table 6.1.2.1.1-2, default PUSCH time domain resource allocation A for normal CP. Sixteen rows of PUSCH mapping type, K2, S and L, where K2 is written as j, j+1, j+2 or j+3 rather than as a number

 

The extended cyclic prefix version of the same sixteen rows. The K2 column is unchanged, and only the lengths differ. Row 1 gives a length of 8 where the normal CP table above gives 14.

< 38.214 v15.3 - Table 6.1.2.1.1-3: Default PUSCH time domain resource allocation A for extended CP >

38.214 Table 6.1.2.1.1-3, default PUSCH time domain resource allocation A for extended CP, in the same columns as the normal CP table

 

Four rows, one per subcarrier spacing configuration. This is what turns the j in the K2 column above into a number of slots. Configurations 0 and 1 share the same value, and the value rises from there.

< 38.214 v15.3 - Table 6.1.2.1.1-4: Definition of value j >

38.214 Table 6.1.2.1.1-4, definition of value j. Subcarrier spacing configuration 0 and 1 both give j equal to 1, configuration 2 gives 2 and configuration 3 gives 3

 

The same four rows for a second value. 38.214 defines delta in this clause beside j, and the values rise with the subcarrier spacing in the same direction.

< 38.214 v15.3 -Table 6.1.2.1.1-5: Definition of value Δ >

38.214 Table 6.1.2.1.1-5, definition of value delta. Subcarrier spacing configuration 0 gives 2, configuration 1 gives 3, configuration 2 gives 4 and configuration 3 gives 6

  • The selection has one column fewer : the uplink table drops the multiplexing pattern. RNTI, search space and the configured list are what remain.
  • K2 is written as j, not as a number : the rows of Default A carry j, j+1, j+2 or j+3. The numerology fixes j.
  • Table 6.1.2.1.1-4 turns j into a number : configurations 0 and 1 both give j = 1. Configuration 2 gives 2, and configuration 3 gives 3.
  • Higher numerology means more slots of delay : a slot is shorter at a wider spacing. The same preparation time then spans more slots.
  • Table 6.1.2.1.1-5 defines a second value : delta is 2, 3, 4 and 6 across the four subcarrier spacing configurations.
  • The Msg3 grant is a row in the same table : the first block covers PUSCH scheduled by a MAC RAR. A UE with no configuration can still transmit.

What changed after Release 15

The screenshots above are taken from 38.214 v15.3, and the tables they show still carry the same numbers today. What changed is not the default rows but the selection in front of them. Release 15 had one selection table per direction, and there are now three for the downlink and four for the uplink.

The reason is the DCI formats added after Release 15. A compact or multi-cell format reads its own configuration parameters, so it needs its own selection table. Each new format got a table of its own rather than a row in the existing one.

Table

Direction

What it covers

5.1.2.1.1-1

PDSCH

DCI formats 1_0, 1_1, 4_0, 4_1 and 4_2. The screenshot above is the Release 15 form of this table, which covered every downlink format there was.

5.1.2.1.1-1A

PDSCH

DCI format 1_2.

5.1.2.1.1-1B

PDSCH

DCI format 1_3.

6.1.2.1.1-1

PUSCH

Common search space, and DCI format 0_0 in UE specific search space.

6.1.2.1.1-1A

PUSCH

DCI format 0_1 in UE specific search space, scrambled with C-RNTI, MCS-C-RNTI, CS-RNTI or SP-CSI-RNTI.

6.1.2.1.1-1B

PUSCH

DCI format 0_2 in UE specific search space, scrambled with C-RNTI, MCS-C-RNTI, CS-RNTI or SP-CSI-RNTI.

6.1.2.1.1-1C

PUSCH

DCI format 0_3 in UE specific search space, scrambled with C-RNTI or MCS-C-RNTI.

One consequence matters when reading a live log. Finding the applicable allocation now needs the DCI format first, because the format decides which selection table applies. The screenshots above cover only the formats in the first row of the list.

  • The default tables are unchanged in number : Default A, B and C are still tables 5.1.2.1.1-2 through 5.1.2.1.1-5.
  • The original selection tables were narrowed, not replaced : Table 5.1.2.1.1-1 now reads for DCI formats 1_0, 1_1, 4_0, 4_1 and 4_2. The Release 15 form carried no qualifier.
  • Two tables were added for the downlink : Table 5.1.2.1.1-1A covers DCI format 1_2 and Table 5.1.2.1.1-1B covers DCI format 1_3.
  • Three were added for the uplink : Tables 6.1.2.1.1-1A, 1B and 1C cover formats 0_1, 0_2 and 0_3.
  • The uplink tables name the RNTI as well as the format : the 0_1 and 0_2 tables are scoped to C-RNTI, MCS-C-RNTI, CS-RNTI and SP-CSI-RNTI. The 0_3 table names only the first two.

Reference

[1] 38.214 - 5G; NR; Physical layer procedures for data. Clause 5.1.2.1.1 for PDSCH and clause 6.1.2.1.1 for PUSCH.

[2] 38.331 - 5G; NR; Radio Resource Control (RRC); Protocol specification. The fields pdsch-TimeDomainAllocationList and pusch-TimeDomainAllocationList.