问答题 运算器结构如图5.24所示,IR为指令寄存器,R 1 ~R 3 是三个通用寄存器,其中任何一个可作为源寄存器或目标寄存器,A和B是三选一多路开关,通路的选择分别由AS 0 ,AS 1 和BS 0 ,BS 1 控制(如BS 0 BS 1 =01时选择R 1 ,10时选择R 2 ,11时选择R 3 )。S 1 S 2 是ALU的操作性质控制端,功能如下: S 1 S 2 =00时,ALU输出B S 1 S 2 =00时,ALU输出A+B S 1 S 2 =10时,ALU输出A-B S 1 S 2 =11时,ALU输出B 假设有如下四条机器指令,其操作码OP和功能如表5.6所示。
【正确答案】正确答案:(1)四条指令的指令格式如下,其中ADT指令限定源寄存器为R 1 ,目标寄存器为R 2 (2)从总框图看到:控制信号共有12个,CM容量为16个单元,需占用4位下址字段,判别测试需要2位,如直接控制方式,微指令字长共18位。但是设计要求规定微指令字长不能超过14位,这就需要另想办法。 分析机器指令级的指令格式与A,B两个多路开关的控制方式后发现,AS 0 ,AS 1 和BS 0 ,BS 1 四个控制信号可以直接由机器指令级上的源字段和目标字段控制,但ADT指令例外。为此微指令中设A,B两个微命令,用以产生AS 0 ,AS 1 ,BS 0 ,BS 1 信号。另外,LDR 1 ~LDR 3 三个控制信号可由微指令级提供一个控制信号LDR i ,然后与机器指令级上的目标字段进行组合译码后产生。 从上面的分析可知,微指令格式如下(共14位): (3)根据所确定的微指令格式,四条指令微程序流程图如图5.25所示。 (4)从流程图看出,P(1)处理微程序出现四个分支,对应四个微地址。为此用OP码修改微地址寄存器的最后两个触发器即可。在P(2)处微程序出现2路分支,对应两个微地址,此时的测试条件是进位触发器C I 的状态。为此用 修改μA 2 即可。转移逻辑表达式如下: μA 0 =P 1 .T 4 .IR 6 μA 1 =P 1 .T 4 .IR 7 μA 2 =P 2 .T 4 .C. 由此可画出微地址转移逻辑,如图5.26所示。
【答案解析】