配置澎峰 Perf-V 开发板 RISC-V 开发环境

2018/10/30 risc-v linux 共 1829 字,约 6 分钟

实验室买了一块 Perf-V 开发板,准备开始做 RISC-V 相关的工作。

虽然澎峰直接给了配置好的虚拟机开发环境,不过因为 Ubuntu16.03 用着不顺手就想要自己把环境配出来。

看澎峰给的 SDK 目录,就是直接用的开源蜂鸟(GitHub:e200_opensource)微调来的。所以最初尝试着 git e200_opensource 重新配置一遍,结果失败,报错找不到’cc1’。尝试添加 PATH 等操作无果。

riscv-none-embed-gcc: error trying to exec ‘cc1’: execvp: No such file or directory

后尝试直接把给的环境升级到 18.04,结果出现与上述相同的问题。

那行吧,既然 sirv-e-sdk 和 Perf-V-e-sdk 都是从 SIFIVE 的 freedom-e-sdk(GitHub:freedom-e-sdk)精简来的,那我就配置整个 freedom-e-sdk 吧。

总之这几天为了搞定 Perf-V 开发板的开发环境,前前后后踩了不少坑。现在把最后结果记录如下,备忘。

克隆 freedom-e-sdk 存储库

git clone --recursive https://github.com/sifive/freedom-e-sdk.git

文件大,耗时比较长。

从源代码构建 Tools

Ubuntu 需要这些 packages:

sudo apt-get install autoconf automake libmpc-dev libmpfr-dev libgmp-dev gawk bison flex texinfo libtool libusb-1.0-0-dev make g++ pkg-config libexpat1-dev zlib1g-dev

build:

cd freedom-e-sdk
make tools [BOARD=freedom-e300-hifive1]

build 过程耗时很长。

替换板级支持包

freedom-e-sdk 是 SIFIVE 的开发环境,里面的板级支持包只有 sifive 系列,要用来开发 Perf-V 需要先替换 bsp 文件夹。

mv ./bsp ./bsp_bak
cp -r ~/fengniao/e200_opensource/Perf-V-e-sdk/bsp ./

可以把 Perf-V 开发板自带的几个程序顺便复制过来,方便之后测试。

mv ./software ./software_bak
cp -r ~/fengniao/e200_opensource/Perf-V-e-sdk/software ./

PC 和开发板的连接

如果手头上有胡振波大大《RISC-V 处理器》这本书的同学,请翻到 P318,18.3 节提到了他们的开发板是怎么配置和 PC 连接的。基本上照做就行了,可是别忘了,他们的开发板是 Arty,虽然澎峰用的也是 A7,但是板子 ID 可不一样,所以有 2 个参数要注意了。

我这就照着书上的步骤 2 到 6 简单写一下。

步骤二:通电;点 USB 图标连接至虚拟机

步骤三:使用如下命令查看 USB 状态

lsusb

Bus 001 Device 002: ID 0403:6010 Future Technology Devices International, Ltd FT2232C Dual USB-UART/FIFO IC

记下 0403:6010 这两个数。

步骤四:设置 udev rules,使 USB 能够被 plugdev group 访问

sudo nano /etc/udev/rules.d/99-openocd.rules
# 写入以下内容,注意 0403 和 6010,和书上不一样
SUBSYSTEM=="usb", ATTR{idVendor}=="0403",
ATTR{idProduct}=="6010", MODE="664", GROUP="plugdev"
SUBSYSTEM=="tty", ATTRS{idVendor}=="0403",
ATTRS{idProduct}=="6010", MODE="664", GROUP="plugdev"

步骤五:看看 USB 设备所属组,略

步骤六:把自己的用户添加到组中

sudo usermod -a -G plugdev 你的用户名

编译上传裸机 RISC-V 程序

cd freedom-e-sdk
make software PROGRAM=demo_gpio BOARD=Perf-V-creative-board
make upload PROGRAM=demo_gpio BOARD=Perf-V-creative-board

文档信息

Search

    Table of Contents