计算机组成原理

上传人:Sc****h 文档编号:130590534 上传时间:2022-08-05 格式:DOC 页数:40 大小:3.53MB
收藏 版权申诉 举报 下载
计算机组成原理_第1页
第1页 / 共40页
计算机组成原理_第2页
第2页 / 共40页
计算机组成原理_第3页
第3页 / 共40页
资源描述:

《计算机组成原理》由会员分享,可在线阅读,更多相关《计算机组成原理(40页珍藏版)》请在装配图网上搜索。

1、计算机组成原理实验指导书齐鲁理工学院目录实验一 算术逻辑运算实验- 2 -实验二 进位控制实验- 5 -实验三 移位运算实验- 7 -实验四 存储器实验- 9 -实验五 总线控制实验- 12 -实验六 微程序控制器的组成与微程序设计实验- 14 -实验七 基本模型机实验- 20 -实验八 复杂模型机实验- 27 -实验一 算术逻辑运算实验一、实验目的:1、掌握简单运算器的组成以及数据传送通路。2、验证运算功能发生器(74LS181)的组合功能。二、实验内容:1、用算术逻辑运算器进行算术逻辑运算。三、实验仪器:1、计算机组成原理教学实验箱 一台2、排线 若干四、实验原理:实验中所用的运算器数据通

2、路如图1-1所示。其中运算器由两片74LS181以并/串形式构成8位字长的ALU。运算器的两个数据输入端分别由两个锁存器(74LS273)锁存,锁存器的输入连至数据总线,数据输入开关(INPUT)用来给出参与运算的数据,并经过一三态门(74LS245)和数据总线相连。运算器的输出经过一个三态门(74LS245)和数据总线相连。数据显示灯已和数据总线(“DATA BUS”)相连,用来显示数据总线内容。图1 运算器数据通路图图1-2中已将实验需要连接的控制信号用箭头标明(其他实验相同,不再说明)。其中除T4为脉冲信号,其它均为电平控制信号。实验电路中的控制时序信号均已内部连至相应时序信号引出端,进

3、行实验时,还需将S3、S2、S1、S0、Cn、M、LDDR1、LDDR2、ALU_G、SW_G各电平控制信号与“SWITCH”单元中的二进制数据开关进行跳线连接,其中ALU_G、SW_G为低电平有效,LDDR1、LDDR2为高电平有效。按动微动开关PULSE,即可获得实验所需的单脉冲。五、实验步骤及注意事项:l、按图1-2连接实验线路,仔细检查无误后,接通电源。(图中箭头表示需要接线的地方,接总线和控制信号时要注意高低位一 一对应,可用彩排线的颜色来进行区分)图2 算术逻辑运算实验接线图2、用INPUT UNIT的二进制数据开关向寄存器DR1和DR2置数,数据开关的内容可以用与开关对应的指示灯

4、来观察,灯亮表示开关量为“1”,灯灭表示开关量为“0”。以向DR1中置入11000001(C1H)和向DR2中置入01000011(43H)为例,具体操作步骤如下:首先使各个控制电平的初始状态为:CLR=1,LDDR1=0,LDDR2=0,ALU_G=1,SW_G=1,S3 S2 S1 S0 M CN=111111,并将CONTROL UNIT的开关SP05打在“NORM”状态,然后按下图所示步骤进行。 上面方括号中的控制电平变化要按照从上到下的顺序来进行,其中T4的正脉冲是通过按动一次CONTROL UNIT的触动开关PULSE来产生的。置数完成以后,检验DR1和DR2中存的数是否正确,具体

5、操作为:关闭数据输入三态门(SW_G=1),打开ALU输出三态门(ALU_G=0),使ALU单元的输出结果进入总线。当设置S3、S2、S1、S0、M、CN的状态为111111时,DATA BUS单元的指示灯显示DR1中的数;而设置成101011时,DATA BUS单元的指示灯显示DR2中的数,然后将指示灯的显示值与输入的数据进行对比。3、验证74LS181的算术运算和逻辑运算功能(采用正逻辑)74LS181的功能见表1-1,可以通过改变S3 S2 S1 S0 M CN的组合来实现不同的功能,表中“A”和“B”分别表示参与运算的两个数,“+”表示逻辑或,“加”表示算术求和。表1 74LS181功

