TEC2实验计算机运算器实验.docx
- 文档编号:6766598
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:14
- 大小:268.54KB
TEC2实验计算机运算器实验.docx
《TEC2实验计算机运算器实验.docx》由会员分享,可在线阅读,更多相关《TEC2实验计算机运算器实验.docx(14页珍藏版)》请在冰豆网上搜索。
TEC2实验计算机运算器实验
实验报告
实验人:
学号:
08
日期:
2010-05-18
院(系):
软件学院
专业(班级):
0
实验题目:
TEC-2实验计算机运算器实验
一.实验目的
1.了解和掌握Am2901运算器的组成结构的工作原理;
2.认识和掌握TEC-2机计算器的组成和工作原理;
3.认识和掌握TEC-2机运算器相关控制信号的含义和使用方法;
4.了解和掌握运算器的进位时间的测试方法,及进一步掌握双踪示波器的使用方法;
二.实验原理
1).综述
TEC-2实验计算机是为计算机组成原理的教学与实验而研制的实验计算机。
有两种方式实验:
高级方式实验-联机实验,初级方式实验-脱机实验。
本实验即是采用脱机实验的方法,对运算器的原理和功能进行探究。
首先,运算器部件是计算机五大功能部件中的数据加工部件。
运算器的首要功能是完成对数据的算术和逻辑运算,由其内部的应该被称为算术与逻辑运算部件(ALU)来实现,它在给出运算结果的同时,还给出运算结果的标志,如溢出与否,进位否,结果为零否和符号正负等,这些标志都保存在一个状态寄存器中。
运算器的得二项功能,是暂存将参加运算的数据和中间结果,由其内部的一个寄存器来承担。
因为这些寄存器可被汇编程序直接方位与使用,因此将它们成为通用寄存器,以区别那些计算机内部设置的,不能为汇编程序员访问的专用寄存器。
为了用硬件线路完成程序指令运算,运算器内一般还有一个能自行左右移位的专用寄存器,称为乘商寄存器。
TEC-2实验即得运算器核心部分是Am2901。
Am2901芯片是一个4位的位片结构的完整的运算器部件。
对运算器的控制与操作,指的是如何让运算器完成所预期的操作功能。
这是通过正确的向其提供控制信号。
包括选哪个(哪些)数据参加运算,执行何种运算功能,对运算结果(值和特征)如何保存与送出等;同时,要解决正确运算器提供参加运算数据的种种问题,包括从外部向运算器送入数据,正确给出ALU最低的进位信号,运算器左右移位操作中的移位输入信号等。
给出正确的数据的来源和正确的控制信号,运算器就执行规定的操作功能。
在计算机整体运行过程中,运算器用到的控制信号是由计算机的控制部件提供;从教学实验需求考虑,如TEC-2机运算器运行中用到的数据和控制信号,也可以通过该教学计算机上的16个手拨数据开关和24个手拨微型开关来实现。
2).Am2901运算器
A.Am2901芯片内部组成结构
Am2901芯片是一个4位的位片结构运算部件,是一个完整的运算器,只是位数较少,具有很好的典型性,是个理想的教学实例。
其内部结构如下所示:
图3.1Am2901内部结构
(1)4位的ALU,实现8种运算功能,其每一位上的2个输入数据分别用R和S表示。
这八种功能的选择控制,是用外部送入的3位编码值I5~I3实现的。
AlU还能给出Cn+4、F、OVR和F=0000四位状态信息,并能接受最低位的一个输入信号Cn。
(2)16个4位的通用寄存器组,用R0~R15表示,和一个4位的Q寄存器,通用寄存器组为双端读出和单端控制,而且运算后的结果经过一个移位器实现写入。
Q寄存器本身具有左移右移功能且能接受AlU的运算结果。
(3)能接收外部送入的4位数据D3~D0,并输入4位的数据Y3~Y0。
(4)从图上可以看到,ALU的两个输入端R和S分别可以接收D输入,A端口或逻辑0数据,和A端口、B端口、Q寄存器和逻辑0数据。
(5)Am2901还采用另外3位外部送来的控制信号I8~I6。
(6)通用寄存器组通过A端口,B端口读出内容的输出处均有锁存器线路支持,以保证在执行诸如A+B结果送B运算时操作的正确性。
B.Am2901的操作时序
图3.3Am2901的时钟信号的作用
C.Am2901芯片的控制信号及其控制码与操作
Am2901戏弄的控制信号有9个,即I8~I0,这9个控制信号分为三组,它们是:
(1)I8、I7、I6:
选择运算结果或有关数据以何种方式送往何处;
(2)I5、I4、I3:
选择ALU的运算功能,共八种;
(3)I2、I1、I0:
选择送入进行运算的两个操作数据R和S的来源。
这三种控制信号与相关控制码的关系如下表3.1所示:
表3.1Am29019个控制信号I8~I0
控制码
I8、I7、I6
I5、I4、I3
I2、I1、I0
000
F→Q
F
R+S
A
Q
001
无
F
S–R
A
B
010
F→B
A
R–S
0
Q
011
F→B
F
R∨S
0
B
100
F/2→B
Q/2→Q
F
R∧S
0
A
101
F/2→B
F
/R∧S
D
A
110
2F→B
2Q→Q
F
RS
D
Q
111
2F→B
F
R⊙S
D
0
寄存器结果选择
Y输出选择
运算功能选择
R
S
注:
R、S中的“0”为逻辑0。
3).TEC-2机运算器
如图:
图3.6完整的16位运算器的组成框图
4片间的连接关系是:
a)16位的数据输入有4片各各自的D3~D0组成,其位序号从高位芯片向低位芯片顺序排成D15~D0。
b)16位的数据输出由4片各自的Y3~Y0组成,其为序号从高位芯片向低位芯片顺序排成Y1~Y0。
c)高地位进位关系的3组信号。
d)其他的计组输入信号,对4片Am2901期间来说应该有相同的值,包括/OE(控制选通Y的输出),A地址,B地址,I8~I0,和工作脉冲CP,故应将4个芯片的这些管脚连接一起。
4).TEC-2机运算器部件的辅助组成部分
**标志位的含义及取值:
S:
符号标志,负数为1;
V:
溢出标志,溢出则为1;
Z:
运算结果标志,结果为0则为1;
C:
进/借位标志,有则为1
三位微码与这8种处理的对应关系,以用表格形式给出在TEC-2的操作卡上,
如表3.2所示。
表3.2三位微码与状态位的关系表
SST编码
状态位输入
说明
B34B33B32
C
Z
V
S
000
C
Z
V
S
四个标志位的值保持不变
001
CY
F=0
OV
F15
接收ALU的标志位输出值
010
IB7
IB6
IB5
IB4
恢复标志位现场值
011
0
Z
V
S
置C为0,另三个标志不变
100
1
Z
V
S
置C为1,另三个标志不变
101
RAM0
Z
V
S
右移操作,另三个标志不变
110
RAM15
Z
V
S
左移操作,另三个标志不变
111
Q0
Z
V
S
联合右移,另三个标志不变
表3.3
运算器最低位进位信号的给出与控制(SCi)
运算器最低位的进位信号Cin可能为0、1、c标志的值,为了测试与实验方便,有时可送入一个连续的方波信号,当认运算执行16位全1与这个最低位的进位方波信号相加时,则加法器每一位的输出结果均为方波,有利于观察和测试。
SCi编码(B11、B10)
00
01
10
11
Cin取值
0
1
C
TCLK方波
表3.4
运算器最高位,最低位的一如信号(SSH)
控制码SSH
左移
右移
说明
B9B8
RAM0Q0
RAM15Q15
00
0X
0X
通用寄存器逻辑位移
01
CX
CX
通用寄存器与C循环移位
10
Q15/F15
CYRAM0
原码除(左移)乘(右移)
11
XX
F15⊕OVRRAM0
右移用于补码乘法
说明:
•表中“X”为任意值,表示取任意值都不受影响
•当通用寄存器本身移位时,Q寄存器不受影响
•乘除法运算要求通用寄存器与Q寄存器联合移位,没有Q寄存器单独移位功能
•左右移是由指令功能确定的
•SSH为0,用于逻辑移位指令
为1,用于循环移位指令
为2,用于乘除法运算的联合移位及上商
为3,用于算术右移指令,或补码乘法计算
三.实验使用操作说明
TEC-2机的运算器实验可分成脱机和联机两种方式,又分成静态功能实验与动态进位时间测试两个方面的内容。
1.脱机方式
当TEC-2机的4个功能开关FS1~FS4处于XXX1位置时,即FS1~FS4三个开关职位0和1,都无所谓,而要FS4处于”1”。
2.联机方式
当TEC-2机的第四个功能开关FS4处于‘0’时,运算器处于联机状态,即运算器已正常接入TEC-2机的整体系统之内,其内部的控制信号,即在脱机状态下由两个12位的微型开关提供的信号,完全由TEC-2机的控制器的微指令寄存器PLR的相应的微码给出。
与脱机方式相比,是把通过两个微型开关拨的内容,变成写进控制器的控存相应单元中对应位上‘0’或‘1’。
每一步操作,还可以通过按单步键单步执行。
这种实验方法需对怎样向控存装入微码和怎么顺序取出微指令字有一定了解。
四.实验内容
1.脱机实验
试验中所述将某开关置为‘1’,即表示将开关向上拨;将某开关置为‘0’,即表示将开关向下拨。
(1)将TEC-2机的功能开关FS4置为‘1’;
(2)主脉冲置为单步方式,STEP/CONT开关拨向STEP一边。
(3)将D0(A000H)传入R0。
(4)将D1(4000H)传入R1。
(5)对R0和R1进行各种算术、逻辑运算。
将开关S2、S1、S0置于“110”,指示灯将显示ALU的运算结果;将开关S2、S1、S0置于“000”,指示灯将显示SVZC的状态。
功能
MI8~6
MI5~3
MI2~0
A口
B口
按压STEP前
按压STEP后
ALU输出
SVZC
ALU输出
SVZC
R0+R1→R0
R0+0→R0
R0-R1→R0
R0+0→R0
R0∨R1→R0
R0+0→R0
R0∧R1→R0
R0+0→R0
``````
SCi的设置:
R0+R1+C→R0,SCi=10;R0+1→R0,SCi=01其余SCi=00
2.联机实验。
(1)将FS1~FS4置成1010,STEP/CONT置成CONT,启动TEC-2机,进入监控程序。
(2)在联机状态下,在命令行状态用“A”命令输入下列程序:
>A800
0800:
MovR0,A000
MovR1,4000
0804:
ADDR0,R1
SUBR0,R1
ORR0,R1
ANDR0,R1
XORR0,R1
ADCR0,R1
SHLR0,R1
INCR0
RETR0
(3)用“G”,命令运行程序
在命令行提示符状态下输入:
>G800
执行上面输入的程序
(4)用“R”命令观察运行结果及状态
在命令行提示符状态下输入:
>R
观察运行结果及状态
屏幕将显示:
R0=8001R1=4000R2=0000R3=0000SP=0FD0PC=0800
R9=0000R10=0000…F=00011111
0800:
2C00A000MOVR0A000
(5)用“T”或“P”命令单步执行
在命令行提示符状态下输入
>T
或
>P
执行完后,观察运行结果及状态。
五.实验器材
(1)TEC-2机一台,电脑一台
(2)示波器一台
六.实验分析与设计
按照要求,得到数据如下表
1表3.7
功能
MI8~6
MI5~3
MI2~0
A口
B口
按压STEP前
按压STEP后
ALU输出
SVZC
ALU输出
SVZC
R1+R0→R0
011
000
001
0001
0000
E000
0000
2000
1000
R0+0→R0
011
000
011
XXXX
0000
E000
1000
E000
1000
R0-R1→R0
011
001
001
0001
0000
A000
1000
6000
1000
R0+0→R0
011
000
011
XXXX
0000
A000
1000
A000
1000
R0∨R1→R0
011
011
001
0001
0000
E000
1000
E000
1000
R0+0→R0
011
000
011
XXXX
0000
E000
1000
E000
1000
R0∧R1→R0
011
100
001
0001
0000
4000
1000
4000
0000
R0+0→R0
011
000
011
XXXX
0000
4000
0000
4000
0000
R0⊕R1→R0
011
110
001
0001
0000
0000
0000
4000
0010
R0+0→R0
011
000
011
XXXX
0000
0000
0010
0000
0010
R0+R1+C→R0
011
000
001
0001
0000
4000
0010
8000
0000
R0+0→R0
011
000
011
XXXX
0000
4000
0000
4000
0000
R0*2→R0
111
000
011
XXXX
0000
4000
0000
8000
0000
R0+0→R0
011
000
011
XXXX
0000
8000
0000
8000
1000
R0+1→R0
011
000
011
XXXX
0000
8001
1000
8010
1000
R0+0→R0
011
000
011
XXXX
0000
8001
1000
8001
1000
2SCi的设置:
R0+R1+C→R0,SCi=10;R0+1→R0,SCi=01其余SCi=00
七.思考题
(1)在脱机方式下进行运算器实验时,在按STEP键之前和按STEP之后,ALU的输出结果及状态有何不同?
为什么?
根据Am2901运算器的组成结构及其工作原理加以说明。
答:
由于存在AB锁存器,控制信号如下图,按压step是通过脉冲信号,将总线的数据保存到B所指定的寄存器中,同时将ALU产生的SVZC标志信号送出给接收端。
ALU是逻辑电路,不需要脉冲信号即可工作。
所以可知,在按压step之前,ALU输出就已经为本次预期的运算结果,而标志信号则仍为上次运算产生的标志信号(尚未更新),按压step之后,ALU输出为本次运算结果再与A所指定的寄存器中的值进行进行相同元算产生的值。
如R0+R1—>R0,可知A为R1,B为R0,step之前,ALU输出为Value1=R0+R1,标志位不变,step之后ALU输出为Value2=R0+R1+R1,标志位为Value1对应的状态。
电路图
图3.3Am2901的时钟信号的作用
(2)写出实现以下功能操作的微码:
(按下表形式写)
A.(R10+R0)Q–>R0Q,联合左移
B.D-B->其中D为数据,B为B寄存器。
C.0->R0,要求不要用立即数传送方式。
功能操作
MI876
MI543
MI210
A口地址
B口地址
A.(R10+R0)Q→R0Q
联合左移
011
000
111
0000
0000
110
000
001
1010
0000
功能操作
MI876
MI543
MI210
A口地址
B口地址
B.D–B→B
0+D->R0
011
000
111
0000
0000
0+B->R1
011
000
111
0000
0001
R0-R1->R1
011
010
001
0000
0001
B->Q
000
000
011
XXXX
B
D-Q->B
011
010
110
XXXX
B
C.0→R0
R0⊕R0->R0
011
110
001
0000
0000
R0-R0->R0
011
001
001
0000
0000
八.实验心得
感觉此次试验是TEC-2的入门实验,虽然本身不是很难。
但需要掌握的前期预备知识还是很多的,尤其是Am2901的9个控制信号,SVZC原理,脱机实验时对应电路开关的信号问题,书本跨越了第1-32页的内容,怪不得老师花了一上午才将其全部讲完。
老实说,在刚开始,很多不明白,如SVZC各个信号代表的内容状态,A,B补码相加结果分析,A,B与R0,R1对应关系的确定,MI8~6,MI5~3,MI2~0值的分析,尤其是后来思考题第二题,不确定第
种方法是否正确,因为涉及到了图3.3脉冲信号的控制,后来在跟着老师看27页实例时,才稍微明白一些。
另外还有一些不是很懂,如Q寄存器的作用及使用,移位器的使用,虽然知道控制信号该如何如设置,但其工作原理还不是很了解,看来还需向同学请教一番。
同时发现实验前预习还真是好处多多,以后要继续加油才行。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- TEC2 实验 计算机 运算器