网站大量收购闲置独家精品文档,联系QQ:2885784924

第9章 中断控制器、计数定时器及DMA控制器.ppt

第9章 中断控制器、计数定时器及DMA控制器.ppt

  1. 1、本文档共69页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 中断控制器、计数定时器及DMA控制器

DMA特点 在内存与I/O设备之间或内存与内存之间直接传送数据,不需要CPU的中转。 主要用于需要高速大批量数据传送的系统中,如磁盘存取、高速数据采集等系统中。 需要有DMA硬件(DMA控制器)。 DMA传送的过程 DMA传送从开始到结束全过程分为几个阶段,在DMA操作开始之前,用户应根据需要先对DMA控制器编程,把要传送的数据字节数据,数据在存储器中的起始地址、传送方向、DMAC通道号等信息送到DMAC中,这叫DMAC的初始化。初始化后,就等待外部设备来申请DMA请求。 1.申请阶段 2.响应阶段 3.数据传送阶段 4.传送结束阶段 DMA传送的方式 一、DMA操作类型 DMA传送主要是进行数据传送操作,但也包括一些并不是进行数据传送的操作,如数据校验和数据检索等。 数据传送:数据传送是把源地址的数据传送到目的地址单元中去。并且DMA传送的读/写操作是对存储器而言,即DMA读是指从存储器读出数据,写到外设中去,DMA写是指从外设读出数据,写到存储器中去。 数据校验:校验操作并不是对数据进行传送,只是对数据块内每个字节进行某种校验。 数据检索:数据检索操作和数据校验一样,并不进行数据传送,只是对在指定的内存区内查找某个关键字节或某几个关键数据位是否存在,如果查到就停止检索。 DMA传送的方式 二、DMA操作方式 DMA操作方式是指进行上述每种DMA操作类型时,每次DMA操作所操作的字节数。 单字节方式:每次DMA操作只操作一个字节,即发出一次总线请求,DMAC占用总线后,进入DMA周期只传送一个字节数据,便释放总线。 连续方式:在数据块传送的整个过程中,只要DMA传送一开始,DMAC始终占用总线,直到数据传送结束,才把总线的控制权还给CPU。 DMA控制器 一、DMA控制器在系统中的地位 DMA控制器在系统中的工作状态:被动态与主动态。 DMA控制器是作为两种存储实体之间实现高速数据传送而设计的专用器件。它与其他外围接口器件不同,它具有接管和控制微机中系统总线的功能。对于一般的外设而言它是主控者,对于CPU而言它又是受控者。因此,DMAC在系统中有两种工作状态:被动态与主动态,两种不同的地位:受控器和主控器。 DMA控制器 二、总线控制权在DMA控制器与CPU之间的转移 当外设发出请求进行DMA传送的信号时,DMAC经判优及屏蔽处理后,向总线仲裁器送出总线请求信号到CPU要求占用总线。CPU在认为可能的情况下,在完成总线周期后进入总线保持状态,使CPU对总线的控制失效,并发回总线应答信号通知DMAC,CPU已交出总线控制权。此时DMAC接管总线控制权,由被动态进入主动态,然后由它向I/O设备发DMA应答信号和读/写信号,向存储器发地址信号和读写信号,开始DMA传送,传送结束DMAC发出过程中止信号EOP。 HRQ DREQ CPU DMAC 外设 HLDA DACK DMA控制器 三、DMA控制器8237A的特性 DMAC8237A是Intel公司生产一种应用较广的DMA控制器,具有如下特点: 每个8237A芯片有4个DMA通道。 每个DMA通道具有不同的优先权。 每个DMA通道可以分别允许和禁止。 一次传送的最大长度可达64KB,传送速率可达1.5Mb/s。 多个8237A芯片可以级连,扩展通道。 必须与一个8位锁存器配套使用。 9.1.2 8259A芯片的工作方式 实现自动循环方式,可采用以下3种EOI循环方式: 普通EOI循环方式 当任何一级中断服务程序结束时,只给8259A发送EOI命令,8259A收到后,自动将ISR寄存器中级别最高的置1位清零,并赋予最低优先级,原来比它低一级的中断赋予最高级,其他类推。 特殊EOI循环方式 不但发送EOI,还可以根据用户的需要将最低优先级赋给指定的中断源,即指出了要清除哪个ISR位。表9-2 自动EOI循环方式 在第2个中断响应信号结束时,自动将ISR寄存器中相应位清零,并改变各级中断的优先级。 9.1.2 8259A芯片的工作方式 3. 中断屏蔽方式 CPU在任何时候都可以用CLI指令将中断标志清零,从而禁止由INTR端引入的可屏蔽中断请求。 普通屏蔽方式: 将中断屏蔽寄存器IMR的Di位置1,则对应的中断IRi被屏蔽。如果置0,则允许响应对应的中断。 特殊屏蔽方式 当CPU正在处理某级中断时,仅仅对本级中断进行屏蔽,允许其他高级和低级中断请求进入系统。 9.1.3 8259A芯片的级联使用 单片8259A可以支持8级中断,在多于8级中断的系统中,必须将

文档评论(0)

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

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

1亿VIP精品文档

相关文档