6、能表S3S2S1S0M=0(算术运算)M=1(逻辑运算)CN=1无进位CN=0有进位0000F=F=A加1F=0001F=F=()加1F=0010F=F=()加1F=0011F=0减1F=0F=0100F=加F=加加1F=0101F=()加F=()加加1F=0110F=减减1F=减F=0111F=减1F=F=1000F=加F=加加1F=1001F=加F=加加1F=1010F=()加F=()加加1F=1011F=减1F=F=1100F=加F=加加1F=11101F=()加F=()加加1F=1110F=()加F=()加加1F=1111F=减1F=F=通过前面的操作,我们已经向寄存器DR1写入C1H

7、,DR2写入43H,即A=C1H,B=43H。然后改变运算器的控制电平S3 S2 S1 S0 M CN的组合,观察运算器的输出,填入表1-2中,并和理论值进行比较、验证74LS181的功能。表2 运算器功能实验表DR1DR2S3S2S1S0M=0(算术运算)M=1(逻辑运算)CN=1无进位CN=0有进位C1430000F=F=F=C1430001F=F=F=C1430010F=F=F=C1430011F=F=F=C1430100F=F=F=C1430101F=F=F=C1430110F=F=F=C1430111F=F=F=六、实验报告: 1、在显示结果后将指示灯显示值与输入的数据进行比较; 2

8、、完成表2,比较理论分析值与实验结果值,并对结果进行分析。七、思考题:1、运算器的功能是什么?核心部分是什么?实验二 进位控制实验一、实验目的验证带进位控制的算术运算功能发生器的功能。二、实验内容:1、按给定的数据完成几种指定的算术运算。三、实验仪器:1、计算机组成原理教学实验箱 一台2、排线 若干四、实验原理:进位控制运算器的实验原理如图1-3所示,在实验1.1的基础上增加进位控制部分,其中74LS181的进位进入一个锁存器,其写入是由T4和AR信号控制,T4是脉冲信号,实验时将T4连至“SIGNAL UNIT”的TS4上。AR是电平控制信号(低电平有效),可用于实现带进位控制实验,而T4脉

9、冲是将本次运算的进位结果锁存到进位锁存器中。图l 进位控制实验原理图五、实验步骤及注意事项:1、1-4连接实验线路,仔细检查无误后,接通电源。(图中箭头表示需要接线的地方,接总线和控制信号时要注意高低位一一对应,可用彩排线的颜色来进行区分)2、进位标志清零。具体操作方法如下:实验板中“SWITCH”单元中的CLR开关为标志位CY、ZI的清零开关,它为0时(开关向上为1,向下为0)是清零状态,所以将此开关做l01操作,即可使标志位CY、ZI清零(清零后CY、ZI指示灯亮)。3、用INPUT UNIT的二进制数据开关向DR1存入11000001,向DR2存入01000011。具体操作步骤如下:各个

10、控制电平的初始状态为:CLR=1,LDDR1=0,LDDR2=0,ALU_G=1,AR=1,SW_G=1,S3 S2 S1 S0 M CN=111111,并将CONTROL UNIT的开关SP05打在“NORM”状态, SP06打在“RUN”状态,SP03打在“STEP”状态,SP04打在“RUN”状态。然后按下图所示步骤进行。首先使上面方括号中的控制电平变化要按照从上到下的顺序来进行,其中T4的正脉冲是通过按动一次CONTROL UNIT的触动开关START来产生的。图2 进位控制实验接线图4、验证带进位运算及进位锁存功能。进行带进位算术运算:前面的操作已经向DR1、DR2置数,然后关闭数据

