CRC码生成与校验电路的设计与实现

上传人:痛*** 文档编号:102508374 上传时间:2022-06-07 格式:DOC 页数:15 大小:122.50KB
收藏 版权申诉 举报 下载
CRC码生成与校验电路的设计与实现_第1页
第1页 / 共15页
CRC码生成与校验电路的设计与实现_第2页
第2页 / 共15页
CRC码生成与校验电路的设计与实现_第3页
第3页 / 共15页
资源描述:

《CRC码生成与校验电路的设计与实现》由会员分享,可在线阅读,更多相关《CRC码生成与校验电路的设计与实现(15页珍藏版)》请在装配图网上搜索。

1、.XX航空航天大学课 程 设 计 报 告课程设计名称:计算机组成原理课程设计课程设计题目:CRC码生成与校验电路的设计与实现 院系:专 业:班 级:学 号:_指导完成日期:2016年1月14日.目 录第1章总体设计方案11.1设计原理11.2设计思路21.3 设计环境3第2章详细设计方案62.1 顶层方案图的设计与实现6创建顶层图形设计文件62.1.2器件的选择与引脚锁定.7编译、综合、适配82.2 功能模块的设计与实现9模2除法器的设计与实现9移位寄存器的设计与实现112.3 仿真调试12第3章编程下载与硬件测试153.1 编程下载153.2 硬件测试及结果分析15参考文献17附录电路原理图

2、18.第1章 总体设计方案1.1 设计原理二进制信息位流沿一条线逐位在部件之间或计算机之间传送称为串行传送。CRC码可以发现并纠正信息存储或传送过程中连续出现的多位错误。CRC码的编码格式如图1.1所示,是在k位有效数据之后添加r位校验码,形成总长度为n的CRC码,简写作C码。CRC编码的关键技术在于如何从k位信息简便的得到r位校验码,并根据总长度为n的CRC码进行纠错。图1.1设被校验的数据是一个k位的二进制代码,将它表示为一个阶的多项式 多项式中的系数D的取值为0或1,与被校验的数据M一一对应;式中的x是一个伪变量,用指明各位的位置。设校验码P长度为r,将被校验数据D左移r位后的结果为将D

3、左移r位的目的是给D右边添加r个0,形成位长度二进制代码,其多项式形式为M。如图1.1所示,CRC码由k位数据D和r位校验码P组成,求校验码P的多项式R的方法如下: Q是商,R是余数,R所对应的二进制代码是校验码P。可以证明存在一个最高次幂为n- k=r 的多项式G ,即式中G,称为生成多项式。 由式可以推导出 由式可知,CRC码可被G整除,余数必然为0.。根据这一特性,接收方将收到的CRC码被G除,若余数为0,则表明传送过程中没有错误发生,若出现一位错,根据余数与出错位一一对应的关系,可利用余数对错误码进行定位。因此,接收方可根据表1.1发现并纠正1位错。A1A2A3A4A5A6A7余数出错

4、位正确1100010000无错误1100011001A71100000010A61100110100A51101010011A41110010110A31000010111A20100010101A1表1.1 循环校验码的出错模式1.2 设计思路根据题目要求,信息位k=4,r=n-k=3可知本次实验主要是完成码的生成和校验。CRC码生成电路的核心主要由移位寄存器和模2除法器构成,信息位以串行的方式输入。依据CRC码生成与校验原理可知,生成电路中由输入端串行输入的数据D左移3位后,与生成多项式G做模2除法,并将得到的3位余数与4位信息码拼接成7位CRC码。校验电路原理同生成电路,主要由移位寄存器

5、、模2除法器和3.8译码器构成。将待检测的CRC码串行输入到模2除法器和移位寄存器中去,求得3位余数,利用3.8译码器译码将三位余数译码,通过比较可以找出出错位,并将译码结果与移位寄存器的输出结果进行异或,便得到纠正后的正确结果。CRC码生成与校验电路主要包括两个部分:1.生成电路。由移位寄存器接收数据并进行移位,生成多项式由开关直接送入,输入数据与生成多项式通过模2除法器最终生成CRC码。2.校验电路。原理类似生成电路,校验电路中增加了3-8译码器。3-8译码器与异或门共同完成对信息码的的校验与纠正,最后输出校验后的信息码。本设计方案采用的元件有模2除法器模块,移位寄存器模块,3-8译码器,

6、与门,异或门。移位寄存器由7个D触发器构成。模2除法器由若干两输入与门,若干两输入异或门和D触发器构成。1.3 设计环境硬件环境:伟福COP2000型计算机组成原理实验仪、XCV200实验板、微机。EDA环境: Xilinx foundation f3.1设计软件Xilinx foundation f3.1是Xilinx公司的可编程期间开发工具,该平台如图1.2所示功能强大,主要用于百万逻辑门设计。该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。图 1.2 Xilinx foundation f3.1设计平台COP2000集成调试软件COP2000 集成开发环境是为COP2000

