微程序控制器的实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机科学与技术系
实验报告
专业名称计算机科学与技术
课程名称计算机组成与结构
项目名称微程序控制器实验
一、实验目的
1.掌握微程序控制器的组成原理;
2.掌握微程序的编制、写入、观察微程序的运行情况。
二、实验逻辑原理图与分析
2.1 实验逻辑原理图及分析
微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制硬件逻辑部件工作的微命令序列,以完成数据传输和各种处理操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器指令,这种微指令序列称为微程序。微程序存储在一种专用的存储器中,该存储器称为控制存储器,如图所示:
微程序控制器组成原理框图
控制器是严格按照系统时序来工作的,因而时序控制对于控制器的设计是非常重要的,从前面的实验可以很清楚地
了解时序电路的工作原理。本实验所用的时序单元来提供,分为四拍TS1、TS2、TS3、TS4。
在微程序控制器的组成中,控制器采用3片2816的
E^2PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(273)和一片4D(175)触发器组成。为地址寄存器6位,用三篇正沿触发的双D触发器(74)组成,他们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为吓一条微指令地址。当T4时刻惊醒测试判别式,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。
三、数据通路图及分析(画出数据通路图并作出分析)
本实验安排了四条机器指令,分别为ADD(00000000)、IN(00100000)、OUT(00110000)和HLT(01010000),括号中为各指令的二进制代码,指令格式如下:
助记符机器指令码说明
IN 0010 0000 IN->RO
ADD 0000 0000 RO+RO->R
O
OUT 0011 0000 RO->OUT
HLT 0101 0000 停机
试验中机器指令由CON单元的二进制开关手动给出,其余单元的控制信号均由微程序控制器自动产生,为此可以设计出相应的数据通路图,如下图所示:
数据通路图
几条机器指令对应的参考微程序流程图如下图所示。图中一个矩形方框表示一条微指令,方框中的内容为噶指令执
行的微操作,右上角的数字是该条指令的为地址,右下角的数字是该条指令的后续微地址,所有为地址均用16进制表示。向下的箭头之处了下一条要执行的指令。P<1>为测试字,根据条件使微程序产生分支。
微程序流程图
将全部微程序按微指令格式变为二进制代码,可得到表中的二进制代码表:
地
址
十六进
制
高五
位
S3—
S0
A字
段
B字段C字
段
MA5-M
A0
00 00 00
01
0000
0000 000 000 000 000001
01 00 70
70
0000
0000 111 000 001 110000
04 00 24
05
0000
0000 010 010 000 000101 05 04 B2 00001001 011 001 000 000001
01 0
30 00 14
04 0000
0000 001 010 000 000100
32 18 30
01 0000
0000 011 000 000 000001
33 28 04
01 0000
0000 000 010 000 000001
35 00 00
35 0000
0000 000 000 000 110101
四、实验数据和结果分析
4.1 实验结果数据和结果数据分析如图所示
当前为指令的地址是00,下一条微指令地址是01
当前指令地址是01H,数据是007070H,通过数据的后6位知道下条指令地址为30,此条指令表示为CON->IR中,写入机器指令码
写入机器指令码到IR中,机器指令码为00100000,实现IN->R0。当前指令地址是32H,下一地址是01H,实现了IN->R0
微指令实现R0->A,因为这条微指令已经实现,所以图中的当前指令地址为上一条指令的下一条地址,上一条微指令地址30H,当前微指令地址为04H
微指令实现R0->B,因为这条微指令已经实现,所以图中的当前指令地址为上一条指令的下一条地址,上一条微指令地址04H,当前微指令地址为05H
微指令实现A+B->R0,因为这条微指令已经实现,所以图中的当前指令地址为上一条指令的下一条地址,上一条微指令地址05H,当前微指令地址为01H
机器指令码为30H,R0->OUT,所以要跳到地址为30H
微指令实现R0->OUT,因为这条微指令已经实现,所以图中的当前指令地址为上一条指令的下一条地址,上一条微指令地址33H,当前微指令地址为01H
注:如果需要停机就输入01010000机器指令码
五、实验问题分析、思考题与小结
5.1实验问题分析
实验要完整无错误的进行,首先要确保实验接线图连线的正确性才能确保在进行实验时数据通路流向以及数据的的正确性,这样才能到达实验的目的;在进行实验过程中需要理解每一步骤的原因,也加强自己的理解性和掌握程度;实验前要理解实验原理,以便于提高实验效果速率。
5.2思考题
⑴当前微指令的微地址是多少?
答:
⑵当前微指令的下地址是多少?
答:
⑶当前微指令有几个微命令有效?
答:
⑷当前微指令实现了什么数据通路?
答:
⑸当前微指令实现了什么功能?
答
⑹当前微指令是哪条机器指令的微程序?
答:
⑺当前微指令是哪条机器指令的微程序,该机器指令有
几条微指令?