5G/NR - PDSCH Home : www.sharetechnote.com |
||||||||||||||||||
PDSCH (Physical Data Shared Channel)
This page is about the process of converting user data into PDSCH data and transmit it through each transmission antenna. This would be one of the most complicated process in NR process and a lot of factors are involved in this process. Followings are those factors getting involved in this process. The critical (core part) is Transport Process and DCI and RRC is to provide (configure) some parameters for the transport process. In LTE, most of the transport parameters are fixed or automatically determined by transport process algorithm and only small numbers of parameters are configured by DCI but RRC message does not influence very much in the process. However, in NR many of the transport process parameters are provided (configure) not only by DCI but also by RRC message, meaning that the process would become more flexible but troubleshoot for the process will become more challenging.
(1) Transport block CRC attachment
LDPC BaseGraph type is determined by Transport Size (A) and Code Rate(R) based on following criteria.
(3) Code block segmentation And Code Block CRC Attachment
i) Determine the max size of the code block (Kcb) : The max size of the code block depends on LDPC base graph type as follows.
ii) Determine the number of Codeblocks
if B(Transport block size) < Kcb(Max Codeblock size) L = 0 C (number of codeblocks) = 1 B' = B // this mean 'No Segmentation'. else L = 24 C = Ceiling(B/(Kcb - L)) B' = B + C * L
iii) Determine the number of bits in each code block
K'(the number of bits in each code block) = B'/C
iv) Determine Kb
For LDPC base graph type 1 Kb = 22
For LDPC base graph type 2 if B (Transport blocksize) > 640 Kb = 10 else if B (Transport blocksize) > 560 Kb = 9 else if B (Transport blocksize) > 192 Kb = 8 else Kb = 6
v) find the minimum value of Z in all sets of lifting sizes in [38.212-Table 5.3.2-1: Sets of LDPC lifting size] vi) denote Zc such that (Kb * Zc) >= K' vii) set K = 22 Zc for LDPC base graph 1 K = 10 Zc for LDPC base graph 2
viii) perform segmentation and add CRC bits s = 0 // s = bit position in B (transport block)
for r = 0 to C-1 for k = 0 to K'-L-1 crk = bs s = s + 1 end for
if C > 1 // Do this if the number of the code block is more than 1 Calculate pr0,pr1,pr2,...,pr(L-1) using the sequence cr0,cr1,cr2,...,cr(K'-L-1) and g_CRC24B(D) for k = K'-L to K'-1 // Append CRC bit crk = pr(k+L-K') end for end if for k = K' to K-1 // Insertion of filler bis crk = < NULL > end for end for
Perform LDPC as described in 38.212 - 5.3.2
< 38.211 - Table 7.3.1.3-1: Codeword-to-layer mapping for spatial multiplexing. >
Once the data path through the layer mapping process, the data from each layer are mapped to each Antenna Port. When CSI is not applied, the data maps to physical antenna port as below.
When CSI is applied, the data from layer mapper are first mapped to each of CSI antenna port as shown below.
The determination of W(i) from reportQuantity of CSI-ReportConfig can be summarized as shown below.
For each antenna step, a virtual resource grid is created. Within the resource grid, fill out each of the resource elements(RE) with PDSCH data from the RE at the lowest frequency to higher frequency. Once it reaches the RE at the highest frequency of the assigned PDSCH resource block, move to the RE at the lowest frequency of next OFDM symbol. But you should not use the REs that are assigned for following purpose :
(12) Mapping from virtual to physical resource blocks
< Non-Interleaved >
< Interleaved >
PDSCH-Config ::= SEQUENCE { dataScramblingIdentityPDSCH INTEGER (0..1007) OPTIONAL, dmrs-DownlinkForPDSCH-MappingTypeA SetupRelease { DMRS-DownlinkConfig } OPTIONAL, dmrs-DownlinkForPDSCH-MappingTypeB SetupRelease { DMRS-DownlinkConfig } OPTIONAL, tci-StatesToAddModList SEQUENCE (SIZE(1..maxNrofTCI-States)) OF TCI-State OPTIONAL, -- Need N tci-StatesToReleaseList SEQUENCE (SIZE(1..maxNrofTCI-States)) OF TCI-StateId OPTIONAL, -- Need N vrb-ToPRB-Interleaver ENUMERATED {n2, n4}, resourceAllocation ENUMERATED { resourceAllocationType0, resourceAllocationType1, dynamicSwitch}, pdsch-AllocationList SEQUENCE (SIZE(1..maxNrofDL-Allocations)) OF PDSCH-TimeDomainResourceAllocation OPTIONAL, pdsch-AggregationFactor ENUMERATED { n2, n4, n8 } OPTIONAL, rateMatchPatternToAddModList SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPattern OPTIONAL, -- Need N rateMatchPatternToReleaseList SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPatternId OPTIONAL, -- Need N rateMatchPatternGroup1 SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPatternId OPTIONAL, -- Need R rateMatchPatternGroup2 SEQUENCE (SIZE (1..maxNrofRateMatchPatterns)) OF RateMatchPatternId OPTIONAL, -- Need R rbg-Size ENUMERATED {config1, config2}, mcs-Table ENUMERATED {qam64, qam256}, maxNrofCodeWordsScheduledByDCI ENUMERATED {n1, n2} OPTIONAL, -- Need R prb-BundlingType CHOICE { static SEQUENCE { bundleSize ENUMERATED { n4, wideband } OPTIONAL }, dynamic SEQUENCE { bundleSizeSet1 ENUMERATED { n4, wideband, n2-wideband, n4-wideband } OPTIONAL, -- Need S bundleSizeSet2 ENUMERATED { n4, wideband } OPTIONAL -- Need S } }, zp-CSI-RS-ResourceToAddModList SEQUENCE (SIZE (1..maxNrofZP-CSI-RS-Resources)) OF ZP-CSI-RS-Resource OPTIONAL, -- Need N zp-CSI-RS-ResourceToReleaseList SEQUENCE (SIZE (1..maxNrofZP-CSI-RS-Resources)) OF ZP-CSI-RS-ResourceId OPTIONAL, -- Need M aperiodic-ZP-CSI-RS-ResourceSetsToAddModList SEQUENCE (SIZE (1..maxNrofZP-CSI-RS-Sets)) OF ZP-CSI-RS-ResourceSet OPTIONAL, -- Need N aperiodic-ZP-CSI-RS-ResourceSetsToReleaseList SEQUENCE (SIZE (1..maxNrofZP-CSI-RS-Sets)) OF ZP-CSI-RS-ResourceSetId OPTIONAL, -- Need N sp-ZP-CSI-RS-ResourceSetsToAddModList SEQUENCE (SIZE (1..maxNrofZP-CSI-RS-Sets)) OF ZP-CSI-RS-ResourceSet OPTIONAL, -- Need N sp-ZP-CSI-RS-ResourceSetsToReleaseList SEQUENCE (SIZE (1..maxNrofZP-CSI-RS-Sets)) OF ZP-CSI-RS-ResourceSetId OPTIONAL, -- Need N
... }
dataScramblingIdentityPDSCH : Identifer used to initalite data scrambling (c_init) for both PDSCH. Corresponds to L1 parameter 'Data-scrambling-Identity'
dmrs-DownlinkForPDSCH-MappingTypeA : DMRS configuration for PDSCH transmissions using PDSCH mapping type A (chosen dynamically via PDSCH-TimeDomainResourceAllocation)
dmrs-DownlinkForPDSCH-MappingTypeB : DMRS configuration for PDSCH transmissions using PDSCH mapping type B (chosen dynamically via PDSCH-TimeDomainResourceAllocation)
tci-StatesToAddModList : A list of Transmission Configuration Indicator (TCI) states for dynamically indicating (over DCI) a transmission configuration which includes QCL-relationships between the DL RSs in one RS set and the PDSCH DMRS ports
vrb-ToPRB-Interleaver : Interleaving unit configurable between 2 and 4 PRBs. Corresponds to L1 parameter 'VRB-to-PRB-interleaver'
resourceAllocation : Configuration of resource allocation type 0 and resource allocation type 1 for non-fallback DCI. Corresponds to L1 parameter 'Resouce-allocation-config'
pdsch-AllocationList : List of PDSCH-TimeDomainResourceAllocation. If configured, the values provided herein override the values received in corresponding PDSCH-ConfigCommon. This information elements has an array structure as sown below. For each PDSCH scheduling, Time domain resource assignment of DCI 1_0 or DCI 1_1 specify a specific row number (row index) of the following table as stated in 38.214 - 5.1.2.1. When the UE is scheduled to receive PDSCH by a DCI, the Time domain resource assignment field of the DCI provides a row index of a higher layer configured table pdsch-symbolAllocation, where the indexed row defines the slot offset K0, the start and length indicator SLIV, and the PDSCH mapping type to be assumed in the PDSCH reception.
pdsch-AggregationFactor : Number of repetitions for data. Corresponds to L1 parameter 'aggregation-factor-DL' . When the field is absent the UE applies the value 1
rateMatchPatternToAddModList : Resources patterns which the UE should rate match PDSCH around. The UE rate matches around the union of all resources indicated in the nexted bitmaps. Corresponds to L1 parameter 'Resource-set-BWP'
rateMatchPatternGroup1 : The IDs of a first group of RateMatchPatterns defined in the rateMatchPatternToAddModList. Corresponds to L1 parameter 'Resource-set-group-1'
rateMatchPatternGroup2 : The IDs of a second group of RateMatchPatterns defined in the rateMatchPatternToAddModList Corresponds to L1 parameter 'Resource-set-group-2' rbg-Size : Selection between config 1 and config 2 for RBG size for PDSCH. Corresponds to L1 parameter 'RBG-size-PDSCH'
rbg-Size : Selection between config 1 and config 2 for RBG size for PDSCH. Corresponds to L1 parameter 'RBG-size-PDSCH' for Resource Allocation Type 0.
mcs-Table : Indicates which MCS table the UE shall use for PDSCH. Corresponds to L1 parameter 'MCS-Table-PDSCH'. (64QAM, 256 QAM)
maxNrofCodeWordsScheduledByDCI : Maximum number of code words that a single DCI may schedule. This changes the number of MCS/RV/NDI bits in the DCI message from 1 to 2.
prb-BundlingType : Indicates the PRB bundle type and bundle size(s). If "dynamic" is chosen, the actual BundleSizeSet to use is indicated via DCI. If a bundleSize(Set) value is absent, the UE applies the value n2. Corresponds to L1 parameter 'PRB_bundling'
zp-CSI-RS-ResourceToAddModList : A list of Zero-Power (ZP) CSI-RS resources used for PDSCH rate-matching. Corresponds to L1 parameter 'ZP-CSI-RS-ResourceConfigList'
aperiodic-ZP-CSI-RS-ResourceSetsToAddModList : A list of sets. Each set contains a set-ID and the IDs of one or more ZP-CSI-RS-Resources (the actual resources are defined in the zp-CSI-RS-ResourceToAddModList). The network triggers a set by indicating its set-ID (ZP-CSI-RS-ResourceSetId) in the DCI payload. The resources referenced in these sets are confgiured with resourceType 'aperiodic'. Corresponds to L1 parameter ' ZP-CSI-RS-ResourceSetConfigList'
sp-ZP-CSI-RS-ResourceSetsToAddModList : A list of sets. Each set contains a set-ID and the IDs of one or more ZP-CSI-RS-Resources (the actual resources are defined in the zp-CSI-RS-ResourceToAddModList). The network triggers a set by indicating its set-ID (ZP-CSI-RS-ResourceSetId) in the MAC CE. The resources referenced in these sets are confgiured with resourceType 'semi-persistent'. Corresponds to L1 parameter 'SP-ZP-CSI-RS-Resource-List'
PDSCH-ConfigCommon ::= SEQUENCE {
pdsch-AllocationList SEQUENCE (SIZE(1..maxNrofDL-Allocations)) OF PDSCH-TimeDomainResourceAllocation OPTIONAL,-- Need R
... }
Reference
[1]
|
||||||||||||||||||