NR PDCCH 搜索空间

本文详细介绍了5GNR系统中PDCCH的搜索空间和CORESET的概念及其作用。PDCCH不再占用全部带宽,而是通过CORESET进行资源配置,搜索空间则指示PDCCH的时频位置。5GNR中有公共搜索空间CSS和UE特定搜索空间USS,分别用于不同场景。UE需依据搜索空间参数集解调PDCCH,进而获取PDSCH的调度信息,如SIB1。理解这些机制对5GNR的下行链路解码至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

搜索空间概述

       在5G NR系统中,由于系统的带宽较大,以及终端解调能力的差异性,为了提高资源利用率,降低盲检复杂度,(1)PDCCH不再频域上占据整个带宽;此外,为了增加系统灵活性,适配不同的场景,(2)PDCCH在时域的起始位置也可配。因此,在5G NR中,UE需要完全获取PDCCH的时频域资源配置信息,才可以进一步对PDCCH进行解调,也才可以进一步对PDSCH进行解调

引入:

(PDCCH仅占用部分带宽即可提供足够的容量,NR的PDCCH也不必占用整个系统带宽,基于这些考虑,NR以控制资源集合(Control Resource Set,CORESET)为单位配置资源,一个CORESET占用的PRB个数以及PRB的位置可以根据网络部署灵活选择,这也就可以和Type0进行结合)。意味着:CORESET是占用了一部分的PRB,即CORESET的实质一部分时频资源,上面存放着一些信息(如PDCCH的信息等)。


       目前协议设计方案是:将PDCCH的频域资源信息和时域占用的OFDM符号数等信息封装在CORESET中,将PDCCH起始OFDM符号以及监听周期、关联的CORESET等信息封装在搜索空间中。
       5G NR中的搜索空间分为两种类型,公共搜索空间(CSS,Common Search Space)UE特定搜索空间(USS,UE Specific Search Space);CSS主要是在接入时和小区切换时使用CSS用于BCCH、寻呼、RAR等相关的控制信息,而USS则是在接入后使用。

例如:

SIB1对应的PDCCH的公共Search Space是type 0-PDCCH CSS(也就是去哪儿找这个调度信息), 绑定的CORESET是CORESET#0(频率带宽与Initial BWP相同)(是实际的时频资源).

注意:CORESET#0和type 0-PDCCH CSS并不是一回事,一个是对应的资源集合,即SIB1存放的位置资源??一个是搜索空间,即说明去哪儿搜索SIB1。

搜索空间类型

       具体搜索空间的类型以及分类如下表所示

第一个即为:type 0-PDCCH CSS,绑定的CORESET是CORESET#0(SIB1配置)

                                                                MIB配置的CORESET0

 

搜索空间参数集

       TS38.331中对于SearchSpace参数集的定义如下所示

 

 对于搜索空间参数集中的每个参数,有如下:
       searchSpaceId:搜索空间集合的ID,每个BWP最多配置10个搜索空间
       controlResourceSetId:搜索空间集合所关联的CORESET,值为0的时候表示此搜索空间关联到由MIB配置的CORESET0
       searchSpaceType:搜索空间类型以及调度的DCI Format,搜索空间类型包括:CSS或者USS;DCI Format包括0-0,0-1,1-0,1-1,2-0,2-1,2-2,2-3
       nrofCandidates:搜索空间集合包括的聚合度信息以及每种聚合度下的候选PDCCH个数
       monitoringSlotPeriodicityAndOffset:检测搜索空间集合的周期(单位为slot)以及检测周期开始到实际检测搜索空间的slot偏移
       duration:连续检测搜索空间集合的slot数量,且slot数量要小于检测周期
       monitoringSymbolsWithinSlot:每个slot内,搜索空间关联CORESET的时域OFDM起始符号位置
       举例说明,假设检测周期为10个slot,slot偏移为5,slot数量为1,搜索空间关联的CORESET时域符号数为2,符号位置为0和7。因此,在此配置下,UE会在每个检测周期的slot5的sym0、sym1和sym7、sym8检测候选PDCCH。

 搜索空间确定

     1、根据当前搜索空间以及关联的CORESET配置,确定候选PDCCH的时域资源调度情况,其中时域起始符号位置由当前搜索空间配置决定,时域符号数目由此搜索空间关联的CORESET决定;

