阵列除法器

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

沈阳航空工业学院
课程设计报告
课程设计名称:计算机组成原理课程设计课程设计题目:阵列除法器的设计
院(系):计算机学院
专业:计算机科学与技术
班级:7401101
学号:************
*****
指导教师:***
完成日期:2010年1月15日
沈阳航空工业学院课程设计报告
目录
第1章总体设计方案 (1)
1.1设计原理 (1)
1.2设计思路 (2)
1.3设计环境 (3)
第2章详细设计方案 (6)
2.1顶层方案图的设计与实现 (6)
2.1.1创建顶层图形设计文件 (6)
2.1.2器件的选择与引脚锁定 (7)
2.1.3编译、综合、适配 (8)
2.2功能模块的设计与实现 (8)
2.3仿真调试 (10)
第3章编程下载与硬件测试 (12)
3.1编程下载 (12)
3.2硬件测试及结果分析 (12)
参考文献 (14)
附录(电路原理图) (15)
第1章总体设计方案
1.1 设计原理
阵列除法器的功能是利用一个可控加法/减法(CAS)单元所组成的流水阵列来实现的。

它有四个输出端和四个输入端。

当输入线P=0时,CAS作加法运算;当P=1时,CAS作减法运算。

可控加法/减法(CAS)单元的逻辑电路图如图1.1所示。

图1.1可控加法/减法(CAS)单元的逻辑图
CAS单元的输入与输出关系可用如下一组逻辑方程来表示:
S i=A i ⊕(B i ⊕P) ⨁C
C i+1=(A i+C i) ∙(B i ⊕P)+A i C i
当P=0时,就得到我们熟悉的一位全加器(FA)的公式:
S i=A i ⊕B i ⊕C i
C i+1=A i B i+B i C i+A i C i
当P=1时,则得求差公式:
S i=A i ⨁B i '⨁C i
C i+1=A i B i '+B i 'C i+A i C i
其中B i '=B i⨁1。

在减法情况下,输入C i称为借位输入,而C i+1称为借位输出。

不恢复余数的除法也称加减交替法。

在不恢复余数的除法阵列中,每一行所执行的操作究竟是加法还是减法,取决于前一行输出的符号与被除数的符号是否一致。

当出现不够减时,部分余数相对于被除数来说要改变符号。

这时应该产生一个商位“0”,除数首先沿对角线右移,然后加到下一行的部分余数上。

当部分余数不改变它的符号时,即产生商位“1”,下一行的操作应该是减法。

本实验就采用加减交替的方法设计阵列除法器。

图1.2所示的就是4位除4位不恢复余数阵列除法器的逻辑原理图。

图1.2 4位除4位阵列除法器
1.2设计思路
不恢复余数阵列除法器是用一个可控加法/减法(CAS)单元所组成的流水阵列来实现的。

由图1.2可知,被除数x=0.x6x5x4x3x2x1,它是由顶部一行和最右边的对角线上的垂直输入线来提供的。

除数y=0.y3y2y1,它沿对角线方向进入这个阵列。

这是因为,在除法中将所需要的部分余数保持固定,而将除数沿对角线右移。

商q=0.q3q2q1,它在阵列的左边产生。

余数r=0.00r6r5r4r3,它在阵列的最下一行产生。

最上面一行所执行的初始操作一定是减法。

因此最上面一行的控制性P固定
置成“1”。

减法是用2的补码运算来实现的,这时右端各CAS单元上的反馈线用作初始的进位输入,即最低位加“1”。

每一行最左边的单元的进位输出决定着商的数值。

将当前的商反馈到下一行,我们就能确定下一行的操作。

由于进位输出信号指示出当前的部分余数的符号,因此,它将决定下一行的操作将进行加法还是减法。

对不恢复余数阵列除法器来说,在进行运算时,沿着每一行都有进位(或借位)传播,同时所有行在它们的进位链上都是串行连接。

阵列除法器的设计采用原理图设计输入方式,经编译、调试后形成*.bit文件并下载到XCV200可编程逻辑芯片中,经硬件测试验证设计的正确性。

1.3 设计环境
(1)硬件环境
•伟福COP2000型计算机组成原理实验仪
COP2000计算机组成原理实验系统由实验平台、开关电源、软件三大部分组成实验平台上有寄存器组R0-R3、运算单元、累加器A、暂存器B、直通/左移/右移单元、地址寄存器、程序计数器、堆栈、中断源、输入/输出单元、存储器单元、微地址寄存器、指令寄存器、微程序控制器、组合逻辑控制器、扩展座、总线插孔区、微动开关/指示灯、逻辑笔、脉冲源、20个按键、字符式LCD、RS232口。

