MATLAB实现卷积码编译码[52页]_第1页
MATLAB实现卷积码编译码[52页]_第2页
MATLAB实现卷积码编译码[52页]_第3页
MATLAB实现卷积码编译码[52页]_第4页
MATLAB实现卷积码编译码[52页]_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 本科生毕业论文(设计)本科生毕业论文(设计) 题题 目目:MATLABMATLAB 实现卷积码编译码实现卷积码编译码 专业代码:专业代码: 作者姓名:作者姓名: 学学 号:号: 单单 位:位: 指导教师:指导教师: 年年 月月 日日 聊城大学本科毕业论文(设计) 1 目目 录录 前言前言-1 1 1.1. 纠错码基本理论纠错码基本理论-2 2 1.1 纠错码基本理论 -2 1.1.1 纠错码概念 -2 1.1.2 基本原理和性能参数 -2 1.2 几种常用的纠错码 -6 2.2. 卷积码的基本理论卷积码的基本理论-8 8 2.1 卷积码介绍 -8 2.1.1 卷积码的差错控制原理 -8 2.

2、2 卷积码编码原理 -10 2.2.1 卷积码解析表示法 -10 2.2.2 卷积码图形表示法 -11 2.3 卷积码译码原理 -15 2.3.1 卷积码三种译码方式 -15 2.3.2 VITERBI译码原理-16 3.3. 卷积码编译码及卷积码编译码及 MATLABMATLAB 仿真仿真-1818 3.1 MATLAB概述-18 3.1.1 MATLAB的特点-19 3.1.2 MATLAB工具箱和内容-19 3.2 卷积码编码及仿真 -20 3.2.1 编码程序 -20 3.3 信道传输过程仿真 -21 3.4 维特比译码程序及仿真 -22 3.4.1 维特比译码算法解析 -23 3.4

3、.2 VITERBI译码程序 -25 3.4.3 VITERBI译码MATLAB仿真 -28 3.4.4 信噪比对卷积码译码性能的影响 -28 聊城大学本科毕业论文(设计) 2 3.4.5 码率对卷积码译码性能的影响 -30 3.4.6 约束长度对卷积码误码性能的影响 -31 3.4.7 回溯长度对卷积码误码性能的影响 -32 3.4.8 判决方式对卷积码误码性能的影响 -32 4.4. 结论及展望结论及展望-3434 4.1 结论 -34 4.2 展望 -35 5.5. 结束语结束语-3636 参考文献参考文献-3737 致谢致谢-3838 附附录录-3939 聊城大学本科毕业论文(设计)

4、3 摘要摘要 在数字通信系统中,通常采用差错控制编码来提高系统的可靠性。自 PElias 首次提出卷积码编码以来,这一编码技术至今仍显示出强大的生命力。 目前,卷积码已广泛应用在无线通信标准中,如 GSM,CDMA2000 和 IS-95 等无线 通信标准中。 本文简单介绍了纠错码的基本原理,论述了卷积码编译码原理和算法,并通 过 matlab 仿真对卷积码性能进行研究,重点比较分析了不同码率、不同约束长 度、不同回溯长度以及不同译码判决方式对 Viterbi 译码性能的影响,并得出相 关结论。 关键词关键词:卷积码,Viterbi,Matlab,误码率,数字通信系统 聊城大学本科毕业论文(设

5、计) 4 Abstract In digital communication systems, error control coding is usually used to improve system reliability. Since P.Elias put forward the convolutional coding the first time, the coding is still showing strong vitality.,has become widely used in satellite communications, wireless communicati

6、ons and many other communication systemsas a kind of channel coding method. such as GSM, CDMA2000 and has been a wireless communication standards of IS-95. This article introduces the basic principles of error-correcting codes, mainly reasearch the principle of the convolutional code encoding and de

7、coding and the algorithms.Through the matlab simulation, we study the performance of convolutional code, especilly the performance of the viterbi decoding with different bit rates, different Constraint length ,different traceback depthe and different decision types,compare and make conclusions. Keyw

8、ords: convolutional codes, Viterbi, Matlab, bit error rate, the digital communication system MATLABMATLAB 实现卷积码编译码实现卷积码编译码 前言前言 信道编码是数字通信系统的重要组成部分,随着通信技术的不断发展,信道 编码技术也在不断地发展。在通信系统中,信道传输特性不理想以及噪声的存在, 会导致接收端出现接收信号的错误,因此用于信道纠错的信道编码是数字通信系 统中极为重要的一个环节。二十世纪 40 年代香农定理的出现为人们指出了纠错 码的研究方向。根据香农的有噪信道编码定理,可以推导出一

