写个CPU
qqNCer
这个作者很懒,什么都没留下…
展开
-
用scala写一个基本五级流水线CPU(三)增加R型指令
用scala写一个基本五级流水线CPU(三)增加R型指令 ctime:2020-06-28 13:01:45 +0900|1593316905 标签(空格分隔): 技术 硬件 本次更新的代码可参考: https://github.com/Ncerzzk/SimpleCPU/tree/deeb0217751f32bda5adf748b60cf528296466a6 前面的文章中已经添加了一条最基本的ORI指令(I型指令),然而指令系统目前还很不完善,如果要增加指令的话,还需要改动大量代码。 因此,本文开始着原创 2020-06-29 15:44:29 · 387 阅读 · 0 评论 -
用scala写一个基本五级流水线CPU(二)解决数据冒险
用scala写一个基本五级流水线CPU(二)解决数据冒险 ctime:2020-06-27 10:17:34 +0900|1593220654 标签(空格分隔): 技术 硬件 所谓数据冒险,即后面的指令依赖于前面指令执行的结果。 举例: 初始状态 $0=0 ORI $1 = $0 | 1100 ORI $2 = $1 | 0011 按照程序员的想法,显然最后$2应该等于1111才对,但如果按照之前实现的流水线,由于写回寄存器是在流水线的最后一级,而读流水线是在译码级,因此当第二条指令到译码阶段时,第原创 2020-06-29 15:41:10 · 446 阅读 · 0 评论 -
用scala写一个基本五级流水线CPU
用scala写一个基本五级流水线CPU ctime:2020-06-26 20:09:48 +0900|1593169788 标签(空格分隔): 技术 硬件 最近学SpinaHDL,一直想写个什么东西练练手。刚好以前一直想写个CPU,之前也在重新学计算机组成原理,刚好就用来作为练习。 其实想写CPU的想法已经很久了,基本上每一次重新学FPGA或者verilog的时候,都会有这么一个想法,但是每次都是因为各种原因不了了之。 有一些是个人兴趣原因,比如又发现了其他更好玩的东西,也有时候是因为被verilog的原创 2020-06-26 21:12:16 · 880 阅读 · 0 评论