COP2000计算机组成原理实验系统各单元部件都以计算机结构模型布局,清晰明了,系统在实验时即使不借助PC 机,也可实时监控数据流状态及正确与否, 实验系统的软硬件对用户的实验设计具有完全的开放特性,系统提供了微程序控制器和组合逻辑控制器两种控制器方式,系统还支持手动方式、联机方式、模拟方式三种工作方式,系统具备完善的寻址方式、指令系统和强大的模拟调试功能。

·XCV200实验板
在COP2000实验仪中的FPGA实验板主要用于设计性实验和课程设计实验,它的核心器件是20 万门XCV200 的FPGA 芯片。

用FPGA实验板可设计8 位16位和32 位模型机。

XCV200相应管脚已经连接好配合FPGA实验板的PC调试软件可方便地
进行各种实验。

U3 IDT71V016SA 是64Kx16位存储器能保存大容量的程序。

C0-C5D0-D5是12 个7段数码管用于显示模型机内部的寄存器总线数值,在设计时可将需要观察的内部寄存器总线等值接到这些7 段管上直观地观察模型机运行时内部状态变化。

A0-A7、B0-B7是16 个LED发光二极管用于显示模型机内部的状态例如进位标志零标志中断申请标志等等。

K0(0-7)-K4(0-7)是四十个开关用于输入外部信号,例如在做单步实验时这些开关可用来输入地址总线值数据总线值控制信号等。

T6B595 是7 段数码管的驱动芯片,74HC1649是串转并芯片,用于接16 个LED。

(2)EDA环境
•Xilinx foundation f3.1设计软件
Xilinx foundation f3.1是Xilinx公司的可编程期间开发工具,该平台(如图1.3所示)功能强大,主要用于百万逻辑门设计。

该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。

图 1.3 Xilinx foundation f3.1设计平台
设计入口工具包括原理图编辑器、有限状态机编辑器、硬件描述语言(HDL)编辑器、LogiBLOX模块生成器、Xilinx内核生成器等软件。

其功能是:接收各种图形或文字的设计输入,并最终生成网络表文件。

设计实现工具包括流程引擎、限制编辑器、基片规划器、FPGA编辑器、FPGA写入器等软件。

设计实现工具用于将网络表转化为配置比特流,并下载到器件。

设计验证工具包括功能和时序
仿真器、静态时序分析器等,可用来对设计中的逻辑关系及输出结果进行检验,并详尽分析各个时序限制的满足情况。

•COP2000仿真软件
COP2000 集成开发环境是为COP2000 实验仪与PC 机相连进行高层次实验的配套软件,它通过实验仪的串行接口和PC 机的串行接口相连,提供汇编、反汇编、编辑、修改指令、文件传送、调试FPGA 实验等功能,该软件在Windows 下运行。

OP2000 集成开发环境界面如图1.4所示。

图 1.4 COP2000计算机组成原理集成调试软件
第2章详细设计方案
2.1 顶层方案图的设计与实现
顶层方案图实现阵列除法器的逻辑功能,采用原理图设计输入方式完成,电路实现基于XCV200可编程逻辑芯片。

在完成原理图的功能设计后,把输入/输出信号安排到XCV200指定的引脚上去,实现芯片的引脚锁定。

2.1.1创建顶层图形设计文件
顶层设计采用了原理图设计输入方式,图形文件主要由可控加法/减法(CAS)单元构成,是由16个CAS模块组装而成的一个完整的设计实体。

可利用Xilinx foundation f3.1 ECS模块实现顶层图形文件的设计,顶层图形文件结构如图2.1所示。

图2.1 阵列除法器顶层文件结构图
图 2.1所示的阵列除法器的顶层文件结构是由一个阵列除法器通过Xilinx foundation f3.1封装后构成,其中X7.X6X5X4X3X2X1 为被除数,Y4.Y3Y2Y1为除数,P为加减控制端(1为减法,0为加法),Q4.Q3Q2Q1为商,0.00R6R5R4R3位余数。

其电路原理如图2.2所示。

图2.2 阵列除法器电路原理图
2.1.2器件的选择与引脚锁定
(1)器件的选择
由于硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,故采用的目标芯片为Xilinx XCV200可编程逻辑芯片。

(2)引脚锁定
把顶层图形文件中的输入/输出信号安排到Xilinx XCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及Xilinx XCV200芯片引脚对应关系如表2.1所示。

表2.1 信号和芯片引脚对应关系
图形文件中的输入/输出信号XCV200芯片引脚信号
P P84
Y4 P85
Y3 P86
Y2 P87
Y1 P94
X7 P95
X6 P96
X5 P97
X4 P100
X3 P101
X2 P102
X1 P103
Q4 P108
Q3 P109
Q2 P124
Q1 P125
R6 P185
R5 P203
R4 P111
R3 P110
2.1.3编译、综合、适配
利用Xilinx foundation f3.1的原理图编辑器对顶层图形文件进行编译,并最终生成网络表文件,利用设计实现工具经综合、优化、适配,生成可供时序仿真的文件和器件下载编程文件。

