当前位置:文档之家› 计算机组成原理实验3-微程序控制器实验

计算机组成原理实验3-微程序控制器实验

经济管理学院信息管理与信息系统专业班 __组学号姓名协作者教师评定_____________ 实验题目_ 微程序控制器实验_________________1.实验目的与要求:实验目的:1.理解时序产生器的原理,了解时钟和时序信号的波形;2.掌握微程序控制器的功能、组成知识;3掌握微指令格式和各字段功能;4.掌握微程序的编制、写入、观察微程序的运行,学习基本指令的执行流程。

实验要求:按练习一要求完成测量波形的操作,画出TS1、TS2、TS3、TS4的波形,并测出所有的脉冲Φ的周期。

按练习二的要求输入微指令的二进制代码表,并单步运行五条机器指令。

2.实验方案:1.用联机软件的逻辑示波器观测时序信号:测量Φ、TS1、TS2、TS3、TS4信号的方法:(1)按图接线,接一根即可;(2)把探笔的探头端按颜色分别插到试验仪左上角的CH1、CH2,黑探头插CH1,红探头插CH2,将黑探笔的探头插在Φ接线的上孔,将红探笔的探针夹在TS1两针之间;(3)将实验仪的STOP开关置为RUN、STEP开关置为EXEC,“SWITCH UNIT”中CLR开关置为1状态,按动START按键;(4)启动“组成原理联机软件”,点击“调试”菜单下的“显示逻辑示波器窗口”,点击示波器开关,即可在屏幕上看到波形。

使用“步数”或“速度”调整波形,波形调整好后,不要用同步通道来稳定波形,应该单击示波器开关,这样整个波形都停下来;(5)鼠标停留在波形线上,会有时间提示,两者相减可以算出波形周期;(6)测完Φ和TS1后,接着测量TS1和TS2,把黑红探针分别夹在TS1两根针之间和TS2两根针之间,相互比较,可以测量TS1和TS2之间相位关系。

同理通过测量TS2、TS3可以测量出TS2和TS3之间相位关系,同理通过测量TS3、TS4可以测量出TS3和TS4之间相位关系。

