ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:126.68KB ,
资源ID:4425123      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4425123.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(定点原码一位乘法器.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

定点原码一位乘法器.docx

1、定点原码一位乘法器沈阳航空工业学院课 程 设 计 报 告课程设计名称:计算机组成原理课程设计课程设计题目:定点原码一位乘法器的设计院(系):计算机学院专 业:计算机科学与技术班 级:学 号:姓 名:指导教师:完成日期:第1章 总体设计方案1.1 设计原理原码一位乘,两个原码数相乘,其乘积的符号为相乘两数符号的异或值,数值则为两数绝对值之积。例:X=0.1100,Y=0.1110,计算乘积X*Y。 0.1100 * 0.1110 0000 1100 1100 1100 0.10101000在计算时,逐次按乘数每1位上的值是1还是0,决定相加数取被乘数的值还是取零值,而且相加数逐次向左偏移1位,最

2、后一起求积。由于在计算机内多个数据一般不能同时相加,一次加法操作只能求出两数之和,因此每求得一个相加数,就与上次部分积相加每次计算时,相加数逐次向左偏移一位,由于最后的乘积位数是乘数(被乘数)的两倍,因此加法器也需增到两倍。部分积右移时,乘数寄存器同时右移一位,所以用乘数寄存器的最低位来控制相加数取被乘数或零,同时乘数寄存器接收部分积右移出来的一位,完成运算后,部分积寄存器保存乘积的高位部分,乘数寄存器中保存乘积的低位部分。根据人工算法可以知道,原码一位乘法的整体设计应包括乘数寄存器,被乘数寄存器,移位电路,控制器,部分积五大模块,包含一个输入、输出、控制器模块,并作为顶层设计,以上五大模块作

3、为底层设计,采用硬件器件设计实现。 因此,可以得出以下原理框图设计如图1.1所示:图1.1 原码一位乘的逻辑电路框图如上逻辑框图1.1中所示,其中B为被乘数寄存器,用来存放被乘数,C为乘数寄存器,用来存放乘数并且移位,A为部分积寄存器,存放每次相加并移位后的数据,ALU加法器实现加法操作,移位电路用来对相加后的数据作移位处理,计数器控制移位次数和输出结果。1.2 设计环境硬件环境:伟福COP2000型计算机组成原理实验仪、XCV200实验板、微机;EDA环境:Foundation f3.1设计软件。该设计由设计入口工具,设计实现工具,验证工具三大部分组成.入口工具包括原理图设计,有限状态编辑器

4、,硬件描述语言编辑器等。第2章 详细设计方案2.1 顶层方案图的设计与实现顶层方案图实现原码一位乘的逻辑功能,采用原理图设计输入方式完成,电路实现基于XCV200可编程逻辑芯片。在完成原理图的功能设计后,把输入/输出信号安排到XCV200指定的引脚上去,实现芯片的引脚锁定。2.1.1创建顶层图形设计文件顶层图形文件由一个运算器模块组成,乘数X7:0,被乘数Y7:0,符号位XA,YA,脉冲CLK,清零端CLR,打入端LOAD,结果OUT16:0,顶层图设计如下:图2.1 原码一位乘顶层图形文件结构2.1.2器件的选择与引脚锁定(1)器件的选择由于硬件设计环境是基于伟福COP2000型计算机组成原

5、理实验仪和XCV200实验板,故采用的目标芯片为Xlinx XCV200可编程逻辑芯片。另外,在这次的设计中还有的涉及Verilog语言编程。(2)引脚锁定把顶层图形文件中的输入/输出信号安排到Xlinx XCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及Xlinx XCV200芯片引脚对应关系如表2.1所示。表2.1 信号和芯片引脚对应关系图形文件中的输入/输出信号XCV200芯片引脚X0P47X1P48X2P49X3P50X4P53X5P54X6P55X7P56Y0P41Y1P40Y2P39Y3P38Y4P36Y5P35Y6P34Y7P33CLKP98CLRRP94LOADP97

6、XAP96YAP95OUT0P213OUT1P215OUT2P216OUT3P217OUT4P218OUT5P220OUT6P221OUT7P222OUT8P223OUT9P224OUT10P228OUT11P229OUT12P230OUT13P231OUT14P232OUT15P234OUT16P2352.2 第二层模块的设计与实现根据以上原理设计分析与大概框图,可得出以下的第二层模块的设计,其中各大模块实现各部分功能。图2.2 第二层模块框图2.3 功能模块的设计与实现根据第二层模块设计可知,整体设计由乘数寄存器,被乘数寄存器,移位电路,控制器,部分积五大模块,以下介绍各个模块的具体实现。

7、2.3.1移位模块的设计与实现为了简化设计,采用了Verilog语言设计,用语言实现移位功能,XX7:0表示输入,CO表示加法器的进位,CE表示使能端,CLR表示清零端,YY7:0表示移位后的输出,CI标记移出去的那一位,其设计过程如下。(1)创建Verilog源文件module YIWEIDIANLU (YY, XX, CE, CO,CI,CLR) ;output 7:0YY ;reg7:0YY ;input 7:0XX ;input CE ;input CLR ;input CO;output CI;reg CI;always(CLR)beginif(CLR) YY=0;else begi

8、nYY7=CO;YY6=XX7;YY5=XX6;YY4=XX5;YY3=XX4;YY2=XX3;YY1=XX2;YY0=XX1;CI=XX0;endendendmodule(2)创建元件图形符号图形符号如下: (3)功能仿真对创建的移位器件YIWEIDIANLU进行功能仿真,验证其功能的正确性。可用Xilinx Foundation f3.1编译器的Simulator模块实现。功能仿真图如下:表2.3.1 移位器件功能表描述XX7:0YY7:0CICOCECLR0F07101 00F87111 00F00001 1从以上表中数据可以看出,当CLR为1时,该器件清零,输出YY7:0为零,为零时,

9、有移位功能,CO为移位后高位的补充值。CI标记移出的那一位,用来送往乘数寄存器中移位的高位补充,CE为此器件的使能端,保证该器件工作,该器件成功创建。2.3.2 乘数移位模块的设计与实现为了标记乘数移位前的最低位,设计CHENG寄存器,输入分别用DIN7:0表示,移位后结果用Q7:0表示,高位补充用SIN表示,移出的一位用KIN表示,其设计过程如下。(1)创建Verilog源文件module CHENG (LOAD, SIN, DIN, CLK, CLR, Q, KIN) ;input LOAD ;input SIN ;input 7:0 DIN ;input CLK ;input CLR ;

10、output 7:0 Q ;reg 7:0 Q ;output KIN ;reg KIN ;always(posedge CLK or posedge CLR) begin if(CLR) Q =0; else if(LOAD) Q=DIN; else begin KIN=Q0; Q 1; Q7=SIN; end endendmodule(2)创建元件图形符号元件符号如下:(3)功能仿真对创建的乘数移位寄存器(CHENG)进行功能仿真,验证其功能的正确性,可用Xilinx Foundation f3.1编译器的Simulator模块实现。功能仿真图如下:表2.3.2 乘数移位寄存器功能表描述D

11、INSINLOADCLKCLRKINQ70901上升沿11000911上升沿01090900上升沿01040910上升沿0184从以上表中数据可以看出,当CLR为1时,该器件清零,输出Q7:0为零,CLR为零时,有移位功能,SIN为移位后高位的补充值。KIN标记移出的那一位,用来判断下次加法加零还是被乘数,CLK上升沿有效,保证该器件工作,该器件成功创建。2.3.3选择模块的设计与实现选择器XUAN2的输入分别用0,B7:0表示,选择后结果输出用QOUT7:0表示,选择信号用SO表示,其设计过程如下。(1)创建Verilog源文件module XUAN2 (B, SO, QOUT) ;inpu

12、t 7:0 B ;input SO ;output 7:0 QOUT ;reg 7:0 QOUT ;always(SO )beginif(SO) QOUT=B;else QOUT=0;endendmodule(2)创建元件图形符号元件图形符号:(3)功能仿真对创建的选择器元件(XUAN2)进行功能仿真,验证其功能的正确性,可用Xilinx Foundation f3.1编译器的Simulator模块实现。功能仿真图如下:表2.3.3 选择器功能表描述B7:0SOQOUT7:00E10E0E000从以上表中数据可以看出,当选择信号为1时,该器件输出QOUT7:0为输入值B7:0,当选择信号为0时

13、,该器件输出00,由功能表知,该器件成功创建。2.3.4 控制模块的设计与实现设计为6位原码一位乘,计数器为模9计数器,上升沿计数,有清零功能,其设计过程如下。(1)创建Verilog源文件module JISHU (CLK, CLR, QOUT, CO) ;input CLK ;input CLR ;output 3:0 QOUT ;reg 3:0 QOUT ;output CO ;reg CO ;always (posedge CLK or posedge CLR)beginif(CLR)beginQOUT=0;CO=1;endelse if(QOUT=9)beginQOUT=0;CO=1

14、;endelsebeginQOUT=QOUT+1;CO=0;endendendmodule(2)创建元件图形符号元件图形符号如下:(3)功能仿真对创建的计数器元件(JISHU)进行功能仿真,验证其功能的正确性,可用Xilinx Foundation f3.1编译器的Simulator模块实现。功能仿真图如下:表2.3.4 计数器功能表描述CLK CLR COQOUT(次数)上升沿有效1008上升沿有效019从以上表中数据可以看出,当脉冲信号为上升沿时,该器件输出QOUT7:0记录次数从0到9,当记满9次时,该器件CO输出1,其余CO输出都为0,由功能表知,该器件是一个模9的计数器,成功创建。2

15、.3.5 其他模块的设计与实现采用原有的XCV200可编程逻辑芯片加法器件ADD8实现电路中的加法,采用FD8CE 8位寄存器存放部分积。ADD8:为8位的加法器,其中A7:0,B7:0为两个输入端口,CO为向后一位的进位标志,CI为前一位向加法器的进位,OFL为溢出,S7:0为结果输出。FD8CE:为8位寄存器,其中D7:0为数据输入端口,CE为该器件的使能端,控制该器件工作,C为脉冲控制端,CLR为清零端,CLR为1时该器件清零,Q7:0为数据输出端口,当脉冲有效,CLR无效,输出等于输入。2.4 仿真调试仿真调试主要验证设计电路逻辑功能、时序的正确性,本次设计为原码一位乘法,设计完成主要

16、采用功能仿真方法对设计的电路进行仿真从而验证其电路功能的正确性。(1)建立仿真波形文件及仿真信号选择功能仿真时,首先建立仿真波形文件,选择仿真信号CLK,CLR,LOAD,数据输入X7:0,Y7:0,符号位输入XA,YA,结果输出OUT16:0,对以上选定的输入信号设置参数,验证输出信号的正确性,选定仿真信号和设置的参数如表2.2所示。表2.4 仿真信号选择和参数设置输入信号输出信号CLKCLRLOADX7:0Y7:0XAYAOUT16:0上升沿11000 0上升沿0100上升沿 0000上升沿0000上升沿0010上升沿0001上升沿0001上升沿0000(2)功能仿真结果与分析功能仿真波形

17、结果如图2.2所示,仿真数据结果如表2.3所示。对表2.3与表1.1的内容进行对比,可以看出功能仿真结果是正确的,进而说明电路设计的正确图2.4 功能仿真波形结果表2.4 仿真数据结果输入信号输出信号CLKCLRLOADX7:0Y7:0XAYAOUT16:0上升沿11000 000030上升沿0100上升沿 0000上升沿0000上升沿0010上升沿0001上升沿0001上升沿0000第3章 编程下载与硬件测试3.1 编程下载功能仿真通过以后,经过编译,若成功,则编程下载功能,将得到的*.bit文件,然后下载到XCV200实验板的XCV200可编程逻辑芯片中。由于此次设计编译有点问题,不能通过

18、,最终没能成功下载,试验没能完美的完成,有点遗憾,分析其原因,可能是由于Verilog 语言设计不太成熟,编译虽然没有什么问题,可下载时要求比较严格,没能通过。3.2 硬件测试及结果分析 XCV200实验板信号对应关系XCV200芯片引脚信号XCV200实验板X7:0K0Y7:0K1XAK2(0)YAK2(1)LOADK2(2)CLRRK2(3)CLKK2(4)OUT7:0D0 利用表中的参数作为输入数据,逐个测试输出结果,即用XCV200实验板的开关输入数据,观察输出OUT16:0。 参考文献1 曹昕燕. EDA技术实验与课程设计M.北京:清华大学出版社,20062 范延滨.微型计算机系统原

19、理、接口与EDA设计技术M.北京:北京邮电大学出版社,20063 王爱英计算机组成与结构(第4版)M.北京:清华大学出版社,20064 李勇计算机原理与设计(修订本)长沙:国防科技大学出版社,19895 王尔乾数字逻辑与数字集成电路北京:清华大学出版社,19966 白中英计算机组成原理北京:科学出版社,19947 杨天行计算机技术北京:国防工业出版社,1999附 录(电路原理图) 图(一)课程设计总结:主要从以下几方面总结:1 在这次组成原理设计实验中,遇到了很多问题,刚开始的设计思想有点麻烦,用了三个8位的寄存器,两个8位的移位寄存器,总体有三个不同的脉冲控制端,两个不同的LOAD打入端,一

20、个总清零端CLR,有X,Y,两个8位的数据输入,一个17位的结果输出,但封装下载有相当大的困难,因为下载时只可以有一个脉冲控制端口,在老师的提点下,改进了原有的电路图,去掉一个8位的移位寄存器,省掉了原有的很多不必要的麻烦。另外又加入了计数器控制原有电路,解决了很多原有的问题。2 这次题目为原码一位乘法器的设计,通过运用库中原有器件或运用Verilog语言编程实现所需模块的设计,最终实现原码一位乘,输入X,Y,及其符号XA,YA,即可求得并输出结果。 3 通过这次实验设计,了解了许多计算机组成原理知识,并学会了简单运用Verilog语言编程实现所需各个器件,知道了自己在设计方面的不足和所需要学习的知识,在这次设计中指导老师给予了我很大的帮助,在以后的学习和实验中会更加努力的学习,弥补自己的不足。指导教师评语:指导教师(签字): 年 月 日课程设计成绩

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1