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
- Applicable PUSCH Time Domain Resource Allocation
- What changed after Release 15
- Reference
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 >

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 >

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 >

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 >

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 >

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 >

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 >

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 >

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 >

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 Δ >

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.