一种基于MAP算法的Turbo译码方法及装置的制造方法

文档序号:9550923阅读:523来源:国知局
一种基于MAP算法的Turbo译码方法及装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种基于MAP算法的Turbo译码方法及装置。
【背景技术】
[0002]在1993年瑞士日内瓦召开的国际通信会议上,法国不列颠通信大学的C.Berrou,A.Glavieux和P.Thitimajshiwa首先提出一种称之为Turbo码的编、译码方案。它由两个递归循环卷积码(RSC)通过交织器以并行级联的方式结合而成,这种方案采用反馈迭代译码方式,真正发掘了级联码的潜力,并以其类似于随机的编译码方式,突破了最小距离的短码设计思想,使它更加逼近了理想的随机码的性能。现有的一些通信系统,如3GPP LTE/LTE-A、WCDMA、TD-SCDMA等系统中都采用了 Turbo码作为信道编码。
[0003]Turbo码具有类随机码的特性,同时具有足够的结构信息,这使得能够使用一种高效的迭代译码方法进行译码。由于这些特性,这种编码具有特别有益的性能,特别是在中等误比特率和长分组长度情况下。实际上,在任何码率和信息分组长度大于104比特的情况下,如果信噪比在香农极限ldB范围内,采用迭代译码算法的Turbo码能够达到10-5的误比特率性能,也即该码率下的Eb/ΝΟ的值达到了信道容量。
[0004]Turbo译码的基本原理是使用MAP算法对信息符号进行迭代估计,其输入包括从前次译码迭代之后所有统计独立的信息获得的逐次更新的先验信息。迭代译码的概念与负反馈十分相似,输出的外信息又被反馈回输入端,产生放大输入端信噪比的效果,使系统输出稳定;经过足够多次的迭代,最后的译码判决可以从任意一个译码器的LLR值(后验概率对数似然比)获得。
[0005]目前,MAP译码方案多采用分块加滑动窗的译码结构来减少译码时延和提高吞吐率。为了获得较为准确的边界值,现有的方法是预计算一部分的overlap作为回溯长度。受overlap长度的限制,这种方法在高码率下,实现复杂、性能退化严重,而且每个子块的有效译码时间所占的比例偏小。

【发明内容】

