Computer Organization Multi-cycle CPU
未完待续
前段时间学多周期CPU,实验课在FPGA板上自己搭建一个多周期CPU。一方面觉得实在有意思,另一方面怕自己以后忘了,所以这里总结一下
目录
Introduction——why multi-cycle?
单周期CPU的一个时钟时长取决于最长指令需要的时间。多周期CPU能够让不同的指令拥有不同的时执行时间。而实现的方法是将时钟周期变短,给不同的指令分配不同的时钟周期数,从而实现不同指令,不同执行时间,从而加快CPU。
这里的一条指令需要多个时钟周期才能执行完而不是一个时钟周期就是“多周期”名字的由来。
举个例子:——Examples?
上图中如果需要执行一条J指令,需要三个时钟周期:IF(取指令)、ID(指令译码)、J(跳转)
而一条ALU指令需要四个时钟周期:IF(取指令)、ID(指令译码)、Exe_I(执行ALU计算)、R_WB(将计算结果写回寄存器 reg file)
而一条LW指令需要5个时钟周期:IF(取指令)、