版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
NRPDSCH(一)这个系列介绍NR的PDSCH(PhysicalDownlinkSharedChannel),即物理下行共享信道。个人理解,在移动通信网络中,下行信道比上行信道重要一些:PDCCH(PhysicalDownlinkControlChannel)比PUCCH(PhysicalUplinkControlChannel)重要,因为基站通过PDCCH传送DCI,实现上下行的资源分配;PDSCH比PUSCH(PhysicalUplinkSharedChannel)重要,因为下行业务量往往远大于上行——用户接入网络是为了获取信息,而不是发几张自拍(自恋的除外,哎,你别走啊…)。不止是DCCH(DedicatedControlChannel)和DTCH(DedicatedTrafficChannel),CCCH(CommonControlChannel)、BCCH(BroadcastControlChannel)和PCCH(PagingControlChannel)也会(间接)映射到PDSCH。可见,PDSCH不仅和用户数据相关,还和系统信息(SIB)、寻呼(Paging)、随机接入(RandomAccess)、RRC连接建立(RRCSetup)等过程相关,是非常重要的物理信道(是不是似曾相识,对,我从PDCCH那儿Copy来的)。
对用户来说,PDSCH最重要,但对系统来说,PDSCH的优先级却最低。下行物理资源总是先分配给参考信号(SSB和各种RS)和控制信道(PBCH和PDCCH),剩下的才可用于PDSCH。如果资源充足,基站也可以任性一下,NRPDSCH支持时隙聚合(NRPUSCH也支持)——在单层发送模式下,基站可使用相同的符号(分配),在连续n(2、4、8)时隙重复发送相同的数据(的不同RV),以获得覆盖增益。无论PDSCH还是PUSCH,都要基站通过PDCCH发送DCI进行调度。UE从DCI获知PDSCH资源的位置,以及从PDSCH“卸载”数据所需的信息,比如MCS(ModulationandCodingScheme)和RV(RedundancyVersion)等。在此之前,UE可以向基站报告CSI(ChannelStateInformation),帮助基站更好的做出决定——如果UE处于空闲态,无法提前上报CSI(比如SIB1/OSI接收、寻呼、随机接入等场景),基站会采用相对保守(保险)的策略,比如使用较低的调制阶数。
在NR中,DCIformat共有8种,但只有DCI1_0和DCI1_1和PDSCH相关。对比DCI1_0和DCI1_1的字段(表格引用自E家的《5GNRTheNextGenerationWirelessAccessTechnology》),可见DCI1_1比DCI1_0丰富一些。DCI1_1支持所有NR特性,包含和资源分配(频域支持Type0和Type1)、传输块(支持最多两个TB)、HARQ(支持以码块组为粒度发送和反馈)、多天线、PUCCH相关的字段。DCI1_0做了一些简化,可视为“低配版”的DCI1_1。比如说,DCI1_0不支持跨载波调度(不包含CarrierIndicator)和BWP切换(不包含BWPIndicator),不支持两个TB、不支持多天线(Multi-Antenna)。由此,DCI1_0又称为fallbackformat(回退格式),相应的,DCI1_1称为non-fallbackformat(非回退格式)。显然,DCI1_1的payload大一些,但DCI1_1不一定需要带上所有字段。根据系统配置的特性,有些字段可以省略,比如说,如果没有配置CA(CarrierAggregation,载波聚合),那么CA相关字段(CarrierIndicator,载波指示)就可以省略。由此,DCI1_1的payload大小不是固定的,而是和配置特性相关——UE也知道具体配置,因而并不影响UE对DCI进行盲检。另外,DCI1_1支持(最多)两个TB,但可以“disable”其中一个TB,只传送一个TB,这和LTE相似。
反过来,DCI1_0的payload小一些,除了个别字段(FrequencyDomainAllocation,取决于BWP),各字段的大小基本固定。DCI1_0支持的特性虽然少,但信令开销也较小,调度小数据更有优势。SI-RNTI、P-RNTI、RA-RNTI、TC-RNTI、C-RNTI加扰的DCI1_0用于SIB1/OSI接收、寻呼、随机接入等过程时会携带其他字段,比如SystemInformationIndicator或RandomAccessPreambleIndex。DCI1_0和1_1的字段详见3GPPTS38.212的.1章节和.2章节。
以SI-RNTI加扰的DCI1_0为例(偷个懒,我又把这张图搬出来了),字段包括:FrequencyDomainResourceAssignment(频域资源分配指示,长度和下行BWP大小相关)、TimeDomainResourceAssignment(时域资源分配指示,4位)、VRBtoPRBmapping(VRB到PRB映射是否交织,1位)、ModulationandCodingScheme(调制与编码策略,5位)、RedundancyVersion(HARQ冗余版本,2位)、SystemInformationIndicator(用于SIB1还是OtherSI,1位)。UE从FrequencyDomainResourceAssignment和TimeDomainResourceAssignment获知PDSCH的时频资源(对于SIB1接收场景,可参考《NR的小区搜索(四)》),从VRBtoPRBmapping、MCS(ModulationandCodingScheme)、RV(RedundancyVersion)获知如何对PDSCH进行处理(映射、解调、软合并…),获得PDSCH传送的“数据”——DCI的这些信息,也反映了基站如何将数据“装载”到PDSCH。
那么,“数据”如何通过PDSCH传送呢?
先看一下DL-SCH(PDSCH的大主顾)的物理传送模型。从PHY(物理层)角度看,MAC向PHY递交的是MACPDU,PHY称为TB(TransportBlock,传输块)。在发送端(基站),TB经过CRC添加、信道编码、速率匹配、加扰、调制、资源映射、天线映射,最后通过无线信号发送;在接收端(UE),PHY按照相反顺序进行处理,从无线信号恢复出TB,提交给MAC。表面上看,MAC和PHY是上下层关系,但在处理过程中两者是紧密结合的。PHY的时频资源、调制策略,包括发送TB的大小,都是MAC确定的,MAC又以CSI为依据进行决策,而CSI反映的正是PHY(信道)的信息(CQI、RI、PMI)。另一方面,HARQ功能同时跨越PHY和MAC——就下行方向而言,在发送端(基站),MAC负责传输和重传TB,选择RV,接收和处理ACK/NACK,PHY负责生成不同RV;在接收端(UE),MAC负责接收TB,发送ACK/NACK,PHY负责软合并和CRC校验(引用自金辉老师文章)。
在NR中,对于特定的UE——每个小区默认支持8个HARQ进程,最多支持16个HARQ进程(由高层参数NrofHARQProcessforPDSCH确定);对于每个HARQ进程,支持最多调度两个TB(受限于高层参数MaxNrofCodeWordsScheduledbyDCI)。由于TB大小可能远大于LTE,NR支持以CBG(CodeBlockGroup)为粒度进行HARQ传送和重传,而不用重传整个TB。另外,NR支持空分复用(SpatialMultiplexing),PDSCH支持最多8层(Layer)传输(此时为两个CodeWords),这和LTE相似。更具体的,根据3GPPTS38.211和TS38.212描述,在发送端,NRPDSCH处理包括12个步骤:1、TransportBlockCRCAttachment(TB添加CRC);2、LDPCBaseGraphselection(选择LDPCBaseGraph);3、CodeBlockSegmentationandCodeBlockCRCAttachment(码块分割,以及码块添加CRC);4、ChannelCoding(信道编码,LDPC码);5、RateMatching(速率匹配);6、CodeBlockConcatenation(码块串联);7、Scrambling(加扰);8、Modulation(调制);9、LayerMapping(层映射);10、AntennaPortMapping(天线端口映射)、11、MappingtoVRB(映射到VRB);12、VRBtoPRBMapping(映射到PRB)。步骤1~6详见3GPPTS38.212的7.2章节;步骤7~12详见3GPPTS38.211的7.3.1章节。从整体框架看,对于PDSCH的处理,NR和LTE十分相似。差异主要在于,在LTE中,DL-SCH信道编码采用Turbo码,在NR中,DL-SCH信道编码采用LDPC(LowDensityParityCheck)码(由于无良媒体的炒作,吃瓜群众都记住了LDPC这个名字,虽然不知道实际是干啥的),特别强调了LDPCBaseGraph选择。从某种意义来说,3GPPTS38.212描述的步骤(1~6)都可视为“信道编码”的一部分,LDPC对这些步骤(CRC添加、码块分割、速率匹配、码块串联),甚至更早的TBS和MCS确定,都会产生影响。NRPDSCH(二)这一篇谈PDSCH的时频资源。PDSCH是物理信道,无论基站怎么处理TB(TransportBlock),就是扭成一团麻花,最终也要“映射”到RE(ResourceElement),才可以通过天线发送。需要注意的是,基站以VRB形式分配PDSCH,VRB还要通过交织或非交织方式映射到PRB,另外,如果采用空间复用(SpatialMultiplexing),每个(逻辑)天线端口对应一个“时频平面”,这些内容计划在《NRPDSCH(四)》介绍。这里只讨论一个“时频平面”的VRB分配。UE通过DCI(DownlinkControlInformation)获知PDSCH时频资源的信息。以SI-RNTI加扰的DCIformat1_0为例,这些信息反映在两个字段上:频域——FrequencyDomainResourceAssignment;时域——TimeDomainResourceAssignment。下面分别看一下“频域”和“时域”的具体实现。
先看频域。
LTE的频域资源分配有三种类型:Type0、Type1和Type2,NR保留了首尾两种,重新命名为Type0(对应LTE的Type0)和Type1(对应LTE的Type2)。Type0通过位图(Bitmap)方式分配资源,Type1通过RIV(ResourceIndicationValue)方式分配资源。DCI1_0只支持Type1资源(不是我的Type),DCI1_1两种都支持(再次体现fallback和non-fallback的差距)。DCIformat1_1使用的资源类型,可由RRC(老佛爷)高层参数ResourceAllocation确定,取值可为ResourceAllocationType0、ResourceAllocationType1或DynamicSwitch。所谓“Dynamic”,就是RRC不指示具体类型,由DCI“动态”指示——FrequencyDomainResourceAssignment的MSB(MostSignificantBit,最高位)为0表示Type0,MSB为1表示Type1,剩余bits表示具体资源。在Type0中,基站以RBG(RBGroup)为粒度分配。RBG是若干RB的集合。RBG包含的RB数量,由BWP大小(BandwidthPartsize)和PDSCH配置(PDSCHConfig)根据3GPPTS38.214的表格.1-1确定。如上图所示,对于4个BWP大小不同的区间,Config1对应RBG包含的RB数量分别为2、4、8、16,Config2对应RBG包含的RB数量分别为4、8、16、16(Type0资源使用非交织映射方式,VRB编号和PRB编号相同)。
假设RBG包含的RB数量为P,除第一个RBG以外,RBG的起始位置的CRB序号必须是P的整数倍。由此,如果BWP的起始位置(N_start_BWP)不是P的整数倍,第一个RBG包含的RB数量(RBG_size_0)小于P。如果BWP的终止位置(N_start_BWP+N_size_BWP)不是P的整数倍,最后一个RBG包含的RB数量(RBG_size_last)小于P。RBG的总数(N_RBG),第一个RBG包含的RB数量(RBG_size_0),以及最后一个RBG包含的RB数量(RBG_size_last)的计算公式如图所示。示例中P为8,BWP起始位置为3,第一个RBG包含的RB数量为8–3=5,最后一个RBG包含的RB数量为3。(示图中RB编号为CRB编号)
Type0以位图方式表示分配哪些RBG,每个RBG对应1位,MSB(最高位)对应RBG0,LSB(最低位)对应最后一个RGB。Type0支持非连续资源分配,也支持连续资源分配。举个例子,BWP大小为24RB,PDSCH配置为Config1,查表可知RBG大小为2,位图长度为24/2=12位——示例分配的RBG(蓝色部分)可用位图“100101100111”表示。在Type1中,以起始位置(S)和RB数量(L)表示分配的资源,单位为RB。举个例子,BWP大小为24RB,示图右侧分配的RB(橙色部分),可用S=7(第8个RB),L=11(长度为11RB)表示。Type1只支持连续资源分配,没有Type0灵活。Type1也有自己的优点,一方面,Type1分配的粒度是RB,比Type0的RBG小,另一方面,就是Type1的编码效率高。基站不直接将S和L告知UE,而是将S和L联合编码,构成RIV(根据L划分为两个区间,使用不同的计算公式,原因详见《NR的小区搜索(四)》)。在BWP大小(N_size_BWP,以下简称N)确定的情况下,(S,L)组合和RIV一一对应,基站从(S,L)组合推算RIV,并发送给UE,UE从RIV反向推算(S,L)组合。举个例子:如果N=24,S=7,L=11,RIV=24x(11–1)+7=247;如果N=24,S=6,L=15,RIV=24x(24–15+1)+24–1–6=257。
另外,对于Type1,UE还要先确定RB编号的参考BWP(不知可否理解为PDSCH所在BWP?)。如果DCI没有包含BWPIndicator,或UE不支持通过DCI变更BWP,则选择激活BWP,如果DCI包含BWPIndicator,且UE支持通过DCI变更BWP,则选择BWPIndicator指示的BWP。比较特殊的是,如果在CSS(CommonSearchSpace)通过DCI1_0调度PDSCH,则UE将接收DCI的CORESET视为BWP——比如小区搜索中的RMSI(SIB1)接收,UE将CORESET0频域视为BWP计算RIV,可参考《NR的小区搜索(四)》。最后,为了避免UE“盲检”PDCCH的次数过多,基站可能会进行DCIsize对齐(可参考《NRPDCCH(一)》)操作。由于CSS的DCI1_0的FrequencyDomainResourceAssignment长度和初始下行BWP(或CORESET0)相关,如果USS(UserSpecificSpace)的DCI1_0向CSS的DCI1_0对齐,基站在USS通过DCI1_0调度激活BWP的频域资源,且激活BWP带宽大于初始下行BWP(或CORESET0),实际调度的频域资源应进行等比例“放大”,放大系数K计算公式如图所示。
再看时域。
在NR中,PDSCH资源支持符号级别的调度,这比LTE灵活许多,但也增加了调度的复杂性。通常来说,基站先通过RRC高层配置发送时域资源分配表,DCI调度时再发送索引(TimeDomainResourceAssignment),UE根据索引查表获知具体配置——如果基站没有配置,或在初始接入过程中(UE暂时无法获取配置),则UE使用预先定义的时域资源分配表。更具体的,UE根据DCI加扰的RNTI类型,搜索空间类型,SSB/CORESET复用样式,以及PDSCHConfigCommon(小区级)和PDSCHConfig(用户级)配置确定使用的时域资源分配表。举个例子,如果DCI用C-RNTI、MCS-RNTI或CS-RNTI加扰,搜索空间为和CORESET0没有关联的USS,用户级配置(如果配置)优先级最高,小区级配置(如果配置)次之,预定义表格(DefaultA)最末。在初始接入过程中,基站通过SI-RNTI加扰的DCI1_0调度携带RMSI的PDSCH,UE根据SSB/CORESET复用样式确定预定义表格——Pattern1对应表格.1-2(DefaultAfornormalCP);Pattern2对应表格.1-4(DefaultB);Pattern3对应表格.1-5(DefaultC)。下面以Pattern1和Pattern2为例,说明如何理解PDSCH的时域资源分配表。上图为Pattern1对应的表格DefaultA(fornormalCP)。DCI1_0的TimeDomainResourceAssignment(0~15)就是上文提到的“索引”,和表格中的“RowIndex”(1~16)对应。PDSCH时域资源由3个字段描述:K0、S和L。K0表示PDSCH时隙相对于PDCCH时隙的偏移——如果PDCCHSCS和PDSCHSCS相同,K0
=0表示PDSCH和PDCCH在同一时隙,K0
=1表示PDSCH在PDCCH时隙的下一时隙,以此类推。(相对应的,K1表示HARQ反馈的PUCCH时隙相对于PDSCH时隙的偏移)
如果PDCCHSCS和PDSCHSCS不同(比如跨载波调度场景),PDCCH和PDSCH的时隙编号也不同。如下图所示,如果PDCCHSCS是PDSCHSCS两倍,PDCCHslotn和PDSCHslot2n、2n+1对齐,反过来,如果PDSCHSCS是PDCCHSCS两倍,PDSCHslot2n和PDCCHslot2n、2n+1对齐。因而,如果PDCCHSCS和PDSCHSCS不同,PDSCH所在时隙不能直接在PDCCH时隙编号叠加k0,要对PDCCH时隙编号进行“缩放”。如果DCI在PDCCH时隙n上发送,PDSCH所在时隙n_PDSCH=int(n_PDCCHx2^μPDSCH/2^μPDSCH)+k0。以上图为例,如果PDCCHSCS为15kHz,PDSCHSCS为30kHz,DCI在PDCCH时隙n的符号0和7发送,分别调度PDSCH时隙2n的符号4~13和PDSCH时隙2n+1的符号4~13,k0分别为0和1。如果PDCCHSCS为30kHz,PDSCHSCS为15kHz,DCI在PDCCH时隙2n的符号0/1和时隙2n+1的符号4/5发送,分别调度PDSCH时隙n的符号2~6和符号12~13,k0均为0(都在PDSCH时隙n——2n+1除以2,向下取整为n)。
S表示起始符号,L表示时域长度(符号数量)。在NR中,PDSCH资源的起始符号和时域长度不是固定的。和RIV相似,S和L联合编码构成SLIV(StartandLengthIndicatorValue)。在频域中,协议对RBstart和LRB取值没太多约束,只要两者之和不超过BWP边界即可,在时域中,协议对S和L有较强的约束——对于PDSCH和PUSCH,S和L需要满足表格(3GPPTS38.214Table-1和-1)给出的条件。由图可见,PDSCH映射类型(PDSCHMappingType)分为TypeA和TypeB,约束条件和适用场景不同。TypeA的S比较靠前(必须为0~3,S=3仅适用于dmrsTypeAPosition为3场景),L比较长(对于NormalCP,3~14个符号),PDSCH资源不能超过时隙边界,即S+L<=14。典型配置是符号0~2为PDCCH,符号3~14为PDSCH(占满时隙),TypeA也称为slotbased(基于时隙)调度,更适合EMBB(EnhancedMobileBroadband)业务。TypeB的S比较灵活,L比较短(对于NormalCP,限制为2、4、7个符号),同样的,PDSCH资源不能超过时隙边界,即S+L<=14。一个时隙可以多次调度TypeB资源。TypeB也称为minislotbased调度或nonslotbased调度,更适合URLLC(Ultra-ReliableLowLatencyCommunication)业务。另外,一个时隙也可以调度TypeA+TypeB资源,但TypeA必须在前面。
下图为Pattern2对应的表格DefaultB。在调度RMSI时,部分RowIndex(12~14)不会使用,这里没有呈现。示例中SSBSCS为120kHz,RMSISCS为60kHz,SSBPattern为CaseD。SSB和CORESET0(PDCCH)的时域资源已经确定(详见《NR的小区搜索(三)》),PDSCH的时域资源就基本确定了。如上图所示,SSBINDEX=4k、4k+1、4k+2、4k+3对应CORESET0起始符号分别为0、1、6、7,长度均为1。DCIformat1_0的TimeDomainResourceAssignment分别为0、1、3、4,对应分配表RowIndex为1、2、4、5。以RowIndex=5为例,K0
=0,S=10,L=2,即PDSCH在PDCCH同一时隙,起始符号为10,长度为2。
另外,NRPDSCH支持时隙聚合(NRPUSCH也支持)。基站可使用相同的符号,在连续n个时隙重复发送相同的数据,以获得覆盖增益(此时只能使用单层发送模式)。n由高层参数PDSCHAggregationFactor确定,取值可为n2、n4、n8。PDSCH配置时隙聚合时(PDSCHAggregationFactor>1),每个时隙发送的RV(RedundancyVersion)不同,比如说,如果DCI指示RV为0,基站在nmod4为0、1、2、3(此处n是时隙编号)的时隙中发送的RV分别为0、2、3、1。最后,基站和UE从PDSCH资源分配信息推算用于PDSCH的RB数量(n_PRB),用于计算码率、确定MCS(ModulationandCodingScheme)和TBS(TransportBlockSize)——不过,有一些资源需要剔除(比如,作为inband部署的LTE频段),基站通过RateMatchPattern告知UE。更具体的,基站在PDSCHConfig或ServingCellConfigCommon配置RateMatchPatterntoAddModList,各可增加(最多)4个BWP级别的RateMatchPattern,并通过DCI1_1的RateMatchIndicator指示是否生效。携带SIB1/OSI、Paging、MSG2/MSG4的PDSCH不用考虑上述限制。NRPDSCH(三)
感谢阅读。
这一篇谈PDSCH的信道编码。从某种意义来说,3GPPTS38.212描述的步骤(1~6)都可视为“信道编码”的一部分。对于PDSCH来说,信道编码输入为MACPDU,在DL-SCH物理传送模型中,称为TB(TransportBlock);信道编码输出为CodeWord(码字)。CodeWord是一个“承前启后”的角色——向前看,CodeWord可视为携带纠错信息的TB(1个TB对应1个CodeWord);向后看,CodeWord的码率和物理资源(Qm、n_PRB、N_Layer,不同TB独立进行速率匹配)匹配。在NR中,PDSCH信道编码采用LDPC(LowDensityParityCheck)码。LDPC码是线性分组纠错码,校验矩阵为“稀疏矩阵”,有较大的最小距离,从而降低译码的复杂性(复杂度和码长呈线性关系)。LDPC码构造灵活,实现简单,性能非常接近香农极限。通过RAN1#84bis到RAN1#87共5次会议,3GPP最终确定EMBB(EnhancedMobileBroadband)场景数据信道采用LDPC码(以上内容引用自人民邮电出版社《5G空口特性与关键技术》)。更具体的,LDPC码是用一个稀疏的非系统的校验矩阵(ParityCheckMatrix)H定义的线性分组纠错码。H的行对应校验节点(r),列对应信息节点或变量节点(x),两者之间的关系可用校验方程(左侧)或Tanner图(右侧)表示。以第一个方程为例,r1=x1+x2+x4+x5对应Tanner图中的黄线部分。LDPC码的码率(Rate)计算方式和其他线性分组码一样,如果H为m行xn列的矩阵,码率为(n–m)/n。(n-m为信息比特数,n为传输比特数)
LDPC码的关键是构造校验矩阵H,由于随机构造方法不利于实现,后来产生了利用几何代数方法构造校验矩阵的LDPC码,包括NR采用的QC-LDPC(Quasi-Cyclic)码——准循环LDPC码。尽管牺牲了LDPC码的部分优点(交织特性),但QC-LDPC码更易于实现,兼顾(实现)成本和性能。QC-LDPC码先定义一个mxn的“母矩阵”(决定LDPC码的性能)HBG,再将“0”和“1”分别用LxL的全零子矩阵和循环移位子矩阵(由单位矩阵循环移位Pi,j次)替换,得到校验矩阵H。下面来看NRPDSCH的具体实现。
假设基站已经确定TBS(TBSize),第一步是给长度为A的TB(a0,a1,…,aA-1)添加长度为L的CRC(CyclicRedundancyCode,循环冗余码),以便UE对接收TB进行校验。PDCCH的TBCRC长度固定为24(参考《NRPDCCH(一)》),而PDSCH的TBCRC长度和TBS(A)有关——如果A大于3824,L为24,否则L为16。数值3824源于BG1和BG2的分界点3824(或BG2的最大码块大小3840)。如上图所示,TB可视为长度为A的序列a0,a1,…,aA-1,通过gCRC24(D)算法或gCRC16(D)算法生成长度为L(24或16)的CRC,添加到序列a0,a1,…,aA-1之后,构成长度为B=A+L的序列b0,b1,…,bB-1。从LDPC码的角度看,包含CRC的TB才是待编码的信息bit(真正的输入)。对于新传数据块,基站根据TBS(A)和码率(R)选择BaseGraph(和母矩阵关联,以下简称为BG)。如果满足以下3个条件之一,基站选择BG2:条件1,A<=292;条件2,A<=3824,且R<=0.67;条件3,R<=0.25。条件1、2、3区域部分重叠,构成“阶梯”形状——“阶梯”以外的区域,基站选择BG1。上述原则可“近似”理解为:低码率/小TBS选择BG2,高码率/大TBS选择BG1。
LDPC码是分组码,对CB(CodeBlock,码块,即分组)大小有限制。最大CB大小记为Kcb。BG1的Kcb为8448,BG2的Kcb为3840(3824+16)。如果TB+CRC长度(B)大于Kcb,则对TB+CRC进行码块分割(CodeBlockSegmentation),CB数量记为C。更具体的,如果B>Kcb,C=B/(Kcb–L)(向上取整),这里L指CB的CRC长度,取值为24。所有CB和CBCRC的总长度为B'=B+CxL——如果B<=Kcb,则C=1,L=0(不添加CBCRC),B'=B。
在NR中,TB可能远大于LTE,如果稍有点差错就重传TB,效率太低了。因而,PDSCH支持以CBG(CodeBlockGroup)为粒度(比CB大,比TB小)进行发送和反馈。如果RRC配置CodeBlockGroupTransmission(前提是UE支持),每个TB(+CRC)划分为M个CBG。M=min(N,C),即N和C的较小值。N由高层参数maxCodeBlockGroupsPerTransportBlock确定,取值为n2、n4、n6、n8——如果DCI(1_1)调度两个TB,N最大只能为n4,因为以位图方式表示CBG发送状态的CBGTI(CBGTransmissionInformation)共8位,每个TB只能分到4位。如果N比C大,则M=C——1个TB划分为C个CBG,1个CBG包含1个CB,这也是为了实现效率最大化(M越大,效率越高)。如果C>M(N),由于C不一定被M整除,各CBG包含的CB数量可能不等,前面的CBG会多1个CB。M个CBG分为两部分,前M1个CBG包含的CB数量为K1,其他CBG包含的CB数量为K2。举个例子,如果N=8,C=27,M=min(8,27)=8,即共有8个CBG。M1=mod(27,8)=3,C/M=27/8,向上取整为4,向下取整为3,即K1为4,K2为3。由此,27个CB分为8个CBG,前3(M1)个CBG包含的CB数量为4(K1),其他CBG包含的CB数量为3(K2)。
基站对CB分别进行LDPC编码。按照QC-LDPC码构造校验矩阵H的方法,基站先计算“提升因子”Zc,再将母矩阵HBG“提升”为校验矩阵H。Zc确定步骤如下:1、确定Kb(码块大小),对于BG1,Kb为22,对于BG2,根据B所在区间(以640、560、192为分界),Kb取10、9、8或6;2、计算K'=B'/C;3、在3GPPTS38.212表格5.3.2-1找到满足KbxZc>=K'的最小的Zc。接着,基站将(提升后)码块大小K设置为22Zc(BG1)或10Zc(BG2)。当Zc为384(最大值),可得到BG1和BG2的Kcb——22x384=8448(BG1);10x384=3840(BG2)。Zc分为8个集合,SetIndex为0、1、2、3、4、5、6、7包含的Zc分别为2、3、5、7、9、11、13、15(都是质数)和2^n的乘积。也就是说,表格中的Zc不会重复,特定取值只会在某个集合出现一次。确定Zc,同时就确定了SetIndex。举个例子,如果A=250,由于A<=292,选择BG2;由于B=A+16=266<3840,C=1,B'=B=266,K'=B'/C=266;由于192<B<560,Kb=8,查表找到满足KbxZc>=K'的最小的Zc为36,SetIndex为4。(希望我没算错,妈妈咪啊)获得Zc和SetIndex后,可将HBG“提升”为H。示图为BG1和BG2的HBG(根据3GPPTS38.212表格5.3.2-2整理),蓝色对应数值“1”,白色对应数值“0”。BG1的HBG为46(行)x68(列)矩阵,BG2的HBG为42(行)x52(列)矩阵。HBG看起来确实很“稀疏”,特别是后面的“对角线”结构,相比之下,前面的两列有点太“拥挤”(或者说,列重(“1”数量)很大)。接下来,HBG各项替换为ZcxZc大小的子矩阵,以BG1为例,HBG为46(行)x68(列)矩阵,替换后为46xZc(行)x68xZc(列)矩阵。具体方法如下:HBG的数值“0”替换为“全零矩阵”;数值“1”替换为“单位矩阵”,并向右循环移位Pi,j次——Pi,j=mod(Vi,j,Zc),Vi,j从3GPPTS38.212表格5.3.2-2查询获得。举个例子,对于BG1,在3GPPTS38.212表格5.3.2-2可以找到RowIndex(i)为0和ColumnIndex(j)为12,说明HBG这个位置(0行,12列)值为1,替换为ZcxZc的“单位矩阵”,并向右循环移位Pi,j次。表格中,i=0,j=12对应8个Vi,j,分别为191、17、164、21、216、339、0、128,如果SetIndex为3,Vi,j为21。如果Zc为14,Pi,j=mod(21,14)=7。
获得校验矩阵H后,由H和信息比特序列c生成校验比特序列w,常规方法是由H推算生成矩阵G,也可通过其他方式简化,这取决于厂家具体实现。根据协议描述,输出序列为d0,d1,…,dN-1,BG1和BG2输出位数N分别为66Zc和50Zc。H的列数为N+2Zc(68Zc或52Zc),正好和c+w的长度(c的长度为K,w的长度为N+2Zc–K)相等,满足矩阵相乘的要求(第一个矩阵的列数等于第二个矩阵的行数)。无论初传还是重传,c的前2Zc项(c0,c1,…,c2Zc-1)都不会发送(UE可从校验比特恢复),貌似和校验矩阵前2Zc列(对应HBG前2列)过于“拥挤”有关,去掉2Zc项可以在高码率时提高译码性能(不太确定,个人理解是可以提高编码效率,且对译码性能影响不大)。由此,BG1码率调整为(68–46)/66=1/3,BG2码率调整为(52–42)/50=1/5。
由此,如果将输出序列(d0,d1,…,dN-1)直接发送给UE,那么码率就是1/3(BG1)或1/5(BG2)了,可能和空口期望码率(取决于Qm、n_PRB和N_Layer)不符。因而,基站先将输出序列写入环形缓存,再从缓存(循环)选择发送的比特,实现速率匹配。根据协议描述,速率匹配包括BitSelection(Bit选择)和BitInterleaving(Bit交织)两步,实际只有BitSelection影响码率。
更具体的,输出序列(d0,d1,…,dN-1)依序写入环形缓存,如果忽略LBRM(LimitedBufferRateMatching,有限缓存速率匹配),缓存大小Ncb也为N。根据LDPC码的编码特征,前面是系统比特(systembit),后面是校验比特(paritybit)。如果空口码率低于编码码率(1/3或1/5),基站从缓存“循环”(重复)选择比特(加大分母),如果空口码率高于编码码率,基站减少发送比特(缩小分母)。
TB(确切的说,CB)初传时,基站从d0开始选择比特(即RV0)。如果空口码率高于编码码率,基站(选择)发送比特总数小于N,包括系统比特和部分校验比特——校验比特数量越少,发送码率越高。如果空口码率接近0.95(协议规定的NR码率上限),基站只发送系统比特和极少量校验比特,这意味着,信道质量足够好,UE才能正确译码——当然,如果UE没先向基站“吹牛”(过高的CQI和RI),基站也不会乱来。如果接收方缓存有限,发送方需要启用LBRM,确保发送码率足够高。LBRM对上行方向(PUSCH)和下行方向(PDSCH)都适用,上行方向可通过高层参数rateMatching(LimitedBufferRM)配置是否支持,下行方向则强制要求支持,毕竟终端能力比基站差一大截。如果下行方向(PDSCH)启用LBRM(ILBRM=1),环形缓存大小Ncb=min(N,Nref),即N和Nref的较小值。Nref计算公式如上图所示,C为码块数量,RLBRM为2/3,TBSLBRM为启用LBRM时的TBS。TBSLBRM确定过程详见3GPPTS38.212的章节。确定Ncb后,可定义各个CB的不同RV(RedundancyVersion)。不同RV表示从环形缓存的不同位置开始选择比特,起始位置以k0表示,k0=0表示从头部(d0)开始。如果没有启用LBRM,Ncb=N,Ncb为66Zc(BG1)或50Zc(BG2)。对于BG1,RV0、1、2、3的k0分别为0、17Zc、33Zc、56Zc;对于BG2,RV0、1、2、3的k0分别为0、13Zc、25Zc、43Zc。如果启用LBRM,Ncb可能小于N,但不同RV的k0依然为Zc的整数倍(注意括号为向下取整)。
对于编号为r的CB,长度为N的(LDPC编码)序列d0,d1,…,dN-1,经过“比特选择”转换为长度为E的序列er0,er1,…,er(E-1),再经过“比特交织”转换为长度为E的序列fr0,fr1,…,fr(E-1)。“比特交织”采用简单的“行列交织器”,交织行数为调制阶数Qm。最后,如果C>1,即前面进行了码块分割(CodeBlockSegmentation),基站还要进行码块串接(CodeBlockConcatenation),构成长度为G的序列g0,g1,…,g(G-1)。NRPDSCH(四)-05-15原文这一篇谈PDSCH物理传送模型的后半部分,内容包括加扰(Scrambling)、调制(Modulation)、层映射(LayerMapping)、天线端口映射(AntennaPortMapping)、VRB映射(MappingtoVRB)和PRB映射(MappingfromVRBtoPRB),协议描述详见3GPPTS38.211的章节~章节。
首先是加扰。TB(TransportBlock)经“信道编码”(可参考《NRPDSCH(三)》)后转换为CW(Codeword,码字)。在NR中,PDSCH(一次调度)最多支持两个CW(和LTE相似,受限于层数),1个CW对应1个TB,分别记为q=0和q=1。PDSCH和PDCCH的“扰码”(ScramblingCode)相似,c(n)由多项式x1和x2生成,但初始序列cinit稍有差异。PDSCH的cinit输入包含q,对应不同CW。同时,PDCCH的cinit的n_ID为PDCCH-DMRS-Scrambling-ID(适用于USS),PDSCH的cinit的n_ID为DataScramblingIdentityPDSCH(适用于C-RNTI或CS-RNTI,且不使用CSS的DCI1_0调度)。无论PDCCH,还是PDSCH,如果RRC没有配置ID(Identity),n_ID默认等于n_cell_ID。然后是调制,将二进制序列(BinarySequence)转换为复数序列(ComplexNumberSequence),长度为M。在NR中,PDCCH使用QPSK调制(4状态->2比特->1符号),提高DCI传送的可靠性。对于PDSCH,特别是TB较大的时候,只用QPSK效率太低了——因而,NRPDSCH支持4种调制方式,包括QPSK、16QAM、64QAM和256QAM,调制阶数(Qm,一个调制符号对应的比特数量)分别为2、4、6、8(同时决定速率匹配中BitInterleaving的交织行数,可参考《NRPDSCH(三)》)。Qm越大,空口码率越高。
接着是层映射,将符号映射到不同层。和LTE相似,NR可通过“空分复用”(SpatialMultiplexing)提升传输速率,这是一种基于MIMO(Multi-Input-Multi-Output)的技术。所谓MIMO,即“信道”有“多路输入”(多个发射天线端口)和“多路输出”(多个接收天线端口),构成一个“信道矩阵”。计算矩阵的“秩”(Rank),可获得“互不相关”的信道数量,即“层”(Layer)的数量。基站在不同层“并行”发送不同数据,就可以提升下行传输速率。层数越大,空口码率越高。由“秩”的定义可知,层数不会大于发射天线端口数,也不会大于接收天线端口数。注意,“天线端口”不等同于“物理天线”——“天线端口”(AntennaPort)是一个逻辑概念,由对应的参考信号(ReferenceSignal)定义。UE根据参考信号识别天线端口,不知道对应信号是从一个物理天线发射,还是多个物理天线(合并)发射的。显然,天线端口数也不会大于物理天线数。由此可见,层数还是受限于物理天线数,且主要受限于UE——由于空间有限,UE装不下那么多天线(考虑波长和干扰等)。
在LTE早期版本中,UE使用CRS(CellSpecificRS,小区特定参考信号)进行信道估计和数据解调,CRS最多配置4个天线端口(p=1~4),也只能支持4层传输。CRS的问题是开销太大(每个下行子帧,整个下行带宽的每个RB都会发送CRS),增加CRS天线端口数量可以提高层数,但CRS开销的增长也会抵消层数的增益,对峰值速率产生限制。为此,在LTE后期版本中,3GPP引入CSI-RS(ChannelStateInformationRS,信道状态参考信号)用于获取CSI(ChannelStateInformation),并添加UE-RS(UESpecificRS,UE特定参考信号,也可称为DMRS)用于数据解调(CSI-RS在R10引入,UE-RS引入更早,TM7和TM8已经使用UE-RS)。
在LTE中,CSI-RS支持1、2、4、8个天线端口配置,在p=15、p=15~16、p=15~18或p=15~22发送;UE-RS在p=5、p=7、p=8或p=7~v+6发送——v为PDSCH传输层数。R10增加的TM9用CSI-RS和UE-RS替代CRS,PDSCH最多支持8层传输。NR干脆取消CRS(同时取消基于CRS的预编码矩阵,传输模式随之简化),PDSCH最多也支持8层传输——对于DMRSType1,天线端口为{1000~1007},对于DMRSType2,天线端口为{1000~1003,1006~1009}。往前看,CW数量和层数也有关联。第一,CW数量不可以大于层数,1个CW可以映射到多层(最多4层),反过来则不可以。第二,如果CW数量为2,在LTE中,层数至少为2(由第一点可知),在NR中,层数至少为5——换句话说,在NR中,如果调度1个TB,层数可为1、2、3、4,如果调度2个TB,层数可为5、6、7、8。第三,CW和层的映射关系是固定的,举个例子,在NR中,如果2个CW映射到5层,第一个CW映射到前2层,第二个CW映射到后3层。无论有多少个TB(CW),多少层,映射(分配)到各层的符号数量(N_layer_symbol,以下记为N)是相同的——这不是巧合,而是速率匹配的结果(通过选择比特和占用RE等方式)。举个例子,1个CW映射到4层,N=M(0)/4,M(0)符号平均分配到4层;2个CW映射到6层,M(0)和M(1)相等,N=M(0)/3=M(1)/3。2个CW映射到5层或7层,M(0)和M(1)不等,映射到5层时,N=M(0)/2=M(1)/3,映射到7层时,N=M(0)/3=M(1)/4。
接着是天线端口映射,将层数据(符号)映射到天线端口,每个天线端口对应一个“独立”的“时频平面”。3GPPTS38.211这部分描述非常简单,关键是最后一句:Thesetofantennaports{p0,…,pv-1}shallbedeterminedaccordingtotheprocedurein[4,TS38.212].也就是说,基站先根据3GPPTS38.212描述确定天线端口(序号和数量),再映射层数据。在LTE中,UE根据CRS或CSI-RS计算信道矩阵的秩,通过RI(RankIndicator)反馈给基站,基站考虑各种因素后,再决定下行传输层数。在NRTDD中,即使基站没有获得CSI,基于TDD的信道互易性,也可通过上行的SRS(SoundingRS)推算下行传输层数(具体实现取决于厂家)。此时,基站根据3GPPTS38.211的.2章节找到DMRS天线端口,将层数据“一对一”映射到天线端口,以单天线端口方式传输。
更典型的场景,是基于CSI的下行传输。“信道矩阵”往往不是“满秩”的,层数(v)可能会小于天线端口数(p,CRS或CSI-RS),基站需要通过矩阵V(pxv)将层数据转换为天线端口数据,这个过程称为Precoding(预编码),相应的,矩阵V称为PrecodingMatrix(预编码矩阵)。不过,Precoding更重要的作用,是减少信道干扰,简化接收实现。
假设MIMO(示图为2x2MIMO)的信道特性可由矩阵H描述,对矩阵H进行SVD(SingularValueDecomposition,奇异值分解),分解为U∑VH,如果基站在发送前使用矩阵V转换,UE在接收后使用矩阵UH转换,此时的信道特性(包含V、H和UH)可由矩阵∑描述。矩阵∑是一个对角矩阵(对角线以外的值均为零),对角线上的“非零值”即矩阵的秩(RandIndicator)。UE测量接收的CRS或CSI-RS,推算矩阵H,通过SVD得到矩阵U、矩阵∑和矩阵VH。问题是,需要矩阵V(预编码矩阵)的是基站,而将矩阵V反馈给基站需要很大的开销。3GPP设计了一个折中的方法——按照层数和天线端口数的组合预定义预编码矩阵V的集合,称为Codebook(码本)。基站和UE都知道Codebook的内容,可通过PMI(PrecodingMatrixIndex)确定具体的矩阵——这种方式称为CodebookBasedPrecoding(基于码本的预编码)。
在LTE的TM4中,UE根据矩阵H推算,从码本中选择最适合的矩阵V,通过PMI反馈给基站——如果基站重新选择预编码矩阵(或更彻底的,重新选择传输层数),会明确通知UE。这种“眉来眼去”的方式称为CloseLoopPrecoding(闭环预编码)。还好,PMI是一个索引,比矩阵开销小很多。在LTE的TM3中,基站和UE以相同方式选择预编码矩阵,不需要传递PMI,这种“里应外合”的方式称为OpenLoopPrecoding(开环预编码)。无论闭环预编码,还是开环预编码,都是基于码本的预编码,预编码对UE是“可见”的。这里有两个问题。码本是一个“有限”集合,无论UE测量结果多精细,从计算结果映射为码本都会产生“量化误差”。另一方面,UE由“过去”的测量推算PMI,而预编码矩阵将用在“未来”的传输,期间信道特性可能发生变化,为了获得更好的预编码效果,UE需要及时上报CSI(PMI),但也会增加CSI的开销。为此,NR将码本分为TypeI和TypeII两种类型,设计了更精细的码本以贴近实际信道特性,同时,NR的CSI-RS配置和CSI报告配置也比LTE更为灵活(复杂)。
和“基于码本的预编码”对应,还有“基于非码本的预编码”(Non-CodebookBasedPrecoding)。LTE的TM1~TM6使用前者,LTE的TM7~TM9,以及NR,使用后者。所谓“非码本”,基站依然需要选择合适的预编码矩阵,只是不一定来自于码本。基站可以根据UE反馈(不一定会用,但可以参考)的PMI(码本),或SRS的信道估计(基于TDD的信道互易性),或其他任意算法(厂家自由发挥)。Anyway,无论基站选择什么样的预编码矩阵,都不需要通知UE,原因在于解调的参考信号发生了变化。在“基于码本的预编码”中,UE使用CRS解调,而CRS在预编码“之后”插入,UE必须知道基站的预编码信息,才可以进行解调。在“基于非码本的预编码”中,UE使用DMRS解调,DMRS在预编码“之前”插入,基于DMRS的信道估计可以“完整的”反映“数据”的传输过程,包括预编码,UE可以直接用DMRS进行相干解调。可见,在“基于非码本的预编码”(包括NR)中,预编码对UE来说是“透明”的,基站只要告诉UE下行传输层数,不用传递任何预编码矩阵的信息。
顺带一提,在LTE中,PDSCH在整个频带使用相同的预编码。NR的频域范围远大于LTE,不同范围的信道特性差异较大,因此,NR支持PDSCH在不同范围使用不同的预编码。使用相同预编码的一组PRB称为一个PRG(PrecodingResourceBlockGroup)。PRG大小表示预编码粒度(PrecodingGranularity)。P'BWP,i表示BWPi的PRG大小,取值可为2、4或wideband。wideband表示所有RB使用相同的预编码,此时UE只支持连续的RB分配。DCI1_0调度时,P'BWP,i固定为2;DCI1_1调度时,P'BWP,i由RRC配置和DCI确定,详见3GPPTS38.213的章节。
最后是资源映射,数据(符号)先映射到VRB(VirtualRB),再映射到PRB(PhysicalRB)。VRB资源分配详见《NRPDSCH(二)》,UE从DCI的FrequencyDomainResourceAssignment和TimeDomainResourceAssignment推算VRB,使用符合3GPPTS38.214规定的RB和RE进行映射。在RB粒度上,和SSB重叠的CRB不用于映射;在RE粒度上,用于DMRS、PTRS或NZPCSI-RS(MeasObjectNR中CSI-RS-ResourceMobilityCSIRS配置的NZPCSI-RS除外)的RE,或声明“NotAvailableForPDSCH”的RE不用于映射。映射顺序是先频域(k),后时域(l)。
对于Type0频域资源(位图形式),从VRB到PRB映射为非交织方式。对于Type1频域资源(RIV形式),从VRB到PRB映射可为交织或非交织方式,基站通过DCI的VRBtoPRBInterleaving指示。对于非交织方式,VRBn映射到PRBn——如果PDSCH通过CSS的DCI1_0调度,VRBn映射到PRBn+N_CORESET_start。N_CORESET_start对应CORESET最低的PRB。PDSCH的PRB交织和PDCCH的CCE交织(可参考《NRPDCCH(二)》)有点相似,实现过程可理解为“行进列出”。VRBtoPRBInterleaver定义交织RBBundle的大小(n2或n4),如果基站没有配置,UE默认为2——注意,RBBundle大小为2时,PRG(预编码粒度)不能为4(可为2或wideband)。不同于PDCCH(R可配置),PDSCH的交织行数(R)固定为2,C=int(N_PRBBundle/R)。NRPDSCH(五)这一篇谈MCS(ModulationandCodingScheme)和TBS(TransportBlockSize)的确定。将数据“装载”到PDSCH之前,基站需要先做几个决定:1、调度TB的数量(1或2);2、各TB的Qm(ModulationOrder),即调制阶数;3、各TB的TBS,即TB的大小;4、各TB的RV(RedundancyVersion),即HARQ冗余版本。这里重点谈Qm(MCS)和TBS,由于厂家实现存在差异,协议主要从UE角度描述。整体来看,NR和LTE实现机制相似,但又略有不同。
从UE角度看,“码率”自然越高越好(如果解码正常的话),但从基站角度看,还要面对几个“现实困难”:1、PDSCH资源是所有UE共享的,不能将所有资源分配给一个UE;2、在资源确定的情况下,层数和Qm决定了“码率”,层数和Qm又取决于信道状态;3、不同UE在同一时刻的信道状态不一样,同一UE在不同时刻的信道状态也不一样。因此,基站需要动态调整MCS和TBS,以实现高效和可靠的传输。简单的说,在高速公路跑拖拉机(浪费资源),或在乡村小路开法拉利(容易翻车),都是不合适的。假设小区内同时存在多个UE,如果基站只考虑“效率”(总吞吐量),资源优先分配给信道状态最好的UE就行了。不过,有的UE(通常在小区边缘)可能什么都分不到,这样不和谐。基站要表现的“公平”一点,UE信道状态再差,多少也分些资源。更进一步的,基站还要考虑业务优先级、承载优先级、请求业务量、历史流量、历史速率、初传重传等,才能兼顾“公平”和“效率”。这是一件复杂的事情,运营商各有各的考虑,厂家也各有各的实现,3GPP自然不会(不想)干涉。因此,这里不讨论资源如何分配,假设UE的PDSCH资源(N_PRB)是确定的,重点关注信道状态对MCS和TBS的影响。
下图为CSI(ChannelStateInformation)的典型应用场景。基站在映射天线端口后插入CSI-RS(或CRS)信号,UE测量CSI-RS(或CRS),通过PUCCH或PUSCH向基站发送CSI报告。NR的CSI报告比LTE丰富,但这里不展开介绍,只关注LTE和NR共有的三项:RI(RankIndication)、PMI(PrecodingMatrixIndicator)和CQI(ChannelQualityIndicator)。RI是UE“建议”的下行传输层数,PMI是UE“建议”的下行预编码矩阵(索引),CQI是UE“建议”的最高MCS——PMI是基于RI选择的,而CQI是基于RI和PMI选择的。CSI报告的具体内容取决于场景和配置。在LTE中,TM1~TM9都会上报CQI,只有TM3、TM4,以及配置PMI/RI上报的TM8、TM9会上报RI,只有TM4、TM5、TM6,以及配置PMI/RI上报的TM8、TM9会上报PMI(金辉老师整理)。NR的CSI报告配置比LTE复杂很多,有机会再谈(我会告诉你我还没学吗)。
对基站来说,CSI报告只是“建议”,基站会作为“参考”,但不一定会遵循执行,原因是CSI存在局限。一方面,CSI反映的是“过去”的状态,不一定适用于“未来”的传输;另一方面,CSI反映的是“单个”UE的状态,而基站要考虑“所有”UE的调度(站得高,看得远呀)。另外,在资源充足时,基站还可以用“效率”换取“可靠性”——如果传输数据量不大,基站可以降低MCS(Qm和R)或层数(v),提高UE解码的成功率。
假设基站接受UE建议,使用RI作为下行传输层数,由于调度TB(CW)的数量和层数相关,RI实际也影响了调度TB的数量——在层数大于1(LTE)或大于5(NR)时,TB数量应为2,否则,TB数量应为1。如果基站使用PMI对应的预编码矩阵,基站和UE根据层数和天线端口数量找到Codebook(码本),再根据PMI找到预编码矩阵(V)。上述部分可参考《NRPDSCH(四)》。CQI是在使用建议的RI和PMI,且PDSCH传输的BLER最高为10%(剩余误码交给HARQ和RLC解决,但URLLC场景要求不同)的情况下,建议基站使用的最高MCS。下图右侧为LTE的CQI表格(3GPPTS36.213Table-1),第二列(Modulation)表示调制方式,第三列(CodeRatex1024)表示期望码率(x1024),第四列(Efficiency)表示1个符号携带信息比特的数量(Efficiency=CodeRatexQm)。
以CQI=1为例,调制方式为QPSK,Qm=2,CodeRate=78/1024=0.0762,efficiency=78/1024x2=0.1523。实际上,LTE有N张CQI表,以适应不同场景,比如是否支持256QAM。UE参照3GPPTS36.213的7.2章节选择CQI表,如果基站和UE对选择的表格理解出现偏差,可能会导致解码失败。
不过,CQI是UE根据信道质量(通常和SINR相关性最大)推算的,不同厂家算法可能不同,同时,UE只知道自己的状态,基站掌握的信息更全面。因而,CQI也只作为参考,基站需要综合各种因素来确定MCS。MCS本质上就是CQI——MCS(取值为0~31)是在CQI(取值为0~15)的基础上,基于频谱效率,通过复用和插值产生的。同一调制模式对应的行数,MCS表格会比CQI表格多一些。
各种调制模式(Modulation)的调制阶数(Qm)是确定的,QPSK的Qm为2,16QAM的Qm为4,64QAM的Qm为6。基站根据CQI选择MCS(Qm和TBS)时,会保证根据Qm和TBS计算的码率尽可能接近CQI的期望码率——如果多个“Qm+TBS”组合对应的码率同样接近期望码率,选择TBS最小的那个组合。TBS不直接体现在MCS表格中,还需要根据ITBS和n_PRB(PDSCH占用PRB数)继续查表。
对于UE来说,根据DCI的MCS查表可获知Qm和ITBS。不过,对于使用P-RNTI(寻呼)、RA-RNTI(随机接入中的MSG2)、SI-RNTI(SIB1和OSI接收)加扰的DCI,PDSCH的Qm固定为2(确定TBS的方式也不一样)——在这些场景中,UE通常处于空闲态,没机会向基站发送CSI报告,基站只能保守一些;另一方面,上述场景的数据量较小,且对可靠性要求高于效率(都不是业务数据),基站也希望保守一些。
在LTE中,以下三种场景中TBS的确定方式不一样:1、使用P-RNTI、RA-RNTI、SI-RNTI加扰DCI;2、使用其他RNTI加扰DCI,PDSCH在FDD子帧或TDD正常子帧(非特殊子帧);3、使用其他RNTI加扰DCI,PDSCH在TDD特殊子帧。场景1和场景3相对复杂,简单说一下场景2。如果UE收到DCIformat2/2A/2B/2C/2D(支持调度2个TB),且某个TB的IMCS=0,RVid=1,表示这个TB是Disable的(没有传输数据,对于NR来说,IMCS=26,RVid=1表示Disable),UE不用关注。假设TB不是Disable的,且0<=IMCS<=28(表格中取值29~31用于自适应重传,这里不展开)。如果层数为1(没有使用空分复用),UE根据IMCS查询3GPPTS36.213的表格-1获得ITBS,再根据ITBS和n_PRB查询3GPPTS36.213的表格-1获得TBS。举个例子,如果IMCS=14,n_PRB=6,则ITBS=13,TBS=1544。如果层数为2、3或4,UE分别根据3GPPTS36.213的.2章节(2)、.4章节(3)或.5章节(4)描述确定TBS。
再来看NR。
首先确定调度TB的数量。从UE角度看,当RRC高层参数MaxNrofCodeWordsScheduledByDCI为2,且接收到DCI1_1时,表示基站可能调度2个TB——如果TB对应的IMCS=26,且RVid=1,表示这个TB是Disabled的,UE可以忽略。如果调度1个TB(无论是TB1还是TB2),映射到Codeword
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 淮安北京路大桥施工控制技术研究:自锚式悬索桥的创新实践
- 淋巴结切除数目与不同分期胃癌预后的相关性探究
- 液体界面调控印刷:多材料微纳图案与器件制备的创新之路
- 涉外网络消费合同法律问题的多维度剖析与应对策略
- 消费者视角下食品供应链质量激励与监管机制的深度剖析与重塑
- 电商平台数据分析与营销策略手册
- 2026年智能纺织服装供应链可视化管理
- 妊娠期结核病合并妊娠期急性阑尾炎的鉴别
- 妊娠期糖尿病酮症酸中毒的转化医学研究
- 妊娠期糖尿病酮症酸中毒的妊娠期反应性关节炎管理
- 人工智能导论-第2版-全套课件
- 《智慧物流与供应链》课件-项目八 智慧物流与供应链管理的运作模式
- 2024年部编版高考语文一轮复习必背重点:古代文化常识
- GB/T 4706.27-2024家用和类似用途电器的安全第27部分:风扇的特殊要求
- DL∕T 1965-2019 回转式翻车机系统运行维护导则
- 公司及部门年度经营责任书(模板)
- MH-T 5002-2020运输机场总体规划规范
- 甲磺酸奥希替尼片-临床用药解读
- 医务人员职业风险与防护课件
- 9《那个星期天》课件
- 人口信息查询申请表(表格)
评论
0/150
提交评论