[0006]有鉴于此,为解决现有存在的技术问题,本发明实施例提供:
[0007]本发明提供一种基于MAP算法的Turbo译码方法,信息符号依次划分为多个子块,每个子块包括多个滑动窗,该方法包括:
[0008]使用MAP算法对信息符号进行迭代估计,其中,采用窗边界值继承方式和块边界继承方式获取各滑动窗和子块的α边界值和β边界值,并根据所述α边界值和β边界值递推出整窗及整块的LLR值;
[0009]根据所述LLR值进行译码判决。
[0010]上述方案中,
[0011]所述采用窗边界值和块边界值继承方式获取滑动窗的α边界值,包括:
[0012]以上一次迭代获取的α边界值作为本次迭代α的初始值,正向读取滑动窗整窗的输入数据,计算出整窗的α值,
[0013]所述采用窗边界值和块边界值继承方式获取滑动窗的β边界值,包括:
[0014]以上一次迭代获取的β边界值作为本次迭代β的初始值,逆向读取滑动窗整窗的输入数据,计算出整窗的β值。
[0015]上述方案中,存储所述输入数据的RAM阵列包括两片RAM,用于通过乒乓操作实现连续计算。
[0016]上述方案中,为计算β的值,存储所述输入数据的RAM的写和读的地址分别为0?K-1和K-1?0,其中K为一窗的数据长度。
[0017]上述方案中,各滑动窗计算得出的β值存储在RAM中,写地址和读地址分别为K?0和1?K,其中,K为一窗的数据长度。
[0018]上述方案中,
[0019]对于第一个子块中的第一个滑动窗,α的初始值为第一预设值,对于非第一个子块中的第一个滑动窗,继承前面一个子块中最后一个滑动窗计算得到的α边界值作为本子块α更新的初始值;
[0020]对于最后一个子块中的最后一个滑动窗,β的初始值为第二预设值,对于非最后一个子块中的最后一个滑动窗,继承后面一个子块中第一个滑动窗计算得到的β边界值作为本子块β更新的初始值。
[0021]本发明提供一种基于MAP算法的Turbo译码装置,该装置包括:第一处理模块和第二处理模块;其中,
[0022]所述第一处理模块,用于使用MAP算法对信息符号进行迭代估计,其中,采用窗边界值继承方式获取各滑动窗的α边界值和β边界值,采用块边界值继承方式获取各子块的α边界值和β边界值,并根据所述α边界值和β边界值递推出整窗及整块的LLR值;
[0023]所述第二处理模块,用于根据所述LLR值进行译码判决。
[0024]上述方案中,
[0025]所述第一处理模块,具体用于以上一次迭代获取的α边界值作为本次迭代α的初始值,正向读取滑动窗整窗的输入数据,计算出整窗的α值;以及以上一次迭代获取的β边界值作为本次迭代β的初始值,逆向读取滑动窗整窗的输入数据,计算出整窗的β值。
[0026]上述方案中,该装置还包括第一存储模块,
[0027]所述第一存储模块,用于通过包括两片RAM的RAM阵列存储输入数据,以通过乒乓操作实现连续计算。
[0028]上述方案中,为计算β的值,存储所述输入数据的RAM的写和读的地址分别为0?K-1和K-1?0,其中K为一窗的数据长度。
[0029]上述方案中,该装置还包括第二存储模块,
[0030]所述第二存储模块,用于存储各滑动窗计算得出的β值,写地址和读地址分别为Κ?0和1?Κ,其中,Κ为为一窗的数据长度,0位置存储的是计算完一窗获取的β窗边界值。
[0031]上述方案中,
[0032]所述第一处理模块,具体用于对第一个子块中的第一个滑动窗,获取第一预设值作为α的初始值,对于非第一个子块中的第一个滑动窗,继承前面一个子块中最后一个滑动窗计算得到的α边界值作为本子块α更新的初始值;对于最后一个子块中的最后一个滑动窗,获取第二预设值作为β的初始值,对于非最后一个子块中的最后一个滑动窗,继承后面一个子块中第一个滑动窗计算得到的β边界值作为本子块β更新的初始值。
[0033]本发明实施例一种基于MAP算法的Turbo译码方法及装置,使用MAP算法对信息符号进行迭代估计,其中,采用窗边界值继承方式和块边界继承方式获取各滑动窗和子块的α边界值和β边界值,并根据所述α边界值和β边界值递推出整窗及整块的LLR值;根据所述LLR值进行译码判决。根据本发明实施例所述的技术方案,不需要利用overlap来预计算得到每个子块α和β的初始状态,也不需要利用每个滑动窗的overlap来预计算α和β的初始状态,从而实现结构简单,且提高了每个子块的有效译码时间。
【附图说明】
[0034]图1为本发明实施例一种基于MAP算法的Turbo译码方法流程示意图;
[0035]图2为本发明实施例一种基于MAP算法的Turbo译码装置结构示意图;
[0036]图3为本发明实施例再一种基于MAP算法的Turbo译码装置结构示意图;
[0037]图4为本发明实施例再一种基于MAP算法的Turbo译码装置结构示意图;
[0038]图5为本发明实施例1提供的一种边界值有继承的滑动窗流水线计算流程图;
[0039]图6为传统的依靠overlap计算窗边界的滑动窗流水线计算流程图;
[0040]图7为本发明实施例2提供的一种边界条件有继承的Turbo码MAP计算单元结构图;
[0041]图8为本发明实施例2中一块边界有继承且窗边界有继承的Turbo解码器译码性能意图;
[0042]图9为本发明实施例2中一块边界有继承且窗边界有继承的Turbo解码器译码性能不意图;。
【具体实施方式】
[0043]在本发明的各种实施例中:采用窗边界值继承方式获取各滑动窗的α边界值和β边界值。
[0044]为了解决现有技术中存在的,高码率下,有overlap的MAP算法性能退化,且实现结构复杂的问题,本发明实施例提出了一种基于MAP算法的Turbo译码方法,如图1所示,该方法
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1