嵌入式学习-04_嵌入式技术之从零搭建计算机
1.1 添加其他控制指令
1.1.1 添加halt信号位
上面的电路中没有程序终止的指令,给指令寄存器的第15位作为程序终止的halt信号位,当halt=1时,程序执行,当halt=0时,程序终止。
加入halt终止指令后的电路图如下:
电路中各个时钟周期,各设备的输出情况:
时钟周期 | PC输出(数据存储的地址) | 数据RAM输出 | A寄存器输出 | ALUsel控制信号 |
---|---|---|---|---|
0 | 0(00) | 13 | 0 | 00(加) |
1 | 1(01) | 45 | 13 | 00(加) |
2 | 2(10) | 27 | 58 | 01(减) |
3 | 3(11) | xx | xx | xx |
1.1.2 添加str存储信号位
我们希望将运算之后的结果回存到数据RAM中,那就需要对数据RAM的str引脚信号进行控制,因此指令RAM中输出的16bit的数据中,需要有1bit对其进行控制。此处我们选择11号位。加入str存储控制后的指令信号控制位如图:
当str=1时,将ALU运算后的结果,存储进数据RAM中。添加str控制信号后的电路图如下:
在电路运行各个时钟周期,各个设备的输出情况如图所示:
时钟周期 | PC输出(数据存储的地址&# |
---|