逻辑电路补充——CPU
逻辑电路中控制模块一直学得不明不白,所以来补充以下。以函数分块
1、初始所有寄存器值为0
2、指令地址寄存器的数据线连接到RAM的地址线,RAM的数据线连接到指令寄存器的数据线,通电后实现读取指令。
3、判断当前操作码的逻辑电路,可以实现
if LOAD指令
指令寄存器后半位连接到RAM地址寄存器,RAM数据连接到LOAD通用寄存器,然后记得打开读开关。
指令完成,关闭线路(这个怎么实现?)
指令地址寄存器+1(这个应该是需要时钟周期了)
if STORE指令
读取RAM对应地址,把对应寄存器的数据连接到RAM的数据,完成。
if ADD指令
此时后面两位代表寄存器,所以还是有一个判断操作码的逻辑电路,激活对应寄存器。
寄存器将自己的数据通过线传入ALU,以及状态码,然后ALU端输出数据,输出到控制单元的一个暂存寄存器中
关闭ALU电路,将暂存寄存器的数据传递到第二个激活的通用寄存器中。(如果不关闭会导致循环,ALU不断相加就很难受)
(怎么关闭电路呢?)