处理器8237幻灯片.ppt

  1. 1、本文档共100页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.7直接存储器存取DMA DMA传送的特点 在一般的程序控制传送方式(包括查询与中断方式)下数据从存储器送到外设,或从外设送到存储器,都要经过CPU的累加器中转,再加上检查是否传送完毕以及修改内存地址等操作都由程序控制,要花费不少时间。 采用DMA传送方式是让存储器与外设,或外设与外设之间直接交换数据,不需经过累加器,减少了中间环节,并且内存地址的修改,传送完毕的结束报告都由硬件完成,因此大大提高了传输速度。 DMA传送方式的优点是以增加系统硬件的复杂性和成本为代价的,因为DMA方式和程序控制方式相比,是用硬件控制代替了软件控制。另外,DMA传送期间CPU被挂起,部分或完全失去对系统总线的控制,这可能会影响CPU对中断请求的及时响应与处理。因此,在一些小系统或速度要求不高、数据传输量不大的系统中,一般并不用DMA方式。 DMA传送虽然脱离CPU的控制,但并不是说DMA传送不需要进行控制和管理。通常是采用DMA控制器来取代CPU,负责DMA传送的全过程控制。目前DMA控制器都是可编程的大规模集成芯片,且类型很多,如Z80-DMA、INtel8257、8237。 DMA传送的过程 DMA传送方式和中断方式一样,从开始到结束全过程有几个阶段。在DMA操作开始之前,用户应根据需要先对DMA控制器(DMAC)编程,把要传送的数据字节数、数据在存储器中的起始地址、传送方向、DMAC的通道号等信息送到DMAC,这叫做DMAC的初始化。初始化之后,就等待外部设备准备好来申请DMA传送。 DMA传送过程分为四个阶段 申请阶段 在初始化工作完成之后,若外部设备要求系统以DMA方式为它服务,则向DMAC发出DMA请求信号DREQ;DMAC如果允许外部设备的请求,就进一步向CPU发出总线保持请求信号HOLD REQUSE(HRQ),即总线请求信号,申请占用总线,这就是申请阶段。 响应阶段 CPU在每个总线周期结束时检测HRQ是否有效,当HRQ有效,并且总线锁定信号LOCK无效时,响应DMAC的HRQ请求,进入保持状态,使CPU一侧的三总线“浮空”,CPU脱开三总线,同时以总线保持回答信号HOLDACK(HLDA),即总线回答信号,通知DMAC,总线已让出,DMAC一侧的总线“接通”,此时,DMAC正式成为系统的主控者。 数据传送阶段 DMA接管三总线成为主控者后,一方面以DMA请求回答信号DMACK通知发出请求外部设备,使之成为被选中的DMA传送设备;同时DMAC行使总线控制权,向存储器发地址信号和向存储器及外设发读写控制信号,控制数据按初始化设定的方向传送数据。 传送结束阶段 在规定字节传送完后,DMAC通知外设,外设收到此信号后,使DMA请求信号变为无效,进而导致总线请求信号变为无效,DMAC释放总线,CPU重新占用总线。DMA传送结束 DMA操作类型 DMA传送主要是作数据传送操作、但也包括一些并不是进行数据传送的操作,如数据校验和数据检索等。 1.数据传送 数据传送是把源地址的数据传送到目的地址去。一般来说,源地址和目的地址都可以是存储器,也可以是I/O设备,并且,DMA传送的读/写操作是站在存储器的立场来说的。即读,是指从存储器读,DMA写是指向存储器写,而不是站在I/O设备的立场上来定义DMA写的。 2.数据校验 校验操作并不进行数据传送,只对数据块内部的每个字节进行某种校验,因此,DMA通道用于校验操作时,DMAC不发送存储器或I/O设备的读/写控制信号。但是,DMA过程的几个阶段还是一样,要由外部设备向DMAC提出申请,DMAC响应,进入DMA周期,只不过进入DMA周期后,不是传送数据,而是对一个数据块的每个字节进行校验,直到所规定的字节类验完毕或外设撤除DMA请求为止。这种数据校验操作一般安排在读数据块之后,以便校验所读的数据是否有效。 3.数据检索 数据检索操作和数据校验操作一样,并不进行数据传送,只是对在指定的内存区内查找某个关键字节或某几个关键数据位是否存在,如果查到了,就停止检索。具体检索方法是,要查找的关键字节或关键位写入比较寄存器,然后从源地址的起始单元开始,逐一读出数据与比较器内的关键字节或关键位进行比较。若两者一致,则达到字节匹配,停止检索,并在状态字中标记或申请中断,表示要查找的字节或数据位已经查到。若两者不一致,则表示未查到要查找的字节或数据位。 DMA操作方式 DMA操作方式是指进行上述每种DMA操作类型时,每

文档评论(0)

love87421 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档