实验八
简单模型计算机实验
一、 实验目的
1) 通过实验分析简单模型机结构,了解计算机的工作原理。 2) 掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程
二、 实验原理
基本整机模型数据框图如图所示,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。
数据的通路从程序计数器PC的地址送到主存的地址寄存器,根据地址寄存器的内容找到相应的存储单元。
存储器中的数据是指令时,那么数据是从RAM送到总线,再从总线送到IR中。
存储器中的数据是需要加工的数据时,那么数据是从RAM送到总线,再动总线送到通用寄存器中等待加工。
数据加工过程中,两个数据是从总线上将数据分别分时压入两个暂存器中,等待运算部件的加工,在数据加工完成以后。运算结果是通过三太门送到总线上。
三态门的控制时由微控制器来控制。
图:模型机的数据通路图
地址总线ALU-GARS3S2S1S0LDARALUPC-GMEMLED-GT4LDDR1DR1T4LDDR2PCDR2LOADLDPCCEWEWEOUT数据总线R0-GLDR0R0WET1T2时序微控制器INIRLDIRSW-G
三、 实验过程
1. 连线
按实验逻辑原理图连接以下控制信号。
1) 时钟单元(CLOCK UNIT)的T1-T4接到微程序控制单元(MAIN CONTROL UNIT)
1
的T1-T4.
2) 手动控制开关单元(MANUAL UNIT)的KA ,KB接到指令单元(INS UNIT)
的KA,KB。
3) 指令单元(INS UNIT)的J(1)-J(5)、SE6-SE0、B-IR 接到的微程序控制单
元(MAIN CONTROL UNIT)的J(1)-J(5)、SE6-SE0、B-IR。
4) 输入/输出单元(INPUT/OUTPUT UNIT)IO-W,IO-R接到微程序控制单元(MAIN
CONTROL UNIT)的IO-W,IO-R,Ai接到地址单元(ADDRESS UNIT)的A0. 5) 主存储器单元(MEM UNIT)M-W、M-R接到微程序控制单元(MAIN CONTROL
UNIT)的M-W、M-R,A7-A0 接到地址单元(ADDRESS UNIT)的A7-A0. 6) 地址单元(ADDRESS UNIT)的B-AR、B-PC、PC+1、PC-B接到微程序控制单元
(MAIN CONTROLUNIT)的B-AR、B-PC、PC+1、PC-B. 7) 通用寄存器单元(REG UNIT)的B-R、R0-B 接到微程序控制单元(MAIN
CONTROL UNIT)的B-DR、DR-B。
8) 把算术逻辑单元(ALU UNIT)的B-DA1、B-A2、ALU-B、Cycn、CyNCn、S3-S0、
M、Ci接到微程序控制单元(MAIN CONTROL UNIT)的B-DA1、B-A2、ALU-B、Cycn、CyNCn、S3-S0、M、Ci。 2. 写入、检验微代码
这项操作与实验七的操作过程相同 3. 装入机器指令汇编程序操作
1) 微程序控制单元(MAIN CONTROL UNIT)编程开关置于“RUN”状态。 2) 手动控制开关单元(MANUAL UNIT)的“STEP/RUN”开关置于“STEP”状态。 3) 手动控制开关单元(MANUAL UNIT)的KA,KB开关置于1、0写主存储器状
态。 4) 拨动
开关从11—0—1,产生一个负脉冲,清零程序计数器PC、微地址
寄存器。
5) 拨动“START”按钮一次,从微程序控制存储器的00H微地址开始执行微指
令,暂停在0AH微地址处。
6) 此时在输入数据开关上拨入实验用机器指令汇编程序表中对应00H地址的
2
指令码C0H,接着第二次按动“START”按钮,暂停在0FH微地址处;第三次按动“START”按钮,暂停在1CH微地址处;第四次按动“START”按钮,暂停在1DH微地址处,此时机器指令汇编的第一个字节已写入存储器,程序计数器PC已加1为01H;第四次按动“START”按钮,暂停在0AH微地址处,开始写机器指令汇编程序第二个字节。
7) 第六次至九次按动“START”按钮与第二次至五次按动“START”按钮的作用
类似,当微地址为0AH时,在输入数据开关上拨入下一个机器指令汇编程序字节,程序计数器PC不断加1,反复操作第(6)步直至全部机器码送入主存器为止。
4. 检查机器指令汇编程序
1) 微程序控制单元(MAIN CONTROL UNIT)编程开关置于“RUN”状态。 2) 手动控制开关单元(MANUAL UNIT)的“STRP/RUN”开关置于“STEP”状态。 3) 手动控制开关单元(MANUAL UNIT)的KA、KB开关置于0、1写主存储器状
态。
4) 拨动开关从1-0-1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。 5) 按动“START”按钮一次,从微程序控制存储器00H微地址开始执行微指令,
暂停在09H微指令处。
6) 第二次按动“START”按钮,暂停在0CH微地址处,此时程序计数器PC加1
为01H,指示的是下一次读主存储器的地址,当前读主存储器的地址为00H;接着第三次按动“START”按钮,暂停在09H微地址处;第四次按动“START”按钮,暂停在0EH微地址处。第五次按动“START”按钮,暂停在09H微地址处,此时输出显示灯上显示主存储器00H单元中的数据。
7) 第六至九次按动“START”按钮的作用与第二至五次按动“START”按钮的作
用类似,在0CH微地址处,程序计数器PC加1,在09H微地址处显示主存储器相对应单元中的数据,反复操作第(6)步直至全部机器码读出检查完为止。
8) 如果主存储器中数据与表2-26中数据不符,则回到第三步装入机器指令汇编
程序的操作过程,重新向主存储器写入正确数据。 5. 单步运行机器指令汇编程序
3
1) 微程序控制单元(MAIN CONTROL UNIT)编程开关置于“RUN”状态。 2) 手动控制开关单元(MANUAL UNIT)的“STRP/RUN”开关置于“STEP”状态。 3) 手动控制开关单元(MANUAL UNIT)的KA、KB开关置于1、1或0、0运行
机器码状态。
4) 拨动开关从1-0-1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。 5) 按动“START”按钮一次,从微程序控制存储器的00H微地址开始执行微指
令,暂停在08H或0BH微地址处;第二次按动“START”按钮,暂停在01H微地址处,开始执行机器指令的公共操作。
6) 第三次按动“START”按钮,暂停在02H微地址处;第四次按动“START”按
钮,暂停在03H微地址处;接着第五次按动“START”按钮,暂停在10H微地址处,准备各条机器指令的散转。
7) 接下来微地址随着主存储器中机器指令汇编程序指令的不同而作不同的变
化,实验者可根据表2-26和表2-15中的内容观察各部件的动作变化。 6. 连续运行机器指令汇编程序
1) 微程序控制单元编程开关置于“RUN”状态。
2) 手动控制开关单元的“STEP/RUN”开关置于“RUN”状态。
3) 手动控制开关单元的KA、KB开关置于1、1或0、0运行机器码状态。 4) 拨动
开关从1-0-1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。
5) 按动“START”按钮一次,模型计算机将自动执行表2-26中的机器指令汇编
程序,程序功能是对输入数据开关上的数据进行连续加操作,若在输入数据开关上拨01H,则进行连续加“1”操作;若拨03H,则进行连续加“3”操作。
四、 微指令运行步骤
机器指令写入 控制台指令 机器指令读出
机器指令执行 4