NR PDCCH CORESET

Posted 梦之未来

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NR PDCCH CORESET相关的知识,希望对你有一定的参考价值。

PDCCH 是非常重要的信道,基站要通过PDCCH向UE发送DCI,来指示UE进行相应的 UL DL operation 。如果DCI指示的是PDSCH信息,UE要根据DL DCI在PDSCH 上接收下行数据;如果DCI指示的是PUSCH信息,同样的UE要根据UL DCI 指示资源的资源在PUSCH 发送上行数据。

38.212 R16版本列出的DCI format如下

 

NR由于载波带宽太大,引入了BWP的概念,根据不同的业务可以分配不同大小的BWP。在BWP 的概念上又引入了CORESET 和SearchSpace的概念,用于确定一块具体的时频域资源,接收不同的数据。在NR 中 ,网络端会在BWP 中配置 多个CORESET 及Searchspace,然后通过一个CORESET 和一个SearchSpace配对的方式确定一块时频资源用于不同的用途,例如 可以用一对CORESET SearchSpace 确定的时频域资源去检查DCI-Format0_0/1_0,然后用另一对CORESET和SearchSpace 确定的时频域资源去检查DCI-Format0_1/1_1。

 

具体的说CORESET 描述的是频域资源分布,Searchspace描述的是时域资源分布,两者配对 就可以确定具体的时频域资源。

 

例如上面的Searchspace id 2和CORESET 0 配对主要用于DCI format 0_0/1_0的检测

这个Searchspace id 5和CORESET 1 配对主要用于DCI format 0_1/1_1的检测。

 

具体CORESET 和Searchspace是怎么描述时频域资源的?。

 

首先看CORESET部分。

 

NR中,引入了CORESET(control resource set)概念,对应PDCCH物理资源配置,CORESET 对应的主要是频域资源。

CORESET 在频域对应的是一组PRBs,最小粒度为6RB;时域长度为1-3个OFDM符号,且在时隙中开始位置可灵活配置;具体的说CORESET 又有REGs(Resource Element Groups)和CCEs(Control Channel Elements)的概念,下面逐步介绍。

这里先提下REG index 的编号顺序,要遵循先时域后频域升序方式,例如下图的编号方式。 

 

对于CORESET 的个数,协议中也有规定。每个小区最多配置12个CORESET(0~11),服务小区配置给UE 的每个DL BWP,CORESET 不能超过4个;CORESET index 只能是从1~11,index 0已经被CORESET0占用,所以加上CORESET 0 ,最多只能12个CORESET;CORESET 0相对特殊,为Type 0 CSS 专用,用于RMSI  (SIB1),其中MIB 中pdcch-ConfigSIB1 高四位 代表controlResourceSetZero,高四位索引查38.213table 13-1~13-10,可获得CORESET 0的复用样式、频域资源占用符号数量、RB数量和RB偏移;低四位 代表searchSpaceZero,使用低4位索引查38.213 table 13-11到13-15,可获得CORESET 0的SFN、时隙索引和起始符号等。

 

PDCCH 由多个CCE 组成,而CCE 有对应的aggregation levels(1,2,4,8,16),简单的说Aggregation level 是16 就代表 16个CCE 组成一个Aggregation level,在进行PDCCH 盲检时,会以Aggregation Level 的方式配置候选集个数,具体参考另一篇帖子PDCCH盲检。 

CORESET参数定义 

 

controlResourceSetId : 配置 1~11 CORESET id,在一个服务小区内所有BWP 中唯一 ,CORESET 0固定用于RMSI 的searchSpace 0的资源。

frequencyDomainResources:CORESET频域资源,45bits,每个bit表示6RBs,从PRB0开始。最高位bit表示配置的BWP中最低频率,index从下往上升序。属于CORESET 的bit位要置1。

Duration 是CORESET时域连续符号数,取值1-3

只有高层参数dmrs-TypeA-Position(MIB/ServingCellConfigCommon中) 配置为3   CORESET符号个数才能配置为3

pdcch-DMRS-ScramblingID: PDCCH DMRS是伪随机序列,因而需要赋初值,这里就是初始ID 配置,PDCCH DMRS后面再介绍。

举个例子说明下频域资源占用分布:

frequencyDomainResources '11111111 11111000 00000000 00000000 00000000 00000'B,

during 1,

从BWP 起始点开始,连续占用13个RB group,一共13*6=78个RB;时域上占用一个符号,则CORESET 占用的资源如下。

