




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计报告课程设计名称:计算机组成原理课程设计课程设计题目:定点补码一位乘法器的设计院〔系〕:专业:班级:学号:姓名:指导教师:完成日期:目录第1章总体设计方案11.1设计原理1设计思路21.3设计环境4第2章详细设计方案52.1顶层方案图的设计与实现5创立顶层图形设计文件5器件的选择与引脚锁定6功能模块的设计与实现7求补电路模块的设计与实现72.2.2控制电路模块的设计与实现82.2.3选择器模块的设计与实现10第3章编程下载与硬件测试123.1编程下载123.2硬件测试及结果分析12参考文献14附录〔电路原理图〕15第1章总体设计方案1.1设计原理〔1〕用[X]补×[Y]补直接求[X×Y]补讨论当相乘的两个数中有一个或二个为负数的情况,在讨论补码乘法运算时,对被乘数或局部积的处理上与原码乘法有某些类似,差异仅表现在被乘数和局部积的符号位要和数值一起参加运算。假设[Y]补=Y0Y1Y2…Yn当Y0为1时,那么有Y=-1+Yi×2-i故有X×Y=X×Yi×2-1-X当Y为负值时,用补码乘计算[X×Y]补,是用[X]补乘上[Y]补的数值位,而不理[Y]补符号位上的1,乘完之后,在所得的乘积中再减X,即加-[X]补。实现补码乘法的另一个方案是比拟法,是由BOOTH最早提出的,这一方法的出发点是防止区分乘数符号的正负,而且让乘数符号位也参加运算。技巧上表现在分解乘数的每一位上的1为高一位的一个+1和本位上的一个-1:X×Y=X×〔-1+Yi×2i〕〔逐项展开那么得〕=X×[-Y0+Y1×2-1+Y2×2-2+…+Yn×2-n]=X×[-Y0+(Y1-Y1×2-1)+(Y2×2-1-Y2×2-2)+…+(Yn×2-(n-1)-Yn×2-n)]〔合并相同幂次项得〕=X×[(Y1-Y0)+(Y2-Y1)×2-1+…+(Yn-Yn-1)×2-(n-1)+(0-Yn)×2-n]=X×〔Yi+1-Yi〕×2-i〔写成累加求和的形式,得到实现补码乘运算的算法〕将上述公式展开,那么每一次的局部积为:P1=[2-1(Yn+1-Yn)×X]补P2=[2-1(P1+(Yn-Yn-1)×X)]补…Pi=[2-1(Pn-i+(Yn-I+2-Yn-I+1)×X)]补…Pn=[2-1(Pn-1+(Y2-Y1)×X)]补Pn+1=[(Pn+(Y1-Y0)×X)]补那么最终补码乘积为[X*Y]补=[Pn+1]补由上述公式可以看出,比拟法是用乘数中每相邻的两位判断如何求得每次的相加数。每两位Yi和Yi+1的取值有00,01,10,11四种组合,那么它们的差值分别为0,1,-1和0,非最后一次的局部积,分别为上一次局部积的1/2〔右移一位〕的值Rj,Rj+[X]补,Rj-[X]补〔即Rj+[-X]补〕和Rj,但一定要注意:最后一次求出的局部积即为最终乘积,不执行右移操作。用此法计算乘积,需要乘数存放器的最低一位之后再补充一位Yn+1,并使其初值为0,再增加对Yn和Yn+1两位进行译码的线路,以区分出Yn+1-Yn4种不同的差值。对N位的数〔不含符号位〕相乘,要计算N+1次局部积,并且不对最后一次局部积执行右移操作。此时的加法器最好采用双符号位方案。〔2〕Booth乘法规那么假设X、Y都是用补码形式表示的机器数,[X]补和[Y]补=Ys.Y1Y2…Yn,都是任意符号表示的数。比拟法求新的局部积,取决于两个比拟位的数位,即Yi+1Yi的状态。布斯乘法规那么归纳如下:首先设置附加位Yn+1=0,局部积初值[Z0]补=0。当n≠0时,判断YnYn+1,假设YnYn+1=00或11,即相邻位相同时,上次局部积右移一位,直接得局部积。假设YnYn+1=01,上次局部积加[X]补,然后右移一位得新局部积。假设YnYn+1=10,上次局部积加[-X]补,然后右移一位得新局部积。当n=0时,判YnYn+1(对应于Y0Y1),运算规那么同(1)只是不移位。即在运算的最后一步,乘积不再右移。设计思路设计一个二输入三选一选择器对可能的三种情况进行选择。中选择器中输入为S0S1为00或者11时,由一存放器一端接GND,另一端对其进行零输入;中选择器中输入为S0S1为01时,对其进行[X]补输入;中选择器中输入为S0S1为10时,对[X]补输入端加一非门和一加法器对其进行取反加1输入。输出结果与一个一端接GND初始置零的存放器相连接于一个加法器,实现局部积加法运算计算结果存放于两个相同的移位存放器中,当局部积相加之后,由两个移位存放器同时对局部积的和进行移位操作。最后由两个移位存放器的输出端连接至选择器重新选择进行循环操作,直到局部积移位结束。这里用布斯算法在硬件电路上比拟容易实现。布斯算法的流程图如下:图1.1定点补码一位乘法器的流程图补码一位乘法的硬件实现逻辑图如下:1.2定点原码一位乘法器的原理框图1.3设计环境·硬件环境:伟福COP2000型计算机组成原理实验仪、XCV200实验板、微机;·EDA环境:Xilinx设计软件。第2章详细设计方案2.1顶层方案图的设计与实现顶层方案图实现一位补码乘法器的逻辑功能,采用原理图设计输入方式完成,电路实现基于XCV200可编程逻辑芯片。在完成原理图的功能设计后,把输入/输出信号安排到XCV200指定的引脚上去,实现芯片的引脚锁定。2.1.1创立顶层图形设计文件顶层图形文件主要由一个两个16进制数和和一个封装模块组装而成的一个完整的设计实体。可利用Xilinx模块实现顶层图形文件的设计,顶层图形文件结构如图2.1所示。图2.1一位补码乘法器顶层图形文件结构2.1.2器件的选择与引脚锁定〔1〕器件的选择由于硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,故采用的目标芯片为XlinxXCV200可编程逻辑芯片。〔2〕引脚锁定把顶层图形文件中的输入/输出信号安排到XlinxXCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及XlinxXCV200芯片引脚对应关系如表2.1所示。表2.1信号和芯片引脚对应关系图形文件中的输入输出信号XCV200芯片引脚X0P103X1P102X2P101X3P100X4P97X5P96X6P95X7P94Y0P87Y1P86Y2P85Y3P84Y4P82Y5P81Y6P80Y7P79CLRP73CLKP213O13P93O12P99O11P107O10P108O9P109O8P124O7P125O6P147O5P152O4P178O3P184O2P185O1P203O0P111O00P110功能模块的设计与实现2.2.1这个模块由八位加法器,非门组成,GND8输入的是8个低电平信号,这个模块实现的是对-X求补功能。创立求补电路模块设计原理图。求补电路原理结构如下图:图求补电路模块逻辑框图〔2〕创立元件图形符号为能在图形编辑器〔原理图设计输入方式〕中调用NEG芯片,需要为NEG模块创立一个元件图形符号,可利用Xilinxfoundationf3.1编译器中的如下步骤实现:Tools=>SymbolWizard=>下一步。A[7:0]是输入信号,B[7:0]是输出信号。其元件图形符号如下图:图求补电路模块元件图形符号〔3〕功能仿真对创立的存放器模块进行功能仿真,验证其功能的正确性,可用Xilinxfoundationf3.1编译器的Simulator模块实现。仿真结果如下图:图2.4求补电路仿真结果2.2.2控制电路模块的设计与实现控制电路模块是由8个选择器模块和一个求补电路模块组成,实现选择控制功能。当C为高电平时输出-X的补码,当C端为低电平时,输出X的补码。控制电路设计原理图。控制电路原理结构如下图:图2.5控制电路逻辑框图〔2〕创立元件图形符号为能在图形编辑器〔原理图设计输入方式〕中调用2_1DC8芯片,需要为2_1DC8模块创立一个元件图形符号,可利用Xilinxfoundationf3.1编译器中的如下步骤实现:Tools=>SymbolWizard=>下一步。A[7:0]、C是输入信号,OUT[7:0]是输出信号。其元件图形符号如下图:图2.6控制电路图形符号〔3〕功能仿真对创立的存放器模块进行功能仿真,验证其功能的正确性,可用Xilinxfoundationf3.1编译器的Simulator模块实现。仿真结果如下图:图2.7控制电路仿真结果2.2.3选择器模块的设计与实现选择器主要由三个门电路组成,当CC输入为高电平时,O输出的值为A的值,否那么输出B的值创立选择器设计原理图。选择器原理结构如图2.8所示:图2.8选择器原理框图〔2〕创立元件图形符号为能在图形编辑器〔原理图设计输入方式〕中调用DC1芯片,需要为DC1模块创立一个元件图形符号,可利用Xilinxfoundationf3.1编译器中的如下步骤实现:Tools=>SymbolWizard=>下一步。A、B、CC是输入信号,O是输出信号。其元件图形符号如下图:图选择器元件图形符号〔3〕功能仿真对创立的存放器模块进行功能仿真,验证其功能的正确性,可用Xilinxfoundationf3.1编译器的Simulator模块实现。仿真结果如下图:图2.10选择器仿真结果第3章编程下载与硬件测试编程下载利用COP2000仿真软件的编程下载功能,将得到.bit文件下载到XCV200实验板的XCV200可编程逻辑芯片中。3.2硬件测试及结果分析利用XCV200实验板进行硬件功能测试。一位补码乘法器的输入数据通过XCV200实验板的输入开关实现,输出数据通过XCV200实验板的LED指示灯实现,其对应关系如表3.1所示。表3.1XCV200实验板信号对应关系XCV200芯片引脚信号XCV200实验板P94K0:7P95K0:6P96K0:5P97K0:4P100K0:3P101K0:2P102K0:1P103K0:0P79K1:7P80K1:6P81K1:5P82K1:4P84K1:3P85K1:2P86K1:1P87K1:0P73K2:0P213P213P147A7P152A6P178A5P184A4P185A3P203A2P111A1P110A0P93B6P99B5P107B4P108B3P109B2P124B1P125B0利用表中的输入参数作为输入数据,逐个测试输出结果,即用XCV200实验板的开关K0、K1及K2控制数据输入,同时观察数码显示管和发光二极管显示结果,得到如图3.1所示的硬件测试结果。硬件测试结果图参考文献[1]曹昕燕.EDA技术实验与课程设计[M].北京:清华大学出版社,2006[2]范延滨.微型计算机系统原理、接口与EDA设计技术[M].北京:北京邮电大学出版社,2006[3]王爱英.计算机组成与结构(第4版)[M].北京:清华大学出版社,2006[4]侯伯亨,顾新.VHDL硬件描述语言与数字逻辑电路设计[M].西安:西安电子科技大学出版社,1998.5-9.[5]廖裕评,陆瑞强.CPLD数字电路设计--使用MAX+PLUSⅡ[M].北京:清华大学出版社,2001.217-221.[6]附录〔电路原理图〕
课程设计总结:在刚开始做这个课程设计时,由于对知识理解得不够深刻,导致设计上的失误,后来经过老师的指导才逐步形成了初步设计方案。在进行整体仿真时,发现乘数没有打入存放器,又经过分步仿真调试后,发现是由于没有清零的缘故导致了以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论