永发信息网

如果DMA同一通道的几个外设同时请求会怎样

答案:2  悬赏:80  手机版
解决时间 2021-03-18 04:41
  • 提问者网友:喧嚣尘世
  • 2021-03-17 17:07
如果DMA同一通道的几个外设同时请求会怎样
最佳答案
  • 五星知识达人网友:笑迎怀羞
  • 2021-03-17 17:15
DMA有两种方式,一种是查询方式,一种是中断方式。是问这两种方式有什么区别么?查询方式是通过查询标志位来判定DMA结束,中断方式是DMA结束的时候返回中断,在程序中不需要一直查询标志位。
  DMA与中断的区别
  ⑴中断方式是在数据缓冲寄存器满之后发出中断,要求CPU进行中断处理,而DMA方式则是在所要求传送的数据块全部传送结束时要求CPU 进行中断处理。这就大大减少了CPU进行中断处理的次数。
  ⑵中断方式的数据传送是在中断处理时由CPU控制完成的,而DMA方式则是在DMA控制器的控制下,不经过CPU控制完成的。这就排除了CPU因并行设备过多而来不及处理以及因速度不匹配而造成数据丢失等现象。
  DMA方式的优缺点
  在DMA方式中,由于I/O设备直接同内存发生成块的数据交换,因此I/O效率比较高。由于DMA技术可以提高I/O效率,因此在现代计算机系统中,得到了广泛的应用。许多输入输出设备的控制器,特别是块设备的控制器,都支持DMA方式。
  通过上述分析可以看出,DMA控制器功能的强弱,是决定DMA效率的关键因素。DMA控制器需要为每次数据传送做大量的工作,数据传送单位的增大意味着传送次数的减少。另外,DMA方式窃取了始终周期,CPU处理效率降低了,要想尽量少地窃取始终周期,就要设法提高DMA控制器的性能,这样可以较少地影响CPU出理效率。四、通道方式
  输入/输出通道是一个独立于CPU的,专门管理I/O的处理机,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些通道指令由CPU启动,并在操作结束时向CPU发出中断信号,见图6-3。
  输入/输出通道控制是一种以内存为中心,实现设备和内参内直接交换数据的控制方式。在通道方式中,数据的传送方向、存放数据的内存起始地址以及传送的数据块长度等都由通道来进行控制。
  另外,通道控制方式可以做到一个通道控制多台设备与内存进行数据交换。因而,通道方式进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。
  输入/输出通道分类
  按照信息交换方式和所连接的设备种类不同,通道可以分为以下三种类型:
  ⑴字节多路通道
  它适用于连接打印机、终端等低速或中速的I/O设备。这种通道以字节为单位交叉工作:当为一台设备传送一个字节后,立即转去为另一它设备传送一个字节。
  ⑵选择通道
  它适用于连接磁盘、磁带等高速设备。这种通道以“组方式”工作,每次传送一批数据,传送速率很高,但在一段时间只能为一台设备服务。每当一个I/O请求处理完之后,就选择另一台设备并为其服务。
  ⑶成组多路通道
  这种通道综合了字节多路通道分时工作和选择通道传输速率高的特点,其实质是:对通道程序采用多道程序设计技术,使得与通道连接的设备可以并行工作。
全部回答
  • 1楼网友:有你哪都是故乡
  • 2021-03-17 17:54
如果同时发 dma 请求, 会根据优先级, 有一个 dma 先写, 至于另一个什么时候写, 这个时间并不完全确定, 根据手册, dma 最大不能超过一半的总线带宽, 但没有说最小, 所以间隔时间还得看总线情况而定. 通常也就几个周期吧
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