11、输入三态门(SW_G=1)并使LDDR2=0,打开ALU输出三态门(ALU_G=0),使ALU单元的输出结果进入总线,当S3 S2 S1 S0 M CN的状态为100101时,DATA BUS指示灯显示的数据为DR1加DR2加当前进位标志得到的结果。这个结果是否产生进位,则要使AR=0,然后按动触动开关START,若进位标志灯CY仍然亮,表示无进位;若进位标志灯CY灭,表示有进位。六、实验报告:记录实验数据,并总结收获。七、思考题:1、74LS181能提高运算速度的原因是什么?2、在定点二进制运算器中,减法运算一般通过什么方式实现?实验三 移位运算实验一、实验目的:验证移位控制的功能。二、实验

12、内容:1、使用一片74LS299来实现移位控制。三、实验仪器:1、计算机组成原理教学实验箱 一台2、排线 若干四、实验原理:移位运算实验中使用了一片74LS299作为移位发生器,其八位输入/输出端以排针方式和总线单元连接。299_G信号控制其使能端,T4时序为其时钟脉冲,由S1 S0 M控制信号控制其功能状态,列表如下:表1-3 74LS299功能表299_GS1S0M功能000任意保持0100循环右移0101带进位循环右移0010循环左移0011带进位循环左移任意11任意装数五、实验步骤及注意事项1、按图1-5连接实验线路,仔细检查无误后接通电源。(图中箭头表示需要接线的地方,接总线和控制信

13、号时要注意高低位一一对应,可用彩排线的颜色来进行区分)图1-5 移位运算实验接线图2、按照如下步骤用INPUT UNIT的二进制数据开关把数据写入74LS299:首先使各个控制电平的初始状态为:299_G=1,SW_G=1,S1 S0 M =111,CLR= l01,并将控制台单元的开关SP05打在“NORM”状态,SP06打在“RUN”状态,SP03打在“STEP”状态,SP04打在“RUN”状态。然后按下图所示步骤进行。 上面方括号中的控制电平变化要按照从上到下的顺序来进行,其中T4的正脉冲是通过按动一次CONTROL UNIT的触动开关START来产生的。3、参照前面的表格1-3,改变S

14、0 S1 M 299_G的状态,按动触动开关START,观察移位结果。六、实验报告:参照前面的表格1-3,观察并记录移位结果。七、思考题:1、本实验用的移位发生器是什么?其功能表是什么?实验四 存储器实验一、实验目的:1、掌握静态随机存储器RAM工作特性。2、掌握静态随机存储器RAM的数据读写方法。二、实验内容:1、用静态随机存储器RAM进行单步读、写和连续写数据。三、实验仪器:1、计算机组成原理教学实验箱 一台2、排线 若干四、实验原理:实验所用的半导体静态存储器电路原理如图1-6所示,实验中的静态存储器由一片6116(2Kx8)构成,其数据线接至数据总线,地址由地址锁存器(74LS273)

15、给出。地址灯LI01LI08与地址总线相连,显示地址内容。INPUT单元的数据开关经一三态门(74LS245)连至数据总线,分时给出地址和数据。图1-6 存储器实验原理图地址总线为8位,接入6116的地址A7A0,将6116的高三位A8A10接地,所以其实际容量为256字节。6116有三个控制线:CE(片选线)、OE(读线)、/WE(写线)。本实验中将OE常接地,在此情况,当CE=0、WE=0时进行写操作,CE=0、WE=1时进行读操作,其写时间与T3脉冲宽度一致。实验时,将T3脉冲接至实验板上时序电路模块的TS3相应插针中,其它电平控制信号由“SWITCH”单元的二进制开关给出,其中SW_G

