ZYNQ学习之路——AXI DMA
judy 在 周四, 10/14/2021 - 09:19 提交AXI DMA IP核提供了AXI4内存之间或AXI4-Stream IP之间的内存直接访问,可选为分散收集工作模式,初始化,状态和管理寄存器等通过AXI4-Lite 从机几口访问,结构如图1所示,AXI DMA主要包括Memory Map和Stream两部分接口,前者连接PS段,后者连接带有流接口的PL IP核
AXI DMA IP核提供了AXI4内存之间或AXI4-Stream IP之间的内存直接访问,可选为分散收集工作模式,初始化,状态和管理寄存器等通过AXI4-Lite 从机几口访问,结构如图1所示,AXI DMA主要包括Memory Map和Stream两部分接口,前者连接PS段,后者连接带有流接口的PL IP核
DMA中断实例化函数,将要配置的DMA信息先lookupConfig再进行CfgInitialize,DMA采用块模式(Block mode),如果是Sg模式,则配置失败。定时器初始化函数,传入参数有定时器结构、加载值,设备ID。
增加一个AXIDMA章节,这部分内容是很多例程的基础,难度不大但是也不小,需要彻底理解整个运行机制。
在一个工程里,有两个Xilinx AXI DMA。其中一个AXI DMA设备是用于调试的。任何时候,其实只使用一个设备AXI DMA设备。软件使用了bperez77_xilinx_axidma的内核和用户态驱动。
在ZYNQ的PS侧存在Cache,CPU与DDR之间通过Cache进行交互,数据暂存在Data cache中,在处理器对DDR进行写数据操作时,如果不将数据通过Cache送入DDR,DDR中的数据不会变化。在进行DMA操作时,如果没有对Cache进行适当的操作,可能导致以下两种错误
AXI_STREAM的时序:AXI_STREAM接口一般用于大规模持续的无地址映射关系的流数据传输......
AXI-DMA的linux驱动
一、搭建硬件环境
vivado版本2017.4,芯片为7010,不过不管什么版本和芯片大致步骤是一样的
一、AXI DMA介绍