




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课课 程程 设设 计计 报报 告告课程设计名称:组成原理课程设计组成原理课程设计课程设计题目:循环冗余校验码生成电路循环冗余校验码生成电路 的设计与实现的设计与实现 院(系):计算机学院专 业:计算机科学与技术 班 级:学 号: 姓 名: 指导教师: 说明:结论(优秀、良好、中等、及格、不及格)作为相关教环节考核必要依据;格式不符合要说明:结论(优秀、良好、中等、及格、不及格)作为相关教环节考核必要依据;格式不符合要求;数据不实求;数据不实,不予通过。报告和电子数据必须作为实验现象重复的关键依据。不予通过。报告和电子数据必须作为实验现象重复的关键依据。指导教师评语:签名:审查结论: 年 月 日
2、沈阳航空航天大学课程设计报告 学术诚信声明 本人声明本人声明:所呈交的报告(含电子版及数据文件)是我个人在导师指导下独立进行设计工作及取得的研究结果。尽我所知,除了文中特别加以标注或致谢中所罗列的内容以外,报告中不包含其他人己经发表或撰写过的研究结果,也不包含其它教育机构使用过的材料。与我一同工作的同学对本研究所做的任何贡献均己在报告中做了明确的说明并表示了谢意。报告资料及实验数据若有不实之处,本人愿意接受本教学环节“不及格”和“重修或重做”的评分结论并承担相关一切后果。 本人签名: 日期: 年 月 日沈阳航空航天大学课程设计报告 I 沈阳航空航天大学沈阳航空航天大学课课程程设设计计任任务务书
3、书课程名称计计算算机机组组成成原原理理课课程程设设计计专业计算机科学与技术计算机科学与技术学生姓名班级计算机计算机学号题目名称循环冗余校验码生成电路的设计与实现循环冗余校验码生成电路的设计与实现起止日期2016年12月19日起至2016年12月30日止课设内容和要求:一、课程设计内容采用 Xilinx Foundation F3.1 可编程器件开发工具软件、伟福 COP2000 实验箱设计并实现循环冗余校验码生成电路。二、课程设计要求1采用自上而下的设计方法,顶层设计使用原理图设计输入方式(电路图方式实现) ;底层设计输入方式自行选定(可用电路图实现、也可通过 VHDL 语言编程实现);2课程
4、设计的电路主要应包括:模 2 除电路、余数产生电路、校验码拼接电路、移位电路等;3必须用基本逻辑门实现。输入数据为 4 位,选定 4 位生成多项式,输出 7 位的校验码;4对设计电路进行仿真并验证其正确性,仿真数据由指导教师给出; 5实现编程下载和硬件测试;6独立设计、调试、仿真、下载和硬件测试并通过指导教师现场验收;7撰写课程设计报告。参考资料:1 唐硕飞.计算机组成原理(第 2 版) M.北京:高等教育出版社,20082 曹昕燕. EDA 技术实验与课程设计M.北京:清华大学出版社,20063 范延滨.微型计算机系统原理、接口与 EDA 设计技术M.北京:北京邮电大学出版社,20064 王
5、爱英.计算机组成与结构(第 4 版)M.北京:清华大学出版社,2006教教研研室室审审核核意意见见:同同意意( ) 不不同同意意( ) 教教研研室室主主任任签签字字:指导教师(签名)指导教师(签名)2016年12月19日学生签名学生签名2016年12月19日沈阳航空航天大学课程设计报告 II 课程设计总结:课程设计总结:刚进入实验室时对微机中的 Xilinx Foundation F3.1软件环境掌握不够熟悉,不能熟练的应用 Xilinx Foundation F3.1软件进行电路的连接,后经过老师的细心讲解,终于对 Xilinx Foundation F3.1软件有了很好的掌握能力,能够熟练
6、的应用 Xilinx Foundation F3.1软件进行电路的接。在连接电路过程中出现很多问题,如器件的选择,管脚的锁定等都出现很多错误,在老师和同学的指导下,顺利的解决了这些问题,并且在老师的指导下对未封装的电路进行了封装,顺利的完成了电路的连接。该电路能够实现所需功能。这次课程设计的任务是做 CRC 码生成电路的设计与实现。一开始是对CRC 码的认识存在误区,没有真正认识 CRC 码的生成过程,通过查教材和辅导书我明白了它是可以由信息码和余数多项式合成的。还有对芯片的制作与封装。封装是老师要求的重点,开始我并不在意,后来电路图的连线越来越多,才认识封装的重要性。由于设计的电路在仿真方面
7、总是出问题,后来通过对每一个部分做仿真,才找出错误,我想今后我不会再犯这样的错误了。从初步构思到一步步完善直到最后完成整个课程设计,让我更好的巩固了自己所学的知识。翻阅图书去学习一些没有接触过的知识让我更好的了解了这门课程,增强的实践动手能力。虽然过程中有迷茫,但是我坚信我可以做到。两周的课程设计结束了,在这两周中收获非常多。虽然课程设计题目只有一个,但在这一个题目中学到了很多课堂上学不到的专业知识。经过这次课设,我对书本的知识有了更进一步的理解,锻炼了我的动手能力,使我的能力有很大的提高。为将来参加实际工作奠定了良好的基础。总的来说,虽然完成了老师安排的任务,但是还没有达到尽善尽美的地步,还
8、有很多要学习,要实践。虽然课程设计结束了,但是我们才刚刚踏入计算机硬件领域,还有太多太多的知识有待我们去摸索。在实践中学习,在学习中实践,是这次课程设计让我领悟到的,更是以后学习生活中我该做到的。在此请老师接受我最真挚的诚意,让我成长让我掌握的更多!沈阳航空航天大学课程设计报告 III 沈阳航空航天大学课程设计报告 IV 目目 录录第第 1 章章 总体设计方案总体设计方案.11.1 设计原理.11.2 设计思路.21.3 设计环境.3第第 2 章章 详细设计方案详细设计方案.42.1 顶层方案图的设计与实现.42.1.1 创建顶层图形设计文件.42.2 功能模块的设计.42.2.1 移位寄存器
9、的设计.52.2.2 模 2 除法器的设计.62.3 CRC 码生成电路整体仿真.9第第 3 章章 编程下载与硬件测试编程下载与硬件测试.113.1 器件的选择与引脚锁定.113.2 编程下载.123.3 硬件测试及结果分析.12参考文献参考文献.15附附 录(电路原理图)录(电路原理图).16沈阳航空航天大学课程设计报告 0 第 1 章 总体设计方案1.1 设计原理设计原理循环冗余校验码(Cyclic Redundancy Check,CRC)简称为循环码或 CRC 码。此码可以发现并纠正信息在存储或传送过程中连续出现的多位错误代码。计算机常用的二进制信息沿一条信号线逐位在设备之间传送称为串
10、行传送,CRC 码常用于串行传送过程中的检错与纠错。CRC 码一般是指 n 位信息码之后拼接 k 位校验码。CRC 码是一种从 n 位信息码能简便的得到 k 位校验码,并且能从 n+k 位信息码中判断是否出错。首先输入信息码,根据信息码由多项式因子的计算公式得到相应的校验码,然后将进行移位的信息码与得到的校验码进行拼接,即可得到正确的 CRC 码。CRC 码是基于模 2 运算而建立编码规律的校验码。在进行 CRC 计算时,采用二进制(模 2)运算法,即加法不进位,减法不借位,其本质就是两个操作数进行逻辑异或运算。设待发送数据为 D(x),生成多项式为 G(x)。信息码长 k 位,校验码长 n-
11、k 位,则编码后的码长为 n 位。如表 1.1:表表 1.1 CRC 码编码格式码编码格式123kK+1n信息码CRC 校验码设被校验的数据是一个 k 位的二进制代码,将0121.DDDDDkk它表示为一个(k-1)阶的多项式 (1-1)0112211.)(DxDxDxDxMkkkk多项式(1-1)中的系数 D 的取值为 0 或 1,与被校验的数据 M 一一对应;式中的 x 是一个伪变量,用指明各位的位置。ix设校验码 P 长度为 r,将被校验数据 D 左移 r 位后的结果为位rkkDDDD00.00.0121沈阳航空航天大学课程设计报告 1 将 D 左移 r 位的目的是给 D 右边添加 r
12、个 0,形成(k+r)位长度二进制代码,其多项式形式为 M(x)。如图 1.1 所示,CRC 码由 k 位数据 D 和 r 位校验码rxP 组成,求校验码 P 的多项式 R(X)的方法如下: (1-2)()()()()(xGxRxQxGxxMrQ(x)是商,R(x)是余数,R(x)所对应的二进制代码是校验码 P。可以证明存在一个最高次幂为 n- k=r 的多项式 G(x) ,即式(1-2)中 G(x),称为生成多项式。 由式(1-2)可以推导出 (1-3)()()()(xMxGxRxxMr由式(1-3)可知,CRC 码可被 G(x)整除,余数必然为 0。根据这一特性,接收方将收到的 CRC 码
13、被 G(x)除,若余数为 0,则表明传送过程中没有错误发生,若出现一位错,根据余数与出错位一一对应的关系,可利用余数对错误码进行定位。1.2 设计思路设计思路根据课设题目要求,可知本次实验主要是完成(7,4)码生成电路的设计与实现。CRC 码生成电路的核心主要由移位寄存器和模 2 除法器构成,信息位以串行的方式输入。模块划分如图 1.1:图图 1.1 模块图模块图依据 CRC 码生成原理可知,生成电路中由输入端串行输入的 4 位二进制数据 D 左移 3 位后,与生成多项式 G(x)做模 2 除法,并将得到的 3 位余数与 4 位信息码拼接成 7 位 CRC 码。本设计方案采用的元件有模 2 除
14、法器模块,移位寄存器模块,与门,异或门等电子元件。移位寄存器由 7 个 D 触发器构成。模 2 除法器由若干两输入与门,若干两输入异或门和 D 触发器构成。循环冗余校验码生成电路模 2 除法器移位寄存器沈阳航空航天大学课程设计报告 2 1.3 设计环境设计环境(1)硬件环境:)硬件环境:伟福 COP2000 型计算机组成原理实验仪、XCV200 实验板、计算机。 COP2000 集成开发环境是为 COP2000 实验仪与 PC 机相连进行高层次实验的配套软件,它通过实验仪的串行接口和 PC 机的串行接口相连,提供汇编、反汇编、编辑、修改指令、文件传送、调试 FPGA 实验等功能,该软件在Win
15、dows 下运行。COP2000 运行界面如图 1.2 所示。图图 1.2 COP2000 界面界面(2)EDA 环境:环境: Xilinx foundation f3.1 是 Xilinx 公司的可编程期间开发工具,该平台(如图1.3 所示)功能强大,主要用于百万逻辑门设计。该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。图图 1.3 Xilinx foundation f3.1 界面界面沈阳航空航天大学课程设计报告 3 第 2 章 详细设计方案2.1 顶层方案图的设计与实现顶层方案图的设计与实现 顶层方案图实现 CRC 码的生成的逻辑功能,采用原理图设计输入方式完成,电路实现
16、基于 XCV200 可编程逻辑芯片。在完成原理图的功能设计后,把输入/输出信号安排到 XCV200 指定的引脚上去,实现芯片的引脚锁定。2.1.1 创建顶层图形设计文件创建顶层图形设计文件顶层图形文件的设计实体主要由 CRC 码生成电路各主要模块组成。生成电路主要由移位寄存器元件-YW、模 2 除法器元件-M2C 构成。如图 2.1 所示。图图 2.1 CRC 码生成电路原理图码生成电路原理图利用 Xilinx foundation f3.1 的原理图编辑器对顶层图形文件进行编译,并最终生成网络表文件,利用设计实现工具经综合、优化、适配,生成可供时序仿真的文件和器件下载编程文件。2.2 功能模
17、块的设计功能模块的设计CRC 码的生成与校验是基于移位寄存器和模 2 除法器及异或门实现的。具体设计如下。2.2.1 移位寄存器的设计移位寄存器的设计该模块由 7 个 D 触发器相连接构成,数据通过 D 端串行输入到 D 触发器中。沈阳航空航天大学课程设计报告 4 每过一个时钟脉冲,输入的数据左移一位,经过 7 个脉冲后,由 7 个 D 触发器的Q 端并行输出所输入的数据。(1)创建元件图形符号)创建元件图形符号为能在图形编辑器(原理图设计输入方式)中调用 MOV 芯片,需要为 MOV模块创建一个元件图形符号,可利用 Xilinx foundation f3.1 编译器中的如下步骤实现:Too
18、ls=Symbol Wizard=下一步。CP、D 是输入信号,Q6、Q5、Q4、Q3、Q2、Q1、Q0 是输出信号。其元件图形符号如 2.2 所示:图图 2.2 移位寄存器器元件图形符号移位寄存器器元件图形符号(2)创建控制器设计原理图创建控制器设计原理图移位寄存器的原理框图如图 2.3 所示。图图 2.3 移位寄存器的原理图移位寄存器的原理图沈阳航空航天大学课程设计报告 5 (3)移位寄存器功能仿真)移位寄存器功能仿真对创建的控制器模块进行功能仿真,验证其功能的正确性,可用 Xilinx Foundation f3.1 编译器 Simulator 模块实现。D 串行输入数据 1100,得到
19、结果1100000。仿真结果如图 2.4 所示:图图 2.4 移位寄存器仿真结果移位寄存器仿真结果 如上图所示,串行输入数据 1100,经过 7 个时钟周期后,得到 Q6-Q0 的结果为 1100000。第二组测试数据 D 端输入 1110,得到结果 1110000。仿真结果如图 2.5 所示:图图 2.5 移位寄存器仿真结果移位寄存器仿真结果第二组仿真结果如图所示,串行输入数据 1110,经过 7 个时钟周期后输出Q6-Q0 的结果为 1110000。2.2.2 模模 2 除法器的设计除法器的设计模 2 运算的特点是不考虑进位和错位的运算,期规律如下: 模 2 加和模 2 减的结果是相等的,
20、即 01=1,00=0,10=1,11=0。可沈阳航空航天大学课程设计报告 6 见,两个相同数的模 2 和恒为 0。 模 2 乘是按模 2 和求部分积之和。 模 2 除是按模 2 减求部分余数。每求一位商应使部分余数减少一位。上商的原则是:当部分余数的首位为 1 时,上商 1;当部分余数的首位为 0 时,上商 0。当部分余数的位数小于除数的位数时,该余数即为最后余数。该模块由 D 触发器、与门和异或门构成。对(7,4)校验码,可采用图 6 所示电路,产生 3 位的余数 Q2、Q1、Q0。图中的模 2 减用异或门实现,左移一位由移位寄存器实现;用异或门的输出控制左边一位寄存器的 D 输入端,可同
21、时实现模2 减和左移。用最左一位 D 触发器的取值控制是否做模 2 减,当其为 1 时,减去的数就是生成多项式 G(x),为 0 时减去的就是 0000。这里,被除数 D 是逐位串行送到移位寄存器的,且由 CP 脉冲同步。其设计过程如下:(1)创建元件图形符号)创建元件图形符号为能在图形编辑器(原理图设计输入方式)中调用 MOD2 芯片,需要为 MOD2模块创建一个元件图形符号,可利用 Xilinx foundation f3.1 编译器中的如下步骤实现:Tools=Symbol Wizard=下一步。CP、D、A3、A2、A1、A0 是输入信号,Q2、Q1、Q0 是输出信号。其元件图形符号如
22、图 2.6 所示:图图 2.6 除法器元件图形符号除法器元件图形符号(2)创建控制器设计原理图)创建控制器设计原理图用各种门电路连接实现具体实验原理电路图,如图 2.7 所示。沈阳航空航天大学课程设计报告 7 图图 2.7 模模 2 除法器的原理图除法器的原理图(3)模)模 2 除法器功能仿真除法器功能仿真 对创建的控制器模块进行功能仿真,验证其功能的正确性,可用 Xilinx Foundation f3.1 编译器 Simulator 模块实现。D 端串行输入数据 1100,得到余数 Q2、Q1、Q0 为 010。仿真结果如图 2.8 所示:图图 2.8 模模 2 除法器仿真结果除法器仿真结
23、果如仿真图所示,通过串行输入方式,将第一组数据 1100 输入到 D 端,经过7 个时钟周期的模 2 除法器运算后,得到三位余数 Q2-Q0 为 010。第二组测试数据 D 端串行输入 1110,得到余数 Q2、Q1、Q0 为 100。仿真结果如图 2.9 所示:图图 2.9 模模 2 除法器仿真结果除法器仿真结果沈阳航空航天大学课程设计报告 8 如仿真图所示,通过串行输入方式,将第一组数据 1110 输入到 D 端,经过7 个时钟周期的模 2 除法器运算后,得到三位余数 Q2-Q0 为 100。2.3 CRC 码生成电路整体仿真码生成电路整体仿真仿真调试主要验证设计电路逻辑功能、时序的正确性
24、,本设计中主要采用功能仿真方法对设计的电路进行仿真。(1)建立仿真波形文件及仿真信号选择)建立仿真波形文件及仿真信号选择功能仿真时,首先建立仿真波形文件,添加仿真信号,对选定的输入信号设置参数,选定的仿真信号和设置的参数如表 2.1 所示。仿真时 D 输入信息码1100,A 输入循环校验码 1100000,G0、G1、G2、G3 输入生成多项式 1011。表表 2.1 仿真数据参数仿真数据参数DCLOCKQ6Q5Q4Q3Q2Q1Q0110000001110000011010000110010001111010011101010110001011100010(2)功能仿真结果与分析)功能仿真结果
25、与分析 功能仿真波形结果如图 2.10 所示,仿真数据结果如表 2 所示。对表 2 与表 1的内容进行对比,可以看出功能仿真结果是正确的,进而说明电路设计的正确性。沈阳航空航天大学课程设计报告 9 图图 2.10 功能仿真波形结果功能仿真波形结果 输入信息码为:1100,生成多项式为:1011,应用模 2 除法器可以求出三位余数为 010 ,然后把余数和信息码拼接可以得到 CRC 编码为:1100010。 第二组测试数据 D 端串行输入 1110,生成多项式仍为 1011。选定的仿真信号和设置的参数如表 2.2 所示。表表 2.2 仿真数据参数仿真数据参数DCLOCKQ6Q5Q4Q3Q2Q1Q
26、0110000001110000011110000111010001101010011001010111010011110100 仿真结果如图 2.11 所示:沈阳航空航天大学课程设计报告 10 图图 2.11 CRC 码生成结果仿真波形码生成结果仿真波形 输入信息码为 1110,经过移位寄存器 7 个 D 触发器变换后为 1110000;模 2除法器输入的也是 1110 四位二进制数,经运算得余数 100。最终将余数与信息码拼接可得到 CRC 编码:1110100。沈阳航空航天大学课程设计报告 11 第 3 章 编程下载与硬件测试3.1 器件的选择与引脚锁定器件的选择与引脚锁定(1)器件的选
27、择)器件的选择由于硬件设计环境是基于伟福 COP2000 型计算机组成原理实验仪和 XCV200实验板,故采用的目标芯片为 Xlinx XCV200 软件中可用芯片。(2)引脚锁定)引脚锁定把顶层图形文件中的输入/输出信号安排到 Xlinx XCV200 芯片指定的引脚上去,实现芯片的引脚锁定,各信号及 Xlinx XCV200 芯片引脚对应关系如表 3.1 所示。 表表 3.1 信号和芯片引脚对应关系信号和芯片引脚对应关系图形文件中的输入图形文件中的输入/输出信号输出信号XCV200 芯片引脚芯片引脚D87CLK213G3100G2101G1102G0103Q6152Q5178Q4184Q3
28、185Q2203Q1111Q0110沈阳航空航天大学课程设计报告 12 3.2 编程下载编程下载利用 COP2000 仿真软件的编程下载功能,将得到.bit 文件下载到 XCV200 实验板的 XCV200 可编程逻辑芯片中。3.3 硬件测试及结果分析硬件测试及结果分析利用 XCV200 实验板进行硬件功能测试。CRC 码生成和校验的输入数据通过XCV200 实验板的输入开关实现,输出数据通过 XCV200 实验板的 LED 指示灯实现,其对应关系如表 3.2 所示。表表 3.2 XCV200 实验板信号对应关系实验板信号对应关系利用表 2.1 中的输入参数作为输入数据,逐个测试输出结果,即用
29、 XCV200实验板的开关组 K0 中的 1,2,3,4 输入多项式数据 1011,用开关组 K1 中的 1号开关串行输入信息码 1100,同时观察发光二极管组 A0-A6 的输出,得到如表 3.3所示的硬件测试结果。表表 3.3 硬件测试结果硬件测试结果输入输入输出输出DCLOCKA6A5A4A3A2A1A0110000001110000011010000110010001111010011101010110001011100010XCV200 芯片引脚信号芯片引脚信号XCV200 实验板实验板XCV200 芯片引脚信号芯片引脚信号XCV200 实验板实验板DK1:0Q6A6CLKCLOCKQ5A5A3K0:3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《餐饮服务与管理》课件-教学课件:餐饮常见服务技能
- 2025年新编劳动合同法范本
- 2025年短期建筑项目的借款合同范本
- 2025租房合同无效情况详解:合同无效的种种原因
- 新质生产力封面
- 新课标下的小学数学教学设计
- 2025咨询服务合同封面盖章范本
- 2025国内货物买卖合同示范文本
- 2025《专业技能劳动合同》
- 2025最标准买卖合同范本
- Python 程序设计智慧树知到期末考试答案章节答案2024年四川师范大学
- 03D201-4 10kV及以下变压器室布置及变配电所常用设备构件安装
- 城乡环卫保洁投标方案(技术标)
- 充值合同范本
- MSDS中文版(锂电池电解液)
- 《职业病防治法》知识考试题库160题(含答案)
- 全国初中数学青年教师优质课一等奖《反比例函数的图象和性质》教学设计
- 2023-2024学年人教版数学八年级下册期中复习卷
- 环境监测仪器安装施工方案(更新版)
- (招标投标)地形图测绘技术标书OK
- 人保查勘服务流程
评论
0/150
提交评论