蜂鸟E203系列——FPGA硬件环境
为了将蜂鸟E203的FPGA代码能够真正运行在 FPGA 硬件上,需要将其编译成为 bitstream 文件然后烧录到 FPGA 中去,本文介绍了两种方法进行编译和烧录:一种是make指令,另外一种就是传统的FPGA GUI界面加入文件进行编译。
make执行
参考文档:https://github.com/SI-RISCV/e200_opensource/blob/master/doc/蜂鸟E203快速上手介绍.pdf
按照参考文档,进行操作如下:
- 将 e200_opensource 项目下载到本机 Linux 环境中,使用如下命令
- 进入到 e200_opensource 目录文件夹下面的 fpga 目录。
cd <your_e200_dir>/fpga
- 设置需要编译的 Core 的具体型号
一定要指定FPGA_NAME,否则器件类型不一样,导致编译出错
make install CORE=e203 FPGA_NAME=nucleikit
- 生成 bitstream 文件
make bit FPGA_NAME=nucleikit
- 生成 mcs 文件
make mcs FPGA_NAME=nucleikit
- 烧录flash
这一步对于 FPGA 工程师应该轻车熟路了,老鸟可以略过。
-
打开 Vivado 软件。
-
打开 Hardware Manager, 会自动连接 FPGA 开发板(如果前提步骤 1 操作正确)。
-
右键 FPGA Device,选择“Add Configuration Memory Device”。
-
选择如下参数的 Flash。
Part n25q128-3.3v
Manufacturer Micron
Family n25q
Type spi
Density 128
Width x1 x2 x4
-
弹出“Do you want to program the configuration memory device now?”,选择 OK
-
在弹出的窗口中的
对话框中选择添加<your_e200_dir>/fpga/nucleikit/system.mcs,然后选择 OK,则开始烧写 Flash,可能会花费几十秒的时间等待。 -
一旦烧写 Flash 成功,则可以通过按开发板上的“FPGA_PROG”按键触发硬件电路使用 Flash 中的内容对 FPGA 重新进行烧录。
注意: FPGA 烧写成功之后,则可以无需再连接“FPGA JTAG 接口”的 USB 连接线。
GUI 加载编译
加入源文件
- 加入verilog文件
- nucleikit里面的src路径
- 加入IP
升级IP
- 加入约束文件xdc
综合出错
没有e203_define.v文件
选择verilog header
实现出错
实现时候报错,需要在xdc中加入
生成bitstream出错
set_property SEVERITY {Warning} [get_drc_checks NSTD-1]
set_property SEVERITY {Warning} [get_drc_checks RTSTAT-1]
set_property SEVERITY {Warning} [get_drc_checks UCIO-1]
![](https://static01.imgkr.com/temp/14cf6ad49a7b47c4b26236f5b9e0f2b3.png)
加入bitstream.tcl
![](https://static01.imgkr.com/temp/828b6f57c50a464582737fed7d467fd1.png)
成功生成bit
![](https://static01.imgkr.com/temp/13f0e34ce9ab4e6a8570446f707b35f2.png)
## 烧录 flash
>这一步与上面烧写 flash 一模一样。
- 打开 Vivado 软件。
- 打开 Hardware Manager, 会自动连接 FPGA 开发板(如果前提步骤 1 操作正确)。
- 右键 FPGA Device,选择“Add Configuration Memory Device”。
- 选择如下参数的 Flash。
>Part n25q128-3.3v
Manufacturer Micron
Family n25q
Type spi
Density 128
Width x1 x2 x4
- 弹出“Do you want to program the configuration memory device now?”,选择 OK
- 在弹出的窗口中的<Configuration file>对话框中选择添加<your_e200_dir>/fpga/nucleikit/system.mcs,然后选择 OK,则开始烧写 Flash,可能会花费几十秒的时间等待。
- 一旦烧写 Flash 成功,则可以通过按开发板上的“FPGA_PROG”按键触发硬件电路使用 Flash 中的内容对 FPGA 重新进行烧录。
注意: FPGA 烧写成功之后,则可以无需再连接“FPGA JTAG 接口”的 USB 连接线。