会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
霍比特人长不高
博客园
首页
新随笔
联系
管理
订阅
2020年4月8日
从零开始写处理器(4)——cache原理与实现
摘要: 1.局部性与命中率 对于cache而言,其本质就是在高速寄存器与低速DRAM之间寻找一个平衡,拥有较大的存储空间与较快的速度,一般利用SRAM实现。为了实现高速的目的,我们希望cache中存储的数据可以包括一切cpu中需要用到的数据,从而避免重新回到DRAM导入数据,但cache的存储空间毕竟较小无
阅读全文
posted @ 2020-04-08 11:25 霍比特人长不高
阅读(1275)
评论(0)
推荐(0)
2020年2月8日
从零开始写处理器(3)——处理器测试
摘要: 经过前两篇文章的介绍,我们已经完成了对所有模块的设计,这里给出top文件 `timescale 1ns / 1ps module MIPSCpu( input clk, rst_n, input [31:0] ext_data,ext_data_addr, input ext_data_en, in
阅读全文
posted @ 2020-02-08 21:42 霍比特人长不高
阅读(383)
评论(0)
推荐(0)
从零开始写处理器(2)——冲突检测
摘要: 在本次设计的流水线中,存在一些冲突会使得电路不会向着我们希望的步骤运行。这些冲突分为两种:数据冲突和结构冲突。 1.数据冲突 我把数据冲突分为三个小类,存储单元的读写冲突、普通RAW(Read After Write)冲突、需要暂停流水线的RAW冲突。 1.1 对于其中第一小类冲突,可以不通过额外的
阅读全文
posted @ 2020-02-08 21:20 霍比特人长不高
阅读(1432)
评论(0)
推荐(0)
2019年12月14日
脚本怎么写???
摘要: 在MICAS的这段时间,我深刻体会到了Linux系统与写脚本做仿真、做综合、做分析的重要性,对于一个硬件开发者而言,学会Linux系统的操作也是以编写脚本、运行脚本为目的的。这篇随笔我会记录一些最基本的Linux命令,以及四种脚本的使用方法以及一些实例。 想系统学习可以上这个网:https://ww
阅读全文
posted @ 2019-12-14 23:18 霍比特人长不高
阅读(846)
评论(0)
推荐(0)
2019年10月13日
ARM与MIPS比较
摘要: ARM MIPS 安全性总览 基于trust zone构建,区分为一个安全世界与一个正常世界,正常世界不可以访问安全世界的存储空间等部件,正常世界信任安全世界,安全世界中的指令互相信任。 基于虚拟化CPU的硬件,允许存在多个域,并且每个域都是独立被保护的,互相不信任其他域中的软件或是数据,MIPS-
阅读全文
posted @ 2019-10-13 23:54 霍比特人长不高
阅读(3036)
评论(0)
推荐(0)
2019年10月11日
从零开始写处理器(1)——数据通路+控制模块设计+指令定义
摘要: 此前在UCSB交换旁听了那边的ECE154b,课设是写MIPS+cache+branch prediction,个人感觉很有意思。现在就按照教授给的project guideline自己动手走一遍流程(见https://www.ece.ucsb.edu/~strukov/ece154bSpring2
阅读全文
posted @ 2019-10-11 01:00 霍比特人长不高
阅读(2792)
评论(0)
推荐(0)
公告