|
||
A few years ago from now (Jul 2017) when the discussion about 5G was at early phase, the hottest topic was 'what kind of waveform will be used in 5G' and a lot of new idea (new waveform) were proposed (If you want to look into some snapshot on this technical history, take a look at 5G Waveform Candate page). In those discussion, you might have seen many people/many techical documents talking about 'what is the problem of current OFDM based waveform' and 'why we need to redesign the waveform in 5G'. However, in more recent discussion I start sensing that the good old buddy (OFDM) would get more attention and finally as 3GPP specification rolls out, it is decided to go with the old and familiar waveform OFDM. It might be a little bit disappoiting to those who have been expecting a completely new technology (disruptive technology), but those who is working in the area of baseband DSP or FPGA in legacy LTE, this conclusion would sound like a blessing :) If you are already familiar with the OFDM technolgy and LTE waveform, there would be only a small additional portions that you need to study. If you are new to this technolgy, it would be a good timing for you to start studying a new things (I would recommend you to start from this page : OFDM Introduction). Overall Procedure for Waveform GenerationFollowing illustration (based on 38.300 - 5.1) shows overall flow of waveform generation for downlink and uplink. The biggest difference between NR and LTE is that NR can use CP-OFDM for Uplink as well as DFT-s-OFDM depending on use case. Whether you use CP-OFDM or DFT-s-OFDM can be configurable except msg3 by sepcifying RRC parameters as shown below 38.331 15.3 (2018-10)
RACH-ConfigCommon ::= SEQUENCE { rach-ConfigGeneric RACH-ConfigGeneric, totalNumberOfRA-Preambles INTEGER (1..63) OPTIONAL, -- Need S ssb-perRACH-OccasionAndCB-PreamblesPerSSB CHOICE { oneEighth ENUMERATED {n4,n8,n12,n16,n20,n24,n28,n32,n36,n40,n44,n48,n52,n56,n60,n64}, oneFourth ENUMERATED {n4,n8,n12,n16,n20,n24,n28,n32,n36,n40,n44,n48,n52,n56,n60,n64}, oneHalf ENUMERATED {n4,n8,n12,n16,n20,n24,n28,n32,n36,n40,n44,n48,n52,n56,n60,n64}, one ENUMERATED {n4,n8,n12,n16,n20,n24,n28,n32,n36,n40,n44,n48,n52,n56,n60,n64}, two ENUMERATED {n4,n8,n12,n16,n20,n24,n28,n32}, four INTEGER (1..16), eight INTEGER (1..8), sixteen INTEGER (1..4) } OPTIONAL, - Need M groupBconfigured SEQUENCE { ra-Msg3SizeGroupA ENUMERATED {b56, b144, b208, b256, b282, b480, b640, b800, b1000, spare7, spare6, spare5, spare4, spare3, spare2, spare1}, messagePowerOffsetGroupB ENUMERATED { minusinfinity, dB0, dB5, dB8, dB10, dB12, dB15, dB18}, numberOfRA-PreamblesGroupA INTEGER (1..64) } OPTIONAL, -- Need R
ra-ContentionResolutionTimer ENUMERATED { sf8, sf16, sf24, sf32, sf40, sf48, sf56, sf64}, rsrp-ThresholdSSB RSRP-Range OPTIONAL, -- Need R rsrp-ThresholdSSB-SUL RSRP-Range OPTIONAL, -- Need R prach-RootSequenceIndex CHOICE { l839 INTEGER (0..837), l139 INTEGER (0..137) }, msg1-SubcarrierSpacing SubcarrierSpacing, ... }
PUSCH-Config ::= SEQUENCE { dataScramblingIdentityPUSCH INTEGER (0..1023) OPTIONAL, txConfig ENUMERATED {codebook, nonCodebook} dmrs-UplinkForPUSCH-MappingTypeA SetupRelease { DMRS-UplinkConfig } dmrs-UplinkForPUSCH-MappingTypeB SetupRelease { DMRS-UplinkConfig } pusch-PowerControl PUSCH-PowerControl frequencyHopping ENUMERATED {intraSlot, interSlot} frequencyHoppingOffsetLists SEQUENCE (SIZE (1..4)) OF INTEGER (1.. maxNrofPhysicalResourceBlocks-1) resourceAllocation ENUMERATED { resourceAllocationType0, resourceAllocationType1, dynamicSwitch}, pusch-TimeDomainAllocationList SetupRelease { PUSCH-TimeDomainResourceAllocationList } pusch-AggregationFactor ENUMERATED { n2, n4, n8 } mcs-Table ENUMERATED {qam256, qam64LowSE} mcs-TableTransformPrecoder ENUMERATED {qam256, qam64LowSE} codebookSubset ENUMERATED {fullyAndPartialAndNonCoherent, partialAndNonCoherent, nonCoherent} maxRank INTEGER (1..4) rbg-Size ENUMERATED { config2} uci-OnPUSCH SetupRelease { UCI-OnPUSCH } tp-pi2BPSK ENUMERATED {enabled} ... }
ConfiguredGrantConfig ::= SEQUENCE { frequencyHopping ENUMERATED {intraSlot, interSlot} , cg-DMRS-Configuration DMRS-UplinkConfig, mcs-Table ENUMERATED {qam256, qam64LowSE} mcs-TableTransformPrecoder ENUMERATED {qam256, qam64LowSE} uci-OnPUSCH SetupRelease { CG-UCI-OnPUSCH } OPTIONAL, resourceAllocation ENUMERATED { resourceAllocationType0, resourceAllocationType1, dynamicSwitch }, rbg-Size ENUMERATED {config2}, powerControlLoopToUse ENUMERATED {n0, n1}, p0-PUSCH-Alpha P0-PUSCH-AlphaSetId, nrofHARQ-Processes INTEGER(1..16), repK ENUMERATED {n1, n2, n4, n8}, repK-RV ENUMERATED {s1-0231, s2-0303, s3-0000}, periodicity ENUMERATED { sym2, sym7, sym1x14, sym2x14, sym4x14, sym5x14, sym8x14, sym10x14, sym16x14, sym20x14,sym32x14, sym40x14, sym64x14, sym80x14, sym128x14, sym160x14, sym256x14, sym320x14, sym512x14,sym640x14, sym1024x14, sym1280x14, sym2560x14, sym5120x14,sym6, sym1x12, sym2x12, sym4x12, sym5x12, sym8x12, sym10x12, sym16x12, sym20x12, sym32x12,sym40x12, sym64x12, sym80x12, sym128x12, sym160x12, sym256x12, sym320x12, sym512x12, sym640x12,sym1280x12, sym2560x12 }, configuredGrantTimer INTEGER (1..64) OPTIONAL, -- Need R rrc-ConfiguredUplinkGrant SEQUENCE { timeDomainOffset INTEGER (0..5119), timeDomainAllocation INTEGER (0..15), frequencyDomainAllocation BIT STRING (SIZE(18)), antennaPort INTEGER (0..31), dmrs-SeqInitialization INTEGER (0..1), precodingAndNumberOfLayers INTEGER (0..63), srs-ResourceIndicator INTEGER (0..15), mcsAndTBS INTEGER (0..31), frequencyHoppingOffset INTEGER (1.. maxNrofPhysicalResourceBlocks-1) pathlossReferenceIndex INTEGER (0..maxNrofPUSCH-PathlossReferenceRSs-1) ... } OPTIONAL, -- Need R ... } CP OFDM Sequence GenerationWhen 3GPP 38.211 was released, the first thing I checked was waveform equation since I have been waiting so long for the final conclusion to come out. Following is the waveform equation specified in 38.211 and I put the waveform equation of the legacy LTE from 36.211 for comparison. What is your first impression ? You may think NR(5G) waveform is much simpler than the LTE waveform. Even though these two equation look very differently but if you take a closer look you would notice the difference is very small. In LTE, the waveform generation equation (basically IFFT equation) is split into two parts just to remove the point located at DC location (i.e, at frequency = 0 in baseband). In NR(5G), this DC removal is not required any more and the full IFFT equation is combine into one.
Is that all ? NR waveform generation is simpler than LTE waveform generation (at least mathematically) ? It is not all. As you see in Frame Structure page, in NR(5G) several difference numerology (i.e, different subcarrier spacing and symbol length) are supported whearas in LTE there is only one numerology. Those different numerology are not completely new waveform on its own. All of them can be derived from a common mathematical equation by scaling up and down a couple of paramters as illustrated below. Transform PrecodingAs mentioned above, unlike LTE NR has two options for UL Waveform. One is CP-OFDM (same as DL Waveform) and the other one is DFT-s-OFDM which is same as LTE UL waveform. Transform Precoding is the first step to create DFT-s-OFDM waveform as highlighed below. Whether UE need to use CP-OFDM or DFT-s-OFDM is determined by following RRC Parameter.
In term of functionality, Transform Precoding is to spread UL data in a special way to reduce PAPR(Peak-to-Average Power Ratio) of the waveform. In terms of mathematics, Transform Precoding is just a form of DFT(Discrete Fourier Transform) as you see in the equation shown below. If UE is to use multi-layer (UL MIMO) the equation is as below (this is the original form described in 38.211 - 6.3.1.4) If UE is to use single layer, the equation can be simplified as below. I would look more obvious that Transform Precoding is basically DFT.
Reference[1] 38.211 NR;Physical channels and modulation(Release 15)
|
||