7、 实验仪与PC 机相连进行高层次实验的配套软件,它通过实验仪的串行接口和PC 机的串行接口相连,提供汇编、反汇编、编辑、修改指令、文件传送、调试FPGA 实验等功能,该软件在Windows 下运行。COP2000 集成开发环境界面如图1.3所示。图 1.3 COP2000计算机组成原理集成调试软件.第2章 详细设计方案2.1 顶层方案图的设计与实现顶层方案图实现CRC码的生成与校验的逻辑功能,采用原理图设计输入方式完成,电路实现基于XCV200可编程逻辑芯片。在完成原理图的功能设计后,把输入/输出信号安排到XCV200指定的引脚上去,实现芯片的引脚锁定。2.1.1创建顶层图形设计文件顶层图形文

8、件的设计实体主要由CRC码生成电路与CRC码校验电路组成。生成电路主要由移位寄存器元件U2、模2除法器元件U1构成。如图2.1所示。图2.1 CRC码生成电路图校验电路主要由移位寄存器元件U4、模2除法器U3,3-8译码器,异或门集成模块U5构成。如图2.2所示。图2.2 CRC码校验电路图2.1.2器件的选择与引脚锁定1器件的选择由于硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,故采用的目标芯片为Xlinx XCV200软件中可用芯片。2引脚锁定把顶层图形文件中的输入/输出信号安排到Xlinx XCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及Xl

9、inx XCV200芯片引脚对应关系如表2.1所示。 图形文件中的输入/输出信号XCV200芯片引脚M79J63CLK213VCC64G194G295G396G497Q1152Q2178Q3184Q4185Q5203Q6111Q7110J193J299J3107J4108J5109J6124J7125表2.1 信号和芯片引脚对应关系2.1.3编译、综合、适配利用Xilinx foundation f3.1的原理图编辑器对顶层图形文件进行编译,并最终生成网络表文件,利用设计实现工具经综合、优化、适配,生成可供时序仿真的文件和器件下载编程文件。2.2 功能模块的设计与实现CRC码的生成与校验电路是

10、基于移位寄存器和模2除法器及异或门实现的。2.2.1模2除法器的设计与实现模2加定义:即按位加,可用异或逻辑实现。模2加同模2减结果相同,即01=1,10=1,00=0,11=0。模2除定义:按照模2减求得部分余数。每求一位商应将部分余数减少一位。上商原则是:当部分余数的位数多于除数时,商1,否则,商0。该模块由D触发器、与门和异或门构成。对校验码,可采用图2.3所示电路,产生3位的余数R1、R2、R3。图中的模2减用异或门实现,左移一位由移位寄存器实现;用异或门的输出控制左边一位寄存器的D输入端,可同时实现模2减和左移。用最左一位D触发器的取值控制是否做模2减,当其为1时,减去的数就是生成多

11、项式G,为0时减去的就是0000。这里,被除数M是逐位串行送到移位寄存器的,且由CL脉冲同步。其设计过程如下:1创建控制器设计原理图。模2除法器原理图如图2.3所示。图2.3 模2除法器的原理框图2创建元件图形符号为能在图形编辑器中调用MO2芯片,需要为MO2模块创建一个元件图形符号,可利用Xilinx foundation f3.1编译器中的如下步骤实现:Tools=Symbol Wizard=下一步。CP、D是输入信号,R1、R2、R3是输出信号。其元件图形符号如图2.4所示:图2.4模2除法器元件图形符号3功能仿真对创建的控制器模块进行功能仿真,验证其功能的正确性,可用XilinxFou

12、ndation f3.1编译器Simulator模块实现。M端串行输入数据1100000,得到余数Q5、Q6、Q7为010。仿真结果如图2.5所示:图2.5 模2除法器仿真结果2.2.2移位寄存器的设计与实现该模块由8个D触发器相连接构成,数据通过M端串行输入到D触发器中。每过一个时钟脉冲,输入的数据左移一位,经过7个脉冲后,由7个D触发器的Q端并行输出所输入的数据。1创建控制器设计原理图。移位寄存器的原理框图如图2.6所示。图2.6 移位寄存器的原理框图2创建元件图形符号为能在图形编辑器原理图设计输入方式中调用MV芯片,需要为MV模块创建一个元件图形符号,可利用Xilinx foundati