9、个码率为 R 的编 码通信系统达到无误码传输状态所必须的最小信噪比的理论极限。这个理论极限 通常称为香农限,它说明对一个码率为 R 的编码通信系统,只有当 SNR 超过这个 极限值时才能获得无误码传输。只要 SNR 高于这个极限值,香农的编码定理保证 了能够获得无误码传输的(可能相当复杂)编码通信系统的存在性。另外,香农 证明了在采用无限长的随机编码时,数据可以以接近信道容量的速率几乎无误码 的传输,从而为信道编码的研究奠定了基础。 本文主要介绍了信道编码的基本理论,着重研究了卷积码的编码方法和 viterbi 译码,介绍了 MATLAB 的使用方法,并编写卷积码的编码和解码程序, 通过 MA

10、TLAB 仿真软件对卷积码编解码进行仿真。重点对 viterbi 译码进行了研 究,该算法就是利用卷积码编码器的格图来计算路径度量,选择从起始时刻到终 止时刻的惟一幸存路径作为最大似然路径,沿着最大似然路径回溯到开始时刻, 所走过的路径对应的编码输出就是最大似然译码输出序列。它是一种最大似然译 码方法,当编码约束长度不大、或者误码率要求不是很高的情况下,Viterbi 译 码器设备比较简单,计算速度快,因而 Viterbi 译码器被广泛应用于各种领域。 聊城大学本科毕业论文(设计) 1 1.1. 纠错码基本理论纠错码基本理论 1.11.1 纠错码基本理论纠错码基本理论 1.1.1 纠错码概念

11、纠错码(error correcting code),在传输过程中发生错误后能在收端自行 发现或纠正的码。仅用来发现错误的码一般常称为检错码。为使一种码具有检错 或纠错能力,须对原码字增加多余的码元,以扩大码字之间的差别 ,即把原码 字按某种规则变成有一定剩余度(见信源编码)的码字,并使每个码字的码之间 有一定的关系。关系的建立称为编码。码字到达收端后,可以根据编码规则是否 满足以判定有无错误。当不能满足时,按一定规则确定错误所在位置并予以纠正。 纠错并恢复原码字的过程称为译码。检错码与其他手段结合使用,可以纠错。 1.1.2 基本原理和性能参数 纠错码编码的基本思想是在被传输的信息码元中附加

12、一些监督码元,并且使 它们之间确定某一种关系,根据传输过程中这种关系是否被破坏来发现或纠正错 误。可见这种差错控制能力是用增加信息量的冗余度来换取的。 设编码后的码组长度、码组中所含信息码元以及监督码元的个数分别为n、k 和r,三者间满足n= k + r,定义编码效率为R = k/n = 1 - r/n。可见码组长度 一定时,所加入的监督码元个数越多,编码效率越低。香农的信道编码定理指出: 对于一个给定的有扰信道,若信道容量为C,只要发送端以低于C的速率R发 送信息,其中R为编码器的输入二进制码元速率,则一定存在一种编码方法,使 编码错误概率P随着码长n的增加,按指数下降到任意小的值。可以表示

