收藏 分销(赏)

计算机组成原理实验报告八位补码加减法器的设计与实现.docx

上传人:鼓*** 文档编号:9627321 上传时间:2025-04-01 格式:DOCX 页数:19 大小:327.50KB 下载积分:8 金币
下载 相关 举报
计算机组成原理实验报告八位补码加减法器的设计与实现.docx_第1页
第1页 / 共19页
计算机组成原理实验报告八位补码加减法器的设计与实现.docx_第2页
第2页 / 共19页


点击查看更多>>
资源描述
计算机科学与技术学院 计算机组成原理 实验报告书 实 验 名 称 八位补码加/减法器的设计与实现 班 级 学 号 姓 名 指 导 教 师 日 期 成 绩 实验1八位补码加/减法器的设计与实现 一、实验目的 1.掌握算术逻辑运算单元(ALU)的工作原理。 2.熟悉简单运算器的数据传送通路。 3.掌握8位补码加/减法运算器的设计方法。 4.掌握运算器电路的仿真测试方法 二、实验任务 1.设计一个8位补码加/减法运算器 (1)参考图1,在QUARTUS II里输入原理图,设计一个8位补码加/减法运算器。 (2)创建波形文件,对该8位补码加/减法运算器进行功能仿真测试。 (3)测试通过后,封装成一个芯片。 2.设计8位运算器通路电路 参考下图,利用实验任务1设计的8位补码加/减法运算器芯片建立运算器通路。 3.利用仿真波形,测试数据通路的正确性。 设定各控制信号的状态,完成下列操作,要求记录各控制信号的值及时序关系。 (1)在输入数据IN7~IN0上输入数据后,开启输入缓冲三态门,检查总线BUS7~BUS0上的值与IN0~IN7端输入的数据是否一致。 (2)给DR1存入55H,检查数据是否存入,请说明检查方法。 (3)给DR2存入AAH,检查数据是否存入,请说明检查方法。 (4)完成加法运算,求55H+AAH,检查运算结果是否正确,请说明检查方法。 (5)完成减法运算,分别求55H-AAH和AAH-55H,检查运算结果是否正确,请说明检查方法。 (6)求12H+34H-56H,将结果存入寄存器R0,检查运算结果是否正确,同时检查数据是否存入,请说明检查方法。 三、实验要求 (1) 做好实验预习,掌握运算器的数据传送通路和ALU的功能特性。 (2) 实验完毕,写出实验报告,内容如下: ① 实验目的。 ② 实验电路图。 ③ 按实验任务3的要求,填写下表,以记录各控制信号的值及时序关系。表中的序号表示各控制信号之间的时序关系。要求一个控制任务填一张表,并 可用文字对有关内容进行说明。 序号 nsw-bus nR0-BUS LDR0 LDR1 LDR2 m nalu-bus IN7~IN0 BUS7~BUS0 ④仿真波形及仿真结果的分析方法、分析过程和分析结果。 ⑤实验体会与小结。 四、实验预习内容 1.实验电路设计原理及思路说明 本实验利用基本逻辑门电路设计一位全加器(FA),如表1: 表1-一位全加器(FA)电路的输入输出信号说明 信号名称 说明 输入信号 Ai 加数 Bi 加数 Ci 低位输入的进位 输出信号 Si 和 Cj 运算产生的进位 然后以此基础上实现八位补码加/减法器的设计,考虑到实现所需既可以实现加法又可以实现减法,所以使用了一个M输入来进行方式控制加减。 2. 实验电路原理图 实验参考电路如下图所示,下图(a)是1位全加器的电路原理图,图(b)是由1位全加器采用行波进位方法设计的多位补码加/减法运算器。 图1-多位补码加/减法运算器原理图 图2-8位运算器通路原理图 3. 实验电路功能说明 表2-一位全加器(FA)功能表 输入 输出 Ci Bi Ai Si Cj 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 表3-M与Bi异或关系原理图 M Bi M异或Bi 0 0 0 0 1 1 1 0 1 1 1 0 当M为0时,Bi与M值无关,当M为1时,Bi取反。也就是当M为0时,执行加法运算,反之进行减法运算。 FA实现Ai与(Bi异或M)的加法运算,再加上Ci输出Si 表4-图4功能端口解析 接口 解析 输入 A[7..0] 8位信号输入(加/被减数) B[7..0] 8位信号输入(加/减数) M 控制信号(0加,1减) 输出 S[7..0] 输出8位计算结果 OVER 溢出信号(0不溢出,1溢出) 表5-图3功能端口解析 接口 解析 输入 IN[7..0] 8位信号输入 nsw-bus 控制输入信号(0有效,1无效) nalu-bus 控制输入信号(0有效,1无效) nR0-BUS 控制输入信号(0有效,1无效) LDR0 时钟信号,上升沿有效 LDR1 时钟信号,上升沿有效 LDR2 时钟信号,上升沿有效 m 溢出信号(0不溢出,1溢出) 输出 BUS[7..0] 8位信号输出 注:1.74244b的AGN和BGN接口与74374b的OEN接口都是低电平有效,nsw-bus,nalu-bus和nR0-BUS控制器件的输入,当输入0时,输入有效,否则无效 2.74273b的CLK接口为上升沿有效,当LDR的时钟处于上升沿,即0->1变化时,输入有效 4. 器件的选型 本实验用到以下基本逻辑器件:异或门,一位加法器FA,7486等 表6-一位全加器(FA)电路所用主要器件清单 名称 说明 AND2 二输入与门 XOR2 异或门 OR2 或门 INPUT 信号输入端子 OUTPUT 信号输出端子 表7-8位补码加/减法运算器器件清单 XOR2 二输入异或门 FA 一位加法器(自选器件) INPUT 信号输入端子 OUTPUT 信号输出端子 表8-8位运算器通路电路 INPUT 信号输入端子 OUTPUT 信号输出端子 8位补码加/减法运算器 计算元件(自选器件) 74273b 数据缓存元件 74244b 数据缓存元件 5. 实验方法与实验步骤等 本实验利用EDA工具软件(Quartus II 2.0或以上版本)完成,实验分为:原理图的录入与编辑、仿真波形的设计及仿真结果的分析这3个步骤。具体为: (1)原理图的录入与编译 在EDA工具软件(Quartus II 2.0或以上版本)中,采用原理图的录入的方法,绘制电路原理图。绘制完成存盘后进行编译。编译通过后,可以进行步骤(2)的操作。如果编译不通过,则检查原理图,改正错误后,重新存盘并编译。这一过程重复进行,直至原理图编译通过。 (2)仿真波形的设计 根据电路的功能,设定输入信号的初值后,利用EDA工具软件(Quartus II 2.0或以上版本)的波形仿真功能,验证电路的正确性。根据8位补码加/减法运算器的功能要求,选定8组输入信号的初值,如下表所示: 表9-一位全加器(FA)电路仿真波形输入信号初值 序号 Ci Bi Ai 1 0 0 0 2 0 0 1 3 0 1 0 4 0 1 1 5 1 0 0 6 1 0 1 7 1 1 0 8 1 1 1 表10-8位补码加/减法运算器仿真波形输入信号初值 序号 A(十进制) B(十进制) M(01信号) S(二进制) 溢出 1 0 20 0 00010100 0 2 40 20 0 00111100 0 3 80 20 0 01100100 0 4 120 20 0 10001100 1 5 10 10 1 00000000 0 6 50 10 1 00101000 0 7 80 10 1 01000110 0 8 110 10 1 01100100 0 (3)仿真结果的分析 在EDA工具软件(Quartus II 2.0或以上版本)中,新建仿真波形文件,按表所示的输入信号的初值进行设定后,进行仿真。阅读仿真波形,对照电路功能,进行分析并给出结论。 五、实验电路图 根据电路原理图,实验时在Quartus II 2.0环境里绘制的实验电路如下图所示。 图3-一位全加器(FA) 图4-8位补码加/减法运算器 图5-8位运算器通路电路 六、 仿真调试的过程、仿真结果的分析和仿真测试的结论 在Quartus II 2.0中新建仿真波形文件,如下图6示。 图6-一位全加器(FA)仿真结果 分析图所示的仿真波形,可得到下表所示的实验结果。 表11-一位全加器(FA)电路仿真实验结果 输入 输出 周期 时间 Ci Bi Ai Si Cj 1 0-800ns 0 0 0 0 0 2 800ns-1.6µs 0 0 1 1 0 3 1.6µs -2.4µs 0 1 0 1 0 4 2.4µs -3.2µs 0 1 1 0 1 5 3.2µs -4.0µs 1 0 0 1 0 6 4.0µs -4.8µs 1 0 1 0 1 7 4.8µs -5.6µs 1 1 0 0 1 8 5.6µs -6.4µs 1 1 1 1 1 将表9与表11相对照,可知一位全加器FA正确。 在Quartus II 2.0中新建仿真波形文件,如下图7所示。 图7-8位补码加/减法运算器仿真结果 分析图所示的仿真波形,可得到下表所示的实验结果 表12-八位补码加/减法器电路仿真实验结果 输入 输出 周期 时间 A B M S OVER 1 0~5ns 0 20 0 00010100 0 2 5~10ns 40 20 0 00111100 0 3 10~15ns 80 20 0 01100100 0 4 15~20ns 120 20 0 10001100 1 5 20~25ns 10 10 1 00000000 0 6 25~30ns 50 10 1 01000110 0 7 30~35ns 80 10 1 01100100 0 8 35~40ns 110 10 1 00000100 0 表记录的实验结果与上面计算数据中要求的值一致。经分析比较可知,本次实验设计的电路实现了八位补码加/减法器的功能。 8位运算器通路电路 (1)首先对建立好的通路进行仿真波形图测试,测试结果如图8所示。并检查数据是否一致 图8-8位运算器通路电路仿真结果 检查图8,可知输入IN与输出BUS一致,数据一致 (2)给DR1存入55H,检查数据是否存入,请说明检查方法。 检查方法:在DR1中存入55H,同时在DR2中存入00H,检测总线输出的数即为存入的数据,波形图如下图9: 图9 表13-时序关系图 序号 nsw- bus nR0- bus LDR0 LDR1 LDR2 Control Nalu- Bus IN [7..0] BUS [7..0] 1 0 0 上升沿 0 0 0 1 55H 55H 2 1 0 0 上升沿 0 0 1 00H ZZH 3 0 0 上升沿 0 0 0 1 00H 00H 4 1 0 0 0 上升沿 0 1 55H ZZH 5 1 0 0 0 0 0 0 55H 55H (3)给DR2存入AAH,检查数据是否存入,请说明检查方法。 和检测DR1相同,如图10 图10 表14-时序关系图 序号 nsw- bus nR0- bus LDR0 LDR1 LDR2 Control Nalu- Bus IN [7..0] BUS [7..0] 1 0 0 上升沿 0 0 0 1 00H 00H 2 1 0 0 上升沿 0 0 1 00H ZZH 3 0 0 上升沿 0 0 0 1 AAH AAH 4 1 0 0 0 上升沿 0 1 AAH ZZH 5 1 0 0 0 0 0 0 AAH AAH (4)完成加法运算,求55H+AAH,检查运算结果是否正确,请说明检查方法。 波形图如下: 图11 表15-时序关系图 序号 nsw- bus nR0- bus LDR0 LDR1 LDR2 Control Nalu- Bus IN [7..0] BUS [7..0] 1 0 0 上升沿 0 0 0 1 55H 00H 2 1 0 0 上升沿 0 0 1 00H 00H 3 0 0 上升沿 0 0 0 1 00H 00H 4 1 0 0 0 上升沿 0 1 AAH 00H 5 1 0 0 0 0 0 0 00H FFH (5)完成减法运算,分别求55H-AAH和AAH-55H,检查运算结果是否正确,请说明检查方法。 55H-AAH波形图如下: 表16-时序关系图 序号 nsw- bus nR0- bus LDR0 LDR1 LDR2 Control Nalu- Bus IN [7..0] BUS [7..0] 1 0 0 上升沿 0 0 1 1 55H 00H 2 1 0 0 上升沿 0 1 1 00H 00H 3 0 0 上升沿 0 0 1 1 00H 00H 4 1 0 0 0 上升沿 1 1 AAH 00H 5 1 0 0 0 0 1 0 00H ABH AAH-55H波形图如下: 表17-时序关系图 序号 nsw- bus nR0- bus LDR0 LDR1 LDR2 Control Nalu- Bus IN [7..0] BUS [7..0] 1 0 0 上升沿 0 0 1 1 55H 00H 2 1 0 0 上升沿 0 1 1 00H 00H 3 0 0 上升沿 0 0 1 1 00H 00H 4 1 0 0 0 上升沿 1 1 AAH 00H 5 1 0 0 0 0 1 0 00H 55H (6)求12H+34H-56H,将结果存入寄存器R0,检查运算结果是否正确,同时检查数据是否存入,请说明检查方法。 ①计算结果: 12H+34H-56H波形图如下: 表18-时序关系图 序号 nsw- bus nR0- bus LDR0 LDR1 LDR2 Control Nalu- Bus IN [7..0] BUS [7..0] 1 0 0 上升沿 0 0 0 0 12H 12H 2 1 0 0 上升沿 0 0 0 00H ZZH 3 0 0 上升沿 0 0 0 0 34H 34H 4 1 0 0 0 上升沿 0 0 00H ZZH 5 1 0 上升沿 0 0 0 0 00H 46H 6 1 0 0 0 上升沿 0 1 00H ZZH 7 0 0 上升沿 0 0 0 1 56H 56H 8 1 0 0 上升沿 0 0 1 00H ZZH 9 1 0 0 0 0 0 1 00H F0H 七、 实验体会与小结 通过这次运算器的计算机组成原理实验,我对QUARTUS2软件的使用更加得心应手,学会在这之上用门电路搭建和组合原理图并实现封装调用等等。在实验中,我遇到很多问题,例如,在绘制电路图后,由于工程文件的存储地址错误,导致编译失败之类的问题。并且,我一开始没有使用总线输入,导致输入有19个端,大大加重了工作量。除此之外,我学会了把缓存器,寄存器,ALU合理的串接成为8位运算器通路。在这之中,时序的波形设计对我来说有一定的难度,每个时钟周期里,各个部件的工作状态都不相同,必须仔细分析每个部件状态才能熟练设计。最后,在老师的教导下,我终于完成了本次实验。 通过本次实验,我对计算机组成原理这门课有了更加深刻的理解。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 中考

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服