3. 微操作控制信号形成部件:根据指令部件提供的操作控制电位、时序部件所提供的各种时序信号,以及有关的状态条件,产生机器所需要的各种微操作控制信号。 4. 中断控制逻辑:用于实现对异常情况和特殊请求的处理。
5. 程序状态寄存器PSR:用于存放程序的工作状态(如管态、目态等)和指令执行的结果特征(如ALU运算的结果为零、结果为负、结果溢出等),表明系统的基本工作状态。
6. 控制台:用于实现人与机器之间的通信联系,如启动或停止机器的运行、监视程序运行过程、对程序进行必要的修改或干预等。
6.2 CPU中有哪几个最主要的寄存器?它们的主要作用是什么?
答:
(1) 指令寄存器IR:指令寄存器用于存放当前正在执行的指令。当指令从主存取出后,经MDR传送到指令寄存器中,以便实现对一条指令执行的全部过程的控制。
(2) 程序计数器PC:程序计数器又称指令计数器、指令地址寄存器,用于保证程序按规定的序列正确运行,并提供将要执行指令的指令地址。
(3) 累加寄存器AC:用于暂存操作数据和操作结果。
(4) 程序状态寄存器PSR:用于以存放程序的工作状态(如管态、目态等)和指令执行的结果特征(如ALU运算的结果为零、结果为负、结果溢出等),把它所存放的内容称为程序状态字(PSW)。PSW表明了系统的基本状态,是控制程序执行的重要依据。
(5) 地址寄存器MAR:用于存放所要访问的主存单元的地址。它可以接受来自PC的指令地址,或接受来自地址形成部件的操作数地址。
(6) 数据缓冲寄存器MDR(或MBR):用于存放向主存写入的信息或从主存中读出的信息。
6.3 什么是同步控制?什么是异步控制?什么是联合控制?在同步控制方式中,什么是三级时序系统?
答:同步控制方式是指任何指令的运行或指令中各个微操作的执行,均由确定的具有统一基准时标的时序信号所控制。每个时序信号的结束就意味着安排完成的工作已经完成,随即开始执行后续的微操作或自动转向下条指令的运行。
异步控制方式不再有统一的周期、节拍,各个操作之间采用应答方式衔接,前一操作完成后给出回答信号,启动下一个操作。
联合控制方式是同步控制与异步控制相结合的方式。通常的设计思想是:在功能部件内部采用同步方式或以同步方式为主的控制方式,在功能部件之间采用异步方式。
6.4 试述指令周期、CPU周期、节拍周期三者的关系。
答:指令周期是指从取指令、分析指令到执行完该指令所需的全部时间。机器周期又称CPU周期,是指令执行过程中的相对独立的阶段。把一个机器周期等分成若干个时间区间,每一时间区间称为一个节拍,一个节拍对应一个电位信号,控制一个或几个微操作的执行。
由于各种指令的操作功能不同,繁简程度不同,因此各种指令的指令周期也不尽相同。一条指令的执行过程(即指令周期)由若干个机器周期所组成,每个机器周期完成一个基本操作。一个机器周期中包含若干节拍。
6.5 按图6-9 CPU结构框图,试写出执行下面各条指令的控制信号序列。
(1)ADD R0,R1 (2)ADD (R0),R1 (3)ADD (R0)+,R1
注:指令中第一个地址为源地址,第二个地址为目标地址。 答:(1)ADD R0,R1 操作流程 (1) (PC)→MAR,Read (2) (PC)+1→PC INC、F→PC 控制信号序列 PC→B、Gon、F→MAR、Read、F→Y (3) M→MDR→IR (4) (R0)→Y (5) (Y)+(R1)→R1
(2)ADD (R0),R1 操作流程 (1) (PC)→MAR,Read (2) (PC)+1→PC (3) M→MDR→IR (4) (R0)→MAR,Read (5) M→MDR→Y (6) (Y)+(R1) →R1
(3)ADD (R0)+,R1 操作流程 (1) (PC)→MAR,Read (2) (PC)+1→PC (3) M→MDR→IR (4) (R0)→MAR,Read (5) (R0)+1→R0 (6) M→MDR→Y (7) (Y)+(R1) →R1 MDR→B、Gon、F→IR R0→B、Gon 、F→Y R1→B、ADD、F→R1 控制信号序列 PC→B、Gon、F→MAR、Read、F→Y INC、F→PC MDR→B、Gon、F→IR R0→B、Gon、F→MAR、Read MDR→B、Gon、F→Y R1→B、ADD、F→R1 控制信号序列 PC→B、Gon、F→MAR、Read、F→Y INC、F→PC MDR→B、Gon、F→IR R0→B、Gon、F→MAR、Read、F→Y INC、F→R0 MDR→B、Gon、F→Y R1→B、ADD、F→R1
6.6 试分析在模型机中执行下列指令的操作流程。
(1)ADD (R0),R1 (2)SUB X(R0),(R1) (3)MOV (R0)+,(R1) 答:
(1)ADD (R0),R1 周期、节拍 FT0 FT1 FT2 FT3 ST0 ST1 ST2 ST3 ET0 ET1 操作流程 (PC)→MAR Read,(PC)+1→PC (MDR)→IR 1→ST (R0)→MAR Read (MDR)→TEMP 1→ET (TEMP)→Y (R1)+(Y) →R1,END (2)SUB X(R0),(R1) 周期、节拍 FT0 操作流程 (PC)→MAR FT1 FT2 FT3 ST0 ST1 ST2 ST3 ST0 ST1 ST2 ST3 DT0 DT1 ET0 ET1 ET2 ET3 Read,(PC)+1→PC (MDR)→IR 1→ST (PC)→MAR Read,(PC)+1→PC (MDR)→Y 置Repeat,1→ST (R0)+Y→MAR Read (MDR)→TEMP 清Repeat,1→DT (R1)→MAR Read,1→ET (TEMP)→Y (MDR)-(Y) →MDR Write END
(3)MOV (R0)+,(R1) 周期、节拍 FT0 FT1 FT2 FT3 ST0 ST1 ST2 ST3 DT0 DT1 ET0 ET1 操作流程 (PC)→MAR Read,(PC)+1→PC (MDR)→IR 1→ST (R0)→MAR Read,(R0)+1→R0 (MDR)→TEMP 1→DT (R1)→MAR Read,1→ET (TEMP)→MDR Write,END
6.7 试述组合逻辑控制器与微程序控制器的组成差别?
答:组合逻辑控制器采用组合逻辑技术实现,其微操作信号发生器是由门电路组成的复杂树形网络构成的。
微程序控制器采用存储逻辑实现,将微操作控制信号以编码字(即微指令)的形式存放在控制存储器中。执行指令时,通过依次读取一条条微指令,产生一组组操作控制信号,控制有关功能部件完成一组组微操作。
微程序控制器的设计思想和组合逻辑设计思想截然不同。它具有设计规整,调试、维修以及更改、扩充指令方便的优点,易于实现自动化设计。但是,由于它增加了一级控制存储器,所以指令的执行速度比组合逻辑控制器慢。
6.8 何谓微命令、微操作、微指令、微周期? 答:
1)微命令:微命令是构成控制信号序列的最小单位。通常是指那些直接作用于部件或控制门电路的控制命令。 2)微操作:由微命令控制实现的最基本的操作称为微操作。
3)微指令:以产生一组微命令,控制完成一组微操作的二进制编码字称为微指令。微指令存放在控制存储器中。一条微指令通常控制实现数据通路中的一步操作过程。
4)微程序:一系列微指令的有序集合称为微程序。若干条有序的微指令构成的微程序,可以实现相应的一条
机器指令的功能。
6.9 微指令编码有哪几种常用方式?在分段编码方法中,分段的原则是什么?
答:微指令编码的常用方式有:直接控制法、最短编码法、字段直接编码法、字段间接编码法等。 分段编码方法也称字段直接编码法,其分段的原则是:
①把互斥的微命令(即不允许同时出现的微命令)划分在同一字段内,相容的(即允许同时出现)微命令划分在不同字段内。
②字段的划分应与数据通路结构相适应。
③一般每个子字段应留出一个状态,表示本字段不发任何微命令。 ④每个子字段所定义的微命令数不宜大多,否则将使微命令译码复杂。
6.10 什么是起始微地址?什么是后继微地址?有哪几种形成方法?
6.11 试写出在微程序控制的模型机中执行下列指令的微程序流程。
(1)ADD (R0),R1 (2)SUB X(R0),(R1) (3)MOV (R0)+,(R1)
主存储器M 6.12 右图为一CPU的结构框图。
(1)标明图中a、b、c、d四个寄存器的名称。 (2)简述取指令的操作流程。
a c (3)若加法指令格式与功能如下:
OP D
AC b 其功能为:(AC)+(D)→AC
试分析执行加法指令的操作流程。
+1 ALU d
状态 操作
寄存器 控制器
6.12题图
答:(1)a:MDR b:IR c:MAR d:PC
(2) 取指令的操作流程:
① (PC)→MAR,Read,PC+l→PC; 送指令地址,读主存,PC+l送PC ② M→MDR→IR; 取指令到IR。
(3) 设D为直接地址,则加法指令(AC)+(D)→AC的执行过程如下:
① (PC)→MAR,Read,PC+l→PC; 送指令地址,读主存,PC+l送PC ② (MDR)→IR; 取指令到IR
③ IR(D) →MAR,Read 按指令给出的直接地址访存,读取操作数 ④ (AC)+(MDR)→AC 执行加法运算,结果保存到AC
6.13 某计算机有如下部件:
ALU,移位寄存器,指令寄存器IR, 主存储器M,主存数据寄存器MDR,