计算机组成原理课设报告补码一位乘法器的设计.doc

上传人:laozhun 文档编号:2882319 上传时间:2023-03-01 格式:DOC 页数:26 大小:1,023KB
返回 下载 相关 举报
计算机组成原理课设报告补码一位乘法器的设计.doc_第1页
第1页 / 共26页
计算机组成原理课设报告补码一位乘法器的设计.doc_第2页
第2页 / 共26页
计算机组成原理课设报告补码一位乘法器的设计.doc_第3页
第3页 / 共26页
计算机组成原理课设报告补码一位乘法器的设计.doc_第4页
第4页 / 共26页
计算机组成原理课设报告补码一位乘法器的设计.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《计算机组成原理课设报告补码一位乘法器的设计.doc》由会员分享,可在线阅读,更多相关《计算机组成原理课设报告补码一位乘法器的设计.doc(26页珍藏版)》请在三一办公上搜索。

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.1 取补模块的设计与实现72.2.2选择器模块的设计与实现92.2.3 乘数补码移位寄存器模块的设计与实现122

2、.2.4 部分积移位寄存器模块的设计与实现142.2.5加法器模块的设计与实现162.3 仿真调试16第3章 编程下载与硬件测试193.1编程下载193.2 硬件测试及结果分析19参考文献22附 录(电路原理图)23第1章 总体设计方案1.1 设计原理由于机器都采用补码做加减运算,所以设计补码乘法器能避免码制转换,提高机器效率。在计算两个补码相乘时,可以通过Booth算法来实现定点补码一位乘的功能。布斯(Booth)算法采用相加和相减的操作计算补码数据的乘积,Booth算法对乘数从低位开始判断,根据后两个数据位的情况决定进行加法、减法还是仅仅进行移位操作。补码一位乘法的运算规则: (1) 被乘

3、数一般取双符号位参加运算。 (2) 乘数可取单符号位以决定最后一步是否需要校正,即是否加。 (3) 乘数末位增设附加位,且初值为0。部分积初始值为0。 (4) 被乘数x补乘以对应的相邻两位乘数()之差值,再与前部分积累加,然后右移一位(乘2-1),形成该步的部分积累加和。与构成各步运算的判断值,以决定如何操 作,见图1.1Booth算法操作说明:图1.1 Booth算法操作说明(5)按照上述算法进行n+1步操作,但第n+1步不再移位,仅根据与的比较结果作相应的运算即可。1.2 设计思路课程设计的要求为:(1)采用原码值输入,乘数和被乘数皆为8位。(2)设计的电路应该包括ALU,被乘数寄存器,乘

4、数寄存器,部分积寄存器,门电路和移位电路。课程设计的思路为:(1) 由于课程设计要求采用原码值输入,就需要设计一个原码值取反码的电路模块,同时只对符号位取反同时也可以实现求。(2) 实现Booth算法需添加附加位,并将其初始值置零,此操作通过外部输入来实现的。(3) Booth算法在运算中要将部分积初始值置零,此操作是通过给FD寄存器的清零端一个高电平的脉冲信号,使寄存器的数据全部为0,即输出的部分积为00000000。(4) 取乘数末尾两位来判断,为00、11则部分积加0,为01则部分积加被乘数的补码,为10则部分积加乘数相反数的补码。为了实现此操作,需要设计一个二输入四输出选择器及选择电路

5、。(5) 乘数逻辑右移一位,部分积算术右移一位,并用乘数最高位存放部分积溢出的位。此功能的实现,分别设计了乘数移位寄存器,以及部分积移位寄存器。(6) 依次反复直到原乘数部分只剩下最后两位,由于最后一次只运算不移位,所以在输出时要在部分积移位之前输出结果。(7) 加统一的时钟信号,保持各部件同步工作。定点补码一位乘法器的设计总框图如图1.2所示;定点补码一位乘法器的设计流程图如图1.3所示。图1.2 定点补码一位乘法器设计总框图 图1.3 定点补码一位乘法器设计流程图1.3 设计环境(1)硬件环境伟福COP2000型计算机组成原理实验仪COP2000计算机组成原理实验系统由实验平台、开关电源、

