版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
3/4卷积码编码原理分析与建模仿真一、摘要卷积码是一种性能优越的信道编码。它的编码器和译码器都比较容易实现,同时它具有较强的纠错能力。随着纠错编码理论研究的不断深入,卷积码的实际应用越来越广泛。本文简明地介绍了卷积码的编码原理和Viterbi译码原理。并在SIMULINK模块设计中,完成了对卷积码的编码和译码以及误比特统计整个过程的模块仿真。最后,通过在仿真过程中分析了卷积码误比特率与信噪比之间的关系,及卷积码与非卷积码的对比。经过仿真和实测,并对测试结果作了分析。关键词:卷积码编码 建模SIMULINK仿真目录一、摘要 -4-二、设计目的和意义 -6-三、设计原理 -6-3.1卷积码基本概念 -6-3.2卷积码的结构 -6-3.3卷积码的解析表示 -7-3.4卷积码的译码 -7-3.4.1卷积码译码的方式 -7-3.5.2卷积码的Viterbi译码 -8-四、详细设计步骤 -9-4.1卷积码的仿真 -9-4.1.1SIMULINK仿真模块的参数设置及意义 -9-五、设计结果及分析 -14-5.1不同信噪比对卷积码的影响 -14-5.2卷积码的对比 -15-六、总结 -17-七、体会 -17-八、参考文献 -18-二、设计目的和意义因为信道中信号不可避免会受到干扰而出错。为实现可靠性通信,主要有两种途径:一种是增加发送信号的功率,提高接收端的信号噪声比;另一种是采用编码的方法对信道差错进行控制。前者常常受条件限制,不是所有情况都能采用。而编码理论可以解决这个问题,使得成本降低,实用性增强。随着现代通信的发展,卷积码以其高速性和可靠性在实际应用中越来越广泛。1967年Viterbi译码算法的提出,使卷积码成为信道编码中最重要的编码方式之一。在卷积码中,因为Viterbi算法效率高,速度快,结构相对简单等特点,被广泛应用于各种数据传输系统。特别是深空通信、卫星通信系统中。因此采用Viterbi译码算法具有非常现实的意义。三、设计原理本文在分析卷积码编译码器原理的基础上,通过MATLAB的SIMULINK模块对卷积编码、解码进行仿真。通过仿真可以更清楚的认识到卷积码的编码,解码的各个环节,并对仿真结果进行了分析。得出卷积码Viterbi译码的误比特性能的分析,从而验证了卷积码的正确性。3.1卷积码基本概念卷积码是一种性能优越的信道编码。(n,k,N)表示把k个信息比特编成n个比特,N为编码约束长度,说明编码过程中互相约束的码段个数。卷积码编码后的n个码元不仅与当前组的k个信息比特有关,而且与前N-1个输入组的信息比特有关。编码过程中相互关联的码元有N×n个。R=k/n是卷积码的码率,码率和约束长度是衡量卷积码的两个重要参数。卷积码的编码描述方式有很多种:冲激响应描述法、生成矩阵描述法、多项式乘积描述法、状态图描述,树图描述,网格图描述等。卷积码的纠错能力随着N的增加而增大,而差错率随着N的增加而指数下降。在编码器复杂性相同的情况下,卷积码的性能优于分组码。分组码的译码算法可以由其代数特性得到。卷积码虽然可以采用适用于分组码的门限译码(即大数逻辑译码),但性能不如维特比译码和序列译码。3.2卷积码的结构图2-1卷积码的编码器一般都比较简单。图2-1是一般情况下的卷积码编码器框图。它包括:一个由N段组成的输入移位寄存器,每段有k级,共Nk位寄存器;一组n个模2和相加器;一个由n级组成的输出移位寄存器。对应于每段k个比特的输入序列,输出n个比特。由图可知,n个输出比特不但与当前k个比特的输入比特有关,而且与以前的(N-1)k个输入信息有关。整个编码过程可以看成是输入信息序列与由移位寄存器和模2加法器的连接方式所决定的另一个序列的卷积,卷积码由此得名。图2-2如图2-2是卷积码(4,3,2)卷积编码器的一个框图。左边是信息的输入。下面分别是系统位输出和校验位输出。其中间是6个移位寄存器和4个模2加法器。简单的说就是信息位经过移位寄存器和一个模2加法器产生一个系统位和校验位加在一起输出。可以看出:每输入一个比特,移位寄存器中就向右移动一个位子。原来的第四个寄存器就被移出。可见卷积编码不只与现在的输入比特有关还与前面的1个比特有关。在这里,其中约束长度是N=2,k=3,n=4所以码率R=k/n=3/4。3.3卷积码的解析表示除上述图解表示方法外,常常还用解析表示方法描述卷积码,即延时算子多项式。在延时算子多项式表示中,编码器中的移位寄存器与模2加法器的连接关系以及输入、输出序列都表示为延时算子D的多项式。在一般情况下,输入序列可表示为:(3-1)变量D的幂的次数等于相对于时间起点的单位延时数目,时间起点通常选在第1个输出比特,ml,m2,m3,m...为输入比特的二进制表示(1或0)。用D算子多项式表示移位寄存器各级与各模2项连接关系时。若某级寄存器与某模2和相连,则多项式中相应项的系数为1,否则为0(表示无连接)。通常把表示移位寄存器与模2和连接关系的多项式称为生成多项式,因为由它们可以用多项式相乘计算出输出序列。卷积码的图解与解析表示方法各有特点。用延时算子多项式表示卷积码编码器的生成多项式最为方便。网格图对于分析卷积码的译码算法十分有用。3.4卷积码的译码3.4.1卷积码译码的方式卷积码的译码方式有三种:(1)1963年由梅西((Massey)提出的门限译码,这是一种基于码代数结构的代数译码,类似于分组码中的大数逻辑译码;(2)1963年由费诺(Fano)改进的序列译码,这是基于码的树状图结构上的一种准最佳的概率译码;(3)1967年由维特比提出的Viterbi算法。这是基于码的网(trellis)图基础上的一种最大似然译码算法,是一种最佳的概率译码方法。其中,代数译码,利用编码本身的代数结构进行译码,不考虑信道本身的统计特性。该方法的硬件实现简单,但性能较差,其中具有典型意义的是门限译码。另一类是概率译码,这种译码通常建立在最大似然准则的基础上。由于计算是用到了信道的统计特性.因而提高了译码性能,但这种性能的提高是以增加硬件的复杂度为代价的。常用的概率译码方法有维特比译码和序列译码。维特比译码具有最佳性能,但硬件实现复杂;门限译码性能最差,但硬件简单;序列译码在性能和硬件方面介于维特比译码和门限译码之间。3.5.2卷积码的Viterbi译码卷积码概率译码的基本思路是:以接收码流为基础,逐个计算它与其他所有可能出现的、连续的网格图路径的距离,选出其中可能性最大的一条作为译码估值输出。概率最大在大多数场合可解释为距离最小,这种最小距离译码体现的正是最大似然的准则。卷积码的最大似然译码与分组码的最大似然译码在原理上是一样的,但实现方法上略有不同。主要区别在于:分组码是孤立地求解单个码组的相似度,而卷积码是求码字序列之间的相似度。基于网格图搜索的译码是实现最大似然判决的重要方法和途径。用格图描述时,由于路径的汇聚消除了树状图中的多余度,译码过程中只需考虑整个路径集合中那些使似然函数最大的路径。如果在某一点上发现某条路径已不可能获得最大对数似然函数,就放弃这条路径,然后在剩下的“幸存”路径中重新选择路径。这样一直进行到最后第L级(L为发送序列的长度)。由于这种方法较早地丢弃了那些不可能的路径,从而减轻了译码的工作量,Viterbi译码正是基于这种想法。对于(n,k,K)卷积码,其网格图中共2kL种状态。由网格图的前K-1条连续支路构成的路径互不相交,即最初2k_1条路径各不相同,当接收到第K条支路时,每条路径都有2条支路延伸到第K级上,而第K级上的每两条支路又都汇聚在一个节点上。在Viterbi译码算法中,把汇聚在每个节点上的两条路径的对数似然函数累加值进行比较,然后把具有较大对数似然函数累加值的路径保存下来,而丢弃另一条路径,经挑选后第K级只留下2K条幸存路径。选出的路径同它们的对数似然函数的累加值将一起被存储起来。由于每个节点引出两条支路,因此以后各级中路径的延伸都增大一倍,但比较它们的似然函数累加值后,丢弃一半,结果留存下来的路径总数保持常数。由此可见,上述译码过程中的基本操作是,“加-比-选”,即每级求出对数似然函数的累加值,然后两两比较后作出选择。有时会出现两条路径的对数似然函数累加值相等的情形,在这种情况下可以任意选择其中一条作为“幸存”路径。卷积码的编码器从全零状态出发,最后又回到全零状态时所输出的码序列,称为结尾卷积码。因此,当序列发送完毕后,要在网格图的终结处加上(K-1)个己知的信息作为结束信息。在结束信息到来时,由于每一状态中只有与已知发送信息相符的那条支路被延伸,因而在每级比较后,幸存路径减少一半。因此,在接收到(K-1)个己知信息后,在整个网格图中就只有唯一的一条幸存路径保留下来,这就是译码所得的路径。也就是说,在己知接收到的序列的情况下,这条译码路径和发送序列是最相似的。由上述可见,Viterbi译码过程并不复杂,译码器的运行是前向的、无反馈的。它接收一段,计算一段,选择一段最可能的码段(分支),从而达到整个码序列是一个有最大似然函数的序列。传输序列很长时,判决需要的长延时和相当大的存储量是我们无法承受的。因此,实际应用中采用截短Viterbi算法,即不需要接收到所有序列才进行判决,当译码器接收并处理完了固定的T(T<<L)个码段后,在接收第(T+1)个码段的时候,它将比较前T级的路径量度,然后从中选取最小者,由此得到与最小量度对应的幸存路径,将此路径对应的T个码段判决输出。T称为截短深度,T选的足够大时,则对译码器输出的译码错误概率影响很小。四、详细设计步骤4.1卷积码的仿真图4-1卷积码的编码译码框图如上图4-1的信号流程可以表示为先由BernoulliBinaryGenerator(贝努利二进制序列产生器)产生一个0,1等概序列,经过ConvolutionalEncoder(卷积编码器)对输入的二进制序列进行卷积编码,并用BPSK调制方式调制信号。加入信道噪声(高斯白噪声)后再经过BPSK解调制后送入ViterbiDecoder(Viterbi译码器)进行硬判决译码。最后经过ErrorRateCalculation(误码统计)后由Display(显示)输出。然后通过Selector(数据选通器)将结果输出到Toworkspace(工作区间)。4.1.1SIMULINK仿真模块的参数设置及意义在建立如图4-1的仿真模块后,对各个模块分别一一进行设置后并运行仿真。图4-2贝努利二进制序列产生器模块的设置框图如上图4-2是贝努利二进制序列产生器模块的设置框图,其中参数有三项:第一项probabilityofazero取值为0.5,表示0和1出现的概率相等。Initialseed表示随机种子数。不同的随机种子数将产生不同的二进制序列,特定的随机种子数可以产生一个特定的二进制序列。Sampletime=0.0001表示抽样时间,也就是说输出序列中每个二进制符号的持续时间是0.0001秒。Samplesperframe表示每帧的抽样数用来确定每帧的抽样点的数目。Outputdatetype是用来确定帧的输出格式。图4-3卷积编码器模块的设置框图如上图4-3是卷积编码器模块的设置框图。其中Trellisstructure(Trellis结构)中通过poly2trellis()函数把卷积码的约束长度,生成多项式以及反馈多项式转换成Trellis结构的形式。图4-4BPSK调制器模块的设置框图如上图4-4是BPSK调制器模块的设置框图。Phaseoffset(rad)(相位偏移),这里设置为0。图4-5误比特统计模块的设置框图如上图4-5是误比特统计模块的设置框图。其中Receivedelay表示接收延迟,意思是在通信接收端口需要对接收到的信号进行解调,解码或解交织而带来一定的延迟,使得到达误码统计模块接收端的信号滞后于发送端的信号。为了补偿这种延迟这里设置为0。Computationdelay表示计算延迟,在仿真过程中,有时间需要忽略最初的若干个输入数据就通过计算延迟来实现。这里设置为0。Computationmode表示计算模式,帧的计算模式(Entireframe),误码统计模块对发送端和接收端的所有输入数据进行统计。outputdata是输出数据,这里设置为Port的意思是表示把统计数据从端口中输出。workspace表示把统计数据输出到工作区。图4-6数据选通器模块的设置框图如上图4-6是数据选通器模块的设置框图。Inputportwidth表示输入端口的个数为3。图4-7卷积码译码器模块的设置框图如上图4-7是卷积码译码器模块的设置框图。Trellisstructure:Trellis结构(前面已说明)。Decisiontype是指判决类型,有3种:(1)Unquantized(非量化)(2)HardDecision(硬判决),(3)SoftDecision(软判决)Tracebackdepth表示反馈深度。它的值会影响译码精度和解码延迟。Operationmode是指操作模式。在Truncated模式下,解码器在每帧数据结束的时候总能恢复到全0状态,它与卷积编码器的oneachframe复位方式相对应。五、设计结果及分析5.1不同信噪比对卷积码的影响如下图4-10,对于码率一定的卷积码,当信道信噪比发生变化时,系统的误码性能也会随之发生变化,我们以码率R=3/4的卷积码为例展开分析。从图5-1中的误比特率曲线可以看到,当码率为3/4一定时,在SNR>-2dB时,系统的误比特率迅速下降。图5-1不同的信噪比卷积码误码性能的影响分析不同约束长度对卷积码误码性能影响用到的程序如下:clc;x=-10:5;%x表示信噪比y=x;%y表示信号的误比特率holdoff;%准备一个空白图形fori=1:length(x)SNR=x(i);%信道的信噪比依次取x中的元素sim('convh');%运行仿真程序,得到的误比特率保存在工作区变量BitErrorRate中y(i)=mean(BitErrorRate);%计算BitErrorRate的均值作为本次仿真的误比特率endsemilogy(x,y);%绘制x和y的关系曲线图,纵坐标采用对数坐标gridon,title('误码率随信噪比的变化图')holdon%保持已经绘制的图5.2卷积码的对比如图5-2所示结果,在信噪比超过10dB之后,卷积编码传输与非卷积编码传输的误比特率基本相等,而在SNR<10时,卷积编码的传输误比特率远小于非卷积编码传输的情况。图5-2卷积码与非卷积码误码率对比图卷积码与非卷积码误码率对比的程序如下:SNR=1:0.5:15;%信噪比取值;单位为db\Ns=10;datalength=256;%每个数据符号中可用子载波error_bit_rata_code=0;%经卷积编码后解调出的数据的误比特率error_bit_rata_nocode=0;%未经卷积编码后解调出的数据的误比特率fori=1:1:29Signal=double(rand(1,datalength*Ns)>0.5);trel=poly2trellis(7,[155117]);code=convenc(Signal,trel);%进行串并转化Para=reshape(code,datalength,2*Ns);%进行QPSK数据调制,将数据分为两个通道,SigPara为datalength行2Ns列forj=1:Nss1(:,j)=Para(:,2*j-1);%ich为datalength行Ns列s2(:,j)=Para(:,2*j);endkmod=1./sqrt(2);s1=s1.*kmod;s2=s2.*kmod;x=s1+s2.*sqrt(-1);%产生复信号y=ifft(x);%通过傅立叶反变换,将频域数据转换为时域数据ich2=real(y);%I信道取变换后的实部qch2=imag(y);%Q信道取变换后的虚部ich4=reshape(ich2,1,datalength*Ns);qch4=reshape(qch2,1,datalength*Ns);TrData=ich4+qch4.*sqrt(-1);%加入高斯白噪声ReData=awgn(TrData,SNR(i),'measured');idata=real(ReData);qdata=imag(ReData);%进行串并转化idata1=reshape(idata,datalength,Ns);qdata1=reshape(qdata,datalength,Ns);Rex=idata1+qdata1.*sqrt(-1);ry=fft(Rex);ReIChan=real(ry);ReQChan=imag(ry);ReIChan=ReIChan/kmod;ReQChan=ReQChan/kmod;forj=1:NsRePara(:,2*j-1)=ReIChan(:,j);RePara(:,2*j)=ReQChan(:,j);endReSig=reshape(RePara,1,datalength*Ns*2);%符号抽样判决ReSig=double(ReSig>0.5);%维特比译码tblen=log2(trel.numInputSymbols)[dmpin]=vitdec(ReSig,trel,tblen,'cont','soft',1);%统计错误比特数,并计算误比特率error_bit_code=sum(abs(d(2:datalength*Ns)-Signal(1:datalength*Ns-1)));error_bit_nocode(i)=sum(abs(ReSig-code));error_bit_rata_code1=error_bit_code/length(Signal);error_bit_rata_code(i)=error_bit_rata
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年长春东城国有资本投资运营(集团)有限公司公开招聘工作人员(6人)考试重点题库及答案解析
- 2026年渤海理工职业学院高职单招职业适应性测试模拟试题及答案详细解析
- 2026江苏徐州医科大学附属医院长期招聘28人笔试备考题库及答案解析
- 2026四川天府新区第二十幼儿园教师招聘1人笔试备考试题及答案解析
- 2026年云南交通职业技术学院单招职业技能考试参考题库含详细答案解析
- 2026年郑州卫生健康职业学院单招综合素质考试模拟试题含详细答案解析
- 2026辽宁营口市站前区消防救援大队政府专职消防员招聘6人笔试备考题库及答案解析
- 2026抚州市东临环城高速公路有限公司招聘2人笔试备考试题及答案解析
- 2026上半年安徽事业单位联考淮北市市直及市辖区招聘94人参考考试试题及答案解析
- 2026四川自贡市沿滩区选聘(市场化选聘)区属国有企业领导人员2人笔试备考题库及答案解析
- 小学语文课堂美育融合教学策略
- 2025年贵州省高考地理试卷试题真题及答案详解
- 国家自然博物馆面试常见问题及应对策略
- 园林环卫安全培训内容课件
- (2025年标准)签下恋爱协议书
- 生产流程控制
- 餐厨废弃物处置制度(3篇)
- GB/T 44233.2-2024蓄电池和蓄电池组安装的安全要求第2部分:固定型电池
- 船舶建造工艺船台装配
- 居民死亡医学证明(推断)书+空白表
- 空气炸锅电子食谱
评论
0/150
提交评论