所有提交的电磁系统将被重定向到在线手稿提交系统。作者请直接提交文章在线手稿提交系统各自的杂志。

循环冗余校验仿真使用串行通信

Vinit佩雷拉1,NajibGhatte2,MadurDattaprasad3,TusharSurwadkar4
PG学生(电子),电子称,Fr Conceicao罗德里格斯Engg学院。班德拉,孟买,印度1、2、3、4
相关文章Pubmed,谷歌学者

访问更多的相关文章国际先进研究期刊》的研究在电子、电子、仪表工程

文摘

CRC是指循环冗余校验位用于错误检测目的。通常的数据帧格式由位结合CRC位导致包传输从来源到目的地。Teracopy是CRC计算的重要应用之一。由于一些原因可能发生数据传输从源到目的地会损坏和到达错误在接收端。现在,CRC位扮演非常重要的角色的发现错误收到包。如果n n的长度数据发生错误就可以检测到所有的错误。CRC计算是基于非常简单的除法检测多个错误。它甚至使钻头的位置或部分连接接收机对发射机。标准多项式用于CRC计算适用于1到n比特的数据。

关键字

CRC多项式除法

介绍

循环冗余校验(CRC)是一个错误检测代码中常用数字网络和存储设备来检测意外更改原始数据。这些系统的数据块输入一个简短的检查价值,基于多项式除法的其余部分的内容;检索计算重复,可以采取纠正措施针对假定数据腐败如果检查值不匹配。crc是所谓的,因为检查(数据验证)值是一个冗余(它将任何信息添加到消息),该算法是基于循环码。crc是受欢迎的,因为他们是在二进制的硬件实现简单,易于分析数学,尤其是擅长发现常见错误引起的噪音传播渠道。因为检查的价值有一个固定长度,生成的函数是偶尔用作一个哈希函数。CRC是w·韦斯利·彼得森在1961年发明的;以太网的32位CRC中使用多项式函数和许多其他标准是一些研究人员的工作,并在1975年出版。[1]
循环冗余码(有时也被称为循环冗余检查)使用历史悠久的错误检测计算。[Peterson72]和[Lin83] crc的普遍引用标准的参考书。治疗更容易对非专业人士可以在[Wells99]。CRC可以被认为是一个数据字(不安全)消化功能,可以用来检测数据损坏。数学,CRC可以被描述为将二进制数据字作为一个多项式/ GF(2)(即。,with each polynomial coefficient being zero or one) and performing polynomial division by a generator polynomial G(x). The generator polynomial will be called a CRC polynomial for short. (CRC polynomials are also known as feedback polynomials, in reference to the feedback taps of hardware-based shift register implementations.) The remainder of that division operation provides an error detection value that is sent as a Frame Check Sequence (FCS) within a network message or stored as a data integrity check. Whether implemented in hardware or software, the CRC computation takes the form of a bitwise convolution of a data word against a binary version of the CRC polynomial. Error detection is performed by comparing an FCS computed on a piece of retrieved or received data against the FCS value originally computed and either sent or stored with the original data. An error is declared to have occurred if the stored FCS and computed FCS values are not equal. However, as with all digital signature schemes, there is a small, but finite, probability that a data corruption that inverts a sufficient number of bits in just the right pattern will occur and lead to an undetectable error. The minimum number of bit inversions required to achieve such undetected errors (i.e., the HD value) is a central issue in the design of CRC polynomials. The essence of implementing a good CRC-based error detection scheme is picking the right polynomial. The prime factorization of the generator polynomial brings with it certain potential characteristics, and in particular gives a trade-off between maximum number of possible detected errors vs. data word length for which the polynomial is effective. Many polynomials are good for short words but poor at long words, and the converse. There are relatively few polynomials that are excellent for medium-length data words while still being good for relatively long data words.[2]

设计

