永发信息网

什么叫DMA请求??

答案:3  悬赏:10  手机版
解决时间 2021-03-10 16:07
  • 提问者网友:一抹荒凉废墟
  • 2021-03-10 10:26
什么叫DMA请求??
最佳答案
  • 五星知识达人网友:思契十里
  • 2021-03-10 11:12
例如:数据搬运,你要告诉CPU你搬的数据的源地址,目的地址,然后启动,完成一个字节搬运,要浪费很多个CPU 时钟,如果有多个字节,以上动作需要重复N次,此时,CPU完全被这些动作占用了。如果使用DMA,你只需要告诉DMA寄存器,你的源地址,目的地址,数据长度,动作类型(复制,异或等等),启动以后就可以丢给DMA处理,解放CPU了,差不多1个CLOCK,就能完成一个字节的操作。
所以,相比起来,如果数据不是很少的话,使用DMA能大大节约系统资源与时间。
全部回答
  • 1楼网友:第幾種人
  • 2021-03-10 13:23
dma的概念:dma是在专门的硬件( dma)控制下,实现高速外设和主存储器之间自动成批交换数据尽量减少cpu干预的输入/输出操作方式。通常有两种方式: ◎独占总线方式 ◎周期挪用方式 (2)dma的组成: ◎主存地址寄存器 ◎数据数量计数器 ◎dma的控制/状态逻辑 ◎dma请求触发器 ◎数据缓冲寄存器 ◎中断机构 (3)dma的传送数据的过程:由三个阶段组成 ◎传送前的预处理:由cpu完成以下步骤 向dma卡送入设备识别信号,启动设备,测试设备运行状态,送入内存地址初值,传送数据个数, dma的功能控制信号。 ◎数据传送:在dma卡控制下自动完成 ◎传送结束处理 dma 卡上应包括通用接口卡的全部组成部分,并多出如下内容: 主存地址寄存器,传送字数计数器,dma控制逻辑,dma请求,dma响应,dma工作方式,dma优先级及排队逻辑等 一次完整的dma传送过程: dma 预处理,cpu向dma送命令,如dma方式,主存地址,传送的字数等,之后cpu执行原来的程序 dma 控制在 i/o 设备与主存间交换数据: 准备一个数据, 向cpu发dma请求,取得总线控制权,进行数据传送,修改卡上主存地址,修改字数计数器内且检查其值是否为零,不为零则继续传送,若已为零,则向 cpu发中断请求. 参考资料:
  • 2楼网友:罪歌
  • 2021-03-10 12:51
就是直接数据存储器访问请求
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