13、为 (1-1) )(rnE eP 其中 E(R)称为误差指数,它与R和C的关系如图1-1所示。 聊城大学本科毕业论文(设计) 2 图图 1-1 误差指数曲线误差指数曲线 由定理有如下结论: (1). 在码长及发送信息速率一定的情况下,为减小P可以增大信道容量。由 图2-1可知,E(R)随信道容量的增加而增大。由式(1-1)可知,错误概率随E(R)的 增大而指数下降。 (2). 在信道容量及发送信息速率一定的条件下,增加码长,可以使错误概 率指数下降。对于实际应用来说,此时的设备复杂性和译码延时也随之增加。 香农的信道编码定理为信道编码奠定了理论基础,虽然定理本身并没有给出 具体的差错控制编码方

14、法和纠错码的结构,但它从理论上为信道编码的发展指出 了努力方向。 我们用3位二进制码组来说明检错纠错的基本原理。3位二进制码元共有8种 可能的组合:000、001、010、011、100、101、110、111。如果这8种码组都可传 递消息,若在传输过程中发生一个误码,则一种码组会错误地变成另一种码组。 由于每一种码组都可能出现,没有多余的信息量,因此接收端不可能发现错误, 认为发送的就是另一种码组。 如果选其中000、011、101、110 来传送消息,这相当于只传递 00、01、10、11四种信息,而第3位是附加的。这位附加的监督码元与前面两位 码元一起,保证码组中“1”码的个数为偶数。这

15、4种码组称为许用码组。另外 4 种码组不满足这种校验关系,称为禁用码组,它们在编码后的发送码元中不会出 现。接收时一旦发现有禁用码组,就表明传输过程中发生了错误。用这种简单的 校验关系可以发现1个或3个错误,但不能纠正错误。因为当接收到的码组为禁用 聊城大学本科毕业论文(设计) 3 码组时,比如为010,无法判断发送的是哪个码组。虽然原发送码组为101的可能 性很小(因为3个误码的概率一般很小),但不能绝对排除,即使传输过程中只发 生一个误码,也有三种可能的发送码组即000、011和110。 假如我们进一步将许用码组限制为二种即000和111,显然这样可以发现所有 2位以下的误码,若用来纠错,

16、可以用最大似然准则纠正1位错误。可以用一个三 维立方体来表示上述3位二进制码组的例子,如图1-2所示。图中立方体各顶点分 别表示8位码组,3位码元依次表示x、y、z轴的坐标。 z y x (0,0,1) (0,1,1) (0,0,0) (1,1,1) (0,1,0) (1,1,0) (1,0,0) (1,0,1) 图图 1-21-2 码距的几何解释码距的几何解释 这里定义码组中非零码元的数目为码组的重量,简称码重。比如100码组的 码重为1,101码组的码重为2。定义两个码组中对应码位上具有不同二进制码元 的位数为两码组的距离,称为汉明(Hamming)距,简称码距。在前面3位二进制码 组的例

17、子中,当8种码组均为许用码组时,两码组间的最小距离为1,称这种编码 的最小码距为1,一般记为dmin= l;当选4种码组为许用码组时,最小码距dmin = 2;当用2种码组作为许用码组时,dmin = 3。 从图1-2所示的立方体可以看出,码距就是从一个顶点沿立方体各边移到另 一个顶点所经过的最少边数。图中粗线表示000与111之间的一条最短路径。很容 易得出前例中各种情况下的码距。 根据以上分析可知,编码的最小码距直接关系到这种码的检错和纠错能力, 所以最小码距是差错控制编码的一个重要参数。对于分组码一般有以下结论: (1)在一个码组内检测e个误码,要求最小码距 聊城大学本科毕业论文(设计)

18、 4 (1-2)1 min ed (2)在一个码组内纠正t个误码,要求最小码距 (1-3)12 min td (3)在一个码组内纠正t个误码,同时检测e(e t)个误码,要求最小码距 (1-4)1 min etd 这些结论可以用图1-3所示的几何图形简单的给予证明。 图图 1-31-3 码距与检错和纠错能力的关系码距与检错和纠错能力的关系 图1-3(a)中C表示某码组,当误码不超过e个时,该码组的位置移动将不超出 以它为圆心以e为半径的圆。只要其它任何许用码组都不落入此圆内,则C发生e 个误码时就不可能与其它许用码组混淆。这意味着其它许用码组必须位于以C为 圆心,以e + 1为半径的圆上或圆外

19、。因此该码的最小码距dmin为e + 1。 图1-3(b)中C1、C2分别表示任意两个许用码组,当各自误码不超过 t个时, 发生误码后两码组的位置移动将各自不超出以C1、C2为圆心,t为半径的圆。只要 这两个圆不相交,当误码小于t个时,根据它们落在哪个圆内可以正确地判断为 C1或C2,就是说可以纠正错误。以C1、C2为圆心的两圆不相交的最近圆心距离为 2t + l,即为纠正t个误码的最小码距。 式(1-1)所述情形中纠正t个误码同时检测e个误码,是指当误码不超过t个时, 能自动纠正误码,而当误码超过t个时,则不可能纠正错误但仍可检测e个误码。 聊城大学本科毕业论文(设计) 5 图1-3(c)中

20、C1、C2分别为两个许用码组,在最坏情况下C1发生e个误码而C2发生 t 个误码,为了保证此时两码组仍不发生混淆,则要求以C1为圆心e为半径的圆必 须与以C2为圆心t为半径的圆不发生交叠,即要求最小码距 dmin =t+e+1。 可见dmin体现了码组的纠、检错能力。码组间最小距离越大,说明码字间最 小差别越大,抗干扰能力就越强。由于编码系统具有纠错能力,因此在达到同样 误码率要求时,编码系统会使所要求的输入信噪比低于非编码系统,为此引入了 编码增益的概念。其定义为,在给定误码率下,非编码系统与编码系统之间所需 信噪比Eb/N0之差(用dB表示)。 采用不同的编码会得到不同的编码增益,但编码

21、增益的提高要以增加系统带宽或复杂度来换取。(2.1.3)纠错码实现纠错码实现 中最复杂的部分是译码。它是纠错码能否应用的关键。根据式(1),采用的码长n 越大,则误码率越小。但n越大,编译码设备也越复杂,且延迟也越大。人们希望 找到的译码方法是:误码率随码长n的增加按指数规律下降;译码的复杂程度随码 长n的增加接近线性地增加;译码的计算量则与码长 n基本无关。可惜,已经找 到的码能满足这样要求的很少。不过由于大规模集成电路的发展,既使应用比较 复杂的但性能良好的码,成本也并不太高。因此,纠错码的应用越来越广泛。 纠错码传输的都是数字信号。这既可用硬件实现,也可用软件实现。前者主 要用各种数字电

22、路,主要是采用大规模集成电路。软件实现特别适合计算机通信 网等场合。因为这时可以直接利用网中的计算机进行编码和译码,不需要另加专 用设备。硬件实现的速度较高,比软件可快几个数量级。 在传信率一定的情况下,如果采用纠错码提高可靠性,要求信道的传输率增 加,带宽加大。因此,纠错码主要用于功率受限制而带宽较大的信道,如卫星、 散射等系统中。纠错码还用在一些可靠性要求较高,但设备或器件的可靠性较差, 而余量较大的场合,如磁带、磁盘和半导体存储器等。 在分组码的研究中,谱分析的方法受到人们的重视。纠同步错误码、算术码、 不对称码、不等错误纠正码等,也得到较多的研究. 1.21.2 几种常用的纠错码几种常

23、用的纠错码 (1) RS 编码 RS 码即里德-所罗门码,它是能够纠正多个错误的纠错码,RS 码为 (204,188,t=8),其中 t 是可抗长度字节数,对应的 188 符号,监督段为 16 字节(开销字节段)。实际中实施(255,239,t=8)的 RS 编码,即在 204 字节 聊城大学本科毕业论文(设计) 6 (包括同步字节)前添加 51 个全“0”字节,产生 RS 码后丢弃前面 51 个空字节, 形成截短的(204,188)RS 码。RS 的编码效率是:188/204。 (2)卷积码 卷积码非常适用于纠正随机错误,但是,解码算法本身的特性却是:如果在 解码过程中发生错误,解码器可能会

24、导致突发性错误。为此在卷积码的上部采用 RS 码块, RS 码适用于检测和校正那些由解码器产生的突发性错误。所以卷积码 和 RS 码结合在一起可以起到相互补偿的作用。卷积码分为两种: 基本卷积码: 基本卷积码编码效率为,1/2, 编码效率较低,优点是纠错能力强。 收缩卷积码: 如果传输信道质量较好,为提高编码效率,可以采样收缩截短卷积码。有编 码效率为:1/2、2/3、3/4、5/6、7/8 这几种编码效率的收缩卷积码。编码 效率高,一定带宽内可传输的有效比特率增大,但纠错能力越减弱。 (3)Turbo 码 1993 年诞生的 Turbo 码,单片 Turbo 码的编码/解码器,运行速率达 4

25、0Mb/s。该芯片集成了一个 3232 交织器,其性能和传统的 RS 外码和卷积内 码的级联一样好。所以 Turbo 码是一种先进的信道编码技术,由于其不需要进行 两次编码,所以其编码效率比传统的 RS+卷积码要好。 (4)交织 在实际应用中,比特差错经常成串发生,这是由于持续时间较长的衰落谷点 会影响到几个连续的比特,而信道编码仅在检测和校正单个差错和不太长的差错 串时才最有效(如 RS 只能纠正 8 个字节的错误)。为了纠正这些成串发生的比 特差错及一些突发错误,可以运用交织技术来分散这些误差,使长串的比特差错 变成短串差错,从而可以用前向码对其纠错,例如:在 DVB-C 系统中, RS(

26、204,188)的纠错能力是 8 个字节,交织深度为 12,那么纠可抗长度为 81296 个字节的突发错误。实现交织和解交织一般使用卷积方式。 交织技术对已编码的信号按一定规则重新排列,解交织后突发性错误在时间 上被分散,使其类似于独立发生的随机错误,从而前向纠错编码可以有效的进行 纠错,前向纠错码加交积的作用可以理解为扩展了前向纠错的可抗长度字节。纠 错能力强的编码一般要求的交织深度相对较低。纠错能力弱的则要求更深的交织 聊城大学本科毕业论文(设计) 7 深度。 一般来说,对数据进行传输时,在发端先对数据进行 FEC 编码,然后再进行 交积处理。在收端次序和发端相反,先做去交积处理完成误差分

27、散,再 FEC 解码 实现数据纠错。交积不会增加信道的数据码元。 (5)伪随机序列扰码 进行基带信号传输的缺点是其频谱会因数据出现连“1”和连“0”而包含大 的低频成分,不适应信道的传输特性,也不利于从中提取出时钟信息。解决办法 之一是采用扰码技术,使信号受到随机化处理,变为伪随机序列,又称为“数据 随机化”和“能量扩散”处理。扰码不但能改善位定时的恢复质量,还可以使信 号频谱平滑,使帧同步和自适应同步和自适应时域均衡等系统的性能得到改善。 扰码虽然“扰乱”了原有数据的本来规律,但因为是人为的“扰乱”,在接 收端很容易去加扰,恢复成原数据流。 实现加扰和解码,需要产生伪随机二进制序列(PRBS

28、)再与输入数据逐个比 特作运算。PRBS 也称为 m 序列,这种 m 序列与 TS 的数据码流进行模 2 加运算后, 数据流中的“1”和“0”的连续游程都很短,且出现的概率基本相同。 利用伪随机序列进行扰码也是实现数字信号高保密性传输的重要手段之一。 一般将信源产生的二进制数字信息和一个周期很长的伪随即序列模 2 相加,就可 将原信息变成不可理解的另一序列。这种信号在信道中传输自然具有高度保密性。 在接收端将接收信号再加上(模 2 和)同样的伪随机序列,就恢复为原来发送的 信息。 2.2. 卷积码的基本理论卷积码的基本理论 2.12.1 卷积码卷积码介绍介绍 卷积码最早于 1955 年由 El

29、ias 提出,稍后,1957 年 Wozencraft 提出了一 种有效地译码方法即序列译码。1963 年 Massey 提出了一种性能稍差但是比较实 用的门限译码方法,使得卷积码开始走向实用化。而后 1967 年 Viterbi 提出了 最大似然译码算法,它对存储级数较小的卷积码很容易实现,被称作 Viterbi 译 码算法,广泛的应用于现代通信中。 2.1.1 卷积码的差错控制原理 聊城大学本科毕业论文(设计) 8 卷积码是一种性能优越的信道编码,它的编码器和解码器都比较易于实现, 同时还具有较强的纠错能力,这使得它的使用越来越广泛。我们在一些资料上可 以找到关于分组码的一些介绍,分组码的

30、实现是将编码信息分组单独进行编码, 因此无论是在编码还是译码的过程中不同码组之间的码元无关。卷积码和分组码 的根本区别在于,它不是把信息序列分组后再进行单独编码,而是由连续输入的 信息序列得到连续输出的已编码序列。即进行分组编码时,其本组中的 n-k 个校 验元仅与本组的 k 个信息元有关,而与其它各组信息无关;但在卷积码中,其编 码器将 k 个信息码元编为 n 个码元时,这 n 个码元不仅与当前段的 k 个信息有关, 而且与前面的(N1)段信息有关(N 为编码的约束长度) 。 同样,在卷积码译码过程中,不仅从此时刻收到的码组中提取译码信息,而 且还要利用以前或以后各时刻收到的码组中提取有关信

31、息。而且卷积码的纠错能 力随约束长度的增加而增强,差错率则随着约束长度增加而呈指数下降 。卷积 码(n,k,N) 主要用来纠随机错误,它的码元与前后码元有一定的约束关系,编码 复杂度可用编码约束长度 N*n 来表示。一般地,最小距离 d 表明了卷积码在连续 N 段以内的距离特性,该码可以在 N 个连续码流内纠正(d-1)/2 个错误。卷积码 的纠错能力不仅与约束长度有关,还与采用的译码方式有关。总之,由于 n,k 较小,且利用了各组之间的相关性,在同样的码率和设备的复杂性条件下,无论 理论上还是实践上都证明:卷积码的性能至少不比分组码差。 以二元码为例,输入信息序列为 u(u0,u1,),其多

32、项式表示为 u(x) u0+u1xulxl。编码器的连接可用多项式表示为 g(1,1)(x)1+x+x2 和 g(1,2)(x)1+x2,称为码的子生成多项式。它们的系数矢量 g(1,1)=(111) 和 g(1,2)=(101)称作码的子生成元。以子生成多项式为阵元构成的多项式矩阵 G(x)g(1,1)(x),g(1,2)(x),称为码的生成多项式矩阵。由生成元构成的半 无限矩阵 称为码的生成矩阵。其中(11,10,11)是由 g(1,1)和 g(1,2)交叉连接构 成。编码器输出序列为 cuG,称为码序列,其多项式表示为 c(x),它可看作 是两个子码序列 c(1)(x)和 c(2)(x)

33、经过合路开关 S 合成的,其中 c(1)(x)u(x) g(1,1)(x)和 c(2)(x)u(x)g(1,2)(x),它们分别是信息序列和相应子生成元的 卷积,卷积码由此得名。 在一般情况下,输入信息序列经过一个时分开关被分成 k0 个子序列,分别以 u(x)表示,其中 i=1,2,k0,即 u(x)u(x),u(x)。编码器的结构由 聊城大学本科毕业论文(设计) 9 k0n0 阶生成多项式矩阵给定。输出码序列由 n0 个子序列组成,即 c(x)c(x), c(x),c(x),且 c(x)=u(x)G(x)。若 m 是所有子生成多项式 g(x)中最高 次式的次数,称这种码为(n0,k0,N)

34、卷积码。卷积码中编码后的 n 个码元不仅 与当前段的 k 个信息有关,而且也与前面(N-1)段的信息有关,编码过程中相 互关联的码元为 nN 个。因此,这 N 时间内的码元数目 nN 通常被称为这种码的约 束长度。卷积码的纠错能力随着 N 的增加而增大,在编码器复杂程度相同的情况 下,卷段积码的性能优于分组码。 卷积码也是分组的, 但它的监督元不仅与本组的信息元有关, 而且还与前若 干组的信息元有关。卷积码根据需要, 有不同的结构及相应的纠错能力,但都有 类似的编码规律。值得指出的是一种(2,1,N)卷积码, 其码率为 1 /2, 它的监督 位只有 1 位, 编码效率较高, 也比较简单。如使用

35、较长的约束长度, 则既可以纠 正突发差错, 也可以纠正随机差错。 2.22.2 卷积码编码原理卷积码编码原理 卷积码一般表示为(n,k,N)的形式,即将 k 个信息比特编码为 n 个比特的码 组,N 为编码约束长度,说明编码过程中相互约束的码段个数。卷积码编码后的 n 个码元不仅与当前组的 k 个信息比特有关,还与前 N-1 个输入组的信息比特有 关。编码过程中相互关联的码元有 N*n 个。R=k/n 是编码效率。编码效率和约束 长度是衡量卷积码的两个重要参数。典型的卷积码一般选 n,k 较小,但 N 值可取 较大(10),以获得简单而高性能的卷积码。卷积码的编码描述方式有很多种: 冲激响应描

36、述法、生成矩阵描述法、多项式乘积描述法、状态图描述,树图描述, 网格图描述等。 2.2.1 卷积码解析表示法 卷积码的解析表示发大致可以分为离散卷积法,生成矩阵法,码多项式法。 下面以离散卷积为例进行说明。卷积码的编码器一般比较简单,为一个具有 k 个 输入端,n 个输出端,m 级移位寄存器的有限状态有记忆系统。下图所示为 (2,1,7)卷积码的编码器。 聊城大学本科毕业论文(设计) 10 图图 2-12-1 (2,1,72,1,7)卷积码编码器)卷积码编码器 若输入序列为 u=(u0u1u2u3),则对应两个码字序列 C1=(ca0ca1ca2ca3)和 C2=(cb0cb1cb2cb3)相