13、on f3.1编译器中的如下步骤实现:Tools=Symbol Wizard=下一步。CL、M是输入信号,Q1、Q2、Q3、Q4、Q5、Q6、Q7是输出信号。其元件图形符号如图2.7所示:图2.7 移位寄存器器元件图形符号3功能仿真对创建的控制器模块进行功能仿真,验证其功能的正确性,可用XilinxFoundation f3.1编译器Simulator模块实现。M串行输入数据1100000,得到结果1100000。仿真结果如图2.8所示:图2.8 移位寄存器仿真结果2.3 仿真调试仿真调试主要验证设计电路逻辑功能、时序的正确性,本设计中主要采用功能仿真方法对设计的电路进行仿真。1建立仿真波形文

14、件及仿真信号选择功能仿真时,首先建立仿真波形文件,添加仿真信号,对选定的输入信号设置参数,选定的仿真信号和设置的参数如表2.2所示。仿真时M输入信息码1100000,J输入循环校验码0100010,G1,G2,G3,G4输入生成多项式1011,VCC恒为1。2功能仿真结果与分析功能仿真波形结果如图2.9所示,仿真数据结果如表2.2所示。对表2.2与表1.1的内容进行对比,可以看出功能仿真结果是正确的,进而说明电路设计的正确性。图2.9 功能仿真波形结果MJCLKQ1Q2Q3Q4Q5Q6Q7J1J2J3J4J5J6J7101000000100000001110000001000000000100

15、00110000000000100011110000000001001110100000000110110001011000100111000101100010表2.2仿真数据结果 在CRC生成电路中输入信息码为:1100000,生成多项式为:1011,应用模2除法器可以求出三位余数为 010 然后把余数和信息码拼接可以得到CRC编码为:1100010 在CRC校验电路中输入需要校验的CRC码为:0100010,生成多项式位:1011,可以求得三位余数位101因为余数不为000,可以判断出接受到的循环校验码是错的,并且错误位在Q1。通过校验电路修改可输出正确的CRC码1100010。由图2.9

16、的仿真图和表2.2的仿真数据结果可以看出,生成的CRC码为1100010,校验之后CRC码为1100010。 .第3章编程下载与硬件测试3.1 编程下载利用Xilinx foundation f3.1的编程下载功能,将得到的*.bit文件下载到XCV200实验板的XCV200可编程逻辑芯片中。3.2 硬件测试及结果分析利用XCV200实验板进行硬件功能测试。CRC码生成和校验的输入数据通过XCV200实验板的输入开关实现,输出数据通过XCV200实验板的LED指示灯实现,其对应关系如表3.1所示。XCV200芯片引脚信号XCV200实验板XCV200芯片引脚信号XCV200实验板XCV200芯

17、片引脚信号XCV200实验板MK1:7Q1A6J1B6JK2:7Q2A5J2B5CLKCLOCKQ3A4J3B4G1K0:7Q4A3J4B3G2KO:6Q5A2J5B2G3K0:5Q6A1J6B1G4K0:4Q7A0J7B0VCCK2:6表3.1 XCV200实验板信号对应关系利用表2.2中的输入参数作为输入数据,并将数据串行输入,同时观察发光二极管组A6-A0和发光二极管组B6-B0的输出,硬件测试结果如表3.2所示。输入信号输出信号输出信号K1:7K2:7A6A5A4A3A2A1A0B6B5B4B3B2B1B01000000010000000110000001000000000000011

18、000000000000011110000000000011101000000001011000101100010011000101100010表3.2硬件测试结果由表3.2和表2.2比较可以看出硬件测试结果是正确的,说明电路设计正确。其硬件测试最后结果如图3.1所示:图3.1 硬件测试.参考文献1曹昕燕.EDA技术实验与课程设计M.北京:清华大学出版社,20062范延滨.微型计算机系统原理、接口与EDA设计技术M.北京:北京邮电大学出版社,20063唐朔飞.计算机组成与结构M.北京:高等教育出版社,2008.附 录电路原理图课程设计总结:这学期我并没有将组成原理这门课学好,主要是由于自身不努

19、力,所以我很珍惜这次组原课设的机会。在拿到课设题目的时候,由于没有很清晰的思路,我并没有急于动手,而是查阅了大量的资料,做了充足的准备才开始动手。在做课设初期,由于对于编程软件不熟悉,耽误了进度。于是我找同学一起研究学习,并在讨论中找到了更简单的方法。但是我还是将课设题目想得有些太简单了,在第一次测试时发现校验功能不能完美实现,经过反复检查,才找到原因所在,并及时改正,最后能够顺利运行,并实现相应功能。通过这次课程设计,我学到了很多,不仅巩固了所学到的知识,并且接触了新事物,将从前所学融会贯通,成为清晰的知识网络。我很感谢这次课程设计中老师对于我的帮助,我会继续努力,做到学以致用。指导教师评语:指导教师:年月日课程设计成绩.

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!