计算机组成原理和组成结构_第1页
计算机组成原理和组成结构_第2页
计算机组成原理和组成结构_第3页
计算机组成原理和组成结构_第4页
计算机组成原理和组成结构_第5页
已阅读5页,还剩74页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机组成原理1一、实训目的1.了解运算器的组成结构。2.掌握运算器的工作原理。3.掌握简单运算器的数据传输方式。4.验证运算功能发生器(74LS181)及进位控制的组合功能。计算机组成原理2二、实训要求完成不带进位及带进位算术运算和逻辑运算训练,了解算术逻辑运算单元的运用。三、实训原理1.运算器的设计原理(1)使用基本的门电路构成1位全加器。(2)利用进位传递逻辑将其构成N位并行加法器。(3)利用多路选择逻辑实现多种输入输出组合选择,使加法器扩展为多功能的算术逻辑运算。计算机组成原理3(4)利用多路选择逻辑实现移位功能。(5)使用加法器与移位器组合构成乘法器和除法器。(6)使用两个(定点)运算器部件的组合则可构成一个浮点运算器。2.74LS181运算器

74LS181是一个四位ALU单元,它是由4个一位全加器以及进位电路构成。下面给出了正逻辑74LS181的逻辑图如图10-1所示,其功能表见表10-1。计算机组成原理4图10-1正逻辑74LS181的逻辑图计算机组成原理5S3S2S1S0M=0(算术运算)M=1(逻辑运算)Cn=1(无进位)Cn=0(有进位)0000F=AF=A+1F=A0001F=A|BF=(A|B)+1F=A|B0010F=A|BF=(A|B)+1F=AB0011F=0-1F=0F=00100F=A+ABF=A+AB+1F=AB0101F=AB+(A|B)F=AB+(A|B)+1F=B0110F=A-B-1F=A-BF=A⊕B0111F=AB-1F=ABF=AB1000F=A+ABF=A+AB+1F=A+B1001F=A+BF=A+B+1F=A⊕B1010F=AB+(A|B)F=AB+(A|B)+1F=B1011F=AB-1F=ABF=AB1100F=A+AF=A+A+1F=11101F=A+(A|B)F=A+(A|B)+1F=A+B1110F=A(A|B)F=A+(A+B)+1F=A+B1111F=A-1F=AF=A

表10-174LS181逻辑功能表(注意:“+”为算术加,“|”为逻辑或,“-”为算术减。)计算机组成原理6四、实训电路1.基本运算部件图10-2所示的是由两片74LS181芯片构成的8位字长的运算器。右方为低4位运算芯片,左方为高4位运算芯片。低位芯片的进位输出端Cn+4与高位芯片的进位输入端Cn相连,高位芯片的输出端Cn+4可连至进位锁存电路,以保存此进位。两个芯片的控制端S0~S3和M各自相连,其控制电平如表10-1。计算机组成原理7

为进行双操作数运算,运算器的两个数据输入端分别由两个数据暂存器DR1、DR2(74LS273实现)来锁存数据。要将内总线上的数据锁存到DR1或DR2中,则锁存器74LS273的控制端LDDR1或LDDR2须为高电平。当T4脉冲来到的时候,总线上的数据就被锁存进DR1或DR2中了。为了控制运算器向内总线上输出运算结果,在其输出端连接了一个三态门(74LS245实现)。若要将运算结果输出到总线上,则要将三态门74LS245的控制端ALU-B置低电平。计算机组成原理82.进位控制运算部件在图10-2的基础上增加进位控制部分,可设计出进位控制运算部件实训原理图如图10-3所示。其中181的进位进入一个74LS74锁存器,其写入是由T4和AR信号控制,T4是脉冲信号,实验时将T4连至“STATEUNIT”的微动开关KK2上。AR是电平控制信号(低电平有效),可用于实现带进位控制实验,而T4脉冲是将本次运算的进位结果锁存到进位锁存器中。计算机组成原理9(下面两个图中S0、S1、S2、S3只和两片181连接,不连245)