37、应的编码方程可写为 P1=uC1,P2=uC2,P=(P1,P2)。 “”符号表示卷积运算,P1,P2 表示编码器的 两个冲激响应,即编码器的输出可以由输入序列和编码器的两个冲击响应卷积而 得到,故称为卷积码。这里的冲激响应指:当输入为1 0 0 0 0 序列时, 所观察到的两个输出序列值。由于上图 N 值为 7,故冲激响应至多可持续到第 7 位,可写为 P1=1 1 1 1 0 0 1,P2=1 0 1 1 0 1 1然后将两个输出端的码 字序列合并为一个码字序列为 C=(ca0cb0ca1cb1ca2cb2)。若输入信息序列 为1 1 0 1;则 P1=1 0 0 1 0 1 0 1 0

38、1,P2=1 1 1 1 1 0 1 1 1 1,C=1 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 0 1 1 1。 如图 3-2 所示为(2,1,3)卷积码的编码器,也是本次课程设计所研究的卷积 码编码器,由于其生成冲激响应分别为1 1 1和1 0 1,故被称为(7,5) 码。 图 2-2 (2,1,3)卷积码编码器 2.2.2 卷积码图形表示法 除了用解析法描述卷积码的编码外,还可以使用比较形象的图形法来表示卷 Z-1Z-1 + + 聊城大学本科毕业论文(设计) 11 积码。比较常用的有状态图法,树图法和网格图法。 状态图法: 由于卷积码编码器在下一时刻的输出取决于编码器

