




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、于matlab/simulink的卷积码编码技术仿真与性能分析学生姓名:付应文指导老师:胡双红摘要木课程设计主要解决通信系统中基带传输信道纠错编码技术中的卷积 码编码技术。产生一段随机的二进制非归零码的基带信号,对其进行卷积编码, 而后采用维特比(viterbi)译码输出,并通过matlab软件进行设计与仿真,并进行差 错率-误码率曲线绘制和性能分析。关键词课程设计;卷积码编码器;维特比译码器,matlab; simulink;设计与仿真,性能 分析。1引言本课程设计主要解决信号传输过程屮的卷积编码和卷积解码的问题。对一个串非归零二 进制信号卷积码序列进行维特比(viterbi)译码输出,并通
2、过matlab软件进行设计与仿真。1.1课程设计目的卷积码是一种向前纠错控制编码。它将连续的信息比特序列映射为连续的编 码器输出符号。这种映射是高度结构化的,使得卷积码的译码方法与分组码译码 所采用的方法完全不同。可以验证的是在同样复杂度情况下,卷积码的编码增益 要大于分组码的编码增益。对于某个特定的应用,采用分组编码还是采用卷积编 码哪一种更好则取决于这一应用的具体情况和进行比较吋可用的技术。本课程设计的目的主要是仿真通信系统屮基带传输信道纠错编码技术屮的卷积码编码 技术。产生一段随机的二进制非归零码的基带信号,对其进行卷积码编码后再送入二进制对 称信道传输,在接收端对其进行卷积解码以恢复原
3、信号,观察还原是否成功,改变二进制对 称信道的差错率,计算传输前后的误码率,绘制信道差错率-误码率曲线,并与理论曲线比 较进行说明。1.2课程设计的原理1.2.1卷积编码原理卷积码,乂称连环码,是由伊莱亚斯(p.elias)于1955年提出来的一种非分组 码。卷积编码的最佳译码准则为:在给定已知编码结构、信道特性和接收序列的 情况下,译码器将把与已经发送的序列最相似的序列作为传送的码字序列的估 值。对于二进制对称信道,最相似传送序列就是在汉明距离上与接收序列最近的 序列。卷积码的编码器一般都比较简单。图1-1卷积码编码器原理框图图1-1是一般情况下的卷积码编码器框图。它包括nk级的输入移位器,
4、一组n 个模2和加法器和n级的输出移位寄存器。对应于每段k比特的输入序列,输出n 个比特。由图可知,n个输出比特不但与当前的k个输入比特有关,而且与以前的 (n-l)k个输入信息比特有关。整个编码过程可以看成是输入信息序列与由移位寄 存器和模2加法器的连接方式所决定的另一个序列的卷积,卷积码由此得名。本 文采用的是冲击响应描述法编码思想。输入n=2输出1-2卷积编码器如图1-2是卷积码(2, 1,3)卷积编码器的一个框图。左边是信息的输入。 下面分别是系统位输出和校验位输出。其屮间是3个移位寄存器和一个模2加法 器。简单的说就是信息位经过移位寄存器和一个模2加法器产生一个系统位和校 验位加在一
5、起输出。可以看出:每输入一个比特,移位寄存器中就向右移动一个 位子。原来的第三个寄存器就被移出。可见卷积编码不只与现在的输入比特有关 还与前而的3-1个比特有关。所以约束长度是3。在这里,其中k=1 , n=2所以 码率 r=k/ n=l/2o1.2.2维特比译码原理卷积码的译码方法有两大类:一类是大数逻辑译码,又称门限译码(硬判决); 另一种是概率译码(软判决),概率译码又分为维特比译码和序列译码两种。门限 译码方法是以分组码理论为基础的,其译码设备简单,速度快,但其误码性能要 比概率译码法差。当卷积码的约束长度不太大时,与序列译码相比,维特比译码器比较简单, 计算速度快。维特比译码算法是1
6、967年由viterbi提出,近年来有大的发展。目 前在数字通信的前向纠错系统中用的较多,而在卫星深空通信中应用更多,该 算法在卫星通信中己被采用作为标准技术。采用概率译码的基本思想是:把己接收序列与所有可能的发送序列做比较, 选择其中码距最小的一个序列作为发送序列。如果发送l组信息比特,那么对 于(n,k)卷积码来说,可能发送的序列有2kk个,计算机或译码器需存储这些序列 并进行比较,以找到码距最小的那个序列。当传信率和信息组数l较大吋,使 得译码器难以实现。维特比算法则对上述概率译码做了简化,以至成为了一种实 用化的概率算法。它并不是在网格图上一次比较所有可能的2kk条路径(序列),而是接
7、收一段,计算和比较一段,选择一段最大似然可能的码段,从而达到整个 码序列是一个最大似然值得序列。下面以图1-3的(2, 1,3)卷积码编码器所编出的码为例,来说明维特比解码 的方法和运作过程。为了能说明解码过程,这里给出该码的状态图1-400/、图1-3卷积码编码器图1-4 (2,1,3)卷积码状态图所示。维特比译码需要利用图来说明移码过程。根据卷积码画网格的方法,我们 可以画出该码的网格图,如图1-5所示。该图设输入信息数目l=5,所以画l+n=8 个时间单位,图中分别标以0至7。这里设编码器从a状态开始运作。该网格图 的每一条路径都对应着不同的输入信息序列。由于所有可能输入信息序列共有 2
8、kl个,因而网格图屮所有可能的路径也为2kl条。这里节点a=00, b=01, c=10, d=l 1。节点号 0123456700 00 00 00 00 00 00设输入编码器的信息序列为(11011000),则由编码器对应输出的序列为 y=(1101010001011100),编码器的状态转移路线为abdcbdca。若收到的序列 r=(0101011001011100),对照网格图来说明维特比译码的方法。由于该卷积码的约束长度为6位,因此先选择接收序列的前6位序列 rm010101)同到达第3时刻的可能的8个码序列(即8条路径)进行比较,并计算 出码距。该例中到达第3时刻a点的路径序列是
9、(000000)和(111011),他们与r!节点号 0123的距离分别为3和4;到达第3时刻b点的路径序列是(000011)和(111000),他们 与ri的距离分别为3和4;到达第3时刻c点的路径序列是(001110)和(110101), 他们与ri的距离分别为4和;到达第3吋刻d点的路径序列是(001101)和 (110110),他们与的距离分别为2和3。上述每个节点都保留码距较小的路径 作为幸存路径,所以幸存路径码序列是(000000)、(000011)、(1101001)和(001101), 如图1-6所示。用于上而类似的方法可以得到第4、5、6、7时刻的幸存路径。d 參 狼 *图1
10、-6维特比译码第3时刻幸存路径需要指出的是,对于某个节点,如果比较两条路径与接收序列的累计码距值 相等时,则可以任意选者一条路径作为幸存路径,吃时不会影响最终的译码结果。 在码的终了时刻a状态,得到一条幸存路径。如果1-7所示。由此可看到译码器节点号 0123456781-7第8时刻幸存路径输出是r=(l 101010001011100),即可变换成序列(11011000),恢复了发端原始信 息。比较r和r序列,可以看到在译码过程中已纠正了在码序列第1和第7位 上的差错。当然如果差错出现太频繁,以致超出卷积码的纠错能力,还是会发生 纠误的。2 matlab中卷积码编码器和译码器的设计与仿真2.
11、1matlab/simulink卷积编码信源模块介绍本设计是采用语音文件作为信源,所以需要实现录制还有段声音文件 bbbb.wav,放入work文件夹下.整个信源模块如图2-1lj jjt m ®叫03<* 十 了- f i1u.u inornoi 二jfi©m wavefilefrom filt bbbbajout«o)hzzlcw10bffia-ljwcompiessorquantizerinteet to 8d converleimuxtofumee3hpintoaf u g(tconv«rtoifum« statusconv
12、71;tslon10uwer1unbuhcrlout22-1信源模块其中,各个元件具体参数如下图所示:h source block parameters: frcm 罾ave filefrom wave file (mask) (link)reads aucio data samples from a standard windows pcm format ".wav" aucio file. when looping, enter number of limes to 脚 ihe file's data, or enler "inr to loop in
13、definite.only foe u$e with windows platforms.parametefsfile name:bbbb.wa*samples per output frame:1minimum number of samples for each read from file: 1 一datatype: double loopnumber of times to play file:11samples restart immediately after last output slarl-of-file indicator output end-of-file indica
14、tor0 function block paraieters: zero-order holdzaofldeihold zm編paart$s雄偏麟2-2 from wave file 参数设置2-3 zero-order ho id 参数设置okcancel help将所得到的釆样信号进行pcm编码,pcm编码模块如图2. 1-3,再通过并串 转换,如图2-4;compressorconverter2-4 pcm编码模块conversionl buffed unbufferl2-5并串转换模块function block paraaeters: relay具体参数设置如下列各图所示:h fun
15、ction block parabeters: saturationsaturationlimit inpul signal to the upper and lower salurahon values.parameters upper limitiblower limit 10 t reat as gain when linearizing 0 enable 2ero crossing delection sample time (-1 for inherited):relayouput the specified 'on' or 'off' value b
16、y comparing the inpul lo the specified ihieshows the on/off slate of the (day is nol affected by rpd between (he upper and lowef smis.mainsignal dala typessvich on pointoh p«nlepsoutput when on:ouipu when oil:10 enable zefoaossing de*ecdon sample lime (-1 fa inherited!1/8000okcanedhelpapply0kca
17、redhelpapp图2-6 saturation参数设置2-7 relay参数设置图2-8 a-law compressor参数设置图2-9 buffer参数设置在语咅信号经过信源上述模块后,模拟信号将会变为非归零二进制基带信 号,接着就可以进行本次设计的关键步骤了一一卷积编码2.2 matlab/simul ink卷积编码信源模块介绍在得到二进制非归零信号后,为了增加数据的可靠性,就可以进行卷积编码了。 卷积编码模块设计如图2-10所示。图2-10卷积编码,卷积解码模块此模块分别由convolutional encoder(卷积码编码器),bsc信道,viterbi decoder (维特
18、比译码器)。其各元件具体参数设置如下列各图所示:2-11卷积编码器参数设置图2-12信道参数设置图2-13维特比译码器参数设置信道中差错率可以人为修改,这里暂时设为0。通过示波器观测,如图2-14 口j以看出延时34个码元。故traceback depth参数设置为34图2-14卷积编码,卷积解码2.3 matlab/simulink卷积编码信源模块介绍为了得到完整的语音信号,就得接受到的信号进行延时补偿,pcm解码, 串并转换,最后进过缓冲器,导入到工作文件夹下。其原理图如图2-15所示;各元件参数设置均和编码时参数相同。最后接入语音生成元件。其参数设置 如图下,图2-16 to wave
19、file参数设置2.4 matlab/simulink卷积编码维特比译码系统测试完成上述三大步骤/在接入error rate calculation进行误码率统计。整个原理图如图2-17c>«5pu|f图2-17卷积编码维特比译码系统由图2. 2-5可知,本系统延时34,故作如下图参数设置图 2-18 error rate calculation 参数设置完成上述参数设置后点击运行。运行结束后,便可以在work文件夹下生成 名为fuyingwen. wav的声咅文件,点击播放,所得声音和输入声音一样,说明该 设计成功。各示波器显示如图2-19:'ii- :mnnmmmi
20、iiiiiuijiijiimiiiimmrawoil側ralimuo:皿nnnifm imu mi皿mnnniiimmmrfirmmnmrmnimiioiiimuitmmoiraii图2-19卷积编码输入,维特比译码输出由图2-17可以看出,输入和输出对比,出了在时间上有34个码元的延迟以 外,波形是一样的,所以此卷积编码,维特比译码正确。图2-30输入波形和输出波形对比由图2-30所示,输入波形和输出波形一样,这是因为信道的差错率为0改变信道的差错率为0. 05。输入输出波形对比如图2-31;2-31加入噪声的输入波形和输出波形由此可知,信道的特性是影响信息传输的一大因素,只有信道的差错率在
21、一 定范围内,才能保证信息的正确传输。3 matlab中卷积码差错率误码率分析编制m文件maidi.m,使xy.mdl在不冋的信噪比条件下重复执行前面建立 的项目maidi.mdlo然后绘制信道的差错率与编码信号误码率之间的关系曲线图。m文件代码如下:%x表示差错率x=0: 0.01: 0.05%y表示信号的误比特率y=x;%重复运行xy.mdl,检验不同条件k硬判决译码的性能for i=l:length(x)%信道的信噪比依次取x中的元素ful=x(i);%运行仿真程序,得到的误比特率保存在工作区变量biterrorrate巾sim(1maidi1);%计算biterrorrate的均值作为
22、木次仿真的误比特率y(i)=mean(datal);end%绘制和7的关系曲线图,纵坐标采用对数坐标semilogy(x,y);执行此m文件,得到如图3.1所示的关系曲线图,由此图可见,随着信道 差错率的提升,维特比译码所得结果的误码率升高,信道的可信度降低,图3.1差错率误码率曲线由图3.1差粗率一一误码率可以看出,随着差错率的升高,到误码率大于0.02时后误码率开始明显变大,可信将度越来越低。0.02以前。误码率几乎没有什么 变化,这就说明,卷积码的纠错能力也是有限的,并且超出纠错范围,误码率就 会剧烈增加。但是它在很大程度上,提高的了信息的可信度。4结束语此课程设计对整个通信系统含的编码、传输和译码都进行了设计与仿真, 从这些过程中我们看到了通信系统的基本工作原理。通过整个卷积码系统的设计 与仿真,使我们加深了对卷积码的理解,掌握维特比译码的基本思路,知道如何 进行误码率分析从而选者合适的信道传输信号,更重要的是学会丫使用matlab 作为学工具来对我们的通信系统进行设计和仿真等操作,这对我们以后的学习 和工作有着重要意义。通过本次课题的研究,针对viterbi算法在理论和实现两方面分别进行了较 深的研宂。理论方而,在深入了解了用于卷积码的vit
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人才引进落户管理办法
- 企业人员日常管理办法
- 企业供暖运营管理办法
- 人才公寓合租管理办法
- 低价出租架子管理办法
- 人员岗位调整管理办法
- 住宅违章装修管理办法
- 临时流动饭店管理办法
- 交通工程监理管理办法
- 产业支援项目管理办法
- 第三章 科学研究与科学方法论
- 山东黄金归来庄矿业有限公司归来庄金矿矿山地质环境保护与土地复垦方案
- 项目融资计划书
- 针刺伤的预防及处理
- YY/T 0595-2020医疗器械质量管理体系YY/T 0287-2017 应用指南
- LS/T 1222-2020粮食干燥机系统工艺设计技术规范
- GB/T 26636-2011动植物油脂聚合甘油三酯的测定高效空间排阻色谱法(HPSEC)
- GB/T 19869.1-2005钢、镍及镍合金的焊接工艺评定试验
- GB/T 1796.4-2017轮胎气门嘴第4部分:压紧式无内胎气门嘴
- 中考语文非连续性文本阅读10篇专项练习及答案
- 上海高一数学教材电子版
评论
0/150
提交评论