6、软件三大部分组成。实验平台上有寄存器组R0-R3、运算单元、累加器等组成。COP2000计算机组成原理实验系统各单元部件都以计算机结构模型布局,系统在实验时即使不借助PC 机,也可实时监控数据流状态及正确与否, 实验系统的软硬件对用户的实验设计具有完全的开放特性,系统提供了微程序控制器和组合逻辑控制器两种控制器方式, 系统还支持手动方式、联机方式、模拟方式三种工作方式,系统具备完善的寻址方式、指令系统和强大的模拟调试功能。COP2000集成调试软件COP2000 集成开发环境是为COP2000 实验仪与PC 机相连进行高层次实验的配套软件,它通过实验仪的串行接口和PC 机的串行接口相连,提供汇

7、编、反汇编、编辑、修改指令、文件传送、调试FPGA 实验等功能,该软件在Windows 下运行。(2)EDA环境Xilinx foundation f3.1设计软件Xilinx foundation f3.1是Xilinx公司的可编程期间开发工具,该平台功能强大,主要用于百万逻辑门设计。该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。第2章 详细设计方案2.1 顶层方案图的设计与实现顶层方案图是用来实现补码一位乘法器乘数与被乘数的输入和取补,以及结果的寄存和输出、二输入三输出选择器和运算控制电路、移位电路等逻辑功能,采用原理图设计输入方式完成,电路实现基于XCV200可编程逻辑芯

8、片。在完成原理图的功能设计后,把输入以及输出信号安排到XCV200指定的引脚上去,实现芯片的引脚锁定。2.1.1创建顶层图形设计文件顶层图形文件的设计实体主要由取补电路(封装为QUBU),二输入三输出选择器(基于D2-4E的改装),乘数移位寄存器(封装为U11),部分积移位寄存器(基于FD实现),加法器(基于ADD8的改装),等模块组装而成的一个完整的可编程逻辑芯片U30。顶层图形文件结构如图2.1所示: 图2.1 顶层图形文件结构图 2.1.2器件的选择与引脚锁定(1)器件的选择由于硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,故采用的目标芯片为Xilinx

9、 XCV200可编程逻辑芯片。(2)引脚锁定把顶层图形文件中的所有输入、输出信号对应到Xilinx XCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及Xilinx XCV200芯片引脚对应关系如表2.1所示:表2.1 信号和芯片引脚对应关系图形文件中的输入/输出信号XCV200芯片引脚信号GRDP50ZCLOCKP213FJWP47CLRP49VCCP48S1P80S2P81S3P82S4P84S5P85S6P86S7P87Y1P95Y2P96Y3P97Y4P100Y5P101Y6P102Y7P103E0P63E1P73E2P72E3P71E4P70E5P66E6P65E7P642.

10、1.3编译、综合、适配利用Xilinx foundation f3.1的原理图编辑器对顶层图形文件进行编译,并最终生成网络表文件,利用设计实现工具经综合、优化、适配,生成可供时序仿真的文件和器件下载编程文件。2.2 功能模块的设计与实现功能模块主要由取补电路,二输入三输出选择器,移位寄存器,部分积移位寄存器等模块组成,由Xilinx XCV200可编程逻辑芯片分别实现。2.2.1 取补模块的设计与实现进行求补的方法就是从数的最右端开始,由右向左,直到找出第一个“1”,例如,。则以左的每一个输入位都求反,即1变0,0变1。最右端的起始链式输入必须永远置成“0”。当控制信号线为“1”时,启动对2求