39、的当前状态和下一时刻的 输入,而编码器当前状态取决于编码器当前各移位寄存器的存储内容。称编码器 当前各移位寄存器存储内容(0 或 1)为编码器在该时刻的状态(此状态代表记忆以 前的输入信息)。随着信息序列的不断输入,编码器不断从一个状态转移到另外 一个状态,并且输出相应的编码序列。编码器的总可能状态数为 2mk 个。对(7,5)码 的编码器来说,n=2,k=1,N=3,m=2。共有四个可能状态,其状态图如图 2-3 所 示: 0010 0111 1/10 1/01 1/00 0/10 0/01 0/11 1/11 图图 2-32-3 卷积码状态图卷积码状态图 图中四个方块表示状态,状态间的连线

40、与箭头表示转移方向,连线上的数字 表示是状态发生转移的到来比特,斜杠后的数字由一个状态到另一个状态转移时 的输出码字。如当前状态为 11,输入信息为 0,则转移到 01 状态并输出 01 码字, 若输入信息为 1,则依然为 11 状态,并输出 10 码字。 树图法 描述卷积码的编码过程除了用它的生成矩阵外,还可以用半无限码树图。卷 积码的树图表示是一种形象的表示卷积码编码过程的方法。卷积码的各种距离度 量与树图有密切关系。 以(2,1,3)卷积码为例,它的生成多项式矩阵和生成矩阵分别为: 0/00 聊城大学本科毕业论文(设计) 12 (2-1) 22 1 ,1DDDDG (2-2) 210 2

