nandgame--Level 5.3: CPU: Control Unit

任务5.3:控制单元

任务描述:

任务说明:

输入:指令I和时钟CL

输出:

J标志:ALU模块输出的是否满足跳转条件的标志位。

A:寄存器的当前值。

CI:运算指令标志。需要存储的值是ALU的输出还是指令的X的值。如果是要保存指令I译码出来的X,则CI为0;如果是要保存ALU的计算结果,则CI为1。

SM:源操作数存储器。送到ALU单元的Y数据来自哪里。如果是来自A寄存器,则SM为0;如果是来自RAM,则SM为1。送到ALU单元的X数据永远是D寄存器。

OP标志:译码器输出的,送给ALU单元的运算符标志组。

DST标志:哪些寄存器要保存

CD标志:译码器输出的条件标志。

分析:

1,指令首先要译码。

2,还需要送到ALU进行运算。ALU的输入X=D;Y=A或者M,由sm来选择。op则是指令译码器的结果op.

3,需要保存到memory中的数据X也有两种情况,由CI来选择是来自于指令中的X,还是来自ALU的运算结果。

4,J标志直接由condition模块根据译码器的条件标志CD和ALU计算的结果X来确定。

5,最终结果:

猜你喜欢

转载自blog.csdn.net/booksyhay/article/details/82142089
5.3
今日推荐