- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机组成原理专题实验报告(三)
学生姓名
专业/班级 计算机11 班
学 号
所在学院 电信学院
指导教师 姜欣宁
提交日期 2013 年12 月19 日
计算机组成原理专题实验(三)
——运算器模块设计和实现
1.实验目的
(1)掌握基本的算术运算和逻辑运算的运算规则和实现方法;
(2)掌握基本运算器的信息传送通路;
(3)掌握运算器的工作原理,设计并实现具有定点、浮点运算功能的模块。
2.实验要求
画出运算器模块的各种对照表,如:反映运算操作码OP、运算功能与标志位flag
之间的关系;比较“使用/不使用”先行进位对运算速度的影响等。
分析模块的工作原理(多以图、表方式描述)
写出设计实体的引脚与外设(输入装置:指示灯(表示数据、状态等);输出装
置:开关(数据、低位进位等)对应关系;
写出模块的程序流程图
对各种运算结果的仿真图的分析
对涉及和调试运算过程进行记录,包括:出现了什么问题(截图)及如何解决的
等?
3.实验原理
设计一个基本的算术逻辑运算模块,包括:
①算术运算模块,主要包括定点运算:加减乘除运算及浮点运算(浮点运算依照
IEEE754
标准);
②逻辑运算模块,主要包括与、或、非、异或和各种移位运算等;
注: 运算器模块框图:运算器(ALU)通常有两个数据输入端(opr1和opr2),
一个数据输
出端(result),运算模式控制信号(code)和标志位( cin , flag)等。下图
为运算器的逻辑框图:
图2-1 运算器
运算器包含加法器(含用先行进位的构成的加法器,如4 位一组构成16 位)、减
法器、乘法器、与门、或门、非门、异或门和移位器等及浮点运算模块;运算器
模块中也可以加入寄存器组。
本实验中设计的运算器操作数可以分别为8/16/32 位字长((32位字长运算可以
只进行仿真分析)
③ 补充题:(学号末位数为1、2;3、4;5、6;8 分别做1)、2)、3)、;1、3、
5、7、0、9 做第4)
定点乘法:
已知X=-0.1010,Y=0.0011,求 X*Y=?
利用原码乘法的方法,设计VHDL 程序,完成乘法的运算并描述其算法及电路图:
(上题由学号末位数为7、8 的同学完成)
利用Booth 法的方法,设计VHDL 程序,完成乘法的运算并描述其算法及电路图;
(上题由学号末位数为5、6 的同学完成)
利用阵列乘法的方法,设计VHDL 程序,完成乘法的运算并描述其算法及电路图;
若要实现X/Y=?
(上题由学号末位数为3、4 的同学完成)
浮点(依照IEEE754 标准)加减运算:乘除运算(选)
完成 【例6-29】(教科书P352)的运算,设计VHDL 程序,描述其算法,分析仿
真波形及画出电路图
(上题由学号末位数为1、2、9 的同学完成)
注:以上4 题每一个同学可以多选。
4.设计思路与源代码
4.1 顶层设计实体的引脚与外设(开关、指示灯)的对应关系
(1)运算控制信号**可以对应实验台上开关SA0;
(2)低位向高位的进位或者借位信号cin 对应实验台上开关SA1;
(3)操作码code[2..0]对应实验台上开关SA5~SA2;
(4)第一操作数opr1[7..0]对应于实验台上开关SD7~SD0;
(5)第二操作数opr2 [7..0]对应实验台上开关SD15~SD8;
(6)运算结果result [15..0]对应实验台上指示灯A7~A0;
(7)运算结果标志位flag 对应实验台上指示灯 A8。
4.2 实验思路
运算器根据ALUOp 字段确定要执行的某种运算,再获得操作数之后,执行操
作即可,确定好运算器的信息传送通路后,再根据时序要求正确安排指令即可。
为了实现浮点运算,以IEEE754 标准为例,实现了浮点的加减乘除操作。
4.4 源代码
4.4.1 思考题源代码——原码一位乘(4 位)
library ieee;
use ieee .std_lo
原创力文档


文档评论(0)