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

2023-01-28 0 521

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

我们好,我是马加仓。

关键控制技术“崇西”增添的关键点影响我们的现实生活后,亚洲地区开始全力全力支持暗鞘“中国核电”。当中,一种开放源码x86国际性标准 RISC-V 正式成为了亚洲地区很多信息控制技术民营企业及政府机构下注的新优先选择。

x86有什么用呢?

单纯说,x86就像词汇的句法准则,依照准则,普通用户能另行女团编写相同的该文,根据相同的x86国际性标准就能结构设计相同的CPU晶片

现阶段 CPU 构架市场上主要的x86国际性标准是 X86 和 ARM。不过,虽然在政治上与地域性武装冲突,这他们常正式成为信息控制技术民营企业陷于控制技术“崇西”的重压。在此之后,RISC-V 虽然其在x86等级全然开放源码,无须许可都能给与 RISC-V 合作开发CPU的发展性竞争优势受了我省为数众多信息控制技术民营企业及机构的广为高度关注与全力支持。

这儿有几组统计数据:现阶段,RISC-V 国际性促进会保有 19 个高阶团体会员,当中与我省有关的团体会员有 12 个。由此看来,亚洲地区数家民营企业政府机构及高标定在广度产业布局这个新经济应用领域。前夕也渐渐不断涌现杰出的开放源码工程项目,如中国科学院包彭措林项目组的东山CPU等。这类高效能的CPU核已在 Gitee 开放源码,受广为的钟爱。

工程项目门牌号:XiangShan: Open-source high-performance RISC-V processor

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

今天,我们给我们推荐一个开放源码工程项目。工程项目的作者是一个做嵌入式软件的合作开发者,他因对 RISC-V 感兴趣,开始自学从零开始写一个适合阿宝进阶的RISC-VCPU——tinyriscv

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

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

关于我们

Gitee星球 是 Gitee 旗下的创新研究所。点击此处可前往星球:RISC-V兴起黄金时代,软件结构设计阿宝是不是进阶

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

tinyriscv是什么?

tinyriscv 是一个采用 Verilog 词汇编写,期望打造正式成为一个单核 32 位的小型RISC-VCPU核(tinyriscv)。目前正在持续合作开发中。作者的结构设计目标是对标 ARM Cortex-M3 系列CPU。

工程项目门牌号: tinyriscv: 一个从零开始写的极简、非常易懂的RISC-VCPU核。

开放源码许可证: Apache-2.0

工程项目构架

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

特点:

支持 RV32IM x86,通过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 ./configure make make install

创建Python软链接

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

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

安装

1.安装 GTKWavesudo apt-get install gtkwave2.安装GNU工具链

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

测试

旧指令测试程序

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

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

仓库门牌号:tinyriscv: 一个从零开始写的极简、非常易懂的RISC-VCPU核。

新指令测试程序

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

新指令如何操作?

以 ADD指令为例

打开 CMD 窗口,进入到sim/compliance_test目录,执行以下命令,运行成功将看到 PASSpython .\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崛起时代,软件开发小白怎么入门

2.添加与生成

添加 RTL 源文件
RISC-V崛起时代,软件开发小白怎么入门
RISC-V崛起时代,软件开发小白怎么入门
添加约束文件
RISC-V崛起时代,软件开发小白怎么入门
RISC-V崛起时代,软件开发小白怎么入门
生成Bitstream文件
RISC-V崛起时代,软件开发小白怎么入门
RISC-V崛起时代,软件开发小白怎么入门

3.固化软核到FPGA

4.下载程序至FPGA

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

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

喜欢就点个Star

如果你对本期工程项目推荐感兴趣,RISC-V兴起黄金时代,软件结构设计阿宝是不是进阶,也欢迎各位转发、评论、点个 star。

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

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

往期推荐

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

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务