欢迎来到天天文库
浏览记录
ID:23486284
大小:443.00 KB
页数:12页
时间:2018-11-08
《基于matlab的循环码实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、课程名称:信息论与编码课程设计题目:循环码的编码和译码程序设计指导教师:系别:专业:学号:姓名:合作者完成时间:成绩:评阅人:一、实验目的:1、通过实验了解循环码的工作原理。2、深刻理解RS码构造、RS编译码等相关概念和算法。二、实验原理1、RS循环码编译码原理与特点设C使某线性分组码的码字集合,如果对任,它的循环移位也属于C,则称该码为循环码。该码在结构上有另外的限制,即一个码字任意循环移位的结果仍是一个有效码字。其特点是:(1)可以用反馈移位寄存器很容易实现编码和伴随式的计算;(2)由于循环码有很多固有的代数结构,从而可以找到各种简单使用的译码办法。如果一个线性码具有以下的属性,则称
2、为循环码:如果n元组是子空间S的一个码字,则经过循环移位得到的也同样是S中的一个码字;或者,一般来说,经过j次循环移位后得到的也是S中的一个码字。RS码的编码系统是建立在比特组基础上的,即字节,而不是单个的0和1,因此它是非二进制BCH码,这使得它处理突发错误的能力特别强。码长:信息段:(t为纠错符号数)监督段:最小码段:最小距离为d的本原RS码的生成多项式为:g(x)=(x-α)(x-α2)(x-α3)…(x-αd-2)信息元多项式为::m(x)=m0+m1x+m2x2+…+mk-1xk-1循环码特点有:1)循环码是线性分组码的一种,所以它具有线性分组的码的一般特性,且具有循环性,纠错
3、能力强。2)循环码是一种无权码,循环码编排的特点为相邻的两个数码之间符合卡诺中的邻接条件,即相邻数码间只有一位码元不同,因此它具有一个很好的优点是它满足邻接条件,没有瞬时错误(在数码变换过程中,在速度上会有快有慢,中间经过其他一些数码形式,即为瞬时错误)。3)码字的循环特性,循环码中任一许用码经过牡环移位后,所得到的码组仍然是许用码组。对所有的i=0,1,2,……k-1,用生成多项式g(x)除,有:(2—7)式中是余式,表示为:(2—8)因此,是g(x)的倍式,即是码多项式,由此得到系统形式的生成矩阵为:(2—9)它是一个kn阶的矩阵。同样,由G=0可以得到系统形式的一致校验矩阵为:(2
4、—10)已知(7,4)循环码的生成多项式和校验多项式分别为:,。写得其生成矩阵和校验矩阵分别为:2、编码原理:有信息码构成信息多项式,其中最高幂次为k-1;用乘以信息多项式m(x),得到的,最高幂次为n-1,该过程相当于把信息码(,,……,,)移位到了码字德前k个信息位,其后是r个全为零的监督位;用g(x)除得到余式r(x),其次数必小于g(x)的次数,即小于(n-k),将此r(x)加于信息位后做监督位,即将r(x)于相加,得到的多项式必为一码多项式。1)有信息码构成信息多项式m(x)=mk-1xk-1+``````m0其中高幂次为k-1。2)用xn-k乘上信息多项式m(x),得最高幂次
5、为n-1,做移位。3)用g(x)除xn-km(x)和到余式r(x)。编码过程流程图:3、译码原理:1)有接收到的y(x)计算伴了随式s(x)。2)根据伴随式s(x)找出对应的估值错误图样。3)计算c^(x)=y(x)+e^(x),得估计码字。若c^(x)=c(x),则译码正确,否则错误。由于g(x)的次数为n-k次,g(x)除E(x)后得余式(即伴随式)的最高次数为n-k-1次,故S(x)共有2n-k个可能的表达式,每一个表达式对应一个错误格式。可以知道(7,4)循环码的S(x)共有2(7-4)=8个可能的表达式,可根据错误图样表来纠正(7,4)循环码中的一位错误。解码过程流程图:初始化
6、否存储c(x)由S(x)确定错误图样E(x)S(x)=0,无误码误码由R(x)确定S(x):纠错4、纠错能力:由于循环码是一种线性分组码,所以其纠检错能力与线性分组码相当。而线性分组码的最小距离可用来衡量码的抗干扰能力,那么一个码的最小距离就与它的纠检错能力有关。定理:对于任一个线性分组码,若要在码字内(1)检测个错误,要求码的最小距离;(1)纠正个错误,要求码的最小距离;(2)纠正个错误同时检测个错误,则要求;循环码的译码分检错译码与纠错译码两类。在无记忆信道上,对码字c,差错图案和接收向量的多项式描述为定义的伴随多项式为由于所以由此可见,则一定有差错产生,或说满足的差错图样产生,它满
7、足。循环码的检错译码即是计算并判断是否为0三、实验分析1、实验测试结果,包括译码结果、误码率与信噪比之间的关系、生成多项式理想状态下,对信号随机的提取,编码器输入为1000001110001000,通过encode函数后,因为加入了监督码,信号变得复杂密集,编码输出为1011000101001110110001011000通过译码输出为1000001110001000,与编码输入一致。说明循环码的检错和纠错能力性能好。输出多项式为:
此文档下载收益归作者所有