图10-2运算器实训原理图计算机组成原理10图10-3进位控制实训原理图计算机组成原理11五、实训步骤1.算术逻辑运算(1)实训说明实训电路如图10-2所示。其中运算器由两片74LS181构成8位字长的ALU。运算器的输出经过一个三态门(74LS245)到AUJ3插座,再通过连接排线连接到内总线上。运算器的两个数据输入端分别由两个锁存器(74LS373)锁存,锁存器的输入端已经连接到内总线上了。计算机组成原理12

数据输入单元用以给出参与运算的数据。其中输入开关经过一个三态门(74LS245)和内总线相连,该三态门的控制信号位SW-B,取低电平时,开关上的数据则通过三态门而送入内总线中。总线显示灯(在BUSUNIT单元中)已与内总线相连,用来显示内总线上的数据。控制信号中除T4为脉冲信号,其它信号均为电平信号。计算机组成原理13

由于实训电路中的时序信号均已连至“JTUNIT”单元中的相应时序信号引出端,因此,需要将“JTUNIT”单元中的T4接至“STATEUNIT”单元中的微动开关KK2的输出端。在进行实验时,按动微动开关,即可获得实验所需的单脉冲,如图10-4所示。

S3、S2、S1、S0、Cn、M、LDDR1、LDDR2、ALU-B,SW-B各电平控制信号则使用“SWTICHUNIT”单元中的二进制数据开关来模拟,其中Cn、ALU-B、SW-B为低电平有效,LDDR1、LDDR2为高电平有效。上述实训信号连接情况如图10-4所示。计算机组成原理14图10-4运算器实训接线图计算机组成原理15(2)操作步骤①按图10-4连接实训电路并检查无误后打开电源开关。图中将用户需要连接的信号线用小圆圈标明。②用输入开关向暂存器DR1置数,操作流程如图10-5所示。

a.拨动输入开关形成二进制数(或其它数值)。(数据显示灯亮为0,灭为1)。

b.使SWITCHUNIT单元中的开关SW-B=0(打开数据输入三态门)、ALU-B=1(关闭ALU输出三态门)、LDDR1=1(为打开DR1输入准备)、LDDR2=0(关闭DR2输入)。计算机组成原理16c.按动微动开关KK2(产生T4脉冲信号),与LDDR1信号一起,将二进制数置入DR1中。③输入开关向暂存器DR2置数,操作流程如图10-5所示。

a.拨动输入开关形成二进制数(或其它数值)。(数据显示灯亮为0,灭为1)。

b.使SWITCHUNIT单元中的开关SW-B=0(打开数据输入三态门)、ALU-B=1(关闭ALU输出三态门)、LDDR1=0(关闭DR1输入)、LDDR2=1(为打开DR2输入准备)。

计算机组成原理17c.按动微动开关KK2(产生T4脉冲信号),与LDDR2信号一起,将二进制数置入DR2中。④检查DR1和DR2中存在的数是否正确。

a.使SWITCHUNIT单元中的开关SW-B=1(关闭数据输入三态门)、ALU-B=0(关闭ALU输出三态门)、LDDR1=0(关闭DR1输入)、LDDR2=0(关闭DR2输入)。

b.置S3、S2、S1、S0、M为11111,总线显示灯则显示DR1中的数。

c.置S3、S2、S1、S0、M为10101,总线显示灯则显示DR2中的数。计算机组成原理18⑤改变运算器的功能设置,观察运算器的输出。

a.保持SW-B、ALU-B=0保持不变。

b.按表1.1置S3、S2、S1、S0、M、Cn的数值,并观察总线显示灯显示的结果。例如:置S3、S2、S1、S0、M、Cn为100101,运算器作加法运算置S3、S2、S1、S0、M、Cn为011000,运算器作减法运算。计算机组成原理19图10-5向DR1和DR2寄存器置数操作流程计算机组成原理202.进位控制运算(1)实训说明进位控制运算器的实训原理如图10-3所示,在算术逻辑运算实训的基础上增加进位控制部分,使ALU的进位进入到进位锁存器中。其写入是由T4和AR信号控制。T4为脉冲信号;AR是电平控制信号,低电平有效。当T4脉冲来到时,则将本次运算的进位结果锁存到进位锁存器中。计算机组成原理21图10-6进位控制实训接线(上图方格内竖线不需要)

