计算机组成原理实验报告微程序控制器实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三微程序控制器实验
一. 实验目的与要求:
实验目的:
1.理解时序产生器的原理,了解时钟和时序信号的波形;
2.掌握微程序控制器的功能,组成知识;
3.掌握微指令格式和各字段功能;
4.掌握微程序的编制,写入,观察微程序的运行,学习基本指令的执行流程。
实验要求:
1.实验前,要求做好实验预习,并复习已经学过的控制信号的作用;
2.按练习一要求完成测量波形的操作,画出TS1,TS2,TS3,TS4的波形,并测出所用的脉冲
Ф周期。按练习二的要求输入微指令的二进制代码表,并单步运行五条机器指令。二. 实验方案:
按实验图在实验仪上接好线后,仔细检查无误后可接通电源。
1.练习一:用联机软件的逻辑示波器观测时序信号,测量Ф,TS1,TS2,TS3,TS4信号的方法如下:
(1) TATE UNIT 中STOP开关置为“RUN”状态(向上拨),STEP开关置为“EXEC”状态(向上拨)。
(2) 将SWITCH UNIT 中右下角CLR开关置为“1”(向上拨)。
(3) 按动“START”按钮,即可产生连续脉冲。
(4)调试”菜单下的“显示逻辑示波器窗口,即可出现测量波形的画面。
(5)探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的Ф插座,即可测出时钟Ф的波形。
(6)探头一端接实验仪左上角的CH2,另一端接STATE UNIT中的TS1插座,即可测出TS1的波形;
(7)探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的TS2插座,即可测出TS2的波形。
(8)将红色探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的TS3插座,即可测出TS3的波形。
(9)将红色探头一端接实验仪左上角的CH1,另一端接STATE UNIT中的TS4插座,即可测出TS4的波形。
2.观察微程序控制器的工作原理:
①关掉实验仪电源,拔掉前面测时序信号的接线;
②编程写入E2PROM 2816
A.将编程开关(MJ20)置为PROM(编程)状态;
B.将实验板上STATE UNIT 中的STEP置为STEP状态,STOP置为RUN状态,SWITCH UNIT
中CLR开关置为1状态;
C.在右上角的SWITCH UNIT中UA5-UA0开关上置表3.2中某个要写的微地址;
D.在MK24-MK1开关上置表3.2中要写的微地址后面的24位微代码,24位开关对应
24位显示灯,开关置为1时灯亮,为0时灯灭;
E.启动时序电路,即将微代码写入到E2PROM 2816的相应地址对应的单元中;
F.重复C-E步骤,将表3.2的每一行写入E2PROM 2816。
③校验
A.将编程开关置为READ(校验)状态;
B.保持STEP,STOP,CLR开关状态不变,将实验板上STATE UNIT 中的STEP置为STEP状态,
STOP置为RUN状态,SWITCH UNIT中CLR开关置为1状态;
C.在开关UA5-UA0上按表3.2置好要读的某个微地址;
D.按动START键,启动时序电路,就能读出微代码,观察显示灯MD24-MD1的状态,检查
读出的微代码是否与已经写入的相同,若不同,将开关置于PROM编程状态,重新执行;
E.重复C-D步骤,将表3.2的每一行从E2PROM 2816读出来。
练习二:步运行五条机器指令。
1、将编程开关置于“RUN”状态;
2、实验仪的“STEP”及”STOP”开关保持原状,即STEP置为“STEP”状态,STOP置
为”RUN”状态,“SWITCH UNIT”中CLR开关置为1状态;
3、实验仪的“SW-BUS”置为0,左下方开关D5-D0置为“111111”,D7和D6开关任意,
(置0或者1都可以)
4、将清零开关CLR从高拔到低,再从低拔到高,即将开关CLR置1→0→1,可以发现后
续微地址UA5-UA0灯变为000000,000000是微指令运行启始地址;
5、接着按动一下“START”键,UA5-UA0灯会变为010000,这是在读00(八进制)条微
指令,给出了下一条要读的微指令是10(八进制);
6、在UA5-UA0灯变为010000时,可通过实验仪左下方开关D7-D0人为强置设置分支地址,
将D5-D0置“111111”→“111100”→“111111”,可以发现UA5-UA0灯从010000变为010011,这表示下一个要读的微指令从010000修改为了010011;
7、在UA5-UA0灯为010011时,也就是23(八进制)时,对微程序流程图,按动一下“START”
键,UA5-UA0灯会变为000001,也就是01(八进制),表示读出了23条微指令,给出了下一条要读的是01条微指令;
8、在UA5-UA0灯为000001时,按动一下START键,UA5-UA0灯会变为000010,表示读出
了01条微指令,下一条要读出的是02条微指令;
9、接着按动一下STRATOR键,读出02条微指令时,UA5-UA0灯显示为001000时,在当
前条件下,可通过强置端SE1-SE6相接的D5-D0人为强置修改分支地址;
10、执行完每个指令的最后一条微指令后,都会回到01微指令,这样才表示执行完了
一条指令,同时也表示可以执行新的指令了;
11、按照上述方法,把所有分支都执行一遍。
三. 实验结果和数据处理:
测量并画出时钟和时序信号波形,比较它们的相互关系。
波形图:
CPU 周期
Φ
TS1
TS2
TS3
TS4
时钟Ф脉冲与TS1、TS2、TS3、TS4脉冲的波形,比较时钟Ф脉冲与TS1、TS2、TS3、TS4脉冲的相互关系:时钟Ф脉冲的一个CPU周期的时间,是TS1、TS2、TS3、TS4脉冲的时间之和,即节拍脉冲把一个CPU周期划分成几个较小的时间间隔。
四.实验结果分析:
分析ADD的每条微指令的指令格式和功能:
1)PC→AR;PC+1:①指令格式: