CRC校验码设计.pptVIP

  1. 1、本文档共23页,可阅读全部内容。
  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校验码设计 中科大软件学院 2014-8-29 CRC产生背景 在数字通信系统中可靠与快速往往是矛盾的。如何合理地解决可靠与速度这一对矛盾呢? 可靠性 快速性 可靠性 快速性 纠错码:在每一个发送的数据块中包含足够的冗余信息,以便接收方可以推断出被发送的数据中肯定有哪些内容。 检错码:包含一些冗余信息,但是这些信息只能让接收方推断出发生了错误,但推断不出发生了哪个错误,然后接收方可以请求重传。 CRC产生背景 多项式编码 多项式编码(polynomial code),也称为CRC(cyclic redundancy check,循环冗余校验码),多项式编码的思想是:将位串看成是系数为0或1的多项式。CRC校验保护的单位是数据块。数据块的大小根据实际情况而定。每一个数据块均被看作是一个二进制多项式,即所有系数均为二进制(即1或0)的多项式。 当使用多项式编码时,发送方和接受方必须预先商定一个生成多项式(generator polynomial)G(x)。生成多项式的最高位和最低位必须为1。 CRC应用 CRC的主要特点 检错能力极强 开销很小 易于实现 ARJ,LHA,ZIP等压缩软件采用的是CRC-32; GIF,TIFF等图像存储格式; 所有链路层或网络接口层协议中,例如HDLC、DDCMP等众多领域。 应用范围广 CRC原理 将待发送的位串看成系数为 0 或 1 的多项式; 收发双方约定一个生成多项式 G(x)(其最高阶和最低阶系数必须为1),发送方用位串及 G(x)进行某种运算得到校验和,并在帧的末尾加上校验和,使带校验和的帧的多项式能被 G(x) 整除; 接收方收到后,用 G(x) 除多项式,若有余数,则传输有错。 CRC校验和计算法 1.若生成多项式 G(x) 为 r 阶(即r+1位位串),原帧为 m 位, 其多项式为 M(x),则在原帧后面添加 r 个 0,即循环左移r位,帧成为 m+r 位,相应多项式成为 xrM(x); 2.按模2除法用 G(x)对应的位串去除对应于 xr M(x) 的位串, 得余数 R(x); 3.按模2减法(即模2加)从对应于 xr M(x) 的位串中减去(加上)余数 R(x),结果即传送的带校验和的帧多项式T(x)。 T(x) = xrM(x) + R(x) CRC验证 发送方 接收方 设 xr M(x) 除以 G(x) 的商和余数分别为 Q(x) 和 R(x)。则有: xrM(x) = G(x) Q(x) + R(x) 即: 接收方收到带CRC校验和的帧多项式T(x) = xr M(x) + R(x)。 由于模2加减相当于异或运算,于是接收方模2除后商Q(x),余数0.得证! 举一个例子 (1)发送数据110011; (2)生成多项式G(x)= x4 + x3 + 1; (3)将要发送的数据系列左移4位,新的序列为 1100110000; (4)按模2算法,将生成的新序列除以生成多项式序列; (5)将余数多项式比特序列加到新的序列中即得发送端传送序列。 下面 。 1 0 0 0 0 1 1 1 0 0 1 1 1 0 0 1 1 0 0 0 0 1 1 0 0 1 1 0 0 0 0 1 0 0 1 1 1 0 0 1 110011 1001 接收方校验方案 方案二:提取接收到序列的信息码元,重复发送方的操作xrM(x) ,再除以生成多项式G(x),如果余数R’(x) = R(x),则证明传输正确。 方案一:直接用接收到的序列除以生成多项式G(x),如果余数R’(x) = 0,则证明传输正确。 接收方 校验方案 生成多项式 G(x) 的国际标准 CRC-12 :x12+x11+x3+x2 +x+1 CRC-32 :x32+x26+x23+x22+x16+x12 CRC-8 : x8+x2+x+1 CRC-10 : x10+x9+x5+x4+x2+1 CRC-16 :x16+x15+x2+1 + x11+x10+x8+x7+ x5+ x4+ x2+x+1 CRC-CCITT :x16+x12+x5+1 差错检测 循环冗余校验码(CRC,Cyclic Redundancy check) 编码 对于一个码长为n,信息码元为k位的循环码(n,k),其构成形式为: 1 2 k n k+1 k+2 n位 信息码元 k位 校验码元 r位 差错检测 循环冗余校验码(CRC,Cyclic Redundancy check) 若生成多项式 G(x) 为 r 阶(即r+1位位串),原帧为 m 位, 其多项式为 M(x),则在原帧后面添加 r 个 0,即循环左移r位,帧成为

文档评论(0)

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

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

1亿VIP精品文档

相关文档