法律状态公告日
法律状态信息
法律状态
2014-03-05
授权
授权
2012-03-07
实质审查的生效 IPC(主分类):H04L1/00 申请日:20110802
实质审查的生效
2012-01-11
公开
公开
技术领域
本发明实施例涉及通信技术,尤其涉及一种通信系统中的循环冗余校 验处理方法、装置和LTE终端。
背景技术
循环冗余校验(Cyclic Redundancy Check,以下简称:CRC)校验码是 一种常用的冗余编码。现有的通信系统可以通过在信息码后附加CRC校验码 来进行差错检测,CRC校验位越多,则检测出传输错误的机率越大。
现有技术采用CRC校验码进行差错检测的原理为:CRC校验码可由该数 据流的二进制数值除以一个常数而得到,除法的余数作为CRC校验码追加到 数据流尾,发送端可将产生新的数据流进行发送。在接收端,新的数据流被 除以该同一个常数,并检查余数是否为一个常数。如果余数为一个常数,就 认为传输正确,否则就认为数据在传输中已发生差错,发送端可以将该数据 流重发。通常情况下,所述常数可以选为0。具体地,发送端可以在待传送 的k位信息码后附加r个0,得到k+r位的二进制码序列,发送端设备可以 用这k+r位的二进制码序列与生成多项式G(x)做模二除法,得到r位余数, 该r位余数即为CRC校验码,然后发送端可以将这r位余数附加在k位信息 码后,得到k+r位二进制序列并发送给接收端。接收端在接收该k+r位二进 制序列后,即可进行CRC校验处理,该处理过程为接收端将该k+r位二进制 序列与生成多项式G(x)做模二除法,如果余数是r个0,则说明数据传输正 确,否则说明数据传输错误。基于上述原理的CRC校验处理装置目前已经广 泛的应用在各类译码场景中,如长期演进(LTE)系统的下行turbo译码中, 所述CRC校验处理装置可以包含在一个接收端中。该接收端可以是LTE的用 户设备(UE),用于对下行数据进行处理。
但是,发明人在实现本发明的过程中发现,所述接收端采用上述现有技 术对k+r位二进制序列进行CRC校验处理的速度较慢,且在进行CRC校验处 理之前还需要对乱序的数据块进行排序处理,从而导致通信系统的CRC校验 处理效率较低。
发明内容
本发明实施例提供一种通信系统中的循环冗余校验处理方法、装置和LTE 终端,以提高CRC校验处理效率。
本发明实施例提供一种通信系统中的循环冗余校验处理方法,包括:
接收发送端发送的二进制数据序列,所述二进制数据序列包含K个二进 制数据;
将所述二进制数据序列划分为Q个分支序列,每个分支序列中包含N个 二进制数据,N=K/Q;
采用生成多项式G(x)=xm+am-1×x(m-1)…a1×x+a0分别计算所述Q个分支序列 的循环冗余校验CRC校验结果yq,其中,q=1~Q;
采用公式(1)从q=2到q=Q进行迭代计算,获取所述二进制数据序列的 校验结果C(Q);
C(q)=AN×C(q-1)+yq (1)
其中,C(1)=y1,
本发明实施例提供一种通信系统中的循环冗余校验处理装置,包括:
接收模块,用于接收发送端发送的二进制数据序列,所述二进制数据序 列包含K个二进制数据;
序列划分模块,用于将所述二进制数据序列划分为Q个分支序列,每个 分支序列中包含N个二进制数据,N=K/Q;
分支序列校验模块,用于采用生成多项式G(x)=xm+am-1×x(m-1)…a1×x+a0 分别计算所述Q个分支序列的循环冗余校验CRC校验结果yq,其中,q=1~Q;
迭代计算模块,用于采用公式(1)从q=2到q=Q进行迭代计算,获取所 述二进制数据序列的校验结果C(Q);
C(q)=AN×C(q-1)+yq (1)
其中,C(1)=y1,
本发明实施例还提供一种LTE终端,包括上述的通信系统中的循环冗余 校验处理装置。
本发明实施例,将发送端发送的包含K个元素的二进制数据序列划分为 Q个分支序列,并行地对这Q个分支序列进行CRC校验,最后再通过状态初 值的迭代处理,获取整个二进制数据序列的校验结果,而且该过程无需对乱 序的二进制数据序列进行重排序。因此,相对于现有技术中的串行处理方式 来说,本实施例可以将CRC校验处理效率提高。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实 施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下 面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在 不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明通信系统中的循环冗余校验处理方法实施例一的流程图;
图2为本发明通信系统中的循环冗余校验处理方法实施例二的流程图;
图3为图2所示方法实施例中CRC校验的结构示意图;
图4为本发明通信系统中的循环冗余校验处理装置实施例一的结构示意 图;
图5为本发明通信系统中的循环冗余校验处理装置实施例二的结构示意 图:
图6为本发明通信系统中的循环冗余校验处理装置实施例三的结构示意 图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发 明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述, 显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获 得的所有其他实施例,都属于本发明保护的范围。
本发明实施例可应用在需要缩短对译码结果进行校验的时延的应用场景 之下,例如,在LTE接收端,基带处理器中可包含有CRC校验处理装置,用 于通过如图1所示的方式进行译码器数据的校验处理。CRC校验处理装置可 以通过逻辑集成电路实现。
图1为本发明通信系统中对的二进制数据序列做循环冗余校验处理方法 实施例一的流程图,如图1所示,本实施例的方法可以包括:
步骤101、接收发送端发送的二进制数据序列,所述二进制数据序列包 含K个二进制数据;
步骤102、将所述二进制数据序列划分为Q个分支序列,每个分支序列 中包含N个二进制数据,N=K/Q;
步骤103、采用生成多项式G(x)=xm+am-1×x(m-1)…a1×x+a0分别计算所述Q 个分支序列的循环冗余校验CRC校验结果yq,其中,q=1~Q;
步骤104、采用公式(1)从q=2到q=Q进行迭代计算,获取所述二进制 数据序列的校验结果C(Q);
C(q)=AN×C(q-1)+yq (1)
其中,C(1)=y1,
具体来说,现有技术采用串行方式获得二进制数据序列的校验结果。以 一个包含K个二进制数据的数据序列来说,每进行一次迭代处理,只能读取 一个二进制数据,该过程称为一个cycle,因此要得到K个二进制数据的校 验结果,需要K个cycle。为了提高处理效率,采用并行处理方式获取校验 结果,即可以将包含K个元素的二进制数据序列划分成Q个分支序列,对这 Q个分支序列进行并行校验,从而将效率提高K/Q倍。
为了解决上述的技术问题,并实现相应的技术效果,发明人进行了如下 分析:
生成多项式的一般形式可以为G(x)=xm+am-1×x(m-1)…a1×x+a0,其中am-1、… a1、a0的取值可以根据需要取0或者取1,采用生成多项式G(x)进行CRC校验 处理时,在输入一个二进制数据序列中的第n-1个二进制数据IN(n-1)后, 其对应的CRC校验结果{x1(n),x2(n),x3(n),…,xm(n)}可以采用如下公式 计算:
x1(n)=a0×xm(n-1)+IN(n-1)
x2(n)=a1×xm(n-1)+x1(n)
x3(n)=a2×xm(n-1)+x2(n)
xm(n)=am-1×xm(n-1)+xm-1(n)
...
基于上述计算过程,可以建立如下数学模型来表示第n-1个二进制数据 输入后,其对应的CRC校验结果x(n):
x(n)=A×x(n-1)+B×IN(n-1),
其中
基于上述数学模型可知存在下述x(n)的表述:
x(1)=A×x(0)+B×IN(0);
x(2)=A×x(1)+B×IN(1)
=A×(A×x(0)+B×IN(0))+B×IN(1)
=A2×x(0)+A×B×IN(0)+B×IN(1);
x(3)=A×x(2)+B×IN(2)
=A3×x(0)+A2×B×IN(0)+A×B×IN(1)+B×IN(2);
...
x(n)=A×x(n-1)+B×IN(n-1)
=An×x(0)+An-1×B×IN(0)+An-2×B×IN(1)+An-3×B×IN(2)+A×B× IN(n-2)+B×IN(n-1)
=An×x(0)+y(n);
其中,y(n)=An-1×B×IN(0)+An-2×B×IN(1)+An-3×B×IN(2)+A×B× IN(n-2)+B×IN(n-1)。
由上述分析可知,y(n)可以看成是状态初值x(0)全为零时的校验结果, 因此,x(n)的计算被剥离成一个与状态初值x(0)没有关系的CRC校验结果y(n) 和矩阵A的n次幂乘以状态初值x(0)的乘积的和。
因此,对于一个二进制数据序列来说,即使不知道状态初值x(0),其也 可以提前进行CRC校验处理,也即Q路分支序列可以独立并行进行CRC校验 处理,最后再将初值进行串行迭代处理,即可获取最终的CRC校验结果。
具体来说,本实施例的方法可以由二进制数据序列的接收端进行处理, 本实施例中的二进制数据序列可以是接收端通过对接收到的来自发送端的信 号进行turbo码译码后得到的。可以理解的是,该二进制数据序列是发送端 采用生成多项式G(x)进行冗余编码之后的数据序列。
接收端在接收到发送端发送的二进制数据序列后,即可将该二进制数据 序列划分为Q个分支序列。若该二进制数据序列包含K个二进制数据,则每 个分支序列中包含N个二进制数据,N=K/Q。
然后,接收端同样可以采用与发送端相同的生成多项式G(x)分别计算这 Q个分支序列的CRC校验结果yq,其中,q=1~Q。对于每个分支序列采用G(x) 计算对应的yq的方法来说,其可以采用现有技术实现,此处不再赘述。
最后,接收端可以采用公式(1)从q=2到q=Q进行迭代计算,获取二进 制数据序列的校验结果C(Q);
C(q)=AN×C(q-1)+yq (1)
其中,C(1)=y1,
具体来说,对于第1个分支序列来说,其C(1)=y1;对于第2个分支序列 来说,该分支序列的校验结果为y2,第1个分支序列和第2个分支序列合起 来的序列的校验结果为C(2)=AN×C(1)+y1;对于第3个分支序列来说,该分 支序列的校验结果为y3,第1个分支序列、第2个分支序列以及第3个分支 序列合起来的序列的校验结果为C(3)=AN×C(2)+y2;以此类推,对于第Q-1 个分支序列来说,该分支序列的校验结果为yQ-1,前Q-1个分支序列合起来的 序列的校验结果为C(Q-1)=AN×C(Q-2)+yQ-1;对于第Q个分支序列来说,该分 支序列的校验结果为yQ,Q个分支序列的最终校验结果为C(Q)=AN×C(Q-1)+yQ, 至此,本实施例即可采用Q个分支序列的并行CRC校验的处理方式完成整个 二进制数据序列的CRC校验处理。该CRC校验处理例如可以是判断C(Q)中的 每一位二进制数是否均为一常数,如果C(Q)中的每一位二进制数均为常数, 可选地,接收端还可以输出校验结果正确的指示。该常数的具体取值可以是 零。
由上述描述可知,正是由于各分支序列的校验结果与状态初值无关,因 此,本实施例并不需要将二进制数据序列的顺序进行重排序,即使该二进制 数据序列与发送端发送的二进制数据序列的顺序不符,也可以采用采用本实 施例的方法获取最终的CRC校验结果。
本实施例,将发送端发送的包含K个元素的二进制数据序列划分为Q个 分支序列,并行地对这Q个分支序列进行CRC校验,最后再通过状态初值的 迭代处理,获取整个二进制数据序列的校验结果,而且该过程无需对乱序的 二进制数据序列进行重排序。因此,相对于现有技术中的串行处理方式来说, 本实施例可以将CRC校验处理效率提高K/N倍。
下面采用一个具体实施例对本发明的技术方案进行详细说明。
图2为本发明通信系统中的循环冗余校验处理方法实施例二的流程图, 可由一个CRC校验处理装置来执行,该装置可内置在一个接收端中。如图2 所示,本实施例可以将图1所示方法实施例中的K设定为6144,将Q设定为 16,且发送端和接收端可以预先约定所采用的生成多项式为G(x)=x4+x3+1, 本实施例的方法可以具体为:
步骤201、接收发送端发送的二进制数据序列,所述二进制数据序列中 包含6144个二进制数据;
步骤202、将所述二进制数据序列划分为16个分支序列,每个分支序列 中包含384个二进制数据;
步骤203、采用生成多项式G(x)=x4+x3+1分别计算16个分支序列的CRC 校验结果y0~y15;
步骤204、采用C(16)=A384×C(15)+y16计算,获取所述二进制数据序列的 校验结果C(16)。
图3为图2所示方法实施例中CRC校验的结构示意图,如图3所示,x1、 x2、x3、x4分别代表四种状态:
x1(n)=x4(n-1)+IN(n-1)
x2(n)=x1(n)
x3(n)=x2(n)
x4(n)=x3(n-1)+x4(n-1)
相应地,所建立的数学模型如下:
x(n)=A×x(n-1)+B×IN,
其中
因此,本实施例可以使用C(16)=A384×C(15)+y16计算获取二进制数据序列 的校验结果C(16)。
具体来说,对于第1个分支序列来说,其C(1)=y1;对于第2个分支序列 来说,该分支序列的校验结果为y2,第1个分支序列和第2个分支序列合起 来的序列的校验结果为C(2)=A384×C(1)+y1;对于第3个分支序列来说,该分 支序列的校验结果为y3,第1个分支序列、第2个分支序列以及第3个分支 序列合起来的序列的校验结果为C(3)=A384×C(2)+y2;以此类推,对于第15 个分支序列来说,该分支序列的校验结果为y15,前15个分支序列合起来的 序列的校验结果为C(15)=A384×C(14)+y15;对于第16个分支序列来说,该分 支序列的校验结果为y16,16个分支序列的最终校验结果为C(16)=A384× C(15)+y16,至此,本实施例即可采用16个分支序列的并行CRC校验的处理方 式完成整个二进制数据序列的CRC校验处理。
由上述描述可知,正是由于各分支序列的校验结果与状态初值无关,因 此,本实施例并不需要将二进制数据序列的顺序进行重排序,即使该二进制 数据序列与发送端发送的二进制数据序列的顺序不符,也可以采用采用本实 施例的方法获取最终的CRC校验结果。
本实施例,将发送端发送的包含6144个元素的二进制数据序列划分为 16个分支序列,并行地对这16个分支序列进行CRC校验,最后再通过状态 初值的迭代处理,获取整个二进制数据序列的校验结果,而且该过程无需对 乱序的二进制数据序列进行重排序。因此,相对于现有技术中的串行处理方 式来说,本实施例可以将CRC校验处理效率提高16倍。
图4为本发明通信系统中的循环冗余校验处理装置实施例一的结构示意 图,该装置可应用于LTE的接收端,如UE中。如图4所示,本实施例的装置 可以包括:接收模块11、序列划分模块12、分支序列校验模块13以及迭代 计算模块14,其中,接收模块11,用于接收发送端发送的二进制数据序列, 所述二进制数据序列包含K个二进制数据;序列划分模块12,用于将所述二 进制数据序列划分为Q个分支序列,每个分支序列中包含N个二进制数据, N=K/Q;分支序列校验模块13,用于采用生成多项式G(x)=xm+am-1×x(M-1)…a1×x+a0分别计算所述Q个分支序列的循环冗余校验CRC校验结果yq,其中, q=1~Q;迭代计算模块14,用于采用公式(1)从q=2到q=Q进行迭代计算, 获取所述二进制数据序列的校验结果C(Q);
C(q)=AN×C(q-1)+yq (1)
其中,C(1)=y1,
本实施例的装置可以用于执行图1所示方法实施例的方法,其实现原理 和技术效果类似,此处不再赘述。接收模块11可以由硬件实现,例如其可以 是一个输入端,如天线或者一个接口。序列划分模块12、分支序列校验模块 13以及迭代计算模块14可以分别是处理器单元,这三个处理器单元可集成 在一个处理器中,所述处理器用于根据来自输入端的二进制数据序列进行CRC 校验的处理。接收模块11可用于对接收到的来自所述发送端的信号进行 turbo码译码得到所述二进制数据序列。具体地,所述接收模块11可包括: 天线,用于接收来自所述发送端的信号;译码器,用于对所述信号进行turbo 码译码得到所述二进制数据序列。
图5为本发明通信系统中的循环冗余校验处理装置实施例二的结构示意 图,如图5所示,本实施例的装置在图4所示装置结构的基础上,进一步地, K=6144,N=384,Q=16,也即相应的结构中,分支序列校验模块13可以包括: 第1个分支序列校验单元131~第16个分支序列校验单元131,每个分支序列 校验单元可以是一个处理器子单元,可以由逻辑电路实现。迭代计算模块14 可以包括:第1个迭代计算单元141~第15个迭代计算单元141,可以分别是 处理器子单元并由逻辑电路实现,其中,16个分支序列校验单元131与序列 划分模块12连接,第1个迭代计算单元141与第1个分支序列校验单元131 和第2个分支序列校验单元131连接,第w+1个迭代计算单元141与第w个 迭代计算单元141和第w+2个分支序列校验单元131连接,w=1~14;每个分 支序列校验单元131,分别用于采用生成多项式G(x)=xm+am-1×x(m-1)…a1×x+a0计算各分支序列的CRC校验结果yq;每个迭代计算单元141,分别用于采用 所述公式(1)计算C(q)。
需要说明的是,本实施例中分支序列校验模块13也可以包括其它数量的 分支序列校验单元而并不限于本实施例中的16个,迭代计算单元141的个数 只需要比分支序列校验单元的个数少1个即可。
本实施例的装置可以用于执行图2所示方法实施例的方法,其实现原理 和技术效果类似,此处不再赘述。
图6为本发明通信系统中的循环冗余校验处理装置实施例三的结构示意 图,如图6所示,本实施例的装置在图4所示装置结构的基础上,进一步地, 还包括结果输出模块15,用于判断所述校验结果C(Q)中的每一位二进制数是 否均为一常数;如果所述校验结果C(Q)中的每一位二进制数均为所述常数, 则输出校验结果正确的指示。
本实施例的装置可以用于执行图1所示方法实施例的方法,其实现原理 和技术效果类似,本实施例的装置可以根据校验结果C(Q)判断校验是否正确, 并将该指示输出。
在上述各装置实施例的基础上,本发明实施例还提供一种LTE终端,该 LTE终端中可以包括上述任一实施例所述的装置,本领域技术人员可以根据 上述实施例所述的装置的功能将该装置中各个模块与LTE终端的已有模块进 行连接或者复用,此处不再赘述。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读 取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述 的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对 其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通 技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修 改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不 使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
机译: 通信系统中循环冗余校验的方法,装置和LTE终端
机译: 用于协调无线通信系统中LTE / NR互通的终端能力的方法和装置
机译: 无线通信系统中协调LTE / NR互通终端能力的方法和装置