DMA方式总结

原创 2016年08月30日 20:20:33

Direct Memory Access
DMA很牛,直接在I/O设备和主存之间打通了一个通路。
值得关注的是,若出现DMA和CPU同时访存的情况,DMA优先级更高。具体的方法是DMA采用周期窃取的方式占用一个存取周期。

一般只有CPU才能进入主存,现在加了DMA接口,就会出项两者的争抢情况。
所以为了应对这种情况,有三种策略:

1.停止CPU访问主存(太霸道了):CPU是DMA的小弟。。。
听一听以下的描述:当外设要去传送一批数据时,由DMA接口向CPU发送一个停止信号(what?这么大胆),要求:
CPU放弃地址线的使用权
CPU放弃数据线的使用权
CPU放弃控制线的使用权
数据传送结束后,DMA通知CPU可以使用主存了

适用情景:适用数据传输率很高的I/O设备实现成组的数据传送。

2.周期挪用

DMA请求时,I/O设备挪用或窃取总线占用权一个或几个主存周期

3.DMA和CPU交替访问:
适用于CPU的工作周期比主存存取周期长的情况。这样可以将CPU的周期拆分成两部分,前一部分用于DMA访存,后一部分用于CPU访存。
硬件逻辑更为复杂一些。

版权声明:本文为博主原创文章,未经博主允许不得转载。

DMA(二) - DMA接口函数

DMA接口函数arch/arm/mm/dma-mapping.c 主要的作用是将虚拟地址映射到物理地址。 一致性DMA映射 dma_alloc_coherent dma_mmap_cohere...
  • luckywang1103
  • luckywang1103
  • 2015年09月30日 19:04
  • 1576

DMA理解

单片机的DMA使用心得 本人也是最近才深入了解一下DMA,前期使用单片机的时候基本上没有用到。一是不需要用到,二是心理上觉得DMA比较困难,所以不使用。在学习的过程中有一些心得体会,与大家分享一下。...
  • Sun19910114
  • Sun19910114
  • 2016年11月01日 14:16
  • 1003

DMA周期窃取

DMA周期窃取   2010-05-23 22:46:18|  分类: 笔试题库|字号 订阅 问题:DMA每次在指令执行完才窃取周期?答案:错。指令执行完检...
  • gao8658
  • gao8658
  • 2012年11月01日 23:00
  • 3023

接口使用的注意事项

接口则是抽象类更彻底的抽象; 接口是一种规范,接口规定了实现者必须向外提供哪些服务,对于接口的调用者,调用者要掉哪些方法  例如:      【修饰符】 interface 接口名 extend...
  • u011230322
  • u011230322
  • 2016年08月09日 21:15
  • 154

linux之DMA-BUF API使用指南

DMA-BUF API使用指南 by JHJ(jianghuijun211@gmail.com) 转载出自:http://blog.csdn.net/crazyjiang 本文将会告诉驱动开发者...
  • crazyjiang
  • crazyjiang
  • 2012年09月04日 02:56
  • 10024

DMA与普通中断方式的区别

普通中断方式是在数据缓冲寄存器满后,发中断请求,CPU进行中断处理 DMA方式则是以数据块为单位传输的,在所要求传送的数据块全部传送结束时要求CPU进行中断处理,大大减少了CPU进行中断处理的次数 ...
  • u012861978
  • u012861978
  • 2016年06月30日 22:46
  • 3616

I/O的控制方式——查询,中断,dma

早期,I/O串行,查询方式。 发展,I/O并行,两种方式其一是中断方式,其二是dma方式,使得外部设备能直接与主存储器信息交换,减轻了cpu的工作量。 技术继续发展,出现通道结构,实质上为高性能的...
  • dark_tone
  • dark_tone
  • 2016年09月22日 02:18
  • 1165

linux之DMA API

通用设备的动态DMA映射 by JHJ(jianghuijun211@gmail.com)   本文描述DMA API。更详细的介绍请参看Documentation/DMA-API-...
  • bugouyonggan
  • bugouyonggan
  • 2013年05月13日 17:16
  • 9311

全志H3平台DMA框架

1 概要         Dmaengine是linux内核dma驱动框架,针对DMA驱动的混乱局面内核社区提出了一个全新的框架驱动,目标在统一dma API让各个模块使用DMA时不用关心硬件细节...
  • dlijun
  • dlijun
  • 2016年06月20日 10:07
  • 3018

DMA的控制方式

转自:http://www.worlduc.com/blog.aspx?bid=3791093 DMA的控制方式 DMA方式的基本概念   直接内存访问(DMA)是一种完...
  • gdt_A20
  • gdt_A20
  • 2012年02月24日 11:20
  • 5058
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DMA方式总结
举报原因:
原因补充:

(最多只允许输入30个字)