11、补的操作;当控制信号线为“0”时,输出将和输入相等。可以利用符号位来作为控制信号。(1) 创建求乘数补码电路模块设计原理图。 求乘数补码电路原理结构如图2.2所示,实际电路如图2.2所示。图2.2 求乘数补码电路模块逻辑框图图2.2 实际取补电路(2)创建元件图形符号 其元件图形符号如图2.3所示: 图2.3 求乘数补码电路模块元件图形符号(3)功能仿真对创建的取补模块进行功能仿真,验证其功能的正确性,可用Xilinx foundation f3.1编译器的Simulator模块实现。仿真结果如图2.4所示:图2.4 取补模块仿真结果2.2.2选择器模块的设计与实现选择器主要由一个D2-4E芯

12、片和逻辑门电路控制选择输出。输入端输入的值分别为,以及“00000000”(八个输入端为一组)。D2-4E芯片的和端的“0”和“1”控制,当为01时,输出为高电平,即为输出值为1,通过逻辑门电路实现输出为的值;当为10时,输出为为 高电平,即为输出值为1,通过逻辑门电路实现输出为的值;当为00时,输出为为 高电平,即为输出值为1,同时当为11时,输出为为 高电平,即为输出值为1,由于此时和输出值为相同,故此两条数据线通过一个或门输出一条数据线,此时输出值为“00000000”。正好实现三输入一输出的选择器模块。(1)创建选择器设计原理图。三输入一输出选择器原理结构如图2.5所示:图2.5 选择

13、器原理框图 (2)创建元件图形符号其元件图形符号如图2.6所示: 图2.6 选择器元件图形符号(3)功能仿真对创建的三输入一输出器模块进行功能仿真,验证其功能的正确性,可用Xilinx foundation f3.1编译器的Simulator模块实现。仿真结果如图2.7所示: 图2.7 选择模块仿真结果图2.2.3 乘数补码移位寄存器模块的设计与实现乘数补码移位寄存器模块由八个二选一选择器(MUXCY),9个寄存器(FD)组成,端输入的是1个低电平信号其余都为高电平信号。MUXCY选择器由控制信号端,输入端和,以及输出端组成,当端为低电平信号时,选择输出值,当端为高电平信号时,选择输出值。每次

14、的输出信号寄存到FD中,MUXCY输出端连接下一位的寄存器,这样就实现了移位寄存的功能。移位的和两个输出端恰好为和的两个值,和的两个值要分别接到选择器的和端。(1)创建乘数补码移位寄存器模块设计原理图。 乘数补码移位寄存器原理结构如图2.8所示:图2.8 乘数补码移位寄存器原理结构图(2)创建元件图形符号其元件图形符号如图2.9所示: 图2.9 乘数补码移位寄存器电路模块元件图形符号(3)功能仿真对创建的乘数补码移位寄存器模块进行功能仿真,验证其功能的正确性,可用Xilinx foundation f3.1编译器的Simulator模块实现。仿真结果如图2.10所示:图2.10 乘数补码移位寄

15、存器模块仿真结果2.2.4 部分积移位寄存器模块的设计与实现部分积移位寄存器模块是由一个8位寄存器(FD8CE)和四个逻辑门电路组成,实现部分积移位寄存功能。由于部分积的初始值为“00000000”,这样就要求FD8CE寄存器的初始值为“00000000”,只需要给清零端一个高电平的信号即可实现。进行部分积移位时,要求移位过程中保证符号位相同,这样就需要把第一位符号位复制为两个数,而其余的6位相继向下串一位,这样就实现了移位功能,同时还保证的符号位相同。(1)部分积移位寄存器设计原理图。 部分积移位寄存器原理结构如图2.11所示:图2.11 部分积移位寄存器原理图(2)功能仿真对创建的寄存器模

