本文介绍如何在F3实例上使用Vitis 2020.1制作镜像文件,并烧录到FPGA芯片中。
步骤一:远程连接实例
FaaS_F30010_VITIS_2020_1镜像已配置了桌面环境及VNC Server,建议您通过VNC Server远程连接F3实例。具体操作,请参见通过密码认证登录Linux实例。
步骤二:初始化软件环境
您每创建一个F3实例,均需要执行以下操作初始化当前软件环境。
- 运行以下命令,通过VNC Server指定环境分辨率。
vncserver -geometry 2560x1440
回显信息如下:

- 运行以下命令,对FaaS_F30010_VITIS_2020_1镜像中已预安装的FaaS平台使用VITIS所需的软件环境进行初始化。
source /root/faasTools/vitis_setup.sh
回显信息如下,表示初始化完成。

步骤三:创建工程
环境准备完成后,您即可通过VITIS启动工程,并在GUI界面下创建工程。
- 执行
vitis
命令启动工程。
回显信息如下,表示工程启动成功。

- 工程启动成功后,请执行以下步骤,在VITIS的GUI界面创建工程。
- 在打开的VITIS窗口,单击PROJECT下的Create Application Project。

- 在打开的New Application Project对话框中,单击左侧区域的,然后单击右下角Finish。

步骤四:仿真
VITIS支持Emulation-SW、Emulation-HW两种仿真形式。
- 在VITIS的Assistant页签中,选择。
- 在Emulation-SW [Software Emulation]上单击鼠标右键,选择Build。
- 在Emulation-SW [Software Emulation]上单击鼠标右键,选择进行机型仿真。
运行结果如下所示:

步骤五:制作镜像
由于VITIS默认生成的镜像文件中包含.bit格式的文件,而FaaS要求上传的文件格式为.dcp,因此您需要先进行相关设置,再制作FPGA镜像。
- 在VITIS的Assistant页签的右上角,单击
图标。
- 在打开的Project Settings对话框中,选择。
- 在右侧的vadd区域中,将V++ linker options配置项设置为以下内容。然后单击Apply,再单击Apply and Close。
--advanced.param compiler.acceleratorBinaryContent=dcp
- 返回VITIS的Assistant页签,选择。
- 在Hardware [Hardware]上单击鼠标右键,选择Build进行镜像制作。
制作过程会持续数个小时,制作完成后,您可以进入工程目录的Hardware目录下,然后执行
ls
命令,查看生成的host可执行二进制文件vadd及镜像文件binary_container_1.xclbin。如下所示:
[root@iz2zec7rvsxxxxxxx Hardware]# ls
a.xclbin guidance.html
binary_container_1.build guidance.pb
binary_container_1-krnl_vadd-compile.cfg makefile
binary_container_1-link.cfg package.build
binary_container_1.ltx package.cfg
binary_container_1.mdb src
binary_container_1.xclbin vadd
binary_container_1.xclbin.info vadd_Hardware.build.ui.log
binary_container_1.xclbin.link_summary v++_package.log
binary_container_1.xclbin.sh v++.package_summary
common-config.cfg xcd.log
- 执行如下命令,生成用于上传镜像的压缩文件。
[root@iz2zec7rvsxxxxxxx Hardware]# vitis_xclbin_split.sh binary_container_1.xclbin
执行结果如下:
XRT Build Version: 2.6.0 (2020.1)
Build Date: 2021-03-08 10:50:41
Hash ID: 80107ebc7376dafc8e1c9f5043c81c6f1dcc9dbb
------------------------------------------------------------------------------
Warning: The option '--output' has not been specified. All operations will
be done in memory with the exception of the '--dump-section' command.
------------------------------------------------------------------------------
Reading xclbin file into memory. File: binary_container_1.xclbin
Section: 'BITSTREAM'(0) was successfully written.
Format: RAW
File : 'faas20210311-092706.dcp'
Leaving xclbinutil.
XRT Build Version: 2.6.0 (2020.1)
Build Date: 2021-03-08 10:50:41
Hash ID: 80107ebc7376dafc8e1c9f5043c81c6f1dcc9dbb
------------------------------------------------------------------------------
Warning: The option '--output' has not been specified. All operations will
be done in memory with the exception of the '--dump-section' command.
------------------------------------------------------------------------------
Reading xclbin file into memory. File: binary_container_1.xclbin
Section: 'EMBEDDED_METADATA'(2) was successfully written.
Format: RAW
File : 'faas20210311-092706.xml'
Leaving xclbinutil.
to_aliyun/
to_aliyun/faas20210311-092706.xml
to_aliyun/faas20210311-092706.dcp
Generate Image :Image20210311-092706.tar.gz
如上所示,最终生成的
Image20210311-092706.tar.gz文件可用于上传制作镜像。具体操作,请参见
使用faasutil。
说明 FaaS_F30010_VITIS_2020_1镜像中已预装了faasutil工具,您可以执行source /root/faasTools/vitis_setup.sh
命令后使用。
步骤六:上板验证
通过FaaS_F30010_VITIS_2020_1镜像中预装的faasutil工具完成镜像制作及镜像加载后,您可以使用命令行或GUI两种方式进行上板验证。
- 使用GUI验证:
- 在VITIS的Assistant页签,选择。
- 在Hardware [Hardware]上单击鼠标右键,选择。
运行结果如下所示,表示将FPGA镜像已烧录到FPGA芯片。

- 使用命令行验证:
在工程目录的Hardware目录下,执行如下命令进行验证:
[root@iz2zec7rvsxxxxxxx Hardware]# ./vadd binary_container_1.xclbin
运行结果如下所示,表示将FPGA镜像已烧录到FPGA芯片。
Loading: 'binary_container_1.xclbin'
TEST PASSED