计算机组成原理:控制器实验

实验名称: 4 控制器实验

实验目的

  1. 掌握微程序控制器的组成原理。
  2. 掌握微程序的编制、写入,观察微程序的运行过程。
  3. 基于数据通路图,掌握微程序控制器的工作原理。
  4. 基于微程序流程图,掌握微程序控制器的工作原理。
  5. 基于信号时序图,掌握微程序控制器的工作原理。
  6. 掌握一个简单CPU的组成原理。
  7. 在掌握部件单元电路的基础上,进一步将其构造一台基本模型计算机。

实验设备

PC机一台,TDX-CMX实验系统一套。

注意:编辑报告时,文字和图片不能在同一行。保存报告时请检查格式。

实验预习

一、4.1预习题

1、阅读实验指导书,然后回答问题。

(1) 微指令字长共 24 位,控制位顺序如表 4-1-1:

其中 MA5…MA0 为 6 位的(微地址),A、B、C 为三个(译码字段),分别由三个控制位译码出多位。C 字段中的 P<1>为(测试字位)。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的(微地址入口),从而实现完成对指令的识别,并实现微程序的分支。

(2)本实验安排了四条机器指令,分别为 ADD(0000 0000)、IN(00 10 0000)、 OUT(0011 0000)和 HLT(0101 0000)。括号中为各指令的二进制代码,指令格式如下,请补充说明部分。

助记符  机器指令码   说明

IN         0010 0000 (IN -> R0)

ADD     0000 0000 (R0 + R0 -> R0)

OUT     0011 0000 (R0 -> OUT)

HLT      0101 0000 (停机)


实验中机器指令由(CON单元的二进制开关)手动给出,其余单元的控制信号均由(微程序控制器)自动产生。

(4)将全部微程序按微指令格式变成二进制微代码,请对照表4-1-2,结合四条机器指令,回答问题。

写出连续执行四条机器指令(IN-ADD-OUT-HLT)程序的每条微指令的下地址执行顺序

000000→000001→(110000)→(000100)→(000101)

→000001→(110010)→000001→(110011)→000001→

(110101)

二、4.2预习题

  (1)实验4-2在4-1微程序控制器实验的基础上增加了三个部件,一是(PC),另一个是(AR),还有就是 (MEM),因而在微指令中应增加相应的控制位,其微指令格式如表4-2-1所示:

 

简述微指令与4-1中微指令控制位有哪些不同?

答:

A字段中增加了 LOAD LDAR控制位

B字段中增加了PC_B控制位

C字段中增加了LDPC控制位

  (2)设计一段机器程序,要求从 IN 单元读入一个数据,存于 R0,将 R0 和自身相加,结果存于R0,再将 R0 的值送 OUT 单元显示。

根据要求可以得到如下程序,地址和内容均为二进制数,补充程序说明

地 址              内 容           助记符               说明

00000000 00100000       START: IN R0 (从 IN 单元读入数据送 R0)

00000001 00000000        ADD R0,R0   (R0 和自身相加, 结果送 R0)

00000010 00110000        OUT R0         (R0 的值送 OUT单元显示)

00000011 11100000        JMP START   (跳转至 00H 地址)

00000100 00000000                              (地址)

00000101 01010000        HLT                (停机)

  (3)对照实验指导书二进制微代码表,结合上述机器程序(IN→ADD→OUT→JM P→HLT),写出执行机器程序时微指令下地址的变化情况(自行填写)

( 000000 -> 000001 -> {000011 -> 110010 ->000001 -> 000011 -> 110000 -> 000100- >000101

-> 000001 -> 000011 -> 110011 -> 000001-> 000011 -> 111100 -> 011101 -> 000001}->循环)

实验步骤

(一)本机运行

1、按照实验指导书的步骤完成操作,并在实验结果与分析中填写4.1程序运行过程表和4.2程序运行过程表。

  4.1表:通过IN单元输入的值为(23H),运行结束后,通过OUT单元输出的值为(46H)

  4.2表:通过IN单元输入的值为(23H),运行结束后,通过OUT单元输出的值为(46H)

(二)

  (1)观测数据通路图

打开 TDX-CMX 软件,在菜单上选择【实验】-【微控器实验】,打开本实验的数据通路图, 也可以通过工具栏上的下拉框打开数据通路图。

操作方法同本机运行,仔细观察每条机器指令的执行过程,体会后续微地址被强置转换的过程,这是计算机识别和执行指令的根基。

按本机运行的顺序给出数据和指令,观察最后的运算结果是否正确。

  (2)观测微程序流图

打开数据通路图后,点击“【调试】—【微程序流图】”,打开微程序流程图,操作方法同本机运行,跟踪显示每条机器指令的执行过程。

(三)观测信号时序图

点击打开选择观察信号窗口,或者选择联机软件的“【调试】—【时序观测窗】”,选择想要观察的信号,点击确定。

实验结果及分析

注意:以下两张表均存在设计缺失!

实验思考题

4.1 机器指令30H(即OUT指令)执行时,观察寄存器R0中的数据何时送入OU T单元?受哪些信号影响?

答:

在OUT指令的R0->OUT微指令中

T3 IOW R0_B信号

4.2 指导书给出的程序中,跳转到了START,即地址00,程序将循环执行前四条指令,那么能否实现停机操作?试通过改写程序代码完成停机(将机器指令列出即可,不需要实现)。

答:

不能停机

JMP地址改为 0000_0101 即停机的地址

00000011 11100000 ; JMP START 跳转至 05H 地址

00000100 00000101 ;

实验总结

了解了微程序控制器的组成原理。观察了微程序的运行过程。了解了微程序控制器的工作原理。

了解了微程序控制器的工作原理。了解了微程序控制器的工作原理

 

posted @ 2023-05-21 23:31  江水为竭  阅读(2974)  评论(0编辑  收藏  举报