实验二 运算器实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南京工程学院
计算机工程学院
计算机组成与结构实验报告书
实验学生班级 K网络工程121
实验学生姓名王云峰
学号 240121525
实验地点信息楼A115
实验二运算器实验
同组同学李翔240121515(合作小组朱赛杰240121533)实验日期 11月27日实验仪器号 TEC-XP+14S022
一、实验目的
1.加深对Am2901运算器内部组成的了解, 掌握四片Am2901芯片间的连接关系, 以及它与有关外部逻辑电路的连接关系。
2.准确把握该运算器的控制与使用, 即掌握其运算与操作功能, 以及正确地为其提供全部控制信号及有关数据的手段与技术。
3.初步了解运算器在计算机整机中的作用。
二、实验内容
1.脱机方式下运算器的控制及运行设计控制信号序列,在脱机方式实现给定程序段的功能。
记录按压START 前后的ALU的运算结果和状态标志。
2.联机方式下运算器的控制及运行在联机方式下,汇编并单步执行给定程序段,查看并记录每条指令执行后的运行结果。
使用指令的单步骤执行方式,观察与运算器相关的控制信号的状态。
三、实验步骤与结果
脱机的运算器实验,在教学实验中实现如下7项操作功能:
预期功能实现方案
R0 ←1234 数据开关拨1234,B地址给0,D+0,结果送B口选的R0
R9 ←789F 数据开关拨789F,B地址给9,D+0,结果送B口选的R9 R9 ←R9-R0 B地址9,A地址给0,最低位进位给1,B-A,结果送B 口选的R9
R0 ←R0+1 B地址给0,最低位进位给1,B+0,结果送B口选的R0 R10←R0 B地址给A,A地址给0,A+0,结果送B口选的R10
逻辑右移
在有了预期功能和实现方案之后,要解决的具体问题,就是依据教学计算机的简明操作卡中的有关表格中规定的内容,找出实现每一操作功能要用到的控制码。
请把表2-3中各组控制信号的正确的取值填写在相应位置,然后把运行结果的状态信息填入表2-4。
思考题:执行R0+1时,为什么输出Y15-Y0为1234,而不是1235?
左右移位时,是通用寄存器本身移位,还是它与Q寄存器联合移位是怎么区分的?最高、最低位的移位输入信号是怎么给出的?C在移位中有什么作用?
联机的运算器实验,改用教学计算机的指令实现上述脱机运算器实验完成的功能。
需要指出的是不能在教学机的已有指令中实现Q←R9 的处理功能,因为运算器内部的乘商寄存器Q属于汇编程序员是不能访问的专用寄存器,只需完成剩余的其他6项功能即可。
例如可以用A命令建立该程序,操作步骤如下。
A 2000
2000: MVRD R0, 1234
2002: MVRD R9, 789F
2004: SUB R9, R0
2005: INC R0
2006: MVRR R10,R0
2007: SHR R9
2008: RET
可以用G命令运行这个程序,查看程序的最终运行结果为:
R0的内容为1235,R9的内容为3335,R10的内容为1235。
也可以用T命令在单指令方式下运行这个程序,查看程序的每个语句执行后的运行结果为:
第1条指令执行后,R0 的内容为1234;
第2条指令执行后,R9 的内容为789F;
第3条指令执行后,R9 的内容为666B;
第4条指令执行后,R0 的内容为1235;
第5条指令执行后,R10的内容为1235;
第6条指令执行后,R10的内容为3335,并且标志位C的值为1;
这个程序的最后一个语句用于结束程序的运行过程,使教学计算机返回监控状态。
也可以用指令的单步骤执行方式运行这个程序,此时需要把上述程序的最后一个语句从RET修改为JR 2000,再用G命令运行这个程序时,这个程序将进入无休止的循环执行状态,以便有机会进入指令的单步骤执行方式。
具体办法是,在这个
程序处于循环执行的过程中,把教学机的5个功能选择开关中最左面的一个(STEP/CONTINUE)从朝下拨为朝上的方向,使教学计算机从正常运行进入指令的单步骤执行方式。
此时,教学机可能处于上述7条指令的任何一条指令的任何一个执行步骤,此时可以通过查看指令寄存器的内容了解正在执行的是哪一条指令,查看当前微指令地址(运行微程序控制器)或者节拍发生器的状态(运行组合逻辑控制器)了解正在执行的是相关指令哪一个执行步骤,查看提供给运算器的23位控制信号的状态和运算器的执行结果,上述6条指令都一定有一个执行步骤实现的功能、使用的控制信号的状态与脱机运算器实验中的一个相关步骤相对应。
这之后每按一次启动按钮,教学机将执行指令的一个步骤;前一条指令执行结束后将自动进入下一条指令的执行过程,可以执行到程序中的每一条指令的每一个执行步骤,同学可以观察自己感兴趣的全部有关结果和控制信号的状态。
当然在这个执行过程中遇到的许多问题和相关知识目前尚未讲解,会存在许多的疑问,这正好为后续的学习提供了某些线索。
此时同学应该把主要注意力放到上述6条指令执行过程中的、与脱机运算器实验中的一个相关步骤相对应的那个执行步骤,查看运算器的执行结果和送到运算器的23位控制信号,找出两种实验方式(脱机与联机)下运算器运行的相同结果,差异只是控制信号的提供方发生了变化,脱机方式下是通过24位的微型开关中的23位为运算器提供控制信号,联机方式下则是通过教学机的控制器为运算器提供这23位的控制信号。
四、实验分析与思考
1. 说明在脱机方式下运算器的数据来源、三组控制信号及A、B端口的地址来
源。
①运算器的数据来源于16位数据的拨动开关(仪器的右下角的那16个黑色的开关)
②三组控制信号来源:用24位微型开关来提供控制信号
③AB端口地址:送给AM2901器件用于选择源与目的操作数的寄存器编号关于上面的三个问题的叙述的图解:
2. 说明在联机方式下运算器的三组控制信号及A、B端口的地址来源。
此时可以通过PC机的输入各种指令来提供数据了
三组控制信号,由控制器来提供。
A,B端口地址应该还是操作数的寄存器地址吧
3. 理解ALU输出及SVZC状态在按压START键前后的变化。
① ALU输出的东西是计算的结果,按START键之后,寄存器接收到了ALU 计算结果,以进行接下来的操作。
②SVZC状态在按压START键前后的变化的理解:
c进位标志(进位变1)例如本次实验:
Y15-Y0 C
RO←12341234 0
R9←789F789F 0
R9←R9-
666B 1
R0
z是否为0(本次实验皆为0)
v溢出标志(本次实验未有溢出)
s符号标志
4.说明运算器与有关外部逻辑电路的连接关系及其控制字段。
所示。
主体部分由4片4位长度的位片结构的运算器芯片Am2901组成,每片Am2901可以接收来自内部总线IB的4位输入数据,其4位输出都直接送到地址寄存器AR的不同字段(AR不属于运算器的组成部分,图中用虚线框表示),并且经过支持三态功能的开关门电路送到内部总线IB。
还要使用MACH 芯片内部的部分电路提供ALU最低位的进位输入信号和最高、最低位的移位输入信号,使用一片GAL20V8实现4位的标志位寄存器FLAG,接收ALU输出的4个标志位信号和来自内存堆栈区的4位数据(用于恢复现场状态信息),FLAG 的4位输出可以经过一片带支持三态功能的开关门电路送到内部总线IB,用于保存现场状态信息到堆栈区。
I8-6:Y的输出,通用寄存器接收,Q寄存器接收
I5-3:运算功能选择
I2-0:数据组合选择状态
SST:寄存器接收
SCI:最低进位
SSH:移位控制
A:A端口地址
B:B端口地址
各个控制字段的功能表即:
五、教师评阅
实验态度实验完成情况掌握原理情况实验报告完成情况优良中差优良中差优良中差优良中差
实验成绩评定:教师签字:年月日
文档已经阅读完毕,请返回上一页!。