请根据微程序控制器原理设计两个微程序来实现如下机器指令:
(1)ADD R0, R2
(2)SUB R3, R1。
微指令的格式如下图所示:

其中各微命令的功能如下所述:
LDR1’:数据总线上的数据被加载到R1;
LDR2’:数据总线上的数据被加载到R2;
LDR3’:数据总线上的数据被加载到R3;
R1 -> X:R1里面的数据被加载到X寄存器;
R1 -> Y:R1里面的数据被加载到Y寄存器;
R2 -> X:R2里面的数据被加载到X寄存器;
R2 -> Y:R2里面的数据被加载到Y寄存器;
DR -> X:DR里面的数据被加载到X寄存器;
R3 -> Y:R3里面的数据被加载到Y寄存器;
X + Y:运算器做加法,X、Y寄存器存放被加数和加数
M:运算器传送数据
Y – X:运算器做减法,Y寄存器存放被减数,X寄存器存放减数
RD’:读存储器, AR寄存器所指向的存储单元的数据或指令被读到数据总线上;
LDDR’:数据总线上的数据或指令被加载到DR;
LDIR’: DR里面的数据被加载到IR
LDAR’:要寻址的存储单元的地址被加载到AR
PC + 1:PC寄存器里面的值加1
两条机器指令的流程图如下所示,其中每个方框对应一条微指令,方框的右上角表示该条微指令的地址,右下角表示本条微指令顺序控制部分的直接地址值。

标注了微命令的CPU内部原理图如下图所示:

请设计以上两条机器指令的微程序,并对每一条微指令的功能进行说明。
小弟再次跪求,求解决一下,谢谢了。实在是不会呢
看了一下午书了
(1)ADD R0, R2
(2)SUB R3, R1。
微指令的格式如下图所示:

其中各微命令的功能如下所述:
LDR1’:数据总线上的数据被加载到R1;
LDR2’:数据总线上的数据被加载到R2;
LDR3’:数据总线上的数据被加载到R3;
R1 -> X:R1里面的数据被加载到X寄存器;
R1 -> Y:R1里面的数据被加载到Y寄存器;
R2 -> X:R2里面的数据被加载到X寄存器;
R2 -> Y:R2里面的数据被加载到Y寄存器;
DR -> X:DR里面的数据被加载到X寄存器;
R3 -> Y:R3里面的数据被加载到Y寄存器;
X + Y:运算器做加法,X、Y寄存器存放被加数和加数
M:运算器传送数据
Y – X:运算器做减法,Y寄存器存放被减数,X寄存器存放减数
RD’:读存储器, AR寄存器所指向的存储单元的数据或指令被读到数据总线上;
LDDR’:数据总线上的数据或指令被加载到DR;
LDIR’: DR里面的数据被加载到IR
LDAR’:要寻址的存储单元的地址被加载到AR
PC + 1:PC寄存器里面的值加1
两条机器指令的流程图如下所示,其中每个方框对应一条微指令,方框的右上角表示该条微指令的地址,右下角表示本条微指令顺序控制部分的直接地址值。

标注了微命令的CPU内部原理图如下图所示:

请设计以上两条机器指令的微程序,并对每一条微指令的功能进行说明。
小弟再次跪求,求解决一下,谢谢了。实在是不会呢

