概述
微信公众号同步更新,欢迎关注同名modem协议笔记
非动态调度,除了PUSCH configured grant type 1和2的传输,还有PDSCH SPS 传输,两者的流程基本类似,也有些小区别。在实网并没有见过配置DL SPS PDSCH传输的log,但还是按顺序理一遍相关内容。
RRC/MAC
先看下MAC 38.321 5.8.1中的内容
SPS是基于服务小区内的BWP 通过RRC配置的机制,在一个BWP内可以同时激活多个DL assignments,同时DL SPS的激活和去激活对于服务小区来说是独立的进行的。
上面是DL SPS 相关的几个重要参数,cs-RNTI用于接收激活/去激活/重传DCI 的RNTI;nrofHARQ-Processes为SPS 可以支持的HARQ 数量;harq-ProID-Offset用于DL SPS HARQ ID计算的参数;periodicity就是DL SPS对应的传输周期的参数。
紧接着就是DL SPS HARQI process ID的确定相关,根据是否有配置harq-ProID-Offset,有不同的计算公式,如上就不展开说了。
进行DL SPS 传输的时隙也有公式确认,如上图,主要根据当前的SFN slot和配置的periodic参数等信息,确定DL assigment 对应的slot ,下图是RRC配置的结构,就简单贴在这,PUSCH configured grant type 1/2有配置激活后占用的时频域资源,DL SPS PDSCH这里并没有。
DL SPS PDSCH acitive/deactive
下面看下DL SPS PDSCH的激活与去激活,主要在38.213 10.2中描述。
UE需要根据DCI field的内容确定是要激活还是要release掉DL SPS assignment。当UE收到CS-RNTI加扰的DCI,此时enable的TB NDI=0,DFI=0(如果有的话),对于DL sps assignment PDSCH-to-HARQ_feedback timing indicator所带的value 不能是无效值(根据dl-DataToUL-ACK-r16的配置);当满足上述条件时,UE要根据38.213 Table 10.2-1(激活)和Table 10.2-2(release)中规定的其他field 的value去判断 此时的DCI 是要激活还是释放掉DL SPS assignment的配置。
当网络端给UE配置了多个DL SPS assignment配置时,会带 sps-ConfigIndex用于指定配置对应的index;当要激活某个配置时,DCI 中的HARQ process number 的value对应的就是要激活的sps-ConfigIndex的值,此场景DCI RV field对应的情况参考38.213 Table 10.2-3, 如下。
当UE有被配置sps-ConfigDeactivationStateList时,DCI中的HARQ process number field用于指示要release掉的配置的index,例如HARQ process number =0,则要relase掉sps-ConfigDeactivationStateList中的第一个 entry对应的配置;如果没有配置sps-ConfigDeactivationStateList,DCI中的HARQ process number field 就对应sps-ConfigIndex,根据sps-ConfigIndex release掉对应的配置。此场景DCI 中的其他的field要满足38.213 Table 10.2-4中的要求 才能算作有效的release 命令。
当根据上述提及的要求及4个table中的内容,UE认为DCI 信息是有效的激活或者release 命令,UE才能进行对应的操作,否则就忽略对应的DCI。
在UE收到SPS PDSCH release的DCI后,要在N个符号后才能发送对应的HARQ-ACK info,这个N与PDCCH和PUCCH的SCS有关系,SCS要取提供SPS PDSCH release的PDCCH 和发送对应HARQ-ACK的PUCCH两者的最小SCS;如果processingType2Enabled=true时,scs=15khz 时N=5;scs=30khz 时 N=5.5,scs=60khz时N=11,否则scs=15khz 时N=10;scs=30khz 时 N=12,scs=60khz时N=22。
UE 处于SPS PDSCH 下行接收激活状态,如果UE 在接收SPS PDSCH 期间,收到的release SPS 的DCI ,此时SPS PDSCH release 和SPS PDSCH 的HARQ-ACK 要复用在相同的PUCCH,UE就不用接收这次SPS PDSCH 也不用生成对应的HARQ-ACK info,只对SPS PDSCH release生成对应的HARQ-ACK info即可。
其他相关规定
RRC层的sps-config参数中并没有像PUSCH configured grant type 1和2一样配置激活后占用的时频域资源,spec上也没有明确说明,结合上面这段的理解,在UE收到激活DL SPS的DCI时,要结合激活DCI的带的时频域资源进行DL SPS接收,同样根据这个DCI中的PDSCH-to-HARQ_feedback timing indicator 结合RRC层配置的参数dl-DataToUL-ACK作为K1 ,进行HARQ-ACK 应答;如果有配置pdsch-AggregationFactor时,之后重复传输的PDSCH也占用相同的时频域资源。
接收SPS PDSCH在时隙n,则发送HARQ-ACK的PUCCH在时隙n+K1;K1 的确定和PDCCH动态调度时一致,即根据DCI 1_0或1_1中的字段值得到,这个DCI 是激活SPS PDSCH时的那个DCI 调度。
SPS半静态调度PDSCH ,下行HARQ-ACK时序示意图
由于存中同时激活多个DL SPS PDSCH的情况,所以要根据UE的能力去选择最终要进行的DL SPS PDSCH,确认规则如下。
当一个slot内存中多个SPS PDSCH调度时,首先根据时隙配置,确定是否有UL符号与SPS PDSCH有冲突的情况,将与UL符号冲突的SPS PDSCH去掉后,再按照下面的方式进一步确定最终要进行的DL SPS PDSCH:
1 j对应的是选择要进行的DL SPS PDSCH个数,j=0;Q对应的是激活的DL SPS PDSCH的set,在激活时通过sps-configindex区分。
2 UE首先选择最低sps-ConfigIndex的SPS PDSCH,j=j+1,将其选作第一个要进行的DL SPS PDSCH
3 将上一步中选择的最低sps-ConfigIndex 的SPS PDSCH与其他sps-configIndex 进行符号是否有overlap的检查,有overlap就将有冲突的SPS PDSCH 从Q中去掉。
4 重复上面的操作,直到Q为空集或 j 满足UE所支持的每个slot支持的unicast PDSCH的数量。
假设UE每时隙所支持的UnicastPDSCH为2。此时激活的sps-ConfigIndex =0,1,2,3,4,一个时隙内占用的符号如下
Q集合中包括sps-ConfigIndex =0,1,2,3,4
首先选择sps-configindex=0,对应j=1,与其他sps-configindex检查是否有overlap的情况,这个例子与sps-configIndex=3和4 有overlap的情况,将其从Q中去掉,此时Q包括sps-ConfigIndex =0,1,2;
下一步sps-ConfigIndex =1,j=2 达到每时隙所支持的UnicastPDSCH 的数量2,停止操作,即最后只剩下sps-configindex=0和1,其他的sps pdsch都不用考虑。
C-RNTI/CS-RNTI.MAC-C-RNTI加扰的DCI 调度的PDSCH 和SPS PDSCH 不能在时域上有overlap,除非调度PDSCH的DCI结束符号位置 与SPS PDSCH的开始符号位置间隔>=14 symbols。
C-RNTI/CS-RNTI.MAC-C-RNTI加扰的DCI调度的PDSCH 不能和RA-RNTI/MSGB-RNTI加扰的DCI调度的PDSCH在时域上有overlap。
这篇先到这里,感谢阅读。
最后
以上就是醉熏水杯为你收集整理的NR PDSCH(七) DL SPS的全部内容,希望文章能够帮你解决NR PDSCH(七) DL SPS所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复