16、为低电平有效,LDAR为高电平有效。五、实验步骤及注意事项:1、形成时钟脉冲信号T3,具体接线方法和操作步骤如下:(1) 将SIGNAL UNIT中的CLOCK和CK,TS3和T3用排线相连。(2) 将SIGNAL UNIT中的两个二进制开关 “SP03”设置为“RUN”状态、“SP04”设置为“RUN”状态(当“SP03”开关设置为“RUN”状态、“SP04”开关设置为“RUN”状态时,每按动一次触动开关START,则T3的输出为连续的方波信号。当“SP03”开关设置为“STEP”状态、“SP04”开关设置为“RUN”状态时,每按动一次触动开关START,则T3输出一个单脉冲,其脉冲宽度与连

17、续方式相同。)2、按图1-7连接实验线路,仔细检查无误后接通电源。(图中箭头表示需要接线的地方,接总线和控制信号时要注意高低位一一对应,可用彩排线的颜色来进行区分)图1-7 存储器实验接线图3、给存储器的00、01、02、03、04地址单元中分别写入数据11、22、33、44、55,具体操作步骤如下:(以向00号单元写入11为例)首先使各个控制电平的初始状态为:SW_G=1,CE=1,WE=1,LDAR=0,CLR= l01,并将CONTROL UNIT的开关SP05打在“NORM”状态,然后按下图所示步骤进行。图中方括号中的控制电平变化要按照从上到下的顺序来进行,其中T3的正脉冲是通过按动一

18、次CONTROL UNIT的触动开关START来产生的,而WE的负脉冲则是通过让SWITCH单元的WE开关做l01变化来产生的。4、依次读出第00、01、02、03、04号单元中的内容,在DATA BUS单元的指示灯上进行显示,观察上述各单元中的内容是否与前面写入的一致。具体操作步骤如下:(以从00号单元读出11数据为例)其中AR的值在ADDR BUS单元的指示灯上显示,RAM相应单元的值在DATA BUS单元的指示灯上显示。六、实验报告:1、按实验内容进行单步读、写、连续写。着重写明各开关的状态,并按先后顺序写明操作步骤。 2、将存储器的地址和其对应的数据列表记录。七、思考题:1、静态存储器

19、是靠什么存储信息?动态存储器又是靠什么存储信息的?2、静态存储器和动态存储器的优缺点?实验五 总线控制实验一、实验目的:1、理解总线的概念及其特性。2、掌握总线传输控制特性。二、实验内容:1、改变输入寄存器的地址值,在输出单元的数码管上会显示出该地址下的存储器RAM的值。三、实验仪器:1、计算机组成原理教学实验箱 一台2、排线 若干四、实验原理:总线是多个系统部件之间进行数据传送的公共通路,是构成计算机系统的骨架。借助总线连接,计算机在系统各部件之间实现传送地址、数据和控制信息的操作。因此,所谓总线就是指能为多个功能部件服务的一组公用信息线。地址总线数据总线输入单元地址寄存器寄存器输出单元存储

20、器总线传输实验框图如图1-8所示,它将几种不同的设备挂至总线上,有存储器、输入设备、输出设备、寄存器。这些设备都需要有三态输出控制,按照传输要求恰当有序的控制它们,就可实现总线信息传输。图1-8 总线示意图五、实验步骤及注意事项:1、根据挂在总线上的几个基本部件,设计一个简单的流程:(1)输入设备将一个数写入地址寄存器。(2)输入设备将另一个数写入到存储器的当前地址单元中。(3)将存储器当前地址单元中的数用LED数码管显示。2、按照图1-9实验接线图进行连线,仔细检查无误后,接通电源。(图中箭头表示需要接线的地方,接总线和控制信号时要注意高低位一一对应,可用彩排线的颜色来进行区分) 图1-9总

21、线控制实验连线图3、具体操作步骤图示如下:首先使各个控制电平的初始状态为:SW_G=1,CE=1,WE=1,LDAR=0,299_G(LED_G)=1,PC_G(WE)=1,CLR= l01,并将CONTROL UNIT的开关SP05打在“NORM”状态,然后按下图所示步骤进行。图中方括号中的控制电平变化要按照从上到下的顺序来进行,其中LDAR的正脉冲是通过让SWITCH单元的LDAR开关做010变化来产生的,而WE和PC_G(WE)的负脉冲则是通过让SWITCH单元的WE和PC_G开关做101变化来产生的。 完成上述操作后,在OUTPUT UNIT的数码管上观察结果。六、实验报告: 1、改变

