【自用】Ubuntu20.4从Vivado到ddr200t运行HelloWorld

一、编辑bashrc

vim ~./bashrc

a编辑,将一下内容复制在最后

# ~/.bashrc
if [[ $- == *i* ]]
then
bind '"\e[A": history-search-backward'
bind '"\e[B": history-search-forward'
fi

在安装完Vivado和e203蜂鸟SDK后再复制下面内容,注意修改路径

function e203 {
source /tools/Xilinx/Vivado/2022.2/settings64.sh
cur_dir=$(pwd)
cd /home/UserName/Documents/hbirdv2_dev/hbird-sdk
source setup.sh
cd $cur_dir
}

e203

Esc退出编辑模式

输入 :wq ( 不可忽略,保存退出)

输入 :q! (不保存退出)

二、Vivado2022.2安装

参考【踩坑】Ubuntu20.4安装Vivado

三、编译蜂鸟E203自测样例

可参考官方上手指南

1. 环境准备

在终端输入

sudo apt-get install autoconf automake autotools-dev curl device-tree-compiler libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev git

注意官网是分成了两行,但是一定要一整行输进去,不然会报错。

2. 下载e203_hbirdv2工程文件

在文件夹下打开终端输入

git clone https://github.com/riscv-mcu/e203_hbirdv2.git

3. 尝试编译自测案例

1. 安装RISC-V GNU工具链

从这里安装,注意建议安装2022.12的版本!!!!!如果使用2022.08和2023.10都会遇到不同程度无法解决的报错。

riscv-nuclei-elf-gcc: Command not found ../Makefile:78: recipe for target 'rv32ui-p-simple' failed make: *** [rv32ui-p-simple] Error 127

在这里插入图片描述配置测试文件

cp nuclei_riscv_newlibc_prebuilt_linux64_2022.12.tgz.bz2 ~/

cd ~/

tar -xjvf nuclei_riscv_newlibc_prebuilt_linux64_2022.12.tgz.bz2

cd <your_e203_dir>/

mkdir -p ./riscv-tools/prebuilt_tools/prefix/bin

cd ./riscv-tools/prebuilt_tools/prefix/bin/

ln -s ~/nuclei_riscv_newlibc_prebuilt_linux64_2022.12/bin/* .

文件名和文件夹名按照自己的文件修改

2. 编译测试样例

cd <your_e203_dir>/riscv-tools/riscv-tests/isa

source regen.sh

4. 用vivado为FPGA生成mcs文件

可参考4.2. How to generate mcs for FPGA

1.准备RTL

cd <your_e203_dir>/fpga

make install FPGA_NAME=ddr200t

2.生成bit文件

make bit FPGA_NAME=ddr200t

3.生成mcs文件

make mcs FPGA_NAME=ddr200t

5. 向硬件中烧MCS文件

4.2.2. FPGA MCS download

四、配置HBird SDK

1.准备

在系统对应位置创建文件夹Nuclei-Tools

2.安装工具链

安装地址,RISC-V 工具链和OpenOCD最好下载相同的版本,这里也是建议安装2022.12版本
在这里插入图片描述

3. 工具配置

在Nuclei-Tools文件夹下创建gcc文件夹和openocd文件夹。
将解压的gnu toolchain终文件夹下所有内容复制到gcc文件夹下,将解压的openocd终文件夹下所有内容复制到我们准备好的openocd文件夹下

4.准备setup.config.sh文件

在< hbird-sdk >文件夹下打开终端

touch setup_config.sh
gedit setup_config.sh

输入以下内容,注意修改路径

NUCLEI_TOOL_ROOT=<nuclei-tools>

保存后在< hbibrd-sdk >目录下执行

source setup.sh
echo $PATH
which riscv-nuclei-elf-gcc openocd make rm
make help

五、HelloWorld

1. 编译HelloWorld样例

进入HelloWorld文件夹

cd <hbird-sdk>/application/baremetal/helloworld

编译样例

make dasm SOC=hbirdv2 BOARD=ddr200t CORE=e203 DOWNLOAD=flashxip

注:

  1. dash :表示对程序进行编译,并对可执行文件(.elf)进行反汇编生成.dump文件
  2. SOC=hbirdv2:指明SOC型号
  3. BOARD=ddr200t:指明开发板型号
  4. CORE=e203:指明Core型号,此处指的是蜂鸟E203 Core
  5. 此处可根据实际修改参数。

2. 运行HelloWorld样例

4.3.4. Run Hello World demo

  1. 链接开发板和蜂鸟调试器
  2. 输入groups 观察是否出现... plugdev ... ,如果出现说明在组件中,可以继续后面的步骤
  3. 编译下载文件
cd <hbird-sdk>/application/baremetal/helloworld
make upload SOC=hbirdv2 BOARD=ddr200t CORE=e203 DOWNLOAD=flash
  1. 打开UART 终端
sudo screen /dev/ttyUSB1 115200
  1. 按下复位键会刷新
    在这里插入图片描述

3.自己踩过的坑

  1. 【踩坑】参考官方文档 蜂鸟E203从运行自测样例到运行HelloWorld路上的坑
  2. 【踩坑】Ubuntu20.4安装Vivado
  • 21
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值