《自由人生之路》是侯老师对“哲学三问的回答”:我是谁?我从哪里来?我该追求什么? 在几个关键的人生选择中,它给了我很大的启示。非常感谢作为长江学者的侯老师,在我毕业多年,...

Gem5的源码在src文件夹,涉及很多内容,如果希望修改某些模块,或增加某些功能,总感觉无从下手:一方面对Gem5的代码组织不清楚,另一方面对硬件结构不熟悉。 经过一番探...

Gem5是研究体系结构的硬件仿真工具,官方也提供了较详细的入门文档gem5 documentation。 在研究超标量乱序CPU时,Gem5也提供了可视化样例gem5: ...

高考成绩这两天出分了,敬业的小镇做题家昨天收到小朋友的好消息,“差7分一本,已经挺满意。”望继续努力,你我皆是黑马。 高中的作文一直是噩梦,经常会让我写类似这样的题目谈谈...

如何搭建自己的Difftest框架呢?一生一芯仓库的wiki给了优秀的回答,但要全搭起来还是不容易,同样是两个原因:不够保姆、版本。 1. 初始化仓库 首先clone一生...

一、Difftest简介 Difftest是差分测试框架,有什么用呢?高性能CPU的设计需要做复杂的测试,传统的测试方法运行较慢,而且出了问题很难定位,Difftest就...

Chipyard Docker——坑外有坑 搭好chipyard的环境之后,便开始做一些简单开发,Berkeley提供了用户定制协处理器的接口,方便在Rocketchip...

操作系统启动过程中,如何完成物理地址到虚拟地址的转换?虚拟地址又是如何翻译成物理地址的? 以qemu-system-riscv64为例,opensbi会将内核搬到内存0x...

最近了解了一波RISCV特权指令,起因是想弄清楚linux启动过程中M模式、S模式、U模式分别是如何切换的?中断和异常的时候硬件做了什么,软件要做什么?如何判断当前运行在...

最近在服务器上git clone 了很多项目,每个项目都需要不同的环境,比如verilator版本,java版本,vivado版本,甚至ubuntu版本,一顿折腾之后,发...

在过去的四个月时间里,一直尝试着在FPGA部署RISC-V处理器,并运行Linux操作系统,基本浏览了全网这方面所有教程,git clone,make的技能炉火纯青。 在...

全网有各种Qemu运行riscv linux的教程,有点杂,在此做一个总结分类。 要成功运行起来不难也不容易,跑不通最大的原因可能是版本问题,包括Qemu的版本、Open...

在过去一年多的时间里,我曾连续参加了第二届EDA精英挑战赛、第五届全国集创赛以及第三届复微杯,并担任队长,最终都顺利完赛,收获良多。这期间也碰到很多问题,比如赛题看不懂,...