欢迎关注同名微信公众号“modem协议笔记”

这篇看下PUCCH resource的配置规则及调用流程。

在初始接入阶段,UE还没有和网络端通信,并不知道dedicated PUCCH 配置;但是SIB1里会配置common PUCCH resource用于初始接入UCI的发送,下面就分别看下common PUCCH resource 和dedicated PUCCH resource。

如果UE还没有配置dedicated PUCCH resource时,例如初始接入阶段,这时候就要根据SIB1中pucch-ResourceCommon提供的index,结合38.213 Table 9.2.1-1的信息确定PUCCH resource用于传输HARQ-ACK info,初始接入对应的PUCCH 资源只能是PUCCH format 0/1(38.213 Table 9.2.1-1中只配置的PUCCH format 0/1)。

Common PUCCH resource

PUCCH-ConfigCommon 用于配置小区级PUCCH参数(common),用于初始接入。SA场景下,SIB1 中参数配置路径:SIB1 ->PUCCH-configCommon;PUCCH-configCommon 对应的PUCCH只能在initial uplink BWP内发送;R16中 添加了useinterlacePUCCH-PUSCH IE,如果RRC层没有配置useinterlacePUCCH-PUSCH,UE在PUCCH Common 资源上,使用时隙内跳频;否则不能使用跳频。注意在初始接入时PUCCH format 1 的OCC 默认是0。

PUCCH resource 第一/二跳频PRB位置及循环移位的确定

没有配置useInterlacePUCCH-PUSCH的情况

配置useInterlacePUCCH-PUSCH的情况

38.211 PUCCH format 0/1资源映射的描述

PUCCH format 0和1 在频域上都只占用一个RB,根据38.211 PUCCH format 0/1 的资源映射的描述,如果进行的是interlace传输,就要在BWP 内的interlace RB的所有RB进行传输。假设initial BWP 对应CRB10~20, 那在IRB 0和1 上都要传输PUCCH format 0或者1,interlace传输资源映射情况如下。

Dedicated PUCCH resource

下面看下dedicated PUCCH resource。在完成初始接入,进入connected mode后 网络端会通过RRC setup/RRCReconfiguration 配置deidated PUCCH resoure;一般是由PUCCH-Config配置UE specific PUCCH 参数(每BWP配置);UE在指定BWP配置Dedicated PUCCH 后就可以替代PUCCH Common 配置。

Dedicated PUCCH  resource  会通过PUCCH ResourceSet 的方式配置。

对于dedicated PUCCH resource 的配置,会有对应Resource Set 的定义;resource set 中会包含1个或多个PUCCH Resource,对应不同PUCCH 格式,下面看下具体参数的含义。

PUCCH-Config中最多配置4个 PUCCH resource sets 即PUCCH-ResourceSetId:PUCCH ResourceSet ID,0-3,即UE最多被配置4个PUCCH 资源集。

在配置PUCCH resource set时,PUCCH-ResourceSetId为资源集的ID, resourceListSet是PUCCH Resource Set 中包含的PUCCH resource列表,对应PUCCH Resource ID,其中仅PUCCH resource set 0可配置32个PUCCH 资源,其他set最多只能配置8个PUCCH resource。PUCCH 0和1 只能配置在第一个ResourceSet资源集中,例如Set 0,PUCCH 2/3/4只能配置在ResourceSetId>0 资源集中;其中PUCCH-ResourceId 取值范围为 0~127 即最多配置128个PUCCH resource。

例如前一篇中例子的配置方式。

​参数maxPayloadSize 用于指示一个PUCCH resource可传输的最大UCI bits,对于第一个PUCCH resource set 最大的UCI bits 只能是2 bits,下面会有介绍。

PUCCH resource sets的选择规则

当UE配置了多个PUCCH Resource sets 时(例如4个),UE需要根据UCI 信息长度选择对应的PUCCH 资源集,Ouci 表示UE要发送UCI bits 长度。

UE需要发送1或者2 bits 的HARQ-ACK 信息和SR时,如果Ouci<=2则UE选择pucch-ResourceSetId=0资源集;

