DMA IP核的详解与实现

本文详细介绍了DMA IP核的使用,包括时钟、复位、两种工作模式(直接DMA和S/G模式)以及配置选项。DMA支持异步和同步时钟,提供了内存到AXI4-Stream和AXI4S到内存的数据传输,并具备数据重对齐功能。在S/G模式下,可以实现多通道和循环传输。同时,文章还讨论了DMA IP的配置参数,如地址宽度、多通道使能和数据宽度等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一,DMA IP核使用详解

1,时钟
DMA具有4个时钟输入,分别是
m_axi_mm2s_aclk:MM2S接口
m_axi_s2mm_aclk: S2MM 接口
s_axi_lite_aclk:AXI4-Lite控制接口
m_axi_sg_clk:S/G模式接口
时钟允许异步时钟和同步时钟。
异步时钟,4个时钟采用不同的时钟源,优点是用户可以使用比DMA更高的时序运行用户程序;在异步时钟下,s_axi_lite_aclk时钟小于m_axi_sg_clk时钟小于m_axi_mm2s_aclk时钟或者m_axi_s2mm_aclk。
同步时钟,m_axi_mm2s_aclk、m_axi_s2mm_aclk和m_axi_sg_clk使用相同的时钟源,s_axi_lite_aclk采用较低的时钟源,

2,复位
axi_resetn信号至少需要16个最慢时钟周期才能复位,并且需要与s_axi_lite_aclk同步。

3,使用说明
DMA使用有两种模式,直接DMA模式和S/G模式。直接DMA模式使用FPGA资源少,直接配置源地址或者目的地址以及传输长度启动传输,当传输完成是,置位IOC_Irq寄存器产生中断。接下来分开说明两种模式下的使用顺序。

(1)直接DMA使用顺序

MM2S通道
置位R/S为1 (MM2S_DMACR)来启动MM2S通道运行。Halted(DMASR)指示MM2S通道正在运行。
MM2S_DMACR的IOC_IrqEn和Err_IrqEn置位使能中断。当AXI DMA配置为直接DMA模式时,不使用延迟中断、延迟计数和阈值计数。
向MM2S_SA寄存器写入
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寒听雪落

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值