(比方确定SIB1信息,

(1) 那么就首先根据Type0 PDCCH CSS搜索空间确定时域位置,然后在根据CORESET确定频域位置,从而最终确定PDCCH的时频位置)
       2、根据当前搜索空间以及关联的CORESET配置,确定每个候选PDCCH在CORESET内的CCE索引(即CCE的起始位置以及CCE的个数),具体CCE的确定是通过搜索空间函数确定。

(2) (找到PDCCH以后,进而确定CCE位置和个数。从而就能找到PDCCH)
       3、对每个候选PDCCH进行Polar解码和Crc校验,当Crc校验通过后,则表示当前候选PDCCH解调成功。

(3) (找到这个PDCCH以后就能进行解码,知道了PDCCH的调度信息,从而就知道了PDSCH的调度,这样SIB1信息也能确定出来)

UE下行同步完成之后,需要接收SIB1消息,获得与上行同步相关的配置,才能进行RACH过程完成上行同步。

SIB1消息由PDSCH承载,若要接收/解码SIB1,需要知道PDSCH的调度信息,那么就需要监测对应的承载调度信息的PDCCH.

总结

SIB1消息由PDSCH承载,若要接收/解码SIB1,需要知道PDSCH的调度信息,那么就需要监测对应的承载调度信息的PDCCH.

SIB1用PDSCH传输,那么就要知道PDSCH的调度,而共享信道(干活的信道)又是由PDCCH的DCI信息控制的,所以就

(1)需要找到PDCCH的时频资源调度,解出DCI_format,
(2) 从而拿到PDSCH的调度,

(3) 接下来就可以从PDSCH中得到SIB1

关键就是在找PDCCH时频调度的时候,用到了两个概念:

Type0 -PDCCH CSS(搜索空间)需要找到 PDCCH,找到时域的起始符号位置;

然后找到CORESET#0,找到时域符号数目由此搜索空间关联的CORESET决定

从而最终确定了PDCCH所占用的视频资源;紧接着再确定CCE等,确定PDCCH,最后进行解码就可以拿到DCI

### NR网络中PDCCH和PDSCH的时域资源分配规则 #### PDCCH时域资源分配 在NR5G新空口)网络中,物理下行控制信道(Physical Downlink Control Channel, PDCCH)用于传输调度信息和其他控制消息。其时域资源分配主要由以下因素决定: - **搜索空间配置**:PDCCH的候选位置通过CORESET(Control Resource Set)定义,而CORESET的时间范围通常位于一个slot的前几个OFDM符号内[^1]。 - **子载波间隔(Subcarrier Spacing, SCS)**:不同的SCS会影响PDCCH占用的具体时间长度。例如,在较高的SCS下,PDCCH可能仅占据更短的时间窗口。 #### PDSCH时域资源分配 对于物理下行共享信道(Physical Downlink Shared Channel, PDSCH),其时域资源分配更加灵活,能够实现精确到symbol级别的调度。以下是具体的规则和标准: - **起始符号与持续时间**:PDSCH的时域位置可以通过SLIV(Start and Length Indicator Value)来描述。SLIV是一个单一数值,它编码了PDSCH传输的起始符号索引以及所占符号的数量[^3]。 SLIV的计算公式如下: \[ SLIV = 14N + (L - 1)(14 - L + 1)/2 + S \] 其中 \( N \) 是每slot的最大符号数量(通常是14),\( L \) 表示连续分配的符号数目,\( S \) 则代表起始符号的位置。 - **调度延迟参数 K0**:该参数指定了从接收到携带调度信息的PDCCH至实际数据传输之间的时间差。K0 的取值取决于时域资源分配表中的规定,并且会受到不同SCS组合的影响。 - **动态调整能力**:得益于NR的设计理念,每一次调度都可以独立设定新的时隙边界及内部结构安排,从而适应多样化的业务需求并提高频谱效率。 ```python def calculate_sliv(start_symbol_index, number_of_symbols): """ 计算SLIV值 参数: start_symbol_index -- 开始符号索引(S) number_of_symbols -- 符号总数(L) 返回: sliv_value -- SLIV值 """ max_slots_per_subframe = 14 if not (1 <= number_of_symbols <= max_slots_per_subframe): raise ValueError(f"number_of_symbols must be between 1 and {max_slots_per_subframe}") first_term = (number_of_symbols * (number_of_symbols - 1)) // 2 second_term = start_symbol_index total_terms = ((max_slots_per_subframe + 1) * max_slots_per_subframe) // 2 sliv_value = first_term + second_term if first_term + second_term < total_terms else None return sliv_value ``` 上述Python函数展示了如何基于给定的`start_symbol_index` 和 `number_of_symbols` 来计算对应的SLIV值。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值