为了接收PDSCH或PUSCH,UE一般要先接收PDCCH,其中包含的DCI会指示UE接收PDSCH或PUSCH所需的所有信息,如时频域资源分配信息等。当UE收到DCI以后,就可以根据DCI的指示对PDSCH或PUSCH进行调度。下面先介绍下行资源分配,上行和下行有很多共通的地方,然后只介绍上行和下行不同的地方。
1.时域资源分配
DCI中的Time domain resource assignment字段会指示PDSCH的时域位置。
该字段共4个bit,所以其值为0-15,假设其值为m,则m+1指示了一个时域资源分配表格的行索引,该行中的信息就会具体指示PDSCH的时域资源。指示的方式有两种:
1> 一种是直接指示三个信息:PDSCH和调度该PDSCH的PDCCH之间的时隙偏移K0、PDSCH在时隙中的起始符号S以及PDSCH持续的符号长度L,如下表所示:
PDSCH mapping type指示了PDSCH时域映射类型Type A或Type B,具体如下表:
如果PDCCH没有在一个时隙的前三个符号内接收到,则UE不希望在该时隙内收到Type A的PDSCH,因为这种情况下PDSCH和PDCCH离的太近,UE会来不及解码PDCCH。
假如在时隙n接收到PDCCH,则在下式所指示的时隙中配置PDSCH:
式中uPDCCH和uPDSCH分别为PDCCH和PDSCH的子载波间隔;
2>另一种是指示PDSCH和调度该PDSCH的PDCCH之间的时隙偏移和一个SLIV值,UE根据SLIV值来计算PDSCH的起始符号和持续的符号个数,计算公式如下:
式中S是起始符号,L表示持续的符号个数。
UE会根据不同情形,即加扰PDCCH的RNTI和PDCCH搜索空间类型的不同,确定具体的表格和表格来源。对于处于初始接入状态的UE,只能用预定义的表格,有三个预定义的表格Default A Default B和Default C,上面用于举例的图1就是Default A,而对于RRC连接态的UE来说,高层信令pdsch-TimeDomainAllocationList会配置一个与预定义表格类似的列表。具体哪种情形下用哪个表格如下图,图中只截取了部分表格,具体可参考38214:
2.频域资源分配
DCI中的频域资源分配字段Frequency domain resource assignment会指示PDSCH的频域资源分配。PDSCH频域资源分配分为Type 0和Type 1两种类型,Type 0支持非连续的分配,从而可以获得频率分集增益,Type 1支持连续资源分配,可减少该字段所需bit数。但DCI format 1_0只支持Type 1。
(1)Type 0
对于非连续资源分配类型,要先知道一个概念:RBG,一个RBG是一个VRB group,由P个连续的VRB组成,具体个数由高层参数rbg-Size和BWP带宽决定:
rbg-Size决定了是Configuration 1还是Configuration 2。
那么一个BWP内的RBG数量为:
其中start表示BWP的起始RB编号,BWP内所有RBG编号从低频开始递增排列。
则BWP内第一个RBG的大小是:
最后一个RBG的大小是:
其余RBG的大小是P,这样可以很好的利用BWP内的碎片资源。
在Type 0资源分配类型下,Frequency domain resource assignment会作为一个bitmap来指示哪些RBG是分配给PDSCH的:一个bitmap中的每个bit代表一个RBG,最高bit对应RBG0,以此类推,bit为1表示该RBG分配给PDSCH,为0表示不是PDSCH资源,这样可以灵活的调度资源。一般情况下,RBG可以直接映射到相同编号的物力资源上。
(2)Type 1
在Type 1中,频域资源指示字段不会作为bitmap,而是会指示一个RIV(Resource Indicator Value)值,UE通过该值计算PDSCH起始RB和所占RB数量,计算公式如下:
1.时域
PUSCH和PDSCH时域资源指示方式几乎一样:
2.频域
PUSCH和PDSCH频域资源分配不同的地方在于PUSCH支持跳频,其他地方几乎相同:
下面说明PUSCH和PDSCH不同的地方:frequency hopping:
跳频传输可以实现频率选择性增益和干扰随机化的效果,分为时隙内跳频和时隙间跳频(时隙间跳频用在PUSCH时隙聚合传输的情况,PUSCH时隙聚合传输与上述PDSCH时隙聚合传输相同)。在时隙内跳频中,一个时隙中前一半符号为第一hop,后一半符号为第二hop,不同hop内PUSCH频域资源位置不同;时隙间跳频时,时隙编号为偶数的时隙内和时隙编号为奇数的时隙内PUSCH频域资源位置不同。
只有下面两种情况下支持跳频传输:
在可以跳频传输的情况下,DCI中会有1bit的跳频指示Frequency hopping flag,如果为1表示采用跳频,为0表示不跳频。当配置为跳频时,高层信令会指示几个跳频的offset具体取值,然后频域资源分配字段中的前N个bit就要从高层指示的几个具体的offset中选择一个,选择方式如下:
频域资源字段除去N个指示offset的bit后,剩余bit指示PUSCH的起始RB位置S和所占RB长度L,与PDSCH相同。然后跳频方式如下:
在BWP内,有两种RB:VRB和PRB,VRB是虚拟资源块,PRB是实际的物理资源块。上述PDSCH和PUSCH的频域资源分配都是以VRB为单位,然后VRB要映射到PRB上,映射方式分为交织映射和非交织映射。BWP内VRB和PRB编号都是从BWP的起始位置编号为0开始增序排列。
PUSCH和PDSCH的另一个不同点在于PUSCH不支持交织映射。
交织映射将资源分散到了BWP的整个频带范围内,从而获得了频率分集增益,但是为了降低信道估计的复杂度,交织以RB bundle为单位进行,RB bundle由连续几个RB组成,也就是说PDSCH交织就是将VRB组成的RB bundle映射到PRB组成的RB bundle上。
组成RB bundle的RB个数L由高层信令指示,则一个BWP内的RB bundle个数为:
其中start和size分别为BWP的起始位置和RB数量,这样可以将RB bundle从point A开始对齐,则:
这样很好的利用了BWP内的碎片资源。具体的交织器公式在协议中给出,这里不再赘述。