微型计算机原理及应用课件第六章输入和输出第一讲.ppt

上传人:本田雅阁 文档编号:2087616 上传时间:2019-02-12 格式:PPT 页数:48 大小:4.41MB
返回 下载 相关 举报
微型计算机原理及应用课件第六章输入和输出第一讲.ppt_第1页
第1页 / 共48页
微型计算机原理及应用课件第六章输入和输出第一讲.ppt_第2页
第2页 / 共48页
微型计算机原理及应用课件第六章输入和输出第一讲.ppt_第3页
第3页 / 共48页
亲,该文档总共48页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《微型计算机原理及应用课件第六章输入和输出第一讲.ppt》由会员分享,可在线阅读,更多相关《微型计算机原理及应用课件第六章输入和输出第一讲.ppt(48页珍藏版)》请在三一文库上搜索。

1、第六章 输入/输出与中断,1,6. 1 I/O接口概述 6. 2 I/O端口地址译码 6.3 基本的并行输入/输出接口 6.4 程序控制I/O方式 6.5 中断方式 6.6 直接存储器存取(DMA)方式 习题,6.1 输入/输出接口概述,接口解决微处理器与外设之间的差异 外设种类多 信号类型有机械的、物理的、电信号等 信号形式有脉冲、模拟量或数字量 数据传输率不同 数据格式不同 数据传输方式不同,有并行、串行之分 CPU与外设都是面向接口而非直接联络,2,第6章 输入/输出技术,图6.1 典型I/O接口模型,3,数据信息、状态信息及控制信息,数据信息,数据信息:要交换的数据本身。 数字量:通常

2、以8位或16位的二进制数以及ASCII码的形式传输,主要指由键盘、磁带机、磁盘等输入的信息或主机送给打印机、显示器、绘图仪等的信息 开关量:用“0”和“1”来表示两种状态,如开关的通/断 模拟量:模拟的电压、电流或者非电量。对模拟量输入而言,需先经过传感器转换成电信号,再经A/D转换器变成数字量;如果需要输出模拟控制量的话,就要进行上述过程的逆转换 数据传输方向:CPU I/O接口外设,4,控制信息,控制信息:控制外设工作的命令,CPU通过接口发出,如A/D转换器的启/停信号 数据传输方向:CPUI/O接口处设,5,状态信息,状态信息:表征外设工作状态的信息 对输入接口, CPU是否准备好接收

3、数据,READY” 准备好吗? 对输出接口, 外设是否准备好接收数据,“BUSY” 外设忙吗? 数据传输方向:CPUI/O接口外设,6,I/O端口,传送这三种信息的接口电路中的寄存器称为数据、状态和控制端口 不同的寄存器有不同的端口地址,即用地址访问 端口由一个或多个寄存器组成 接口由若干个端口加上相应的控制逻辑组成,7,接口的基本功能,数据缓冲功能 设备选择功能 信号转换功能 接收、解释并执行CPU命令的功能 中断管理功能 可编程功能,8,接口电路的结构,实现对CPU数据总线速度和驱动能力的匹配,实现各寄存器端口寻址操作,实现接口电路中的各寄存器端口的读/写操作和时序控制,9,接口电路的分类

4、,数据传送方式: 并行接口 串行接口 功能选择的灵活性: 可编程接口 不可编程接口 数据传送操作的同步方式: 同步接口 异步接口 通用性: 通用接口 专用接口,10,6.2 I/O端口的编址方式,为了区分接口电路的各个寄存器,系统为它们各自分配了一个地址,称为I/O端口地址,以便对它们进行寻址并与存储器地址相区别 I/O端口有两种编址方式:存储器映像方式、I/O独立编址方式,11,1、存储器映像编址,指I/O端口与存储器共享一个寻址空间,又称为统一编址。在这种系统中,CPU可以用同样的指令对I/O端口和存储器单元的进行访问。 优点:对I/O口的访问灵活方便,有利于提高端口数据的处理能力。 缺点