计算机组成原理22(2)操作步骤①按图10-6连接实验电路并检查无误。②打开电源开关。③用输入开关向暂存器DR1和DR2置数。操作流程如图10-5所示。④关闭数据输入三态门(SW-B=1),打开ALU输出三态门(ALU-B=0),并使LDDR1=0、LDDR2=0,关闭寄存器。⑤对进位标志清零。置S3、S2、S1、S0、M的状态为00000,置AR的状态为0。(清零时DR1中的数不应等于FF)。按动微动开关KK2。注:进位标志指示灯CY亮时表示进位标志为“0”,无进位;标志指示灯CY灭时表示进位为“1”,有进位。计算机组成原理23⑥验证带进位运算及进位锁存功能。使Cn=1,AR=0,进行带进位算术运算。例如,进行加法运算,使ALU-B=0,S3S2S1S0M状态为10010,此时数据总线上显示的数据为DR1加DR2加当前进位标志,这个结果是否有进位产生,则要按动微动开关KK2,若进位标志灯亮,则无进位,反之则有进位。因为做加法运算时数据总线一直显示的数据为DR1+DR2+CY,所以当有进位输入到进位锁存器后,总线显示的数据为加上进位位的结果。思考:

在8位运算器的基础上,如何设计16位运算器?

计算机组成原理24六、练习

验证74LS181的算术运算和逻辑运算功能:在给定DR1=65H、DR2=A7H的情况下,改变运算器的功能设置,观察运算器的输出,填入下表中,并和理论分析进行比较、验证。计算机组成原理25DR1DR2S3S2S1S0M=0(算术运算)M=1(逻辑运算)CN=1(无进位)CN=0(有进位)65A70000F=()F=()F=()65A70001F=()F=()F=()65A70010F=()F=()F=()65A70011F=()F=()F=()65A70100F=()F=()F=()65A70101F=()F=()F=()65A70110F=()F=()F=()65A70111F=()F=()F=()65A71000F=()F=()F=()65A71001F=()F=()F=()65A71010F=()F=()F=()65A71011F=()F=()F=()65A71100F=()F=()F=()65A71101F=()F=()F=()65A71110F=()F=()F=()65A71111F=()F=()F=()计算机组成原理26实训二存储器1.熟悉存储器和总线组成的硬件电路。

2.掌握静态随机存储器RAM工作特性及数据的读写方法。一、实训目的计算机组成原理27

按照实训步骤完成实训项目,利用存储器和总线进行数据传输。二、实训要求三、实训原理

半导体存储芯片采用超大规模集成电路制造工艺,其结构如图10-7所示。计算机组成原理28图10-7半导体存储芯片结构

存储芯片通过地址总线、数据总线和控制总线与外部连接。地址线是单向输入,数据线是双向输入输出,数据线和地址的位数共同反映存储芯片的容量。例如:地址线为10根,数据线为8根,则芯片容量为210×8=4096=4KB。计算机组成原理29

控制线主要有读/写控制线WE与片选线CE两种。读/写控制线决定芯片进行读/写操作,片选线用来选择存储芯片(通常主存由多个存储芯片构成)。四、实训电路

所用的半导体静态存储器电路原理如图10-8所示。实训中的静态存储器由一片6116(2K×8)构成,其数据线接至数据总线,地址总线由地址锁存器(74LS273)给出,地址灯AD0~AD7与地址线相连,显示地址线内容。数据开关经一三态门(74LS245)连至数据总线,分时给出地址和数据。计算机组成原理30

