工学微机原理与接口分析课件.pptx
《工学微机原理与接口分析课件.pptx》由会员分享,可在线阅读,更多相关《工学微机原理与接口分析课件.pptx(321页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第 10 章 输入输出接口(1)微处理器支持输入输出操作的逻辑和指令支持执行输入输出指令的逻辑 8259芯片为核心组成的中断控制逻辑8237为核心组成的DMA控制逻辑 这些逻辑,一侧与微处理器相连,受微处理器控制和管理,另一侧则形成系统总线接到扩充插槽的接点上,成为与输入输出接口板的物理连接点。第1页/共321页10.1输入输出接口基础 输入输出的基本方式 1.输入输出指令 在输入输出地址空间中,占据一个输入输出地址的称为一个输入输出端口或简称为端口(PORT)。CPU可以从端口读入数据,也可以向端口输出数据。对8086微处理器,输入输出指令的一般格式为:第2页/共321页 IN DST,SR
2、C OUT DST,SRC IN指令,目的地址DST的寻址方式为寄存器方式,字节输入时为AL,字输入时为AX。源操作数的寻址方式有两种:(1)直接寻址方式,即在SRC的位置上直接写上代表端口地址的数或能求出值的表达式。对于直接寻址方式有一点限制,就是端口地址不能大于255(0FFH),因为直接寻址方式的指令汇编后是两个字节的指令,第2个字节是端口地址的二进制代码。(2)寄存器间接寻址。间址寄存器为DX,书写为IN AL,DX或IN AX,DX。第3页/共321页 采用DX寄存器,端口地址的大小没有限制,但必须在合法的输入输出地址空间内(有效I/O地址范围为0FFFFH)。间接寻址指令经汇编为单
3、字节指令。对于OUT指令,源操作数的寻址方式和IN指令的目的操作数的寻址方式相同,目的操作数寻址方式与IN指令的源操作数寻址方式相同。有 8 位端口和 16 位端口两种端口。如表10.1所示。对于 8 位端口而言,要用一条指令输入或输出 16 位数据将涉及两个相邻的端口,对于 16 位端口,用一条指令输入或输出 16 位数据只涉及一个端口。第4页/共321页第5页/共321页 输入输出指令的执行不影响任何标志位的状态。80286及以后的微处理器增加了字符串输入输出指令。这些指令既具有某些输入输出指令的特点又具有某些字符串操作指令的特点。第6页/共321页 2.输入输出同步问题 IN指令可以把外
4、部数据输入CPU,OUT指令可以把CPU的数据输出到外部,它们是实现数据输入输出传输的基础。在实际数据传输过程中,有一个突出的必须解决的问题,就是主机与外部设备之间时间同步的问题。表现在:第7页/共321页 (1)外部设备工作时有自己的定时机构,主机在运行程序、执行指令时也有自己的定时系统,它们在时间上是不同步的。解决方法:主机和外部设备之间除传输数据之外,还需要互相提供联络信息。联络信息可以理解为状态信息,如向接收方提供“数据已准备好”的状态,请对方取走;联终信息也可理解为命令或请求,如“把数据取走”。第8页/共321页 (2)一个微机系统中,如果有多个外部设备存在,也就存在这种可能性:两个
5、或多于两个设备同时要求与主机交换信息。解决方法:必须以某种策略决定首先应该响应和处理哪个设备的传输请求,然后响应和处理哪个设备的传输请求。第9页/共321页 3.数据输入输出的基本方式 有3种基本输入输出方式。(1)程序直接控制传送方式(查询方式)程序直接控制输入输出方式就是完全通过执行程序来控制实现主机与外部设备之间的数据交换。可以归纳为以下特点:数据的传输靠执行指令实现 外部设备的状态信息用IN指令输入,然后测试 这种输入输出方式的优点简单、实现容易。缺点:第1,为了测试和等待外部设备作好传输数据的准备,要花费大量的时间。第2,CPU在一段时间里只能和一个外部设备之间传输数据,其它设备只能
6、等待。第3,不能发现和处理预先无法估计的错误和异常现象。第10页/共321页第11页/共321页图 查询式输出数据的程序流程图第12页/共321页 查询输出的程序段如下:SCAN:IN AL,状态口地址;取状态信息 TEST AL,01H ;测忙闲标志 JNZ SCAN ;忙,转移 MOV AL,某数 OUT 数据口地址,AL;空闲,输出数据第13页/共321页 (2)程序中断控制方式 程序中断就是主机在运行程序时出现了特殊的情况,暂时停止执行正在运行的程序,转到另一段处理特殊情况的程序,待特殊情况处理程序执行完后,返回到被暂时停止的程序接着运行。第14页/共321页图 中断过程示意图第15页
7、/共321页图 中断处理流程第16页/共321页 内部中断:由于CPU内部操作或执行某些指令时引起的程序中断。外中断:由于CPU外部信号引起的程序中断。借助于CPU响应外中断请求的能力,实现输入输出的控制,简称为程序中断方式输入输出。利用程序中断机制,可以实现多种功能。首先,外部设备要有接口逻辑,能把外部设备的状态信息变成中断请求信号,加入CPU的中断请求输入端。然后,CPU接受(响应)中断请求,转入中断处理程序(也称中断服务程序),输入输出数据的传输是在中断处理程序中用输入输出指令实现的。第17页/共321页 对于程序中断输入输出方式可以概括出以下特点:虽然程序中断功能参与了控制,但数据的传
8、输仍然要靠在程序中排入I/O指令完成。这一点和程序直接控制输入输出方式是相同的。外部设备要求与CPU传输数据的状态信息,是从CPU的中断请求输入端直接加入的,从而使系统的时间利用率大大提高了。中断控制输入输出是靠硬件和软件相配合实现的。这种输入输出方式的主要优点是采用中断控制输入输出大大提高了CPU的时间利用率。第18页/共321页 (3)存储器直接存取方式 存储器直接存取DMA(Direct Memory Access)方式的基本思想是在外部设备和存储器之间开辟直接的数据传输通路,数据传输不是靠执行I/O指令,数据不经过CPU内的任何寄存器,而是在存储器和外部设备之间的通路上直接传输数据。这
9、种I/O方式的实现主要是靠硬件的功能。首先,微处理器本身在设计时就能实现这种功能。其次,在组成微机系统时,还必须配有DMA控制器,共同组成DMA控制机构,实现DMA传输所需要的全部功能。DMA的I/O方式的实现更加复杂,不仅要有DMA传输数据的控制机构,还要有程序直接控制的输入输出方式或中断控制输入输出方式的硬件和软件支持DMA的实现。第19页/共321页 输入输出接口的基本结构 接口(Interface)一词的基本意思是交接界面,所以任何相关的异体之间总存在着接口。在一个微机系统内,由于各部分之间要交换信息,所以各部分之间也存在接口;在微机系统内,微处理器与其它部分的接口就是体现在微处理器输
10、入输出引脚上的微处理器级总线。系统级总线是I/O接口的重要组成部分,是讨论的重点之一。第20页/共321页 1.I/O接口的组成框图 图10.2是IBM PC系列微机的组成框图。在主机板中,这些I/O控制逻辑从功能上可以归纳出这些部分:(1)为执行I/O指令服务的逻辑;(2)实现中断控制功能的逻辑;(3)实现DMA控制的逻辑;(4)某些外设的接口逻辑。系统级总线才是主机板与外界之间的最直接的界面。系统总线体现为一组信号线。第21页/共321页图 10.2 IBM PC系列机I/O结构框图 第22页/共321页 在微机系统中,输入输出的操作是由复杂的I/O接口控制实现的。输入输出接口一般都是由硬
11、件和软件共同支持完成的。硬件:I/O接口包括主机板上的接口逻辑、系统总线和具体外设的接口逻辑。软件:接口与软件的关系有两方面的含义。一方面的含义是接口的软件。接口的开发自然包括必要的软件开发。另一方面含义是软件的接口。接口开发设计的任务是在充分利用系统已经提供的I/O接口的硬、软件资源的基础上,开发出专用设备的接口逻辑和应用软件。第23页/共321页 2.IBMPC系统提供的接口资源 IBM PC/XT及其兼容机的基本配置包括主机箱、键盘、CRT显示器、打印机和软、硬磁盘机。如图10.2。第24页/共321页 系统总线是通过扩展插槽与外部设备的接口逻辑相接的。所有插槽是并联的,即各插槽接点上的
12、信号排列是相同的。基本配置的系统为I/O接口即提供了硬件资源又提供了软件资源。提供的硬件资源包括:(1)在扩充插槽上提供了系统级总线。系统总线是主机板与外部设备接口相连的唯一途径,任何外设接口的开发,必须建立在系统总线的基础上。(2)主机板上有键盘接口逻辑和扬声器接口逻辑。键盘接口逻辑的出口不接到系统总线上,而是接在机箱后的专用插座上。扬声器接口与固定在机箱内的扬声器直接相接。第25页/共321页 (3)主机板上有以两片8259中断控制器为核心组成的中断控制逻辑。(4)主机板上有以两片8237DMA控制器为核心组成的DMA传送控制逻辑,供协处理器接口以及CMOS等使用,其余中断级留给其它外设接
13、口使用。第26页/共321页 (5)主机板上有一片8254定时/计数器芯片,有 3 个功能:第 1 个功能是用于当日计时,和CMOS共同组成定时计时系统。第 2 个功能是为动态存储器刷新提供定时信号。第 3 个功能是通过编程向扬声器提供声音信号。(6)基本(或常规)配置的系统微机包含的I/O接口卡可能有不同的组合,但在功能上和编程上是兼容的。通常包括以下接口逻辑:显示器接口。由于现在很少用单色显示器,所以现在显示器接口虽有不同制式,但都支持彩色的字符和图形显示。两个标准(Centronics)的并行打印机接口,不仅支持并行打印机工作,也支持任何遵守这种接口协议的输出设备,如绘图仪等。第27页/
14、共321页 两个标准(RS232)的串行异步通信接口。由于RS232串行异步通信接口应用广泛,早期它是可选接口,现在已成为基本配置的接口。借助电话网络实现微机之间通信时,基本方法是微机的RS232接口经过一个Modem(调制解调器)与电话线相接。磁盘驱动器接口,通常能连接两个软盘驱动器和两个硬盘驱动器。除此之外,系统总线中还提供了相当容量的+5 V、-5 V、+12 V和-12 V直流电源。系统为I/O接口提供的软件资源包括DOS的功能调用和BIOS(Basic Input/Output System)调用。第28页/共321页 3.IBMPC/XT机的系统级总线 为任何外部设备开发接口,都必
15、须依据系统总线提供的信号。系统总线的全部信号都接在扩充插槽的接点上。IBM PC/XT系统总线。PC/XT的微处理器是8088/8086,总线的地址为20位,数据线为8位,称其为8位总线。80286微处理器组成的IBM PC/AT系统级总线,称为ISA(Industry Standard Architecture)总线,又称PC/AT总线。它是在8位的PC/XT总线基础上扩展成为16位总线。EISA(Extended ISA)总线和MCA(Micro Channel Architecture)总线等。第29页/共321页第30页/共321页 (1)地址总线 A0A19,方向为输出,是系统存储器
16、和I/O端口公用的地址总线。在存储器地址选择时,20位地址总线全部采用,但I/O端口地址译码只用其中的A0A9共10条线。(2)数据总线 D0D7,数据总线,是双向的。D0为低位,D7为高位,高电平为数值1。(3)控制总线 对控制总线,按功能还可以分成以下几组:扩充板上存储器操作需要的控制信号线有:第31页/共321页 ,方向为输出,存储器读控制信号,低电平有效。扩充板上的存储器在这个信号控制下,把选定单元的数据置入数据总线。,方向为输出,存储器与控制信号,低电平有效。扩充板上的存储器在这个信号控制下,把数据总线上的数据写入选定的存储单元。I/O读写操作需要的控制信号线有:,方向为输出,I/O
17、端口读操作控制信号,低电平有效。在执行IN指令时,CPU发出这个信号;在DMA传送时,由DMA控制器发出这个信号。I/O接口设计时可以利用这个信号控制把外设的数据置入D0D7数据线。第32页/共321页 ,方向为输出,I/O端口写操作控制信号,低电平有效。在执行OUT指令时由CPU发出;在DMA传送是由DMA控制器发出。可以利用这个信号控制外设接收数据总线上的数据。AEN,方向为输出,控制信号。在DMA操作时为高;执行IN和OUT指令时为低。当用户自己开发I/O接口时,这个信号不可忽视,后面还将说明。I/O端口地址译码时,它要经过反相加入译码器的输入端。I/,外部输入信号引端,低电平有效。在扩
18、充板上的存储器或I/O端口上,如果有奇偶校验逻辑,其输出信号可以加在这个引端上。如果校验有错产生低电平加入,将引起NMI中断。第33页/共321页 存储器读写和I/O读写可能需要以下的信号线:ALE,输出的“地址锁存”控制信号。它总是伴随着地址总线上的地址信号的出现而出现。所以,可以利用它的下降边把地址线上的信号锁存于锁存器中,以便地址线上的信号消失时使用。I/O CHRDY,外部输入信号引端。它向CPU提供是否“准备好”信息。如果扩充板上的存储器或I/O接口的工作速度较低,在正常的机器周期内不能完成规定的操作,可产生一个低电平信号加在此端。此端的低电平可以使机器周期延长数个时钟周期,从而实现
19、CPU操作与低速外设操作在时间上的同步。中断请求信号线:第34页/共321页 IRQ2IRQ7,27级的中断请求信号输入端。就是说,允许有6个外部的中断信号源。这6级中,级2优先级最高,级7优先级最低。级0和级1被主机板上定时中断和键盘中断占用。系统板上的中断控制器8259在程序初始化阶段已经设定,在IRQ2IRQ7上的有效信号形式是从低电平向高电平的上跳变。DMA操作请求和响应信号线:DRQ1DRQ3,方向为输入,3 个通道的DMA传送请求信号端。DRQ1的级别最高,DRQ3的级别最低。DRQ0在主机板内部,用于控制动态存储器的刷新。高电平信号有效。第35页/共321页 ,方向为输出,是CP
20、U对DMA请求的回答(允许)信号,它们分别对应DRQ0、DRQ1DRQ3,低电平有效。T/C,方向为输出,来自于DMA控制器,当某个通道计数到终值(0)时,该端输出高电平信号。(4)其它信号线 OSC,输出信号,输出14.318 MHz的方波。CLK,输出信号,是OSC信号经过三分频形成的4.77 MHz基本时钟脉冲。RESETDRV,输出信号,在系统加电或复位时产生,在时间上与时钟信号的下降边同步,高电平有效,用于对接口或外设的初始化。第36页/共321页 指令需要的接口逻辑和I/O端口地址分配 无论哪种输入输出方式,I/O指令是实现输入输出控制的基础。从应用的目的出发,本节还将介绍IBM
21、PC机基本配置下I/O端口地址的分配情况。1.I/O指令需要的接口逻辑 I/O指令执行时,都必须有I/O端口地址的选择。第37页/共321页图 外设接口第38页/共321页 端口地址是利用A0A9共10条地址线。开发一个I/O端口方法:指定一个端口地址;设计一个地址译码器;在输入端的地址状态与指定的端口地址一致时,译码器恰好输出有效信号,作为端口选择信号。图10.4是端口译码电路的一个例子,只形成两个端口选择信号,一个用于输出指令读,另一个用于输出指令写,但都对应一个端口地址300H。第39页/共321页第40页/共321页 图10.5是多端口地址译码电路的例子,取自于IBM PC机并行打印机
22、接口逻辑图。输出端WPA和WPC分别是端口地址378H和37AH的写选择信号,在执行OUT指令时产生;RPA、RPB和RPC分别是地址378H、379H和37AH的读选择信号,在执行IN指令时产生。第41页/共321页图 10.5 多端口地址译码电路 第42页/共321页 芯片的数据线端D0D7将与系统总线的数据总线D0D7相接。经过这样连接后,就可用IN指令和OUT指令访问芯片内有端口地址的寄存器了。图10.6所示的单端口地址译码电路。对于输入数据的端口,执行IN指令时输入一个数据。它可以等效为一个锁存器和一组三态门缓冲器,其典型结构如图10.7所示。第43页/共321页图 10.6 大规模
23、集成I/O接口 第44页/共321页图 10.7 输入数据据端口第45页/共321页 对于输出数据的端口,执行OUT指令时将接收CPU经数据总线输出的一个数据。它也可以等效为一个锁存器,其典型结构如图10.8所示。第46页/共321页第47页/共321页 2.IBMPC/AT机的I/O端口地址分配 IBM PC/AT系统I/O地址空间范围为03FFH(01023)。表10.2列出了PC/AT系统I/O端口地址的分配情况。用户可以使用的I/O地址有:1001EF、22026F、2802AF、30035F。第48页/共321页第49页/共321页10.2中 断系统 微处理器的中断功能 中断是反映C
24、PU暂停正在执行的程序,转去执行处理中断事件的中断服务程序,待执行完中断服务程序再返回到原被中断的程序继续执行。通常称引起中断的事件为中断源。1.中断的种类和中断类型号 中断的种类可以概括如下:第50页/共321页第51页/共321页图 8086/8088中断分类第52页/共321页 从大的方面分,中断可分为外部硬中断和内部中断两大类。外部硬中断是微处理器外部事件发生,产生中断请求信号,中断请求信号再通过微处理器芯片上的接受中断请求信号的引脚 加入微处理器而出现的中断。微处理器芯片上有两个引脚用于接受外部中断请求信号:NMI和INTR,分别接受非可屏蔽中断请求和可屏蔽中断清求。可屏蔽:是指微处
25、理器的PSW寄存器中的IF控制位对中断响应存在控制作用。非可屏蔽:是指微处理器的PSW寄存器中的IF控制位对中断响应不存在控制作用。第53页/共321页 可屏蔽中断的中断请求信号在微处理器的INTR端加入。常规外部设备,如键盘、打印机、磁盘机、串行异步通信接口,以及自己开发的接口设备或专用接口(如组成计算机网络的链路卡)等。将主要讨论可屏蔽中断操作及应用。非可屏蔽中断NMI用来处理存储器奇偶校验出错等对整个系统来说致命的异常情况,个人用户通常不介入NMI的使用。内部中断的中断源在微处理器内部。由于微处理器的主要工作就是执行程序中的指令,所以内部中断都涉及到指令的执行。第54页/共321页 内部
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工学 微机 原理 接口 分析 课件
限制150内