




已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序中断方式和DMA方式的优缺点:程序中断方式:I/O中断处理过程:1. 响应中断的条件和时间:cpu响应I/O设备提出的中断的请求的条件是 必须满足CPU中的允许中断触发器EINT为“1”。该触发器可用中断的指令置位(开中断);也可以用关中断指令或硬件自动使其复位(关中断)。CPU在每条指令执行结束时发出中断查询信号,以获取I/O的中断的请求。因此,CPU响应中断的时间一定在每条指令执行阶段的结束时刻。2. I/O中断处理过程(当CPU通过I/O指令的地址码选中某设备后)(1) 由CPU发启动设备命令,将接口中的B置“1”,D置“0”。(2) 接口启动输入设备开始工作。(3) 输入设备将数据送入数据缓冲寄存器。(4) 输入设备向接口发送“设备工作结束”信号,将D置“1”,将B置“0”,标志设备准备就绪。(5) 当设备准备就绪(D=1),且本设备未被屏蔽时,在指令执行阶段结束时刻,由 CPU发出中断查询信号。(6) 设备中断请求触发器INTR置“1”,标志设备向CPU发出中断请求。与此同时,INTR送至排队器,进行中断判优。(7) 若CPU允许中断(EINT=1),设备又被排队器选中,即进入中断响应解阶段,由中断响应信号INTA将排队器输出送至编码器形成向量地址。(8) 向量地址送至PC,作为下一条指令(9) 由于向量地址中存放的是一条无条件转移指令,故这条指令执行结束就无条件进入该设备的服务程序入口地址,开始执行中断服务程序,进入中断服务阶段,通过输入指令将数据缓冲寄存器的输入数据送至CPU的通用寄存器,再存入相应单元。(10) 中断服务程序的最后一条指令是中断返回指令,当其执行结束时,即中断返回至原程序的断点处。中断服务程序的流程1 保护现场2 中断服务3 恢复现场4 中断返回DMA 方式主存和DMA接口之间有一条数据通路,因此主存和设备交换信息时,不通过CPU,也不需要暂停现行程序为设备服务,省去了保护现场和恢复现场,因此比程序中断方式工作速度高。出现高速I/O(通过DMA接口)和CPU同时访问主存,CPU必须将总线(数据线,地址线)占有权让给DMA接口使用,即DMA采用窃取的方式占有一个存取周期。(1) 停止CPU访问主存(2) 周期挪用(周期窃取)(3) DMA与CPU交替访问1 DMA 接口的功能 利用DMA方式传送数据时,数据的传输过程完全由DMA接口电路控制,故DMA接口有DMA控制器之称。功能如下。(1) 向CPU申请DMA 传送(2) 在CPU允许DMA工作时,处理总线控制权的转交,避免因进入DMA工作而影响CPU正常活动或引起总线竞争。(3) 在DMA期间管理系统总线,控制数据传送。(4) 确定数据的传送的起始地址和数据长度,修改数据传送过程中数据地址和数据长度。(5) 在数据块传送结束时,给出DMA操作完成的信号。2 DMA接口的基本组成(1) 主存地址寄存器(AR)(2) 字计数器(WC)(3) 数据缓冲寄存器(BR)(4) DMA控制逻辑 负责管理DMA传送过程,由控制电路、时序电路和命令状态控制寄存器等组成。每当设备准备好一个数据字,就向DMA接口提出申请(DREQ),DMA控制逻辑便向CPU请求DMA服务,发出总线使用权的请求信号(HRQ)。待收到CPU发出的响应信号HLDA后,DMA控制逻辑便开始负责管理DMA传送的全过程,包括对主存地址寄存器和字计数器的修改、识别总线地址、指定传送类型以及通知设备已经被授予一个DMA周期(DACK)等。(5) 中断机构 当字计数器溢出(为“0”)时,表示一批数据交换完毕,由“溢出信号”通过中断机构向CPU提出中断请求,请求CPU作DMA的后处理。这个中断与I/O中断技术相同,但是请求的服务不同,I/O是为了传送数据,这里是为了报告数据传送完毕请求后处理。(6) 设备地址寄存器(DAR)DAR 存放I/O设备的设备码或表示设备信息存储区的寻址地址,如磁盘数据所在的区号、盘面号、柱面号。DMA的工作过程1. 传送过程 (预处理、数据传送、后处理)(1) 预处理 A 给DMA控制逻辑指明数据传送的方向(输入还是输出)(读|写主存)B 像设备地址寄存器送入设备号,并启动设备C 向DMA主存地址寄存器送入交换数据的主存起始地址。D 对字计数器赋予交换数据的个数。 上述工作由CPU执行几条输入输出指令完成,即程序的初始化阶段,执行完毕之后,CPU继续执行原来的程序。当I/o设备准备好发送的数据或上次接收的数据已经处理完毕时,它便通过DMA接口向CPU提出占用总线的申请,若有多个DMA同时申请,则按轻重缓急由硬件排队判优。待I/O设备得到总线的控制权后,数据的传送便由该DMA接口进行管理。(2)数据传送 DMA是以数据块为单位传送的,以周期挪用的DMA方式 的输入数据 为例。1.1.1 当设备准备好一个字时,发出选通信号,将该字读到DMA的数据缓冲寄存器(BR),表示数据寄存器已经满。(若设备面向字符的,则一次读入一个字节,组成一个字)。1.1.2 与此同时设备向DMA接口发请求(DREQ)1.1.3 DMA接口向CPU申请总线控制权(HRQ)1.1.4 CPU发HLDA信号,表示允许将总线权转交给DMA接口1.1.5 将DMA 主存地址寄存器中的地址总线控制权交给DMA接口。1.1.6 通知设备已被授予一个DMA周期,并为交换下一个字做准备。1.1.7 将DMA数据缓冲寄存器的内容送数据总线。1.1.8 主存将数据总线上信息写至地址总线指定的存储单元中。1.1.9 修改主存地址和字计数器的值。1.1.10 判断数据块是否传送完毕,若未结束,则继续传送,若已结束。则向CPU申请程序中断,标志数据块传送结束。 输出数据(1) 当DMA数据缓存寄存器已将输出数据送至I/O设备后,表示数据缓冲寄存器已“空”。(2) 设备向DMA接口发请求(DREQ)(3) DMA接口向CPU申请总线控制权。(4) CPU发回HLDA信号,表示允许将总线控制权交给DMA接口使用。(5) 将DMA主存地址寄存器中的主存地址送地址总线,并命令存储器读。(6) 通知设备已被授予一个DMA周期,为交换下一个字节做准备。(7) 主存将相应地址单元的内容送到输出设备,若为字符设备,则需将其拆成字符输出。(8) 将DMA数据缓冲寄存器的内容送到输出设备,若为字符设备,则需要将其拆成字符输出。(9) 修改主存地址和字计数器。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全培训常见误区解析-3
- 青春期沟通障碍怎么破
- 卫生职称试题及答案
- 小学中文测试题及答案
- 如何成为生态小先锋
- 家电公司资产台账管理规章
- 2026届江苏省常州市奔牛高级中学高一化学第一学期期末学业质量监测试题含解析
- 2022年重庆南开中学高三下学期5月第九次质量检测英语试题
- 服装售后补差方案(3篇)
- 保安员消防培训知识课件
- 放射科新技术介绍
- 银行职工反诈工作总结
- 设备安装管理培训课件
- 老年人转运照护-轮椅运转
- 国家电网公司供电企业劳动定员标准
- 7-聊城东制梁场80t龙门吊安拆安全专项方案-八局一-新建郑州至济南铁路(山东段)工程ZJTLSG-2标段
- 中兴 ZXNOE 9700 系统介绍
- GB/T 21475-2008造船指示灯颜色
- 有理数加减混合运算练习题300道-
- 园林绿化工高级技师知识考试题库(附含答案)
- 提高肠镜患者肠道准备合格率课件
评论
0/150
提交评论