循环冗余校验(CRC)是一种有效的错误检测方法在数字源和目的地之间的数据传输。目标设备的CRC计算接收到的数据。如果CRC计算目标设备不匹配计算的源设备,接收的数据包含一个错误。这种技术被用于各种各样的应用程序从日常文件传输以太网传输。它提供了快速便捷的保险数据完整性在数字通信系统中CRC基于多项式操作,对待每一个收到的消息转换成一个二进制数。对接收到的消息然后除以一个固定值,也称为发电机多项式,利用模2运算。CRC的特点实现是由发电机多项式的选择。生成器选择多项式最大化的错误检测能力不使用太多的资源。发电机已纳入标准,如多项式CRC-8, CRC-16和CRC-CCIT通常已知和测试。本参考设计描述晶格可编程设备的使用来实现CRC生成器和检查程序。 The design allows users to implement the CRC using different generator polynomials.[
查看CRC的过程中所有的值表示为多项式哑变量X,二进制系数。系数对应于二进制数的位。因此,对于M = 110011 = 5 + = 4 + + 1,, P = 11001 = 4 + 3 + 1。算术运算模2。CRC的过程可以被描述为
图像
一个错误E (X)才会察觉如果P (X)整除。它可以显示[PETE611所有下列错误不整除适当选择P (X),因此,可检测:
如果G包含两个或两个以上的条款,任何一点错误都检测到。
如果G不整除x(也就是说,如果最后一项是1),和e是最小的正整数,G均分xe然后+ 1 e的框架内的所有双重错误检测。一个特别好的多项式在这方面是x15 + x14 e = 32767 + 1
如果x + 1 G的一个因素,所有错误检测到奇数位组成。
r-bit CRC校验和检测所有破裂长度误差≤r (r是一个字符串长度的突发错误的r位第一个和最后一个错误,中间r - 2位可能是也可能不是在错误。)
此外,它可以表明,如果所有错误模式被认为是等可能的,那么对于一个破裂长度误差r + 1, E (X)是整除的概率P (X)是1 2 1,和一个更长的破裂,概率是1 2,r是FCS[4]的长度。
四个版本的P (X)所示表我广泛使用的是:

实现

设计是通过变形模拟伊希斯v7.6 sp4 Labcenter提供的电子产品。设计使用原理图捕获和创建相同的模拟。

答:键盘

美国键盘布局用于饲料数据到用户输入到控制器,从键盘输入的数据是操作的代码和结果通过使用SCI串行通信传输协议。

b .串行通信

串行数据传输即一点点使用串行通信接口(SCI)。通过UART传输完成:1起始位,8位数据,1停止位;形成一个框架,这是在传播所需的波特率。虚拟终端屏幕上显示数据传输提供了仿真平台。图3.1显示了虚拟终端屏幕用于变形杆菌来显示数据传输。
波特率是如此调整,以配合控制器和虚拟终端收发器。加载控制器的计算,从而获得期望的波特率。

c . AT89C55单片机

AT89C55WD是低功耗;高性能CMOS 8位单片机与20 k字节的Flash可编程序只读存储器和256字节的RAM。设备制造使用Atmel的高密度非易失存储器技术和兼容行业标准80 c51单片机和80 c52指令集和引出线。芯片上的Flash允许程序内存由传统的非易失性内存用户编程的程序员。通过结合一个多才多艺的8位单片芯片CPU使用Flash, Atmel AT89C55WD是一个功能强大的微型计算机,提供了一个高度灵活的和成本有效的解决许多嵌入式控制应用程序。
单片机与嵌入式C语言编程使用凯尔交叉编译器生成Intel-hex文件和嵌入到控制器模拟结果。单片机嵌入式与生成的十六进制文件和设计模拟,得到最优的结果。

工作原理

在网络系统中一个重要的角色的数据链路层是两台计算机之间的潜在的不可靠的物理链路转换成一个明显非常可靠的链接。这是通过在每个传输帧包括冗余信息。根据链接和数据的本质,一个可以包含足够的冗余可以检测错误,然后安排受损帧的传输。循环冗余校验或基于CRC是一种广泛使用的校验位串行数据传输应用程序中的错误检测方案。这段代码是基于多项式算法。
数据传输的比特是多项式的系数。作为一个例子,1101011011位流有10位,代表十届多项式:
图像
要计算CRC的消息,另一个多项式生成器选择多项式G (x)。G (x)应该有一个度大于零,小于多项式的M (x)。另一个要求G (x)是一个非零系数x0而言。这将导致发电机多项式,几个可能的选项,因此标准化的必要性。CRC-16就是这样一个标准使用生成多项式:
图像
CRC-16检测所有单引号和双错误,错误的奇数位,所有破裂长度16个或更少的错误,大多数错误更长的时间。crc使用32生成多项式:
图像
一般来说,一个n位CRC是代表数据流计算多项式M (x), M (x)乘以x ^ n (n是多项式的次数G (x)),并将结果由一台发电机多项式G (x)。由此产生的剩余部分是附加到多项式M (x)和传播。完整的传播多项式除以相同的发电机在接收机端多项式。如果这个部门没有剩余的结果,没有传输错误。在数学上,这可以表示成:
图像
CRC计算涉及操纵M (x)和G (x)使用模2运算。模算术加法和减法的收益率相同的结果。因此有必要考虑三个操作涉及多项式即加法,乘法和除法。[6]

算法

循环冗余校验是一种提供错误控制编码为了保护数据通过引入一些冗余的数据控制的方式。这是一个常用的和非常有效的方法检测传输错误。
方程描述的CRC编码过程是5.1
图像
V (x)的n位长数据字传播,它包括原始数据和U (x),后跟一个码字S (x)称为CRC-sum。S (x)代表了额外的部分添加到消息在传输过程中为了提供冗余,这样的错误可以被探测到。S (x)的长度是用约束长度。S (x)是根据公式5.3计算。
图像
S (x)是在其他词产生的其余部分从一个部门的数据流和发电机多项式g (x)。因为所有的码字是整除g (x)左边的其余部分的方程必须是零码字。实际编码过程是相同的接收和发射线。
CRC编码/解码原理见图5.1和图5.2所示的并行逻辑实现,传入消息接收者执行CRC校验,如果结果(S (x))为零,则无错传输。一个更实际的方法解决这一只计算CRC的第一部分消息U (x),然后执行逐位2补数加法的计算校验和S (x)在传播方面。如果结果是零的接收者将订单从发送方重发。[5]

结果

该设计是在仿真平台上模拟。虚拟终端屏幕显示消息被传播和CRC-generator多项式源CRC计算使用。与CRC附加的数据传输通道和测试veraciousness。图6.1显示了用于计算CRC虚拟终端屏幕快照。

结论

循环冗余校验用于检测错误数据的传输通道。CRC的CRC生成通过发电机后缀为消息比特传输通道。接收到的码字再次验证通过相同的CRC生成多项式。如果余数为零,那么它的有效性证明其他错误帧是转播的。

表乍一看

表的图标
表1

数据乍一看

图1 图2 图3 图4
图1 图2 图3 图4

引用

  1. 菲利普••库普曼“互联网应用中,32位循环冗余码”ECE部门&冰匹兹堡卡内基梅隆大学,宾夕法尼亚州,美国,2002年4月
  2. S.R. Ruckmani1, p . Anbalagan2高速USB循环冗余校验,DSP日报》卷6,问题1,2006年9月。
  3. 威廉切除、数据和计算机通信、5。,普伦蒂斯霍尔出版社,2009。
  4. 循环冗余校验(在线)。可用:http://en.wikipedia.org/wiki/Cyclic_redundancy_check。
  5. 循环冗余校验(在线)。可用:http://www.latticesemi.com/products/intellectualproperty/referencedesigns/cyclicredundancycheck.cfm
  6. IEEE 802.3循环冗余校验,克里斯伯雷利。可用:http://www.xilinx.com/support/documentation/application.../xapp209.pdf
全球技术峰会