当前位置:文档之家› 计算机组成原理实验报告4

计算机组成原理实验报告4

上海大学计算机学院
实验名称:指令系统实验
一、实验目的
1. 读出系统已有的指令,并理解其含义。

2. 设计并实现一条新指令。

二、实验原理
微程序和机器指令,实验箱的机器指令系统,实验箱机器指令系统的布线,实验箱机器指令系统的工作原理,实验箱PC的打入原理,程序存储器模式下的操作。

三、实验内容
1. 考察机器指令64的各微指令信号,确定该指令的功能。

(假设R0=77, A=11, 77单元存放56H数据,64指令的下一条指令为E8)
2. 修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT”操作。

3*. 修改机器指令F0,使其完成“A+R2的结果右移一位的值到OUT”的操作
四、实验步骤
实验任务一:
考察机器指令64的各微指令信号,确定该指令的功能。

实验步骤:
1.初始化系统(Reset),进入μEM,在Adr字段送入64,按NX键,可查看其对应的微指令:
64: FF 77 FF
65: D7 BF EF
66:FF FE 92
67:CB FF FF
2.分析其二进制代码,分析其控制功能
64: 1111 1111 0111 0111 1111 1111
从寄存器R?中取出地址打入地址寄存器MAR。

65: 1110 0111 1011 1111 1110 1111
把地址寄存器MAR的存储器值EM打入寄存器W。

66:1111 1111 1111 1110 1001 0010
把寄存器A和寄存器W中的数据进行或运算后打入寄存器A和标志位C,Z。

67:1100 1011 1111 1111 1111 1111
读出下一条指令并立即执行。

四条指令功能:把寄存器A和寄存器R?中地址内存的数据进行或运算,结果保存在寄存器A中,然后执行下一条指令。

实验任务二:
1.分解任务:修改机器指令E8,使其完成“输出A+W的结果左移一位后的值到OUT”操作的操作。

第一步完成A+W;并把“左移一位的值送OUT”;第二步完成取指令。

2.编制微指令:由“控制总线功能对应表”,可确定这四步基本操作的微指令码为:
① FFDFD8 ②CBFFFF ③FFFFFF ④FFFFFF
3.操作:程序存储器EM模式下,将E8指令送入A0单元,则在Adr下打入A0, DB下打入E8。

在微程序存储器μEM模式下,输入此指令对应的四条微指令,即在Adr 下打入E8,MH、MM、ML下打入FFDFD8;按NX键进入E9地址,打入CBFFFF,EA为FFFFFF,EB为FFFFFF。

在μpc模式下验证功能
赋初值:μpc (00) pc(A0) A(11) W(22)
按STEP观察微指令执行的过程。

可以看到OUT寄存器为66。

实验任务三:
1.分解任务:修改机器指令F0,使其完成“A+R2的结果右移一位的值到OUT”的操作。

先把R2的内容送到W,A+W,左移一位的值送到数据总线,数据总线的值打入送OUT寄存器。

2.微指令编码:
这个操作的微指令编码:c23~c0=1111 1111 1111 1000 0000 1111=FF FB 0F。

“A+W”运算对应的控制总线编码为:c2 c1 c0=000;
“左移一位的值送数据总线”对应的控制总线编码为:c7 c6 c5=101;
“数据总线值打入送OUT寄存器”对应的控制总线编码为:c13=0。

这个操作的微指令编码:c23~c0=1111 1111 1101 1111 1011 1001=FF DF B9 。

可确定这四步基本操作的微指令码为:
①FFFB0F ② FFDFB9 ③ CBFFFF ④FFFFFF
2、程序存储器EM模式下,将F0指令送入A0单元,则在Adr下打入A0, DB 下打入F0。

在微程序存储器μEM模式下,输入此指令对应的四条微指令,即在Adr 下打入F0,MH、MM、ML下打入FFFB0F;按NX键进入F1地址,打入FFDFB9,F2为CBFFFF,F3为FFFFFF。

在μpc模式下验证功能
赋初值:μpc (00) pc(A0) A(11) R0(77)
按STEP观察微指令执行的过程。

可以看到OUT寄存器为44。

五.实验现象
六.体会
本次实验是上次实验的衍生。

在上次的实验中我们学习了如何编译微指令,而在本次的实验中我们学到了将若干微指令进行了组合和综合使用,由此可以完成更加复杂多变的运算。

七.思考题
在微指令结构的计算机中,一条指令从启动到产生功能经过那些环节?
答:一条指令的执行是从PC开始,PC通过地址总线(ABUS)发送一个指令在程序存储器的地址到EM,EM把ABUS选定的存储单元的值(指令的二进制数形式)的高6位通过IBUS送μPC,低两位送SA和SB,μPC收到的6位值就是这条指令的微程序人口地址的高6位,μPC据此生成μEM的地址,并通过μPC 总线送到μEM,μEM把μPC值选定单元的24位值送上控制总线CBUS,完成第一条微
指令的功能;同时μPC 加1,输出这条指令的第二条微指令,直到执行一条“取指令”微指令,则PC加1。

开始执行下一条指令。

相关主题