




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课课 程程 设设 计计 报报 告告课程设计名称:计算机组成原理课程设计计算机组成原理课程设计课程设计题目:定点补码一位乘法器的设计定点补码一位乘法器的设计院(系):计算机学院专 业:计算机科学与技术班 级:学 号:姓 名:指导教师:完成日期:2011年1月14日目目 录录第第 1 章章 总体设计方案总体设计方案.11。1 设计原理.11。2 设计思路.21.3 设计环境 .4第第 2 章章 详细设计方案详细设计方案.52.1 顶层方案图的设计与实现 .52.1。1 创建顶层图形设计文件.52。1。2 器件的选择与引脚锁定.62.1.3 编译、综合、适配.72。2 功能模块的设计与实现 .72。
2、2。1 取补模块的设计与实现.72.2.2 选择器模块的设计与实现.92.2.3 乘数补码移位寄存器模块的设计与实现.122.2。4 部分积移位寄存器模块的设计与实现.142.2.5 加法器模块的设计与实现.162.3 仿真调试 .16第第 3 章章 编程下载与硬件测试编程下载与硬件测试.193.1 编程下载.193。2 硬件测试及结果分析 .19参考文献参考文献.22附附 录(电路原理图)录(电路原理图).23第 1 章 总体设计方案1.1 设计原理设计原理由于机器都采用补码做加减运算,所以设计补码乘法器能避免码制转换,提高机器效率。在计算两个补码相乘时,可以通过 Booth 算法来实现定点
3、补码一位乘的功能。布斯(Booth)算法采用相加和相减的操作计算补码数据的乘积,Booth 算法对乘数从低位开始判断,根据后两个数据位的情况决定进行加法、减法还是仅仅进行移位操作。补码一位乘法的运算规则: (1) 被乘数一般取双符号位参加运算。 (2) 乘数可取单符号位以决定最后一步是否需要校正,即是否加。 补 X (3) 乘数末位增设附加位,且初值为 0。部分积初始值为 0。1ny补0Z (4) 被乘数x补乘以对应的相邻两位乘数()之差值,再与前nnyy1部分积累加,然后右移一位(乘 2-1) ,形成该步的部分积累加和。与构成1nyny各步运算的判断值,以决定如何操 作,见图 1.1Boot
4、h 算法操作说明:补X图 1。1 Booth 算法操作说明(5)按照上述算法进行 n+1 步操作,但第 n+1 步不再移位,仅根据与的比0y1y较结果作相应的运算即可.1.2 设计思路设计思路课程设计的要求为课程设计的要求为: :(1)采用原码值输入,乘数和被乘数皆为 8 位.(2)设计的电路应该包括 ALU,被乘数寄存器,乘数寄存器,部分积寄存器,门电路和移位电路。课程设计的思路为:课程设计的思路为:(1)由于课程设计要求采用原码值输入,就需要设计一个原码值取反码的电路模块,同时只对符号位取反同时也可以实现求.补 X(2)实现 Booth 算法需添加附加位,并将其初始值置零,此操作通过外部输
5、1ny入来实现的。(3)Booth 算法在运算中要将部分积初始值置零,此操作是通过给 FD 寄存器的清零端一个高电平的脉冲信号,使寄存器的数据全部为 0,即输出的部分积为00000000.(4)取乘数末尾两位来判断,为 00、11 则部分积加 0,为 01 则部分积加被乘数的补码,为 10 则部分积加乘数相反数的补码。为了实现此操作,需要设计一个二输入四输出选择器及选择电路。(5)乘数逻辑右移一位,部分积算术右移一位,并用乘数最高位存放部分积溢出的位。此功能的实现,分别设计了乘数移位寄存器,以及部分积移位寄存器。(6)依次反复直到原乘数部分只剩下最后两位,由于最后一次只运算不移位,所以在输出时
6、要在部分积移位之前输出结果。(7)加统一的时钟信号,保持各部件同步工作。定点补码一位乘法器的设计总框图如图 1.2 所示;定点补码一位乘法器的设计流程图如图 1.3 所示。图 1.2 定点补码一位乘法器设计总框图 图 1.3 定点补码一位乘法器设计流程图1.3 设计环境设计环境(1)硬件环境硬件环境 伟福伟福 COP2000 型计算机组成原理实验仪型计算机组成原理实验仪COP2000 计算机组成原理实验系统由实验平台、开关电源、软件三大部分组成。实验平台上有寄存器组 R0-R3、运算单元、累加器等组成。COP2000 计算机组成原理实验系统各单元部件都以计算机结构模型布局,系统在实验时即使不借
7、助 PC 机,也可实时监控数据流状态及正确与否, 实验系统的软硬件对用户的实验设计具有完全的开放特性,系统提供了微程序控制器和组合逻辑控制器两种控制器方式, 系统还支持手动方式、联机方式、模拟方式三种工作方式,系统具备完善的寻址方式、指令系统和强大的模拟调试功能. COP2000 集成调试软件集成调试软件COP2000 集成开发环境是为 COP2000 实验仪与 PC 机相连进行高层次实验的配套软件,它通过实验仪的串行接口和 PC 机的串行接口相连,提供汇编、反汇编、编辑、修改指令、文件传送、调试 FPGA 实验等功能,该软件在Windows 下运行。(2)EDA 环境环境 Xilinx fo
8、undation f3。1 设计软件设计软件Xilinx foundation f3.1 是 Xilinx 公司的可编程期间开发工具,该平台功能强大,主要用于百万逻辑门设计.该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。第 2 章 详细设计方案2。1 顶层方案图的设计与实现顶层方案图的设计与实现顶层方案图是用来实现补码一位乘法器乘数与被乘数的输入和取补,以及结果的寄存和输出、二输入三输出选择器和运算控制电路、移位电路等逻辑功能,采用原理图设计输入方式完成,电路实现基于 XCV200 可编程逻辑芯片.在完成原理图的功能设计后,把输入以及输出信号安排到 XCV200 指定的引脚上去
9、,实现芯片的引脚锁定。2.1.1 创建顶层图形设计文件创建顶层图形设计文件顶层图形文件的设计实体主要由取补电路(封装为 QUBU),二输入三输出选择器(基于 D24E 的改装) ,乘数移位寄存器(封装为 U11),部分积移位寄存器(基于 FD 实现) ,加法器(基于 ADD8 的改装),等模块组装而成的一个完整的可编程逻辑芯片 U30.顶层图形文件结构如图 2.1 所示: 图 2。1 顶层图形文件结构图 2。1。2 器件的选择与引脚锁定器件的选择与引脚锁定(1)器件的选择由于硬件设计环境是基于伟福 COP2000 型计算机组成原理实验仪和 XCV200实验板,故采用的目标芯片为 Xilinx
10、XCV200 可编程逻辑芯片。(2)引脚锁定把顶层图形文件中的所有输入、输出信号对应到 Xilinx XCV200 芯片指定的引脚上去,实现芯片的引脚锁定,各信号及 Xilinx XCV200 芯片引脚对应关系如表 2.1 所示:表表 2.1 信号和芯片引脚对应关系信号和芯片引脚对应关系图形文件中的输入/输出信号XCV200芯片引脚信号GRDP50ZCLOCKP213FJWP47CLRP49VCCP48S1P80S2P81S3P82S4P84S5P85S6P86S7P87Y1P95Y2P96Y3P97Y4P100Y5P101Y6P102Y7P103E0P63E1P73E2P72E3P71E4P
11、70E5P66E6P65E7P642。1。3 编译、综合、适配编译、综合、适配利用 Xilinx foundation f3.1 的原理图编辑器对顶层图形文件进行编译,并最终生成网络表文件,利用设计实现工具经综合、优化、适配,生成可供时序仿真的文件和器件下载编程文件。2.2 功能模块的设计与实现功能模块的设计与实现功能模块主要由取补电路,二输入三输出选择器,移位寄存器,部分积移位寄存器等模块组成,由 Xilinx XCV200 可编程逻辑芯片分别实现。2。2。1 取补模块的设计与实现取补模块的设计与实现进行求补的方法就是从数的最右端开始,由右向左,直到找出第一个“1” ,0a例如,。则以左的每
12、一个输入位都求反,即 1 变 0,0 变 1。最右1iani 0ia端的起始链式输入必须永远置成“0” 。当控制信号线为“1”时,启动对 21CE求补的操作;当控制信号线为“0”时,输出将和输入相等。可以利用符号位来E作为控制信号。E(1) 创建求乘数补码电路模块设计原理图创建求乘数补码电路模块设计原理图. 求乘数补码电路原理结构如图 2。2所示,实际电路如图 2。2所示。)(a)(b图 2.2 求乘数补码电路模块逻辑框图)(a图 2。2 实际取补电路)(b(2)创建元件图形符号)创建元件图形符号 其元件图形符号如图 2.3 所示: 图 2.3 求乘数补码电路模块元件图形符号(3)功能仿真)功
13、能仿真对创建的取补模块进行功能仿真,验证其功能的正确性,可用 Xilinx foundation f3.1 编译器的 Simulator 模块实现。仿真结果如图 2。4 所示:图 2。4 取补模块仿真结果2。2。2 选择器模块的设计与实现选择器模块的设计与实现选择器主要由一个 D24E 芯片和逻辑门电路控制选择输出。输入端输入的值分别为,以及“00000000”(八个输入端为一组) 。补 X补XD24E 芯片的和端的“0”和“1”控制,,当为 010A1A0D1D2D3D10AA时,输出为高电平,即为输出值为 1,通过逻辑门电路实现输出为2D2D的值;当为 10 时,输出为为 高电平,即为输出
14、值为 1,通过逻辑补 X10AA1D1D门电路实现输出为的值;当为 00 时,输出为为 高电平,即为输补X10AA0D0D出值为 1,同时当为 11 时,输出为为 高电平,即为输出值为 1,由于10AA3D3D此时和输出值为相同,故此两条数据线通过一个或门输出一条数据线,此0D3D时输出值为“00000000” 。正好实现三输入一输出的选择器模块。(1)创建选择器设计原理图。)创建选择器设计原理图。三输入一输出选择器原理结构如图 2.5 所示:图 2。5 选择器原理框图 (2)创建元件图形符号)创建元件图形符号其元件图形符号如图 2.6 所示: 图 2。6 选择器元件图形符号(3)功能仿真)功
15、能仿真对创建的三输入一输出器模块进行功能仿真,验证其功能的正确性,可用Xilinx foundation f3.1 编译器的 Simulator 模块实现。仿真结果如图 2。7 所示: )(a)(b )(c)(d图 2。7 选择模块仿真结果图2。2.3 乘数补码移位寄存器模块的设计与实现乘数补码移位寄存器模块的设计与实现乘数补码移位寄存器模块由八个二选一选择器(MUXCY) ,9 个寄存器(FD)组成,端输入的是 1 个低电平信号其余都为高电平信号。MUXCY 选择器由控制信CP号端,输入端和,以及输出端组成,当端为低电平信号时,选择输出SiDiCOS值,当端为高电平信号时,选择输出值。每次的
16、输出信号寄存到 FD 中,iDSiCMUXCY 输出端连接下一位的寄存器,这样就实现了移位寄存的功能。O移位的和两个输出端恰好为和的两个值,和的两个值要07Y08ny1nyny1ny分别接到选择器的和端。0A1A(1)创建乘数补码移位寄存器模块设计原理图。)创建乘数补码移位寄存器模块设计原理图。 乘数补码移位寄存器原理结构如图 2。8 所示:图 2。8 乘数补码移位寄存器原理结构图(2)创建元件图形符号)创建元件图形符号其元件图形符号如图 2.9 所示: 图 2.9 乘数补码移位寄存器电路模块元件图形符号(3)功能仿真)功能仿真对创建的乘数补码移位寄存器模块进行功能仿真,验证其功能的正确性,可
17、用Xilinx foundation f3.1 编译器的 Simulator 模块实现。仿真结果如图 2.10 所示:图 2。10 乘数补码移位寄存器模块仿真结果2.2.4 部分积移位寄存器模块的设计与实现部分积移位寄存器模块的设计与实现部分积移位寄存器模块是由一个 8 位寄存器(FD8CE)和四个逻辑门电路组成,实现部分积移位寄存功能。由于部分积的初始值为“00000000” ,这样就要求FD8CE 寄存器的初始值为“00000000” ,只需要给清零端一个高电平的信号即CLR可实现。进行部分积移位时,要求移位过程中保证符号位相同,这样就需要把第一位符号位复制为两个数,而其余的 6 位相继向
18、下串一位,这样就实现了移位功能,同时还保证的符号位相同.(1)部分积移位寄存器设计原理图)部分积移位寄存器设计原理图. 部分积移位寄存器原理结构如图 2.11 所示:图 2.11 部分积移位寄存器原理图(2)功能仿真功能仿真对创建的寄存器模块进行功能仿真,验证其功能的正确性,可用 Xilinx foundation f3。1 编译器的 Simulator 模块实现.仿真结果如图 2.12 所示:图 2.12 部分积移位寄存器仿真结果2。2。5 加法器模块的设计与实现加法器模块的设计与实现 加法器模块是在系统提供的八位加法器(ADD8)的基础上,根据实际情况改造而来。由于系统 ADD8 的输入输
19、出的高低位与前几个模块的正好相反,所以为了实现功能对 ADD8 进行了改装。改装后内部结构如图 2。13 所示。 图 2。13 改装后加法器内部结构图2。3 仿真调试仿真调试仿真调试主要验证设计电路逻辑功能、时序的正确性,本设计中主要采用功能仿真方法对设计的电路进行仿真。通过多组数据进行仿真测试,分别对两个正数相乘,一个正数与一个负数相乘,两个负数相乘结果进行检验。(1)建立仿真波形文件及仿真信号选择)建立仿真波形文件及仿真信号选择功能仿真时,首先建立仿真波形文件,选择仿真信号,对选定的输入信号设置参数,选定的仿真信号和设置的参数如表 2。 3 所示。表表 2 2。3 3 仿真信号相关参数表仿
20、真信号相关参数表输入信号输入信号输出信号输出信号S1S1S7S7Y1Y1Y7Y7CLRCLRCLOCKCLOCKFJWFJWI0I0I7I701110110111011 00001000000100100000001000000001010101010101010 0 000000110000001111110111111011 00001000000100100000001000000001010101010101010 0 111111001111110011110111111011 10001001000100100000001000000001010101010101010 0 000
21、0001100000011(2)功能仿真结果与分析)功能仿真结果与分析仿真结果分别如图 2。14、所示。)(a)(b)(c)(a )(b)(c图 2.14 功能仿真波形结果由表 2。3 和图 2.14 所示信息对比可知,多组仿真都完全正确,说明本设计能实现补码一位乘法计算功能。第 3 章 编程下载与硬件测试3。1 编程下载编程下载利用 COP2000 仿真软件的编程下载功能,将得到.bit 文件下载到 XCV200 实验板的 XCV200 可编程逻辑芯片中。3。2 硬件测试及结果分析硬件测试及结果分析利用 XCV200 实验板进行硬件功能测试.定点补码一位乘法器的输入数据通过XCV200 实验
22、板的输入开关实现,输出数据通过 XCV200 实验板的 LED 指示灯实现,其对应关系如表 3。1 所示。 表表 3.1 XCV200 实验板信号对应关系实验板信号对应关系XCV200芯片引脚信号芯片引脚信号XCV200实验板实验板P95K0:6P96K0:5P97K0:4P100K0:3P101K0:2P102K0:1P103K0:0P80K1:6P81K1:5P82K1:4P84K1:3P85K1:2P86K1:1P87K1:0P63K2:7P73K2:0P72K2:1P71K2:2P70K2:3P66K2:4P65K2:5P64K2:6P213P213P48K3:1P49K3:2P47K3:3利用表 2。3 中的输入参数作为输入数据,逐个测试输出结果,即用 XCV200实验板的开关 K0、K1 及 K2 控制数据输入,同时观察数码显示管和发光二极管显示结果,得到如图 3。1、所示的硬件测试结果。)(a)(b)(c )(a )(b)(c图 3.1 硬件测试结果图 参考文献 1 曹昕燕. EDA 技术实验与课程设计M 。北京:清华大学出版社,20062 范延滨。微型计算机系统原理、接口与 EDA 设计技术M.北京
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 济源日语教师面试真题及答案
- 吉林法检面试真题及答案
- 《守护我们的地球课件》
- 《软件开发流程》课件2
- 《金融市场动态》课件
- 《汉语时间介词》课件
- 化学上期中复习课件人教
- 期权与期货市场课件:深入解析金融衍生品市场
- 《生物电现象研究》课件
- 超市商品陈列培训
- 工会换届选举请示样式
- 七年级音乐上册 《青少年管弦乐队指南》教学课件
- 被讨厌的勇气读书分享PPT课件(最新)
- 《加工工艺学》6-2成本分析
- GB/T 22465-2008红花籽油
- GB/T 18705-2002装饰用焊接不锈钢管
- PythonNumPy教学讲解课件
- 巴菲特三大经典演讲之二-1998年佛罗里达大学商学院演讲
- 肿瘤个体化治疗检测技术指南(试行)
- 排球战术分析课件
- 1.咨询服务流程图(通用)
评论
0/150
提交评论