如果2<Ouci<N2 时,这时UE要选择pucch-ResourceSetId=1,其中N2 由高层参数maxpayloadsize提供;没有配置maxpayloadsize时,N2直接取值1706;

如果N2<Ouci<N3,则UE选择pucch-ResourceSetId=2,其中N3为高层参数maxpayloadsize

如果N3<0uci<=1706,则UE选择pucch-ResourceSetId=3。

综上PUCCH 资源集和UCI 长度的关系;对于第一个PUCCH 资源集,发送的最多UCI 长度不超过2bits;对于最后一个PUCCH 资源集(非第一个),发送那个最大UCI长度为1706bits;其他PUCCH 资源集,发送的最大UCI 长度由高层参数maxPayloadSize确定。maxpayloadsize 实际取用时需要乘4。

PUCCH format的选取 

确定了选用的PUCCH resource set,但是set中还会有多个PUCCH  format,那到底用哪个PUCCH format发送UCI 呢?先看下PUCCH format的总体选择规定。

UE 不需要传输PUSCH 但是要传输UCI ,这时候就要用PUCCH 传输UCI;当传输的UCI 超过1个符号或只有2个符号且HARQ-ACK 及SR 只有1或2bit时,用PUCCH format0传输UCI;传输符号大于4个符号且HARQ-ACK/SR 只有1~2bits时,用PUCCH format 1传输UCI;当传输的UCI 超过1个符号或只有2个符号且HARQ-ACK 及SR 大于2bit时,就用PUCCH forma 3传输UCI;当传输的UCI 超过4个符号且UCI 大于2bit,若此时没有配置OCC 或有配置useInterlacePUCCH-PUSCH,则用PUCCH format 3传输UCI(这里为什么这样描述,参见上一篇中interlace的配置结构就可以知道原因);当传输的UCI 超过4个符号且UCI 大于2bit,若此时有配置OCC且没有配置useInterlacePUCCH-PUSCH,则用PUCCH format4传输UCI。

继续看HARQ-ACK的PUCCH 资源调度流程相关内容。

ackNackFeedbackMode-r16: ENUMERATED {joint, separate}:Indicates which among the joint and separate ACK/NACK feedback modes to use within a slot。

UE可能需要在一个时隙内的不同符号发送1~2个PUCCH;当UE没有被配置ackNackFeedbackMode=separate且需要在一个时隙内发送2个PUCCH时,那这两个PUCCH 至少要有一个是短PUCCH,即PUCCH format0/2;如果有配置ackNackFeedbackMode=separate时,那UE 可以用2个PUCCH 在同一个时隙的不同符号发送HARQ-ACK 信息。

当UE 收到下行DCI 即DCI 1_0/1_1时需要向网络端反馈HARQ-ACK 信息。对于DCI format 1_0, PDSCH-to-HARQ_feedback timing indicator field带的值就代表 K1值;对于DCI format 1_1,PDSCH-to-HARQ_feedback timing indicator field带的值需要根据RRC 层参数dl-DataToUL-ACK/dl-DataToUL-ACK-r16/dl-DataToUL-ACKForDCIFormat1_2,进行映射确定K1值;K1值就代表PDSCH 接收的slot n与 要进行HARQ-ACK 的时隙偏移,即UE 在slot n收到PDSCH 后 ,需要在n+K1 slot发送对应的HARQ-ACK信息。

例如对于DCI 1_1,PDSCH-to-HARQ_feedback timing indicator 是8 bits,value为 0,则K1 需要取dl-DataToUL-ACK/dl-DataToUL-ACK-r16/dl-DataToUL-ACKForDCIFormat1_2 中的第一个值,以此类推。

其中dl-DataToUL-ACK 用于DCI format 1_1 ,dl-DataToUL-ACK-DCI-1-2 用于DCI format 1_2。 如果网络有配置 dl-DataToUL-ACK-r16 ,UE要忽略dl-DataToUL-ACK 。

HARQ ACK 的发送时隙和PUCCH format所在的PUCCH resource set 都确定了,下一步还需要确定要用PUCCH resource set中的哪个PUCCH resource对应的format ,HARQ-ACK PUCCH resource 的确定与DCI 中的PUCCH resource indicator 相关。