因为地址寄存器为8位,接入6116的地址A7~A0,而高三位A8~A10接地,所以其实际容量为256字节。6116有三个控制线:CE(片选线)、OE(读线)、WE(写线)。当片选有效(CE=0)时,OE=0时进行读操作,WE=0时进行写操作。本实验中将OE常接地,在此种情况下,当CE=0、WE=0时进行读操作,CE=0、WE=1时进行写操作,其写时间与T3脉冲宽度一致。操作时将T3脉冲接至实验板上时序电路模块的TS3相应插孔中,其脉冲宽度可调,其它电平控制信号由“SWITCHUNIT”单元的二进制开关模拟,其中SW-B为低电平有效,LDAR为高电平有效。计算机组成原理31图10-8存储器实训电路图计算机组成原理321.形成时钟脉冲信号T3,其连线方法和操作步骤如下:(1)接通电源,用示波器接入方波信号源的输出插孔H24,调节电位器W1,使H24端输出实验所期望频率的方波。(2)时序电路模块中的ø和H23排针相连。(3)在时序电路模块中有两个二进制开关“STOP”和“STEP”。将“STOP”开关置为“RUN”状态、“STEP”开关置为“EXEC”状态时,按动微动开关“START”,则T3输出为连续的方波信号,此时调节电位器W1,用示波器观察,使T3输出实验要求的脉冲信号。当“STOP”开关置为“RUN”状态、“STEP”开关置为“STEP”状态时,每按动一次微动开关“START”,则T3输出一个单脉冲,其脉冲宽度与连续方式相同。五、实训步骤计算机组成原理33

2.按图10-9连接实验线路,仔细检查线路无误后接通电源。由于存储器模块内部的连线已经连接好,因此只需要完成实验电路的形成、控制信号模拟开关、时钟脉冲信号T3与外部存储模块的外部连接。计算机组成原理34图10-9实训接线图计算机组成原理353.给存储器的00、01、02、03、04地址单元中分别写入数据11、12、13、14、15,具体操作步骤如图10-10所示(以向0号单元写入数据11为例):图10-10写入数据流程图计算机组成原理36

依次读出第00、01、02、03、04号单元中的内容,观察上述各单元中的内容是否与前面写入的一致。具体操作步骤如图10-11所示(以向0号单元读出数据11为例):图10-11读出数据流程图思考:

假如计算机系统需要64KB容量的内存,存储电路该如何设计?计算机组成原理37

给存储器的11~1A地址单元中分别写入数据,并依次读出10个单元中的数据,观察数据灯,检测显示结果。

六、练习计算机组成原理38实训三微控制器实验1.掌握时序产生器的组成原理。2.掌握微程序控制器的组成原理。3.掌握微程序的编制、写入,观察微程序的运行。一、实训目的二、实训要求

按照实训步骤完成实训项目,熟悉微程序的编码、写入、观察运行状态。计算机组成原理39

微程序控制器的基本任务是完成当前指令的翻译和执行,即将当前指令的功能转换成可以控制的硬件逻辑部件工作的微命令序列,完成数据传送和各种控制操作。它的执行方法就是将控制各部件动作的微命令的集合进行编码,即将微命令的集合仿照机器指令一样,用数字代码的形式表示,这种表示称为微指令。这样就可以用一个微指令序列表示一条机器指令,这种指令序列称为微程序。微程序存储在一种专用的存储器中,称为控制存储器。微程序控制器原理框图如图10-12所示。三、实训原理计算机组成原理40图10-12微控器原理图计算机组成原理411.时序逻辑原理实训所用的时序控制电路框图如图10-13所示,可产生4个等间隔的时序信号TS1~TS4,其中ø为时钟信号,由方波信号源(SIGNALUNIT)单元提供,可产生频率及脉宽可调的方波信号。读者在练习中可根据实训需要自行选择方波信号的频率及脉宽。图中STEP和START由设计的时序控制单元(STATEUNIT)中的二进制开关STEP和START模拟产生。当STEP开关为0时,系统处于连续(EXEC)执行状态,此时按下START键后,时序信号TS1~TS4将周而复始地发送出去。当STEP为1(STEP)时,此时按下START键后,时序信号TS1~TS4只产生一个周期,机器便处于单步(STEP)运行状态,即此时只发送一个CPU周期的时序信号就停机。利用单步方式,每次只读取一条微指令,可以观察微指令的代码与当前微指令的执行结果。另外,当机器连续运行时,如果STEP开关置“1”,也会使机器停机,或使CLR开关拨至零也可以使时序清零。