2.观察微程序控制器的工作原理:(1)关掉实验仪电源,拔掉前面测时序信号的接线,按图连接实验电路,仔细检查无误后接通电源;(2)编程写入E2PROM 2816A.将编程开关(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.启动时序电路(按动启动按钮START),即将微代码写入到E2PROM 2816的相应地址对应的单元中;F.重复C-E步骤,将表3.2的每一行写入E2PROM 2816。

(3)校验A.将编程开关置为READ状态;B.保持STEP、STOP、CLR开关状态不变,即实验板的STEP开关置为“STEP”状态,STOP开关置为“RUN”状态,“SWITCH UNIT”中CLR开关置为1状态;C.在开关UA5-UA0上按表3.2置好要读的某个微地址;D.按动START键,启动时序电路,就能读出微代码,观察显示灯MD24-MD1的状态,检查读出的微代码是否与写入的相同。

如果不同,将开关置为PROM编程状态,重新执行;E.重复C-D步骤,将表3.2的每一行从E2PROM28 16中读出来。

单步运行五条机器指令:A.将编程开关置为“RUN”状态;B.将STEP置为“STEP”状态,STOP置为”RUN“状态,”SWITCHUNIT”中的CLR开关置为1状态;C.将“SW-BUS”开关置为“0”,左下方开关D5-D0置为“111111”,D6和D7开关任意;D.将清零开关CLR从高拔到低,再从低拔到高,即将开关CLR置为1——>0——>1,可发现后续微地址UA5-UA0灯变为000000,000000是微指令运行启始地址;E.按动“START”键,UA5-UA0灯变为010000,这是在读00条微指令,给出下一条要读的微指令是20。

以后每按动一次启动键“START”,都会读出后续微地址指定的一条微指令,微命令显示灯和微地址显示灯显示着正在所读出的微指令;F.在UA5-UA0灯变为010000时,可通过实验仪左下方开关D7-D0人为强置设置分支地址,将D5-D0置为“111111”——>“111100”——>“111111”,可发现UA5-UA0灯从010000变为010011,表示下一个要读的微指令从010000修改为了010011;G.在UA5-UA0灯为010011时,也就是23时,对照微程序流程图,按动一下“START”键,UA5-UA0灯会变成000001,也就是01,表示读出了23条微指令,给出了下一条要读的是01条微指令;H.在UA5-UA0灯为000001时,也就是01时,对照微程序流程图,按动一下“START”键,UA5-UA0灯会变成000010,也就是02,表示读出了01条微指令,下一步要的是02条微指令;I.按动“START”键,读出02条微指令时,UA5-UA0灯显示为001000时,在当前条件下,可通过强置端SE1-SE6相接的D5-D0人为强置修改分支地址;J.执行完每个指令的最后一条微指令后,都会回到01微指令,这样才表示执行完了一条指令,同时也表示可以执行新的指令了;K.按照上述方法,把所有分支执行一遍。

3.实验结果和数据处理:通过比较各波形的相互关系可得:脉冲Ф的周期是TS1,TS2,TS3,TS4各点的周期的1/4,而且在时间为T的条件下,TS1与TS2, TS2与TS3, TS3与TS4各自之间相差1/4周期。

4.实验结果分析:ADD加法指令为双字长指令,第一字为操作码,第二字为操作地址,其含义是将R寄存器的内容与内存中以A为地址单元的数相加,结果放R寄存器。

ADD加法指令由7条微指令组成,分别为:01、02、11、03、04、05、06。

以微指令06为例:微指令功能是DR1+DR2;06微指令S3 S2 S1 S0 M CN的值为“100101”代表算术运算A加B;A字段“001”起的作用是选择LDRi,B字段“101”起的作用是选择ALU-B;06微指令中UA5-UA0中“00000001”代表的含义是后继执行的微地址。

(其他指令的功能均按以上方式解读)5.写出你掌握了的控制信号的作用1. 时钟时序电路时序电路可产生4个等间隔的时序信号Tsi-TS4,其中Ф为钟信号,由实验台左上方的方波信号源提供,可产生频率及脉宽可调的方波信号。

可根据实验自行选择方波信号的频率及脉宽。

为了便于控制程序的运行,时序电路发生器也设置了一个启停控制触发器Cr,使TSl—TS4信号输出可控。

2.微程序控制电路微程序控制器的组成,本实验装置的微程序放在二片2816的E2PROM中,只有掉电保护功能,微命令寄存器为18位,由三片8D 触发器(273)和1片4D触发器(175)组成;微地址寄存器6位,用三片正沿触发的双D触发器(74)组成。

它们带有清“0”端和预置端。

在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。

当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某—触发器置为“1”状态,完成地址修改。

在该实验电路中设有一个编程开头(位于实验板右上方),它具有二种状态:PROM(编程)、READ(校验)、RUN(运行)。

当处于“编程状态”时,可根据微地址和微指令格将微指令二进制代码写入到控制存储器2816中。

当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以断写入的二进制代码是否正确。

当处于“运行状态”时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。

图中微地址寄存器输出端增加了一组三态门,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。

3.微指令格式一个完整的程序是由若干条指令语句组成的,一条指令义由若干条微指令组成,而每一条微指令义由若干微命令及下一条微地址信号组成。

其中UA5—UA0为6位的后续微地址,A、B、C三个译码字段,分别有二个控制位译码出多位。

C字段中的AR为算术运算是否影响进位及判零标控控制位,其为零有效。

P(1)-P(4)是四个测试字位,其功能是根据机器指令及相应微代码进行译码,使微程序输入相应的微地址入口,从而实现微程序的顺序、分支、循环运行, I7—I2为指令寄存器的第7—2位输出,SE5—SEl为微控器单元微地址锁存器的强置端输出。

B字段中的RS—B、R0-B、R1—B分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码, 10-14为指令寄存器的第0-4位,LDRi打入工作寄存器信号的泽码器位能控制位。

P(1)判别指令代码前四位(I7、I6、I5、I4);P(2)判别指令代码I2、I3位:P(3)判别是否有进位或值是否为零:P(4)判别控制台指令(SWA、SWB)。

LDRi与指令代码I0、I1译出LDR0、LDRI、LDR2;RD-B与指令代码Io、I1译出目的通用寄存器:RS—B与指令代码I2、I3译出源通用寄存器:RI-B控制R2-B输出。

6.结论通过实验,能按照如《计算机组成原理实验指导书》给出的步骤输入微指令的二进制代码表并单步运行五条机器指令,且能精确得出计算机组成原理中所推出的结果。

7.问题与讨论及实验总结问题与讨论:在练习二所要求的输入微指令的二进制代码表的五条机器指令时,没有将编程开关置为READ(校验)状态,致使在校验的时候,读出的微代码一直不变,后经过改正,实验得以完成。

实验总结:通过本次实验,我掌握了微程序的编制及写入,学习了基本指令的执行流程。

掌握了时序产生器的原理和具体操作,掌握了一些微程序控制器的功能和组成知识。

在实验过程中,我基本能按步骤完成实验,但因为控制信号繁多而未能熟练地进行操作,最终还是能勉强完成实验。

因此,做实验时一定要认真仔细,课前更应做好充分的预习工作。

8.思考选择题:(单选题)1、( A )2、( A )3、( A )4、( A )5、( B ) 6 、( C ) 7、( B ) 8、( A )9、( A ) 10、( B ) 11、( C )。

相关主题