实验八简单模型计算机实验一、实验目的1)通过实验分析简单模型机结构,了解计算机的工作原理。2)掌握计算机微程序控制器的控制方法,掌握计算机指令执行过程二、实验原理基本整机模型数据框图如图所示,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。数据的通路从程序计数器PC的地址送到主存的地址寄存器,根据地址寄存器的内容找到相应的存储单元。存储器中的数据是指令时,那么数据是从RAM送到总线,再从总线送到IR中。存储器中的数据是需要加工的数据时,那么数据是从RAM送到总线,再动总线送到通用寄存器中等待加工。数据加工过程中,两个数据是从总线上将数据分别分时压入两个暂存器中,等待运算部件的加工,在数据加工完成以后。运算结果是通过三太门送到总线上。三态门的控制时由微控制器来控制。1图:模型机的数据通路图ALUS3S2S1MEMOUTINPCLDPCARLDARLOADALU-GLED-GSW-GDR1T4DR2T4PC-G时序微控制器IRLDIR地址总线数据总线T1T2WEWEWES0LDDR1LDDR2CER0R0-GLDR0三、实验过程1.连线按实验逻辑原理图连接以下控制信号。1)时钟单元(CLOCKUNIT)的T1-T4接到微程序控制单元(MAINCONTROLUNIT)2的T1-T4.2)手动控制开关单元(MANUALUNIT)的KA,KB接到指令单元(INSUNIT)的KA,KB。3)指令单元(INSUNIT)的J(1)-J(5)、SE6-SE0、B-IR接到的微程序控制单元(MAINCONTROLUNIT)的J(1)-J(5)、SE6-SE0、B-IR。4)输入/输出单元(INPUT/OUTPUTUNIT)IO-W,IO-R接到微程序控制单元(MAINCONTROLUNIT)的IO-W,IO-R,Ai接到地址单元(ADDRESSUNIT)的A0.5)主存储器单元(MEMUNIT)M-W、M-R接到微程序控制单元(MAINCONTROLUNIT)的M-W、M-R,A7-A0接到地址单元(ADDRESSUNIT)的A7-A0.6)地址单元(ADDRESSUNIT)的B-AR、B-PC、PC+1、PC-B接到微程序控制单元(MAINCONTROLUNIT)的B-AR、B-PC、PC+1、PC-B.7)通用寄存器单元(REGUNIT)的B-R、R0-B接到微程序控制单元(MAINCONTROLUNIT)的B-DR、DR-B。8)把算术逻辑单元(ALUUNIT)的B-DA1、B-A2、ALU-B、Cycn、CyNCn、S3-S0、M、Ci接到微程序控制单元(MAINCONTROLUNIT)的B-DA1、B-A2、ALU-B、Cycn、CyNCn、S3-S0、M、Ci。2.写入、检验微代码这项操作与实验七的操作过程相同3.装入机器指令汇编程序操作1)微程序控制单元(MAINCONTROLUNIT)编程开关置于“RUN”状态。2)手动控制开关单元(MANUALUNIT)的“STEP/RUN”开关置于“STEP”状态。3)手动控制开关单元(MANUALUNIT)的KA,KB开关置于1、0写主存储器状态。4)拨动开关从11—0—1,产生一个负脉冲,清零程序计数器PC、微地址寄存器。5)拨动“START”按钮一次,从微程序控制存储器的00H微地址开始执行微指令,暂停在0AH微地址处。6)此时在输入数据开关上拨入实验用机器指令汇编程序表中对应00H地址的3指令码C0H,接着第二次按动“START”按钮,暂停在0FH微地址处;第三次按动“START”按钮,暂停在1CH微地址处;第四次按动“START”按钮,暂停在1DH微地址处,此时机器指令汇编的第一个字节已写入存储器,程序计数器PC已加1为01H;第四次按动“START”按钮,暂停在0AH微地址处,开始写机器指令汇编程序第二个字节。7)第六次至九次按动“START”按钮与第二次至五次按动“START”按钮的作用类似,当微地址为0AH时,在输入数据开关上拨入下一个机器指令汇编程序字节,程序计数器PC不断加1,反复操作第(6)步直至全部机器码送入主存器为止。4.检查机器指令汇编程序1)微程序控制单元(MAINCONTROLUNIT)编程开关置于“RUN”状态。2)手动控制开关单元(MANUALUNIT)的“STRP/RUN”开关置于“STEP”状态。3)手动控制开关单元(MANUALUNIT)的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.单步运行机器指令汇编程序41)微程序控制单元(MAINCONTROLUNIT)编程开关置于“RUN”状态。2)手动控制开关单元(MANUALUNIT)的“STRP/RUN”开关置于“STEP”状态。3)手动控制开关单元(MANUALUNIT)的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”操作。四、微指令运行步骤机器指令写入控制台指令机器指令读出机器指令执行5取指译码机器指令执行执行访存写回6控制台操作(console)J(3)散转;00H-(08H)0BH-01H0-AR;0AH-0FHIN-DA1;0FH-1CHPC-AR;PC+1-PC1CH-1DHDA1-RAM;1DH-0AHPC-AR,PC+1-PC;09H-OCHRAM-DA1;0CH-0DH0-AR;ODH-0EHDA1-OUT;0EH-09H08H-01HKB=0,KB=0KB=1,KA=0KB=1,K1=1KB=0.KA=1KB=0,KA=0PC-AR,PC+1-PC;01H-02HRAM-IR;02H-03HJ(1)散转03H-(10H)RAM-AR;04H-05HIN-DR;05H-01HPC-AR,PC+1-PC;30H-04HPC-AR,PC+1-PC;31-06HRAM-AR;06H-07HRAM-DA2;07H-20HDR-DA1;20H-21HDA1+DA2-AR;/CYNCn=0;21H-01HPC-AR,PC+1-PC;32H-22HRAM-AR;22H-23HRAM-AR’23H-01HPC-AR,PC+1-PC;33H-24HRAM-AR;24H-25HRAM-DA1;25H-26HPC-AR,PC+1-PC;26H-27HRAM-AR;27H-28HDA1-OUT;28-01HPC-AR,PC+1-PC;34H-29HRAM-DA1;29H-2AHDA1-PC;2AH-01HSTAOUTJMPADDIN五、结果与总结1)记录实验过程中的情况和原始数据。72)参照算术加法指令的微程序操作过程,能否自己设计一条无借位算术减法指令的微程序操作代码,以扩充模拟计算机的功能。3)记录每条机器指令结束时的模拟模型计算机各指示灯上的信息,用16进制形式填入表2-27中,并说明这些信息的意义。4)结合上面的问题总结出总线的特性和使用方法,以及解决问题的方法和过程,把观察到的现象和对书本上原理的理解写入实验报告。表2-27实验八结果记录机器状态输入指示灯总线指示灯微地址指示灯微指令码指示灯输出指示灯指示灯信息含义初始状态01FF0001C00894将执行00地址中的指令01C008H控制台指令结束时01FF01DC400294执行完后地址跳转至01HIN结束时01010194输入01H中的数据ADD结束时01950194与输入数相加STA结束时01950194将结果送01HOUT结束时01950195将01H数据输出JMP结束时01000195跳转至00H六、附录实验箱介绍RS运算器寄存器报警输入/输出中断主存储器总线微程序控制器指令地址时钟手动控制开关实验仪基本组成框图1.简单模型计算机构架逻辑分析及监测(单片机)PC微机8简单模型计算机逻辑结构如图1所示,构成简单模型计算机的实验部件以总线为基本连接通道,主要有以下7个:1)算术逻辑运算部件ALUUNIT进行算术逻辑运算操作。2)存储器部件MEMUNIT,存储模型计算机汇编语言程序和操作数据。3)地址寄存器部件ADDRESSUNIT,包含两部分电路,地址寄存器AR:接收存储器程序中的指令地址和指令中的数据地址;指令地址计数器PC:用于指示程序中的指令地址并通过地址缓冲器送往地址寄存器AR。4)指令寄存器部件INSUNIT,寄存器当前正在执行的机器指令,此指令的指令码通过指令译码器向微程序控制器指示相应的微程序入口地址;此指令的地址码指示的操作数地址,送往地址寄存器AR。5)输入/输出部件INPUT/OUTPUT,操作数据的输入与输出显示。6)通用寄存器部件REGUNIT,暂存运算的中间数据。7)微程序控制器部件MAINCONTROLUNIT,控制各部件完成指令的功能。9图1-简单模型计算机逻辑结构图2.总线结构总线是多个系统部件之间进行数据传送的公共通路,是构成计算机系统的骨架。借助总线连接,计算机在系统各部件之间实现传送地址、数据和控制信息的操作。因此,所谓总线就是指能为多个功能部件服务的一组公用信息线。总线传输实验框图如下图所示,它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。这些设备都需要有三态输出控制,按照传输要求恰当有序的控制它们,就可实现总线信息传输。3.运算器ALU运算器ALU由一片ispLSI1024(U47)组成,在选择端S2、S1、S0控制下,对数据A和B进行加、减、与、直通、乘五种运算,功能如下:运算器功