16、块进行功能仿真,验证其功能的正确性,可用Xilinx foundation f3.1编译器的Simulator模块实现。仿真结果如图2.12所示:图2.12 部分积移位寄存器仿真结果2.2.5加法器模块的设计与实现 加法器模块是在系统提供的八位加法器(ADD8)的基础上,根据实际情况改造而来。由于系统ADD8的输入输出的高低位与前几个模块的正好相反,所以为了实现功能对ADD8进行了改装。改装后内部结构如图2.13所示。 图2.13 改装后加法器内部结构图2.3 仿真调试仿真调试主要验证设计电路逻辑功能、时序的正确性,本设计中主要采用功能仿真方法对设计的电路进行仿真。通过多组数据进行仿真测试,分

17、别对两个正数相乘,一个正数与一个负数相乘,两个负数相乘结果进行检验。(1)建立仿真波形文件及仿真信号选择功能仿真时,首先建立仿真波形文件,选择仿真信号,对选定的输入信号设置参数,选定的仿真信号和设置的参数如表2. 3所示。表2.3 仿真信号相关参数表输入信号输出信号S1S7Y1Y7CLRCLOCKFJWI0I70111011 000010010000000010101010 000000111111011 000010010000000010101010 111111001111011 100010010000000010101010 00000011(2)功能仿真结果与分析仿真结果分别如图2

18、.14、所示。 图2.14 功能仿真波形结果由表2.3和图2.14所示信息对比可知,多组仿真都完全正确,说明本设计能实现补码一位乘法计算功能。第3章 编程下载与硬件测试3.1编程下载利用COP2000仿真软件的编程下载功能,将得到.bit文件下载到XCV200实验板的XCV200可编程逻辑芯片中。3.2 硬件测试及结果分析利用XCV200实验板进行硬件功能测试。定点补码一位乘法器的输入数据通过XCV200实验板的输入开关实现,输出数据通过XCV200实验板的LED指示灯实现,其对应关系如表3.1所示。 表3.1 XCV200实验板信号对应关系XCV200芯片引脚信号XCV200实验板P95K0

19、: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、所示的硬件测试结果。 图3.1 硬件测试结果图 参考文献 1 曹昕

20、燕. EDA技术实验与课程设计M.北京:清华大学出版社,20062 范延滨.微型计算机系统原理、接口与EDA设计技术M.北京:北京邮电大学出版社,20063 王爱英.计算机组成与结构(第三版)M.北京:清华大学出版社,20064 白中英.计算机组成原理(第四版)M.北京:科学出版社,20095 胡越明.计算机组成与设计M.北京:科学出版社,20066 江国强.EAD技术习题与实验M.北京:电子工业出版社,20057 柳春风.电子设计自动化(EAD)教程M.北京:北京理工大学大学出版社,2005附 录(电路原理图)课程设计总结:本次课程设计,我受益匪浅。当拿到课设题目后,我烦了想当然的错误,乐观

21、的认为,题目很简单,原理很简单。但在具体实行时却遇到许多困难,对Xilinx foundation f3.1设计软件的陌生更加阻碍着我的进程。于是,我决定塌下心来好好研究原理及软件的运用。用了一天的时间将软件中的自带芯片的功能查询了一遍,基本找到需要的芯片。之后,又学习了对电路封装的方法,再后来就能灵活的操作该软件,这对整个电路的设计很有帮助。随后开始将各个部件连接到一起,这里也充满学问,不是单单的组合在一起,而是要综合考虑整体电路的节拍,以保证各个部件有序工作。没有找到现成的三选一芯片,我只好自己设计。设计的过程还真是痛苦,头脑中不断出现想法,但有一个个被现实否定,只能另寻方法。不过,功夫不负有心人。终于,我的想法终于在现实中实现了,就这样我完成了三选一芯片的设计,那时的我有一种释然的感觉,不过,我知道这只是一小步,要想最终完成还有很长的路要走,所以要继续努力。在课设期间,我老师和同学都给予我很大的帮助,老师们总是不厌其烦的为我解决疑惑,同学们总是在我要放弃时鼓励我,这些都使我的课设顺利完成,在这里我要衷心说声谢谢,这份珍贵的经历,我会永远记在心中。指导教师评语:指导教师(签字): 年 月 日课程设计成绩

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号