1、另外,当实验机连续运行时,如果“运行方式”开关置“单步”位置,也会使实验机停机。 微程序控制电路微程序控制器的组成如图2.6.2,其中控制存储器采用3片E2PROM 2816芯片,具有掉电保护功能,微命令寄存器18位,用两片8D触发器74LS273(U23、U24)和一片4D触发器74LS175(U27)组成。微地址寄存器6位,用三片正沿触发的双D触发器74LS74(U14U16)组成,它们带有清“0”端和预置端。在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻进行测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。
2、在该实验电路中设有一个编程开关,它具有三种状态:写入、读出、运行。当处于“写”状态时,学生根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“读”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。当处于“运行”状态时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。图中微地址寄存器输出端增加了一组三态门(U12),目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。 微指令格式微指令长共24位,其控制位顺序如下:表2.6.1 控制位顺序24232221201918171615 14 1312 11 109
3、8 7654321S3S2S1S0MCnWEB1B0ABCuA5uA4uA3uA2uA1uA0C字段B字段151413选择LDRiLDDR1LDDR2LDIRLOADLDAR121110RS-BRD-BRI-B299-BALU-BPC-B987P(1)P(2)P(3)P(4)ARLDPCA字段其中UA5 UA0为6位的后续微地址,A、B、C 三个译码字段,由三组译码控制电路译码产生各控制信号。C字段中的P(1)P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图2.6.3所示,图中I7I2为指令寄存器的
4、第72位输出,SE5SE1为微控器单元微地址锁存器的强置端输出。AR为算术运算是否影响进位及判零标志控制位,低电平有效。B字段中的RSB、RDB、RIB分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码,其原理如图2.6.4,图中I0I4为指令寄存器的第04位,LDRI为 打入工作寄存器信号的译码器使能控制位。三、 实验电路1、实验接连图 跳线器J20、J21连上短路片; 跳线器J16上SP连H23; UJ1连UJ2。2、实验原理图参见图2.6.1图2.6.4。图2.6.1 时序电路原理图图2.6.2 微程序控制电
5、路原理图图2.6.3 微程序控制电路C字段部分图2.6.4 微程序控制电路B字段部分四、 实验步骤根据机器指令画出对应的微程序流程图,如图2.6.5所示;根据微程序流程图设计微指令,并按微指令格式转换成二进制代码,如表2.6.2所示。表2.6.2 二进制微代码表微地址S3 S2 S1 S0 M CN WE B1 B0UA5UA0000 0 0 0 0 1 0 1 1 0 0 01 0 00 1 0 0 0 0011 1 00 0 0 0 1 0020 0 0 0 0 1 0 0 1 0 0 10 0 1 0 0 0030 0 0 1 0 0040 1 10 0 0 1 0 1050 1 00
6、0 0 1 1 0061 0 0 1 0 1 0 1 1 1 0 10 0 0 0 0 1070 0 1 1 0 1080 0 0 0 0 1 0 0 0 090 0 0 0 1 10 A0 0 0 1 1 10B0 0 1 1 1 00C0 1 0 1 1 00D0E0 0 1 1 1 10F0 1 0 1 0 1100 1 0 0 1 0110 1 0 1 0 0120 1 0 1 1 113140 1 1 0 0 0150 0 0 0 0 1 1 1 0 161 7180 0 0 0 0 1 1 0 1 0 1 0 0 0 1连接实验线路,仔细查线无误后接通电源。观测时序信号用双踪示波器
7、(或用PC示波器功能)观察方波信号源的输出。方法如下:将“运行控制”开关置为“运行”、“运行方式”开关置为“连续”。按动“启动运行”开关,从示波器上可观察到TS1(J20)、TS2(J21)、TS3(J22)、TS4(J23)各点的波形,比较它们的相互关系,画出其波形,并标注测量所得的脉冲宽度,如图2.6.6。 图2.6.5 微程序流程图图2.6.6 方波信号源的时序图进一步了解微程序控制器的工作原理 写微程序A. “编程开关”置为“写入”状态。B. “运行控制”开关置为“运行”,“运行方式”开关置为“单步”状态。C. 用二进制模拟开关UA0UA5置6位微地址,UA0UA5的电平由LK0LK5
8、显示,高电平亮,低电平灭。D. 用二进制模拟开关MK1MK24置24位微代码,24位微代码由LMD1LMD24显示灯显示,高电平亮,低电平灭。E. 按动“启动运行”开关,启动时序电路,即可将微代码写入到E2PROM 2816的相应地址单元中。F . 重复CE步骤,将表35的微代码全部写入E2PROM 2816中。 读微程序A. 将“编程开关”设置为“读”状态。C. 用二进制模拟开关UA0UA5置6位微地址。D. 按动“启动运行”开关,启动时序电路,读出微代码,观察显示灯LMD1LMD24的状态,检查读出的微代码是否与写入的相同,如果不同,则将“编程开关”置为“写入”状态。重新执行即可。 单步运
9、行A. “编程开关”置于“运行”状态。C. 系统总清,即“总清”开关拨01。使微地址寄存器U14U16清零,从而明确本机的运行入口微地址为000000(二进制)。D. 按动“启动运行”开关,启动时序电路,则每按动一次,读出一条微指令后停机,此时实验机上的微地址显示灯和微程序显示灯将显示所读出的一条指令。注意:在当前条件下,可将6芯排座“JSE1”和“UJ2”相连,可通过强置端SE1SE6人为设置微地址,从而改变下一条微指令的地址。设置方法如下:先将微地址开关置“1”,再将UJ1上的排线换插到“JSE1”,然后将某个或几个二进制开关置为“0”,相应的微地址位即被强置为“1”,从而改变下一条微指令
10、的地址。 连续运行A. 将“编程开关”置为“运行”状态。B. “运行控制”开关置为“运行”,“运行方式”开关置为“连续”状态。D. 按动“启动运行”开关,启动时序电路,则可连续读出微指令。六、思考题1、根据实验中所设计的微指令格式,指出哪几位是操作控制字段和顺序控制字段?微指令采用的是什么编码方式和什么后继地址形成方法?答:操作控制字段:s3,s2,s1,s0,m,Cn即19,20,21,22,23,24。顺序控制C字段,即7,8,9。 编码方式:直接编码。后继地址:指令的操作码和和位指令的下地址字段。2、 根据微程序流程图,写出这5条机器指令实现的功能。 答:IN(输入),ADD(二进制加法),STA(存数),OUT(输出),JMP(无条件转移)3、 分析加法指令的微程序。Ad(IR)-MAR,1-R Ad(CMDR)-CMAR M(MAR)-MDR (AC)+(MDR)-AC CMAR4、根据微指令格式设计一段减法指令SUB ADDR 的微程序,减法指令的功能是R0 ADDR R0减法微程序:019A65。
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2