41、10 210 111011 111011 111011 ggg ggg ggg G 若输入编码器的信息序列M(D)=(m0,m1,m2.)=(1 1 0 1 1 .),则 由编码器输出码序列C为C = M =(11,01,01,00,01,01, )=( C0,Cl,C2, C3,) (2-3) 可以把这个编码过程用如图3-4所示的半无限码树图来说明。设编码器的初 始状态为0,码树中每个节点的下一级的上面的分支表示输入为0,下面的分支表 示输入为l。每个分支上面的数字表示对应次分支的输出。因此输入不同的信息 序列,编码器就走不同的路径,输出不同的码序列。按照上面的例子,则编码过 程对应码树中粗

42、线表示的一条路径。对该码序列来说,树图上的这条路径就是它 的正确路径。对于一般的二进制(n,k,N)编码器来说,每次输入的是k个信息元, 有2k个可能的信息组,这对应于从码树每一个节点上分出的分支树有2k条,相应 于2k个不同信息组的输入,并且每条都有n个码元,作为与此相应的输出子码。 由以上讨论可知,卷积码编码过程的实质,是在输入信息序列的控制下,编 码器沿码树通过某一特定路径的过程。显然,译码过程就是根据接收序列和信道 干扰的统计特性,译码器在原码树上力图恢复原来编码器所走的路径,即寻找正 确路径的过程。其过程如图2-4所示。 聊城大学本科毕业论文(设计) 13 00 图图2-4 ( 2,

43、1,3)卷积码的树图卷积码的树图 网格图法: 网格图可以描述卷积码的状态随时间推移而转移的情况。该图纵坐标表示所 有状态,横坐标表示时间。网格图在卷积码的概率译码,特别是 Viterbi 译码中 非常重要,它综合了状态图法直观简单和树图法时序关系清晰的特点。 如图 2-5 所示 状态 t1 t2 t3 t4 t5 t6 21111 11111110 22 02 0 02 0 202 1 11 02 0 10 00 01 11 图图 2-5 译码器网格图译码器网格图 0 1 S0 S1 S2 S2 S0 S3 S0 S2 S0 S0 S2 S2 00 00 00 00 00 11 11 11 1

