以下内容版权属于“FPGA 那点事儿”运营团队
转载自“FPGA 那点事儿”公众号
PCIE 中 DMA 读过程:
1.驱动程序向操作系统申请一片物理连续的内存;
2.主机向该地址写入数据;
3.主机将这个内存的物理地址告诉 FPGA;
4.FPGA 向主机发起读 TLP 请求—连续发出多个读请求;
5.主机向 FPGA 返回 CPLD 包—连续返回多个 CPLD;
6.FPGA 取出 CPLD 包中的有效数据;
7.FPGA 发送完数据后通过中断等形式通知主机 DMA 完成;
PCIE 中 DMA 写过程:
1.驱动程序向操作系统申请一片物理连续的内存;
2.主机将这个内存的物理地址告诉 FPGA;
3.FPGA 向主机发起写 TLP 请求,并将数据放入 TLP 包中—连续发出多个写
请求;
4.FPGA 发送完数据后通过中断等形式通知主机 DMA 完成;
5.主机从内存中获取数据;
如果是参考 X A PP1052,一定要注意几点:
1.1 连续内存
评论1
最新资源