附录2:校验模块程序 22
致 谢 23
循环冗余校验算法的FPGA设计
引言
由于通信系统普遍应用于我们现在的生活中的每一个空间,对于传输的速度和安全性也提出了较高的要求。为了适应计算机系统日新月异的改变,我们的各种编码系统和效验码也在不断更新,目的是为了保证数据传输过程中数据的安全性和正确性,为了使大家有一个全新的了解今天对于循环冗余校验码 CRC(Cyclic Redundancy Code)进行详细的阐述和说明。
Cyclic Redundancy Code的校验过程就是将信息由发送端通过CRC将信息转化后再传递给接收端,接收端接收到传递过来的信息后再由CRC进行信息转化后再进行安全性的判断。它有很多种的计算方法,这也是其可以作为常规效验码使用的原因之一。而且校验的方法可以在信息传输过程中同时进行或者可以在信息传输之前就可以完成。校验过程非常迅速高效。由于CRC的计算原理是通过按位串的方法来进行的,现在本文就其在传输中的过程通过计算机硬件设计的方法来进行阐述和说明。
1.绪论
1.1 课题研究背景和意义
FPGA/CPLD是二十世纪九十年代发展大规模可编程逻辑器件,随着微电子技术和EDA技术的增高,FPGA的时钟延迟已经达到ns级,结合它的并行工作方法,在实时测控、超高速方面有很大广阔前景;FPGA拥有较高可靠性、较高集成度,几乎能将所有设计系统下载于一个芯片中,完成片上的系统,进而较大地缩小其体积,应用日益普遍。在国外,FFGA的技术发展与应用已达到很高的程度;在国内,FPGA技术发展也迅速,但是与国外相比还存在比较大的差距。
在现在的通信系统中,数据传输的安全性和高效性是最基本的要求,但是现阶段的通信系统设计还存在一定差距,尤其是信息传输方面,受外界的因素影响较大,稳定性不强。经常在传输过程中出现错码 。因此在现在的各种程序设计中,在设计结束后到设定了大量的校验方式,本文主要阐述了其中一种,循环冗余校验CRC (Cyclic Redundancy Check),通过该校验方式可以使系统在计算过程中出现错码的几率大大降低。CRC 算法占用系统空间很小的一部分能源,可以简单的执行校验工作,但是其校验能了非常大。
1.2 课题研究现状
进行课题的研究的前期工作准备就是对各种软件和硬件语言进行熟悉,通过学习可以知道先系统设计中最常用到的是C语言、由于其简单高效的语言程序使其成为最常用的语言之一,其次是计算机硬件描述语言Verilog,在各种设计中还会用到VHDL语言。本设计对于逻辑行为描述能力的要求较高,对于电子系统设计方面的条件也较高,在这里我们选择了VHDL来参与设计。
1.3 论文设计
在本设计中我们要想了解通过计算机硬件设计的方法来进行阐述和说明CRC的计算原理,首先要先做到的工作就是先了解一下我们整个设计过程中的相关软件原理和基本的信息传输相关方面的知识。这些我们可以通过进行计算机搜索、查阅相关文献等方法来了解。首选CRC的概念是什么,它在系统设计中起到什么样的作用,他是一种在设计中会用到的一种简单的编码程序。而EDA是电子设计自动化的英文缩写,他是一种方便快捷的计算机设计系统,系统的软件和硬件的设计和完善都可以通过这一系统来完成。而FPGA是一种可辑程逻辑器件,这种器件的使用在很大程度上是我们的编程系统更加灵活,通过了解我们可以知道,这些小的系统和器件的使用是我们计算机系统编程更加方便灵活,是现实应用中的技术关键。
该论文的按照研究背景及意义、CRC基本原理及计算方法、FPGA和VHDL语言的详细介绍和软件模块设计与实现的顺序进行了全面的介绍。通过本论文可以是我们对循环冗余校验更加直观的给以一个了解,为了今后的原件设计及校验给了一个好的总结概括。 循环冗余校验算法的FPGA设计(2):http://www.751com.cn/tongxin/lunwen_39216.html