资源描述
硕 士 学 位 论 文
题目 Turbo码编/译码系统设计及其FPGA实现
(英文) The Design of Turbo Coding / Decoding System and its
Implement with FPGA
摘 要
Turbo码出现是纠错编码史上一个重大突破,它含有在低信噪比下靠近Shannon理论极限优异译码性能,在很多通信系统中全部有很大应用前景。本文关键研究是Turbo码编码和译码算法及其FPGA硬件实现。首先,介绍了课题研究背景和Turbo译码中国外研究现实状况;其次在介绍Turbo编译码原理基础上对现在常见各类译码算法进行介绍和性能分析;接着关键研究Turbo码译码器设计,最终用硬件实现了其电路。
本文分别对Turbo码MAP算法,Max-Log-MAP算法,Log-MAP算法、SOVA算法等进行了推导。在深入分析译码算法基础上,决定采取Log-MAP算法作为本系统译码算法。在对该系统硬件实现过程中,为了节省硬件资源和降低延时,对Log-MAP算法进行了部分改善。在系统设计中,依据FPGA技术优点,采取“自上而下”和“自下而上”结合设计方法,经过合适模块分割,将Turbo码译码器分为三大模块: Log-MAP译码单元模块、交织/解交织器模块和控制信号产生模块。
本文针对编码器中延时模块采取一个类似于交织器方法来实现延时功效,使其精度更高,编码效果愈加好。并对译码器进行了研究,给出了一个查找表法来实现复杂E函数,此方法显著简化了系统运算复杂度。在硬件实现Log-MAP算法过程中,经过巧妙地改变前向矢量计算次序,降低了系统占用硬件资源。最终利用Quartus II软件对编译码系统做了计算机仿真,结果表明本系统实现Turbo码译码器误码性能很好,含有一定实用价值。
关键词: Turbo码, Log-MAP算法, 软判决, FPGA
ABSTRACT
The emergence of Turbo-Code is considered as the most exciting and potentially important development in the history of error-correcting codes. It has a superior decoding performance approaching the Shannon limit and has been widely applicated in many communication systems. The goal of this paper is to study Turbo encoding/decoding algorithm and its hardware implementation with FPGA. Firstly, it introduces background of the subject and the research situation about Turbo decoding; Secondly, it introduces the current various decoding algorithm and analyzes their performance respectively based on analyzing the encoding / decoding principle of Turbo-Code; then studies the design of the Turbo decoder which hardware circle is successfully implemented finally.
Including the MAP algorithm, Max-Log-MAP algorithm, Log-MAP algorithm and SOVA algorithm in Turbo-Code algorithm is deduced respectively in the paper. On the base of in-depth analysis of the decoding algorithm, the Log-MAP algorithm as the decoding algorithm in the system is selected. In the realization process of hardware in this system, Log-MAP algorithm has been improved in order to save the hardware resources and reduce delay. In the design of Turbo-Code system, the combining design method of both "from top to bottom" and "from bottom to top" is implemented according to advantage of the FPGA, and the decoder is divided into three blocks: Log-MAP decoder, interleaver / deinterleaver block and timing control block, through appropriate segmentation module.
In this paper, a similar interleaver is used by the delay module of the encoder as an approach to achieve delay function, which makes it more precise, effective and better. Meanwhile, in the study of the decoder, a look-up table method is given to achieve complex E-function, and the method significantly simplifies operation complexity of the system. In the process of the Log-MAP algorithm implementation with hardware, the calculation of vector sequence is subtly changed, which can reduce the share of the hardware resources. Finally, encoding/decoding system is simulated by the Quartus II software, and the result shows that Turbo-Code system has a better error performance and some practical value.
Key Words: Turbo Codes, Log-MAP Algorithm, Soft Decision,
Field Programmable Gate Array
目 录
摘 要 I
ABSTRACT II
目 录 III
第一章 绪论 1
§1.1 Turbo码编/译码方案提出 1
§1.2 Turbo码研究现实状况 2
§1.3 Turbo码研究展望 3
§1.4 课题背景和本论文关键工作及贡献 4
§1.4.1 选题背景 4
§1.4.2 论文结构 4
第二章 Turbo码基础知识 5
§2.1 Turbo码介绍 5
§2.2 Turbo码编码器原理 6
§2.2.1 Turbo码编码结构 6
§2.2.2 RSC分量编码器 8
§2.3 交织器 10
§2.4 Turbo码译码器原理 14
§2.5 Turbo码性能分析 16
§2.5.1影响Turbo码性能原因 16
§2.5.2 Turbo码性能物了解释 17
§2.6 本章小结 18
第三章 Turbo码译码算法 19
§3.1 最大似然译码标准 19
§3.2 MAP译码算法 20
§3.3 Log-MAP算法和Max-Log-MAP算法 25
§3.4 SOVA算法 28
§3.5 多个算法比较 29
§3.6 本章小结 31
第四章 Turbo码编译码器FPGA硬件实现方法 32
§4.1 FPGA技术介绍 32
§4.1.1 可编程逻辑器件 32
§4.1.2 硬件描述语言 33
§4.1.3 FPGA硬件设计环境 33
§4.2 Turbo码编译码方案确实定 34
§4.2.1 RSC生成多项式 34
§4.2.2 交织器结构确实定 34
§4.2.3 编码器结构确实定 35
§4.2.4 Turbo码译码器结构确实定 35
§4.3 Turbo码编码器FPGA实现 36
§4.3.1 RSC编码器模块实现 36
§4.3.2 交织器模块实现 36
§4.3.3 编码器模块实现 38
§4.4 Turbo码译码器FPGA实现 39
§4.4.1接收码字量化及其运算 40
§4.4.2 E函数实现方案 41
§4.4.3 Log-MAP译码器FPGA实现 42
§4.4.3.1 分支矢量D模块实现 43
§4.4.3.2 分支矢量A模块实现 44
§4.4.3.3 分支矢量B模块实现 46
§4.4.3.4 对数似然概率计算 48
§4.4.4 Turbo译码器总体结构实现 50
§4.5 本章小结 51
第五章 仿真结果分析 52
§5.1 Turbo编译码其系统仿真 52
§5.2 系统仿真结构分析 53
§5.3 本章小结 57
第六章 总 结 58
参考文件 60
致 谢 63
硕士在读期间研究结果 64
第一章 绪论
Turbo码提出对信道编码领域研究有着关键意义。因为Turbo码含有靠近Shanon理论极限性能[1],尤其是低信噪比下优异性能使Turbo码在很多通信系统中全部有很大应用潜力。除了在深空通信、卫星通信和多媒体通信等领域应用外,Turbo码在无线移动通信系统中应用是现在研究热点。本章关键介绍了Turbo码产生背景、发展现实状况及本论文工作安排。
§1.1 Turbo码编/译码方案提出
伴随用户对通信质量和数据传输速率要求不停提升,通信技术和计算机技术在不停快速发展,作为消除或降低信息传输错误有效手段之一信道编码也在不停发展。在过去50多年里,相关纠错码技术研究已经取得了很多骄人结果。伴随信息时代到来和微电子技术飞速发展,今天纠错码已不再单纯是一个理论上探讨问题,它已经成为现代通信领域中不可或缺一项标准技术。现代通信系统复杂化和通信业务多样化,要求通信系统能够对话音、数据、图像等数据量大信息实现高速实时传输,而且用户对通信质量要求也在不停提升。另外,移动通信快速发展和个人通信全球化,使得对高速率数字移动通信等领域所采取纠错编码技术要求越来越高。
多年来,依据信道编码定理,大家一直致力于寻求能满足现代通信业务要求,结构简单、性能优越好码,并在分组码、卷积码等基础编码方法和最大似然译码算法基础上提出了很多结构好码及简化译码结构复杂性方法,提出了乘积码、代数几何码、低密度校验码、分组卷积级联码等编码方法和序列译码、逐组最好译码、软判决译码等译码方法和编码和调制技术相结合网格编码调制技术。即使软判决译码、级联码和编码调制技术全部对信道码设计和发展产生了重大影响,不过其增益和Shannon理论极限一直全部存在2-3dB差距。
直到1993年在瑞士日内瓦召开国际通信会议上,C.Berrou,A.Glavieux和P.Thitimasjshima提出了Turbo码[2],这是一个可实现编码系统,而且取得了几乎靠近Shannon理论极限译码性能[3]。Turbo码一出现,就在编码理论界引发了轰动,成为自信息论提出以来最重大研究进展,Turbo码提出是信道编码史上一个关键里程碑。它优异性能引发了研究人员极大爱好,并相继在相关方面进行主动探索和研究.但因为几位发明者仅给出了一定参数下计算机仿真结果,而没有严格理论分析和解释,所以近些年来在编码界掀起了Turbo码研究热潮。
现在Turbo码研究关键分为设计和性能分析、理论研究和应用3个方面。Turbo码之所以含有优异性能,交织器和译码算法起到了很大作用,对于其应用研究也有很大进展。
§1.2 Turbo码研究现实状况
Turbo码含有极其宽广应用前景,是信道编码界一个突破,被称为二十一世纪纠错编码。从1995年开始,相关Turbo码文件大量出现,它已成为通信技术新热点,现在Turbo码研究关键集中在以下多个方面[4]:
(1) Turbo码理论分析
在介绍Turbo码首篇论文里,发明者Berrou仅给出了Turbo码基础组成和迭代译码原理,而没有严格理论解释和证实。所以,在研究Turbo码起步阶段,其理论研究就显得尤为关键。
(2) Turbo码设计
Turbo码由分量码经由交织器级联而成。所以,分量码和交织器设计得好坏就决定Turbo码性能关键原因。关键包含交织器设计、码级联方法、Turbo码性能分析等等。在性能分析中,关键对码重分布及距离谱进行分析。
(3) 软输出迭代译码算法
Turbo码编码过程实际上是一个利用强约束短码组成伪随机长码过程,经过在分量译码器之间交换外部信息来提升性能。其译码算法关键有两大类:一类是基于最大后验概率(MAP[5],Maximum A Posteriori)软输出算法。一类是基于Viterbi算法(VA[6], Viterbi Algorithm)软输出算法。考虑到Turbo码在未来高速数据传输中应用,寻求延时小和复杂性低软判决译码算法一直是Turbo码研究关键课题。
(4) Turbo码编码调制技术
利用Turbo码调制(Turbo Code Modulation)技术能够在不增加系统带宽要求条件下有效地提升编码增益。将Turbo码和TCM相结合来实现高增益高频谱效率地编码调制方案称为Turbo-TCM。在和调制编码技术相结合方面改善表现在:将栅格调制编码和Turbo码结合能够得到大编码增益和高带宽效率,如将Turbo码和OFDM调制、差分检测技术相结合,含有较高频率利用率,可有效地抑制短波信道中多径时延、频率选择性衰落、人为干扰和噪声等带来不利影响,而且还有较低译码复杂度。
(5) Turbo码原理及其应用
因为Turbo码含有靠近Shannon理论极限性能,尤其是低信噪比下优异性能使Turbo码在很多通信系统中全部有很大应用潜力。除了在深空通信、卫星通信和多媒体通信等领域应用以外,Turbo码在无线移动通信系统中应用是现在研究热点。Turbo码已经成为第三代移动通信系统标准之一[7-10],相关其关键技术标准化已经出现。另外,Turbo码在文本传输和数据存放等方面也有应用。
(6) Turbo译码器实现
南澳大利亚大学Small World通信研究组最先开始开发Turbo码编译码器并推出了Turbo码产品。A.Chass、D.Garrett和K.Koora等人也分别在不一样数字芯片上设计实现了MAX-Log-MAP算法和SOVA算法。在Turbo码编译码器设计过程中,最关键是考虑数据处理速度和功耗。为降低译码器功耗,一个措施是降低平均译码迭代次数,依据每一帧数据得迭代次数和信噪比值来动态分配电压,同时在许可延时范围内使译码速度放慢。现在,很多科研院所和大企业全部在进行Turbo码编/译码芯片开发,如新加坡OKI企业EMIK07, Altera企业Turbo码Ipcore等全部宣称开发出了对应产品,中国也有很多高校和研究机构在对Turbo码编译码器硬件实现进行研究[11-14]。但从公布技术指标上看,全部存在复杂度高、存放量大、译码延时长、功耗大等缺点。
§1.3 Turbo码研究展望
从1997年开始,Turbo码和相关专题国际会议每隔三年举行一次。而从以来,对于Turbo码研究越来越倾向于具体应用。Turbo码会议在德国慕尼黑和第六届信源信道编码会议一起举行,Tubro码会议关键议题有:纠错码、Tubro码 和LDPC码编码和Turbo编码调制 、检测和Turbo检测 、均衡 和Tubro均衡、同时和Turbo同时、多用户检测界限、性能和收敛性算法和组员码、交织和座标图、Fountani码和网络编码等。从中看到Turbo码以后发展方向,除了对编解码器和交织器新设计和改善之外,更多研究将会投入到Turbo码和其它技术联合应用中去。Turbo码作为信道编码将和所要保护传输信源本身特点相结合,会对Tubro码设计提出不一样要求。比如语音、音频、图象、视频和超文本数据对于传输信道延迟抖动和可靠性全部有着不一样要求,而视频编码技术中多种分层编码所产生不一样码流对传输要求也不尽相同。多种数据对安全性要求也不相同,所以Turbo码和信源联合编码及不平等保护等技术结合在实现上还有很多问题有待处理。即使Turbo码最早提出来时候是为了深空和卫星通信,但其价值远远超出了这个范围,所以Turbo码在多种不一样通信环境中性能一直是研究一个关键。纵观Turbo码发展现实状况和要求,本人认为需要深入研究课题有:
(1)最优分量码和交织器联合设计。
(2)低复杂性译码算法。
(3)译码迭代过程优化、收敛性和迭代停止准则设计。
(4)联合信道估量、多用户检测、均衡和译码算法。
(5)Turbo码和高阶调制技术结合。
(6)Turbo码编译器硬件实现。
(7)Turbo码在无线通信、移动通信和多媒体通信中应用,尤其是在移动网络、IMT-及加密系统中应用等。
§1.4 课题背景和本论文关键工作及贡献
§1.4.1 选题背景
本论文对所研究Turbo码编码/译码器,经过系统功效模块分割设计方法,将整个系统模块化、各模块分割,考虑到了其功效完整性和灵活性。整个系统分为:MAP译码器模块、交织器/解交织器模块和时序控制模块。利用Altera企业 Quartus II软件,灵活利用文本编辑器和图形编辑器,对APEX2OK系列器件进行编程[15],实现Turbo码编码器和译码器功效。系统仿真结果证实了该编译码器有良好性能,有相当实用价值。
§1.4.2 论文结构
本课题对Turbo码编译码器设计及其FPGA实现进行了研究,全文分为六章,除第一章概述外,其它各章安排以下:
第二章介绍了Turbo码基础知识。先介绍了编码器结构及其组员码、交织器,然后介绍了Turbo码译码器原理、分析了影响Turbo码性能多个原因及其优异性能物了解释,目标在于为后面Turbo码硬件设计提供对应理论基础。
第三章具体介绍了Turbo码译码算法,关键有MAP、Log-MAP、Max-Log-MAP 、SOVA等。并分别对它们进行了具体数学公式推导,比较了多种算法特点,综合译码性能和实现复杂度考虑,从而依据实际情况选择适合硬件实现算法。
第四章关键研究了Turbo码FPGA实现。本章首先介绍了FPGA技术相关知识,然后以前面分析结果基础上从硬件方面来实现Turbo码编译码器。其中包含对交织器硬件设计进行了具体介绍,对Turbo码编码器硬件设计进行了改善。在译码器设计中,采取了Log-MAP算法,对E函数、量化运算、Log-MAP译码器三个大模块:分支度量、前向状态矢量和后向状态矢量等各模块实现进行了具体介绍。对分块并行Turbo码算法硬件设计进行了初步研究。
第五章关键介绍了Turbo码硬件仿真过程及其结果分析。包含信源模型建立、信道模型建立,并依据仿真得到结果进行了分析。FPGA仿真关键是用数据来表示,本文还用MATLAB仿真证实了前面分析正确性。如仿真比较多个算法译码效果,仿真比较不一样交织器长度和量化长度时译码效果。
第六章总结了本论文研究工作,介绍已经做了哪些方面工作,还有哪些不足,并深入提出了论文中还有待于深入研究问题及方向。
第二章 Turbo码基础知识
1993年Turbo码编码方案提出,带来了一个迭代译码全新思想,使经过可译编码迫近信道容量成为可能。实践中显示,Turbo码含有抗衰落、抗干扰性能,尤其适合功率受限系统,只要时延和复杂度许可,可在多个恶劣条件下提供靠近极限通信能力。本章将具体介绍Turbo码基础原理、编译码结构、交织器作用和分类、及性能分析等,为后面设计提供了理论依据。
§2.1 Turbo码介绍
在现代通信系统中,为了确保多种数据在信道中可靠有效传输,往往需要利用纠错编码技术。尤其伴随无线数字通信发展和多种高速率、突发性强业务出现,对纠错码技术提出了越来越高要求[16]。Turbo码编译码器实现就是通信系统中信道编码到信道译码这一阶段内容,这也是最关键部分,它误码率对整个系统起决定性作用,Turbo码所要研究内容就是图2.1 所表示信道编译部分。
图2.1 数字通信系统模型信道部分
纠错码起源于香农1948年提出香农第二定理(也称信道编码定理)。依据香农信道容量公式[1],实现可靠通信所许可传输速率上限为信道容量。在信道带宽无限和功率受限条件下,高斯白噪声信道容量C表示为:
(2-1)
其中B表示带宽,表示信道输入带限信号平均功率。假如传输速率为,则有:
(2-2)
经简单变换得:
(2-3)
这就能够得到信道编码定理:每个信道含有确定信道容量C,对于小于C码率R,存在有速率为R码长为n分组码及卷积码,若用最大似然译码,则伴随码长增加,其译码错误概率P能够任意小,即:
和 (2-4)
其中和是大于0系数,和为正实函数,称为可靠性函数。上式表明在带宽无限信道中,对于任何小于C传输速率,可在码率不变前提下经过增加分组码长度n,使差错率为任意小,当极限情况n趋于无穷,就能够实现高斯白噪声下无误传输,称为香农限。即当传输速率达成信道容量时,可靠通信所需最小比特信噪比即香农限为-1.6dB。香农限成为设计信道编码时试图迫近信噪比下限,为实现有效可靠通信奠定了理论基础。
1993年,法国学者C.Berrou等人提出了一个称为Turbo码新型编码方案,因为它很好应用了Shannon信道编码定理中随机性编、译码条件,从而取得了几乎靠近Shannon理论极限译码性能,从而引发极大轰动,也使得Turbo码研究成为多年纠错码研究一个热点。传统Turbo码是一类并行级联系统卷积码,它由两个经交织器连接子编码器生成。Turbo码译码采取了软输入和软输出译码算法和迭代译码方法,使子译码器间能够相互传输信息,确保编码信息充足利用。两个子译码器输出序列越不相关,在译码端交换互信息量就越大。依据C.Berrou等人仿真结果,二元Turbo码在速率R=1/2和码长较长(256×256)条件下,经18次迭代得到了离理论极限约0.7dB误码率性能。
§2.2 Turbo码编码器原理
§2.2.1 Turbo码编码结构
经典Turbo码编码图2.2所表示。关键由分量编码器、交织器和删余矩阵和复接器组成。两个分量编码器由码率为R=1/2RSC(递归系统卷积码)组成,其结构通常是相同,且输入相同长度为N信息序列,在送入第一个分量编码器进行编码同时作为系统输出直接送到复接器,同时输入序列经过交织器交织后交织序列送入第二个分量编码器。其中,为交织映射函数,N为交织长度,即信息序列长度。两个分量编码器输入序列仅仅是码元输入次序不一样。两个分量码编码器输出校验序列分别为和。为提升码率和系统频谱效率,能够将两个校验序列经过删余矩阵删余后(得到)再和系统信息一起经过复接器组成编码序列。
图2.2 经典Turbo码编码器
由线性分组码特征知道,码字最小距离是估量码字性能首要参数。对线性分组码而言,码字最小距离就是码字集合中汉明重量最小非零码字汉明重量。交织器和分量码结合能够确保Turbo码编码输出码字含有较高汉明重量。在Turbo码编码器中交织器作用是将信息序列中比特次序重置。当信息序列经过第一个分量码编码器后输出码字重量较低时,交织器能够使交织后信息序列经过第二个分量编码器后以很大约率输出高重码字,从而提升码字汉明重量,同时好交织器还能够有效降低校验序列间相关性。经过交织,编码序列在长为2N或3N(不经过删余)比特范围内含有没有记忆性,从而由简单短码结组成近似随机长码。所以,交织器设计好坏在很大程度上影响着Turbo码性能。常见交织方法有均匀交织、非均匀交织、伪随机交织等,理论上,随机交织效果最好。
对于数字通信领域日益担心带宽资源,提升码率就意味着节省带宽和降低通信费用。删余矩阵是现在提升Turbo码码率关键方法,它能够经过删除压缩合并各组员编码器地输出校验序列来调整Turbo码编码器编码速率。比如本文删余后得到是码速为1/2Turbo码,若校验码不删余,则得到是码速为1/3Turbo码。理论上经过改变删余矩阵能够得到任意码速Turbo码。删余单元作用是调整编码效率,为了提升码率。实际中,通常使信息序列全部传送,而校验序列给合适删除。在接收端应对接收序列进行内插,未被传送比特位用0填充,以确保序列完整性。不过,当码率过高时,每个信息码元对应校验码元数量降低,将造成译码端纠错性能降低。而码率过低,又使得码元传输效率过低,所以在调整编码率时需做多方考虑,在编码效率和纠错性能间做折衷考虑。
复用单元完成编码并/串转换,使输出适合信道传输。复用后输出序列为。依据删余方法,取值或。
若输入信息序列为
则编码器使用图2.2所表示递归系统卷积分量码编码后系统输出和校验输出分别为
和
若假设经过交织器交织后输入信息序列为
则下面递归系统卷积分量码编码后校验输出为
在未删余时得到码率为1/3输出码字
采取删余矩阵删余后得到码率为1/2输出码字为
§2.2.2 RSC分量编码器
线性分组码是一个常见纠错编码,包含循环码、BCH码等。它们共同特点是:一个码字监督码元仅和本码组信息码元相关,而和其它码组码元无关。本节介绍卷积码是另一类编码,它和分组码区分在于:本组码元不仅和目前输入信息码元相关,而且还和以前v时刻输入信息相关。卷积码纠错能力伴随m(m=)增加而增大,而差错率伴随v增加而指数下降。在编码效率和设备复杂度相同前提下,卷积码性能优于分组码,最少不低于分组码。卷积码有三个关键特征:
1.存放长度v, v值和卷积编码器中延迟单元个数相对应。
2.约束长度N=v+l。
3.编码效率。编码效率定义为信息码元个数和经过编码后总码元个数比值。
传统卷积码编码器不包含反馈,所以能够等效为一个有限冲激响应(FIR)滤波器,而递归系统卷积码RSC(Recursive Systematic Convolutional Encoder)是一个特殊卷积码[17-18],因为存在反馈,所以能够等效为一个无限冲击响应(IIR)滤波器。本文使用分量编码器图2.3所表示,其生成多项式为(7,5)递归系统卷积码编码器,编码速率为1/2。其输出码元不仅和目前时刻信息元相关,而且还和前v (本文使用v=2)个时刻信息元相关。所以,在编码过程中,每N个(N=v+1=3)相邻子码之间有约束关系。
图2.3 (7, 5)递归系统卷积码编码框图
从图能够知道输入编码关系
(2-5)
(2-6)
(2-7)
即延时因子为
(2-8)
(2-9)
由此得到生产多项式 g1=, g2=.
卷积码能够用多个方法表示,通常有矩阵法、码树法、状态图法和栅格图法等,可依据译码方法不一样而采取不一样表示方法。在Turbo码中,用状态图和栅格图来描述译码过程较为方便。由图2.3递归系统卷积码编码框图能够看出,递归系统卷积码编码器是一个有限状态机,所以能够分别用图2.4和图2.5表示它状态转换图和栅格图。图2.4所给出递归系统卷积编码器对应状态转移图,其中椭圆内是编码器所处状态,箭头起点是初始状态,终点是输入数据后状态,射线上斜杠左边1位是编码器输入数据,右边2位是编码器输出数据。因为图2.4中编码器有两个存放器,(即v=2)所以编码器共有4()个状态,即S0=00,S1=10,S2=01,S3=11。比如,若编码器初始状态为S0,当输入信息为1时,编码器状态就从S0转移到状态S1,,并输出码元C为11。若输入信息为0时,则编码器停留在S0状态,输出码元C为00。这么不停输入信息,编码器状态不停转移,并对应输出一个子码,它们就组成了编码器输出码序列。而图2.5给出了
图2.4 递归系统卷积编码器所对应状态转移图
这个递归系统卷积码栅格图结构,图中虚线表示输入信息为0状态转移,实线表示输入信息为1状态转移。这个栅格图中每一个分支给出三种信息:分支状态(目前状态和下一状态),编码器输入信息比特和输出校验比特。图中实线表示输入信息比特为1,虚线表示输入信息比特为0。比如,对于图中第一条实线,可知在这个分支上输入信息比特为1,编码器状态从S000变到S110,而且编码器输出为11 (=l,=1)。对于图中第一条实线,可知在这个分支上输入信息比特为0,编码器状态从S000回到本身,而且输出编码00。一共有四个状态S0-S3,它们之间相互转换,其它细节就不多介绍了,从图中能够看出。
对于传统卷积码来说,经过在数据帧末尾嵌入v个零比特就能够迫使编码器格图回到全零状态。不过对于递归系统卷积码来说,因为它含有没有限冲激响应特征,所以仅靠嵌入v个零比特通常无法使递归系统卷积编码格图回到全零状态,此时能够经过解状态变量方程得到所需尾比特。比如在图2.3中结构,依据式(2-6)知道,当需要使编码器状态回到零,就是令d1等于零,得到:
(2-10)
这就是使编码器回到零状态所需尾比特。
图2.5 v=2RSC编码器栅格图
§2.3 交织器
经过研究发觉,Turbo码之所以不一样于以往其它编码,表现出了极佳性能,其中一个关键原因就是采取了交织器。交织器关键作用就是将原始数据序列打乱,使得交织前后数据序列相关性减弱,这么做很突出一个优点便是大大降低了数据突发错误影响。在现代高效编码调制技术中,不管是级联编码还是Turbo编码中全部要使用交织器。
以前面描述知道,交织器关键作用是减小突发差错影响和改善信息序列码重特征。通常Turbo码自由距全部不是很大,不过因为交织器作用,使得Turbo码和卷积码相比,其重量近似码字数目要小多,从而使得在一定条件下Turbo码译码差错概率比卷积码差错概率低。交织器是Turbo码关键特征,在Turbo码帧长、码率和约束长度一定情况下,交织器结构决定了Turbo码译码性能,这是因为交织器结构影响着Turbo码重量分布。所以怎样选择交织器也成为Turbo码系统设计关键课题。下面给出了在Turbo码中交织器设计应该遵照设计准则[19]:
(1)最大程度地置乱原数据排列次序,避免置换前相距较近数据在置换以后仍相距较近,尤其要避免置换前相邻数据在置换后再次相邻。
(2)尽可能避免和同一信息位直接相关两个分量编码器中校验位均被删除。
(3)对于不归零编码器,交织器设计时要避免出现“尾效应”图案。
(4)在满足上述要求交织器中选择一个很好交织器,使码字之间最小距离(或
自由距离)尽可能大,而使码重为码字数要尽可能少,以改善Turbo码
在高信噪比时性能。L.C.Perez等人研究表明Turbo码渐近性能靠近渐进
线,在高信噪比时出现错误平台是小引发[20]。
Turbo码交织器有很多个,如分组交织器、螺旋交织器、奇偶交织器、随机交织器、S-交织器、循环移位交织器、均匀交织器、“smile”交织器、最优周期交织器等等。这里我们介绍多个经典交织器。
1、 行列交织器
行列交织器,即分组交织器,该交织器是将信息序列视为矩阵。通常采取以按行写按列读方法实现码元交织,交织后码元距离特征均匀分布,即交织前信息按行写入,不过交织器矩阵交织后信息位按列读出,从而实现行列置换。其特点是交织方法很简单,同时依据后面仿真结果能够看出,它对短序列译码效果很好,但交织后码元去相关不根本。而解交织列次序写入,行次序读出。表2.1和表2.2表示交织器交织和解交织存放器实现过程。分块交织器交织函数为:
(2-11)
表2.1行列交织器交织过程 表2.2行列交织器解交织过程
在纠错编码中,交织矩阵行数叫做交织深度,交织矩阵列数叫做交织跨度。分块交织特点是方法简单、对短序列交织效果很好,但交织后对信息比特去相关不根本。
2、 伪随机交织器和S随机交织器
在随机交织器里,一个N比特信息序列被输入交织器里,然后被随机读出。理论上,信息序列之间交织方法是改变,方便愈加好地反应随机性。但在实际应用中,接收端必需能够确定每一帧码字序列交织方法,就增加了传输负担,所以完全随机化交织并不是最好方法,通常使用是伪随机交织器[21-22]。
伪随机交织器通常在输入信息序列较长时能够采取近似随机交织映射方法,每个长度为N伪随机交织器共有N!种可能交织形式。不过对应于N!种可能交织形式,交织后有些元素之间距离很小,这么会造成对一些错误序列相关行离散度不够。所以利用下面S-随机交织器能够部分处理这个问题。
通常,随机交织器是以某种方法产生一组随机数,决定信息序列在交织器中排列方法,信息序列之间交织方法是相同。随机数能够这么来产生:首先在从1到N之间等概率地随机选择一个整数,作为信息序列中第一个比特在交织后位置,然后从剩下N-1个整数中等概率地随机选择一个整数,作为信息序列中第二个比特在交织后位置,依这类推,直到N个信息比特全部进行完。
为了避免交织前相距较近数据在交织后仍相距较近,能够把上述交织方法修改为S随机交织,就是把上述随机交织器加了一个约束。为了深入减小交织器相关行离散度,设计在伪随机交织过程中相邻S个比特经过交织后它们之间距离最少为S,从而组成了S-随机交织器。每一个随机产生整数要和先前个选择整数比较,假如目前产生随机整数和先前个选择整数之差绝对值小于话,目前产生随机整数就被抛弃,重新选择,即:
(2-12)
考虑到算法搜索实际,通常选择.
S-随机交织器是一个公认性能良好交织器。因为它能够将错误序列中相邻比特在交织后扩散,距离最少为S,从而使错误转化为随机错误,有利于卷积码纠错。信息序列越长,随机数产生越均匀,交织前后序列相关性越小。伴随S值增加,Turbo码性能不停提升。但S值越大,条件越难满足,交织器设计就越困难。通常比很好S-随机交
展开阅读全文