1、 -I-目 录第 1 章 总体设计方案 .11.1 设计原理 .11.2 设计思路 .21.3 设计环境 .3第 2 章 详细设计方案 .52.1 顶层方案图的设计与实现 .52.1.1 创建顶层图形设计文件 .62.1.2 器件的选择与引脚锁定 .62.1.3 编译、综合、适配 .82.2 功能模块的设计与实现 .82.2.1 模 2 除法器的设计与实现 .82.2.2 移位寄存器的设计与实现 .102.3 仿真调试 .11第 3 章 编程下载与硬件测试 .143.1 编程下载 .143.2 硬件测试及结果分析 .14参考文献 .15附 录(电路原理图) .16沈阳航空航天大学课程设计报告-
2、1-第 1 章 总体设计方案1.1 设计原理循环冗余校验码(cyclic redundancy check,CRC)简称为循环码或 CRC 码。二进制信息沿一条信号线逐位在设备之间传送称为串行传送,CRC 码常用于串行传送过程中的检错与纠错。CRC 码的编码格式如图 1.1 所示,是在 k 位有效数据之后添加 r 位校验码,形成总长度为 n 的 CRC 码,简写作 C(n,k)码。CRC 编码的关键技术在于如何从k 位信息简便的得到 r 位校验码,并根据总长度为 n 的 CRC 码进行纠错。图 1.1设被校验的数据 是一个 k 位的二进制代码,将0121.DDk它表示为一个(k-1)阶的多项式
3、(1-1)0121 .)( DxxxxMkk 多项式(1-1)中的系数 D 的取值为 0 或 1,与被校验的数据 M 一一对应;式中的 x 是一个伪变量,用 指明各位的位置。ix设校验码 P 长度为 r,将被校验数据 D 左移 r 位后的结果为位rkkD0.0121沈阳航空航天大学课程设计报告-2-将 D 左移 r 位的目的是给 D 右边添加 r 个 0,形成(k+r) 位长度二进制代码,其多项式形式为 M(x) 。如图 1.1 所示,CRC 码由 k 位数据 D 和 r 位校验码rxP 组成,求校验码 P 的多项式 R(X)的方法如下:(1-2)()(xGRQxMrQ(x)是商,R(x)是余
4、数,R(x)所对应的二进制代码是校验码 P。可以证明存在一个最高次幂为 n- k=r 的多项式 G(x) ,即式(1-2)中 G(x),称为生成多项式。 由式(1-2)可以推导出(1-3)()(xMxGRr由式(1-3)可知,CRC 码可被 G(x)整除,余数必然为 0.。根据这一特性,接收方将收到的 CRC 码被 G(x)除,若余数为 0,则表明传送过程中没有错误发生,若出现一位错,根据余数与出错位一一对应的关系,可利用余数对错误码进行定位。因此,接收方可根据表 1.1 发现并纠正 1 位错。Q6 Q5 Q4 Q3 Q2 Q1 Q0 余数出错位正确 1 1 0 0 0 1 0 0 0 0 无
5、1 1 0 0 0 1 1 0 0 1 Q01 1 0 0 0 0 0 0 1 0 Q1错误1 1 0 0 1 1 0 1 0 0 Q2沈阳航空航天大学课程设计报告-3-表 1.1 循环校验码的出错模式1.2 设计思路根据题目要求,信息位 k=4,r=n-k=3 可知本次实验主要是完成 (7,4)码的生成和校验。CRC 码生成电路的核心主要由移位寄存器和模 2 除法器构成,信息位以串行的方式输入。依据 CRC 码生成与校验原理可知,生成电路中由输入端串行输入的数据 D 左移 3 位后,与生成多项式 G(x)做模 2 除法,并将得到的 3 位余数与 4 位信息码拼接成 7 位 CRC 码。校验电
6、路原理同生成电路,主要由移位寄存器、模 2 除法器和 3.8 译码器构成。将待检测的 CRC 码串行输入到模 2 除法器和移位寄存器中去,求得 3 位余数,利用 3.8 译码器译码将三位余数译码,通过比较可以找出出错位,并将译码结果与移位寄存器的输出结果进行异或,便得到纠正后的正确结果。CRC 码生成与校验电路主要包括两个部分:1.生成电路。由移位寄存器接收数据并进行移位,生成多项式由开关直接送入,输入数据与生成多项式通过模 2 除法器最终生成 CRC 码。2.校验电路。原理类似生成电路,校验电路中增加了 3-8 译码器。3-8 译码器与异或门共同完成对信息码的的校验与纠正,最后输出校验后的信
7、息码。本设计方案采用的元件有模 2 除法器模块,移位寄存器模块,3-8 译码器,与门,异或门。1 1 0 1 0 1 0 0 1 1 Q31 1 1 0 0 1 0 1 1 0 Q41 0 0 0 0 1 0 1 1 1 Q50 1 0 0 0 1 0 1 0 1 Q6沈阳航空航天大学课程设计报告-4-移位寄存器由 7 个 D 触发器构成。模 2 除法器由若干两输入与门,若干两输入异或门和 D 触发器构成。1.3 设计环境(1)硬件环境:伟福 COP2000 型计算机组成原理实验仪、XCV200 实验板、微机。COP2000 集成调试软件COP2000 集成开发环境是为 COP2000 实验仪
8、与 PC 机相连进行高层次实验的配套软件,它通过实验仪的串行接口和 PC 机的串行接口相连,提供汇编、反汇编、编辑、修改指令、文件传送、调试 FPGA 实验等功能,该软件在Windows 下运行。 COP2000 集成开发环境界面如图 1.2 所示。沈阳航空航天大学课程设计报告-5-图 1.2 COP2000 计算机组成原理集成调试软件沈阳航空航天大学课程设计报告-6-(2)EDA 环境:Xilinx foundation f3.1 设计软件Xilinx foundation f3.1 是 Xilinx 公司的可编程期间开发工具,该平台(如图1.3 所示)功能强大,主要用于百万逻辑门设计。该系
9、统由设计入口工具、设计实现工具、设计验证工具三大部分组成。图 1.3 Xilinx foundation f3.1 设计平台第 2 章 详细设计方案2.1 顶层方案图的设计与实现顶层方案图实现 CRC 码的生成与校验的逻辑功能,采用原理图设计输入方式完成,电路实现基于 XCV200 可编程逻辑芯片。在完成原理图的功能设计后,把输入/输出信号安排到 XCV200 指定的引脚上去,实现芯片的引脚锁定。沈阳航空航天大学课程设计报告-7-2.1.1 创建顶层图形设计文件顶层图形文件的设计实体主要由 CRC 码生成电路与 CRC 码校验电路组成。生成电路主要由移位寄存器元件-U2、模 2 除法器元件-U
10、3 构成。如图 2.1 所示。图 2.1 CRC 码生成电路图校验电路主要由移位寄存器元件-U5、模 2 除法器-U4 ,3-8 译码器,异或门集成模块-U6 构成。如图 2.2 所示。图 2.2 CRC 码校验电路图2.1.2 器件的选择与引脚锁定(1)器件的选择沈阳航空航天大学课程设计报告-8-由于硬件设计环境是基于伟福 COP2000 型计算机组成原理实验仪和 XCV200实验板,故采用的目标芯片为 Xlinx XCV200 软件中可用芯片。(2)引脚锁定把顶层图形文件中的输入/输出信号安排到 Xlinx XCV200 芯片指定的引脚上去,实现芯片的引脚锁定,各信号及 Xlinx XCV
11、200 芯片引脚对应关系如表 2.1 所示。 图形文件中的输入/输出信号 XCV200 芯片引脚D 87A 73CLK 213VCC 47G3 100G2 101G1 102G0 103Q6 152Q5 178Q4 184沈阳航空航天大学课程设计报告-9-表 2.1 信号和芯片引脚对应关系2.1.3 编译、综合、适配利用 Xilinx foundation f3.1 的原理图编辑器对顶层图形文件进行编译,并最终生成网络表文件,利用设计实现工具经综合、优化、适配,生成可供时序仿真的文件和器件下载编程文件。Q3 185Q2 203Q1 111Q0 110L6 93L5 99L4 107L3 108L2 109L1 124L0 125