平台是 Vitis 设计的起点。Vitis 应用是基于平台构建的。
嵌入式平台包含硬件平台和软件平台。
硬件平台
硬件平台即硬件设计中保持静态不变的部分。它包含赛灵思支持存档 (XSA) 文件,此文件是从 Vivado Design Suite 导出的。
硬件平台描述了可供加速应用使用的平台硬件设置和加速资源,例如,输入和输出接口、时钟、AXI 总线和中断。Vitis 会根据需要向硬件设计添加内核和基础架构模块,以便于数据移植。加速内核能够与平台 IP 共享数据,但不能对其进行更改或修改。如需了解有关硬件平台设置的信息,请参阅 安装 Xilinx Runtime 和平台。
软件平台
软件平台作为环境,可供在其中运行软件来为加速应用控制加速内核。固定平台和可扩展平台都需要软件平台。其中包含域设置和启动组件设置,用于复位和配置硬件平台。软件平台的包含下列元素:
- 根文件系统 (RFS)
- 包括 Linux 文件系统的二进制文件、库和设置。在 AMD 提供的通用 rootfs 中,已安装 XRT 以使加速应用可在此 Linux 环境上运行。
- 内核镜像
- 已编译的 Linux 内核。由 AMD 提供的通用内核镜像包含大部分 AMD 外设驱动程序。
- Sysroot
- 用于交叉编译。它可提供多个库,以供在为目标系统编译应用时链接。
所有预构建的 AMD 平台都提供了软件平台。默认情况下,这些平台含 Linux 域,其中启用了 Xilinx Runtime (XRT),以便在平台上可运行加速应用。由于设备树对于每个平台都是唯一的,因此它作为组件随 Linux XRT 域一起在平台内部提供。
为便于平台自定义,可从下载中心的嵌入式 Vitis 平台通用镜像部分下载软件平台。通用镜像包含有以下组件:
- 预构建的 Linux 内核
- 预构建的根文件系统
- 启动文件(预构建的 u-boot.elf、boot.scr、bl31.elf 等)
-
sdk.sh
脚本,用于生成 Sysroot
如果平台中包含 Linux 域,则必须提供 Linux 域组件。这些组件可由 PetaLinux、Yocto 或第三方框架生成。由于这些组件可在给定 FPGA 系列的所有 AMD 演示板之间共享,因此为所有标准平台都提供了通用的 Linux 组件镜像(由 PetaLinux 生成)。
嵌入式平台的源文件可从 GitHub 上的 Vitis 嵌入式平台源文件获取。您可将这些文件用作为自己的定制平台的源文件。要从平台源文件重新生成通用 Linux 组件,请先设置环境变量 COMMON_RFS_KRNL_SYSROOT=FALSE
,然后再运行 make
。