资源描述:
《测控技术与仪器毕业论文范文——基于fpga的crc校验码的实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、基于FPGA的CRC校验码的实现摘要在数据通信中为了降低通信线路传输的误码率,需要采用高效能的差错控制方法。常用的方法是对数据进行CRC校验。而CRC校验码最常用在CAN总线传输中。文中介绍了CAN的特点、报文格式及CRC在其屮的位置和作用。而后又提出了几中常用的校验方法,对比出CRC具有编码和解码方法简单、检错能力强、误判概率很低和具有纠错能力等优点。文中对CRC的校验原理做出了详细的说明,以信息码1010为例简单的阐述了其基本构成,并阐述和设计串行和并行两种算法。采用VHDL语言为硕件描述语言实现CRC的解码,
2、然后用QuartusII9.0软件进行仿真,导出波形图。最后将程序写入EP3C16F484C6N芯片,记录七段显示屏显示的实验结果,验证实验结果是否准确。关键词:循环冗余校验码,CRC,CAN总线,VHDL语言,FPGAFPGA-basedimplementationofCRCchecksumABSTRACTIndatacommunicationtocuttheerrorratewhichthecommunicationlinktransmits,needstousethehighefficiencytheerro
3、rcontrolmethod.ThecommonlyusedmethodiscarriesontheCRCverificationtothedata.ButCRCcheckcodemostcommonlyusedintheCANbustransmission.ThispaperintroducesthefeaturesofCAN,themessageformatandCRCinwhichthepositionandrole.Andthenmadeafewcommonlyusedcalibrationmethods,
4、comparedwithaCRCencodinganddecodingmethodissimple,errordetectionability,theprobabilityoffalsepositivesisverylowandhastheadvantagesoferrorcorrectioncapability.InthearticlehasmadethedetailedexplanationtotheCRCverificationprinciple,taketheinformationcode1010asexa
5、mplesimpleelaborationitsbasicconstitution,andelaboratedandthedesignserialandtheparalleltwoalgorithms.UsestheVHDLlanguagetorealizetheCRCdecodingforthehardwaredescriptionlanguage,thencarriesonthesimulationwiththeQuartus29-0softwares,derivestheoscillogram.Finally
6、readsintheprocedureEP3C16F484C6Nthechip,recordsexperimentalresultwhichthedisplaymonitordemonstratedthatconfirmationexperimentalresulttobewhetheraccurate.keyword:cyclicalredundancycheckcodeCRC,CANmainline,VHDLlanguageFPGA1绪论1.1引言信息在传递过程屮,可能因某种原因使传输的数据发生错误。为减少和避
7、免这类错误的发生,除提高硬件的可靠性外,在数据的编码上也应提供检错和纠错的支持。常见的校验码有奇偶校验码、海明校验码和循环冗余校验CRC(CyclicRedundancyCheck)码,它们都是将被校验的数据代码按k位一组分组,每组添加「个校验位,形成n位一组的代码,故又称为(n,k)分组校验码。其中CRC码既可检错又可纠错(与生成多项式的选取有关),是以数据块为对彖进行校验的一种高效、可靠的检错和纠错方法,由于它的编解码简单、纠错能力强且误判概率很低,因而在工业测控及通信系统中得到了广泛的应用。CAN协议中,为了
8、保证帧传输的可靠性和较高的检错效率,其采用了以下几种检错方式:位错误、填充错误、CRC错误、格式错误及应答错误检测。如果用m表示报文受损率,那么通过以上检错方式,它对于受损报文检测不到其受损的概率为:wx4.7xl0-n,因而CAN总线极高的检错率使得它目前被广泛应用到工业控制、通信、汽车甚至军事等多个领域。CRC检验作为CAN协议中一种重要的且行之有效的检