A7-3588 · 异构开发
RK3588 与 FPGA 协同开发
系统组成
A7-3588 由 RK3588 与 FPGA 协同工作,两者通过 PCIe 3.0 ×4 连接。RK3588 沿用核心 BSP 和已引出的外设支持,承担操作系统、驱动管理与应用运行;FPGA 承担工程定义的硬件逻辑,并通过 PCIe 与主机侧交换控制信息和业务数据。
完整的软件与逻辑链路包括 FPGA 工程、RK3588 内核驱动和用户程序。寄存器布局、数据格式和任务完成条件应作为工程协议统一维护。
工程构建与集成
- 固定 BSP 源码、内核配置和交叉编译环境,保存本次构建使用的版本记录。
- 构建 FPGA 工程,完成逻辑检查和时序检查,生成工程发布的配置文件。
- 按工程既定流程加载 FPGA 配置,使 PCIe 逻辑在主机枚举时就绪。
- 将配套驱动纳入 BSP 构建,或使用与运行内核一致的头文件、配置和编译器构建模块。
- 启动系统,检查 FPGA 设备 ID、链路状态、BAR 资源与驱动加载日志。
- 构建并安装用户程序,使用与 FPGA 和驱动配套的协议定义运行功能测试。
分层测试
首先完成 PCIe 链路与枚举测试,记录设备 ID、协商速率和宽度。随后执行驱动初始化测试,检查资源申请、设备接口建立和退出清理。控制通路测试应选择协议允许的状态读取与控制操作。数据通路从少量数据开始,逐步增加长度与连续运行时间。最后开展业务测试,记录输入条件、结果正确性、吞吐、延时、CPU 占用和温度。
版本配对与发布
每次发布将 BSP、内核、FPGA 配置、驱动和用户程序作为一组版本管理,同时保存构建记录、文件校验值、协议版本和测试结果。升级其中任一组件后,重新执行枚举、控制、数据与业务测试。更多 PCIe 排查见 PCIe。