cce-REG-MappingType:CCE到REG的映射方式,交织或非交织

 

交织时配置参数:

     reg-BundleSize:交织块大小(REG个数)[n2,n3 n6]

     interleaveSize: 交织行个数 [n2,n3 n6]

     shiftIndex:交织时的偏移索引,不配置时默认为PCID

precoderGranularity:PDCCH 在频域上的预编码粒度。sameAsREG-bundle表示一个REG Bundle内采用相同预编码, allContiguousRBs 表示CORESET频域上所有REG采用相同预编码。

tci-StatesPDCCH-ToAddList/tci-StatePDCCH-ToReleaseList :TCI 配置,即PDCCH的DMRS 和TCI Status中配置的下行RS(CSI-RS或SSB)之间的QCL关系

tci-PresentInDCI :DCI 中是否指示TCI索引

参数介绍完毕,下面介绍下比较复杂的cce-REG的mappingtype

CCE-REG 的交织

cce-REG-MappingType代表CCE到REG的映射方式,支持交织或非交织的方式

首先看交织时配置的参数:

     reg-BundleSize:交织块大小(REG个数)[n2,n3 n6]

     interleaveSize: 交织行个数 [n2,n3 n6]

     shiftIndex:交织时的偏移索引,不配置时默认为PCID

RE是时频域上最小的资源单位,1个RE在时域上对应1个symbol,在频域上对应1个Subcarrier。

 

CORESET 中的RE 首先组成 REG(Resource Element Group),REG在频域上占用12个subcarrier,在时域上占用1个符号,故对应关系1 REG =12 RE,因而1个REG 在频域上对应的是1个RB,在时域对应的是1个OFDM符号,而1个CCE又包含6个REG,所以1个CCE=6*12=72个RE。再次提一下,CCE中REG 的编号原则是先时域后频域。

上图中的REG编号是连续的,但是实际中可能会有不连续的情况,因为CCE不直接映射到REG,而是通过REG Bundle间接映射,CCE和REG Bundle之间的映射可能会交织,这样就会打乱REG index。

 

 

下面介绍与交织相关的参数:

For a CORESET configured by the ControlResourceSet IE:

 

-      is given by the higher-layer parameter frequencyDomainResources;

-      is given by the higher-layer parameter duration, where is supported only if the higher-layer parameter dmrs-TypeA-Position equals 3;

-     interleaved or non-interleaved mapping is given by the higher-layer parameter cce-REG-MappingType;

-    L  equals 6 for non-interleaved mapping and is given by the higher-layer parameter reg-BundleSize for interleaved mapping;

-     R  is given by the higher-layer parameter interleaverSize;

CORESET 包含的所有REG 数由N_CORESET_REG表示, 可由 frequencyDomainResources (这里每个bit 1代表6RB)和duration 决定。

例如下面的例子N_CORESET_REG =frequencyDomainResources(13×6)*duration(1)=78个REG

pdcch-Config setup :

                           

                              controlResourceSetToAddModList

                                  controlResourceSetId 1,

                                  frequencyDomainResources '11111111 11111000 00000000 00000000 00000000 00000'B,//13 个RB group

                                  duration 1, //代表一个 symbol

                                  cce-REG-MappingType interleaved :

                                   

                                      reg-BundleSize n2,

                                      interleaverSize n3,

                                      shiftIndex 240

                                    ,

 

L个REG 首先组成一个REG Bundle,通过再通过REG Bundle实现CCE 到REG 的映射。

以下的38.211 7.3.2 中的交织规则相关介绍。

非交织示例

non-interleaved 映射时L 固定为6 。交织函数就是f(j)=j

REG  bundle i is defined as REGsiL,iL+!,......,iL+L-1

举例说明会比较容易,如下:

  controlResourceSetId 1,

                            frequencyDomainResources '10000000 00000000 00000000 00000000 00000000 00000'B,//1 个RB group  对应6个RB

                                  duration 3 //代表时域占用3 symbol

                                  cce-REG-MappingType nonInterleaved 

由上可知N_CORESET_REG = 6×3=18     

N_CORESET_REG/L=18/6=3  则 i= 0,1,2   即只有3个REG Bundles

REG  bundle i is defined as REGsiL,iL+!,......,iL+L-1

REG bundle 0   =REG 0,REG 1,REG 2,REG 3,REG 4,REG 5

REG bundle 1   =REG 6,REG 7,REG 8,REG 9,REG 10,REG 11

