基于部分重传的并行CRC校验方法及系统转让专利
申请号 : CN202011539998.4
文献号 : CN112671511B
文献日 : 2022-03-18
发明人 : 谢静
申请人 : 上海微波技术研究所(中国电子科技集团公司第五十研究所)
摘要 :
权利要求 :
1.一种基于部分重传的并行CRC校验方法,其特征在于,包括:步骤M1:初次传输时,发送端在TB数据流末端添加TB级CRC校验信息,对添加的TB级CRC校验信息后的新信息序列长度La进行码块分割,分割成C个长度为L的码块,再对各个码块分别添加CB级CRC、编码、速率匹配和交织,并发送至接收端;
步骤M2:接收端对每个码块分别进行解交织、解速率匹配、译码以及CB级CRC校验;当第ii个码块CBii对应的CB级CRC校验通过时,输出对应码块做TB级CRC校验,当第ii个码块CBii对应的CB级CRC校验失败时,输出L个0比特流做TB级CRC校验,直至最后一个码块对应的CBLa
级CRC校验完成,记录所有码块的TB级CRC校验结果C ;
步骤M3:对上一次CB级CRC校验未通过的码块进行重传;
步骤M4:对重传的码块进行TB级CRC校验,对于上一次CB级CRC校验通过的码块以及当前CB级CRC校验未通过的码块均按照全0参与TB级CRC校验,当前CB级CRC校验通过的码块按对应码块的比特流进行TB级CRC校验,直至最后一个码块对应的CB级CRC校验完成,记录所有码块的TB级CRC校验结果temp;
La′
步骤M5:将前后两次传输对应的TB级CRC结果进行异或,更新校验结果C 存储;
步骤M6:当当前仍存在CB级CRC校验未通过,则重复执行步骤M3至步骤M5,直至重传次数达到预设次或全部CB级CRC校验通过,记录当前传输次数Rt;
步骤M7:当传输次数Rt为奇数或CRC寄存器初始状态INIT为全0时,CB级CRC均校验通过La′
且C 为全0时,表示TB级CRC校验通过;当传输次数Rt为偶数且CRC寄存器初始状态INIT为非0时,将CRC寄存器初始状态INIT添加到原始TB数据流前端,重复执行步骤M1至步骤M7,直至TB级CRC校验通过。
2.根据权利要求1所述的基于部分重传的并行CRC校验方法,其特征在于,所述步骤M3包括:将上一次CB级CRC校验未通过的码块以码块组为单位反馈给NACK,根据NACK反馈信息进行码块重传,重传时将上一次CB级CRC校验未通过的码块组下发数据。
3.根据权利要求1所述的基于部分重传的并行CRC校验方法,其特征在于,所述步骤M2中输出L个0比特流做TB级CRC校验包括:当输出L个0比特流做TB级CRC校验时,则采用公式法直接跳转到下一个校验正确CB的CRC初始状态。
4.根据权利要求3所述的基于部分重传的并行CRC校验方法,其特征在于,所述采用公式法包括:对于初传解错的第jj个码块CBjj,在进行TB级CRC校验时,直接按长度为L的全0比特参与TB级校验,CRC并行度的选择满足L=K*a+S*b,L个比特的CRC校验通过a次K位并行和b次S位并行表示,假设S位并行对应的参数矩阵为Hx1和Hy1,则L个全0比特的CRC跳转公式表jj+1 jj a b
示为:C =C *(Hx) *(Hx1) ;
其中,K位并行的公式表示为:
1 1
其中,Hx和Hy分别为对应的参数矩阵; 表示异或操作;D表示K位并行的比特向量,C表
0 jj
示k位并行后CRC状态;C 表示当前比特数据流初始的CRC状态;C 表示当前比特数据流初始jj+1
的CRC状态,C 表示并行后的CRC状态。
5.根据权利要求1所述的基于部分重传的并行CRC校验方法,其特征在于,所述步骤M5包括:
其中, 表示异或操作。
6.一种基于部分重传的并行CRC校验系统,其特征在于,包括:模块M1:初次传输时,发送端在TB数据流末端添加TB级CRC校验信息,对添加的TB级CRC校验信息后的新信息序列长度La进行码块分割,分割成C个长度为L的码块,再对各个码块分别添加CB级CRC、编码、速率匹配和交织,并发送至接收端;
模块M2:接收端对每个码块分别进行解交织、解速率匹配、译码以及CB级CRC校验;当第ii个码块CBii对应的CB级CRC校验通过时,输出对应码块做TB级CRC校验,当第ii个码块CBii对应的CB级CRC校验失败时,输出L个0比特流做TB级CRC校验,直至最后一个码块对应的CBLa
级CRC校验完成,记录所有码块的TB级CRC校验结果C ;
模块M3:对上一次CB级CRC校验未通过的码块进行重传;
模块M4:对重传的码块进行TB级CRC校验,对于上一次CB级CRC校验通过的码块以及当前CB级CRC校验未通过的码块均按照全0参与TB级CRC校验,当前CB级CRC校验通过的码块按对应码块的比特流进行TB级CRC校验,直至最后一个码块对应的CB级CRC校验完成,记录所有码块的TB级CRC校验结果temp;
La′
模块M5:将前后两次传输对应的TB级CRC结果进行异或,更新校验结果C 存储;
模块M6:当当前仍存在CB级CRC校验未通过,则重复触发模块M3至模块M5执行,直至重传次数达到预设次或全部CB级CRC校验通过,记录当前传输次数Rt;
模块M7:当传输次数Rt为奇数或CRC寄存器初始状态INIT为全0时,CB级CRC均校验通过La′
且C 为全0时,表示TB级CRC校验通过;当传输次数Rt为偶数且CRC寄存器初始状态INIT为非0时,将CRC寄存器初始状态INIT添加到原始TB数据流前端,重复触发模块M1至模块M7执行,直至TB级CRC校验通过。
7.根据权利要求6所述的基于部分重传的并行CRC校验系统,其特征在于,所述模块M3包括:将上一次CB级CRC校验未通过的码块以码块组为单位反馈给NACK,根据NACK反馈信息进行码块重传,重传时将上一次CB级CRC校验未通过的码块组下发数据。
8.根据权利要求6所述的基于部分重传的并行CRC校验系统,其特征在于,所述模块M2中输出L个0比特流做TB级CRC校验包括:当输出L个0比特流做TB级CRC校验时,则采用公式法直接跳转到下一个校验正确CB的CRC初始状态。
9.根据权利要求8所述的基于部分重传的并行CRC校验系统,其特征在于,所述采用公式法包括:对于初传解错的第jj个码块CBjj,在进行TB级CRC校验时,直接按长度为L的全0比特参与TB级校验,CRC并行度的选择满足L=K*a+S*b,L个比特的CRC校验通过a次K位并行和b次S位并行表示,假设S位并行对应的参数矩阵为Hx1和Hy1,则L个全0比特的CRC跳转公式表jj+1 jj a b
示为:C =C *(Hx) *(Hx1) ;
其中,K为并行的公式表示为:
1 1
其中,Hx和Hy分别为对应的参数矩阵;表示异或操作;D 表示K位并行的比特向量,C 表
0 jj
示k位并行后CRC状态;C 表示当前比特数据流初始的CRC状态;C 表示当前比特数据流初始jj+1
的CRC状态,C 表示并行后的CRC状态。
10.根据权利要求6所述的基于部分重传的并行CRC校验系统,其特征在于,所述模块M5包括:
其中, 表示异或操作。
说明书 :
基于部分重传的并行CRC校验方法及系统
技术领域
背景技术
实现,误码检测能力强,抗干扰性能优异,在网络数据传输中得到广泛应用。
特定数整除,这个特定数由生成CRC校验码的生成多项式确定。在接收端对接收到的数据流
采用“模2除法”除以这个特定数,如果结果没有余数,则说明校验通过,否则认为传输过程
中出现错误比特。
根据特定的并行度存储表项,硬件消耗大,可移植性低,难以实现高位宽并行数据校验。并
行公式递推法目前使用较多。但是目前研究中都没有涉及对于TB比特流中每次传输仅解对
部分CB块时进行TB块校验的方法。无论是在LTE还是NR中,TB都被划分成多个CB,而NR中引
入了CBG概念,即可以选择以CBG为单位来指示重传ACK/NACK,此时重传的比特流可能只是
TB中的某些CB块,按照传统的CRC校验方法进行TB级CRC校验需要在新传时开缓存来存储解
对的码块对应的比特流,然后重传时读出来进行码块拼凑再做TB级CRC校验,这种处理方法
会导致时延明显增加,影响用户体验速率,同时也增加了硬件的缓存空间。本发明的目的是
致力于克服上述传统部分码块重传校验TB级CRC方案对系统延时和整体性能的影响,提出
一种基于部分重传的并行CRC校验方法。
发明内容
码块分别添加CB级CRC、编码、速率匹配和交织,并发送至接收端;
CBii对应的CB级CRC校验失败时,输出L个0比特流做TB级CRC校验,直至最后一个码块对应的
La
CB级CRC校验完成,记录所有码块的TB级CRC校验结果C ,其中CBii表示第ii个长度为L的码
块,ii=0,1,2.......C‑1;
块按对应码块的比特流进行TB级CRC校验,直至最后一个码块对应的CB级CRC校验完成,记
录所有码块的TB级CRC校验结果temp;
通过且C 为全0时,表示TB级CRC校验通过;当传输次数Rt为偶数且CRC寄存器初始状态
INIT为非0时,将CRC寄存器初始状态INIT添加到原始TB数据流前端,重复执行步骤M1至步
骤M7,直至TB级CRC校验通过。
下发数据。
的CRC校验通过a次K位并行和b次S位并行表示,假设S位并行对应的参数矩阵为Hx1和Hy1,则
jj+1 jj a b
L个全0比特的CRC跳转公式表示为:C =C *(Hx) *(Hx1) ;
量,C 表示k位并行后CRC状态;C表示当前比特数据流初始的CRC状态;C 表示当前比特数
jj+1
据流初始的CRC状态,C 表示并行后的CRC状态;
码块分别添加CB级CRC、编码、速率匹配和交织,并发送至接收端;
CBii对应的CB级CRC校验失败时,输出L个0比特流做TB级CRC校验,直至最后一个码块对应的
La
CB级CRC校验完成,记录所有码块的TB级CRC校验结果C ,其中CBii表示第ii个长度为L的码
块,ii=1,2.......c‑1;
块按对应码块的比特流进行TB级CRC校验,直至最后一个码块对应的CB级CRC校验完成,记
录所有码块的TB级CRC校验结果temp;
通过且C 为全0时,表示TB级CRC校验通过;当传输次数Rt为偶数且CRC寄存器初始状态
INIT为非0时,将CRC寄存器初始状态INIT添加到原始TB数据流前端,重复触发模块M1至模
块M7执行,直至TB级CRC校验通过。
下发数据。
的CRC校验通过a次K位并行和b次S位并行表示,假设S位并行对应的参数矩阵为Hx1和Hy1,则
jj+1 jj a b
L个全0比特的CRC跳转公式表示为:C =C *(Hx) *(Hx1) ;
量,C 表示k位并行后CRC状态;C表示当前比特数据流初始的CRC状态;C 表示当前比特数
jj+1
据流初始的CRC状态,C 表示并行后的CRC状态;
验模块处理时间;
附图说明
具体实施方式
人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明
的保护范围。
码块分别添加CB级CRC、编码、速率匹配和交织,并发送至接收端;
CBii对应的CB级CRC校验失败时,输出L个0比特流做TB级CRC校验,直至最后一个码块对应的
La
CB级CRC校验完成,记录所有码块的TB级CRC校验结果C ,其中CBii表示第ii个长度为L的码
块,ii=1,2.......c‑1;
块按对应码块的比特流进行TB级CRC校验,直至最后一个码块对应的CB级CRC校验完成,记
录所有码块的TB级CRC校验结果temp;
通过且C 为全0时,表示TB级CRC校验通过;当传输次数Rt为偶数且CRC寄存器初始状态
INIT为非0时,将CRC寄存器初始状态INIT添加到原始TB数据流前端,重复执行步骤M1至步
骤M7,直至TB级CRC校验通过。
下发数据;解对的码块组基站不会在发出。所有重传的码块组中,接收端仅处理上次传输解
错的码块,对于错误的码块组中解对的码块不会再重复解码;
关系为: 式中 为第j+1次数据输入后的第i+1位CRC值,
为第j次数据输入后的第i位CRC值,gi+1为CRC生成多项式中第i+1项的系数,dj+1为第j+1
次的数据输入, 为第j次的数据输入后的第m‑1位CRC值,j为自然数,i=0,1,…,m‑1。
1 0 1
别为对应的参数矩阵,则K位并行公式可表示为:C=C*Hx+D *Hy,式中加号均代表异或操
作;
次K位并行和b次S位并行表示,假设S位并行对应的参数矩阵为Hx1和Hy1,则L个全0比特的
jj+1 jj a b
CRC跳转公式可表示为:C =C *(Hx) *(Hx1) 。
码块分别添加CB级CRC、编码、速率匹配和交织,并发送至接收端;
CBii对应的CB级CRC校验失败时,输出L个0比特流做TB级CRC校验,直至最后一个码块对应的
La
CB级CRC校验完成,记录所有码块的TB级CRC校验结果C ,其中CBii表示第ii个长度为L的码
块,ii=0,1,2.......C‑1;
块按对应码块的比特流进行TB级CRC校验,直至最后一个码块对应的CB级CRC校验完成,记
录所有码块的TB级CRC校验结果temp;
通过且C 为全0时,表示TB级CRC校验通过;当传输次数Rt为偶数且CRC寄存器初始状态
INIT为非0时,将CRC寄存器初始状态INIT添加到原始TB数据流前端,重复触发模块M1至模
块M7执行,直至TB级CRC校验通过。
下发数据;解对的码块组基站不会在发出。所有重传的码块组中,接收端仅处理上次传输解
错的码块,对于错误的码块组中解对的码块不会再重复解码;
关系为: 式中 为第j+1次数据输入后的第i+1位CRC值,
为第j次数据输入后的第i位CRC值,gi+1为CRC生成多项式中第i+1项的系数,dj+1为第j+1
次的数据输入, 为第j次的数据输入后的第m‑1位CRC值,j为自然数,i=0,1,…,m‑1。
1 0 1
别为对应的参数矩阵,则K位并行公式可表示为:C=C*Hx+D *Hy,式中加号均代表异或操
作;
次K位并行和b次S位并行表示,假设S位并行对应的参数矩阵为Hx1和Hy1,则L个全0比特的
jj+1 jj a b
CRC跳转公式可表示为:C =C *(Hx) *(Hx1) 。
的CB按全0参与TB级CRC计算;
CB1的初始CRC状态为C'=C*(Hx) ,将C=C',由于CRC初始状态C为全0,故若序列起始为
0 ii+1
全0CB,就可以直接忽略,跳转到第一个非零CB处,此时C仍为全0。CB2的初始CRC状态为C
ii ii+1
=C *Hx+D *Hy,其中ii=0、1、…、1052,依此类推可以算出到CB6时对应的TB级CRC校验结
La
果C ;
{CBG0,CBG2,CBG3},而接收端仅处理上次传输解错的CB,对于错误CBG中上次解对的CB不会
再重复解码,假设第一次重传CB0和CB6解码正确,CB4解错。
ii+1 ii ii+1
如4)所示,CB1的初始CRC状态为C =C *Hx+D *Hy,其中ii=0、1、…、1052,CB6的初始
1054 1053 1053*5 1054+ii+1
CRC状态为C =C *(Hx) ,记录到最后一个CB时对应的TB级CRC校验结果C =
1054+ii ii+1 2107
C *Hx+D *Hy,其中ii=0、1、…、1052,令temp=C ,将前后两次传输对应的TB级CRC
结果进行异或,更新校验结果存储,即
码正确。
ii+1 ii ii+1
仍为全0,CB5的初始CRC状态为C =C *Hx+D *Hy,其中ii=0、1、…、1052,依此类推可以
1053 2106
算出到CB6时对应的TB级CRC校验结果为temp=C *(Hx) ,最后将前后两次传输对应的
TB级CRC结果进行异或,更新校验结果存储,即
若C 为全0,则认为TB级CRC校验通过,否则认为校验失败。
系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微
控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为
是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结
构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部
件内的结构。
响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相
互组合。