22、寄存器的地址值,列表记录存储器的RAM值。七、思考题:1、什么叫总线?总线控制的方式有哪些?实验六 微程序控制器的组成与微程序设计实验一、实验目的:1、掌握微程序控制器的组成原理。2、掌握微程序的编制、写入,观察微程序的运行。3、为整机实验打好基础。二、实验内容:1、编制微程序并观察其运行过程。三、实验仪器:1、计算机组成原理教学实验箱 一台2、排线 若干四、实验原理:1、微程序控制电路微程序控制器的组成见图1-13。其中控制存储器采用3片2816 E2PR0M,具有掉电保护功能。微命令寄存器18位,用两片8D触发器(74LS273)和一片4D(74LS175)触发器组成。微地址寄存器6位,用

23、三片上升沿触发的双D触发器(74LS74)组成,它们带有清“0”端和置“1”端。在不进行判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻进行判别测试时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器设置为“1”状态,完成地址修改。在该实验电路中,在CONTROL UNIT有一个编程开关SP06,它具有三种状态:WRITE(编程)、READ(校验)、RUN(运行)。当处于“编程状态”时,实验者可根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否

24、正确。当处于“运行状态”时,只要给出微程序的入口微地址,则可根据微程序流程图自动执行微程序。图中微地址寄存器输出端增加了一组三态门74LS245,目的是隔离触发器的输出,增加抗干扰能力,并用来驱动微地址显示灯。2、微指令格式:微指令字长24位,其控制位顺序如下:表1-4 微指令结构图微程序242322212019181716151413121110987654321控制信号S3S2S1S0MCNRDM17M16ABPuA5uA4uA3uA2uA1uA0A字段B字段P字段151413控制信号121110控制信号987控制信号000000000001LDRI001RS_G001P1010LDDR1

25、010RD_G010P2011LDDR2011RI_G011P3100LDIR100299_G100P4101LOAD101ALU_G101AR110LDAR110PC_G110LDPCM17M16控制信号00Y001Y110Y211Y3图1-13 微控制器实验原理图五、实验步骤及注意事项:1、图1-14为几条机器指令对应的参考微程序流程图,将全部微程序按微指令格式变成二进制代码,可得到表1-5的二进制代码表。表1-5 微程序时序控制实验二进制代码表微地址S3 S2 S1 S0 M CNRDM17M16 A B P uA5 uA4 uA3 uA2 uA1uA0 0 00000000110000

26、001000100000 10000000111101101100000100 20000000011000000010010000 30000000011100000000001000 40000000010110000000001010 50000000110100010000001100 61001010110011010000000010 70000000011100000000011011 00000000000010000000000011 10000000111101101100000111 20000000111101101100001111 30000000111101101

27、100011101 40000000111101101100101101 50000001010000010000000011 60000000011100000000011111 70000000010100000000101012 00000000111101101100100102 10000000111101101100101002 20000000010100000000101112 30000000110000000000000012 40000000000100000000110002 50000011100001010000000012 60000000011010001100

28、000012 70000011100001010000100003 0000001101000101000010001其中uA5一uA0为6位的后续微地址,A、B、P为三个译码字段,分别由三个控制位译码出多位。P字段中的Pl一P4是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行。AR为算术运算是否影响进位及判零标志控制位,其为零有效。B字段中的RS_G、RD_G、RI_G分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码。2、按图1-15连

29、接实验线路,仔细检查无误后接通电源。(图中箭头表示需要接线的地方,接控制信号时要注意各信号一一对应,可用彩排线的颜色来进行区分) 图1-14 微程序流程图图1-15 微控制器时序控制实验接线图3、观察微程序控制器的工作原理:(1)编程A、将CONTROL UNIT的编程开关SP06设置为WRITE(编程)状态。B、将实验板上“SIGNAL UNIT”中的“SP03”设置为“STEP”,“SP04”设置为“RUN”状态。SWITCH UNIT的开关CLR置为高电平。C、用SWITCH UNIT的二进制模拟开关设置微地址UA5UA0。D、在MICRO CONTROL单元的开关SM24SM01上设置

