PL 端生成测试数据,通过 AXI DMA 写入 PS 端 DDR,再由 Linux 侧程序将 DDR 中的数据写入 PS 侧 SSD2,完成数据留盘功能。
PL 端测试数据 // 当前先用假数据验证,后期替换为真实 AD 采集数据
↓
AXI-Stream // 将 PL 端数据转换为 AXI-Stream 格式,供 DMA 接收
↓
AXI DMA S2MM // Vivado 中加入的 AXI DMA IP 核,负责把 AXI-Stream 数据写入 PS DDR
↓
PS DDR // 高速临时缓存,存放 DMA 写入的数据
↓
Linux 留盘程序 // 从 DDR 中读取数据,按指定格式写入文件
↓
文件系统 // 完成文件到 NVMe SSD 的写入
↓
SSD2// 保存测试数据
梳理与 PS 相关的硬件接口,包括 PS DDR、UART、启动介质、PCIe、SSD2。
完成 PL 端测试数据产生模块、AXI-Stream 数据格式转换模块的实现。
加入 AXI DMA IP,连接 AXI DMA 和 PS,实现 PL 端到 PS DDR 的数据传输通路。
生成 bitstream,并导出包含 bitstream 的 .xsa。
用 .xsa 创建 Vitis 裸机工程,并用裸机程序验证 DMA 通路。
基于 .xsa 制作 Linux 系统。
测试 SSD2 是否可写。
在 Linux 中完成 DMA 与留盘功能开发。
本文章使用limfx的vscode插件快速发布