REG bundle 2   =REG 12,REG 13,REG 14,REG 15,REG 16,REG 17

CCE j =REG bundlesf(6j/L),f(6j/L+1),......,f(6j/L+6/L-1)

CCE 0=REG bundles0 =REG 0,REG 1,REG 2,REG 3,REG 4,REG 5

CCE 1=REG bundles1 =REG 6,REG 7,REG 8,REG 9,REG 10,REG 11

CCE 2 =REG bundles2=REG 12,REG 13,REG 14,REG 15,REG 16,REG 17

效果图如下,可见非交织的情况下,CCE对应REG的编号是相对连续的。

 

交织示例

交织函数

函数中的参数均来自配置CORESET 时的参数

PBCH CORESET 0 的交织规则是固定的,规则如下

举例说明

  controlResourceSetId 1,

 frequencyDomainResources '10000000 00000000 00000000 00000000 00000000 00000'B,//1 个RB group  对应6个RB

                                  duration 2, //代表一个 symbol

                                  cce-REG-MappingType interleaved 

                                      reg-BundleSize n2,

                                      interleaverSize n2,

                                      shiftIndex 1

由上可知L=R=2 

 

N_CORESET_REG= 6×2=12   

N_CORESET_REG/L=12/2=6, 则 i= 0,1,...... 5  ,一共6个REG bundles。

REG  bundle i is defined as REGsiL,iL+!,......,iL+L-1

交织前

 

REG bundle 0   =REG 0,REG 1

REG bundle 1   =REG 2,REG 3

REG bundle 2   =REG 4,REG 5

REG bundle 3   =REG 6,REG 7

REG bundle 4   =REG 8,REG 9

REG bundle 5   =REG 10,REG 11

实际对应图

根据配置的参数确定具体的交织函数如下:

f(x)=(rC+c+nshift) mode(6)=(r3+c+1) mod 6

X=2c+r,X的值由c和r的取值共同确定

r=0,1

c=0,1,2

C=N_CORESET_REG/(L*R)=12/(2*2)=3

则X 的取值范围是  0(c=0  r=0) 1(c=0,r=1)

                         2(c=1  r=0)  3(c=1,r=1)

                         4(c=2  r=0)  5(c=2  r=1)

L=R=2 

6/L-1=2  f(6j/L),f(6j/L+1)...f(6j/L+2)  就是每个CCE 对应3个REG bundles

f(0)=f(2c+r)=(3r+c+1)mod 6=(3*0+0+1) mod 6=1   (x=0=2c+r 对应的c=0 r=0)

f(1)=f(2c+r)=(3r+c+1)mod 6=(3*1+0+1) mod 6=4   (x=1=2c+r 对应的c=0 r=1)

f(2)=f(2c+r)=(3r+c+1)mod 6=(3*0+1+1) mod 6=2   (x=2=2c+r 对应的c=1 r=0)

f(3)=f(2c+r)=(3r+c+1)mod 6=(3*1+1+1) mod 6=5   (x=3=2c+r 对应的c=1 r=1)

f(4)=f(2c+r)=(3r+c+1)mod 6=(3*0+2+1) mod 6=3   (x=4=2c+r 对应的c=2 r=0)

f(0)=f(2c+r)=(3r+c+1)mod 6=(3*1+2+1) mod 6=0   (x=5=2c+r 对应的c=2 r=1)

CCE 0 =REG bundlef(0),f(1),f(2)=REG bundle1,4,2

CCE 1 =REG bundlef(3),f(4),f(5)=REG bundle5,3,0

交织后对应情况,每个CCE包含的REG编号是断续的,通过交织打乱了CCE和REG bundle的对应关系。

另外一种方式可以直观的得到最后的交织结果,就是先行进 后列出的方式,具体如下:

如果基站可以获得信道质量信息,采用非交织的方式将CCE映射到信道质量较好的REG,可以获得频域选择性增益。

交织的方式由于会打乱CCE和REG bundle的对应关系,则可以获得频率分集效增益。

 

微信公众号同步更新,欢迎关注!

公众号:modem协议笔记

 

 

以上是关于NR PDCCH CORESET的主要内容,如果未能解决你的问题,请参考以下文章

小区搜索CORESET0

PDCCH盲检

NR 小区搜索 SearchSpace0

NR PDSCH时域资源

NR小区搜索S准则

NR PUSCH 动态调度时域资源