当PUCCH resource set中的 PUCCH resource 个数不超过8个时,只需要根据DCI 中的PUCCH resource indicator的值确定即可,例如value 为0,则用resourceList 中的第一个PUCCH resource,依次类推。

UE 使用PUCCH 2/3 发送HARQ-ACK时,有可能实际使用的PRB 个数小于配置的PUCCH 2/3(最大16个PRB)资源的PRB 个数。

UE 根据实际情况确定需要使用的最小PRB 个数(从配置的PRB起点开始)。对于PUCCH format 3,如果最小RB个数 不满足2/3/5的倍数关系,就取最接近要求的RB作为最小RB。

如果最终确定发送HARQ-ACK 所需要的RB 恰巧大于(PUCCH format 2/3的RB数-1),UE就用PUCCH format配置的RB数传输。

在配置interlace传输的情况,UE就在interlace RB上传输HARQ-ACK;如果传输HARQ-ACK所需要的RB大于interlace0中的RB个数,恰巧也配置了interlace 1时,就在interlace 0和1上传输HARQ-ACK。

我们知道在connected mode 时,上下行交互是实时存在的,UE不可避免收到DL DCI 然后要在上行发送HARQ-ACK;SR和CSI 相对来说没有HARQ-ACK发送的频繁,所以HARQ-ACK/SR/CSI 很可能撞在一起发送,即存在资源复用问题,所以也需要确定具体的复用方式,下面就简单看下复用情况。

对于HARQ-ACK和SR复用同一个PUCCH的情况,和单发HACK-ACK的情况一样,都要确定传输所需的最小RB数,根据实际所需RB数确定用哪些RB传输。

对于HARQ-ACK/SR/CSI 复用的情况,如果PUCCH format 足以发送HARQ-ACK/SR/CSI,就正常发送;否则 就按照CSI 的优先级,选择出部分CSI 和HARQ-ACK/SR 一起发送。

这里只是简单概括,具体内容比较多,可以查看38.213 9.2.5 UE procedure for reporting multiple UCI types。

PUCCH repetition

PUCCH format 1/3/4,可以配置多时隙重复发送,重复时隙个数由RRC 层参数nrofSlots 配置,重复时隙N_repeat_PUCCH  可以取值2,4,8,inter slot frequency hopping 和intra-slot frequency hopping不能同时enable。

如果UE配置了TDD-UL-DL-ConfigurationCommon或dedicated参数,时隙的确定根据上下行满足要求的上行时隙、符号确定;如果没有配置就按照连续N_repeat_PUCCH个时隙传输

当不配置时隙间跳频时,UE不进行时隙间跳频,进行时隙内跳频(如果配置);当配置时隙间跳频时,不进行时隙内跳频,进行时隙间跳频:

当进行inter slot frequency hopping时,偶数时隙开始PRB为startingPRB;奇数时隙开始PRB为secondHopPRB;重复次数从0开始编号到N_repeat_PUCCH,如果在某个时隙没有实际发送,编号正常递增。

PUCCH 重复发送的时隙,如果不满足上行符号数要求,例如是下行时隙,则取消发送。

对于重复传输场景,不同类型的UCI不能复用在一个PUCCH 传输中。

如果first PUCCH与second PUCCH 在slot上overlap时,在overlap的时隙内,不应该包含相同优先级的UCI;如果first PUCCH与second PUCCH不可避免地要传输相同优先级的UCI 时,UE应该在刚开始的slot上发送这个UCI,不要放在后面的时隙上发送,以便尽可能的避免上述情况;如果first PUCCH 和second PUCCH要传输不同优先级的UCI时,UE要先传输高优先级的UCI。微信同步更新欢迎关注同名“modem协议笔记”。

