- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章微机与外设的数据传输hyl
电路原理说明: 写到164H端口,产生一个负脉冲来启动外设开始工作。 写数据到160H端口,CPU输出数据到锁存器,同时置“1”状态触发器,为外设提供状态信息:“数据已准备好”。 读取162H端口,CPU查询状态,看外设是否取走数据。(外设取走数据,则将发出ACK信号,清除状态触发器) 程序示例:将AL中的数据输出。 WRITE : MOV DX, 164H OUT DX, AL ;启动外设 MOV DX, 160H OUT DX, AL ;输出数据 MOV DX, 162H WRITE1: IN AL, DX ;查询状态 TEST AL, 1 JNZ WRITE1 RET 查询方式特点 通过查询实现CPU与外设间的同步联络 CPU和外设串行工作 接口电路简单 CPU使用率不高,用CPU的等待实现与外设的同步 程序控制方式传送总结 优点: 电路简单、实现容易 缺点 CPU和外设只能串行工作、CPU使用效率不高 CPU和外设并行工作 中断方式 DMA方式 I/O处理机 5.3.2 中断方式 中断方式:当外设做好传送准备后,主动向CPU请求中断,CPU响应中断后在中断处理程序中与外设交换数据。若外设未准备好,CPU可以执行其他程序,提高了CPU的利用率。 每条指令完成后,CPU均可响应中断,因此当设备准备好时,可及时与CPU交换数据,提高了实时性。 被外界中断时,程序中下一条指令所在处称为断点。 中断传送方式就是外部设备中断CPU的工作,使CPU停止执行当前程序,而去执行一个数据输入/输出的程序(该程序称为中断处理子程序或中断服务子程序)。中断子程序执行完毕后,CPU又返回来执行原来的程序。 中断的实现方法: 1. 当外设准备好,向CPU发出中断请求 2. CPU在满足响应中断的条件下,发出中断响应信号; 3. CPU暂停当前的程序,转去执行中断服务程序,完成与外设的数据传送; 4. CPU从中断服务程序返回,继续执行被中断的程序 中断方式下CPU执行程序流程 中断服务程序 发申请 中断服务程序 发申请 外 设 主程序 中断I/O的一般过程 a.数据传送 b.中断响应 c.中断请求 CPU 接口 外 设 中断优先级解决办法(1) 软件查询方式:借助于简单的硬件电路。 优点:省硬件,不需要有判断优先级的硬件排队电路,而是用程序的优先级来确定设备的优先级。 缺点:由设备发出中断请求信号到CPU转入相应的服务程序入口的时间较长,特别是在中断源较多时,查询程序段较长,转入服务程序所花的时间较长。 中断优先级解决办法(2) 简单硬件方式——菊花链法 CPU以及总线控制逻辑 INTA INTR 设备3 接口 菊花链 逻辑电路 中断回答 中断请求 设备2 接口 菊花链 逻辑电路 中断回答 中断请求 设备1 接口 菊花链 逻辑电路 中断回答 中断请求 菊花链逻辑电路 中断优先级解决办法(3) 专用硬件方式 在微机系统中解决中断优先级管理的常用办法是采用可编程的中断控制器。在8086系统中多用8259A。 可编程中断控制器中的中断类型寄存器、屏蔽寄存器都是可编程的,当前中断服务寄存器也可以用软件进行控制,中断优先级管理电路的优先级排列方式也是通过指令来设置的,用起来灵活方便。 8086的中断过程 接口部件发中断请求信号IRQ 当前指令执行完后,CPU进行中断回答INTA 接口部件将中断类型号n送到CPU CPU将FLAGS,CS,IP推入堆栈 CPU清除TF,IF CPU将n乘4,到中断向量表中查找中断服务程序的入口地址,并将该地址放入CS,IP CPU进入中断服务子程序,进行保护现场的工作 开中断,允许更高一级中断打断当前的服务程序 执行服务操作及进行恢复现场 执行IRET指令 CPU将IP、CS、FLAGS出栈,恢复原来的程序执行 5.3.3 DMA方式(DMA控制I/O方式) DMA:Direct Memory Access——直接存储器访问 DMA方式是一种由专门的硬件电路执行I/O的数据传送方式,它可以让外设与外设之间、外设与内存之间直接进行高速的数据传送,而不必经过CPU。这种专门的硬件电路称为DMA控制器,简称DMAC。 原理示意图 外设接口 存储器 CPU IN OUT MOV [BX],AL MOV AL,[BX] 输出 输入 读 写 请求与应答 DMAC 直接数据通道传送(DMA) 传送流程演示 DMAC的功能 接收外设向DMAC发出的DMA申请DREQ 向CPU提出DMA申请HOLDREQ 接收CPU回发的总线控制权响应信号HOLDA,接管系统总线。 内部具有地址寄存器,在DMA传输时将地址寄存器的内容送到系统地址总线上,并在一次传送后变更地址。 内部具有字节计数寄存器,控制DMA
文档评论(0)