AXI DMA

news2024/11/20 15:18:14

PG021

AXI DMA:AXI Direct Memory Access

AXI DMA为内存和AXI4-Stream外设之间提供了高带宽的直接内存访问,其可选的S/G功能可以将CPU从数据搬运任务中解放出来。

 AXI DMA通过AXI4-LITE接口对寄存器做一些配置和获取

MM2S:MemoryMap to Stream 存储器映射(AXI4-Full)到AXI4-Stream

S2MM:Stream to MemoryMap 存储器映射 AXI4-Stream到AXI4-Full

MM2S和S2MM传输完成后都会产生中断

 时钟

m_axi_mm2s_aclk for mm2s interface

m_axi_s2mm_aclk for s2mm interface

s_axi_lite_aclk for axi4-lite control interface

m_axi_sg_clk for Scatter Gather Interface

AXI DMA编程顺序:

Direct Register Mode(简单DMA)

此模式提供了在MM2S和S2MM通道上进行简单DMA传输的配置,只需要较少的FPGA资源。 

通过访问DMACR、源地址或目的地址寄存器和长度寄存器发起DMA传输。

当传输完成后,如果使能了产生中断输出,那么DMASR寄存器相关联的通道位会有效。

DMA的MM2S(存储器映射到Stream)通道的启动顺序

1. Start the MM2S channel running by setting the run/stop bit to 1 (MM2S_DMACR.RS = 1).

2. If desired, enable interrupts by writing a 1 to MM2S_DMACR. IOC_IrqEn and MM2S_DMACR.Err_IrqEn.

3. Write a valid source address to the MM2S_SA register.

4. Write the number of bytes to transfer in the MM2S_LENGTH register.

DMA的S2MM(Stream到存储器映射)通道的启动顺序

1. Start the S2MM channel running by setting the run/stop bit to 1 (S2MM_DMACR.RS = 1).

2. If desired, enable interrupts by writing a 1 to S2MM_DMACR.IOC_IrqEn and S2MM_DMACR.Err_IrqEn.

3. Write a valid destination address to the S2MM_DA register

4. Write the length in bytes of the receive buffer in the S2MM_LENGTH register

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/418644.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

css 盒模型

