实验五 微程序控制器实验
一 实验目的
(1) 掌握时序产生器的组成原理。 (2) 掌握微程序控制器的组成原理。
(3) 掌握微程序的编制、写入,观察微程序的运行。 二 实验设备
TDN-CM++计算机组成原理教学实验系统一台,排线若干。
三 实验内容 1)原理
实验所用的时序控制电路框图如图9所示,可产生4个等间隔的时序信号TS1--TS4。 START TS1
φ TS2 STEP 时序控制电路 TS3 STOP
TS4
CLR
图9 时序电路框图
其中:φ为时钟信号,由实验台右上方的方波信号源提供,可产生频率及脉宽可调的方波信号。学生可根据实验自行选择方波信号的频率及脉宽。图中STEP(单步)、STOP(停机)分别是来自实验板上方中部的两个二进制开关STEP,STOP的模拟信号。START键是来自实验板上方左部的一个微动开关START的按键信号。当STEP开关为0时(EXEC),一旦按下启动键,时序信号TSI--TS4将周而复始地发送出去。当STEP为1(STEP)时,一旦按下启动键,机器便处于单步运行状态,即此时只发送一个CPU周期的时序信号就停机。利用单步方式,每次只读一条微指令,可以观察微指令的代码与当前微指令的执行结果。另外,当机器连续运行时,如果STOP开关置“1”(STOP),也会使机器停机,或使CLR开关拨至零也可以使时序清零。时序状态图17。
由于时序电路的内部线路已经连好,所以只需将时序电路与方波信号源连接,即将时序电路的时钟脉冲输入端φ接至方波信号发生器输出端H23,就可产生时序信号TS1--TS4。时序电路的CLR已接至实验板左下方的CLR模拟开关上。
2) 微程序控制电路与微指令格式 (A) 微程序控制电路
微程序控制器的组成见图10,其中控制存储器采用3片2816的E2PROM,具有掉电保护功能,微命令寄存器18位,用两片8D触发器(74273)和一片4D(74175)触发器组成。微地址寄存器6位,用三片正沿触发的双D触发器(7474)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。
在该实验电路中设有一个编程开关(位于实验板右上方),它具有三种状态:PROM (编程)、READ(校验)、RUN(运行)。当处于“编程状态”时,实验者可根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。当处于“运行状态”时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。图中微地址寄存器输出端增加了一组三态门,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。
1
图10 微程序控制器原理图
(B) 微指令格式
微指令字长共24位,其控制位顺序如图11所示。
2
图11 微指令格式
其中UA5--UA0为6位的后续微地址,A,B,C为三个译码字段,分别由三个控制位译码出多个微命令。C字段中的P(1)-- P (4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图12所示。图中I7一I2为指令寄存器的第7--2位输出,SE5--SE1为微程序控制器单
图12 地址转移逻辑电路
元微地址锁存器的强置端输出。AR
为算术运算是否影响进位及判零标志控制位,其为零有效。B字段中的RS-B,R0-B,RI-B分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0,R1及R2的选通译码,其原理如图13所示。图中,I0--I4为指令寄存器的第0—4为,LDRi为打入工作寄存器信号的译码器使能控制位。
Y0 G LDR0 LDRi 2:4 A Y1 I1 LDR1 B 译码器 I0 Y2 LDR2
Y0 G RD-B R0-B 2:4 A Y1 R1-B B 译码器 Y2
R2-B
G Y0 RS-B 2:4 Y1 A I3
B 译码器 I2 Y2 RI-B
图13 寄存器选通译码电路
3
四 实验步骤
(1) 图14为几条机器指令对应的参考微程序流程图,将全部微程序按指令格式变成二进制代码,可得到表3所示的二进制代码表。 运行微程序 01
八进制地址 PC→AR PC+1 02 RAM→BUS BUS→IR
10
P(1)
STA OUT ADD JMP IN
11 13 14 12 10
PC→AR PC→AR PC→AR PC→AR PC+1 PC+1 PC+1 PC+1 SW→R0 07 16 26 03 RAM→BUS RAM→BUS RAM→BUS 01 RAM→BUS BUS→AR BUS→AR BUS→AR BUS→PC 17 04 15 RAM→BUS 01 R0→BUS RAM→BUS BUS→DR1 BUS→RAM BUS-DR0 25 05 01 DR1→LED R0→DR1
01 (DR1)+(DR2)→R0
(a) 五条指令的微程序流程图 01 06
控制台
00 八进制地址
20
P(1)
KRD RP KWE
23 20 21 PC→AR PC→AR PC→AR PC+1 PC+1 PC+1 07 16 24 RAM→BUS 01 (SW)→BUS BUS→DR1 BUS→DR1 15 30 (b) 控制台微程序流程图 DR1→LED DR1→RAM 图14 微程序流程图
4

