As
discussed in the post: Time Domain – Slots and Slot Formats, number of slots/symbols
available for transmission/reception varies depending upon the network
configuration. Therefore, it is important for the network to signal the UE
about the timing of data transmission/reception.
Signalling
of time-domain resources means, informing the UE about which slots/symbols the
data can be transmitted/received. Similar to LTE, NR resource allocation is done
either dynamically or in semi-persistent manner.
Dynamic
scheduling in the uplink is done using PDCCH DCI. For semi-persistent
scheduling, NR defines two mechanisms; one using PDCCH DCI (similar to LTE) and
the other one purely via RRC signalling (new in NR).
PDCCH
DCI is used for both dynamic and Semi-Persistent Scheduling (SPS) in the
downlink (similar to LTE).
Time-domain
PUSCH resource allocation is discussed in the post: PUSCH Resource Allocation in Time-Domain. In this post, downlink (PDSCH) resource allocation
in time-domain is discussed in detail.
2
PDSCH Resource Allocation in Time-Domain
2.1 Dynamic
Scheduling
For
more details on PDSCH time-domain resource allocation, refer to section 5.1.2.1
of 38.214.
In
NR, DCI formats 1_0 and 1_1 are used to dynamically allocate time-domain
resources for PDSCH. These DCI formats are thoroughly discussed in the post: DCI Formats in 5G NR.
In the case of dynamic scheduling, PDCCH
carrying DCI 1_0 and 1_1 are in general addressed to either C-RNTI or
MCS-C-RNTI. Other RNTIs such as SI-RNTI, P-RNTI, Temporary C-RNTI, and RA-RNTI
are also used for this purpose.
DCI
formats 1_0 and 1_1 carries 4-bit field named ‘time domain resource
assignment’ which points to one of the rows of a look-up table. How the UE
determines which look-up table to be used is discussed in section 2.1.2.
There
can be up to 16 rows in the look-up table and hence only 4-bits are used
for the field ‘time domain resource assignment’ and value ‘m’ for
this field points to row number ‘m+1’ within the look-up table.
Each row in the look-up table provides the following parameters;
-
slots
offset K0. This parameter is used to derive the slot in which
PDSCH reception occurs. When K0 = 0, PDSCH reception is
intended within the same slot where DCI is received. When allocation and PDSCH
transmission are contained in the same slot, it is referred to as
‘self-contained’ slot.
-
SLIV (jointly coded start and length indicator values), or
individual values for the start symbol ‘S’ and the allocation length ‘L’.
-
‘PDSCH
mapping type’ to be assumed on the PDSCH reception.
The
contents of the look-up table are summarised below;
Parameter
|
Explanation
|
K0
|
Used to derive the slot offset from the slot where DCI is received |
S
|
’S’ is the ‘start symbol’ -> First symbol in the slot in which PDSCH will be received |
L
|
Allocation length in number of OFDM symbols. |
SLIV
|
Start and Length values are jointly encoded to produce Start and length Indicator Value (SLIV) |
PDSCH mapping type
|
PDSCH mapping type (Type A or Type B) to be assumed in the PDSCH reception. |
The following figure illustrates an example with time domain resource assignment field in DCI 1_0/1_1 indicating (based on look-up table) K0 = 1, S = 4 and L = 7.
In
the above illustration, it is assumed that SCS for PDSCH and PDCCH are the
same.
It
is possible that network configures different SCS for PDCCH and PDSCH.
Determining slot offset based on just K0 is not sufficient if
SCS for PDCCH and PDSCH are different. In such cases, the slot where the
UE shall receive the PDSCH is calculated according to the below equation;
\[The\:slot\:number\:allocated\:for\:PDSCH\:=\:\Big \lfloor n.\dfrac{2^{\mu_{PDSCH}}}{2^{\mu_{PDCCH}}} \Big\rfloor + K_0\]
\[The\:slot\:number\:allocated\:for\:PDSCH\:=\:\Big \lfloor n.\dfrac{2^{\mu_{PDSCH}}}{2^{\mu_{PDCCH}}} \Big\rfloor + K_0\]
where
n is the slot with the scheduling DCI, K0 is based on
the numerology of PDSCH, and µPDSCH and µPDCCH
are the subcarrier spacing configurations for PDSCH and PDCCH, respectively.
Considering
same example from the above illustration, K0 = 1, S =
4, L = 7, µPDSCH = 2, and µPDCCH = 0
=> if the DCI is received in slot number 1 (using PDCCH SCS), the PDSCH
will be received in the slot number 5 (= 4+1 based on the above equation) using
PDSCH SCS. Note that in this example, there are 4 times more number of
slots with PDSCH SCS as compared to PDCCH SCS.
2.1.1 Valid
‘S’ and ‘L’ combinations:
Not
all start and length values are valid due to the fact that a single time-domain
resource allocation must be contained within a slot i.e., the allocation should
not cross the slot boundary.
Moreover,
the number of symbols in a slot varies with cyclic prefix which will also limit
number of allowed start and length combinations => for normal CP, a slot
contains 14 OFDM symbols and with extended CP, 12 OFDM symbols form a slot.
The
UE shall consider the S and L combinations defined in table below
as a valid PDSCH allocations. Note from column ‘S+L’ that the sum of
start symbol number and allocation length should not exceed 14 for normal CP
and 12 for extended CP.
PDSCH Mapping Type
|
Normal cyclic prefix
|
Extended cyclic prefix
|
||||
S
|
L
|
S+L
|
S
|
L
|
S+L
|
|
Type A
|
{0, 1, 2, 3} (Note1)
|
{3,…,14}
|
{3,…,14}
|
{0, 1, 2, 3} (Note1)
|
{3,…,12}
|
{3,…,12}
|
Type B
|
{0,…,12}
|
{2, 4, 7}
|
{2,…,14}
|
{0,…,10}
|
{2, 4, 6}
|
{2,…,12}
|
Note1: S = 3 is applicable only if dmrs-TypeA-Position = 3 |
There
are two types of PDSCH resource allocation tables (look-up tables);
1.
“default PDSCH
time domain allocation table”: There are a couple of pre-defined default tables
in 38.214, table 5.1.2.1.1-2, 5.1.2.1.1-4, 5.1.2.1.1-5 for normal CP and table 5.1.2.1.1-3
for extended CP.
2.
RRC configured table pdsch-TimeDomainAllocationList
sent in either pdsch-ConfigCommon (sent via SIB1 or dedicated RRC
signalling) or pdsch-Config (sent via dedicated RRC signalling)
The
UE will choose appropriate table based on several factors like which of the
above tables is configured in the UE, RNTI, SSB and CORESET
multiplexing pattern, search space type etc… Table 5.1.2.1.1-1 in 38.214
specifies the table selection criteria and is presented below for a quick
reference.
RNTI
|
PDCCH search space
|
SS/PBCH block and CORESET multiplexing pattern
|
pdsch-ConfigCommon includes pdsch- TimeDomain AllocationList
|
pdsch-Config includes pdsch-TimeDomain AllocationList
|
PDSCH time domain resource allocation to apply
|
SI-RNTI
|
Type0 common
|
1
|
N/A
|
N/A
|
Default A for normal CP
|
2
|
N/A
|
N/A
|
Default B
|
||
3
|
N/A
|
N/A
|
Default C
|
||
SI-RNTI
|
Type0A common
|
1
|
No
|
N/A
|
Default A
|
2
|
No
|
N/A
|
Default B
|
||
3
|
No
|
N/A
|
Default C
|
||
1,2,3
|
Yes
|
N/A
|
pdsch-TimeDomain AllocationList provided in pdsch-ConfigCommon
|
||
RA-RNTI,
TC-RNTI
|
Type1 common
|
1, 2, 3
|
No
|
N/A
|
Default A
|
1, 2, 3
|
Yes
|
N/A
|
pdsch-TimeDomain AllocationList provided in pdsch-ConfigCommon
|
||
P-RNTI
|
Type2 common
|
1
|
No
|
N/A
|
Default A
|
2
|
No
|
N/A
|
Default B
|
||
3
|
No
|
N/A
|
Default C
|
||
1,2,3
|
Yes
|
N/A
|
pdsch-TimeDomain AllocationList provided in pdsch-ConfigCommon
|
||
C-RNTI,
MCS-C-RNTI, CS-RNTI
|
Any common search space associated with
CORESET 0
|
1, 2, 3
|
No
|
N/A
|
Default A
|
1, 2, 3
|
Yes
|
N/A
|
pdsch-TimeDomain AllocationList provided in pdsch-ConfigCommon
|
||
C-RNTI,
MCS-C-RNTI,
CS-RNTI
|
Any common search space not associated with
CORESET 0
(or)
UE specific search space
|
1,2,3
|
No
|
No
|
Default A
|
1,2,3
|
Yes
|
No
|
pdsch-TimeDomainAllocationList provided in pdsch-ConfigCommon
|
||
1,2,3
|
No/Yes
|
Yes
|
pdsch-TimeDomainAllocationList provided in pdsch-Config
|
Notes
from the above table;
-
There
are 3 different default PDSCH time domain allocation tables; Default A,
Default B and Default C.
-
default
PDSCH time domain allocation table is chosen in cases where TimeDomainAllocationList
is not configured by either pdsch-ConfigCommon or
PDSCH-Config (for applicable cases).
-
If
available, TimeDomainAllocationList provided by pdsch-ConfigCommon is always used except for a case where the same list
is also provided by pdsch-Config and the
concerned search space is either UE-specific or common search space not
associated with CORESET0.
-
For
P-RNTI and SI-RNTI, the default table type depends upon SSB and CORESET
multiplexing pattern. pattern 1 => Default A, pattern 2 => Default
B, and for pattern 3 => Default C.
2.1.2.1 Default PDSCH time-domain allocation tables
Default
PDSCH time domain resource allocation tables are
presented in section 4 in this post.
2.1.2.2 TimeDomainAllocationList
TimeDomainAllocationList
is configured by either pdsch-ConfigCommon or pdsch-Config.
The
IE pdsch-TimeDomainResourceAllocation is used to configure a time-domain
relation between PDCCH and PDSCH. pdsch-TimeDomainResourceAllocationList contains
one or more (up to 16) of such pdsch-TimeDomainResourceAllocations.
The
network indicates in the DL assignment which of the configured time domain
allocations the UE shall apply for that DL assignment. Value 0 in the DCI field
refers to the first element in this list, value 1 in the DCI field refers to
the second element in this list, and so on.
The
bit width of the DCI field is based on the number of entries in the pdsch-TimeDomainResourceAllocationList.
pdsch-TimeDomainResourceAllocationList
IE structure is shown below. It contains K0,
PDSCH mapping type, and startSymbolAndLength (SLIV).
PDSCH-TimeDomainResourceAllocationList | |
PDSCH-TimeDomainResourceAllocationList | List from 1 up to 16 PDSCH-TimeDomainResourceAllocation |
PDSCH-TimeDomainResourceAllocation | |
k0 | INTEGER (0..32) |
mappingType | ENUMERATED {type A, type B} |
startSymbolAndLength | INTEGER (0..127) |
-
The
value of K0 ranges from 0 to 32, when K0 is
absent, the UE applies the value 0.
-
startSymbolAndLength
provides an
index giving valid combinations of start symbol and length (jointly encoded) as
start and length indicator (SLIV). The network configures the field so
that the allocation does not cross the slot boundary.
As
can be noted, in this option, the network doesn’t give individual values of
starting symbol ‘S’ and length value ‘L’, instead, a jointly
encoded value (SLIV) is provided.
The ‘S’ and ‘L’ values
allocated for the PDSCH are determined from the SLIV as shown below:
if
(L − 1) ≤ 7:
SLIV = 14.(L − 1) + S
else:
SLIV = 14⋅(14 − L + 1) + (14 − 1 − S)
where 0 <
L ≤ 14 − S
2.1.3 PDSCH
mapping type:
Refer
to section 7.4.1.1.2 from 38.211 for additional details.
PDSCH
mapping type defines the DM-RS configuration of PDSCH transmissions. Depending
upon the location of first DM-RS symbol, there are two mapping types defined; type
A and type B.
As
discussed already, time domain resource assignment field within the DCI
points to a row number within the look-up table and each row defines PDSCH
mapping type (either type A or type B) to be followed.
PDSCH
mapping type A:
In type A, DM-RS is mapped relative to the start
of the slot irrespective of which symbol in the slot the PDSCH
transmission starts.
The position of the first DM-RS symbol for type A is
configured by RRC via either MIB or via ServingCellConfigCommon (SIB1 or dedicated
signalling). The field dmrs-TypeA-Position is used for this
purpose. This field takes two values pos2 or pos3.
First symbol of DM-RS is located at either symbol 2 (pos2) or at symbol
3 (pos3) within the slot.
dmrs-TypeA-Position | ENUMERATED { pos2, pos3 } |
PDSCH
mapping type B:
In type B, DM-RS is mapped relative to the start
of the PDSCH allocation rather than start of the slot boundary. To
be precise, the DM-RS location is the first OFDM symbol where PDSCH reception
starts.
In this case, as the DM-RS start symbol is fixed, the
network need not explicitly provide configuration for type B.
Valid
S and L combinations:
‘S’
and ‘L’ values are defined separately for each PDSCH mapping type
because, not all combinations are valid for a given mapping type.
PDSCH Mapping Type
|
Normal cyclic prefix
|
Extended cyclic prefix
|
||||
S
|
L
|
S+L
|
S
|
L
|
S+L
|
|
Type A
|
{0, 1, 2, 3} (Note1)
|
{3,…,14}
|
{3,…,14}
|
{0, 1, 2, 3} (Note1)
|
{3,…,12}
|
{3,…,12}
|
Type B
|
{0,…,12}
|
{2, 4, 7}
|
{2,…,14}
|
{0,…,10}
|
{2, 4, 6}
|
{2,…,12}
|
Note1: S = 3 is applicable only if dmrs-TypeA-Position = 3 |
2.2 Semi-Persistent
Scheduling
For
downlink SPS, PDCCH carrying DCI 1_0 and 1_1 is addressed to Configured
Scheduling-RNTI (CS-RNTI). In LTE, SPS-C-RNTI is used
for this purpose. The assignment received using CS-RNTI is referred to as configured
downlink assignment.
Similar
to downlink SPS in LTE, configured downlink assignment in NR is given by
the network to the UE who stores this assignment and uses it according to the
pre-configured timing given by the network.
Configured
downlink assignment will be discussed thoroughly in a separate post.
The
time-domain resource allocation is done using PDCCH DCI (format 1_0 or 1_1)
addressed to CS-RNTI. Even for re-transmissions, PDCCH DCI 1_0 or 1_1 addressed
to CS-RNTI is used.
Once
configured using DCI 1_0 or 1_1, the UE periodically uses same time-domain
resources until the configured downlink assignment is re-activated (kind of
reconfiguration at MAC level).
As
the time-domain resource allocation is done using DCI 1_0 or 1_1 (similar to
dynamic allocation), all the discussions in section 2.1 are valid for downlink
SPS as well.
3
Slot Aggregation:
In
a cell edge scenario, the probability of incorrectly decoding PDSCH is more, so
instead of waiting confirmation from the UE, it would be beneficial to transmit
PDSCH in consecutive slots.
With
slot aggregation data transmission can span over multiple slots i.e., the network
would transmit same TB across a pre-configured number of consecutive slots.
In
the first step, the network configures slot aggregation via RRC signalling; pdsch-AggregationFactor
within PDSCH-Config IE is used for dynamic and semi-persistent scheduling.
This field can take values of 2, 4 or 8 repetitions as shown below;
pdsch-AggregationFactor | ENUMERATED { n2, n4, n8 } |
In the second step, network sends DCI format 1_1 on PDCCH with CRC scrambled with C-RNTI, MCS-C-RNTI, or CS-RNTI.
Once
slot aggregation is activated, the UE follows the below procedure;
-
When
the MAC entity is configured with pdsch-AggregationFactor > 1, the
parameter pdsch-AggregationFactor provides the number of transmissions
of a TB within a bundle
-
After
the initial transmission, pdsch-AggregationFactor – 1 HARQ
retransmissions follow within a bundle.
-
Same
HARQ process is used for each transmission that is part of the same bundle.
-
The
UE may expect the same symbol allocation across the PDSCH-AggregationFactor consecutive
slots i.e., the network shall repeat the same TB across the PDSCH-AggregationFactor
consecutive slots applying the same symbol allocation in each slot.
-
The
redundancy version to be applied on the nth transmission
occasion of the TB, where n = 0, 1, ... (PDSCH-AggregationFactor
- 1), is determined according to table below.
rvid indicated by the DCI scheduling the PDSCH
|
rvid to be applied to nth transmission occasion
|
|||
n mod 4 = 0
|
n mod 4 = 1
|
n mod 4 = 2
|
n mod 4 = 3
|
|
0
|
0
|
2
|
3
|
1
|
2
|
2
|
3
|
1
|
0
|
3
|
3
|
1
|
0
|
2
|
1
|
1
|
0
|
2
|
3
|
- For the case of
SPS, except for activation, there is no PDCCH involved for scheduling
PDSCH. In this case, the UE should assume rvid = 0 for
initial transmission (n mod 4) and follow the pattern {0, 2, 3, 1} for
retransmissions (1st row in the above table).
Note
that when slot aggregation is active, the PDSCH is limited to a single
transmission layer.
The
following example illustrates PDSCH slot aggregation;
4
Default PDSCH time-domain allocation tables:
Default PDSCH time domain resource allocation A
|
|||||||
Row index
|
dmrs-TypeA-Position
|
PDSCH mapping type
|
K0
|
Normal CP
|
Extended CP
|
||
S
|
L
|
S
|
L
|
||||
1
|
2
|
Type A
|
0
|
2
|
12
|
2
|
6
|
3
|
Type A
|
0
|
3
|
11
|
3
|
5
|
|
2
|
2
|
Type A
|
0
|
2
|
10
|
2
|
10
|
3
|
Type A
|
0
|
3
|
9
|
3
|
9
|
|
3
|
2
|
Type A
|
0
|
2
|
9
|
2
|
9
|
3
|
Type A
|
0
|
3
|
8
|
3
|
8
|
|
4
|
2
|
Type A
|
0
|
2
|
7
|
2
|
7
|
3
|
Type A
|
0
|
3
|
6
|
3
|
6
|
|
5
|
2
|
Type A
|
0
|
2
|
5
|
2
|
5
|
3
|
Type A
|
0
|
3
|
4
|
3
|
4
|
|
6
|
2
|
Type B
|
0
|
9
|
4
|
6
|
4
|
3
|
Type B
|
0
|
10
|
4
|
8
|
2
|
|
7
|
2
|
Type B
|
0
|
4
|
4
|
4
|
4
|
3
|
Type B
|
0
|
6
|
4
|
6
|
4
|
|
8
|
2,3
|
Type B
|
0
|
5
|
7
|
5
|
6
|
9
|
2,3
|
Type B
|
0
|
5
|
2
|
5
|
2
|
10
|
2,3
|
Type B
|
0
|
9
|
2
|
9
|
2
|
11
|
2,3
|
Type B
|
0
|
12
|
2
|
10
|
2
|
12
|
2,3
|
Type A
|
0
|
1
|
13
|
1
|
11
|
13
|
2,3
|
Type A
|
0
|
1
|
6
|
1
|
6
|
14
|
2,3
|
Type A
|
0
|
2
|
4
|
2
|
4
|
15
|
2,3
|
Type B
|
0
|
4
|
7
|
4
|
6
|
16
|
2,3
|
Type B
|
0
|
8
|
4
|
8
|
4
|
Default PDSCH time domain resource allocation B
|
|||||
Row index
|
dmrs-TypeA-Position
|
PDSCH mapping type
|
K0
|
S
|
L
|
1
|
2,3
|
Type B
|
0
|
2
|
2
|
2
|
2,3
|
Type B
|
0
|
4
|
2
|
3
|
2,3
|
Type B
|
0
|
6
|
2
|
4
|
2,3
|
Type B
|
0
|
8
|
2
|
5
|
2,3
|
Type B
|
0
|
10
|
2
|
6
|
2,3
|
Type B
|
1
|
2
|
2
|
7
|
2,3
|
Type B
|
1
|
4
|
2
|
8
|
2,3
|
Type B
|
0
|
2
|
4
|
9
|
2,3
|
Type B
|
0
|
4
|
4
|
10
|
2,3
|
Type B
|
0
|
6
|
4
|
11
|
2,3
|
Type B
|
0
|
8
|
4
|
12 (Note1)
|
2,3
|
Type B
|
0
|
10
|
4
|
13 (Note1)
|
2,3
|
Type B
|
0
|
2
|
7
|
14 (Note1)
|
2
|
Type A
|
0
|
2
|
12
|
3
|
Type A
|
0
|
3
|
11
|
|
15
|
2,3
|
Type B
|
1
|
2
|
4
|
16
|
Reserved
|
||||
Note1: If the PDSCH was scheduled with SI-RNTI in PDCCH Type0 common search space, the UE may assume that this PDSCH resource allocation is not applied |
Default PDSCH time domain resource allocation C
|
|||||
Row index
|
dmrs-TypeA-Position
|
PDSCH mapping type
|
K0
|
S
|
L
|
1 (Note1)
|
2,3
|
Type B
|
0
|
2
|
2
|
2
|
2,3
|
Type B
|
0
|
4
|
2
|
3
|
2,3
|
Type B
|
0
|
6
|
2
|
4
|
2,3
|
Type B
|
0
|
8
|
2
|
5
|
2,3
|
Type B
|
0
|
10
|
2
|
6
|
Reserved
|
||||
7
|
Reserved
|
||||
8
|
2,3
|
Type B
|
0
|
2
|
4
|
9
|
2,3
|
Type B
|
0
|
4
|
4
|
10
|
2,3
|
Type B
|
0
|
6
|
4
|
11
|
2,3
|
Type B
|
0
|
8
|
4
|
12
|
2,3
|
Type B
|
0
|
10
|
4
|
13 (Note1)
|
2,3
|
Type B
|
0
|
2
|
7
|
14 (Note1)
|
2
|
Type A
|
0
|
2
|
12
|
3
|
Type A
|
0
|
3
|
11
|
|
15 (Note1)
|
2,3
|
Type A
|
0
|
0
|
6
|
16 (Note1)
|
2,3
|
Type A
|
0
|
2
|
6
|
Note1: The UE may assume that this PDSCH resource allocation is not used, if the PDSCH was scheduled with SI-RNTI in PDCCH Type0 common search space |
Reference: 3GPP TS 38.211, 38.212, 38.213, 38.214, and
38.331