[发明专利]一种非整字节数据的循环冗余校验算法有效
申请号: | 201310246949.5 | 申请日: | 2013-06-20 |
公开(公告)号: | CN103297196A | 公开(公告)日: | 2013-09-11 |
发明(设计)人: | 杨尚胜 | 申请(专利权)人: | 成都国星通信有限公司 |
主分类号: | H04L1/00 | 分类号: | H04L1/00 |
代理公司: | 成都金英专利代理事务所(普通合伙) 51218 | 代理人: | 袁英 |
地址: | 611730 *** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 字节 数据 循环 冗余 校验 算法 | ||
技术领域
本发明涉及一种非整字节数据的循环冗余校验算法。
背景技术
在各种各样的数据通信中,一般都将数据分组后进行传输,在分组数据后附加数据帧校验序列(Frame Check Sequence,简称FCS)进行差错控制,以保证数据的传输的正确性。在帧校验序列的实现中,循环冗余校验码(Cyclic Redundancy Code,简称CRC)以其高效率、高性能获得了广泛的应用,是目前数据传输过程中普遍采用的一种提高数据通信可靠性的方法。
数据在发送过程中,发送端将需要传送的数据进行CRC校验码计算,并将校验码附在传送数据后一起发送。接收端需要用同样的计算方法对接收到的数据进行校验码计算,然后将计算得到的CRC码与接收到的CRC码进行比较,如果一致说明数据传输无误,如果不一致说明数据传输有误。
CRC的计算效率和延迟时间一直以来都是CRC编码技术的关键,直接决定其是否能够实际中应用。目前,CRC的计算方法,存在按位计算和按字节计算两种截然不同的方式,按字节方式计算计算效率高,计算过程中循环次数为位方式计算的1/8,而且计算耗时短且可控,字节方式通过查表来完成计算,耗时短且固定,远比位方式计算通过条件判断执行方式更适合实时性嵌入式系统,尽管字节方式优越性明显,但其实际应用却有严格条件要求:传输信息必须为整数字节,传输信息为非整数字节不满足字节方式的使用条件的就只有使用位方式计算传输信息序列的CRC,效率极低,严重制约产品的实时响应性能。
发明内容
本发明的目的在于克服现有技术的不足,提供一种可以在传输信息为非整数字节不满足按字节方式计算的使用条件下使用,大大提高了计算效率,缩短了计算时间,释放了大量的CPU资源,降低了对CPU性能和运行时钟的要求,降低了CPU功耗的一种非整字节数据的循环冗余校验算法。
本发明的目的是通过以下技术方案来实现的:一种非整字节数据的循环冗余校验算法,CRC数学本质是对传输信息多项式对CRC生成多项式求余,CRC16的生成多项式为:
G(x)=x16+x12+x5+1,其计算方法为:将16个0添加到S(x)的后面,也就是
S(x)=r16×S(x),其中r=2为二进制多项式操作的基,然后S(x)对生成多项式G(x)做除法运算,即进行逻辑异或操作,最后得到除法的余数部分,即为CRC16,简称为Creg,而商部分简称M(x),其包括以下步骤:
S1:假设Sm对应的CRC16值为Creg,由定义,则:
R2*Sm=M(x)*G(x)+Creg (式2)
S2:在Sm后增加n位不足一个字节信息位,组成一个新的二进制多项式S'm,计算S'm的CRC16,其包括以下步骤:
S201:在Sm后增加n位不足一个字节信息位,组成一个新的二进制多项式S'm,
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都国星通信有限公司,未经成都国星通信有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310246949.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置