目录
引言
此专栏的文章记录自己学习《自己动手写CPU》的过程。算是一个学习笔记,里面也会夹杂个人的思考以及代码编写。希望自己可以像作者一样,坚持到最后。加油~~
本篇为设计的spec。
致谢
感谢书籍《自己动手写CPU》及其作者雷思磊。一并感谢开源精神。
设计指标
1、总体要求
2、五级流水线
三级流水线结构下,执行完 3 条指令花费的时间为 5T,但是如果没有使用三级流水线,则花费的时间为 3*3T=9T。但是这个最大的前提就是,一条指令的任何一个操作都可以在1个时钟周期内完成。但是,如果这个条件不成立,则如下图所示:
解决取指令时间长的办法之一就是引入缓存,处理器从cache取指令仅需一个时钟周期。
但是除了上面说的取指令时间长的问题以外,还存在一个大的问题就是 加载/存储 指令在执行时耗时较大。为解决此问题,引入了 5 级流水线结构:
各阶段的工作:
3、指令执行周期
4、MIPS处理器外部接口
接口描述: