MATLAB实现卷积码编译码-要点.pdf
《MATLAB实现卷积码编译码-要点.pdf》由会员分享,可在线阅读,更多相关《MATLAB实现卷积码编译码-要点.pdf(52页珍藏版)》请在三一文库上搜索。
1、本科生毕业论文(设计) 题目:MATLAB实现卷积码编译码 专业代码: 作者姓名: 学号: 单位: 指导教师: 年 月 日 聊城大学本科毕业论文(设计) 2 目录 前言- - 1 1. 纠错码基本理论 - 2 1.1 纠错码基本理论 - 2 1.1.1 纠错码概念 - 2 1.1.2 基本原理和性能参数 - 2 1.2 几种常用的纠错码 - 6 2. 卷积码的基本理论- 8 2.1 卷积码介绍 - 8 2.1.1卷积码的差错控制原理- 8 2.2 卷积码编码原理 - 10 2.2.1卷积码解析表示法- 10 2.2.2卷积码图形表示法- 11 2.3 卷积码译码原理- 15 2.3.1卷积码三
2、种译码方式- 15 2.3.2VITERBI译码原理 - 16 3. 卷积码编译码及 MATLAB 仿真 - 18 3.1MATLAB概述 - 18 3.1.1MATLAB的特点 - 19 3.1.2MATLAB工具箱和内容 - 19 3.2 卷积码编码及仿真 - 20 3.2.1 编码程序 - 20 3.3 信道传输过程仿真- 21 3.4 维特比译码程序及仿真 - 22 3.4.1维特比译码算法解析- 23 3.4.2VITERBI译码程序 - 25 3.4.3 VITERBI译码MATLAB仿真 - - 28 3.4.4 信噪比对卷积码译码性能的影响 - 28 聊城大学本科毕业论文(设计
3、) 3 3.4.5 码率对卷积码译码性能的影响 - 30 3.4.6约束长度对卷积码误码性能的影响- 31 3.4.7 回溯长度对卷积码误码性能的影响 - 32 3.4.8判决方式对卷积码误码性能的影响- 32 4. 结论及展望 - 34 4.1 结论 - 34 4.2 展望 - 35 5. 结束语 - 36 参考文献 - - 37 致谢- - 38 附录- - 39 聊城大学本科毕业论文(设计) 4 摘要 在数字通信系统中, 通常采用差错控制编码来提高系统的可靠性。自 P Elias 首次提出卷积码编码以来,这一编码技术至今仍显示出强大的生命力。目前,卷 积码已广泛应用在无线通信标准中,如G
4、SM ,CDMA2000 和 IS-95 等无线通信标准 中。 本文简单介绍了纠错码的基本原理,论述了卷积码编译码原理和算法,并通 过 matlab 仿真对卷积码性能进行研究, 重点比较分析了不同码率、 不同约束长度、 不同回溯长度以及不同译码判决方式对Viterbi 译码性能的影响,并得出相关结论。 关键词 :卷积码, Viterbi,Matlab ,误码率,数字通信系统 聊城大学本科毕业论文(设计) 5 Abstract In digital communication systems, error control coding is usually used to improve sys
5、tem 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 communications and many other communication systemsas a kind of channel coding method. such as GSM, CDMA2000 a
6、nd 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 decoding and the algorithms.Through the matlab simulation, we study the performance of convolutional
7、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. Keywords: convolutional codes, Viterbi, Matlab, bit error rate, the digital communication system MATLAB
8、 实现卷积码编译码 前言 信道编码是数字通信系统的重要组成部分,随着通信技术的不断发展,信道 编码技术也在不断地发展。 在通信系统中, 信道传输特性不理想以及噪声的存在, 会导致接收端出现接收信号的错误,因此用于信道纠错的信道编码是数字通信系 统中极为重要的一个环节。 二十世纪 40年代香农定理的出现为人们指出了纠错码 的研究方向。根据香农的有噪信道编码定理,可以推导出一个码率为R 的编码通 信系统达到无误码传输状态所必须的最小信噪比的理论极限。这个理论极限通常 称为香农限,它说明对一个码率为R的编码通信系统,只有当SNR超过这个极限 值时才能获得无误码传输。只要SNR高于这个极限值,香农的编
9、码定理保证了能 够获得无误码传输的(可能相当复杂)编码通信系统的存在性。另外,香农证明 了在采用无限长的随机编码时,数据可以以接近信道容量的速率几乎无误码的传 输,从而为信道编码的研究奠定了基础。 本文主要介绍了信道编码的基本理论,着重研究了卷积码的编码方法和 viterbi译码,介绍了 MATLAB 的使用方法,并编写卷积码的编码和解码程序,通 过 MATLAB 仿真软件对卷积码编解码进行仿真。重点对viterbi译码进行了研究, 该算法就是利用卷积码编码器的格图来计算路径度量,选择从起始时刻到终止时 刻的惟一幸存路径作为最大似然路径,沿着最大似然路径回溯到开始时刻,所走 过的路径对应的编码
10、输出就是最大似然译码输出序列。它是一种最大似然译码方 法,当编码约束长度不大、或者误码率要求不是很高的情况下,Viterbi译码器 设备比较简单,计算速度快,因而Viterbi译码器被广泛应用于各种领域。 聊城大学本科毕业论文(设计) 2 1. 纠错码基本理论 1.1 纠错码基本理论 1.1.1 纠错码概念 纠错码 (error correcting code),在传输过程中发生错误后能在收端自行发 现或纠正的码。仅用来发现错误的码一般常称为检错码。为使一种码具有检错或 纠错能力,须对原码字增加多余的码元,以扩大码字之间的差别,即把原码字按 某种规则变成有一定剩余度(见信源编码)的码字,并使每
11、个码字的码之间有一 定的关系。关系的建立称为编码。码字到达收端后,可以根据编码规则是否满足 以判定有无错误。当不能满足时,按一定规则确定错误所在位置并予以纠正。纠 错并恢复原码字的过程称为译码。检错码与其他手段结合使用,可以纠错。 1.1.2 基本原理和性能参数 纠错码编码的基本思想是在被传输的信息码元中附加一些监督码元,并且使 它们之间确定某一种关系,根据传输过程中这种关系是否被破坏来发现或纠正错 误。可见这种差错控制能力是用增加信息量的冗余度来换取的。 设编码后的码组长度、码组中所含信息码元以及监督码元的个数分别为 n、k 和r ,三者间满足 n= k + r,定义编码效率为 R = k/
12、n = 1 - r/n。可见码组长度 一定时,所加入的监督码元个数越多,编码效率越低。香农的信道编码定理指出: 对于一个给定的有扰信道, 若信道容量为 C ,只要发送端以低于 C的速率R发送 信息,其中 R为编码器的输入二进制码元速率,则一定存在一种编码方法,使编码 错误概率 P随着码长 n的增加,按指数下降到任意小的值。可以表示为 错误!未找到引用源。 (1-1) 其中 E(R) 称为误差指数,它与 R和C的关系如图 1-1所示。 聊城大学本科毕业论文(设计) 3 图 1-1 误差指数曲线 由定理有如下结论: (1). 在码长及发送信息速率一定的情况下,为减小P可以增大信道容量。由 图2-1
13、可知, E(R) 随信道容量的增加而增大。由式(1-1) 可知,错误概率随 E( R) 的 增大而指数下降。 (2). 在信道容量及发送信息速率一定的条件下,增加码长, 可以使错误概率 指数下降。对于实际应用来说,此时的设备复杂性和译码延时也随之增加。 香农的信道编码定理为信道编码奠定了理论基础,虽然定理本身并没有给出 具体的差错控制编码方法和纠错码的结构,但它从理论上为信道编码的发展指出 了努力方向。 我们用 3位二进制码组来说明检错纠错的基本原理。3位二进制码元共有 8种可 能的组合 :000 、001、010、011、100、101、110、111。如果这 8种码组都可传递 消息,若在传
14、输过程中发生一个误码,则一种码组会错误地变成另一种码组。由 于每一种码组都可能出现,没有多余的信息量,因此接收端不可能发现错误,认 为发送的就是另一种码组。 如果选其中 000、011、101、110 来传送消息,这相当于只传递00、01、10、 11四种信息,而第 3位是附加的。这位附加的监督码元与前面两位码元一起,保证 码组中“ 1”码的个数为偶数。这 4种码组称为许用码组。另外 4 种码组不满足这 种校验关系,称为禁用码组,它们在编码后的发送码元中不会出现。接收时一旦 发现有禁用码组,就表明传输过程中发生了错误。用这种简单的校验关系可以发 现1个或3个错误,但不能纠正错误。因为当接收到的
15、码组为禁用码组时,比如为 聊城大学本科毕业论文(设计) 4 010,无法判断发送的是哪个码组。虽然原发送码组为101的可能性很小 (因为3个 误码的概率一般很小 ) ,但不能绝对排除,即使传输过程中只发生一个误码,也有 三种可能的发送码组即 000、011和110。 假如我们进一步将许用码组限制为二种即000和111, 显然这样可以发现所有 2 位以下的误码,若用来纠错,可以用最大似然准则纠正1位错误。可以用一个三维 立方体来表示上述 3位二进制码组的例子,如图1-2 所示。图中立方体各顶点分别 表示8位码组, 3位码元依次表示 x、y、z轴的坐标。 图 1-2 码距的几何解释 这里定义码组中
16、非零码元的数目为码组的重量,简称码重。 比如100码组的码 重为1,101码组的码重为 2。定义两个码组中对应码位上具有不同二进制码元的位 数为两码组的距离,称为汉明(Hamming)距,简称码距。在前面 3位二进制码组的 例子中,当 8种码组均为许用码组时,两码组间的最小距离为1,称这种编码的最 小码距为 1,一般记为 dmin= l ;当选 4种码组为许用码组时,最小码距 dmin= 2 ;当 用2种码组作为许用码组时, dmin = 3 。 从图1-2所示的立方体可以看出, 码距就是从一个顶点沿立方体各边移到另一 个顶点所经过的最少边数。图中粗线表示000与111之间的一条最短路径。很容
17、易 得出前例中各种情况下的码距。 根据以上分析可知,编码的最小码距直接关系到这种码的检错和纠错能力, 所以最小码距是差错控制编码的一个重要参数。对于分组码一般有以下结论: (1) 在一个码组内检测 e个误码,要求最小码距 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) 聊城大学本科毕业论文(设计) 5 1 min ed (1-2) (2) 在一个码组内纠正 t 个误码,要求最小码距 12 min td错误!未找到引用源。 (1-3) (3) 在一个码组内纠正 t 个误码,同时检测 e( e错误!未找到引
18、用源。 t )个误码, 要求最小码距 1 min etd(1-4) 这些结论可以用图 1-3所示的几何图形简单的给予证明。 图 1-3 码距与检错和纠错能力的关系 图1-3( a) 中C表示某码组,当误码不超过e个时,该码组的位置移动将不超出 以它为圆心以 e为半径的圆。只要其它任何许用码组都不落入此圆内,则C 发生 e 个误码时就不可能与其它许用码组混淆。这意味着其它许用码组必须位于以C为圆 心,以 e + 1 为半径的圆上或圆外。因此该码的最小码距dmin为e + 1。 图1-3( b) 中C1、C2分别表示任意两个许用码组,当各自误码不超过 t 个时,发 生误码后两码组的位置移动将各自不
19、超出以C1、C2为圆心, t 为半径的圆。只要这 两个圆不相交,当误码小于 t 个时,根据它们落在哪个圆内可以正确地判断为C1或 C2,就是说可以纠正错误。以 C1、C2为圆心的两圆不相交的最近圆心距离为2t + l , 即为纠正 t 个误码的最小码距。 式(1-1) 所述情形中纠正 t 个误码同时检测 e个误码,是指当误码不超过 t 个时, 聊城大学本科毕业论文(设计) 6 能自动纠正误码,而当误码超过t 个时,则不可能纠正错误但仍可检测e个误码。 图1-3( c) 中C1、C2分别为两个许用码组,在最坏情况下C1发生 e个误码而 C2发生 t 个误码,为了保证此时两码组仍不发生混淆,则要求
20、以C1为圆心 e为半径的圆必须 与以C2为圆心 t 为半径的圆不发生交叠,即要求最小码距 dmin=t+e+1。 可见dmin体现了码组的纠、检错能力。码组间最小距离越大,说明码字间最小 差别越大,抗干扰能力就越强。由于编码系统具有纠错能力,因此在达到同样误 码率要求时,编码系统会使所要求的输入信噪比低于非编码系统,为此引入了编 码增益的概念。其定义为,在给定误码率下,非编码系统与编码系统之间所需信 噪比Eb/N0之差( 用dB表示) 。 采用不同的编码会得到不同的编码增益,但编码增 益的提高要以增加系统带宽或复杂度来换取。(2.1.3)纠错码实现纠错码实现中最 复杂的部分是译码。它是纠错码能
21、否应用的关键。根据式(1), 采用的码长 n越大 , 则误码率越小。但 n越大,编译码设备也越复杂, 且延迟也越大。人们希望找到的 译码方法是 : 误码率随码长 n的增加按指数规律下降; 译码的复杂程度随码长 n的增 加接近线性地增加;译码的计算量则与码长 n 基本无关。可惜,已经找到的码能 满足这样要求的很少。不过由于大规模集成电路的发展,既使应用比较复杂的但 性能良好的码,成本也并不太高。因此,纠错码的应用越来越广泛。 纠错码传输的都是数字信号。这既可用硬件实现,也可用软件实现。前者主 要用各种数字电路,主要是采用大规模集成电路。软件实现特别适合计算机通信 网等场合。因为这时可以直接利用网
22、中的计算机进行编码和译码,不需要另加专 用设备。硬件实现的速度较高,比软件可快几个数量级。 在传信率一定的情况下,如果采用纠错码提高可靠性,要求信道的传输率增 加,带宽加大。因此,纠错码主要用于功率受限制而带宽较大的信道,如卫星、 散射等系统中。 纠错码还用在一些可靠性要求较高,但设备或器件的可靠性较差, 而余量较大的场合,如磁带、磁盘和半导体存储器等。 在分组码的研究中,谱分析的方法受到人们的重视。纠同步错误码、算术码、 不对称码、不等错误纠正码等,也得到较多的研究. 1.2 几种常用的纠错码 (1) RS 编码 RS码即里德 - 所罗门码,它是能够纠正多个错误的纠错码, RS码为 (204
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 实现 卷积码 译码 要点
链接地址:https://www.31doc.com/p-5197505.html