蜂鸟e203是芯来科技开源的一款2级流水线RISC-V CPU,支持IMAC指令集以及带扩展的协处理器接口。它的主频为16MHz,因此主要面向超低功耗场景。而且相比与其他性能更高的Boom等开源CPU,蜂鸟E203采用工业级且稳健的Verilog编写,对于刚接触RISC-V的小白们是十分有好的。本文主要介绍如何在自己的Linux环境中搭建交叉编译环境。
1、创建环境目录
在后面目录下创建以下目录结构
–home
–e203
–Nuclei
其中e203是整个项目的文件夹,也用于后续RTL源文件和sdk的存放。
2、工程与SDK下载
该core已经是蜂鸟的第二个版本,最显著的特征是增加了NICE协处理器扩展接口。
下载链接
SDK是脚本版的开发工具,对应也有UI版本。
下载链接
将上述工程文件与SDK均解压到/home/e203目录下。
3、安装RISC-V GNU工具链与OpenOCD
该工具链包含RISC-V编译相关的GCC,OpenOCD用于后续软件程序的下载与断点调试。
下载链接
在目录e203下创建Nuclei文件夹,将GNU工具链解压后的gcc文件加放入/home/e203/Nuclei中。将openOCD工具链解压后的openocd文件也放入/home/e203/Nuclei中。
将gcc工具软连接到源工程:
cd e203/e203-hbirdv2-master
mkdir -p ./riscv-tools/prebuilt_tools/prefix/bin
cd ./riscv-tools/prebuilt_tools/prefix/bin/
ln -s ~/Nuclei/gcc/bin/* .
4、环境脚本修改
在交叉编译是环境中需要正确找到gcc工具链才能成功编译,直接原有的脚本会出现找不到工具链的问题。需要在sdk文件夹中修改相应的makefile脚本。修改/home/e203/hbird-sdk-master/Build/Makefile.conf在文件开头增加下面代码。
NUCLEI_SDK_ROOT := /home/e203/Nuclei
5、编译helloworld
cd home/e203/hbird-sdk-master/application/baremetal/helloworld
make dasm SOC=hbirdv2 BOARD=ddr200t CORE=e203 DOWNLOAD=flashxip
编译结果输出