5、:I/O端口占用了主存地址,相对减少了主存的可用范围。,12,2、I/O独立编址(一),指主存地址空间和I/O端口地址空间相互独立,分别编址。CPU通过指令来区分是访问I/O口还是存储单元 优点:主存和I/O端口的地址可用范围都比较大; 缺点:I/O指令的功能一般比较弱,在I/O操作中必须借助CPU的寄存器进行中转,13,2、I/O独立编址(二),80X86系列微处理器采用独立的I/O编址方式 CPU使用地址总线中的A0A15来寻址I/O口,故最大I/O空间是64K个字节端口(或32K个字端口),14,两种编址方式比较(一),分别是分离编址?还统一编址?,15,两种编址方式比较(二),16,6

6、.3 I/O接口的访问控制,微机系统的每个端口都有惟一的端口地址 端口地址:经译码电路译码后产生端口选通信号,控制端口的读/写操作,17,I/O端口的地址分配,80X86系列微处理器提供16条地址线访问I/O端口,编址可达64K个字节端口或者32K个字端口。 IBM系列采用非完全译码方式,即只考虑了低10位地址线A0-A9,I/O端口地址范围是0000H-03FFH,总共只有1024个字节端口 80386微处理器或此后的微处理器构成的微机系统,采用全译码的方法,端口为64K个字节端口或32K个字端口,18,I/O端口地址选用的原则,自行设计接口电路或给微机系统添加接口卡时,必须避免端口地址发生

7、冲突 申明保留的地址,不要使用 用户可使用300H-31FH地址,19,I/O端口的地址译码,将来自地址总线上的地址代码翻译成为所需要访问端口的选通信号 I/O端口地址译码电路结构 译码电路的输入信号 地址信号:由地址范围决定 控制信号:数据流向(读/写)、数据宽度(8位/16位)、是否采用奇/偶地址和DMA传送方式 译码电路的输出信号:接口芯片的片选信号 端口的读写控制:输入需要缓冲,输出需要锁存,20,I/O地址译码方法,地址译码的方法灵活多样 高位地址线与CPU的控制信号进行组合,经译码电路产生I/O接口芯片的片选信号CS,实现系统中的接口芯片寻址 低位地址线直接接到I/O接口芯片的地址

8、引脚,进行I/O接口芯片的片内端口寻址,21,6.5 I/O接口的数据传输控制方式,外设的速度与CPU相比要慢好几个数量级,且不同外设之间的速度也相差很大,为了保证数据传输的可靠性,CPU一定要等外设准备就绪之后才能执行输入/输出操作,而外设就绪的时刻对CPU而言是随机的,因此需要同步。 三种I/O同步控制方式: 程序控制方式:无条件程序控制和程序查询 中断控制方式 直接存储器存取方式,DMA方式,22,无条件程序控制方式(一),最简单的I/O控制方式,CPU可以随时根据需要无条件地读写I/O端口 外设要求:简单,数据变化缓慢,操作时间固定,如一组开关或LED显示管。外设被认为始终处于就绪状态

9、 接口特点 CPU的DBI/O接口(输出锁存器)外设 CPU的DBI/O接口(输入缓冲器)外设,23,无条件程序控制方式(二),24,无条件程序控制方式(三),例 START: MOV DX,INPORT IN AL,DX;读入按键状态 TEST AL,01H;判断最低位按键 JNZ K1;最低位按键没闭合,转 MOV AL,01H;最低位发光 JMP DISP K1:TEST AL,02H; JNZ K2;次低位按键没闭合,转 MOV AL,03H;最低2位发光 JMP DISP .,DISP: MOV DX,OUTPORT OUT DX,AL; JMP START,25,程序查询输入方式(

10、条件传送方式 ),接口特点:避免了对端口的“盲读”、“盲写” ,数据传送的可靠性高,并且硬件接口相对简单。缺点是CPU工作效率低,I/O响应速度慢;,外设要求:状态口和数据口,在有多个外设的系统中,CPU的查询顺序由外设的优先级确定,一种CPU主动、外设被动的I/O操作方式,很好地解决了CPU与外设之间的同步问题,26,查询控制的程序流程,27,程序查询方式的输入接口电路,28,数据端口(8位),状态端口(1位),状态信息占用数据线的D0位,查询程序如下: QUERY:IN AL,S_PORT;状态口地址 SAR AL,1 JNC QUERY IN AL,D_PORT;D_PORT是数据口地址

