转载地址:http://blog.csdn.net/sunjiajiang/article/details/7945057

DMA和burst不是一个概念。

DMA传送不经过CPU的控制,假如硬盘的数据不能经过DMA控制器读到内存,那么每完成一次将硬盘的数据读出来,再存放到内存的操作,都要通过CPU运行几条读写指令来完成,这时CPU就做不了别的事了,如果有DMA控制器,则这个过程不需要CPU的参与,只需要占用总线就可以了。CPU还可以去完成别的运算。

Burst操作还是要通过CPU的参与的,与单独的一次读写操作相比,burst只需要提供一个其实地址就行了,以后的地址依次加1,而非burst操作每次都要给出地址,以及需要中间的一些应答、等待状态等等。如果是对地址连续的读取,burst效率高得多,但如果地址是跳跃的,则无法采用burst操作

一般芯片的dma有基本功能。

1、普通的内存、外设间互传数据,一次性的。

PCI设备DMA控制器,设置好后DMA 控制器的寄存器,PCI设备就会通过PCI总线向其他设备发送信号。

2、支持链表的,美其名曰“scatter”,内核有struct scatter可以参考。

说一下注意点:

dma有burst、burst size、transfer的概念:

burst:

dma实际上是一次一次的申请总线,把要传的数据总量分成一个一个小的数据块。比如要传64个字节,那么dma内部可能分为2次,一次传64/2=32个字节,这个2(a)次呢,就叫做burst。这个burst是可以设置的。这32个字节又可以分为32位 *8或者16位*16来传输。

transfer size:

就是数据宽度,比如8位、32位,一般跟外设的FIFO相同。

burst size:

就是一次传几个 transfer size.

配置数据宽度为32位。一次传8个32位=32个字节。

那么如果总长度为128字节,那么实际dma设置的长度为 128/32 = 4.

很好的一篇文章:基于FPGA的PCI接口DMA传输的设计与实现

http://www.docin.com/p-755091145.html

PCI总线 DMA burst 基本概念相关推荐

  1. PCIe扫盲——PCI总线基本概念

    转载地址:http://blog.chinaaet.com/justlxy/p/5100053077 PCI是Peripheral Component Interconnect(外设部件互连标准)的缩 ...

  2. pci总线协议学习笔记——PCI总线基本概念

    1.pci总线概述 (1)PCI,外设组件互连标准(Peripheral Component Interconnection),是一种由英特尔(Intel)公司1991年推出的用于定义局部总线的标准; ...

  3. PCI总线体系结构概述

    §1.PCI总线体系结构概述  PCI总线体系结构是一种层次式的(Hierarchical)体系结构.在这种层次式体系结构中,PCI桥设备占据着重要的地位,它将父总线与子总线连接在一起,从而使整个系统 ...

  4. PCI总线的桥与配置(一)

    在PCI体系结构中,含有两类桥片,一个是HOST主桥,另一个是PCI桥.在每一个PCI设备中(包括PCI桥)都含有一个配置空间.这个配置空间由HOST主桥管理,而PCI桥可以转发来自HOST主桥的配置 ...

  5. PCI——第1章——PCI总线的基本知识

    摘要:对PCI 总线基本知识的整理,建议看完三章内容后再来进行总结或者阅读 目录 1.PCI基础知识 1. 1 PCI 总线的组成结构 HOST主桥 PCI 总线 PCI 设备 HOST处理器 PCI ...

  6. PCI——第3章——PCI 总线的数据交换

    摘要:PCI 总线的数据交换 前三章还是在讨论PCI的东西,基本了解了PCI之后,再进入后面PCIE的深入学习. 目录 第 3 章 PCI 总线的数据交换 3. 1 PCI 设备 BAR 空间的初始化 ...

  7. Kernel PCI总线框架

    2019独角兽企业重金招聘Python工程师标准>>>     1,PCI总线介绍 在PC时代的早期,外部设备通过ISA总线接入计算机.ISA总线只有24根地址线,因此其上的外部设备 ...

  8. Linux下DMA添加两个channel,基于Linux嵌入式系统的ISA总线DMA的实现

    1.DMA概述本文引用地址:http://www.eepw.com.cn/article/151577.htm DMA是外设与主存之间的一种数据传输机制.一般来说,外设与主存之间存在两种数据传输方法: ...

  9. PCIe扫盲——PCIe总线怎样做到在软件上兼容PCI总线

    转自:http://blog.chinaaet.com/justlxy/p/5100053245 前面的文章中多次说道,PCIe总线在软件上是向前兼容PCI总线的.因此,PCIe总线完整的继承了PCI ...

最新文章

  1. PyTorch中nn.Module类简介
  2. python考试编程题
  3. C语言易错图形题--打印n行n列的空心正方形图案
  4. 图解梯度下降背后的数学原理
  5. linux中流设备_Linux设备驱动子系统终极弹
  6. CentOS6.6配置iptables
  7. win命令安装 安装cmake_win10下VSCode+CMake+Clang+GCC环境搭建教程图解
  8. 深度学习(六)caffe入门学习
  9. 跨sql server查询mysql_SQL Server 跨数据库查询数据的方法
  10. C语言浮点数据在内存中的存储方式
  11. 完整的Web应用程序Tomcat JSF Primefaces JPA Hibernate –第1部分
  12. stl iterator_在C ++ STL中使用const_iterator访问字符列表的元素
  13. 免责协议怎么写_离婚后房产过户协议怎么写?需要公证吗?
  14. 深度学习自学(七):腾讯移动端开源框架ncnn学习总结
  15. word中设置论文中英文参考文献对齐方法
  16. java 微信卡券开发 --创建微信卡券
  17. 关于xmind6图标组导入教程
  18. part Ⅲ Sightseeing and Visits 游览和参观??
  19. 微信小程序注册/登陆,若依后台获取token
  20. java测试开发工程师,必须要明白的几处知识(附面试问题)

热门文章

  1. HUAWEI Mate RS 保时捷设计国内开售 重新定义奢华手机
  2. 搜狗浏览器如何设置截屏快捷键?
  3. 计算机开机响三短嘀嘀,电脑主机滴滴响开不了机1长3短
  4. 数据挖掘——时间序列算法之MA模型
  5. 开源解决方案,随笔记录
  6. Winxp U盘无法复制磁盘写保护怎么解决
  7. 推荐一个多功能且实用的shopee大数据分析系统―—知虾数据
  8. h5游戏平台互动小游戏分享:打地鼠游戏攻略
  9. 物流管理解释一下什么叫物流
  10. 允许蜘蛛抓取html的代码,如何禁止蜘蛛获取页面内容