44、1 10 10 01 01 01 10 11 01 10 01 10 11 11 01 00 000 10 S3 S3 聊城大学本科毕业论文(设计) 14 图中实线表示输入 0 时所走分支,虚线表示输入 1 时所走分支,编码时只需从 起始状态开始依次选择路线并读出输出即可。假设从 a 状态开始,输入为1 0 1 1,则可由图中读出输出为11 10 10 01。 2.32.3 卷积码译码卷积码译码原理原理 2.3.1 卷积码三种译码方式 (1)代数译码 代数译码是将卷积码的一个编码约束长度的码段看作是n0(m+1),k0(m+1) 线性分组码,每次根据(m+1)分支长接收数字,对相应的最早的那个

45、分支上的信 息数字进行估计,然后向前推进一个分支。如果假设输入的信息序列为(10111), 相应的编码输出序列为 c(11100001100111)。在未超出编码约束长度的情况下, 可以通过译码时将接受序列与所有可能的输出编码序列进行比较,通过比较可以 得到最小距离,进而可以得到可能的最大概率。按同样方法判决,将每一位进行 比较,进行纠错。若此时接收序列 R(10100001110111),先根据 R 的前三个分 支(101000)和码树中前三个分支长的所有可能的 8 条路径(000000)、 (000011)、(001110)、(001101)、(111011)、(111000)、(1101

46、01) 和(110110)进行比较,可知(111001)与接收序列(101000)的距离最小,于是判 定第 0 分支的信息数字为 0。然后以 R 的第 13 分支数字(100001)按同样方法 判决,依此类推下去,最后得到信息序列的估值为=(10111),遂实现了纠错。这种 译码法,译码时采用的接收数字长度或译码约束长度为(m+1)n0,所以只能纠正 不多于(dmin-1)/2 个错误(n 长上的)。实用中多采用反馈择多逻辑译码法实现。 (2)维特比译码 维特比译码是根据接收序列在码的格图上找出一条与接收序列距离(或其他 量度)为最小的一种算法。它和运筹学中求最短路径的算法相类似。若接收序列

