|
|
|
|
移动端

2.3 RISC-V软件工具链

《手把手教你设计CPU——RISC-V处理器篇》第2章大道至简——RISC-V架构之魂,本章将对RISC-V架构的设计思想进行深入浅出的介绍。本节为大家介绍RISC-V软件工具链。

作者:胡振波来源:人民邮电出版社|2018-05-23 13:22

技术沙龙 | 6月30日与多位专家探讨技术高速发展下如何应对运维新挑战!


2.3 RISC-V软件工具链

在本章的介绍中已反复提到软件生态对于CPU的重要性,是运行于CPU之上的软件赋予了CPU以生命与灵魂,而软件工具链的完备则是CPU能够真正运行的第一步。

作为一种开放免费的架构,RISC-V的软件工具链由开源社区维护,所有的工具链源代码均公开。可以通过RISC-V基金会网站进入RISC-V Tools,如图2-5所示。

riscv-tools的源代码在GitHub上被维护成一个宏项目(详情请在GitHub中搜索“riscv-tools”),其包含了所有RISC-V相关工具链、仿真器和测试套件等子项目,如图2-6所示。

(1)riscv-fesvr 是一个用于实现上位机和CPU之间通信机制的库;riscv-pk提供RISC-V可执行文件运行的程序运行环境,同时提供最简单的bootloader;riscv-isa-sim 是一个基于C/C++开发的指令集模拟器,其还有一个更通俗和为人所熟知的名字“Spike”。riscv-fesvr、riscv-pk和riscv-isa-sim这3个工具协作在一起,可以用于在Spike模拟器上运行一个完整的程序。

(2)riscv-gnu-toolchain 是支持RISC-V的GNU工具链,包含了以下内容。

riscv-gcc:GCC 编译器。

riscv-binutils-gdb:二进制工具(链接器,汇编器等)、GDB调试工具等。

riscv-glibc:GNU C标准库实现。

有关GNU工具链的更多信息请读者自行查阅。

riscv-llvm是一个基于LLVM编译器的框架,有关LLVM的更多信息请读者自行查阅。

riscv-openocd是一个基于OpenOCD的RISC-V调试器(Debugger)软件,请参见第19.4节了解更多OpenOCD的信息。

riscv-opcodes 是一个RISC-V操作码信息转换脚本。

riscv-tests是一组RISC-V指令集测试用例。

riscv-qemu是一个支持RISC-V的QEMU模拟器,有关QEMU模拟器的更多信息请读者自行查阅。

如需使用RISC-V的工具链,除了按照GitHub上的说明下载源代码进行编译生成之外,还可以在网络上直接下载已经预先编译好的GNU工具链和Windows IDE开发工具,请参见第19.3节和第19.5节了解相关信息。


喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:365934973

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Java (JDK 6)学习笔记

Java学习笔记在JavaWorld技术论坛(http://www.javaworld.com.tw/)和作者的网站(http://caterpillar.onlyfun.net/Gossip/)提供免费下载...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