(一)
微程序控制器实验
一.实验的目的和要求
实验目的:1、掌握时序生成器的原理和具体操作。
掌握微程序控制器的功能和组成知识。
3.掌握微程序的编制、写入和观察,学习基本指令的执行过程。
要求:做好实验预览,掌握进位控制计算器的原理。实验前,应认真准备,写实验步骤和具体分析内容,否则实验效率特别低,实验时间不能完成实验任务,即使基本正确,也很难理解重要的教学内容。
二.实验方案
1、连接实验线路,检查后接通电源。
2、编程:(1)编程开关(MJ20)置为PROM(编程)状态;
(2)将STATE UNIT中的STEP置为“STEP”状态,STOP置为“RUN”状态;
(3)在UA5-UA0开关上要写的微地址(八进制);
(4)在MK24-MK对应于开关上的微地址的24位微码,对应于24位显示灯的24位开关,开关量为1灯亮,为0灯灭;
(5)启动时序电路(按启动按钮)START),将微代码写入E2PROM2816相应地址对应单位;
(6)重复(3)~(5)步骤,将每个微指令写入E2PROM2816。
3、校准:(1)将编程开关放置为READ状态;
(2)将STEP开关置为“STEP”状态,STOP开关置为“RUN”状态;
(3)在开关UA5~UA0上置要读的微地址;
(4)按动START按钮,启动时序电路,观察显示灯MD24-MD1状态,检查读取的微代码是否写入相同。如果不同,则将开关放置在PROM编程状态,重新执行编程步骤;
(5)重复(3)(4)步骤将每一条微指令从E2PROM2816中读出。
4、单步操作:(1)将编程开关置于RUN”状态;
(2)STEP置为“STEP”状态,STOP置为“RUN”状态;
(3)“AW-BUS开关为0,二进制开关INPUT
DEVICE区域内的D5-D0全为1;
(4)操作CLR开关使信号系统1→0→1;
(5)按动“START,启动时间序列电路,每次按下启动键,读取微指令,读取某些指令时,强制转换后读取指令。同样,在执行所有分支之后。
三.实验结果和数据处理
根据实验方案选择JMP指示并按相关要求完成相关练习;从示波器的比较中观察TS1、TS2、TS3、TS4各点波形的相互关系如下
CPU 周期
Φ
TS1
TS2
TS3
TS4
四.分析试验结果
分析ADD每个微指的指令格式和功能:
ADD:为双字长指令。第一个字是操作码,第二个字是操作数地址,意思是R0寄存器的内容和内存以A为地址单元的数量相加,结果放置R0寄存器中。
ADD加法指令由11(PC→AR ,PC 1)、03(RAM→BUS, BUS→AR) 、04(RAM→BUS
,BUS→DR2) 、05(RO→DR1) 、06 ((DR1) (DR2)→RO)由8条微指令组成。
11微指令功能是RAM赋给BUS,BUS赋给DR2; S3 S2 S1 S0 M CN
以万万万为代表的自加1运算;A110字段代表选择LDAR操作,B选择字段110PC-B操作;UA5-UA000011代表下一个指令的地址是011。
03微指令功能是RAM赋给BUS,BUS赋给DR2; S3 S2 S1 S0 M CN
以万万万为代表的自加1运算;A110字段代表选择LDAR操作,B字段000是无选择操作;UA5-UA000100代表下一个指令的地址是100。
04微指令功能是RAM赋给BUS,BUS赋给DR2; S3 S2 S1 S0 M CN
以万万万为代表的自加1运算;A011字段代表选择LDDR2操作,B字段000是无选择操作;UA5-UA000101代表下一个指令的地址是101。
05微指令功能是RO赋给DR1; S3 S2 S1 S0 M CN
以万万万为代表的自加1运算;A010字段代表选择LDDR1操作,B字段001的选择RS-B操作;UA5-UA000110代表下一个指令的地址是110。
06微指令功能是DR1 DR2的和赋给R0; S3 S2 S1 S0 M CN
以100101为代表的加法操作值;A001字段代表选择LDDRi操作,B选择字段101PC-B操作;UA5-UA下一个指令的地址是01,代表0中万万万万一。
以下是二进制代码表:
微地址
S3 S2 S1 S0 M CN WE A9 A8
A
B
C
UA5-UA0
03
000000001
110
000
000
0 0 0 1 0 0
04
000000001
011
000
000
0 0 0 1 0 1
05
000000011
010
001
000
0 0 0 1 1 0
06
100101011
001
101
000
0 0 0 0 0 1
11
000000011
110
110
110
0 0 0 0 1 1
五.写下你掌握的控制信号的作用
A、B、C多个控制信号分别通过3:8译码器翻译三个译码字段。A主要是寄存器的输入信号,B寄存器的输出信号主要在字段中,C字段中,主要是测试信号。
C字段中的AR对于算术操作是否影响进位和判零标志控制位,为0有效。LOAD是PC加1信号,P(1)-P(4)它是四个测试识别信号,其功能是根据机器指令和相应的微代码进行翻译,使微程序输入相应的微地址入口,从而实现微程序的顺序、分支和坏运行。
B字段中的RS-B、RD-B、RI-B原寄存器选择输出信号,目的寄存器选择输出信号,变址寄存器选择输出信号,其功能是根据机器指令进行三个工作寄存器R0、R1及R选择通输出译码。
A字段中LDRi存储工作寄存器信号的译码器可以控制位置,其功能是根据机器指令执行三个工作寄存器R0、R1及R选择存储译码。
六.结论
这个实验相对困难,但我仔细听了老师的解释,根据预览信息,通过与学生的讨论和沟通,或快速掌握相关操作,掌握程序的编制和写入,学习指令的执行过程。
七.实验总结
实验难度大,实验量大,所以首先要做好预习工作,否则很难按时完成实验。实验分为两部分,前、观察微程序运行、学习基本指令执行过程两部分。在这个过程中,难点是掌握如何通过强制端设置分支地址。后半部分就是用联机软件的逻辑示波器观察时序信号。这个比较简单,连接好,操作快。
问题:
1、实验设计了多少个指令?
答:共11条。分别是。IN(输入),ADD(二进制加法),STA(存数),OUT(输出),JMP(无条件转移).
2、S3、S2、S1、S0、M、CN控制信号的共同作用是什么?
答:S3 S2 S1 S0 M CN 控制信号在选择算术逻辑操作中起着共同的作用。
3、写出WE信号的作用。
答:WE信号的作用是写命令。
4、UA5-UA0是当前微地址还是后继微地址?
答:UA5-UA0是后继微地址。
八思考题
答题框:
(1)A
(2)C
(3)
(4)A
(5)A
(6)B
(7)C
(8)B
(9)A
(10)A
(11)B
(12)C