首页 > 其他分享 >关于DMA(三)

关于DMA(三)

时间:2023-06-19 23:11:06浏览次数:40  
标签:DMA 存储器 FIFO 传输 关于 数据 外设


1. DMA 中断

  • 半传输中断;
  • 传输完成;
  • 传输错误;
  • FIFO下溢或上溢;
  • 直接模式错误:外设到存储器的直接模式下,如果存储器没有获得总线使用权,导致外设传输的数据并没有送到存储器中,此时拉高中断标志位。

2. DMA 传输状态

  • 外设到存储器
    • 外设首先发起请求,送入DMAC的仲裁模块,决定哪个外设可以进行数据传输。
    • 外设地址计算。
    • DMA接收到数据,并将数据送入FIFO中(直接模式下没有FIFO)。
    • 存储器端口的访问可以由FIFO达到阈值后触发(突发传输,使用FIFO模式)或DMA拿到数据之后立即触发(使用直接模式)。
    • 存储器端口仲裁,决定向哪个存储器写入数据。
    • 存储器地址计算。
    • 向存储器写入数据。
  • 存储器到外设
    • 存储器端口仲裁,决定从哪个存储器读出数据。
    • 存储器地址计算。
    • 从存储器中取出数据存在FIFO中,以保证DMA获得总线使用权后可以立即进行数据传输。
    • 外设端口仲裁。
    • 外设地址计算。
    • 向外设地址写入数据。

标签:DMA,存储器,FIFO,传输,关于,数据,外设
From: https://www.cnblogs.com/qianbinbin/p/17492471.html

相关文章

  • 关于 SAP Commerce Cloud 本地安装用 root user 执行安装脚本的问题
    在linuxserver上执行./install-rb2c_acc是不是不能用rootuser去做?遇到警告消息:Errorcreatingbeanwithname'defaultSolrServerService'definedinclasspathresource[global-solrserver-spring.xml]:Invocationofinitmethodfailed;nestedexceptionisde.hy......
  • 关于DMA (二)
    参考https://www.st.com/resource/zh/application_note/an4031-using-the-stm32f2-stm32f4-and-stm32f7-series-dma-controller-stmicroelectronics.pdf1.DMA数据流/通道以STM32F2为例介绍数据流和通道的概念。一个DMA控制器可以提供8个数据流,每个数据流有8个可选通......
  • Java学习_关于变量
    关于变量的使用主要分为三步骤:1.变量的声明:这一部分包括变量类型+变量名称2.变量的赋值:变量名称=数据3.变量的使用:直接引用名称即可。 这里要注意一点,如果你想要使用变量,就必须要进行这三步,尽管有时候你不知道变量要赋一个什么值,那也得赋值,你可以随便给个0或者其他的值,赋值......
  • 一些关于智能硬件的随想
    一些关于智能硬件的随想最近在给自己的开源项目LithosphereIoTPlatform补文档。LithosphereIoT平台里,包括了名为sand-demo演示范例。在项目文档z中,hello系列教程里的,也包括了几个软硬件一体的范例。既然是IoT平台的范例,肯定少不了要出现智能硬件。基本上来说,在范例中出现的......
  • 谈一谈PHP中关于非法参数名传参问题
    在CTF中有些时候GET、POST等方法传参中参数名可能存在一些非法字符导致传参问题。下面讲述的也算是CTF比赛中常见的一种Trick注意:这种Trick只能在PHP版本小于8时有效,当PHP版本大于等于8并不会出现这种转换错误在PHP官方文档中有解释当变量名中出现点和空格时,PHP的处理方式https://w......
  • 各大电商平台关于API接口的一些知识分享和示例
    随着互联网的发展,电子商务也成为了内部的一个热门话题,各大电商平台在这种情况下开发了各种API接口,为各种企业提供了基础数据的支持,加速了市场竞争。本文将重点讨论电商API接口相关的一些知识分享。一、电商API接口的重要性对于电商平台来说,API接口就像是一座桥梁,它可以将......
  • 关于DMA (一)
    参考https://blog.csdn.net/zhejfl/article/details/82555634https://blog.csdn.net/qq_25814297/article/details/1092568091.CPU与外设数据传送方式主要有程序传送方式和中断传送方式。程序传送方式在程序控制下进行数据输入/输出操作,分为无条件(无需考虑外设状态......
  • 关于flutter框架安卓应用抓包问题,以及解决方法
    参考文档https://bbs.kanxue.com/thread-261941.htm一.从安装的app所在文件夹目录中提出libflutter.socd/data/app/包名/lib/xxx/..../...libflutter.so二.将其拖入ida中进行分析字符串窗口搜索ssl_server按x进入F5看了一下和上面博客说的相似不理解上面说的也......
  • 关于Cloud-磁盘-分区-物理边界的扩展-扩容
    对于一块磁盘,一般来说,是需要进行分区(也有直接对磁盘进行格式化的情况)、然后创建文件系统后,挂载到系统中才能使用 要扩容,这样主要就是分为两种情况1、对于整块磁盘、创建了文件系统的,想对其扩容2、对于分区,创建了文件系统的,想对其扩容 对于整块磁盘文件系统的扩容,方法比较......
  • 关于ASP.NET.CORE中的Failed to read parameter "string param" from the request bod
    先上报错信息Microsoft.AspNetCore.Http.BadHttpRequestException:Failedtoreadparameter"stringparam"fromtherequestbodyasJSON.--->System.Text.Json.JsonException:'s'isaninvalidstartofavalue.Path:$|LineNumber:0|By......