单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第5章 微型计算机和外设的数据传输,主要内容,使用接口电路的原因,CPU,和输入输出设备之间的信号,接口电路中端口的概念,接口的功能,接口与系统的连接,CPU,和外设之间的数据传送方式,(一)使用接口电路的原因,1 接口的定义,2 使用接口电路的原因,1 接口的定义,接口是中央处理器、存储器、输入输出设备等外设之间协调动作的一组硬件控制电路。,接口电路并不局限在中央处理器与存储器或中央处理器与外设之间,也可在存储器与外设之间,如直接存储器存取DMA接口就是控制存储器与外设之间数据传送的电路。,2 接口的分类,接口按功能分为两类:,(1)使CPU正常工作所需要的辅助电路,主要有时钟电路和中断控制电路;,(2)输入/输出接口,实现CPU和外部设备之间的信息传送。,3 使用接口电路的原因,(1)外设的种类是多种多样的;,(2)外设的功能是多种多样的;,(3)外设和CPU之间交换信息的种类、形式是多种多样的;,(4)外设的速度相比CPU来说是比较慢的。,a.时序匹配,b.速度匹配,c.信号类型匹配,(二)CPU和输入输出设备之间的信号,CPU和输入输出设备之间传送的数据种类:,(1)数据信息:数字量、模拟量、开关量,(2)状态信息:READY、BUSY等信号,(3)控制信息:启动、停止等信号,(三)接口电路中端口的概念,每个接口电路都包含一组寄存器,如图所示。CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口,每个端口有一个端口地址。端口的类型主要有:,(1)数据端口,(2)控制端口,(3)状态端口,数 据 总 线,控 制 总 线,地 址 总 线,数据输入寄存器,数据输出寄存器,控制寄存器,状态寄存器,外部,输入,或,输出,设备,数据线,控制线,状态线,接口电路,地址,译码电路,寄存器(端口)选择,状态寄存器,控制寄存器,数据输入寄存器,数据输出寄存器,/CS,A0,A1,/WR,/RD,控制线,数据线,外设,片选,高位地址,低位地址,接口电路,/WR,/RD,M/IO,接口电路的典型引脚,(4)接口电路的片选地址和端口地址,在有多个接口电路的计算机系统中,为了区分这些接口电路,系统要给这些接口电路分配不同的地址(利用译码电路结合地址信号和M/IO信号产生),这个地址称为,接口电路的片选地址。,(4)接口电路的片选地址和端口地址,在有多个端口的接口电路中,为了区分不同的端口,接口电路给这些寄存器分配不同的地址(一般用地址信号A0和A1区分),这个地址称为,端口的片内地址。,(4)接口电路的片选地址和端口地址,端口在计算机系统中的地址,称为端口地址。,端口地址,接口电路的片选地址,端口的片内地址,地址,译码电路,片选,寄存器(端口)选择,状态寄存器,控制寄存器,数据输入寄存器,数据输出寄存器,状态寄存器,控制寄存器,数据输入寄存器,数据输出寄存器,/CS,A0,A1,/WR,/RD,/CS,A0,A1,/WR,/RD,状态寄存器,控制寄存器,数据输入寄存器,数据输出寄存器,/CS,A0,A1,/WR,/RD,控制线,数据线,外设1,控制线,数据线,外设2,控制线,数据线,外设3,片选,片选,高位地址,低位地址,低位地址,低位地址,接口电路1,接口电路2,接口电路3,/WR,/RD,/WR,/RD,/WR,/RD,M/IO,A14,A15,A13,138,/E1,/E2,E3,A,B,C,Y0,Y2,与门,M/IO,A16,A17,A18,A19,Y1,片选地址,接口电路,F0000H,接口电路,F1000H,接口电路,F2000H,写信号/WR,读信号/RD,A,A,访问的寄存器,数据输出寄存器,数据输入寄存器,控制寄存器,状态寄存器,端口地址,F0000H,F0001H,F0002H,F0003H,写信号/WR,读信号/RD,A,A,访问的寄存器,数据输出寄存器,数据输入寄存器,控制寄存器,状态寄存器,端口地址,F2000H,F2001H,F2002H,F2003H,写信号/WR,读信号/RD,A,A,访问的寄存器,数据输出寄存器,数据输入寄存器,控制寄存器,状态寄存器,端口地址,F1000H,F1001H,F1002H,F1003H,(5)接口的功能,进行CPU和外设之间的信息变换、缓冲和联络,即在系统总线和I/O设备之间传输信号,提供缓冲作用,以满足接口两边的时序要求。主要包括:,(1)寻址功能 (2)输入输出功能,(3)数据转换功能 (4)联络功能,(5)中断管理功能 (6)复位功能,(7)可编程功能 (8)错误检测功能,6 接口与系统连接,数,据,总,线,总线收发器,和相应逻辑,电路,联络,信号,地址,译码器,地,址,总,线,菊花链,逻辑,控,制,总,线,状态寄存器,控制寄存器,数据输入,寄存器和,数据输出,寄存器,控制线,数据线,数据/状态/控制,使能,控制,片选,寄存器选择,中断请求,中断回答信号,读写,DMA,控制器,7 CPU和外设之间的数据传送方式,(1)程序方式,(2)中断方式,(3)DMA方式,(1)程序方式,程序方式,是指计算机在程序控制下与外设之间进行信息传送,又分为,无条件传送方式,条件传送方式,无条件传送方式,如果计算机能够确信一个外设已经准备就绪,那就不必查询外设的状态而可直接进行信息传输,这称为,无条件传送方式,在无条件传送方式下,程序设计简单传送不能太频繁,以保证每次传送时,外设处于就绪状态,主要用于对于一些简单外设的操作,如开关、七段显示管。,接口电路的端口主要包括:,数据输入端口和数据的输出端口,无条件传送方式,输出,锁存,器,输入,缓冲,器,端口,译码,器,D0D7,地址总线,M/IO,/WR,/RD,往输出设备,来自输入设备,图5.2无条件传送方式原理图,条件传送方式,条件传送也称为,查询方式传送,用条件传送方式时,CPU通过执行程序不断读取并测试外设的状态,如果外设处于,准备好状态(输入设备),或者,空闲状态(输出设备),,则CPU执行输入指令或输出指令与外设交换信息,接口电路主要包括:,数据输入寄存器、数据输出寄存器和状态寄存器。,条件传送方式,条件传送方式,一个数据传送过程:,()CPU从接口中读取状态字;,()CPU检测状态字的对应位是否满足“就绪”条件,如果不满足,则回到前一步读取状态字;,()如状态字表明外设已处于“就绪”状态,则传送数据,条件传送方式,数,据,缓,冲,器,三,态,缓,冲,器,锁,存,器,输,入,设,备,地址,译码,R,D,Q,数据,选,通,数据,/RD,M/IO,/WR,地址总线,D0D7,READY,图5.3查询式输入接口电路,条件传送方式,状态,寄存,器,数,据,锁,存,器,输,出,设,备,地址,译码,R,Q,D,数据,数据,/RD,M/IO,/WR,地址总线,数据总线,BUSY,5V,ACK,选通信号,图5.4 查询式输出接口电路,初始化,测试数据,是否准备好?,处理缓冲区数据,传送到内存缓冲区,对数据进行处理,输入1个字节或字到CPU,操作完成否?,后续处理,Y,Y,N,N,条件传送方式,查询的优先级,当一个系统中有多个外设,采用查询方式传送数据时,涉及到CPU先查询哪个外设的状态以及先和哪个外设进行数据的传送的问题,这就是优先级的问题,实现方法,可以利用程序的优先级来实现设备的优先级,即把优先级高的外设的状态查询程序放在最前面当几个外设处于同等地位时,即没有优先级时,即采用循环查询法,条件传送方式,查询方式的特点:,比无条件传送可靠;,传送效率低;,实时性差,(2)中断方式,原理,当输入设备将数据准备好或者输出设备可以接收数据时,便可以通过CPU 的中断引脚向其发出中断请求,使CPU暂时停下目前的工作而和外设进行一次数据传输等输入操作或者输出操作完成以后,CPU继续进行原来的工作,在中断方式下,外设具有申请CPU服务的主动权,(2)中断方式,特点,外设具有主动权,CPU和外设并行工作;,实时性好,工作效率高;,传输率还不够高,三,态,缓,冲,器,中断,屏蔽,触发器,锁,存,器,输,入,设,备,地址,译码,中断请求,D,Q,数据,选,通,+5V,Q,/INT,地址总线,D0D7,/INTA,/RD,(2)中断方式,图5.6中断方式输入的接口电路,(2)中断方式,中断优先级问题,微型计算机系统中对中断优先级采用以下三种办法来解决:,软件查询方式;,简单硬件方式菊花链法;,专用硬件方式可编程中断控制器,软件查询方式,磁带机设备A,优先级最高,CRT设备B,优先级次之,打印机设备C,优先级最低,A中断请求信号,B中断请求信号,C中断请求信号,1,INTR,A状态位,B状态位,C状态位,1,CPU,保护现场,A状态位=1?,与A进行,数据传送,B状态位=1?,与B进行,数据传送,C状态位=1?,与C进行,数据传送,恢复现场,中断返回,Y,Y,Y,N,N,N,简单硬件方式菊花链法,菊花链法,是在每个外设对应的接口上连接一个逻辑电路,这些逻辑电路构成一个链,称为菊花链由菊花链来控制中断回答信号的通路,图5.8(a)是菊花链的线路图,图5.8(b)是菊花链上各个中断逻辑电路的具体线路图,CPU以及总线,控制逻辑,/INTA,INTR,设备1,接口,菊花链,逻辑电路,设备2,接口,菊花链,逻辑电路,设备3,接口,菊花链,逻辑电路,中断请求,中断回答,菊花链逻辑,电路,中断请求,中断回答,中断请求,/INTA,INTR,专用硬件方式,当前,在微型计算机系统中解决中断优先级管理的最常用的办法是采用,可编程的中断控制器,图5.9给出了中断控制器的典型设计电路框图和在系统中的接法,CPU,总线控制逻辑,当前中,断服务,寄存器,中断,请求,锁存器,优先级,管理逻辑,中断屏蔽寄存器,中断优先级管理,由中断请求决定,中断类型寄存器,控制总线,地,址,/,数,据,总,线,地址总线,数据总线,控制总线,/INTA,IR1,IR7,IR0,INTR,(3)DMA方式,DMA传送方式的提出,()中断方式下,CPU要执行与数据传送无关的程序,如:保护现场、恢复现场等;,()指令队列进入中断程序后,原来的内容被清除,中断返回后需要重新装入指令;,()中断方式下,数据的传送只能按字节或字进行,当传送的数据非常大时,所需时间长。,为了解决这些问题,实现数据的快速传送和按块传送,就需要改变传送方式,这就提出了直接存储器传送方式,即DMA(direct memory access)方式,3)DMA方式,DMA控制器的功能和DMA传送原理,DMA控制器工作原理和DMA传送原理如图5.10所示(单个数据的输出过程),内存,接口,DMA,控制器,CPU和总线,控制逻辑,接口准备就绪,发DMA请求,发总线请求,总线允许,DMA请求,得到确认,内存把数据送数据总线,接口锁存数据,DMA控制器把地址送地址总线,撤销总线请求,CPU收回总线控制权,I/O设备,控制总线,地址总线,数据总线,()数据传送过程中的几个问题,系统和接口的联系方式,多外设系统中,数据传送的优先级,缓冲区,缓冲区的概念,在大多数情况下,系统和外设之间传输的数据量非常大,且在传输完毕后才能使用这些数据这时就要在内存中开辟一组连续的存储单元存放从外设输入的数据,或者先把数据存放在这片连续的内存单元中,再输出到外设一般将用于这种目的的存储区域称为,内存缓冲区或简称缓冲区,