RS编译码原理.docx

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
RS编译码原理

RS码字RS码(Reed-solomon codes)一种低速率的前向纠错的信道编码,是一类具有强纠错能力的多进制BCH码,在线性分组码中,它的纠错能力和编码效率是最高的。相比于其他线性分组码而言,在同样的效率下,RS的纠错能力是特别强的,特别是在短的中等码长下,其性能接近于理论值,它不但可以纠正随机错误,突发错误及两者的结合,而且可以用来构造其他码型,如级联码。其编码过程首先在多个点上对这些多项式求冗余,然后将其传输或者存储。对多项式的这种超出必要值的采样使得多项式超定(过限定)。当接收器正确的收到足够的点后,它就可以恢复原来的多项式,即使接收到的多项式上有很多点被噪声干扰失真。RS编码RS码是一类纠错能力很强的特殊的非二进制BCH码。对于任选正整数S可构造一个相应的码长为n=qS-1的q进制BCH码,而q作为某个素数的幂。当S=1,q2时所建立的码长n=q-1的q进制BCH码,称它为RS码。当q=2m(m1),其码元符号取自于GF(2m)的二进制RS码可用来纠正突发差错,它是最常用的RS码。一个RS码有以下几个参数:码长:n=2^m-1个符号或者m(2m-1)比特信息段:k个符号或者mk个比特监督段:2t=n-k个符号2mt=m(n-k)个比特最小码距:dmin=n-k+1个符号或者mdmin=m(n-k+1)例如,对RS(204,188)码来说,源数据被分割为188个符号为一组,经过编码变换后,成为204个符号长度的码字。长度为16个符号的监督为可以纠正码字中出现的最多8个符号错误。RS编码的框图如图所示:RS编码器的结构RS码的基本思想就是选择一个合适的生成多项式g(x),并且使得对每个信息段计算得到的码字多项式都是g(x)的倍式,即使得码字多项式除以g(x)的余式为0。这样,如果接收到的码字多项式除以g(x)的余式不是0,则知道接收码字的余式存在错误;而且通过进一步可以纠正最多t=(n-k)/2个错误。RS码生成多项式一般按照如下公式选择,即g(x)=(x-a)(x-a2)(x-a3)···(x-a2t-1)(x-a2t)式中,ai是GF(2m)中的一个元素。如果用d(x)表示信息段多项式,则可以按照如下方法构造码字多项式c(x)。首先计算商式h(x)和余式r(x),得xn-k d(x)/ g(x)= h(x) g(x)+ r(x)取余式r(x)作为校验字,然后令c(x)=xn-kd(x)+r(x)即将信息位放置于码字的前半部分,监督位码字放在后半部分,则c(x)/g(x)= xn-k d(x)/ g(x)+r(x)/g(x)=h(x)g(x)+r(x)+r(x)= h(x)g(x)因此,码字多项式c(x),必可以被生成多项式g(x)整除。如果在接收端检测不到余式为0,则可判断接收到的码字有错误。由于这种RS能纠正t个m进制的错误码字,所以,RS码特别适用于突发错误的信道以RS(7,3)码为例介绍RS码的编码过程。RS(7,3)码利用3个信息符号得到长度为7的编码,码元符号取自GF(23).即m=3。域GF(23)的本原多项式为a3+a+1,RS码的生成多项式为g(x)=x4+3x3+x2+2x+3。假如输入符号为[4 0 6],则信息多项式d(x)=4x2+6。生成码字的过程如下:(1)由于码元符号取自域GF(23),所以一个符号可以由3比特表示,x4d(x)的二进制比特表示为[100 000 110 000 000 000 000];(2)g(x)的二进制比特表示为[001 011 001 010 011];(3)计算xn-k d(x)/ g(x)得到的余式r(x)的二进制比特表示为[100 010 010 000],因此校验位为[4 2 2 0];(4)生成的码字即为[4 0 6 4 2 2 0].RS译码RS码的译码算法是从BCH码的译码算法演变而来的。与编码算法相比,译码算法比较复杂,需要的运算量也比较大。其中,比较有代表性的算法是Berlekamp-Messay算法(简称BM算法)和Euclid算法。在这两种算法的基础上,后来又派生出了一些修正算法或陕速算法。RS码的译码可以按照下面的步骤来进行:1.由接收多项式计算伴随式;2.用BM算法或Euclid算法,由伴随式,求出错误位置多项式;3.用Chien搜索法求伴随式的根,其倒数为错误位置数;4.计算错误值;5.接收多项式减去错误多项式,完成纠错。如图所示RS译码器原理框图译码最关键和最复杂的一个步骤是求出错位置多项式,求取关键方程组的常用算法Berlekamp-Massey算法、Euclid算法。以下是BM的算法流程

您可能关注的文档

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档