您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 卷积码编码及其维特比译码的C54x
卷积码编码及其维特比译码的C54xSimulator仿真试验郭焕丽张旭博王晓芬主要内容卷积码编码原理维特比译码原理Matlab实验DSP仿真实验1.卷积码编码卷积编码则把k比特信息段编成n比特的码组,但所编的n长码组不仅同当前的k比特信息段有关联,而且还同前面的(N-1)个信息段有关联,人们常称这N为该卷积码的约束长度。一般来说,对于卷积码,k和n是较小的整数,常把卷积码记作(n,k,N)卷积码,它的编码效率为R=k/n。1.1卷积码的图形描述(2,1,2)卷积码编码器DD++输入路径2路径1输出图1生成多项式:上式也可以写成二进制或八进制(1)(2)(1)(2)101,1115,7gggg(1)2(2)2()1()1gDDgDDD1.2卷积码的描述1.树状图树状图描述的是在任何数据序列输入时,码字所有可能的输出。(2,1,2)卷积码的编码可以画出其树状图如图2所示。图2:(2,1,2)卷积码的树状图2.格图也称网络图或篱笆图,它由状态图在时间上展开而得到,如图3所示。图中画出了所有可能的数据输入时,状态转移的全部可能轨迹,实线表示数据为0,虚线表示数据为1,线旁数字为输出码字,节点表示状态。图3:(2,1,2)卷积码的网格图2.卷积码的维特比译码维特比译码是一种最大似然译码算法。最大似然译码算法的基本思路是:把接收码字与所有可能的码字比较,选择一种码距最小的码字作为解码输出。由于接收序列通常很长,所以维特比译码时最大似然译码做了简化,即它把接收码字分段累接处理,每接收一段码字,计算、比较一次,保留码距最小的路径,直至译完整个序列。现以上述(2,1,2)码为例说明维特比译码过程。设发送端的信息数据[00000],由编码器输出的码字A=[0000000000],接收端接收的B=[0100010000]有2位码元差错。下面参照图3的格状图说明译码过程。如图4所示,先选前3个码作为标准,对到达第3级的4个节点的8条路径进行比较,逐步算出每条路径与接收码字之间的累计码距。累计码距分别用括号内的数字标出,对照后保留一条到达该节点的码距较小的路径作为幸存路径。再将当前节点移到第4级,计算、比较、保留幸存路径,直至最后得到到达终点的一条幸存路径,即为解码路径,如图4中实线所示。根据该路径,得到解码结果。图4:维特比译码的网格图译码输出为:000003.卷积码编译码的Matlab仿真1.convenc函数convenc函数为:卷积码编码函数,对k位信息比特进行卷积编码2.poly2trellis函数poly2trellis函数为:卷积码生成矩阵函数3.vitdec函数vitdec函数为译码函数4.卷积码编码的C54xSimulator仿真试验初始化探针从PC文件中读取比特数据主程序完成对输入比特的卷积编码探针将已编码的数据写入文件编码结果对比未编码数据DSP编码后的数据MATLAB编码后的数据Viterbi译码的C54xSimulator仿真试验初始化探针从PC文件中读取比特数据主程序完成对输入比特的译码探针将已译码的数据写入文件译码实验结果对比MATLAB译码结果DSP译码结果
本文标题:卷积码编码及其维特比译码的C54x
链接地址:https://www.777doc.com/doc-3150999 .html