微机原理与接口技术 教学课件 作者 周明德 蒋本珊 第08章.ppt

微机原理与接口技术 教学课件 作者 周明德 蒋本珊 第08章.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 输入和输出 8.1 概 述 8.2 CPU与外设数据传送的方式 8.3 DMA控制器 8.1 概 述 8.1.1 输入输出的寻址方式 CPU寻址外设可以有两种方式。 1.存储器对应输入输出方式 在这种方式中,把一个外设端口作为存储器的一个单元来对待,故每一个外设端口占有存储器的一个地址。从外部设备输入一个数据,作为一次存储器读的操作;而向外部设备输出一个数据,则作为一次存储器写的操作。 这种方式的优点是: (1)CPU对外设的操作可使用全部的存储器操作指令,故指令多,使用方便。如可以对外设中的数据(存于外设的寄存器中)进行算术和逻辑运算,进行循环或移位等。 (2)内存和外设的地址分布图是同一个。 (3)不需要专门的输入输出指令以及区分是存储器还是I/O操作的控制信号。 缺点是: 外设占用了内存单元,使内存容量减小。 2.端口寻址的输入输出方式 在这种工作方式中:CPU有专门的I/O指令,用地址来区分不同的外设。但要注意实际上是以端口(Port)作为地址的单元,因为一个外设不仅有数据寄存器还有状态寄存器和控制命令寄存器,它们各需要一个端口才能加以区分,故一个外设往往需要数个端口地址。CPU用地址来选择外设。 要寻址的外设的端口地址,显然比内存单元的地址要少得多。所以,在用直接寻址方式寻址外设时,它的地址字节,通常总要比寻址内存单元的地址少一个字节,因而节省了指令的存储空间,缩短了指令的执行时间。 8.1.2 CPU与I/O设备之间的接口信息 1.数据(Data) 在微型机中,数据通常为8位、16位或32位。它大致可以分为三种基本类型: (1)数字量 (2)模拟量 (3)开关量 2.状态信息(Status) 在输入时,有输入设备是否准备好(Ready)的状态信息;在输出时,有输出设备是否有空(Empty)的状态信息,若输出设备正在输出,则以忙(Busy)指示等等。 3.控制信息(Control) 控制输入输出设备启动或停止等等。 状态信息和控制信息与数据是不同性质的信息,必须要分别传送。但在大部分微型机中(8086也如此),只有通用的IN和OUT指令,因此,外设的状态也必须作为一种数据输入;而CPU的控制命令也必须作为一种数据输出。所以,一个外设往往要几个端口地址,CPU寻址的是端口,而不是笼统的外设。 8.1.3 CPU的输入输出时序 通常I/O接口电路的工作速度较慢,往往要插入等待状态。 8.1.4 CPU与接口电路间数据传送的形式 CPU与外设的信息交换称为通信(Communication)。基本的通信方式有两种: ? 并行通信——数据的各位同时传送; ? 串行通信——数据一位一位顺序传送。 8.2 CPU与外设数据传送的方式 8.2.1 查询传送方式 CPU与I/O设备的工作往往是异步的,很难保证当CPU执行输入操作时,外设已把要输入的信息准备好了;而当CPU执行输出时,外设的寄存器(用于存放CPU输出数据的寄存器)一定是空的。所以,通常程序控制的传送方式在传送之前,必须要查询一下外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待。 1.查询式输入 在输入时,CPU必须了解外设的状态,看外设是否准备好。 当输入设备的数据已准备好后,发出一个选通信号,一边把数据送入锁存器,一边使D触发器为“1”,给出“准备好”Ready的状态信号。而数据与状态必须由不同的端口输至CPU数据总线。当CPU要由外设输入信息时,先输入状态信息,检查数据是否已准备好,当数据已经准备好后,才输入数据。读入数据的指令,使状态信息清“0”。 这种查询输入方式的程序流程图,如图8-11所示。 2.查询式输出 同样的,在输出时CPU也必须了解外设的状态,看外设是否有空(即外设不是正处在输出状态,或外设的数据寄存器是空的,可以接收CPU输出的信息),若有空,则CPU执行输出指令,否则就等待。 查询式输出的程序流程图如图8-14所示。 8.2.2 中断传送方式 在上述的查询传送方式中,CPU要不断地询问外设,当外设没有准备好时,CPU要等待,不能进行别的操作,这样就浪费了CPU的时间。而且许多外设的速度是较低的,如键盘、打印机等等,它们输入或输出一个数据的速度是很慢的,在这个过程中,CPU可以执行大量的指令。为了提高CPU的效率,可采用中断的传送方式:在输入时,若外设的输入数据已存入寄存器;在输出时,若外设已把上一个数据输出,输出寄存器已空,由外设向CPU 发出中断请求,CPU就暂停原执行的程序( 即实现中断),转去执行输入或输出操作(中断服务),待输入输出操作完成后即返回,CPU再继续

您可能关注的文档

文档评论(0)

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

1亿VIP精品文档

相关文档