一种Turbo码传输块的分段方法

文档序号:7648095阅读:272来源:国知局

专利名称::一种Turbo码传输块的分段方法
技术领域
:本发明涉及一种数字通信系统中的信道编码与复用方法,特别是涉及到通信系统中Turbo码采用的交织器长度是离散的情况下的传输块分段方法。
背景技术
:在通信系统中,为了提高信息在信道中传输的可靠性,提高数据在信道上的抗干扰能力,需要采用相应的信道编码技术。在诸多信道编码中,Turbo码的纠错能力较强,能够满足高可靠性数据传输的要求。Turbo编码是一种带有内部交织器的并行级联码,一般它由一个内交织器并行级联两个结构相同的递归系统卷积码分量码编码器构成。如图1所示。近年来随着高数据速率、低延时、多业务需求的迅速发展,作为高速多业务系统中关键部件的Turbo译码器需要满足高吞吐量、低时延、码长灵活的要求。Turbo译码器需要采用高速并行的译码算法来提高处理速度。高速并行译码算法要求Turbo码内交织器的长度是并行度的倍数,即是说Turbo码内交织器的长度是离散的。这里设这种长度是并行度倍数的Turbo内交织器的离散长度集合为Ktable,Ktable中元素个数为T,最小和最大的交织器长度分别为Zmin和Zmax。对于内交织器的长度是并行度的倍数的Turbo码来说,如果信息分组的长度X不在交织器长度集合Ktable中,则需要先在信息分组中填充一定数量的“0”或“1”,使总的分组长度等于交织器长度,然后才能被Turbo编码器编码。编码后需从码字中的系统位直接删除这些填充比特。而填充比特对应的校验位可以直接通过“凿孔(puncturing)”删除,也可以先不用处理,而通过“速率匹配(rate-matching)”统一进行码率的调整。译码时,先在填充比特的对应的系统比特位置插入一个表示“0”或“1”的足够大的值,表示该处的软信息是100%已知的。这样预处理后的接收信息序列被送入译码器译码按正常过程译码。最后,译码结果中去掉相应的伪比特就得到需要的信息比特。从译码器对填充比特的处理可以看出,填充比特相当于增加了信息分组的长度,因而会增加译码复杂度和译码时延。在无线通信系统的基带处理中,物理层以传输块(TransportBlock)集的形式接收来自MAC子层的数据流,这些数据流在物理层经基带处理后,在无线链路上提供传输服务。一般基带处理包括信道的编码与复用过程,该过程如图1所示,包括CRC校验,传输块的分段,信道编码,无线帧均衡,第一次交织,无线帧分割,速率匹配,传输信道复用,物理信道分割,第二次交织,子帧分割,物理信道映射等处理。其中,传输块的分段将添加CRC校验后的传输块分割成数段可以被信道编码器编码的信息分组。设添加CRC校验后的传输块长度为X,信道编码器的最大编码块长度为Zmax(例如对3GPPTurbo码,Zmax=5114),如果X>Zmax则需要对传输块进行分割。例如,在3GPPRel6版本中的分割方法如下Y=CK-X(1)这里C表示传输块被分成的码块数量,K是每个码块的长度,40≤K≤Zmax,Y是填充比特的数目。可见该方法分割产生的码块具有40到Zmax的范围内任意的长度。对于高速并行译码的Turbo码来说,其内交织器的长度是并行度的倍数,上述长度连续变化的传输块分段方法并不合适。分割后的各个码块都不能被Turbo编码器直接编码,需要先在每一个信息分组中填充一定数量的“0”或“1”比特,然后再编码。这无疑不是最简捷的方式。
发明内容本发明要解决的技术问题是充分考虑采用Turbo编码的分组传输系统的特点,提供一种新的Turbo码块分组方法,即根据传输块大小判定采用不同的分段方法,所述分组方法能充分保证系统的整体性能和最大限度地减少填充比特的数目,从而减低Turbo译码器的复杂度和减少译码时延。为达到以上目的,本发明提供一种Turbo码传输块的分段方法,所述方法包括判断传输块长度是否大于系统设定的传输块长度阈值,如果传输块长度小于或等于系统设定的阈值,则采用交织器长度KI对传输块进行分段;如果传输块长度大于系统设定的阈值,则采用相邻两个交织器长度KI-1和KI对传输块进行分段。其中,传输块长度小于或等于系统设定的阈值时,采用所述交织器长度KI对传输块分段方法,包括以下这里,X是传输块的长度,Zmax表示Turbo内交织器长度表Ktable中最长的交织器长度,C表示传输块被分成的码块个数;i表示Ktable中第i个交织器长度的索引,1≤i≤T,T是Ktable中元素的数目,表示选择Ktable中大于或等于的最小的交织器长度KI对传输块进行分段,最终,长度X的传输块被分成C段长度为KI的信息分组。其中,传输块长度大于系统设定的阈值时,所述相邻两个交织器长度KI-1和KI对传输块分段的方法,所述方法包括CI=C-CI-1这里X是传输块的长度,Zmax表示Turbo内交织器长度表Ktable中最长的交织器长度,C表示传输块被分成的码块个数;i是Turbo内交织器长度表Ktable中第i个交织器长度的索引,1≤i≤T,T是Ktable中元素的数目,表示Ktable中大于或等于的最小的交织器长度KI的索引,CI-1和CI分别表示传输块分割成长度为KI-1和KI的分组数目。其中,所述相邻两个交织器长度KI-1和KI对传输块分段的方法,所述方法包括CI-1=C-CI这里X是传输块的长度,Zmax表示Turbo内交织器长度表Ktable中最长的交织器长度,C表示传输块被分成的码块个数;i是Turbo内交织器长度表Ktable中第i个交织器长度的索引,1≤i≤T,T是Ktable中元素的数目,表示Ktable中大于或等于的最小的交织器长度KI的索引,CI-1和CI分别表示传输块分割成长度为KI-1和KI的分组数目。其中,Turbo码的内交织器采用一组长度离散的、适合高速并行译码的交织器,这组交织器在系统中通过一个交织器表明确定义。本发明充分考虑采用Turbo编码的分组传输系统的特点,提出一种新的Turbo码块分组方法,新的分组方法根据传输块大小判定采用不同的分段方法,这样能在保持系统的整体性能的前提下,最大限度地减少填充比特的数目。而减少填充比特的数量可以降低译码计算复杂度,减少译码器功耗,以及减少译码时延,提高译码速度。图1是普通Turbo码编码器结构图;图2是本发明的Turbo编码块分块方法的流程图。具体实施例方式下面结合附图及具体实施例对本发明进行详细说明。请参照图2,图2是本发明所述的Turbo编码块分块方法的处理流程。首先,判断传输块长度是否大于系统设定的传输块长度阈值,其中,传输块长度阈值在系统中是明确定义的,记作Xthreshold;(1)如果传输块的长度小于或等于阈值Xthreshold,则采用一种交织器长度KI对传输块进行分段,即传输块只会被分成一种长度KI的分组,具体方法如下这里,C是传输块被分成的码块个数,i是Ktable中第i个交织器长度的索引,1≤i≤T。表示选择Ktable中大于或等于的最小的交织器长度KI对传输块进行分段。最终,长度X的传输块被分成C段长度为KI的信息分组。因此,这里0≤δ<KI-KI-1,并且(注意当I=1时KI-1=0)。在这种情况下,传输块的填充比特的数目是Y=CK1-X]]>当δ和C都比较大时,填充比特数目Y是比较大的。例如,如果Ktable的Zmin=40,Zmax=5114,T=100并且假设交织器长度是平均分布的,则最大的填出比特数目大约等于50×C。这些填充比特可以集中填充到一个分组中,也可以平均分布到各个分组中。(2)如果传输块的长度大于设定的阈值Xthreshold,则采用相邻的两个交织器长度KI-1和KI对传输块进行分段,其中KI-1和KI是Ktable中的元素(注意当I=1时KI-1=0),KI-1<KI,1≤I≤T,DI=KI-KI-1,表示两个交织器长度KI-1和KI的差值,其中,具体分段方法有以下两种如下第一种方法先求CI-1再求CI,具体方法如下CI=C-CI-1第二种方法先求CI再求CI-1,具体方法如下CI-1=C-CI在上述两种方法中,C是传输块被分成的码块个数,i是Ktable中第i个交织器长度的索引,1≤i≤T。表示Ktable中大于或等于的最小的交织器长度KI的索引。CI-1和CI分别表示传输块分割成长度为KI-1和KI的分组数目。虽然上述两种方法推导的出发点不同,导致分段过程不同,不过两种方法得出的CI-1和CI值是一致的。当CKI-X<DI时,第二种方法与第一种方法得出的结果是相同的。当CKI-X>=DI时,第二种方法需要填充的比特数目比第一种方法要少。此外,不管C值为多少,每个传输块的填充比特数目Y的上界是DI,即0≤Y≤KI-KI-1。因此,如果Turbo码两个相邻长度KI-1和KI的交织器的性能非常接近,则第二种方法可以在保证传输块性能的前提下,大大减少每个传输块中由于分块引起的填充比特的数量。最后,分段产生的信息分组送给Turbo编码器编码。以下采用一种具体的实际例子来说明本发明所述的Turbo编码块分块方法通信系统中Turbo码内交织器采用如表1所示的一组“二次置换多项式(quadraticpermutationpolynomialQPP)”交织器,其中i表示交织器的索引,KI表示第i个交织器的长度,f1,f2是二次置换多项式f(x)=f2*x2+f1*x的系数。对应该表的Zmin=40,Zmax=6114,T=188。通信系统设定的传输块长度阈值Xthreshold=8192。表1二次置换多项式(QPP)交织器表按照本发明的传输块分段方法,如果传输块长度X=8000,则X<Xthreshold,因此采用一种交织器长度KI对传输块进行分段,具体方法如下该方法选择表中大于或等于的最小的交织器长度K155=4032对传输块进行分段。即长度为8000的传输块被分成2段长度为4032的信息分组。如果传输块的长度X=12300,则X>Xthreshold,则采用相邻的两个交织器长度KI-1和KI对传输块进行分段,具体分段方法如下C157=3-C156=1或者C156=C-C157=2这里CI-1和CI分别表示传输块分割成长度为K156=4096和K157=4160的分组数目。可见两种方法的结果是一致的。最后,分块后的信息分组送给Turbo编码器进行编码。总之,本发明充分考虑了采用Turbo编码的分组传输系统的特点,提出一种新的传输快分块方法,该方法能更好地配合只支持离散码集的Turbo码,如采用二次置换多项式(QPP)的Turbo码,能保持分组传输系统的整体性能,并最大限度减少分块导致的填充比特数目。权利要求1.一种Turbo码传输块的分段方法,所述方法包括判断传输块长度是否大于系统设定的传输块长度阈值,如果传输块长度小于或等于系统设定的阈值,则采用交织器长度KI对传输块进行分段;如果传输块长度大于系统设定的阈值,则采用相邻两个交织器长度KI-1和KI对传输块进行分段。2.根据权利要求1所述的方法,其特征在于传输块长度小于或等于系统设定的阈值时,采用所述交织器长度KI对传输块分段方法,包括以下这里,X是传输块的长度,Zmax表示Turbo内交织器长度表Ktable中最长的交织器长度,C表示传输块被分成的码块个数;i表示Ktable中第i个交织器长度的索引,1≤i≤T,T是Ktable中元素的数目,表示选择Ktable中大于或等于的最小的交织器长度KI对传输块进行分段,最终,长度X的传输块被分成C段长度为KI的信息分组。3.根据权利要求1所述的方法,其特征在于传输块长度大于系统设定的阈值时,采用所述相邻两个交织器长度KI-1和KI对传输决分段的方法,所述方法包括CI=C-CI-1这里,X是传输块的长度,Zmax表示Turbo内交织器长度表Ktable中最长的交织器长度,C表示传输块被分成的码块个数;i是Turbo内交织器长度表Ktable中第i个交织器长度的索引,1≤i≤T,T是Ktable中元素的数目,表示Ktable中大于或等于的最小的交织器长度KI的索引,CI-1和CI分别表示传输块分割成长度为KI-1和KI的分组数目。4.根据权利要求1所述的方法,其特征在于所述相邻两个交织器长度KI-1和KI对传输块分段的方法,所述方法包括CI-1=C-C1这里,X是传输块的长度,Zmax表示Turbo内交织器长度表Ktable中最长的交织器长度,C表示传输块被分成的码块个数;i是Turbo内交织器长度表Ktable中第i个交织器长度的索引,1≤i≤T,T是Ktable中元素的数目,表示Ktable中大于或等于的最小的交织器长度KI的索引,CI-1和CI分别表示传输块分割成长度为KI-1和KI的分组数目。5.根据权利要求1所述的方法,其特征在于Turbo码的内交织器采用一组长度离散的、适合高速并行译码的交织器,这组交织器在系统中通过一个交织器表明确定义。全文摘要本发明公开了一种Turbo码传输块的分段方法,所述方法包括判断传输块长度是否大于系统设定的传输块长度阈值,如果传输块长度小于或等于系统设定的阈值,则采用交织器长度K文档编号H04L1/00GK101060481SQ20071007323公开日2007年10月24日申请日期2007年2月5日优先权日2007年2月5日发明者袁志锋,徐俊,胡留军申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1