循环冗余校验码的原理及应用.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
CRC原理的实现与应用 * * CRC产生的背景 在数字通信系统中可靠与快速往往是矛盾的。如何合理地解决可靠与速度这一对矛盾呢? 可靠性 快速性 可靠性 快速性 * * CRC产生的背景 1.为追求 快速性 波形变窄 2.为追求 可靠性 传送消息 速率变慢 采用差错控制 每个码元 所占时间 缩短 能量减少 可用的 通信系统 * * 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软件实现过程 基于MFC的CRC-4的算法 如何进行两列数字序列的除法运算得到余式------校验码R(X) 通过输入任意的信息码元序列,经过CRC-4的校验,在接收端进行检错 1.MFC仿真界面及功能介绍 2.核心步骤算法解释 3.仿真演示 * * 1.MFC仿真界面及功能介绍 * * 2.核心步骤算法解释 Start 请点击按钮打开软件的实现过程 * * CRC的应用---HDLC协议 * * CRC的应用---HDLC协议 HDLC是一个第二层协议,它用于来连接点到点的串行设备,它运行在广域网两个不同的地方。每个路由器将会解封装HDLC的数据包对它们进行转发到LAN或者是丢弃。 HDLC

文档评论(0)

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

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

1亿VIP精品文档

相关文档