四、实训电路计算机组成原理42

由于时序电路的内部线路已经连好,所以只需要将时序电路和方波信号源连接,即将时序电路的时钟输入端ø接至方波信号发生器输入端H23上,按动启动键START后,就可以产生时序信号TS1~TS4。时序电路的CLR已接至实验板左下方的CLR模拟开关上。图10-13时序控制电路框图计算机组成原理432.微程序控制实训电路实训微程序控制器的组成如图10-14所示,其中控制存储器可以采用3片2816的E2PROM构成;微命令寄存器18位,用两片8D触发器(273)和一片4D(175)触发器组成;微地址寄存器6位,用三片正沿触发的双D触发器(74)组成,它们带有清“0”端和预置端;在不判别测试的情况下,T2时刻打入微地址寄存器的内容即为下一条微指令地址。当T4时刻测试判别时,转移逻辑满足条件后输出的负脉冲通过强置端将某一触发器置为“1”状态,完成地址修改。计算机组成原理44

在该实训电路中可以设计具有三种状态的编程开关:PROM(编程)、READ(校验)、RUN(运行)。当处于“编程状态”时,读者可根据微地址和微指令格式将微指令二进制代码写入到控制存储器2816中。当处于“校验状态”时,可以对写入控制存储器中的二进制代码进行验证,从而可以判断写入的二进制代码是否正确。当处于“运行状态”时,只需要给出微程序的入口地址,则可根据微程序流程图自动执行微程序。计算机组成原理453.指令格式微指令字长共24位,其控制位顺序如下:242322212019181716151413121110987654321S3S2S1S0MCnWECELDPCABCµA5~µA0

ALU控制字段:S3、S2、S1、S0、M、Cn,它们的二进制组合用于控制ALU的工作模式,具体含义参见运算器实训中关于ALU的介绍。存储器读写控制字段:WE,用于控制存储器的读写控制,详细的介绍参见存储器实验。片选字段:CE,LDPC的组合将会对存储器、输入、输出设备进行片选。

A、B、C字段分别是3位二进制的组合,它们分别作为译码器的输入,然后输出各种控制信号,其含义将在基本模型机实训中做详细介绍,A、B、C字段输入与输出信号对应表见10-2,10-3,10-4所示。计算机组成原理46表10-2A字段输入与输出信号对应表151413选择000001LDRi010LDDR1011LDDR2100LDIR101LOAD110LDAR与图10-14中不一致,图中是LDR1,是否按表中?按表中

计算机组成原理47表10-3B字段输入与输出信号对应表121110选择000001RS-B010RD-B011RI-B100299-B101ALU-B110SW—B111PC-B计算机组成原理48表10-4C字段输入与输出信号对应表987选择000001P(1)010P(2)011P(3)100P(4)101AR110LDPC与图10-14中不一致,图中是PC(1),是否按表中?按表中

计算机组成原理49

微指令字长种UA5-UA0为6位的后续微地址,A、B、C为三个译码字段,分别由三个控制位译码出多位。C字段中的P(1)~P(4)是四个测试字位。其功能是根据机器指令及相应微代码进行译码,使微程序转入相应的微地址入口,从而实现微程序的顺序、分支、循环运行,其原理如图10-15所示,图中I7~I2为指令寄存器的第7~2位输出,SE5~SE1为微控制器单元微地址锁存器的输出端。AR为算术运算是否影响进位及判零标志控制位,其为零有效。B字段中的RS-B、R0-B、RI-B分别为源寄存器选通信号、目的寄存器选通信号及变址寄存器选通信号,其功能是根据机器指令来进行三个工作寄存器R0、R1及R2的选通译码,其原理如图10-16所示,图中I0~I4为指令寄存器的第0~4位,LDRi为打入工作寄存器信号的译码器使能控制位。计算机组成原理50

