快捷搜索: 王者荣耀 脱发

零、RISC-V SoC软核代码笔记详解——前言

0 RISC-V SoC注解系列文章目录

另外,在最后一个章节中会上传额外添加详细注释的工程代码,完全开源,如有需要可自行下载。

1 前言(手绘RISC-V SoC内核RTL视图):

过去几年RISC-V飞速发展,这股从美国兴起的RISC-V大流愈演愈烈。由于目前中国IC行业受到国外不同程度的排挤,在国内大力发展RISC-V这个完全开源的精简指令集架构,显得尤为重要。而目前国内很多芯片的龙头企业都已经进军RISC-V架构的芯片领域,如紫光展锐、华为海思、阿里平头哥等。从市场角度来说,RISC-V还是有很多事情要做的,其生态建设,高端场景应用都需要进一步发展。所以推动RISC-V的教学和发展就愈发重要。

如果想要拿RISC-V架构的SoC来参加FPGA开发或者数字IC设计相关的比赛,或者就是单纯想要学习RISC-V,那如何在短期内(一周左右)掌握RISC-V的基本框架呢?

因此,笔者在学习这个riscv soc工程的过程中,又对其进行了进一步注解,并将一些学习成果和心得记录下来,作为连载笔记记录在此,希望可以帮助小白同学从零基础入门学习RISC-V架构的SoC。另外,在最后一个章节中会上传额外添加详细注释的工程代码,也完全开源,如有需要可自行下载。另外,我们根据源代码,绘制了详细的内核框架图,包括信号传递方向,就在下边:

(此处致谢马博士、小汪、小段)

~

因水平有限,在此过程中如有错误,请各位小伙伴私信或留言指正。


2. 开源工程tinyriscv使用教程:

这个开源SoC工程的使用方法在B站上面有详细讲解,讲解视频的链接如下:

3. 开源工程tinyriscv下载地址:

4. 开源工程tinyriscv简介

上述tinyriscv是一个采用三级流水线设计,顺序、单发射、单核的32位RISC-V SoC处理器,包括RISC-V处理器内核和对应的外设接口,工程中的代码都是采用verilog HDL语言编写,核心设计思想是简单、易懂。

上述链接中也有对RISC-V的简单介绍,摘出如下:

RISC-V是什么

RISC,即精简指令集处理器,是相对于X86这种CISC(复杂指令集处理器)来说的。RISC-V中的V是罗马数字,也即阿拉伯数字中的5,就是指第5代RISC。

既生ARM,何生RISC-V

RISC-V的诞生并不是偶然的,而是必然的,为什么?且由我从以下两大领域进行说明。

先看开源软件领域(或者说是操作系统领域),Windows是闭源的,Linux是开源的,Linux有多成功、对开源软件有多重要的意义,这个不用多说了吧。再看手机操作系统领域,iOS是闭源的,Android是开源的,Android有多成功,这个也不用多说了吧。对于RISC处理器领域,由于有了ARM的闭源,必然就会有另外一种开源的RISC处理器。RISC-V之于CPU的意义,就好比Linux之于开源软件的意义。

或者你会说现在也有好多开源的处理器架构啊,比如MIPS等等,为什么偏偏是RISC-V?这个在这里我就不细说了,我只想说一句:大部分人能看到的机遇不会是一个好的机遇,你懂的。

可以说未来十年乃至更长时间内不会有比RISC-V更优秀的开源处理器架构出现。错过RISC-V,你注定要错过一个时代。

经验分享 程序员 微信小程序 职场和发展