CSS 中的盒子模型包括 IE 盒子模型和标准的 W3C 盒子模型。 box-sizing(有 3 个值哦):border-box,padding-box,content-box 这两种盒子模型最主要的区别就是 width 的包含范围: 在 标准的盒子模型中,width只是 content 部分(b…

嵌入式51单片机02-独立按键系列

文章目录独立按键一. 独立按键基础知识二. 独立按键系列代码1. 独立按键控制LED(按下灯亮,松开灯灭)(1)仿真电路图(2)源代码(3)实验结果2. 独立按键控制LED(按…

聚观早报|阿里云正式推出通义千问;京东零售开启5年最大组织变革

今日要闻:国家网信办规范生成式人工智能服务;阿里云正式推出通义千问;京东零售开启5年来最大组织变革;飞书将推出智能AI助手「My AI」;乐高将继续扩大在华零售布局国家网信办规范生成式人工智能服务 4 月 11 日&#x…

谈一谈Java的ThreadLocal

目录 先说原理: 再上代码: 运行结果: 先说原理: ThreadLocal 是一个本地线程副本变量工具类,它可以在每个线程中创建一个副本变量,每个线程可以独立地修改自己的副本变量,而不会影响其他线程…

【进阶C语言】自定义类型:结构体,枚举,联合

前言 作者简介:热爱跑步的恒川,正在学习C/C、Java、Python等。 本文收录于C语言进阶系列,本专栏主要内容为数据的存储、指针的进阶、字符串和内存函数的介绍、自定义类型结构、动态内存管理、文件操作等,持续更新! 相关…

ECM8.0——CCCM相关代码

ECM8.0——CCCM相关代码概览predIntraCCCMxCccmCalcModelsxCccmApplyModelxCccmCreateLumaRefxCccmGetLumaRefBufxCccmGetLumaPuBufxCccmCalcRefAverxCccmCalcRefArea概览 函数名称函数作用predIntraCCCM总体代码,根据CCCM技术预测输出xCccmCalcModels计算CCCM滤波器…

Idea+maven+spring-cloud项目搭建系列--14 整合请求参数校验

前言:当我们在进行web 项目的开发时,对于前端传入的参数,都需要进行一些非空必填等的验证,然后在进行业务逻辑的处理,如果写一堆的if 判断很不优雅,那么有没有好的方式来帮忙处理,本文通过hiber…

光电隔离转换器 直流信号放大器 导轨安装DIN11 IPO OC系列

概述: 导轨安装DIN11 IPO OC系列模拟信号隔离放大器是一种将输入信号隔离放大、转换成按比例输出的直流信号混合集成厚模电路。产品广泛应用在电力、远程监控、仪器仪表、医疗设备、工业自控等需要直流信号隔离测控的行业。此系列产品内部采用了线性光电隔离技术相…

DSP中定点与浮点运算

一、定点数及其定标 在定点DSP芯片中,采用的是定点数据数值运算,其操作数一般采用整形数来表示。一个整形数的最大表示范围由DSP芯片给定字长决定。字长越长,表示的范围越大,精度越高。 举例16位字长 每个16数位用1个符号位表示正…

九龙证券|这一刻,资本市场进入全新时代!

2023年4月10日,第一批10家主板注册制企业上市鸣锣敲钟,奏响了触及本钱商场灵魂深处革新的序曲。 动能切换中的我国对于高效资源配置的渴望,与革新进行时的本钱商场对于全面注册制的探究,一起凝集成一股连绵有力之暖流,…

学习安全攻防技能30讲-开篇|别说你没有被安全困扰过

文章目录学习安全攻防技能30讲-开篇|别说你没有被安全困扰过研读开篇安全重要吗?安全难学吗?学习安全攻防技能30讲-开篇|别说你没有被安全困扰过 研读开篇 文中说到一个竞赛叫CTF,这个之前从来没有听过的,作为开发人员涨知识了。…

Java封装

Java封装\huge{Java封装}Java封装 JavaJavaJava的三大特征之一。 作用 告知如何设计对象的属性和方法,将对象完全独立起来。 ❗❗封装原则 对象代表什么,就要封装对应的数据,并且提供对应数据的行为。(尤其是后半句非常重要&a…

012:Mapbox GL显示弹窗Popup

第012个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+mapbox中显示弹窗。 直接复制下面的 vue+mapbox源代码,操作2分钟即可运行实现效果 文章目录 示例效果配置方式示例源代码(共70行)相关API参考:专栏目标示例效果 配置方式 1)查看基础设置:https://xiaozhuan…

PHP医院安全(不良)事件管理系统源码,十多种不良事件类型,上百种报告内容数据表

医院不良事件上报系统源码,PHP医院安全(不良)事件管理系统源码 技术架构:前后端分离,仓储模式, 开发语言:PHP 开发工具:vscode 前端框架:vue2element 后端框架&…

2023年mathorcupB题城市轨道交通列车时刻表思路分析

B 题 城市轨道交通列车时刻表优化问题 列车时刻表优化问题是轨道交通领域行车组织方式的经典问题之一。 列车时刻表规定了列车在每个车站的到达和出发(或通过)时刻,其在实 际运用过程中,通常用列车运行图来表示。图 1 为某一运行图的示例,图…

文件操作【上篇】

文章目录🗃️1.为什么使用文件🗃️2.什么是文件📁2.1.程序文件📁2.2.数据文件📁2.3.文件名🗃️3.文件的打开和关闭📁3.1.文件指针📁3.2.文件的打开和关闭🗃️4.文件的顺序…

I-型糖尿病患者的福音,皮下燃料电池将多余的血糖转化为电能产生胰岛素

I-型糖尿病患者体内不产生胰岛素,患者必须从外部获得激素来调节血糖水平。当前,患者主要通过将胰岛素泵直接连接到身体以获得胰岛素。这些胰岛素泵以及其他医疗器械(如起搏器)需要可靠的能源供应,主要通过一次性或可充…

#mvn 打包ik分词器报错#

场景:在window上安装ik分词器,需要先mvn打包,结果报错 原因:由于jdk版本的问题导致 解决过程 1:打包流程 git clone https://github.com/medcl/elasticsearch-analysis-ik #git clone https://gitcode.net/mirrors/me…

线性分类算法:逻辑回归和Softmax回归

目录(一 )逻辑回归1.1 逻辑回归概述:1.2 逻辑回归的作用与Sigmoid 函数:1.2.1 Sigmoid 函数作用1.3 指数族分布1.4 逻辑回归的损失函数1.5逻辑回归如何求解得到最优解模型方法1.6 逻辑回归鸢尾花分类1.7 逻辑回归做多分类&#xf…

拉取gradle项目报错Could not find method compile() for arguments

拉取gradle项目, 依赖拉不下来, 报错如下: Could not find method compile() for arguments XXXXXX on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler. 找了很多篇文章都没有解决,后来在stack overflow上面找到了答案: Note t…