Matlab的卷积码译码器的设计与仿真(共18页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Matlab的卷积码译码器的设计与仿真(共18页).doc》由会员分享,可在线阅读,更多相关《Matlab的卷积码译码器的设计与仿真(共18页).doc(18页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上长沙理工大学通信原理课程设计报告郭林学 院 计算机与通信工程 专 业 通信工程 班 级 学 号 11 学生姓名 郭 林 指导教师 龙 敏 课程成绩 完成日期 2008年1月11日基于Matlab的卷积码译码器的设计与仿真学生姓名:郭 林 指导老师:*摘 要 本课程设计主要解决对一个卷积码序列进行维特比(Viterbi)译码输出,并通过Matlab软件进行设计与仿真,并进行误码率分析。在课程设计中,系统开发平台为Windows Vista Ultimate,程序设计与仿真均采用Matlab R2007a(7.4),最后仿真详单与理论分析一致。关键词 课程设计;卷积码译码
2、器;Matlab;Simulink;设计与仿真1 引 言本课程设计主要解决对一个卷积码序列进行维特比(Viterbi)译码输出,并通过Matlab软件进行设计与仿真。卷积码的译码有两种方法软判决和硬判决,此课程设计采用硬判决的维特比译码。1.1 课程设计目的卷积码是一种向前纠错控制编码。它将连续的信息比特序列映射为连续的编码器输出符号。这种映射是高度结构化的,使得卷积码的译码方法与分组码译码所采用的方法完全不同。可以验证的是在同样复杂度情况下,卷积码的编码增益要大于分组码的编码增益。对于某个特定的应用,采用分组编码还是采用卷积编码哪一种更好则取决于这一应用的具体情况和进行比较时可用的技术1。本
3、课程设计便是通过Matlab设计一个硬判决维特比译码输出的完整电路,并进行误码率分析。1.2 课程设计的原理卷积码,又称连环码,是由伊莱亚斯(P.elias)于1955年提出来的一种非分组码。卷积编码的最佳译码准则为:在给定已知编码结构、信道特性和接收序列的情况下,译码器将把与已经发送的序列最相似的序列作为传送的码字序列的估值。对于二进制对称信道,最相似传送序列就是在汉明距离上与接收序列最近的序列。卷积码的译码方法有两大类:一类是大数逻辑译码,又称门限译码(硬判决,编者注);另一种是概率译码(软判决,编者注),概率译码又分为维特比译码和序列译码两种。门限译码方法是以分组码理论为基础的,其译码设
4、备简单,速度快,但其误码性能要比概率译码法差2。当卷积码的约束长度不太大时,与序列译码相比,维特比译码器比较简单,计算速度快。维特比译码算法是1967年由Viterbi提出,近年来有大的发展。目前在数字通信的前向纠错系统中用的较多,而且在卫星深空通信中应用更多,该算法在卫星通信中已被采用作为标准技术。2 维特比译码原理采用概率译码的基本思想是:把已接收序列与所有可能的发送序列做比较,选择其中码距最小的一个序列作为发送序列。如果发送L组信息比特,那么对于(n,k)卷积码来说,可能发送的序列有2kL个,计算机或译码器需存储这些序列并进行比较,以找到码距最小的那个序列。当传信率和信息组数L较大时,使
5、得译码器难以实现。维特比算法则对上述概率译码做了简化,以至成为了一种实用化的概率算法。它并不是在网格图上一次比较所有可能的2kL条路径(序列),而是接收一段,计算和比较一段,选择一段最大似然可能的码段,从而达到整个码序列是一个最大似然值得序列。下面以图2.1的(2,1,3)卷积码编码器所编出的码为例,来说明维特比解码的方法和运作过程。为了能说明解码过程,这里给出该码的状态图,如图2.2所 mjmj-1mj-2输出序列m1,m2,mj,y1jy2j输入序列00adcb110011010110图2.2 (2,1,3)卷积码状态图图2.1 (2,1,3)卷积码编码器示。维特比译码需要利用图来说明移码
6、过程。根据卷积码画网格的方法,我们可以画出该码的网格图,如图2.3所示。该图设输入信息数目L=5,所以画L+N=8个时间单位,图中分别标以0至7。这里设编码器从a状态开始运作。该网格图的每一条路径都对应着不同的输入信息序列。由于所有可能输入信息序列共有2kL个,因而网格图中所有可能的路径也为2kL条。这里节点a=00,b=01,c=10,d=11。abcd节点号0123456700000000000000111111111111111100000101010101010101010101111110101010图2.3 (2,1,3)卷积码网格图设输入编码器的信息序列为(),则由编码器对应输出
7、的序列为Y=(11100),编码器的状态转移路线为abdcbdca。若收到的序列R=(11100),对照网格图来说明维特比译码的方法。由于该卷积码的约束长度为6位,因此先选择接收序列的前6位序列R1=()同到达第3时刻的可能的8个码序列(即8条路径)进行比较,并计算出码距。该例中到达第3时刻a点的路径序列是()和(),他们与R1的距离分别为3和4;到达第3时刻b点的路径序列是()和(),他们与R1的距离分别为3和4;到达第3时刻c点的路径序列是()和(),他们与R1的距离分别为4和1;到达第3时刻d点的路径序列是()和(),他们与R1的距离分别为2和3。上述每个节点都保留码距较小的路径作为幸存
8、路径,所以幸存路径码序列是()、()、()和(),如图2.4所示。用于上面类似的方法可以得到第4、5、6、7时刻的幸存路径。abcd节点号0123000000111111010101图2.4 维特比译码第3时刻幸存路径需要指出的是,对于某个节点,如果比较两条路径与接收序列的累计码距值相等时,则可以任意选者一条路径作为幸存路径,吃时不会影响最终的译码结果。在码的终了时刻a状态,得到一条幸存路径。如果2.5所示。由此可看到译码器abcd节点号0123110101456780001011100图2.5 第8时刻幸存路径输出是R=(11100),即可变换成序列(),恢复了发端原始信息。比较R和R序列,
9、可以看到在译码过程中已纠正了在码序列第1和第7位上的差错。当然如果差错出现太频繁,以致超出卷积码的纠错能力,还是会发生纠误的。3 Matlab中卷积码译码器的设计与仿真3.1 Matlab维特比译码器模块介绍在Matlab软件的Simulink组件库中包含有的两种卷积码译码模块,即后验概率卷积译码器和维特比译码器。图3.1,图3.2所示是维特比译码器参数设置对话框和模块,它通过维特比译码还原出二进制信号序列。图3.1 维特比译码器参数设置图3.2 维特比译码器模块如果卷积编码器的输入长度为k,输出信号的长度为n,则维特比译码器的输入好输出信号长度分别是n和k的整数倍。维特比译码器模块主要有以下
10、几个参数:(1)Trellis structure(Trellis结构)与维特比一冒起相对应的卷积编码器的Trellis结构。它既可以是Matlab工作区中的一个Trellis变量,也可以是通过poly2trellis()函数产生的Trellis结构。(2)Decision Type(判决类型)维特比译码器德判决类型有3种:Unquantized(非量化)、Hard Decision(硬判决)和Soft Decision(软判决),如表3.1所示。表3.1维特比译码器的判决类型判决类型解码器的输出类型说明Unquantized实数+1表示逻辑0;-1表示逻辑1Hard Decision0, 1
11、0表示逻辑0;1表示逻辑1Soft Decision介于0和2b-1之间的整数,其中b是软判决位的个数0表示具有取值为0的最大概率;2b-1表示具有取值为1的最大概率;介于两者之间的数表示取0和1的相对概率。(3)Number of soft decision bits(软判决的个数)当Decision type设置为Soft Decision时,本参数有效,并且当它的取值为b时,维特比译码器的输出是介于0和2b-1之间的一个整数。(4)Traceback depth(反馈深度)反馈深度D影响着维特比译码的精度,同时也影响着解码的时延(即在输出第一个解码数据之前输出的0的个数)。(5)Oper
12、ation mode(操作模式)维特比译码器有3种操作模式:Continuous、Terminated或Truncated。如果维特比译码器的输出信号是抽样信号,则应该把本参数设置为Continuous模式;当输入信号时帧数据时,操作模式可以是Continuous、Terminated或Truncated。对于Continuous模式,维特比译码器在每帧数据结束时保存译码器的内部状态,用于对下一帧实施解码;在Truncated模式下,解码器在每帧数据结束的时候总能恢复到全零状态,它对应于卷积编码器的On each frame复位方式;Terminated模式适用于卷积编码器的每帧输入信号的末尾
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Matlab 卷积码 译码器 设计 仿真 18
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内