图10-14微控制器实训电路图计算机组成原理51图10-15微程序执行分支选择原理图计算机组成原理52图10-16寄存器控制原理图计算机组成原理531.实训说明图10-17为几条机器指令对应的参考微程序流程图,将全部微程序按微指令格式变成二进制代码,可得到表10-5的二进制代码表。五、实训步骤计算机组成原理542.观察时序信号用双踪示波器(或用PC示波器功能)观察方波信号源的输出,时序电路中的“STOP”开关置为“RUN”,“STEP”开关置为“EXEC”。按动START按键,从示波器上可观察到TS1、TS2、TS3、TS4各点的波形,比较它们的相互关系,画出其波形,并标注测量所得的脉冲宽度,见图10-18。计算机组成原理55图10-17微程序流程图计算机组成原理56图10-18时序信号图计算机组成原理57表10-5二进制代码表微地址S3S2S1S0MCNWECELDPCABCUA5---UA00000000001110111010001000001000000011110111000000010020000000001000000010010000300000000011000000000010004000000000011000000000101050000000100100010000001100610010101000110100000000107000000010110000000001101100000000110011100000000011100000001111011100000001112000000011110111000000111130000000111101110000011101400000001111011100001010115000000100000001000000001160000000001100000000011111700000000000000000000000125000000001101000000000001计算机组成原理583.操作步骤:(1)编程①将微程序控制器编程开关置为PROM(编程)状态。②将时序产生单元(STATEUNIT)中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。③用二进制模拟开关置微地址MA5—MA0。④在微程序编程开关MK23-MK0上置微代码,24位开关对应24位显示灯,开关量置为“0”时灯亮,开关量为“1”时灯灭。⑤启动时序电路(按动启动按钮“START”),即将微代码写入到2816的相应地址对应的单元中。⑥重复③~⑤步骤,将表10-2的微代码写入2816中。计算机组成原理59

(2)校验微指令①将微程序控制器编程开关置为READ(校验)状态。②将时序产生单元(STATEUNIT)中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。③用二进制模拟开关置微地址MA5—MA0。④启动时序电路(按动启动按钮“START”),读出微代码。观察显示灯MD23-MD0的状态(灯亮为“0”,灭为“1”),检查读出的微代码是否与写入的相同。如果不同,则将开关置于PROM编程状态,重新执行1)(编程)即可运行并观察结果。⑤运行的过程中着重观察微地址显示灯、微命令显示灯。运行的方式有单步和连续两种方式。计算机组成原理60

(3)单步运行①将微程序控制器编程开关置于“RUN(运行)”状态。②将时序产生单元(STATEUNIT)中的“STEP”置为“STEP”,“STOP”置为“RUN”状态。③拨动微地址清零CLR开关,将CLR的状态按1→0→1变化。从而将微地址寄存器MA5-MA0清零,微程序运行的入口微地址置为000000(二进制)。④连续按动“START”键,启动时序电路。每按动一次“START”键,将顺序读出一条微指令并执行后停机。此时,微地址显示灯显示的是下一条将要运行的微指令地址,微命令显示灯显示的是正读出并执行的微指令。计算机组成原理61

(4)连续运行:①将微程序控制器编程开关置于“RUN(运行)”状态。②将时序产生单元(STATEUNIT)中的“STEP”置为“EXEC”,“STOP”置为“RUN”状态。③拨动微地址清零CLR开关,将CLR的状态按1→0→1变化。从而将微地址寄存器MA5-MA0清零,微程序运行的入口微地址置为000000(二进制)。④按动“START”键一次,启动时序电路,控制器将自动的顺序读出每条微指令并执行,直到结束。此时,微地址显示灯显示的是下一条将要运行的微指令地址,微命令显示灯显示的是当前读出并执行的微指令。思考:观察图10-17微程序流程图,请总结设计微程序有那些规律?计算机组成原理62

写出下图中微地址为20、21、22、24四条微指令的二进制微代码。六、练习计算机组成原理63实训四基本模型机设计与实现1.掌握前面部件单元电路训练的基础上,进一步构造一台基本模型计算机。2.掌握微程序执顺序强制改变的原理3.掌握机器指令与微程序的对应关系。4.掌握机器指令的执行流程。5.掌握机器指令的微程序的编制、写入。一、实训目的计算机组成原理64