NR PUCCH(三) PUCCH resource 的配置与调用相关推荐

  1. NR PUCCH(二)PUCCH format 2/3/4 and interlaced RB

    微信同步更新欢迎关注同名"modem协议笔记" 继续看PUCCH2/3/4. PUCCH 0和1所携带的信息bits少,UCI bits<=2 bits:而PUCCH 2/3 ...

  2. NR PUCCH(一) PUCCH format 0/1

    欢迎关注同名微信公众号"modem协议笔记". NR中PUCCH物理信道用来发送上行控制信息Uplink Control Information(UCI),当然UCI也可以在PUS ...

  3. DMRS在5G NR各种物理信道上的配置

    笔者在微信公众号GiveMe5G定期发布学习文章(更多更及时),欢迎订阅和分享,文章下方有二维码. 本篇文章旨在介绍DMRS(DeModulation Reference Signal).在5G中,D ...

  4. ASP.NET Core微服务(三)——【跨域配置】

    ASP.NET Core微服务(三)--[跨域配置] 对应练习demo(跨域)下载路径(1积分):[https://download.csdn.net/download/feng8403000/151 ...

  5. eclipse war tomcat_Web基础配置篇(三): tomcat的配置及使用

    Web基础配置篇(三): tomcat的配置及使用 一.概述 tomcat,大家应该都知道是啥,servlet的Web容器而已,遵守servlet规范的JavaEE服务器.我们通常用tomcat来部署 ...

  6. SpringCloud feign 的三种超时时间配置

    1.负载均衡 Feign调用服务的默认时长是1秒钟,也就是如果超过1秒没连接上或者超过1秒没响应,就会相应的报错.Feign 的负载均衡底层用的是 Ribbon,其配置如下: ribbon:ReadT ...

  7. Netty实战 IM即时通讯系统(三)Netty环境配置

    ## Netty实战 IM即时通讯系统(三)Netty环境配置 零. 目录 IM系统简介 Netty 简介 Netty 环境配置 服务端启动流程 实战: 客户端和服务端双向通信 数据传输载体ByteB ...

  8. 19年8月 字母哥 第三章 spring boot 配置原理实战 用热点公司网不行

    第三章 spring boot 配置原理实战 3.1.结合配置加载讲解bean自动装配原理 3.2.详解YAML语法及占位符语法 3.3.获取自定义配置的两种实现方法 3.4.配置文件注入值数据校验 ...

  9. Oracle 11g Dataguard 物理备库配置(三)之Dataguard broker配置

    Oracle 11g Dataguard 物理备库配置系列文档 Oracle 11g Dataguard 物理备库配置(一)之duplicate创建 Oracle 11g Dataguard 物理备库 ...

最新文章

  1. 陌陌一面,为什么SpringBoot的 jar 可以独立运行?
  2. 2020-10-29Ubuntu20.04将软件添加至桌面
  3. 三个线程交替打印ABC(Condition实现精确通知)
  4. OSGI 面向Java的动态模型系统
  5. https://zeplin.io/ 设计图标注及切图
  6. 使用js实现思维导图
  7. 关闭word_记一次毕设消失事件始末,及mac+word文档消失恢复方法汇总
  8. 雷军在线求饶:小米5G手机价格厚道,求别骂、求好评、求别带节奏
  9. flask 模板 php,Flask 模板系统
  10. linux程序网络验证,【redhat5.5】linux的LDAP认证服务器的配置及客户端pam网络验证实例...
  11. 2019 Web 前端热点笔试面试题总结(转载)
  12. SATI--文献题录开源程序
  13. DHT11温湿度传感器(zigbee)
  14. Windows7内部版本7601此Windows副本不是正版黑屏怎么办!!!
  15. 我有一壶酒,足以慰风尘
  16. 如何坚持看书、跑步、写作?
  17. 弹性云主机利用云镜像克隆新开、迁移数据[云镜像]
  18. html中img显示图片的两种常用方式
  19. MySQL解压版安装及配置(本地windows环境)
  20. linux下deb安装包的运行

热门文章

  1. c++11多线程编程(一):创建线程的三种方法
  2. 前端开发:JS中截取字符串的用法总结
  3. VUE3祖孙组件传值调用方法
  4. dp专题 神奇的口袋
  5. stata回归?固定效应模型(组内变换OR LSDV最小二乘法)
  6. ​GIS方向考研简述
  7. PWM控制直流电机的正转、反转、加速和减速
  8. maven的使用-很全
  9. 读取excel中的表格数据到字典dict中--python
  10. 《Linux驱动:Nor flash驱动看这一篇就够了》