本短文章是对协议36.213 9.1.4.4 这节做的解释
BL/CE UE(CATM)
当EPDCCH 用于BL/CE UEs,也就是我们常说的CATM(EMTC)的终端,在使用EPDCCH作为UE的特定搜索空间(USS)时,名字就变为MPDCCH了。
由于EPDCCH在EPDCCH-SetConfig-r11中定义时,只定义了3种PRB pair,即{n2, n4, n8},而BL/CE UE的带宽为6个PRB,所以在用EPDCCH配置MPDCCH时,就采用了组合的方式来配置(2+4)。
由于
EPDCCH-SetConfigId-r11 ::= INTEGER (0..1)
所以,最多可以配置两个EPDCCH-SetConfig-r11。
如果配置为n2,那么6个PRB就有两个用来传输MPDCCH;
如果配置为n4,6个PRB种就有4个PRB来出生MPDCCH;
如果想让全部6个PRB都传MPDCCH,那么只能配置两个EPDCCH-SetConfig-r11,一个配置为2,另外一个配置为4,这样2+4,也能达到6个PRB全都配置。
那么问题来了,有6个PRB,想要配置其中的2个PRB传输MPDCCH,具体用的是用的6个PRB中的哪2个呢?(同理4个;2+4由于是在两个EPDCCH-SetConfig-r11中分别配置,所以也需要单独指示某2个PRB或4个PRB在6个PRB的具体位置,并且相互不重叠)
协议中引入了另外一个参数 “resourceBlockAssignment-r11”。
resourceBlockAssignment-r11 SEQUENCE{
numberPRB-Pairs-r11 ENUMERATED{n2, n4, n8},
resourceBlockAssignment-r11 BITSTRING (SIZE(4..38))
},
那么怎么来指示呢?那就要看这个协议的第二段了
我们先看以下EPDCCH包含的参数,EPDCCH最多配置2个;
每个EPDCCH set Config是相互独立的;
可以根据setConfigId-r11 新增加一个EPDCCH set Config,或者删除一个已经存在的EPDCCH set Config;
EPDCCH是在RRC 重配置中配置的,MPDCCH也是一样的:
RRCConnectionReconfiguration-r8-IEs --> RadioResourceConfigDedicated --> PhysicalConfigDedicated --> EPDCCH-Config-r11
PRB-pair indication for EPDCCH
这部分内容即适用与EPDCCH,也适用与MPDCCH(但下行带宽要设置为6)。
由于协议部分是表述性语言,给出的是一个结果,直接看,不少很好理解,我们先通过举例的方式来,不管EPDCCH还是MPDCCH,指示的方式是完全一样的,MPDCCH完全借用了EPDCCH的概念还有参数:
以MPDCCH 6个PRB(PRB 1 ~ PRB 6)时,指示2个PRB为例:
如果我们选择其中两个PRB,那么这两个PRB的组合有:
{1,2},{1,3},{1,4},{1,5},{1,6},
{2,3},{2,4},{2,5},{2,6},
{3,4},{3,5},{3,6},
{4,5},{4,6},
{5,6}
其实这个组合就是
并且
的全部解
我们已经知道下面这两个值,分别为2,6
那么我们按照协议里面的公式,算出每一个解所对应的“r”值。
“r”值的计算公式定义为:
其中尖括号部分,协议给出了定义:
这个就是概率论与数理统计中计数原理里面排列组合的表达式。
下面是原有的概念:若从 n 个互异的元素中一并取出不考虑顺序的 k 个 (k ≤ n),则考虑到 k 个元素
还有一个类似的公式:若从 n 个互异的元素中一并取出考虑顺序的 k 个 (k ≤ n),则一共有
我们按照公式,先计算第一个{1,2}
i=0,x=5,y=2,结果就是10;
i=1,x=4,y=1,结果就是4;
r = 10+4 = 14;
同样计算出所有的结果:
从这个表中,可以看到“r”是没有重复的,当配置一个“r”时,就表示对应的PRB pair配置给了UE。
而这个“r”值,就是resourceBlockAssignment-r11里面所填的值。
你会发现,所有的“r”值都属于一个集合
那么大家肯定会有疑问,这个“r”到底是不是唯一的,会不会重复?
答案是不会有重复,每一个“r”值就对应唯一的一个组合。
这个是可以证明的,这个也可能是这个公式的来源:
首先,做一个定义:若从 n 个互异的元素中一并取出不考虑顺序的 k 个 (k ≤ n),则考虑到 k 个元素
记为:C(n ,k) ;
当i为0时,即选择第一个元素的位置时(默认每次选择的PRB index是升序的,即k0<k1<k2<k3...),对每一个PRB按照下面的方式,进行一个权重赋值。
即如果第一个选了index 1,那么权重就是C(n-1,k),如果没选择index 1,那么剩余的都不可能选择index 1了。
同理,在第一个选择了index 1的前提下,第二个就是在剩余的里面再选着,如果选择了index 2,就记为C(n-2,k-1),如果第二个没有index 2,而是选择了index 3,就记为C(n-3,k-1),以此类推。
因为后面还有(k-1)个元素,并且后面的PRB index都比前面的大,所以第一个PRB index只能到 n -(k-1)。
以同样的方式,再选完第一个元素后,对第二元素继续赋值
按照这种方式,赋值完权重值后,有:
C(n-1,k)> C(n-2 ,k)> C(n-3 ,k) ...
同样i = 1,所有可能的权重也可以排序,也有类似结论:
C(n-2,k-1)> C(n-3 ,k-1)> C(n-4 ,k-1) ...
C(n-3,k-1)> C(n-4 ,k-1)> C(n-5 ,k-1) ...
这样的话:
如果第一个元素选择index 2,之后,能够计算的最大权重值就是
而如果第一个元素选择index 1,之后,只算第一个元素的权重值就是
先推到一个简单的公式
![]()
=
同理
所以
这样看来,只要第一个PRB选择了index 1,按照这种赋值权重的方式,就比第一个元素选择index 2所有可能的权重加一起都大。选择了index 0的权重都不需要加其他PRB的权重,就已经足够大。
通过这种方式,就可以确保选择了index 1的都比index 2的大。
以此类推,就可以确保所有可能的权重相加后都可以比大小,权重相加是唯一的。
下面是6个PRB时,选择4个PRB做为调度时的结果
当然了,还可以通过排列组合的方式,来证明这个问题,此处就不再列出来了。