LTE:VRB到PRB的映射( 二 )


文章插图
图2:DCI1A/1B/1D中与VRB分配相关的字段
VRB的编号(VRB )从0到
。VRB个数
的计算公式如图3所示:

LTE:VRB到PRB的映射

文章插图
图3:VRB个数的计算公式
VRB个数可能小于系统带宽中包含的PRB个数,多出来的RB pair是不能进行分布式传输的 。例如:系统带宽为25 RB的情况下,VRB的个数仅为24,即第25个RB pair不能用于分布式传输 。
在之前的博客中,我们已经介绍了RBG,这里我们依然会用到RBG概念中的P值(RBG的大小),见36.213的Table 7.1.6.1-1(如下图) 。
LTE:VRB到PRB的映射

文章插图
从36.211的Table 6.2.3.2-1和36.213的Table 7.1.6.1-1可以看出:gap的大小是
的整数倍,这样做的目的是为了使在同一个子帧内,分布式VRB资源分配与资源分配类型0/1能够平滑共存 。
(2)确定VRB交织矩阵:“横放”
确定
、P值以及VRB个数
的目的是为了计算VRB交织矩阵 。既然是矩阵,就需要明确该矩阵其有几行几列,包含哪些信息 。
一个VRB交织矩阵对应一个VRB交织单元 。
个连续的VRB 组成一个VRB交织单元,其中
LTE:VRB到PRB的映射

文章插图
图4:VRB交织单元中包含的VRB数
结合图3、图4可以看出:一共有
个VRB需要交织,而每个交织单元只包含
个VRB,所以交织单元的个数为
/
。更进一步,对应
,只有1个交织单元;对应
,有
个交织单元 。
交织矩阵共有
行,4列 。VRB 会逐行写入矩阵,并逐列读出(“横放列取”或“横写列读”,“列取”会在后面介绍) 。矩阵包含的元素个数
可能大于
,此时多出来的元素会填充为null,且填充为null的元素位于最后
行的第2列和第4列 。填充为null的元素个数为

我们以
,使用分布式VRB且

为例来介绍交织矩阵的生成 。我们先计算出相关的值,见图5
LTE:VRB到PRB的映射

文章插图
图5:

的例子
基于图5,生成的交织矩阵为(这是“横放”的过程,*表示null 。其实共有2个交织矩阵,第二个矩阵的处理是类似的,这里就不介绍了):
LTE:VRB到PRB的映射

文章插图
图6:生成的交织矩阵
(3)确定VRB对应的PRB:“列取”
“列取”是将VRB 是映射到PRB 的过程 。在“列取”过程中,null元素会被忽略 。
我们先使用图6的例子来说明“列取”的过程中,VRB 是怎么映射到PRB 的,然后再介绍该过程如何对应到公式中 。
以图6为例,假如需要确定VRB 12(
)对应的PRB,我们逐列读取该矩阵,遇*则跳过,直到读到的元素值为12,即读取的顺序为(0, 4, 8, 12),到第4个元素得到值12的元素,而计数是从0开始的,所以VRB 12对应的PRB 3(
) 。
假如需要确定VRB 15(
)对应的PRB,我们逐列读取该矩阵,遇*则跳过,直到读到的元素值为15,即读取的顺序为(0, 4, 8, 12, 14, 16, 1, 5, 9, 2, 6, 10, 13, 15),到第14个元素得到值15的元素,而计数是从0开始的,所以VRB 15对应的PRB 13(
) 。
图6的矩阵“列取”后的VRB 到PRB 的映射关系如图7所示 。
LTE:VRB到PRB的映射

文章插图
图7:“横放列取”后的映射关系
上面过程看上去比较简单,但通过公式中反映出来就略显复杂了 。在图8中,我对协议中公式做了一些标注,以便于大家理解 。其实理解公式的一种好方式是自己把一些数据代入公式,然后算一遍,这样能够加深理解 。