三维TPC译码器的设计及FPGA实现
摘要:Turbo乘积码(TPC)是一种性能优秀的纠错编码方法,它具有译码复杂度低、译码延时小等优点,且在低信噪比下可以获得近似最优的性能。介绍了基于Chase算法的三维TPC软输入软输出(SISO)迭代译码算法,提出了三维TPC译码器硬件设计方案并在FPGA芯片上进行了仿真和验证。测试结果表明,该译码器具有较高的纠错能力,满足移动通信误码率的要求。
关键词:三维TPC;Chase算法;软输入软输出;FPGA实现
中图分类号:TN919.3?34文献标识码:A文章编号:1004?373X(2013)23?0026?04
DesignandFPGArealizationof3?DTPCdecoder
QUHai?hui,ZHANGHao,YANGYa?guang,LONGFei
(InstituteofMicroelectronicsofChineseAcademyofSciences,Beijing100029,China)
Abstract:Turboproductcode(TPC)isakindofforwarderrorcorrectioncode(FEC)withexcellentperformance.TPChastheadvantagesoflowdecodingcomplexityandshortdecodingdelay,andcanachievenear?optimumperformanceatlowsignal?to?noiseratio.Thesoft?insoft?out(SISO)iterativedecodingmethodforthree?dimensional(3D)TPCbasedonChasealgorithmisintroduced.Thehardwaredesignschemeof3?DTPCdecoderisproposedandverifiedonFPGAplatform.Thesimulationresultsshowthatthedecoderhashigherror?correctingcapabilityandmeetstherequirementofmobilecommunicationonbiterrorrate.
Keywords:3?DTPC;Chasealgorithm;SISO;FPGArealization
0引言
无线通信信道中存在着干扰和衰落,使通信系统的可靠性降低。差错控制编码技术用来检测和纠正因为信道失真引起的信息传输错误,提高信息传输的可靠性。差错控制编码的研究主要是希望在低译码复杂度的前提下,寻找一种逼近香农极限的编译码方法。Turbo乘积码不仅译码复杂度低,译码延时小,而且它继承了Turbo码在低信噪比下仍然有低误码率的优点。因此,Turbo乘积码己经成为纠错编码领域的研究热点。
乘积码最早是由Elias于1954年提出的[1],但受到硬件资源的制约其应用一直受限。C.Berrou等学者在1993年提出了基于软输入软输出(SoftInputSoftOutput,SISO)迭代译码算法的Turbo卷积码(TCC)[2],它可以在数次迭代后性能接近香农极限,因此得到广泛关注。但是TCC的译码复杂度高、译码延时大,从而限制了在高速通信系统中的应用。受迭代译码思想的启发,R.Pyndiah等人于1994年在Chase的基础上提出了线性分组码的SISO算法[3],并通过迭代的方式应用于乘积码,称为Turbo乘积码(TPC)。TPC在译码性能上能够接近TCC,同时算法复杂度较低,译码延时小,在采用流水线机制的基础上,可以实现高速编译码器。
在过去的十几年中,二维Turbo乘积码(2D?TPC)得到了深入的研究和广泛的应用。相比于Turbo码,2D?TPC拥有很多优点:它的“错误地板(ErrorFloor)”可以达到10-7甚至更低量级;由于它采用次最优译码算法而且不含交织器,其编译码复杂度很低;当码率很高时,其性能逼近香农极限。三维Turbo乘积码(3D?TPC)具备二维Turbo乘积码(2D?TPC)的所有优点,而且在低信噪比环境下比2D?TPC的性能更好[4]。因此,本文介绍了一种基于Chase算法的3D?TPC软输入软输出迭代译码算法并且在FPGA芯片上进行了仿真和验证。
13D?TPC编码结构
乘积码是线性分组码在空间维度上的扩展[5]。下面说明3D?TPC的编码结构[4],如图1所示。
假设有三个子码分别为[C1n1,k1,δ1]、[C2n2,k2,δ2]和[C3n3,k3,δ3],其中[ni,][ki]和[δi]分别代表子码i(i=1,2,3)的码长、信息位长和最小汉明距离。
图13D?TPC的编码结构
通过下述步骤可以得到如图1所示的3D?TPC码[C=C1×C2×C3]:
(1)将长度为[k1×k2×k3]的信息比特填入图中长、宽、高分别为[k1]、[k2]和[k3]的立方体中;
(2)在z=0的平面上,沿着x轴用[C1]码对[k2]行信息进行编码;
(3)在z=0的平面上,沿着[y]轴用[C2]码对[n1]列进行编码;
(4)重复步骤(2)~(3)[k3-1]次,分别对[z=1,2,…,][k3-1]平面上的信息比特编码;
(5)沿着z轴方向用[C3]码对[k3]个信息比特进行编码(共进行[n1×n2]次编码)。
新码[Cn,k,δ]的参数为[n=n1×n2×n3],[k=k1×k2×k3],[δ=δ1×δ2×δ3],码率为[R=R1×R2×R3],其中[Ri]是[Ci]的码率。
从这个编码过程可以看出,TPC对突发错误有效,因为该编码结构是天然的交织器。
23D?TPC译码原理
2.1代数译码
代数译码也叫硬判决译码。以线性分组码[Cn,k,d]为例,设其校验矩阵为[H,]经信道传输后的接收向量为[R。]代数译码器的主要任务就是设法从[R]中得到正确的错误图样[E],然后计算估值码字[C]。具体的译码步骤如下:
(1)首先根据公式[S=R?HT]计算伴随式[S];
(2)如果[S=0]则传输无错;如果[S≠0],则有[E≠0],根据伴随式[S]找出错误图样[E];
(3)进行纠错,估计码字为[C=R⊕E],如果[C=C,]则译码正确,否则译码错误。
2.2Chase算法译码
3D?TPC的译码是一个迭代过程,如图2所示[4,6]。其由三个SISO分量译码器组成,每个SISO分量译码器采用某种方法计算边缘信息,从而对先验信息进行修正,得到后验信息。在进行迭代译码时,设接收向量矩阵为[R],边缘信息矩阵为[Wm],那么每一次迭代的软输入信息矩阵[7?8]可以表示为:
[Rxm=R+αWzm](1)
[Rym=R+αWxm](2)
[Rzm=R+αλ1Wxm+λ2Wym](3)
式中:[m]表示迭代次数,[α,λ]为加权因子,理论上需要根据子码码型和迭代次数进行调整,实际应用采用经验值,性能没有明显恶化,但复杂度大为降低。
为了便于硬件实现[9],每个SISO分量译码器的边缘信息的计算采用基于Chase译码的方法。
图23D?TPC译码器结构
假定3D?TPC的分量码[C1]和[C2]均为扩展hamming码,[C3]为奇偶校验码,码字[C]经过BPSK调制后在AWGN信道下传送,接收向量为[R=r1,r2,r3,…,rn,rn+1]。基于Chase算法的SISO译码过程如下[10]:
期刊库(http://www.zgqkk.com),是一个专门从事期刊推广、投稿辅导的网站。
本站提供如何投稿辅导,寻求投稿辅导合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级投稿辅导/国家级投稿辅导/核心期刊投稿辅导//职称投稿辅导。
【免责声明】本文仅代表作者本人观点,与投稿辅导_期刊发表_中国期刊库专业期刊网站无关。投稿辅导_期刊发表_中国期刊库专业期刊网站站对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。
投稿辅导服务咨询与期刊合作加盟
陆老师联系QQ:
蒋老师联系QQ:
刘老师联系QQ:
联系电话:18015016272
17327192284
投稿辅导投稿邮箱:zgqkk365@126.com
期刊推荐
- 《校园英语》旬刊 省级 教育类学术期刊
- 《吉林教育》旬刊 省级 教育类学术期刊
- 《文教资料》 旬刊 省级
- 《科技风》半月刊 省级 科技类优秀期刊
- 《价值工程》旬刊 国家级 科技统计源期刊
- 《中国实验方剂学杂志》 半月刊 北大核心
- 《电影评介》半月刊 14版北大核心
- 《社科纵横》季刊 社科类优秀期刊
- 《求索》月刊 14版北大核心期刊
- 《中华建设》月刊 国家级 建设类优秀期刊
- 《继续教育研究》月刊 北大核心期刊
- 《网络空间安全》(信息安全与技术)月刊 国
- 《新闻传播》月刊 省级 新闻类优秀期刊
- 《财会月刊》旬刊 14版北大核心
- 《体育文化导刊》月刊 体育类双核心期刊
- 《机械研究与应用》双月刊 省级 机械应用类
- 《公路交通科技》 月刊 北大核心
- 《教学与管理》旬刊 北大核心
- 《新课程研究》旬刊 省级 教育类优秀学术期
- 《中国医药指南》 旬刊 国家级
- 《高教论坛》 月刊 省级
- 《课程教育研究》 旬刊 国家级
- 《语文建设》 旬刊 14版北大核心
- 《教育发展研究》 半月刊 双核心
- 《学术界》 月刊 双核心