47、为 R=(10100101100111),译码器从某个状态,例如从状态 出发,每次向右延伸 一个分支(对于 lL,从每个节点出发都有 2 种可能的延伸,其中 L 是信息序列 段数,对 lL,只有一种可能),并与接收数字相应分支进行比较,计算它们之间 的距离,然后将计算所得距离加到被延伸路径的累积距离值中。对到达每个状态 的各条路径(有 2 条)的距离累积值进行比较,保留距离值最小的一条路径,称 为幸存路径(当有两条以上取最小值时,可任取其中之一),译码过程如图。图 中标出到达各级节点的幸存路径的距离累积值。对给定 R 的估值序列为=(10111)。 聊城大学本科毕业论文(设计) 15 这种算法

48、所保留的路径与接收序列之间的似然概率为最大,所以又称为最大似然 译码。这种译码的译码约束长度常为编码约束长度的数倍,因而可以纠正不多于 (df/2)个错误。 维特比译码器的复杂性随 m 呈指数增大。实用中 m 不大于 10。它在卫星和 深空通信中有广泛的应用。在解决码间串扰和数据压缩中也可应用。 (3)序贯译码 序贯译码是根据接收序列和编码规则,在整个码树中搜索(既可以前进,也 可以后退)出一条与接收序列距离(或其他量度)最小的一种算法。由于它的译 码器的复杂性随 m 值增大而线性增长,在实用中可以选用较大的 m 值(如 2040)以保证更高的可靠性。许多深空和海事通信系统都采用序贯译码。 2

49、.3.2 Viterbi 译码原理 卷积码概率译码的基本思路是:以接收码流为基础,逐个计算它与其他所有 可能出现的、连续的网格图路径的距离,选出其中可能性最大的一条作为译码估 值输出。概率最大在大多数场合可解释为距离最小,这种最小距离译码体现的正 是最大似然的准则。卷积码的最大似然译码与分组码的最大似然译码在原理上是 一样的,但实现方法上略有不同。主要区别在于:分组码是孤立地求解单个码组 的相似度,而卷积码是求码字序列之间的相似度。基于网格图搜索的译码是实现 最大似然判决的重要方法和途径。用格图描述时,由于路径的汇聚消除了树状图 中的多余度,译码过程中只需考虑整个路径集合中那些使似然函数最大的

50、路径。 如果在某一点上发现某条路径已不可能获得最大对数似然函数,就放弃这条路径, 然后在剩下的“幸存”路径中重新选择路径。这样一直进行到最后第 L 级(L 为 发送序列的长度)。由于这种方法较早地丢弃了那些不可能的路径,从而减轻了 译码的工作量,Viterbi 译码正是基于这种想法。 对于(n, k, N)卷积码,其网格图中共 2kL 种状态。由网格图的前 N-1 条连 续支路构成的路径互不相交,即最初 2k_1 条路径各不相同,当接收到第 N 条支 路时,每条路径都有 2 条支路延伸到第 N 级上,而第 N 级上的每两条支路又都汇 聚在一个节点上。在 Viterbi 译码算法中,把汇聚在每个

51、节点上的两条路径的对 数似然函数累加值进行比较,然后把具有较大对数似然函数累加值的路径保存下 来,而丢弃另一条路径,经挑选后第 N 级只留下 2N 条幸存路径。选出的路径同 它们的对数似然函数的累加值将一起被存储起来。由于每个节点引出两条支路, 聊城大学本科毕业论文(设计) 16 因此以后各级中路径的延伸都增大一倍,但比较它们的似然函数累加值后,丢弃 一半,结果留存下来的路径总数保持常数。由此可见,上述译码过程中的基本操 作是, “加-比-选” ,即每级求出对数似然函数的累加值,然后两两比较后作出选 择。有时会出现两条路径的对数似然函数累加值相等的情形,在这种情况下可以 任意选择其中一条作为“

52、幸存”路径。 卷积码的编码器从全零状态出发,最后又回到全零状态时所输出的码序列, 称为结尾卷积码。因此,当序列发送完毕后,要在网格图的终结处加上(N-1) 个己知的信息作为结束信息。在结束信息到来时,由于每一状态中只有与已知发 送信息相符的那条支路被延伸,因而在每级比较后,幸存路径减少一半。因此, 在接收到(N-1)个己知信息后,在整个网格图中就只有唯一的一条幸存路径保 留下来,这就是译码所得的路径。也就是说,在己知接收到的序列的情况下,这 条译码路径和发送序列是最相似的。 2.3.3 维特比译码算法性能 对于(n,k,N)卷积码,其编码存储度(移位寄存器单元的数量)为 N,幸存 路径有 2N 条。每条幸存路径(或信息序列)存储器单元数是 n*D,其中,n 是卷积 码码组宽度,D 是需要存储的码组的个数。D 的取值一般考虑取 m 的整倍数,称 D 为幸存路径长度。编码存储度和幸存路径长度的取值问题关系到芯片规格、传 输时延等问题。若 D 很大,则译码器的存储量太大而难以实用。一般情况下,当 译码进行到第 5 级(每级包括 m 个时刻)以后,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论