【5G MAC】5G中传输块(TBS)大小的计算方式

博主未授权任何人或组织机构转载博主任何原创文章,感谢各位对原创的支持!
博主链接

本人就职于国际知名终端厂商,负责modem芯片研发。
在5G早期负责终端数据业务层、核心网相关的开发工作,目前牵头6G算力网络技术标准研究。


博客内容主要围绕:
       5G/6G协议讲解
       算力网络讲解(云计算,边缘计算,端计算)
       高级C语言讲解
       Rust语言讲解

文章目录

  • 一、5G中传输块(TBS)大小的计算方式
  • 二、影响TBS的因素
  • 三、如何计算TBS
    • 3.1 计算TBS的步骤
  • 参考



一、5G中传输块(TBS)大小的计算方式

TBS:传输块大小(Transport Block Size)
TB:传输块(Transport Block)
CB:码块(Code Block)


在这里插入图片描述

       5G NR中的传输块,就是在MAC层和物理层之间传递的有效载荷,特别是对于PDSCH和PUSCH等共享数据信道。传输块在被映射到PDSCH以通过空口传输之前,会在发射机处由物理层进行处理。会在一个传输块中添加CRC,并将其分成多个CB,如下所示。TB由多达百万个比特组成,CB由多达8448个比特组成。

【5G MAC】5G中传输块(TBS)大小的计算方式_第1张图片

二、影响TBS的因素

       在PDSCH上接收数据的设备在尝试解码数据之前,必须确定TB的大小。UE通过解析RRC信令以及PDCCH上的下行控制信息(DCI)来解析TB的大小。

       下图描述了获得传输块大小的简化图表,并提供了影响TB大小的参数列表:

  • 传输层数(Layers(v))
  • 调制阶数(QM)
  • 码率(R)
  • 物理资源块(PRB)的数量
  • 传输周期

【5G MAC】5G中传输块(TBS)大小的计算方式_第2张图片

三、如何计算TBS

       在4G LTE中,传输块大小由MCS字段和资源块分配(Resource block Allocation,PRBs)的函数表提供。然而,5G NR支持的带宽要大得多,传输持续时间也很长,开销也会随CSI-RS等配置的其他特性而变化。就传输块大小而言,这将导致需要大量的表来处理这种大的动态范围。

       当某些参数发生变化时,这种方案也可能需要修改。因此,5G NR选择了一种基于公式的方法,并结合最小TBS表,以获得必要的灵活性。

【5G MAC】5G中传输块(TBS)大小的计算方式_第3张图片

3.1 计算TBS的步骤

  1. UE要确定RE的数量(N’RE),即在单个资源块的带宽内可用于数据传输的RE的数量,相关公式如下:
    请添加图片描述

    其中:

    • N’RE:表示每个资源块(RB)中可用于数据传输的资源元素(RE)的数;
    • N s c R B N_{sc}^{RB} NscRB:一个PRB中子载波的数。例如,12;
    • N s y m b l s h N_{symbl}^{sh} Nsymblsh:在一个slot内分配给PDSCH的符号数;
    • N D M R S P R B N_{DMRS}^{PRB} NDMRSPRB:在这个调度周期内,每个PRB上DMRS占用的RE数;
    • N o h P R B N_{oh}^{PRB} NohPRB:头部开销,由PDSCH Serving Cell中的高层参数xOverhead配置;
  2. 如果N’RE的值大于156,则向下取整为156,即在单个资源块的带宽范围内,假定UE不会分配超过156个RE的资源。使用常规循环前缀(CP,cyclic prefix)下,单个RB带宽内的RE总数为12 x 14 = 168。

  3. 最终的N’RE值乘以已分配RB的数量,最后的结果记为NRE。已分配RB的数量是从PDCCH的DCI中获取的。

  4. NRE的值表示可用于数据传输的总的RE数。

  5. 然后将可用于数据传输的总RE数转换为信息比特数。信息比特数的多少取决于调制方式、编码速率和层数。UE使用如3GPP下公式:
    请添加图片描述

    其中:

    • NRE:表示可用于数据传输的总的RE数;
    • R:码率;
    • QM:调制阶数;
    • v:MIMO的层数;

    调制阶数和目标码率均从MCS表中提取;
    如果使用DCI 1_0接收到PDSCH资源分配,则层数固定为1。否则,层数需要通过查找DCI 1_1表中的“DMRS Ports”列的“Antenna Ports”获得。层数等于分配的DMRS端口数;

  6. 如果Ninfo <= 3824位,则TBS根据3GPP TS 38.214表确定;否则,TBS根据公式确定。确定TBS的具体步骤如下图所示。
    【5G MAC】5G中传输块(TBS)大小的计算方式_第4张图片

  7. 这个3824比特的门限是基于LDPC信道编码使用“Base Graph 2”时可处理的最大码块大小3840位确定的。CRC比特在信道编码之前添加。大小为3824比特的传输块有一个16比特的CRC,即CRC添加后的总大小可以达到3840比特。LDPC的“Base Graph 1”可以处理的最大码块大小为8448比特,因此对于“Base Graph 1”和“Base Graph 2”来说,如果TB <= 3824比特则不需要在信道编码之前进行分块。
    【5G MAC】5G中传输块(TBS)大小的计算方式_第5张图片

  8. 当Ninfo > 3824时,会添加一个24比特的CRC而不是16比特的CRC。此外,可能需要在信道编码之前进行分段。当分段时,额外的24比特CRC会被添加到每个分段。下面的计算考虑了这24比特的CRC。N’info的计算公式如下:
    【5G MAC】5G中传输块(TBS)大小的计算方式_第6张图片

  9. 这个等式会生成一个包含整数字节的结果。它也成一个步长,该步长取决于Ninfo的值。对于较小的Ninfo值,会生成一个64比特的步长,随着Ninfo值的增加,步长增加到128、256、512……比特。

    接下来使用以下3个公式之一计算传输块的长度:

    • 如果码率 <= 0.25,则使用LDPC ’ Base Graph 2 '(最大码块大小为3816 + 24 = 3840比特),并应用以下公式:
      【5G MAC】5G中传输块(TBS)大小的计算方式_第7张图片
    • 如果 N’info > 8424比特,然后将使用LDPC ’ Base Graph I '(最大代码块大小为8424 + 24 = 8448比特),并应用以下公式:
      【5G MAC】5G中传输块(TBS)大小的计算方式_第8张图片
    • 否则使用下面的公式:
      请添加图片描述


参考

  • 3GPP TS 38.214 NR; Physical layer procedures for data
  • https://5g-tools.com/5g-nr-tbs-transport-block-size-calculator/

在这里插入图片描述

你可能感兴趣的:(5G/6G系列,5G)