二、 设计思路
本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JAM(无条件转移)。其中IN为单字长,其余为双字长指令。
为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。
存储器读操作(KRD):拨动总清开关CLR后,控制台开关SWB、SWA为“00”时,按START微动开关,可对RAM连续手动操作。
存储器写操作(KWE):拨动总清开关CLR后,控制台开关SWB、SWA为“01”时,按START微动开关,可对RAM连续手动写入。
启动程序:拨动总清开关CLR后,控制台开关SWB、SWA为“11”时,按START微动开关,即可转入01号“取址”微指令,启动程序运行。
程序运行中,当拟定取址微指令时,该微指令的判别测试字段为p(1)测试。由于取址微指令是所有微程序都使用的公共微指令,因此平(1)的测试结果出现多路分支。本实验用指令寄存器的前四位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。
控制台操作为p(4)测试,它以控制台开关SWB、SWA作为测试条件,出现3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其他地方就可以一条微指令占用一个微地址单元随意填写。注意:实验中的单元地址为8进制。
表1—1、微指令格式
24 23 22 21 20 19 18 17 16 15 14 13 S3 S2 S1 S0 M Cn WE A9 A8 A 12 11 10 B 9 8 7 C 6 μ5 μ4 μ3 μ2 μ1 μA5 A4 A3 A2 A1 A0
表1—2、A字段
12 表1—3、B字段 11 10 0 1 0 1 0 1 0 选择 RS-B RD-B RI-B 299-B ALU-B PC-B
9 表1—4、C字段 8 7 0 1 0 1 0 1 0 选择 P(1) P(2) P(3) P(4) AR LDPC 15 14 0 0 0 0 0 1 0 1 1 0 1 0 1 1 13 0 1 0 1 0 1 0 选择 LDRi LDDR1 LDDR2 LDIR LOAD LDAR 0 0 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 0 1 1 1 0 0 1 1 0 0 1 第- 3 -页
数据通路框图如下
图1— 1线路连通框图
第- 4 -页
三、 具体实现
1、
程序流程图
图1— 2程序流程图
第- 5 -页
图1— 3程序流程图
2、 实验步骤
(1)按图连接实验线路。 (2)写程序
方法一:手动写入
1、 先将机器指令对应的伪代码写入2816中。
2、 使用控制台KWE和KRD微程序进行机器指令程序的装入和检查。 A. 使编程开关处于“RUN”,STEP为“STEP”状态,STOP为“RUN”状态。
B. 拨动总清开关CLR(0→1),微地址寄存器清零。然后使控
第- 6 -页
制台SWB,SWA开关置为“0 1”。安东一次启动开关START,微地址显示灯显示“010001”,再按动一次START,微地址灯显示“010100”,此时数据开关的内容置为要写入的机器指令,按动一次START键,即完成该条指令的写入。若仔细阅读KWE的流程,就不难发现,机器指令的首地址只要一次给入即可,PC会自动加1,所以,每次按动START,只要在微地址灯显示“010100”时,才可设置内容,直到所有经机器指令写完。
C. 写完机器指令后需进行检验。拨动总清开关CLR(0→1)后,微地址清零,PC程序计数器清零,然后使控制台开关SWB、SWA为“0 0”,按动START,微地址灯将显示“010000”,再按START,微地址灯显示为“010010”,第三次按动START,微地址灯显示“010111”,此时总线单元的显示灯显示为该首地址的内容。不断按动START,可检查后续单元内容,注意:每次仅在微地址灯显示为“010111”时,显示灯的内容才是相应地址中机器指令的内容。 方法二:联机读/写程序
按照规定格式,将机器指令及微指令二进制表编辑成十六进制的文件,用联机软件的传送文件功能(F4)将该文件传入实验系统即可。 (3)运行程序
1、单步运行程序
A.使编程开关处于“RUN”状态,STEP为“STEP”状态,STOP为“RUN”状态。
B.拨动总清开关CLR(0→拨动总清开关CLR(0→1),微地址清零,PC计数器清零,程序首地址为00H。
C.单步运行一条微指令,每按动一次START键,即单步运行一条指令。
D.运行结束,检查存储数单元中的结果,并与理论值对比。 2、连续运行程序 A.使“STATE UNIT”中的STEP开关置为“EXEC”状态,STOP开关置为“RUN”状态。
B.拨动CLR开关,清微地址及PC计数器,按动START,系统连续运行程序,稍后将STOP拨至“STOP”时,系统停机。 C.停机后,检查存数单元。
第- 7 -页