H2C 流程示例 - 4.1 简体中文

DMA/Bridge Subsystem for PCI Express 产品指南 (PG195)

Document ID
PG195
Release Date
2022-11-16
Version
4.1 简体中文

在 H2C 流程示例中,loaddriver.sh 会为所有可用通道加载器件。dma_to_device 用户程序用于将数据从主机传输到卡。

H2C 流程示例顺序如下:
  1. 打开 H2C 器件并初始化 DMA。
  2. 用户程序会读取数据文件、分配缓冲器指针并将该指针随特定器件 (H2C) 和数据大小一起传递到写入函数。
  3. 驱动程序会基于输入数据/大小创建描述符,并以描述符起始地址和任何相邻描述符(如有)来初始化 DMA。
  4. 驱动程序写入控制寄存器,以启动 DMA 传输。
  5. DMA 从主机读取描述符,并开始处理每个描述符。
  6. DMA 从主机提取数据并将数据发送至用户侧。基于设置完成所有数据的传输后,DMA 会向主机生成中断。
  7. ISR 驱动程序会处理中断以确定正在发送中断的引擎,并检查状态以查看是否存在任何错误。它还会检查正在处理的描述符数量。
  8. 状态正常后,驱动会将传输字节长度返回至用户侧,以便在用户侧执行相同的检查。