您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 微机原理输入输出接口
第七章输入输出接口本章学习目标了解接口的概念以及接口的基本结构;掌握几个典型接口芯片逻辑及其结构;在熟练汇编语言的基础上,掌握具体接口芯片的编程;熟悉关于接口的程序编写方法和BIOS功能调用,能够编写出实用的IO程序。Pentium微机的主板与IBMPC/XT有发展:第一:pentium机主板支持更广泛的应用领域。如多媒体和网络技术。第二:集成技术的发展,使原来多种功能独立的IO控制集成在南桥芯片中。参考教材146页图6.4ICH5G结构原理图。从学习的角度和编程应用的角度,仍然遵从IBMPC/XT的输入输出接口方式。I/O接口的基本功能:(为什么要用I/O接口电路)总的来说,I/O接口具有下述三方面功能:(1)速度的匹配(2)信息格式的变换:包括串并转换,A/D,D/A转换,电平转换等。(3)提供主机和外设间传送数据所必须的状态和控制信息。主机(CPU)和I/O设备之间传送的信息格式1.数据信息:(1)数字量(计算机可以直接接收和处理的数据)(2)模拟量2.状态信息例如:输入设备的“Ready”和输出设备的“Busy”特点:①CPU外设接口②可读(不可写)3.控制信息:特点:①CPU外设接口②可写(不可读)控制对象传感器执行部件运放功放A/DD/A微型计算机数字量模拟量内容分布7.1输入输出接口基础(重点)7.2并行数据接口(重点)7.3中断系统(重点)7.4DMA传送和DMA控制器82377.5主机板上的计时计数逻辑(重点)7.6串行异步通信接口7.7总线概述§7.1输入输出接口基础一、输入输出的基本方式⑴微机系统中存在着存储器地址空间和I/O端口地址空间。⑵与存储器类似,在I/O端口地址空间中,占据一个输入输出地址的称为一个端口(PORT)。⑶对8086微处理器从端口读入数据的指令称为输入指令,助记符为IN;⑷向端口输出数据的指令称为输出指令,助记符为OUT。指令的一般格式:名称助记符和格式操作功能输入INAL,PORTINAX,PORTINAL,DXINAX,DX(AL)←(PORT)(AX)←(PORT+1:PORT)(AL)←((DX))(AX)←((DX)+1:(DX))输出OUTPORT,ALOUTPORT,AXOUTDX,ALOUTDX,AX(PORT)←(AL)(PORT+1:PORT)←(AX)((DX))←(AL)((DX)+1:(DX))←(AX)对于IN(或OUT)指令,目的地址DST的寻址方式为寄存器方式,字节输入时为AL,字输入时为AX。源操作数的寻址方式有两种:①直接寻址方式(端口地址小于255)INAL,0FFHOUT21H,AL②寄存器间接寻址方式(端口地址大于255)MOVDX,200HINAL,DXOUTDX,AL输入输出指令的执行不影响任何标志位的状态。二、输入输出同步问题在实际数据传输过程中,有一个突出要解决的问题,就是主机与外部设备之间时间同步的问题,具体表现在:外部设备工作时有自己的定时机构,主机在运行程序、执行指令时也有自己的定时系统,它们在时间上是不同步的。一个微机系统中,如果有多个外部设备存在,也就存在这种可能性:两个或多个设备同时要求与主机交换信息,主机如何优先响应。三、输入输出的基本工作方式主机与外设之间的输入输出共有三大类四小种方式。它们分别是:程序直接控制传送(无条件传送方式——自设计小系统查询方式——微机系统)中断方式——微机系统存储器直接访问(DMA)方式——微机系统程序直接控制传送方式--无条件适用条件:外设的定时已知或固定。特点:输入输出完全由IN/OUT指令实现,用延时子程序实现定时。MOVCX,8MOVAL,1A1:MOVDX,201HOUTDX,ALSHLAL,1CALLDELAYLOOPA1延时子程序程序直接控制传送方式--查询方式适用条件:外设的定时未知或不固定。特点:输入输出完全由IN/OUT指令实现。外部设备的状态信息用IN指令输入,然后查询外设是否就绪?为就绪则继续查询;就绪则完成输入输出。程序直接控制I/O的程序结构其他功能其他功能I/O指令传输数据从状态端口读入信息传输准备好?YN查询方式举例:LEASI,DATA1A1:INAL,40HTESTAL,80HJNZA1MOVAL,[SI]MOVDX,201HOUTDX,AL设备状态端口程序直接控制输入输出方式的特点:⑴数据的传输靠执行指令来实现。每个要输入输出的数据必须经过微处理器中的寄存器AL和AX。⑵这种输入输出方式的优点是简单、实现容易。但存在明显的缺点:第一,为了测试和等待外部设备作好传输数据的准备常常花费大量的时间。在这段时间内,程序不能完成其他任务,所以使系统的时间利用率大大降低。第二,CPU在一段时间里只能和一个外部设备之间传输数据,其它设备只能等待。第三,不能发现和处理预先无法估计的错误和异常现象。所以这种输入输出方式只适用于CPU数据处理任务不烦忙,而且外部设备数较少的情况。中断机制:程序中断就是主机在运行程序时出现了特殊情况,暂时停止执行正在运行的程序,转到另一段处理特殊情况的程序,待特殊情况处理程序执行完毕后,返回到被暂时停止的程序接着运行。由于CPU内部操作或执行某些指令时引起的程序中断,称为内部中断;由于CPU外部信号引起的程序中断,称为外中断。利用程序中断机制,可以实现多种功能。借助于CPU响应外中断请求的能力,实现输入输出的控制,称为程序中断方式输入输出。中断控制方式程序中断输入输出方式可以概括出如下重点:⑴虽然中断机制参与了输入输出控制,但数据的传输仍然要靠在程序中排入I/O指令完成。⑵数据的输入输出由外部设备发起。当外部设备就绪(或有需求时),就向CPU的INTR端发送一个中断请求信号。否则不发送中断请求信号。CPU不主动查询外设状态,被动响应外设请求。⑶中断控制输入输出是靠硬件和软件相配合实现的。存储器直接访问DMA(DirectMemoryAccess)方式的基本思想是在外部设备和存储器之间开辟直接的数据传输通路,数据传输不是靠执行I/O指令,数据不经过CPU内的任何寄存器,也就不破坏任何寄存器原来存的内容,而是在存储器和外部设备之间的通路上直接传输数据。这种I/O方式的实现主要靠硬件的功能。在数据传输时没有程序和指令介入。高速外部设备与存储器之间交换成批数据的情况。存储器直接存取方式首先,微处理器本身在设计时就能实现这种功能。8086的HOLD和HLDA这两个引脚就是为这种I/O方式服务的。CPU将总线的控制权交给DMA控制器,使外部设备与存储器之间有直接通路连通,并控制传输一个或多个字节。其次,组成微机系统时,还必须配有DMA控制器,共同组成DMA控制机构,实现DMA传输所需要的全部功能。在数据传输时,CPU只是暂停一个或几个总线周期的时间,CPU内各寄存器的内容没有任何改变,所以CPU的时间利用率比前两种I/O方式大大提高。返回本章首页三、输入输出接口的基本结构接口(Interface)的基本意思是交接界面,所以任何相关的异体之间总存在这接口。①两个系统之间有数据往来,它们之间就存在接口;②一个微机系统内,由于各部分之间要交换信息,各部分之间也存在接口。I/O接口的组成框图部分存储器和控制逻辑并行打印机接口CRT显示器接口RS232C串行接口磁盘机接口其他设备接口系统总线部分存储器和控制逻辑I/O指令控制逻辑中断控制机构DMA控制机构其它I/O逻辑微处理器主板其他设备磁盘机显示器打印机外设接口硬件接口的控制在主板,连线用扩展插槽①最早是IBMPC/XT系统总线62脚,由于PC/XT的微处理器是8088/8086,所以总线的地址为20位,数据线为8位,称其为8位总线。②在80286微处理器组成的IBMPC/AT系统总线出现以后,直至目前,使用最多的称为ISA(IndustryStandardArchitecture)总线,又称PC/AT总线。它在8位的PC/AX总线基础上扩展成为16位总线。增加了36脚。③后来又出现了EISA(ExtendedISA)和MCA(MicroChannelArchitecture)等32位总线。④现在pentium机上常用的是PCI总线。接口一词也与软件有关。接口与软件的关系有两方面的含义。一方面的含义是接口的软件。接口的功能的实现常常包括软件,输入输出接口一般都是由硬件和软件共同支持完成的,接口的开发自然包括必要的软件开发。另一方面含义是软件的接口。许多系统软件包含许多子程序。为减轻应用软件开发的负担,允许应用软件调用系统软件中的子程序完成应用软件中某些要求的功能。IBMPC系统提供的接口资源基本配置的系统为I/O接口既提供了硬件资源又提供了软件资源。提供硬件资源包括:⑴在扩充插槽上提供了系统级总线;⑵主板上有键盘接口逻辑和扬声器接口逻辑;⑶主板上有以两片8259中断控制器为核心组成的中断控制逻辑;⑷主板上有以两片8237DMA控制器为核心组成的DMA传送控制逻辑,共有8个数据通道,用于实现内存与外设之间和内存存储区之间直接、快速、成批数据的传送。⑸主板上有一片8254定时/计数器,有3个功能:第1个功能是用于当日计时,和CMOS共同组成定时计时系统;第2个功能是为动态存储器刷新提供定时信号;第3个功能是通过编程向扬声器提供声音信号。⑹基本配置的系统微机包含的I/O接口卡可能有不同的组合,但在功能上和编程上是兼容的。通常包含以下接口逻辑:◇显示器接口;◇两个标准(Centronics)的并行打印机接口;◇两个标准(RS232)串行异步通信接口;◇磁盘驱动器接口,通常能连接两个软盘驱动器和两个硬盘驱动器。此外,系统总线中还提供了相当容量的+5V、-5V、+12V和-12V直流电源。系统为I/O接口提供的软件资源主要包括DOS的功能调用和BIOS(BasicInput/OutputSystem)调用。BIOS本来是指固化在ROM中的程序,这些程序支持系统刚刚加电时的一系列初始功能,这些程序中还包含很多输入输出子程序,用户在编写汇编语言程序时也可以调用它们。三、I/O指令所需的接口逻辑和端口地址分配系统IO端口地址的分配十分重要。I/O指令执行时,都必须有I/O端口地址的选择。端口地址的选择与访问存储器时对存储单元的地址选择很相似,也是用译码器逻辑对系统总线中的地址总线进行译码实现的。微机系统中端口地址范围为1024个端口,用低10条地址线进行部分译码。在286的系统中,前256个端口(000H~0FFH)提供主板上的接口芯片使用;后768的个端口(100H~3FFH)供扩展槽上的接口控制卡使用。返回本章首页IO芯片DMAC1DMAC2DMA页码寄存器中断控制器1中断控制器2定时器并行接口芯片RT/CMOS端口地址094H~09FH0C0H~0DFH080H~090H020H~021H0A0H~0A1H040H~043H060H~063H070H~073H§7.28255并行数据接口Intel8086/8088系列的可编程外设接口电路(ProgrammablePeripheralInterface)简称PPI,型号为8255(改进型为8255A及8255A-5),具有24条输入/输出引脚、可编程的通用并行输入/输出接口电路。它是一片使用单一+5V电源的40脚双列直插式大规模集成电路。8255A的通用性强,使用灵活,通过它CPU可直接与外设相连接。8255A具有三个相互独立的输入/输出通道:通道A、通道B、通道C。A,B,C三通道可以联合使用,构成单线、双线或三线联络信号的并行接口。此时C口完全服务于A、B口。A口有三种工作方式:方式0、方式1、方式2。B口有两种工作方式:方式0、方式1。8255A内部结构框图8255A内部结构8255A内部结构由以下四部分组成:数据端口A、B、C;A组控制和B组控制;读/写控制逻辑电路;数据总线缓冲器。端口A:包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入锁存器,可作为数据输入或输出端口,并工作于三种方式中的任何一种。端
本文标题:微机原理输入输出接口
链接地址:https://www.777doc.com/doc-2435728 .html