RISC-V崛起时代,软件开发小白怎么入门

自媒体运营教程 产品运营 3

RISC-V崛起时代,软件开发小白怎么入门-第1张图片-90博客网

大家好,我是马建仓。

核心技术“卡脖子”带来的痛点影响我们的日常生活后,国内开始大力支持自研“中国芯”。其中,一种开源指令集标准 RISC-V 成为了国内许多科技企业及机构押注的新选择。

指令集有什么用呢?

简单说,指令集就像是语言的语法规则,按照规则,使用者可以自行组合撰写不同的文章,根据不同的指令集标准就可以设计不同的处理器芯片

当前 CPU 架构市场上主要的指令集标准是 X86 和 ARM。然而,由于政治与地域冲突,这他们常成为科技企业陷入技术“卡脖子”的掣肘。与此同时,RISC-V 由于其在指令集级别完全开源,无需授权都可以给予 RISC-V 开发处理器的开放性优势受到了我国众多科技企业及机构的广泛关注与支持。

这里有一组数据:当前,RISC-V 国际基金会拥有 19 个高级会员,其中与我国相关的会员有 12 个。由此可见,国内多家企业机构及高校正在深度布局这个新兴领域。期间也逐渐涌现优秀的开源项目,如中科院包云岗团队的香山处理器等。此类高性能的处理器核已在 Gitee 开源,受到广泛的喜爱。

项目地址:XiangShan: Open-source high-performance RISC-V processor

可以说,RISC-V 的发展前景一片大好,但许多对此感兴趣的小白开发者却不知道如何入门。并且 RISC-V 是从这两年才开始迅速发展,关于RISC-V的学习参考资料不算丰富,尤其是适合入门的资料,因此开发者常遇到学习进度缓慢的难题。

今天,我们给大家推荐一个开源项目。项目的作者是一个做嵌入式软件的开发者,他因对 RISC-V 感兴趣,开始自学从零开始写一个适合小白入门的RISC-V处理器—— tinyriscv


RISC-V崛起时代,软件开发小白怎么入门-第2张图片-90博客网

目前,这个项目已经在 Gitee 上获得 1.6K 的 Star,我们一起来了解一下。

关于我们

Gitee星球 是 Gitee 旗下的创新研究所。点击此处可前往星球:RISC-V崛起时代,软件开发小白怎么入门


在这里,我们收集整理了 Gitee 上高品质、有意思的开源项目,同时也挖掘 Gitee 项目作者的一手开源故事,邀请优秀的开发者们讲述自己的开源经历,举办有趣的开源活动。

tinyriscv是什么?

tinyriscv 是一个采用 Verilog 语言编写,期望打造成为一个单核 32 位的小型RISC-V处理器核(tinyriscv)。目前正在持续开发中。作者的设计目标是对标 ARM Cortex-M3 系列处理器。

项目地址: tinyriscv: 一个从零开始写的极简、非常易懂的RISC-V处理器核。


开源许可证: Apache-2.0

项目架构


RISC-V崛起时代,软件开发小白怎么入门-第3张图片-90博客网

特点:

  • 支持 RV32IM 指令集,通过RISC-V指令兼容性测试
  • 采用取指,译码,执行的三级流水线
  • 可以运行 C 语言程序
  • 支持JTAG,可以通过 0penOCD 读写内存(在线更新程序)
  • 支持中断;总线;FreeRTOS;以及通过串口更新程序
  • 资源足够,容易移植到任何FPGA平台

如何使用?

本项目可以运行在Windows和Linux平台

Windows平台环境操作指南

安装

1.安装 iVerilog 工具

2.安装 GNU 工具链

3.安装 make 工具

4.安装 Python3

下载

git clone https://gitee.com/liangkangnan/tinyriscv.git

Linux平台环境操作指南

下载 iVerilog 源码

注意: 切换到v11分支(必须用V11或以上的版本)

依赖环境

udo apt-get install autoconf gperf flex bison build-essential

编译、安装 iVerilog 和VVP

相关影片资源迅雷下载推荐

为什么软件开发对于普通人而言这么难?怎么破?

