循环码编码及解码仿真_第1页
循环码编码及解码仿真_第2页
循环码编码及解码仿真_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、一、 循环码定义和原理循环码(Cyclic Code)是线性码的一个重要的子类,除了具有线性码的一般性质外,还具有循环性即循环码许用码组集合中任一码字循环移位所得的码字仍为该码组集合中的一个码字。 循环码的两个最主要的特点是: § 可以用反馈线性移位寄存器很容易地实现其编码和伴随式计算。§ 由于循环码有许多固有的代数结构,从而可以找到各种简单实用的译码方法。循环码的定义:将任一码字中的7个码元排在一个圆周上,则从圆周的任一码元开始,按顺时针方向移动一周,都将构成该码的一个码字。如下图所示。图1 (7,4)汉明码的码字循环图循环码多项式定义:一个线性分组码,若具有下列特性,则

2、称其为循环码。设码字:c(cn-1,cn-2,c1,c0)若将码元循环左移一位,得c (1)(cn-2,c1,c0,cn-1)c (1)也是一个码字。设c(cn-1 cn-2 c1 c0)是(n,k)循环码的一个码字,则与其对应的多项式:c (x)cn-1xn-1cn-2xn-2c1xc0称为码字c的码字多项式(或码多项式)。 如果c(cn-1 cn-2 c1 c0)是(n,k)循环码的一个码字,则c (1)(cn-2 c1 c0 cn-1)也是该循环码的一个码字。这就是说c (x)cn-1xn-1cn-2xn-2c1xc0 和 c (1) (x)cn-2xn-1c1x2c0xcn-1 都是(

3、n,k)循环码的码字多项式。比较c(x)和c (1) (x)后可得c (1) (x)x c (x), mod xn1以及 c(i) (x)xic (x) (i1,2,n1), mod xn1二、 程序仿真Maltab提供的用来进行循环编码的函数是cyclpoly和cycgen。在使用时首先要使用cyclpoly生成循环码的生成多项式,然后再用cycgen生成循环码的生成矩阵和校验矩阵。1. pol=cyclpoly(n,k)pol=cyclpoly(n,k)用来生成(n,k)循环码的生成多项式2. h,g=cyclgen(n,pol)h,g=cyclgen(n,pol)用pol生成多项式生成循

4、环码的生成矩阵g和校验矩阵h。 此外,也可以使用encode直接进行循环码的编码,只要把encode的type参数指定为cyclic即可。在使用decode进行循环码的译码时,也需要指定decode的type参数为cyclic。程序实现的功能:分别使用cyclgen和encode实现(3,2)循环码编码,并加入噪声,使用decode对二者进行解码,比较结果。程序源代码请参考cyclecode.m。(注:使用时需要修改cyclecode.txt文件后缀格式,修改为cyclecode.m,然后用MATLAB打开运行。其他程序也是如此。)程序代码比较简单,参考注释即可。 程序运行结果如下:The bit error rate1 is 0.09

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论