毕业设计(论文)-卷积码译码算法的研究(26页).doc

上传人:1595****071 文档编号:38978310 上传时间:2022-09-06 格式:DOC 页数:26 大小:384.50KB
返回 下载 相关 举报
毕业设计(论文)-卷积码译码算法的研究(26页).doc_第1页
第1页 / 共26页
毕业设计(论文)-卷积码译码算法的研究(26页).doc_第2页
第2页 / 共26页
点击查看更多>>
资源描述

《毕业设计(论文)-卷积码译码算法的研究(26页).doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)-卷积码译码算法的研究(26页).doc(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、-毕业设计(论文)-卷积码译码算法的研究-第 22 页卷积码译码算法的研究摘 要:作为一种热门的前向纠错编码技术,基于Viterbi算法译码的卷积码纠错技术在数字通信系统中起着非常重要的作用。目前,卷积码的应用已经相当广泛。本文主要对卷积码的viterbi算法进行研究。首先对数字通信系统的基本结构和卷积码及其译码算法的发展过程做出了介绍,说明了卷积码的研究具有重要意义。接着又以(2, 1, 3)卷积码为例介绍了卷积码的基本概念、编码原理以及卷积编码器的3种表示方法,并重点介绍了其中的网格图表示方法。从(2, 1, 3)卷积编码的网格图可以看出在编码器编码过程中,输入码元为0或1时当前状态向下一

2、状态转移的路径以及此时刻编码器所输出的分支字,另外网格图中的每条路径都代表着一个发送序列。最后着重介绍了viterbi译码算法。该算法是一种基于网格图的最大似然译码算法,其译码过程分为接收,计算和比较,从而选择出最接近的序列,进而得到发送的原始信息序列。另外还对viterbi译码进行MATLAB仿真,并证明了其译码结果的可靠性。关键词:卷积码;viterbi算法;MATLAB仿真Study on Decoding Algorithm of Convolutional Code Abstract: As one of the pop forward error correction techno

3、logy, the convolution code technique based on Viterbi algorithm plays an important role in the digital communication system. Today, convolutional code has been widely applied in many fields. The Viterbi algorithm is mainly researched in this thesis. Firstly, the basic architecture of digital communi

4、cation and the development process of coding and decoding of convolutional code are introduced, which shows the important significance of the study of convolutional code. Then, take (2, 1, 3) convolutional code for example, this paper introduces the basic concept and the principle of coding of convo

5、lutional code and 3 kinds of description of Convolution encoders. Among them, trellis diagram is introduced emphatically. From the trellis diagram of (2, 1, 3) convolutional code, we can get the path that the current state to the next state when the input symbol is 0 or 1 and the branch word output

6、by the encoder at this moment in the encoding process of the encoder. And each path in the trellis diagram corresponds to a send sequence. Finally, the Viterbi algorithm, a kind of maximum likelihood decoding algorithm, which is based on trellis diagram is introduced emphatically. The decoding proce

7、ss is that when the decoder receives a sequence, it computes and compares immediately to select the most probable sequence and then obtain the sequence of information to be sent. In addition, the viterbi algorithm is simulated with MATLAB and the reliability of the decoding result is verified.Key wo

8、rds: Convolutional code;Viterbi algorithm;MATLAB simulation目 录 目 录I1 绪论11.1 卷积码的研究背景11.2 卷积码的研究现状21.3 本文结构及内容安排32 卷积码的基本原理42.1 卷积码的基本概念42.2 卷积码的编码器42.2.1 卷积编码器的矩阵表示62.2.2 卷积编码器的连接表示102.2.3 卷积编码器的几何表示132.3 本章小结173 卷积码的译码算法183.1 大数逻辑译码和序列译码183.1.1 大数逻辑译码183.1.2 序列译码213.2 Viterbi译码算法213.2.1 Viterbi译码算法

9、的基本原理213.2.2 MATLAB仿真及结果分析253.3 本章小结274 总结与展望284.1 工作总结284.2 展望28参考文献30致谢321 绪论随着全面数字通信时代的到来,人们对通信系统的传输速率和通信的可靠性有了更高的要求,因此可以在数据的接收端完成纠错并具备良好的可实现性能信道编码技术被广泛应用。信道编码技术也成为了移动通信时代的一种不可或缺的技术,而卷积码又是信道编码的一种最常用的编码技术。本章主要介绍了卷积码相关技术的相关研究背景,包括数字通信系统的基本组成和信道编码技术的发展过程、卷积码的研究现状以及全文结构及内容安排。1.1 卷积码的研究背景 数字通信系统的组成一般包

10、括信源、信道和信宿,其基本结构如图1-1所示,应用的技术主要有信源编码、信道编码、调制、解调、信道解码和信源解码等1,这些技术的作用是降低外界干扰和内部传输损耗以达到更高效、更稳定地传输信息的目的。图1-1数字通信系统的基本结构信号在数字通信系统传输过程中,由于信道传输特性的不理想和受到环境噪声的干扰,在接收端,接收信号经常会产生较为严重的错误,这在很大程度上影响了通信系统的可靠性与稳定性。从理论上来讲,主要有两种方式可以用来提高通信的质量:一种是提高发送端发射信号的功率和接收端的信号噪声比;另一种是采用编码的方法来对信道差错进行控制,即要求码列的频谱特性适应通道的频谱特性,使传输过程中的能量

11、损失最小,以提高信号能量与噪声能量的比例,减小发生差错的可能性。但由于前者经常受客观条件(设备,成本,环境等)限制,在大多数情况下不能够通过这种方法来提高通信的质量。因此用于信道纠错的信道编码成为数字通信系统中极为重要的一个技术环节。但直到香农定理的提出,信道纠错编码技术的研究方向才渐渐确定。1948年,Shannon发表了通信的数学理论2,提出了著名的有噪信道编码定理3,论证了能够实现无误码传输的编码通信系统的可能性,说明了实现最佳编码的三个基本条件:(1)采用随机编码方式;(2)码元序列长度无限;(3)译码采用最大似然译码算法。Shannon认为,如果满足这三个条件,有噪信道中可以实现无差

12、错传输。从而为信道编码的研究奠定了基础。自1950年开始,人们便开始对信道编码方法的探索和实践开发。在这种情形下,P.Elais4于1955年提出了卷积码的概念,卷积码作为一种前向纠错编码技术,在数字通信和信道编码技术的发展中起着非常重要的作用。相对于编码,卷积码的译码实现更为困难,针对卷积码的译码方式主要有以下三种:(1) 序列译码算法,它是最早被提出的卷积码译码算法,是以最大似然译码原理为基础的基于码树图结构的一种准最佳的概率译码,于1961年由 Wozencraft5提出,并于1963年经过法诺Fano6改进;(2) 门限译码,是一种利用卷积码的代数结构进行译码代数码,类似于分组码中的大

13、数逻辑译码,其性能相对较差但是相对实用,于1963年由Massey7提出,正是它的提出才使得卷积码开始一步步走向实用化;(3) Viterbi译码算法8,这是一种基于最大似然译码算法的最佳的概率译码算法9,也是本文的重点研究对象,于1967年由Viterbi提出。在1993年IC国际会议上,C. Berrou和A. Glavieux10等人,提出了一种叫做Turbo码的信道编码编译码方案。Turbo码11112是在卷积码的基础上发展而来的,它首次对香农提出的非构造性问题的构造性进行了回答,引起了研究人员对随机编码方式和迭代译码13的关注,完善了香农信道编码理论。针对Turbo码的译码,其主要译

14、码算法是BCJR14算法,BCJR算法是一种软输入软输出译码算法。除卷积码外,还有循环码,BCH码,RS码15LDPC码1617等信道编码方法,信道编码己成为现代通信学科中最重要的分支之一,各种行之有效的编码、译码方法已广泛应用到各种实际通信系统中,使信道编、译码器成为现代通信设备中不可缺少的重要部件。作为一种性能优良的编码方式,卷积码应用十分广泛,并且在信道编码技术不断发展的今天依旧发挥着非常重要的作用,其对未来信道编码技术的发展仍然有着不可忽视的影响。1.2 卷积码的研究现状卷积码是一种性能十分优良的信道编码方式,在各种前沿技术和基础设施方面应用十分广泛。例如,卫星通信系统中采用的(2,

15、1, 7)和(3, 1, 7)卷积码作为标准编码方式。第二代移动通信GSM系统和IS.95 CDMA系统分别采用(2, 1, 5)和(2, 1, 9)卷积码。第三代移动通信WCDMA系统中上下行链路中分别采用(3, 1, 9)和(2, 1, 9)卷积码完成纠错编码。另外,人们在卷积码的基础上又提出了一些新的性能优良的信道纠错编码,例如Turbo码,其误码性能理论上可以达到信息论的极限;还有一种叫做分组卷积码19的信道编码,其同时具有分组码高效率,短时延的优点和传统卷积码优良的译码性能。在译码器方面,当码的约束度较小时,相比于序列译码算法Viterbi译码算法在译码速度、效率和实现的难易程度上性

16、能更好,故自1967年Viterbi译码算法提出以来,其不论在理论方面还是在实践方面都获得了快速的发展,广泛地应用于现代通信系统中,特别是在深空卫星通信系统中应用更加广泛。因此Viterbi译码器技术的研究一直是国内外通信领域中的一个研究热点。国内对Viterbi译码器的研究已经持续了很长时间,目前由国内设计出的各种码型的Viterbi译码器,译码速率大多是从几十K bits/s到几十M bits/s,状态数是从16状态到256状态。研究重点集中在SMU(幸存路径存储单元)、ACS(加比选)单元的实现上。许多译码器都用FPGA进行仿真实现920。国外在Viterbi译码器方面也做了相当多的研究

17、,所实现的Viterbi译码器从几十K bits/s到几百M bits/s都有,应用于移动通讯、数字广播、DVB和高清晰电视等等2123。未来,通信系统必然会朝着更快速,更可靠的趋势发展,以满足更高质量的多媒体传输业务的需求,这也必将推动着信道编码技术向更高性能的趋势发展。卷积码作为一种性能优良的信道编码技术,在当今各种各样的通信系统中大量使用,以后也必将会有译码效率更高、功耗更低的卷积码译码器出现。1.3 本文结构及内容安排本文主要对卷积码编译码基本原理进行介绍,讨论了有关卷积码的基本理论,并对卷积码的Viterbi算法进行了MATLAB仿真验证。内容安排如下:第一章:绪论。主要介绍了卷积码

18、的研究背景及发展现状,和论文的结构以及内容安排。第二章:卷积码的基本原理。介绍了卷积码的相关理论,包括卷积码的基本概念,卷积编码器的矩阵表示,连接表示,以及几何表示。第三章:卷积码的译码算法。介绍了卷积码的几种译码算法,包括大数逻辑译码,序列译码,Viterbi译码算法。着重介绍了Viterbi译码算法原理,以及用MATLAB工具对Viterbi译码算法进行仿真验证,并对得到的仿真结果进行分析。第四章:总结与展望。对全文内容进行总结以及对未来理论学习和研究的展望。2 卷积码的基本原理2.1 卷积码的基本概念信道纠错编码主要可以分为两大类1:分组码和卷积码。分组码在编码前,先将接收的的信息序列中

19、的每k个码元划分成一组,再通过编码器把每一小组中所包含的k个信息位按特定的方式产生r个监督元,最后编码器输出长为的一个码组。编码器产生的n个码元的一个码组,仅仅取决于这个时间段内输入进编码器的k比特信息。并且这个码组中的r个监督位也仅监督此码组中k个信息位。分组码一般用(n, k)表示,其中n 表示码长,k 表示信息位,监督位。 卷积码不同于分组码,它是一种线性非分组码,由于该码的输出序列是输入序列和编码器的冲击响应的离散时间卷积,故名卷积码。其在编码过程中,虽然也是将接收序列中的每k比特的信息段编码生成一个包含n个比特的码组,但是卷积码编码器有记忆的特点明显区别于分组码编码器,其生成码组的监

20、督位不仅仅取决于当前码组中的k比特信息段,还与之前个码组的信息段有关。故可知,其中一个码组中的监督码元也不是仅仅监督这一个码组本身,而是一共监督着N个信息段。卷积码一般用(n, k, N)表示。nN被称作卷积编码约束长度,卷积码的纠错能力随着N的增加而增加。编码速率(码率)则被定义为。2.2 卷积码的编码器卷积码编码是通过编码器按照一定的规则对输入的信息序列进行编码并输出已编码序列的过程。一个(n, k, N)的卷积编码器的原理框图如图2-1所示。图2-1 (n, k, N)卷积编码器原理图可以看出其一般结构包括:一个由N段组成的输入移位寄存器,每段有k个,共Nk个移位寄存器、一组n个模2和相

21、加器、一个旋转开关和一个由n级组成的输出移位寄存器。不同类型的卷积码编码器,其模2加法器输入端的数目是不同的,也就是说对于特定类型的卷积码,编码器的寄存器与加法器之间的连接是特定的,不可以随意选择或改变。就如何选择才能得到具有良好距离特性的连接方式,是一个复杂的问题,目前尚未有通用的准则。但是通过使用计算机,我们已经检索到了全部码约束长度N小于20 的好的编码。模2加法器的输出端接到旋转开关上。在相同的时间间隔(1个时隙)中,有k比特的信息元从左端进入移位寄存器,同时移位寄存器各级暂存的信息向右移k位,另外旋转开关每时隙旋转一周,输出n比特已编码(n k)。当k=1时,卷积码用(n, 1, N

22、)表示,这是最常用的卷积码类型。卷积码编码器编码过程如下,在一个时隙里共有1比特的信息,也就是1个码元从编码器的左侧(输入端)进入移位寄存器,同时移位寄存器中暂存的码元序列也向右移动1位,此时旋转开关旋转一周输出n比特已编码,可知码率为1/n。为了更直观地介绍卷积码编码器的工作过程,下面将会给出一个实例,如图2-2所示,描述了一个(n, k, N)=(2, 1, 3)卷积码的编码器。本章以下内容将以此例进行讨论。图2-2 (2, 1, 3)卷积编码器示意图很容易可以看出,此(2, 1, 3)卷积编码器结构包括kN=3个移位寄存器、n=2个模2加法器、1个旋转开关和一个2级输出移位寄存器。所以,

23、编码效率k/n=1/2。编码过程如下,当1位码元进入移位寄存器的最左端得一级中,此时移存器中的码元必然会向右移一级,接下来便对两个模2加法器交替采样(即先采样下面的加法器,再采样下上面的加法器),此时输出的2位码元就是与这1位输入码元相对应的编码分支码字。对每一个输入信号比特都重复上述采样过程。设输入信息信息比特序列为bi-2 bi-1 bi bi+1.,则当输入bi时,此编码器输出长度为2比特的已编码UiVi。输出输入关系如下 (2-1)式中:bi是当前输入信息位,bi-1 ,bi-2 是移位寄存器存储的前两信息位。在输出码组中,信息位在前,监督位在后,即已编码UiVi中,Ui为信息位,Vi

24、为监督位,如图2-3所示。虚线表示输入信息序列bi,bi-1 和bi-2与监督位Vi与信息位Ui之间的约束关系,此卷积码的编码约束长度nN=6图2-3 (2,1,3)卷积码编码器输入输出举例下面继续以(2, 1, 3)卷积编码器为例,分别介绍卷积码编码器的3种表示方法,矩阵表示、连接表示以及几何表示。2.2.1 卷积编码器的矩阵表示由式(2-1)可知卷积码的信息位与监督位之间的关系满足一组线性代数方程组,故可知卷积码是线性码1的一种。因此它可以由一个监督矩阵H或生成矩阵G表示所确定。下面将分别对这两种矩阵进行讨论。2.2.1.1 监督矩阵H分析图2-2,假设编码器在第一个信息位b1进入之前,各

25、级移位寄存器都处于“0”状态,则监督位Vi和信息位Ui之间的关系可由下式表示: (2-2)式(2-2)还可以变形为 (2-3) 为表示方便,在式(2-2)和式(2-3)及后面的式子中,用“+”代替“”。下面将式(2-3)用矩阵表示: (2-4)由上式可得图2-2中卷积编码器的监督矩阵为 (2-5)观察上式,可以看出在卷积码中监督矩阵H是一个有头无尾的半无穷矩阵。并且在该矩阵中从第1列开始,每2列的元素组成是一样的,唯一的区别是后2列元素比前2列低了1行。例如,第3列第4列比第1列第2列低1行。从第4行开始,每行的左端比上一行多2个“0”。当然讨论至此,可以发现这样的半无穷矩阵不方便研究,但注意

26、到此卷积码的编码约束长度nN=6,因此,只需要研究编码器产生的前6个码元的监督矩阵就足够了,我们把这种矩阵称为截短监督矩阵H1。经分析,可以得到截短监督矩阵H1的一般结构形式,如图2-4所示。图2-4 截短监督矩阵结构示意图由上图可知截短监督矩阵H1的一般结构为,其最前面是一个的子矩阵,并且向后的每n列与前面的n列元素组成结构相同,并且相对于前n列降低行。此例的(2, 1, 3)卷积编码器的截短监督矩阵可以写为 (2-6)通过对多种类型的卷积编码的截短监督矩阵分析,例如(3, 1, 3)卷积编码1,可以得到一般的卷积码的截短监督矩阵表示形式:(2-7)式中:In-k为(n-k)阶单位方阵;Pi

27、为阶矩阵;0n-k为(n-k)阶全零方阵。我们把H1的最后一行叫做基本监督矩阵h,即 (2-8)这是卷积码的一个最重要的矩阵,给出了一定的h,则就可以构造出H1。该例的基本监督矩阵,可以看出,由式(2-7)及监督矩阵的结构特点反过来可以得到其式(2-5)中监督矩阵H。2.2.1.2 生成矩阵G由式(2-2)可知,此(2, 1, 3)卷积编码器输出序列可以写成 (2-9)据此可得该卷积码的生成矩阵为 (2-10)观察上式可以发现,生成矩阵G也是一个半无穷矩阵,其每一行的元素组成都相同,相对于上一行,下一行的元素总是向右移位2列(n=2)。类似监督矩阵H,也存在着截短生成矩阵: (2-11)另外大

28、量实例表明,截短生成矩阵具有以下一般形式(上述G1为特殊情况): (2-12)其中:Ik为单位k阶方阵;Qi为k(n-k)阶矩阵;0k为k阶全零方阵。另外式(2-7)中的矩阵Pi与Qi互为转置: (2-13)并将截短生成矩阵G1第一行的子矩阵叫做基本生成矩阵: (2-14)假定如果已知基本生成矩阵g,则可从已知的信息位得到整个卷积码编码序列。上述内容就是本章关于卷积编码器矩阵表示的简要介绍。目前关于卷积码的代数理论还不是太完整严密,故在接下来的2节里会对更加直观的卷积编码器的连接表示和几何表示进行讨论分析。2.2.2 卷积编码器的连接表示在介绍卷积编码器连接表示之前,首先要对卷积码的分组结构进

29、行简要的说明。卷积码与分组码不同,其没有特定的分组结构。但可以采用周期性截断(periodic truncation)的方式来对其赋予一定的分组结构。为了达到清空编码移位寄存器内本阶段输入数据比特的目的,需要在输入数据序列末尾附加若干个0码元。由于附加的0不包含任何的有效信息,因此有效编码效率(effective code rate)降至k/n(码率)以下。在编码过程中,为了使编码效率尽可能地接近k/n,截断周期一般取值较长。连接表示是一种很重要的卷积编码器表示方法,其中连接矢量(connection vector)是指:对于卷积码(n, k, N),确定n个连接矢量集,则每个矢量对应一个模2

30、加法器;每个矢量都是N维,用来表示该模2加法器与编码移位寄存器之间的连接状态。矢量中第i位上若是1,则表示编码移位寄存器相应级与此模2加法器相连接;若是0,则表示相应级与模2加法器之间无连接。以图2-2所示的(2, 1, 3)编码器为例,可以写出对应左侧模2加法器的连接矢量g1和代表右侧模2加法器的连接矢量g2,其中g1=111,g2=101。下面依旧用图2-2的(2, 1, 3)卷积编码器为例,假设编码移位寄存器输入的信息矢量b=101,现在对其进行编码。其编码连接图(connection pictorial)表示如图2-5所示。3位信息比特1 0 1在时刻t1 , t2, t3从左端依次进

31、入编码寄存器,接着为了确保输入信息比特能够完全移出寄存器,在时刻t4, t5连续输入2个0码元,对于(n, k, N)卷积编码器,一般需要个0码元来清空寄存器。编码器最终得到的输出序列是11 10 00 10 11,其中,最左端的码元是最早产生的。在卷积码译码过程中,包括用于清空寄存器的2位0产生的码元在内的整个输出序列都将会被用到。在t6时刻又输入一位0,目的是为了说明在t5时刻已经完成清空操作,t6时刻已经可以重新输入新的信息。 时刻 编码器 输出图2-5 输入信息b=101时,(2, 1, 3)卷积码编码器连接图表示除了连接图表示外,卷积码编码器还可以用多项式来描述,被称作连接多项式(c

32、onnection polynomial)表示。对(n, k, N)卷积编码器,可以用n个阶生成多项式表示来描述编码移位寄存器与模2加法器之间的连接状态,其中这n个生成多项式分别对应着编码器的n个模2加法器。由前面论述可知这种描述方法与连接矢量描述方法类似。这些阶生成多项式中各项的系数为1或0,如果模2加法器和移位寄存器是连接状态,则系数为1,否则系数为0。以图2-2中的(2, 1, 3)卷积编码器为例,用g1(X)表示左侧加法器的连接,g2(X)表示右侧加法器的连接,有 (2-15a) (2-15b)其中,最低阶代表着编码移位寄存器的最左端一级(输入级),后面依次相对应。当输入序列b=101

33、时,先将其表示为多项式形式,即。设输出多项式G(X)可由下式得到 (2-16)此时,仍然需要对所输入信息序列后附加0码元,以用来清空编码移位寄存器,该输入信息序列b经过图2-2所示编码器编码生成的输出多项式G (X)或输出序列UV计算过程如下:可以看出,由多项式方法得到的输出序列与图2-5中用连接图表示所得的输出序列一样。2.2.3 卷积编码器的几何表示下章也是本文重点介绍的Viterbi译码算法是基于卷积码编码的几何表示之上的,所以对卷积编码的几何表示进行分析说明是十分有必要的。下面分别介绍卷积码的三种几何表示。2.2.3.1 码树图现在仍以图2-2所示的(2, 1, 3)卷积编码器为例,其

34、码树图(code tree diagram)如图2-6所示。每个相继输入信息比特从左向右经过树状图,每条树枝代表一个输出分支字。图2-6 (2, 1, 3)卷积编码器码树图寻找码字序列的分支准则如下:如果输入比特是0,则向上方右移一个支路得到相应分支字;如果输入比特是1,则向下方右移一个支路得到相应分支字。下面以输入码元序列10111为例分析码树图的工作,现以编码移位寄存器M1、M2和M3初始状态000作为码树图的起点。t1时刻,输入第1个信息位b1=1,各移位寄存器存储的信息位分别为M1=1,,M2=M3=0。由式(2-1)可知,此时输出码支字为11,码树的状态从起点a向下转移到状态b;t2

35、时刻,输入第2个信息位b2=0,此时各移位寄存器存储的信息位分别为M1=0,,M2=1,M3=0。由式(2-1)可知,此时输出码支字为10,码树的状态从起点,b向下转移到状态c;第3位和后继各位输入时,将按照图中粗线所示的路径前进,注意到在第5位码元1输入后,仍就需要输入2位0码元以清空移位寄存器(此图中只画出了t6输入第1个清空0码元后进入状态d)。最终我们得到输出序列:11 10 00 01 10。另外,从此码树图可以看出,从第4级支路开始,码树的上半部分和下半部分相同。这意味着从第4个输入信息位开始输出码元与第1位输入信息位无关,即此编码器的约束度N=3。若观察在新码元输入时编码器的过去

36、状态,即观察编码移位寄存器M2 M3的状态和新输入信息位的关系,可以得到图2-6中所示的a、b、c和d四种状态。反过来,从输入新信息位时,卷积编码器的移位寄存器M2 M3的数值与状态a、b、c、d的对应关系去验证码树中编码器的前进路径的正确与否。 码树图上在时间尺度动态的描述了输入序列的编码过程,较为直观。但是,用码树图描述卷积编码过程也存在一个不可避免的问题,就是码树图的支路数按2L增长,L是序列中分支字的数目。因此树状图的规模增长很快,若L过大,描述将变得十分不便,所以其只适用于L较小的情况。2.2.3.2 状态图卷积码编码器属于有限状态机(finite-state machine)的器件

37、,“有限”表明状态机制只有有限个不同的状态。有限状态机的状态是指状态可以用设备的当前输入和最少的信息数量,来预测设备的输出。状态提供了有关过去序列过程及一组将来可能输出序列的限制,下一状态总是受到前一状态的限制。以(n, 1, N)卷积码编码器为例,状态就用最右端的级编码移位寄存器内容来表示。由当前状态以及下一个输入可以确定下一状态。图2-7所描述的状态图(state diagram)可由图2-6中的码树图改进而来。由图2-2中(2, 1, 3)编码器的结构可知,输出码元UiVi取决于当前输入bi和前2位输入码元bi-1和bi-2(编码移位寄存器M2和M3的状态)。在码树图中已经为移位寄存器M

38、2和M3的四种状态规定了代表符号a、b、c和d,其中a=00, b=10, c=01,d=11。在状态图中,四种状态a、b、c和d不做改变。从每一个状态出发有且只有两种转移,因为每次移入1个信息比特,移位寄存器M2和M3的状态在每个比特时间上只有两种可能的状态转移,例如,M2和M3的当前状态是a,下一状态只有两种可能,a或b,这种情况在图2-6描述的码树图中也可以观察出来。对应于两种可能的输入信息位0和1,实线表示当前输入信息位0的路径,虚线表示输入信息位为1的路径。状态转移时的输出分支字(此时刻输出码元UiVi)标注在相应转移路径旁。利用这种状态图可以很方便地从输入序列的到输出序列。图2-7

39、 (2, 1, 3)卷积编码器状态图2.2.3.3网格图虽然状态图完全描述了编码器的特性,但由于没有表示时间过程,所以采用状态图跟踪编码器的状态转移很不方便。另外码树图虽然较状态图在描述编码过程增加了时间尺度,但由于其在结构上重复性的特点,对编码过程的表示过程也较为繁琐。故利用码树图结构重复性,可以得到类似于状态图在时间上展开的图形表示方法-网格图(trellis diagram),用它来描述编码器比码树图更加简便。下面将在(2, 1, 3)卷积编码器码树图和状态图的基础上,引入对其网格图的介绍。观察图2-6中的码树图,可以看出,码树图从t4时刻,即经过第三条支路后开始重复自身结构(一般来说,

40、约束长度为N的码树图经过N次分支后开始重复自身结构,这也可以说明(2, 1, 3)卷积码的约束长度为3)。另外树结构在时刻t1开始第一次分支,产生一对节点a, b,在后继的各个分支处,节点数翻倍。在时刻t2进行了第二次分支,生成4个节点a, b, c, d;第三次分支后,共有8个节点:两个a,两个b,两个c,两个d。通过观察,从处于同一状态的两个节点发出的所有支路产生相同的分支字序列,树的上半部分和下半部分一样。分析图2-2中的编码器,就可以对这一现象作出解释:当第四位信息比特从左端进入编码器时,输入的第一位信息比特已经从寄存器右端移出,不再影响输出分支字,例如,输入序列100xx和000xx

41、.(x代表0或1)在经过3次分支后产生的分支字相同。故在同一时刻ti,具有相同状态的两个节点的后继分支将没有任何差别,这两个节点可以合并。根据这样的特性,图3-5中的树状结构可以做分支的合并,得到图2-8所示的网格图。图2-8(2, 1, 3)卷积编码器网格图图2-9 (2, 1 3)卷积编码器网格图路径举例观察图2-8可以看出,同码树图和状态图一样,移位寄存器M2和M3的四种状态分别对应着状态a、b、c和d,并且它们所具体描述的状态也不发生变化,网格图中的节点代表着编码器的状态。图中仍用实线表示新输入信息位为0,虚线表示新输入信息位为1,输出分支字标注在网格图分支上。另外在图2-9中,给出了

42、输出信息位位10111时,网格图中的编码路径。由图可知,此时输出编码序列为:11 10 00 01 10。同用码树图表示的编码结果相同。2.3 本章小结本章主要介绍了卷积码的基本概念和卷积码编码器的基本结构和工作原理,并以(2, 1, 3)卷积编码器为例,给出了卷积码编码器的3种表示方法,矩阵表示,连接表示,几何表示。本章在介绍卷积码编码原理的同时,也为下章介绍其译码算法打下了基础,特别是关于卷积编码器状态图和网格图的内容,对于下章重点研究的Viterbi译码算法的论述具有十分重要的意义。3 卷积码的译码算法卷积码的译码方法可以分为两类:代数译码和概率译码。代数译码是利用卷积码本身的代数结构进

43、行译码,不用考虑信道的统计特性。大数逻辑译码是代数译码的一种主要方法。而概率译码,又称最大似然译码,是基于卷积码的特点和信道的统计特性进行计算。主要方法有序列译码和维特比译码算法等。本章对大数逻辑译码、序列译码序列和Viterbi译码作出介绍,并详细给出了viterbi译码算法的原理及译码过程。3.1 大数逻辑译码和序列译码3.1.1 大数逻辑译码在第一章中已经提到大数逻辑译码虽然性能相对较差,但它的提出使得卷积码的实际应用进程大大加快。其运算过程是基于卷积码的代数表述的,下面对其工作原理加以说明。图3-1 大数逻辑译码一般工作原理在介绍卷积编码的矩阵表示时已经提到,卷积码是一种线性码。线性码

44、有可能用矫正子指明接收码组中的错码位置,从而纠正错码1。图3-1中就是利用此原理纠正错码。图中首先将所接收到的码元序列信息位暂时存放在移位寄存器中,并根据该码元序列的信息位和监督位计算得出校正子。然后也将计算得出的校正子暂时存放在移位寄存器中,并用它来检测错码的位置。在信息位移存器的输出一侧,连接着一个模2加法电路,当检测到输出信息位有错时,在输出的信息位上加“1”,从而将错码纠正。上述的错码检测过程是采用二进制码的大数逻辑译码算法,其利用一组正交校检方程组进行计算。这里有必要说明一下正交校检方程组的定义:假如被校检的那个信息位出现在校检方程组的每一个方程中,而其他的信息位最多出现在方程组中的

45、一个方程中,则称这组方程为正交校检方程。故可以根据被错码是否影响了方程组中大多数的方程来判断该信息位是否错了。下面将给出一个实例来简要说明这一过程。图3-2 (2, 1, 6)卷积编码器原理方框图图3-2给出了一个(2, 1, 6)卷积编码器。当输入序列为时,其信息位bi和监督位ci的关系如下: (3-1)由上式可以得出监督关系式如下: (3-2)式(3-2)中的Si(i = 16)称为校正子,经过简单的线性变换后,可以得出如下校验方程组: (3-3)观察式(3-3),按照上述正交校检方程组的定义可以看出,只有信息位b1出现在方程组的每一个方程中,其他信息位和监督位均最多只出现一次。因此,在接

46、收端解码时,观察b1c1至b6c6 等12个码元,仅当b1出现错误时,式(3-3)中才可能有3个或3个以上方程等于“1”。从而纠正b1的错误。按照这一原理得到的(2, 1, 6)卷积码译码器原理框图如图3-3所示。图3-3 (2, 1, 6)卷积码译码器原理方框图由上图可见,当信息位出现一个错码时,仅当其位置在信息移位寄存器的第6、3、2和1级时,才使得校正子等于“1”,此时校正子序列为100111;另外,当监督位出现一个错码时,校正子序列为100000。由此可知,当校正子序列中出现第一个“1”时,表明已经检测出来一个错码。至于是信息位出错,还是监督位出错,就要观察校正子序列后面的几位码元。图

47、中的门限电路的输入代表式(3-3)方程组中的4个方程的电压。门限电路将它们非模2相加,当结果不小于等于3时,门限电路输出为“1”,它除了被送到输出端的模2加法器上纠正输出码元b1的错码外,还用来纠正校正子移存器中纠正其中的错误。3.1.2 序列译码序列译码24是一种最大似然译码,其是基于码树图的一种译码算法。在前面介绍可以看出,卷积码的编码过程用码树图表示时,就相当于在码树的分支上前进。码树图的每条路径都表示一个发送序列,在发送的过程中,序列会产生错码,则接收端译码器的接收序列与原序列相比,会有不同。此时要求译码器译码时可以从接收序列最大可能地推测出发送序列,在码树图中就是对应的特定路径。序列译码的过程就是对一个接收码字序列在码树图上寻找最大似然路径的过程。下面给出序列译码的一般步骤:(1) 对接收到的编码序列,寻找码树图的一个子集,其应包含该编码序列的所有可能序列地并且要求子集包含的路径尽量少以减小运算量。(2) 从确定好的子集中选出一条路径,按照定义好的方式比较,判断其是否为有可能是发送路径,是则继续

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