2.2 功能模块的设计与实现
阵列除法器的底层设计包括16个可控加法/减法(CAS)模块,这个可控加法/减法(CAS)模块由2个或门、3个异或门和2个与门逻辑组合成电路实现。

可控加法/减法(CAS)模块逻辑图如图2.3所示。

图2.3 可控加法/减法(CAS)单元逻辑图
为了在为能在图形编辑器(原理图设计输入方式)中调用可控加法/减法(CAS) 芯片,需要把它封装,可利用Xilinx foundation f3.1编译器中的如下步骤实现:Tools=>Symbol Wizard=>下一步。

PI、BI、AI、CI 为4个输入信号,BO、PO、CO、SO为4个输出信号。

其元件图形符号如图2.4所示。

图2.4 控制器元件图形符号图
对创建的控制器模块进行功能仿真,验证其功能的正确性,可用Xilinx Foundation f3.1编译器CAS模块实现。

按照表2.2的输入信号进行仿真,仿真结果如图2.5所示。

表2.2 仿真数据理论结果
输入信号输出信号
AI BI PI CI CO PO SO BO
1 1 1 1 1 1 0 1
0 0 0 1 0 0 1 0
1 0 0 1 1 0 0 0
1 0 0 0 0 0 1 0
图2.5 CAS功能仿真波形结果
将仿真结果与由仿真表2.2中的输出信号的理论之相比较,发现仿真结果正确,所以可控加法/减法(CAS) 模块设计正确。

2.3 仿真调试
仿真调试主要验证设计电路逻辑功能、时序的正确性,本设计中主要采用功能仿真方法对设计的电路进行仿真。

(1)建立仿真波形文件及仿真信号选择
功能仿真时,首先建立仿真波形文件,选择仿真信号,对选定的输入信号设置参数(以一组数据为例),选定的仿真信号和设置的参数如表2.3所示。

表2.3 仿真信号选择和参数设置
(2)功能仿真结果与分析
当被除数X=0.101001,除数Y=0.111时,得出商的理论值Q=0.101,余数的理论值R=0.000110。

按照表2.3的输入信号进行仿真,仿真结果如图2.6所示。

输入信号输出信号
X7 0 X3 0 Y3 1 Q4 0 R6 0
X6 1 X2 0 Y2 1 Q3 1 R5 1
X5 0 X1 1 Y1 1 Q2 0 R4 1
X4 1 Y4 0 P 1 Q1 1 R3 0
将功能仿真波形结果图(图2.6)同仿真数据理论结果表(表2.4)相比较,发现结果完全一致。

可以看出功能仿真结果是正确的,进而说明电路设计的正确性。

第3章编程下载与硬件测试
3.1 编程下载
利用COP2000仿真软件的编程下载功能,将得到liufei3.bit文件下载到XCV200实验板的XCV200可编程逻辑芯片中。

3.2 硬件测试及结果分析
利用XCV200实验板进行硬件功能测试。

定点原码一位乘法器的输入数据通过XCV200实验板的输入开关实现,输出数据通过XCV200实验板的LED指示灯实现,其对应关系如表3.1所示。

表3.1 XCV200实验板信号对应关系
利用表2.2中的输入参数作为输入数据,逐个测试输出结果,即用XCV200实验板的开关K0及K1控制数据输入,同时观察数码显示管和发光二极管显示结果,得到如图3.1所示的硬件测试结果。

图3.1 硬件测试结果图
可以看出硬件测试结果为商等于5,余数等于6,都是16进制的数。

换成二进制分别为101、0110,符号位均为0,与表2.4中的理论值相同,说明电路设计完全正确。

也就是说阵列除法器设计成功。

参考文献
[1] 曹昕燕.EDA技术实验与课程设计[M].北京:清华大学出版社,2006
[2] 范延滨.微型计算机系统原理、接口与EDA设计技术[M].北京:北京邮电大
学出版社,2006
[3] 王爱英.计算机组成与结构(第4版)[M].北京:清华大学出版社,2006
[4] 杜建国.Verilog HDL硬件描述语言[M].北京:国防工业出版社,2004
[5] 柳春风.电子设计自动化(EAD)教程[M].北京:北京理工大学大学出版社,
2005
[6] 莫正坤.计算机组成原理[M].武汉:华中理工大学出版社,1996
[7] 白中英.计算机组成原理(第四版)[M].北京:科学出版社,2008
附录(电路原理图)电路原理图
可控加法/减法(CAS)单元原理图
阵列除法器原理图
沈阳航空工业学院课程设计报告。

相关文档
最新文档