在大众的眼里,都认为编程的难度非常大,其实对于编程语言而言,其中的难度差异并不是很大,每个语言都有自己优势和劣势的地方,但有一个难点是所有编程人员共同的问题:软件开发的难点。本期就和大家一起来说说,如 ...

软件开发,为什么软件开发对于普通人而言这么难?怎么破?

sh autoconf.sh./configuremakemake install

创建Python软链接

sudo ln -s /usr/bin/python3.8 /usr/bin/python

其中/usr/bin/python3.8对应你实际安装的 Python 版本。

安装

  • 1.安装 GTKWave
sudo apt-get install gtkwave
  • 2.安装GNU工具链

下载后解压到tools目录下,需要确认tests/example/common.mk文件里的这几行内容要与所安装的工具链对应得上。

测试

旧指令测试程序

旧的指令兼容性测试源码。RISC-V 官方已经不更新了。

PS:若是想要学习旧指令测试,可前往作者仓库地址查看教程。

仓库地址:tinyriscv: 一个从零开始写的极简、非常易懂的RISC-V处理器核。

新指令测试程序

优势: 较旧指令而言,更为严谨

新指令如何操作?

以 ADD指令为例

  • 打开 CMD 窗口,进入到sim/compliance_test目录,执行以下命令,运行成功将看到 PASS
python .\compliance_test.py ..\..\tests\riscv-compliance\build_generated\rv32i\I-ADD-01.elf.bin inst.data

C语言程序例程

  • 打开 CMD 窗口,进入到tests\example\simple目录,执行以下命令编译:
make
  • 成功后进入sim,执行下列命令
python .\sim_new_nowave.py ..\tests\example\simple\simple.bin inst.data

如何移植到FPGA?

准备

1.软件: xilinx vivado(以2018.1版本为例)开发环境。

2.FPGA: xilinx Artix-7 35T。

3.调试器: CMSIS-DAP或者DAPLink。

操作流程

1.创建工程


RISC-V崛起时代,软件开发小白怎么入门-第4张图片-90博客网

2.添加与生成

  • 添加 RTL 源文件

RISC-V崛起时代,软件开发小白怎么入门-第5张图片-90博客网


RISC-V崛起时代,软件开发小白怎么入门-第6张图片-90博客网

  • 添加约束文件

RISC-V崛起时代,软件开发小白怎么入门-第7张图片-90博客网


RISC-V崛起时代,软件开发小白怎么入门-第8张图片-90博客网

  • 生成Bitstream文件

RISC-V崛起时代,软件开发小白怎么入门-第9张图片-90博客网


RISC-V崛起时代,软件开发小白怎么入门-第10张图片-90博客网

3.固化软核到FPGA

4.下载程序至FPGA

  • 下载方式:通过JTAG方式下载/通过UART方式下载
  • Vivado仿真设置,完成后进行RTL仿真

详细的移植方法请查看本项目下的fpga目录中的README.md文件,请前往下方阅读原文,前往仓库下载。

喜欢就点个Star

如果你对本期项目推荐感兴趣,RISC-V崛起时代,软件开发小白怎么入门,也欢迎各位转发、评论、点个 star。

如果你对 RISC-V 开发的开源项目其他的见解,欢迎在后台留言与我们一同讨论。

同时也欢迎给我推荐有趣的开源项目,如果成功收录 Gitee星球将有小礼品噢~

往期推荐


RISC-V崛起时代,软件开发小白怎么入门-第11张图片-90博客网


RISC-V崛起时代,软件开发小白怎么入门-第12张图片-90博客网


RISC-V崛起时代,软件开发小白怎么入门-第13张图片-90博客网

相关影片资源迅雷下载推荐

软件开发怎么个操作流程呢?

前面呢给大家简单地讲了下硬件和软件的一个小概念,今天呢我分为以下几点来给大家详细讲解下软件开发。第一,软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。改进开发是一项包括需求捕捉、需求分 ...

软件开发,软件开发怎么个操作流程呢?

企业网站建设与开发最低只要299元起,包含域名服务器,需要的联系QQ345424724,电话15516990022,18530226930

标签: 软件开发 RISC-V崛起时代 软件开发小白怎么入门

抱歉,评论功能暂时关闭!