循环冗余校验码CRC在MSTP上应用.docVIP

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
循环冗余校验码(CRC)在MSTP上的应用 尹 恒 (武汉邮电科学研究院,武汉,430074) 摘 要:本文介绍了循环冗余校验码CRC)的原理、软硬件实现以及在MSTP中的应用,指出循环冗余校验码CRC)是一中非常实用的检错码。 关键词:循环冗余校验码CRC);MSTP;PPP/HDLC协议;LAPS协议;GFP协议 Application of Cyclic Redundancy Check (CRC) in the MSTP YIN HENG (Wuhan Research Institute Of Post and Communication ,Wuhan ,430074 ,China) Abstract : This paper introduces the principle and Realization of Cyclic Redundancy Check (CRC) , points out that Realization of Cyclic Redundancy Check (CRC) is very useful . Key Word : Realization of Cyclic Redundancy Check (CRC); MSTP; PPP/HDLC protocol ; LAPS protocol ; GFP protocol 前言 根据经典的香农公式,理想信道的容量是无限的,然而在实际信道上传输数字信号时由于信道传输特性不理想及加性噪声的影响所收到的数字信号不可避免的会发生错误为了加强通信系统的可靠性除了合理设计基带信号选择调制解调方式采用频域均衡时域均衡还需要采用信道编码即差错控制编码使误码率进一步降低满足指标要求循环冗余校验码CRC)凭借极强的检错性能,很小的开销,以及易于实现的特点,成为目前通信系统中最常用的一种差错控制编码CRC)原理[1] 2.1 循环冗余校验码(CRC)简介 利用CRC)进行检错的过程可简单描述为在发送端根据要传送的二进制码序列以一定的规则产生一个校验用的监督码附在原始信息构成一个新的二进制码序列然后发送出去在接收端根据信息码和码之间所遵循的规则进行检验一旦传输过程中发生差错则信息码与之间的关系遭到破坏,从而可以发现错误CRC)生成与校验过程 2.2.1 循环冗余校验码(CRC)的生成 循环冗余校验码(CRC)校验采用多项式编码方法n-k)次幂后除以生成多项式,然后将所得的余式加上升幂后的信息码多项式,由此得到系统码多项式。 在发送端,设有一组信息码多项式,最高次数为k-1(共k位),以乘以构成一个n-1次(最高次)多项式,即 ,再除以生成多项式(以为模),则 式中,为商,为余式,余式的系数即为生成的CRC监督码。将计算出的余式与 相加,可得到循环码多项式,即 将发送到信道上传输。 2.2.2 循环冗余校验码(CRC)的校验 校验方法一: 在接收端,对接收到的信息码多项式进行与发送端相同的运算,即 通过计算,可得到新的余式。将与从接收的循环码多项式中提取的相比较,若,说明在传输的过程中未出现了误码。比较的过程即为校验的过程。 校验方法二: 直接用接收到的序列除以生成多项式,即 通过计算,若余数为0,则说明在传输的过程中未出现了误码。 2.3 生成多项式的国际标准 2.4 循环冗余校验码(CRC)检错性能 循环冗余校验码(CRC)的检错能力很强,既能检测随机差错,也能检测突发性差错,其检错性能包括以下5点: 能检测出全部单个错误。 能检测出全部随机的2位错误。 能检测出全部奇数个错误。 能检测出全部长度小于等于k的错误。 能以的概率检测出长度为k位的突发性错误。 循环冗余校验码(CRC)的实现 3.1 软件实现 软件实现的流程图如下所示: 其中,GetCRC子程序的作用是生成循环冗余校验码(CRC)。 GetCRC子程序源代码如下: int GetCRC(int t) //生成循环冗余校验码   {     int k;     int g=0x13;cint; //输入的信息码是6位,如果要更长,修改下l字g=g5; for(;i6;) if(t0x200) t=t6;     t=t4;     k=t;     g=g3;     int i=0;     for(;i4;)     {     if(t0x80)     {     t=t1;     i++;     }     else t=t^g; //做模二运算     }     t=t4;     k=k^t;     return k;    } 图3 实验截图 3.2 硬件实现 3.

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档