在常规微程序控制器训练的基础上,定义五条机器指令,并编写相应的微程序,设计一台微程序控制的指令级模型计算机,进一步认识、掌握整机概念。二、实训要求三、实训原理

在实训一至三部件实训过程中,各部件单元的控制信号是人为模拟产生的,如运算器实训中对74LS-181芯片的控制,存储器实训中对存储器芯片计算机组成原理65的控制信号。而本次训练主要是设计在微程序控制下自动产生各部件单元的控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一段微程序。

计算机组成原理661.模型机机器指令本实训采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移),其指令格式如下(前4位为操作码):助记符机器指令说明IN00000000“DATAUNIT”重的开关状态->R0ADDadd00010000XXXXXXXXR0+[addr]->R0STAaddr00100000XXXXXXXXR0->[addr]OUTaddr00110000XXXXXXXX[addr]->BUSJMPaddr01000000XXXXXXXXaddr->PC

其中IN为单字长(8位),其余为双字长指令,XXXXXXXX为addr对应的二进制地址码。计算机组成原理672.装入机器程序为了向RAM中装入程序和数据,检查写入是否正确,并能启动程序执行,还必须设计三个控制台操作微程序。存储器读操作(KRD):微地址清零CLR开关,控制台开关SWB、SWA为“00”时,按START微动开关,可对RAM连续手动读操作。存储器写操作(KWE):拨动微地址清零CLR开关,控制台开关SWB、SWA为“01”时,按START微动开关,可对RAM连续手动写入。计算机组成原理68

启动程序:微地址清零CLR开关,控制台开关SWB、SWA为“11”时,按START微动开关,即可转入到第01号“取址”微指令,启动程序运行。上述三条控制台指令用两个开关SWB、SWA的状态来设置,其定义见表10-4。控制原理图见实训三(图10-15微程序执行分支选择原理图)所示。SWBSWA控制台指令001011读内存(KRD)写内存(KWE)启动程序(RP)表10-4SWB、SWA的状态计算机组成原理693.系统微指令格式系统执行五条机器指令的微代码定义见表10-5。A、B、C字段对应的译码信号见实训三表10-2。242322212019181716151413121110987654321S3S2S1S0MCnWECELDPCABCµA5~µA0表10-5微指令格式4.机器指令与微程序的对应关系

每条机器指令由多条微指令按一定的顺序完成,以MOV指令(从存储器到存储器)为例,完成MOV指令的执行需要执行6条微指令才能完成,其执行流程为:计算机组成原理705.系统微程序系统涉及到的微程序流程见实训三(图10-17)所示,当执行“取指”微指令时,该微指令的判别测试字段为P(1)测试。由于“取指”微指令是所有为程序都使用的公用微指令,因此P(1)的测试结果出现多路分支。本级用指令寄存器的前4位(IR7-IR4)作为测试条件,出现5路分支,占用5个固定微地址单元。计算机组成原理71

控制台操作为P(4)测试,如图10-19所示,它以控制台开关SWB、SWA作为测试条件,出现了3路分支,占用3个固定微地址单元。当分支微地址单元固定后,控制存储器剩下的其它地址就可以一条微指令占用一个单元地址,而且地址可以随意使用。P(1)和P(4)对微程序执行分支选择情况如实训三(图10-15微程序执行分支选择原理图)所示。当全部微程序设计完毕后,应将每条微指令代码化,表10-6即为将实训三图10-17和图10-19的微程序流程图按微指令格式转化而成的“二进制微代码表”。计算机组成原理72

图10-19微程序流程图计算机组成原理73微地址S3S2S1S0MCNWECELDPCABCUA5---UA000000000011101110100010000010000000111101110000000100200000000010000000100100003000000000110000000000100040000000000110000000001010500000001001000100000011006100101010001101000000001070000000101100000000011011000000001100111000000000111000000011110111000000011120000000111101110000001111300000001111011100000111014000000011110111000010101150000001000000010000000011600000000011000000000111117000000000000000000000001200000000111101110000100102100000001111011100001010022000000000000000000010000230000000100000000000000012400000010000011000001000125000000001101000000000001表10-6二进制代码表计算机组成

温馨提示

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

评论

0/150

提交评论