咬尾卷积码译码方法与装置制造方法及图纸

技术编号:8163532 阅读:215 留言:0更新日期:2013-01-07 20:48
本发明专利技术揭示了一种咬尾卷积码译码方法与装置,根据最后一次迭代得到的末状态对应的量度生成可能的初状态集,而后对该初状态集中的状态进行回溯,在回溯过程中更新初状态集,且根据回溯的结果调整优先级,优先回溯已在状态集中的状态,以尽量减少回溯次数,进而达到减少时延的效果。同时,优先搜索最可能成为咬尾解初状态的状态,而不单纯地以末状态的状态量度或者一次迭代的结果作为考量的依据,达到了性能和时延较优的折中效果,具有较好的鲁棒性。

【技术实现步骤摘要】

本专利技术涉及通信
,特别是涉及ー种咬尾卷积码译码方法与装置
技术介绍
随着通信技术的发展,数字通信已逐步取代模拟通信成为通信技术的主流。然而,数字信息在信道中传输时,会受到噪声的干扰,误码的产生总是不可避免的。为了在已知信噪比的情况下达到一定的误码率指标,在合理设计基带信号,选择调制、解调方式,并采用频域均衡或时域均衡措施的基础上,还应该采用差错控制编码等信道编码技术,使误码率进ー步降低。卷积码和分组码是差错控制编码的两种主要形式,在编码器复杂度相同的情况下,卷积码的性能优于分组码,因此卷积码被应用在许多无线通信的标准之中。 通常使用的卷积码是零尾(zero-termination)卷积码,但是零尾卷积码需要额外的零尾比持,带来额外的开销,而咬尾(tail-biting)卷积码很好的克服了这个问题,且可以在不牺牲性能的条件下避免码率的损失,从而具有比零尾卷积码更好的性能。咬尾卷积码是建立在卷积码基本原理基础之上的,与通常使用的零尾卷积码不同,咬尾卷积码没有使用零比特收尾的过程,为了避免缺少尾巴导致接近网格末尾的信息位比网格中更早的比特得到更少差错保护(非对称错误保护),咬尾卷积码要求编码器从和終止状态相同的状态开始,且该状态可以通过信息序列确定。咬尾卷积码的这ー限制使其网格表现出不同于零尾卷积码的対称性,可以用循环网格来表述,它环绕着每个末状态并把该末状态连到所对应的初状态,从而形成一个循环的结构。且由于初状态不再如零尾卷积码那样是已知信息(零状态),其译码的算法与传统的卷积码相比需要额外的复杂度。目前常用的咬尾卷积码译码方法都利用的网格的循环特性,使用前一次度量计算的结果初始化下一次度量计算的初状态,具体方法请參考图1,并描述如下I)将所有状态的度量值(量度)设为0,做一次维特比(Viterbi)迭代,即从所有状态量度为O的初始条件下作第一次迭代(采用Viterbi译码方法);2)如果得到的最大似然解是咬尾的(即初状态与末状态相同),则结束译码并输出结果;如果不是咬尾的,则继续执行步骤3);3)对于第i (i > I)次迭代,用第i_l次迭代的末状态的状态量度作为初始状态做一次Viterbi译码,如果第i次迭代的最大似然解是咬尾的,则结束解码并输出结果;如果不是咬尾的,则继续执行步骤4);4)重复步骤3),直到解码被中止或者i达到设定的上限N ;5)对所有末状态进行回溯,如果最后一次循环存在咬尾解,则输出状态量度最大的咬尾解。如果不存在咬尾解,则译码失败。其中N为预设的最大迭代次数,通常N设为2就能获得较好的译码效果。上面的流程图是理想情况下的最优算法,因为步骤5)中考虑了所有可能的解,即当i达到设定的上限N时,需要对所有末状态进行回溯,而在实际应用中,实现所有末状态回溯的复杂度非常高。以LTE标准使用的咬尾卷积码为例,其约束长度为7,网格状态数为64,所有可能的64个末状态作回溯,其时延过大不可接受,所以必须对上述算法作简化。常见的简化方法是对所有状态度量值进行排序,只对其中部分度量值较大的解进行回溯,在这部分解中寻找度量值最大的咬尾解,如果在这部分解中不存在咬尾解,就认为译码失败,这种方法可以节省不少计算量,但进行回溯的状态数也不能太少,否则会影响译码性能。另外ー种简化方法是利用Viterbi译码器的特性,即当编码块长度超过编码器约束长度约4 5倍(该长度设为τ)之后,所有状态回溯的留存路径在τ个长度之前以接近于I的概率合并为同一路径,即所有状态回溯后的初状态以接近于I的概率相等来減少回溯量度数,在编码块大于一定长度时,先回溯最大量度的状态得到初状态,再使用该初状态回溯得到咬尾解,该方法的缺点在于 (I)对码块长度有一定的要求;(2)仅回溯最大量度作咬尾尝试,减小了时延但牺牲了一部分性能.。可见,理想的咬尾卷积码译码方法由于译码时延过大无法采用,而现存的各种简化方法都偏重于性能和时延中的一方面,没有达到较优的折中及较好的鲁棒性。
技术实现思路
有鉴于此,本专利技术提供ー种咬尾卷积码译码方法与系统,以解决现有译码方法偏重于性能和时延中的一方面,没有达到较优的折中及较好的鲁棒性的问题。为解决以上技术问题,本专利技术提供ー种咬尾卷积码译码方法,包括从所有状态量度为O的初始条件作第一次迭代;而后依次利用第i-Ι次迭代的末状态的状态量度作为初始状态做第i次迭代,其中I < i < N,N为预设的最大迭代次数;其间,如果迭代得到的结果是咬尾的,则结束译码并输出结果;其特征是,若以上迭代过程中得到的结果不是咬尾的,则还包括以第N-I次迭代的末状态的状态量度作为初始状态作第N次迭代;从第N次迭代的末状态中选取多个最大状态量度对应的末状态,构成状态集;按状态量度由大到小的顺序设置状态集中的末状态优先级;按优先级高低依次回溯状态集中的末状态,其间,如果回溯的结果是咬尾的,则结束解码并输出结果;如果回溯的结果不是咬尾的,且回溯得到的初状态在所述状态集中,则将该初状态设为最高优先级,优先回溯该初状态;如果回溯的结果不是咬尾的,且回溯得到的初状态不在所述状态集中,则将该初状态加入所述状态集,并设为最低优先级;如果回溯达最大回溯次数,则译码失败。进ー步的,所述最大回溯次数小于等于2M,其中L为咬尾卷积码编码约束长度。进ー步的,所述最大回溯次数小于等于8。进ー步的,所述状态集的中的末状态的数量小于等于2M,其中L为咬尾卷积码编码约束长度。本专利技术还提供ー种咬尾卷积码译码装置,包括初始状态模块、前向迭代模块、回溯模块、状态集生成模块以及译码输出模块,其中初始状态模块内预设有状态量度为O的初始状态;前向迭代模块以初始状态模块内预设的初始状态作为初始条件作第一次迭代,而后依次利用第i_l次迭代的末状态的状态量度作为初始状态做第i次迭代,其中I く i<N,N为预设的最大迭代次数,其间,回溯模块对每次迭代的结果进行回溯,判断是否咬尾,如果是,译码输出模块输出结果,否则,前向迭代模块以第N-I次迭代的末状态的状态量度作为初始状态作第N次迭代;状态集生成模块从第N次迭代的末状态中选取多个最大状态量度对应的末状态,构成状态集,其中状态集中的末状态按状态量度由大到小的顺序设置优先级;回溯模块按优先级高低依次回溯状态集中的末状态,其间,如果回溯的结果是咬尾的,译码输出模块输出结果;如果回溯的结果不是咬尾的,指示状态集更新,即若回溯得到的初状态在所述状态集中,则将该初状态设为最高优先级,优先回溯该初状态,若回溯得到的初状态不在所述状态集中,则将该初状态加入所述状态集,并设为最低优先级;如果回溯达最大回溯次数,则译码失败。进ー步的,所述最大回溯次数小于等于2M,其中L为咬尾卷积码编码约束长度。进ー步的,所述最大回溯次数小于等于8。进ー步的,所述状态集的中的末状态的数量小于等于2M,其中L为咬尾卷积码编码约束长度。 可见,以上咬尾卷积码译码方法与装置根据最后一次迭代得到的末状态对应的量度生成可能的初状态集,而后对该初状态集中的状态进行回溯,在回溯过程中更新初状态集,且根据回溯的结果调整优先级,优先回溯已在状态集中的状态,以尽量減少回溯次数,进而达到減少时延的效果。同时,优先搜索最可能成为咬尾解初状态的状态,而不单纯地本文档来自技高网
...

【技术保护点】
一种咬尾卷积码译码方法,包括:从所有状态量度为0的初始条件作第一次迭代;而后依次利用第i?1次迭代的末状态的状态量度作为初始状态做第i次迭代,其中1<i<N,N为预设的最大迭代次数;其间,如果迭代得到的结果是咬尾的,则结束译码并输出结果;其特征是,若以上迭代过程中得到的结果不是咬尾的,则还包括:以第N?1次迭代的末状态的状态量度作为初始状态作第N次迭代;从第N次迭代的末状态中选取多个最大状态量度对应的末状态,构成状态集;按状态量度由大到小的顺序设置状态集中的末状态优先级;按优先级高低依次回溯状态集中的末状态,其间,如果回溯的结果是咬尾的,则结束解码并输出结果;如果回溯的结果不是咬尾的,且回溯得到的初状态在所述状态集中,则将该初状态设为最高优先级,优先回溯该初状态;如果回溯的结果不是咬尾的,且回溯得到的初状态不在所述状态集中,则将该初状态加入所述状态集,并设为最低优先级;如果回溯达最大回溯次数,则译码失败。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈颖徐兵
申请(专利权)人:联芯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1