- 16
- 0
- 约2.59千字
- 约 6页
- 2022-03-01 发布于浙江
- 举报
PAGE
PAGE 1
CAN总线中循环冗余校验码的原理及其电路实现
在CAN系统中为保证报文传输的正确性,需要对通信过程进行差错掌握。目前常用的方法是反馈重发,即一旦收到接收端发出的出错信息,发送端便自动重发,此时的差错掌握只需要检错功能。常用的检错码两类:奇偶校验码和循环冗余校验码。奇偶校验码是一种最常见的检错码,其实现方法简洁,但检错力量较差;循环冗余校验码的编码也很简洁且误判率低,所以在通信系统中获得了广泛的应用。下面介绍CAN网络中循环冗余校验码(即CRC码)的原理和实现方法。 1 CRC码检错的工作原理 CRC码检错是将被处理报文的比特序列当作一个二进制多项式A(x)的系数,该系数除以发送方和接收方预先商定好的生成多项式g(x)后,将求得的余数P(x)作为CRC校验码附加到原始的报文上,并一起发给接收方。接收方用同样的g(x)去除收到的报文B(x),假如余数等于p(x),则传输无误(此时A(x)和B(x)相同);否则传输过程中出错,由发送端重发,重新开头CRC校验,直到无误为止。 上述校验过程中有几点需留意:①在进行CRC计算时,采纳二进制(模2)运算法,即加法不进位,减法不借位,其本质就是两个操作数进行规律异或运算;②在进行CRC计算前先将发送报文所表示的多项式A(x)乘以xn,其中n为生成多项式g(x)的最高幂值。对二进制乘法来讲,A(x)·xn就是将A(x)左移n位,用来存放余数p(x),所以实际发送的报文就变为A(x)·xn+p(x);③生成多项式g(x)的首位和最终一位的系数必需为1。 图1为CRC校验的工作过程。 目前已经有多种生成多项式被列入国际标准中,如:CRC-4、CRC-12、CRC-16、CCITT-16、CRC-32等。CAN总线中采纳的生成多项式为g(x)=x15+x14+x10+x8+x7+x4+x3+1。可以看出,CANU叫线中的CRC校验采纳的多项式能够校验七级,比一般CRC校验(CRC-4、CRC-12、CRC-16等)的级数(二~五级)要高很多,因而它的检错力量很强,误判率极低,成为提高数据传输质量的有效检错手段。 图2 产生CRC校验码的硬件电路2 CRC码的(电路)实现 2.1 硬件电路的特点 在CAN总线中为了产生CRC码,硬件电路除了具有复位和(时钟)信号以外,还需要以下两个掌握信号的参加:①填充位解除信号destuff,它的有效规律值是1;②CRC(检验)的使能信号enable,有效规律也为1。该硬件电路的特点是采纳选择器和反相器代替传统设计中用的异或门,既实现了比较功能,又降低了生产成本,同时也为工程师们供应了一种新的设计思路。 2.2 硬件电路图 图2即为实现CRC码的硬件电路图。 图中需要说明的几点如下:①使能信号和填充位解除信号省略;②crcnxt代表的规律值为输入报文序列和CRC(寄存器)的最高位异或的结果;③标号0~14所指示的为15位CRC寄存器,上升沿触发;④标号1~6所指示的为选择器和反相器的组合规律,实现异或功能,该选择器的规律功能为Y=AB+AC,详细结构如图3所示。 2.3 电路工作过程 从以上分析可知:①当enable=0时,CRC清0;②当enable=1、destuff=1时,进行正常CRC计算;③当enable=1而destuff=0时,正在解除填充时,数据暂停传送。 在各个掌握信号均有效时,输入报文的每一位都是和CRC寄存器的最高位相异和后移入最低位,同时寄存器的第13、9、7、6、3、2位均和其最高位异或,结果分别左移一位;其它未进行异或操作的寄存器位值也分别左移一位,直到报文的每一位都移入CRC寄存器为止,此时寄存器中的值取为计算得到的CRC码。 假如报文的比特序列长度为16,则需要左移16次才能对报文的每一位均进行处理。假如以Ck表示CRC寄存器的第k位位值、Ck表示移位后的第k位位值(k=0,1,2,3……15),则移位规律见表1。 表1 移位规律表C14=C13^crcnxtC13=12C12=C11C11=C10C10=C9^crcnxtC9=C8C8=C7^crcnxtC7=C6^crcnxtC6=C5C5=C4C4=C3^crcnxtC3=C2^crcnxtC2=C1C1=C0C0=crcnxt^datain 3 CRC校验码的软件实现 CRC校验用软件实现起来特别便利。鉴于目前的(资料)中介绍的方法多使用C语言、汇编语言等实现,而缺乏用硬件描述语言实现,这里给出CRC码的(Verilog) HDL之行为级描述程序。 本程序在Verilog_XL下编译通过,同时在Synopsis上胜利进行了综合及优化。
您可能关注的文档
- 冬季安全行车注意事项.docx
- 冬季玻璃水要选用特效防冻型.docx
- 冬季潮湿多雨,切记行车注意事项.docx
- 冬季防厨房火灾八个注意事项.docx
- 冬季防火安全小知识.docx
- 冬季防火常识须知.docx
- 冬季防火注意事项.docx
- 冬季给爱车多一些关爱.docx
- 冬季滑雪安全小常识.docx
- 冬季滑雪游走俏 专家提醒注意安全防护.docx
- (正式版)DB33∕T 2574-2023 《 数字乡村建设规范 》.pdf
- (正式版)DB33∕T 2554-2022 《“GM2D”进口商品数据元 》.pdf
- (正式版)DB33∕T 2573-2023 《 助残护理员照护服务规范 》.pdf
- (正式版)DB33∕T 2542-2022 《餐饮计量规范 》.pdf
- (正式版)DB33∕T 2558.1-2022 《林下套种菌药生产技术规程 第1部分:大球盖菇》.pdf
- (正式版)DB33∕T 2558.3-2022 《林下套种菌药生产技术规程 第3部分:羊肚菌 》.pdf
- (正式版)DB33∕T 2575-2023 《 野生猛禽和涉禽安全救护技术规程 》.pdf
- (正式版)DB33∕T 2544-2022 《森林人家建设规范》.pdf
- (正式版)DB33∕T 310010-2021 《沿海防护林生态效益监测与评估技术规程》.pdf
- (正式版)DB33∕T 3004.1-2015 《农村厕所建设和服务规范 第1部分:农村改厕管理规范 》.pdf
原创力文档

文档评论(0)