11、,查询输入程序,29,查询方式的A/D采样,WAIT:IN AL,51H;读状态端口的值 TEST AL,10H;判断D4是否为1? JZ WAIT;不是1,等待 IN AL,50H;读数据端口的值 MOV BUF,AL;将数据送到数据缓冲单元,30,程序查询输出方式,31,数据端口(8位),状态端口(1位),BUSY,输入状态信息,BUSY?,输出数据信息,N,Y,QUERY:IN AL,S_PORT;状态口地址 SAR AL,1 JC QUERY OUT D_PORT,AL;D_PORT数据口地址,查询输出程序,32,查询方式的打印机接口,WAIT:IN 7AH,AL ;读状态端口 TES

12、T AL,04H ;判断D2是否为0? JNZ WAIT ;不是0,等待 MOV AL,BUF ;取数据 OUT 78H,AL ;将数据送到打印机接口,33,多个外设的查询,CPU周期性地依次查询每个外设的状态 优先权决定了查询次序 不具有实时性,34,图6.17 用查询方式实现I/O传送的示例 (a) 外设与微机接口电路;(b) 外设工作时序,35,第6章 输入/输出技术,图6.18 几种轮询控制流程,36,中断控制方式,接口特点:避免了CPU 反复低效率的查询,适用于CPU任务繁忙、而数据传送不太频繁的系统中。缺点是硬件电路和处理过程都比较复杂;(中断控制芯片),CPU被动而外设主动的I/

13、O操作方式,较大地提高了CPU的工作效率,并使系统具有了实时处理功能,37,中断控制方式,数据缓冲,控制端口,外 设,INTR,中断可被响应的条件: 中断请求触发器置位;中断屏蔽触发器清零;CPU内部开放中断;CPU未处理更高级中断;CPU现行指令执行完,38,中断工作过程,外设需要CPU服务时 外设I/O接口向CPU发中断请求,INTR=H(中断请求有效) CPU执行完当前指令后, (注: 若IF = 1) CPU I/O接口 外设发中断响应,/INTA = L CPU执行中断服务程序, CPUI/O接口外设读写数据,39,DMA控制方式(存储器直接存取),内存与外设间有大量数据交换时,采用

14、中断方式,每传送一次数据,就必须经历中断处理的全部步骤,而且一般需要借助CPU内部的寄存器作为中介 DMA方式:不用CPU的寄存器作传数中介, 完成存储器和外设间的直接传数,CPU必须将系统总线的控制权让给DMAC,40,DMA方式原理方框图,DB HOLD CPU HLDA AB,DMAC,MEM,I/O,41,DMA的工作流程,DMAC发存储器地址,在总线上传送数据,传送结束?,修改地址指针,DMA结束,交还总线权,Y,N,42,能实现上述操作的DMA控制器的硬件方框图下如图所示。,随着大规模集成电路技术的发展,DMA传送已不局限于存储器与外设间的信息交换,而可以扩展为在存储器的两个区域之

15、间,或两种高速外设之间进行DMA传送,如右图所示。,DMA的三种传输方式: 连续传送(块传送) DMAC申请到总线后,将一块数据传送完后才释放总线,而不管中间DREQ是否有效。 单次传送(每次传送一个字节) 每个DMA周期只传送一个字节就立即释放总线。 按需传送(猝发传送) 只要I/O接口的数据缓冲可用,就进行传送。 (注:I/O接口需要有一定大小的FIFO缓冲),45,Y,N,允许DMA,DMA请求?,DMAC请求总线,CPU响应, DMAC获总线控制权,DMA传送一个字节,块结束?,地址增量,计数器减量,DMAC释放总线,Y,数据块传送,N,46,N,Y,N,允许DMA,DMAC请求总线,CPU响应, DMAC获总线控制权,DMA传送一个数据,块结束?,释放总线至少一个总线周期,地址增量,计数器减量,DMAC释放总线,Y,每次传送一个字节,测试I/O的DREQ DMA请求?,47,N,Y,CPU响应, DMAC获总线控制权,DMA传送一个字节,块结束?,测试I/O的DREQ 有效?,地址增量,计数器减量,释放总线,请求中断,无效,释放总线,允许DMA,DMA请求?,DMAC请求总线,按需传送,Y,N,Y,N,48,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1