30、微代码,24位开关对应24位显示灯,开关量为“1”时灯亮,开关量为“0”时灯灭。E、启动时序电路(按动CONTROL UNIT 的“START” 触动开关),即将微代码写入到E2PR0M 28C16的相应地址对应的单元中。F、重复CE步骤,将表1-5的微代码写入28C16。(2)校验A、将CONTROL UNIT的编程开关SP06设置为READ(校验)状态。B、将实验板“SIGNAL UNIT”中的“SP03”开关设置为“STEP”状态,“SP04”开关设置为“RUN”状态。C、用SWITCH UNIT的二进制开关设置要检验的微地址UA5UA0。D、按动CONTROL UNIT的“START”

31、 触动开关,启动时序电路,读出微代码,观察MICRO CONTROL单元的显示灯LM24LM01的状态(灯亮为“1”,灭为“0”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于“WRITE”编程状态,重新执行(1)即可。(3)单步运行A、将CONTROL UNIT的编程开关SP06置于“RUN(运行)”状态。B、将实验板“SIGNAL UNIT”中的“SP03”开关设置为“STEP”状态,“SP04”开关设置为“RUN”状态。C、操作SWITCH UNIT的CLR开关,使CLR信号状态依次为101,将微地址寄存器74LS74(1)74LS74(3)清零,从而明确本机的运行入口微地址

32、为000000(二进制)。D、按动CONTROL UNIT 的“START”触动开关,启动时序电路,则每按动一次“START”键,读出一条微指令后停机,此时实验台上的微地址显示灯和微命令显示灯将显示所读出的一条指令。注:在当前条件下,将“MICRO CONTROL”单元的SE6SE1接至“SWITCH”中的UA5UA0对应二进制开关上,可通过强置端SE6SE1人为设置分支地址。首先将SE6SE1对应二进制开关设置为“1”,当需要人为设置分支地址时,将需要改变的某个或几个二进制开关设置“0”,相应的微地址位即被强置为“1”,从而改变下一条微指令的地址。(二进制开关设置为“0”,相应的微地址位将被

33、强置为“1”)六、实验报告:1、图示微指令格式;2、写出自己编写的微程序;3、记录实验过程,主要写遇到的问题及排除方法。五、思考题:1、比较微程序控制器和组合逻辑控制器各有什么优缺点?2、什么叫指令?什么叫微指令?二者有什么关系?实验七 基本模型机实验一、实验目的:1、在“微程序控制器的组成与微程序设计实验”的基础上,将第一部分中的各单元组成系统,构造一台基本模型计算机。2、本实验定义五条机器指令,编写相应的微程序,并上机调试运行,形成整机概念。二、实验内容:1、根据模型机的指令系统,编写相应的微程序,并上机调试运行,观察并记录结果。三、实验仪器:1、计算机组成原理教学实验箱 一台2、排线 若

34、干3、PC机 一台四、实验原理:在第一部分的单元实验中,所有的控制信号是人为用SWITCH单元产生的,但是在实际的CPU中,所有的控制信号都是由CPU自动产生的。所以在本次实验中我们用微程序来控制,自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一段微程序。本实验设计了五条机器指令,其指令格式如下:助记符机器指令码 说明IN00000000;输入,“INPUT”设备中的开关状态R0ADD addr00010000 XXXXXXXX ;二进制

35、加法,R0addrR0STA addr00100000 XXXXXXXX;存数,R0addrOUT addr00110000 XXXXXXXX;输出,addrBUSJMP addr 01000000 XXXXXXXX;无条件转移,addrPC机器指令码的前4位为操作码。其中IN为单字长,其余为双字长指令,XXXXXXXX为addr对应的二进制地址码。为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。存储器读操作(READ):拨动总清开关CLR后,控制台开关SWB、SWA为“00”时,按START微动开关,可对RAM连续手动读操作。存储器写操作(W

36、RITE):拨动总清开关CLR后,控制台开关SWB、SWA设置为“01”时,按START微动开关可对RAM进行连续手动写入。启动程序(RUN):拨动总清开关CLR后,控制台开关SWB、SWA设置为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。上述三条控制台指令用两个开关SWB、SWA的状态来设置,其定义如下:SWBSWA控制台命令00读内存(READ)01写内存(WRITE)11启动程序运行(RUN)根据以上要求设计数据通路框图,如图2-1。微代码定义如表2-1所示。图2-l 数据通路框图微程序24232221201918171615141312111098

37、7654321控制信号S3S2S1S0MCNRDM17M16ABPuA5uA4uA3uA2uA1uA0表2-1 基本模型机微指令结构图A字段B字段P字段151413控制信号121110控制信号987控制信号000000000001LDRI001RS_G001P1010LDDR1010010011LDDR2011011100LDIR100100P4101LOAD101ALU_G101110LDAR110PC_G110LDPC系统涉及到的微程序流程见图2-2,当拟定“取指令”微指令时,该微指令的判别测试字段为P1测试。由于“取指令”微指令是所有微程序都使用的公用微指令,因此P1的测试结果出现多路分

38、支。本机用指令寄存器的高4位(I7I4操作码)作为测试条件,出现5路分支,占用5个固定微地址单元。控制台操作为P4测试,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,剩下的其它地方就可以一条微指令占用一个微地址单元随意填写。当全部微程序设计完毕后,应将每条微指令代码化,表2-2即为将图2-2的微程序流程图按微指令格式转化而成的“二进制微代码表”。图2-2 微程序流程图表2-2 二进制代码微地址S3 S2 S1 S0 M CNRDM17M16 A B P uA5 uA4 uA3 uA2 uA1uA0 0 0000000011000000

39、1000100000 10000000111101101100000100 20000000011000000010010000 30000000011100000000001000 40000000010110000000001010 50000000110100010000001100 61001010110011010000000010 70000000011100000000011011 00000000000010000000000011 10000000111101101100000111 20000000111101101100001111 3000000011110110110

40、0011101 40000000111101101100101101 50000001010000010000000011 60000000011100000000011111 70000000010100000000101012 00000000111101101100100102 10000000111101101100101002 20000000010100000000101112 30000000110000000000000012 40000000000100000000110002 50000011100001010000000012 6000000001101000110000

41、0012 70000011100001010000100003 0000001101000101000010001本系统有两种外部I/O设备,一种是二进制数码开关,作为输入设备(INPUT);另一种是两位十六进制数LED数码管,作为输出设备(OUTPUT UNIT)。在输入时,二进制开关数据直接经过三态门送到总线上。只要开关状态不变,输入的信息也不变。输出时,将输出数据送到数据总线上,当写信号(WE)有效时,将数据打入输出锁存器,驱动数码块显示。五、实验步骤及注意事项:1、根据该模型机的指令系统,编写一段程序。这里给出两个参考程序。参考程序一:本程序从输入设备(数码开关)取入数据,保存在内存单

42、元08,然后从08单元送到输出设备(LED数码管)进行显示。每次循环过程中,可以使输入设备数据改变,考察输出显示的结果(请实验者考虑:如何修改程序,使程序只执行一次从输入设备取出数据,送出输出设备显示)。设计机器指令程序如下(机器码和地址为十六进制数据)。地址内 容助记符 说 明0000IN;输入开关数据R001 20 STA 08H;R0080208;地址0330 OUT 08H;08H BUS0408;地址0540JMP 00H;00HPC0600;跳转地址参考程序二:本程序从输入设备(数码开关)读入数据,与0A单元的数据相加,然后送到输出设备(LED数码管)进行显示。本程序不断地循环运行

43、,在运行中可改变输入开关(INPUT)的值,观察输出显示的变化。设计机器指令程序如下(机器码和地址为十六进制数据)。地 址 内 容助记符 说 明 0000IN;输入开关数据R0,采集数据01 10ADD 0AH;R00AHR0,输入数据与指定数据相加020A;地址03 20STA 0BH;R00B040B;地址0530OUT 0BH;0BH BUS,输出显示060B;地址0740JMP 00H;00HPC0800;跳转地址0A01;加数,可自定0B;求和结果保存在0B单元2、按图2-3连接实验线路(图中箭头表示需要接线的地方,接总线和控制信号时要注意高低位一一对应,可用彩排线的颜色来进行区分)

44、。3、写程序对于本实验箱可以用两种方法来写入程序。方法一:联机读/写程序按照规定格式,将机器指令及表2-2微指令二进制表编辑成十六进制的规定格式文件。微指令格式中的微指令代码为将表2-2中的24位微代码按从左到右分成3个8位,将此三个8位二进制代码化为相应的十六进制数即可。使用联机软件的文件装载将实验程序和微程序下载到实验箱中,并用软件的读出功能进行检查。其中参考程序一对应的文件名为“基本模型机1.TXT”,参考程序二对应的文件名为“基本模型机2.TXT”(联机软件的使用方法参看附录2)。方法二:手动写入(1)先将机器指令对应的微代码正确地写入28C16中,由于在实验1.7微程序控制器的组成与

45、微程序设计实验中已将微代码写入E2PR0M芯片中,对照表2-2校验正确后就可使用。(2)使用控制台WRITE和READ微程序进行机器指令程序的装入和检查,其操作如下:A、 使SIGNAL UNIT单元的SP03为“STEP”状态,SP04为“RUN”状态,CONTROLUNIT的开关SP05处于“NORM”状态,开关SP06处于“RUN” 状态。B、拨动开关单元的总清开关CLR(101),微地址寄存器清零,程序计数器清零。然后使开关单元的SWB、SWA开关设置为“01”,按动一次控制台单元的触动开关START,微地址显示灯显示“010001”,再按动一次START,微地址灯显示“010100”

46、,此时数据开关的内容(输入单元)置为要写入的机器指令的内容,按动两次START键后,即完成该条指令的写入。若仔细阅读WRITE的流程,就不难发现,机器指令的首地址总清后为零,以后每个循环PC会自动加1。所以,每次按动START,只有在微地址灯显示“010100”时,才设置内容,直到所有机器指令写完。C、校验。拨动SWITCH单元的总清开关CLR(101),微地址清零。PC程序计数器清零,然后使SWITCH单元的开关SWB、SWA为“00”,按动CONTROL UNIT的触动开关START,微地址灯将显示“010000”,再按START,微地址灯显示为“010010”,第三次按START,微地址

47、灯显示为“010111”,再按START后,此时OUTPUT单元的数码管显示为该首地址中的内容。不断按动START,以后每个循环PC会自动加1,可检查后续单元内容。每次在微地址灯显示为“010000”时,是将当前地址中的机器指令写入到输出设备中显示。图2-3 基本模型机实验接线图参考程序一的机器指令:$P0000 $P0120 $P0208$P0330 $P0408 $P0540$P0600参考程序二的机器指令:$P0000 $P0110 $P020A$P0320 $P040B $P0530$P060B $P0740 $P0800$P0A01微程序(以上两程序公用):$M00018110 $M

48、0101ED82 $M0200C048$M0300E004 $M0400B005 $M0501A206$M06959A01 $M0700E00D $M08001001$M0901ED83 $M0A01ED87 $M0B01ED8E$M0C01ED96 $M0D028201 $M0E00E00F$M0F00A015 $M1001ED92 $M1101ED94$M1200A017 $M13018001 $M14002018$M15070A01 $M1600D181 $M17070A10$M18068A114、运行程序方法一:联机运行程序首先使各个开关的状态为:SIGNAL UNIT中的SP03开关设置为“STEP”状态,SP04开关设置为“RUN”状态;CONTROL UNIT的开关SP05处于“NORM”状态, SP06处于“RUN” 状态;SWITCH单元的开关SWB、SWA为“11”。使SWITCH单元的总清开关CLR(101)清零后,程序首址为00H。通过联机软件进入调试界面(其操作方法参见附录2系统联机操作软件说明),可以通过调试程序的操作界面控制程序的运行,同时观察运行过程和结果。方法二:手动运行程序(1)单步运行程序A、使CONTROL UNIT的开关SP05处于“NORM”状态, SP06处于“RUN”状态,SIGNAL UNIT中的

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!