《IO接口的基本概念.ppt》由会员分享,可在线阅读,更多相关《IO接口的基本概念.ppt(60页珍藏版)》请在金锄头文库上搜索。
1、第第 8 8 章章第第8章章 基本输入输出接口基本输入输出接口教学重点 I/O接口电路的典型结构接口电路的典型结构 无条件传送方式无条件传送方式 查询传送方式查询传送方式 中断工作过程中断工作过程第第8章:章:8.1 I/O接口概述接口概述为什么需要为什么需要I/OI/O接口(电路)接口(电路)?微机的外部设备多种多样微机的外部设备多种多样工工作作原原理理、驱驱动动方方式式、信信息息格格式式、以以及及工工作作速度方面彼此差别很大速度方面彼此差别很大它们不能与它们不能与CPU直接相连直接相连必须经过中间电路再与系统相连必须经过中间电路再与系统相连这部分电路被称为这部分电路被称为I/O接口电路接口
2、电路多种外设多种外设第第8章:章:8.1 I/O接口概述接口概述(续(续1)什么是什么是I/O接口(电路)?接口(电路)?I/O接接口口是是位位于于系系统统与与外外设设间间、用用来来协协助助完完成成数据传送和控制任务的逻辑电路数据传送和控制任务的逻辑电路PC机机系系统统板板的的可可编编程程接接口口芯芯片片、I/O总总线线槽槽的电路板(适配器)都是接口电路的电路板(适配器)都是接口电路CPUCPU接口接口接口接口电路电路电路电路 I/OI/O设备设备设备设备第第8章:章:8.1 I/O接口概述接口概述(续(续2)什么是微机接口技术?什么是微机接口技术?处理微机系统与外设间联系的技术处理微机系统与
3、外设间联系的技术注意其软硬结合的特点注意其软硬结合的特点根根据据应应用用系系统统的的需需要要,使使用用和和构构造造相相应应的的接接口口电电路路,编编制制配配套套的的接接口口程程序序,支支持和连接有关的设备持和连接有关的设备第第8章:章:8.1.1 I/O接口的主要功能接口的主要功能 对输入输出数据进行缓冲和锁存对输入输出数据进行缓冲和锁存输出接口有输出接口有锁存环节锁存环节;输入接口有;输入接口有缓冲环节缓冲环节实际的电路常见:实际的电路常见:输出锁存缓冲环节输出锁存缓冲环节、输入锁存缓冲环节输入锁存缓冲环节 对信号的形式和数据的格式进行变换对信号的形式和数据的格式进行变换微机直接处理:微机直
4、接处理:数字量数字量、开关量开关量、脉冲量脉冲量 对对I/O端口端口进行寻址进行寻址 与与CPU和和I/O设备进行联络设备进行联络第第8章:章:8.1.2 I/O接口的典型结构接口的典型结构控制总线控制总线CB地址总线地址总线ABI/O接口电路接口电路数据数据控制控制状态状态数据总线数据总线DBCPU外设外设控制寄存器控制寄存器状态寄存器状态寄存器数据寄存器数据寄存器1. 接口电路的内部结构接口电路的内部结构2. 接口电路的外部特性接口电路的外部特性3. 接口电路芯片的分类接口电路芯片的分类4. 接口电路的可编程性接口电路的可编程性第第8章:章:1. 接口电路的内部结构接口电路的内部结构CPU
5、与与外外设设主主要要有有数数据据、状状态态和和控控制制信信息息需要相互交换,于是从应用角度看内部:需要相互交换,于是从应用角度看内部: 数据寄存器数据寄存器输入数据寄存器:保存外设给输入数据寄存器:保存外设给CPU的数据的数据输出数据寄存器:保存输出数据寄存器:保存CPU给外设的数据给外设的数据 状态寄存器状态寄存器保存外设或接口电路的状态保存外设或接口电路的状态 控制寄存器控制寄存器保存保存CPU给外设或接口电路的命令给外设或接口电路的命令第第8章:章:2. 接口电路的外部特性接口电路的外部特性主要体现在引脚上,分成两侧信号主要体现在引脚上,分成两侧信号面向面向CPU一侧的信号:一侧的信号:
6、用于与用于与CPU连接连接主要是数据、地址和控制信号主要是数据、地址和控制信号面向外设一侧的信号:面向外设一侧的信号:用于与外设连接用于与外设连接提供的信号五花八门提供的信号五花八门功能定义、时序及有效电平等差异较大功能定义、时序及有效电平等差异较大第第8章:章:3. 接口电路芯片的分类接口电路芯片的分类接接口口电电路路核核心心部部分分往往往往是是一一块块或或数数块块大大规规模集成电路芯片(接口芯片):模集成电路芯片(接口芯片):通用接口芯片通用接口芯片支持通用的数据输入输出和控制的接口芯片支持通用的数据输入输出和控制的接口芯片面向外设的专用接口芯片面向外设的专用接口芯片针对某种外设设计、与该
7、种外设接口针对某种外设设计、与该种外设接口 面向微机系统的专用接口芯片面向微机系统的专用接口芯片与与CPU和系统配套使用,以增强其总体功能和系统配套使用,以增强其总体功能第第8章:章:4. 接口电路的可编程性接口电路的可编程性许许多多接接口口电电路路具具有有多多种种功功能能和和工工作作方方式式,可以通过编程的方法选定其中一种可以通过编程的方法选定其中一种接口需进行物理连接,还需编写接口软件接口需进行物理连接,还需编写接口软件接口软件有两类:接口软件有两类:初始化程序段初始化程序段设定芯片工作方式等设定芯片工作方式等数数据据交交换换程程序序段段管管理理、控控制制、驱驱动动外外设设,负责外设和系统
8、间信息交换负责外设和系统间信息交换第第8章:章:8.1.3 I/O端口的编址端口的编址接口电路占用的接口电路占用的I/O端口有两类编排形式端口有两类编排形式I/O端口单独编址端口单独编址I/O地址空间独立于存储地址空间地址空间独立于存储地址空间如如8086/8088I/O端口与存储器统一编址端口与存储器统一编址它们共享一个地址空间它们共享一个地址空间如如M6800第第8章:章: I/O端口单独编址端口单独编址优点:优点:I/O端口的地址空间独立端口的地址空间独立控制和地址译码电路相对简单控制和地址译码电路相对简单专门的专门的I/O指令使程序清晰易读指令使程序清晰易读缺点:缺点:I/O指令没有存
9、储器指令丰富指令没有存储器指令丰富内存内存空间空间I/O空间空间FFFFF0FFFF80x86采用采用I/O端口独立编址端口独立编址第第8章:章: I/O端口与存储器统一编址端口与存储器统一编址优点:优点:不需要专门的不需要专门的I/O指令指令I/O数数据据存存取取与与存存储储器器数数据存取一样灵活据存取一样灵活缺点:缺点:I/O端端口口要要占占去去部部分分存存储储器地址空间器地址空间程程序序不不易易阅阅读读(不不易易分分清访存和访问外设)清访存和访问外设)内存内存部分部分I/O部分部分存储器空间存储器空间00000FFFFF第第8章:章:8.1.4 8088/8086的输入输出指令的输入输出
10、指令输入指令输入指令(IN:将外设数据传送给将外设数据传送给CPU内的内的AL/AX)IN AL,i8;字节输入字节输入IN AL,DX;字节输入字节输入IN AX,i8;字输入字输入IN AX,DX;字输入字输入输出指令输出指令(OUT:将将CPU内的内的AL/AX数据传送给外设)数据传送给外设)OUT i8,AL;字节输出字节输出OUT DX,AL;字节输出字节输出OUT i8,AX;字输出字输出OUT DX,AX;字输出字输出演示演示演示演示第第8章:章:8088/8086的的I/O端口端口8088只只能能通通过过输输入入输输出出指指令令与与外外设设进进行行数数据据交交换换;呈呈现现给给
11、程程序序员员的的外外设设是是端端口口(Port),即),即I/O地址地址8086用用于于寻寻址址外外设设端端口口的的地地址址线线为为16条条,端端口口最最多多为为21665536(64K)个个,端端口口号为号为0000H FFFFH每个端口用于传送一个字节的外设数据每个端口用于传送一个字节的外设数据第第8章:章:I/O寻址方式寻址方式8088/8086的的端端口口有有64K个个,无无需需分分段段,设设计有两种寻址方式计有两种寻址方式v直直接接寻寻址址:只只用用于于寻寻址址00H FFH前前256个个端口,操作数端口,操作数i8表示端口号表示端口号v间间接接寻寻址址:可可用用于于寻寻址址全全部部
12、64K个个端端口口,DX寄存器的值就是端口号寄存器的值就是端口号对大于对大于FFH的端口只能采用间接寻址方式的端口只能采用间接寻址方式第第8章:数据交换方式章:数据交换方式如果输入输出一个字节,利用如果输入输出一个字节,利用AL寄存器寄存器如果输入输出一个字,利用如果输入输出一个字,利用AX寄存器寄存器输输入入一一个个字字,实实际际上上是是从从连连续续两两个个端端口口输输入入两两个个字字节节,分分别别送送AL(对对应应低低地地址址端端口口)和和AH(对应高地址端口)对应高地址端口)输输出出一一个个字字,实实际际上上是是将将AL(对对应应低低地地址址端端口口)和和AH(对对应应高高地地址址端端口
13、口)两两个个字字节节的内容输出给连续两个端口的内容输出给连续两个端口第第8章:章:IN指令实例(指令实例(从从20H端口输入一个字)端口输入一个字)方法方法1 1:直接寻址,字量输入:直接寻址,字量输入in ax,20hin ax,20h;方法;方法2 2:间接寻址,字量输入:间接寻址,字量输入movmov dx,20h dx,20hin in ax,dxax,dx第第8章:章:OUT指令实例(向指令实例(向300H端口输出一个字节)端口输出一个字节)唯一的方法:间接寻址,字节量输出唯一的方法:间接寻址,字节量输出movmov al,bvaral,bvar ;bvarbvar是字节变量是字节变
14、量movmov dx,300h dx,300hout out dx,aldx,al第第8章:章:8.1.5 I/O地址的译码地址的译码I/O地地址址的的译译码码方方法法与与存存储储器器地地址址的的译译码码方方法法一一样样,但有它的特点:但有它的特点:部分译码时,通常是中间地址线不连接部分译码时,通常是中间地址线不连接部分译码也有最低地址线不连接的情况部分译码也有最低地址线不连接的情况每每个个接接口口电电路路通通常常只只占占用用几几个个I/O地地址址,这这时时可可以以利利用用基基本逻辑门电路进行地址译码本逻辑门电路进行地址译码除除采采用用译译码码器器、门门电电路路进进行行译译码码外外,I/O地地
15、址址译译码码还还经经常常采用可编程逻辑器件采用可编程逻辑器件PLD为为了了给给系系统统一一定定的的选选择择余余地地,有有些些接接口口电电路路利利用用比比较较器器、开关或跨接器等进行多组开关或跨接器等进行多组I/O地址的译码地址的译码第第8章:章:IBM PC/AT主机板的主机板的I/O译码电路译码电路接口芯片内部译码接口芯片内部译码A0A4DMA控制器控制器1中断控制器中断控制器1定时计数器定时计数器并行接口电路并行接口电路DMA页面寄存器页面寄存器中断控制器中断控制器2DMA控制器控制器2协处理器协处理器A5A6A7A8A9ALS138译码器译码器HLDAMASTERABCE1E2E3Y0Y
16、1Y2Y3Y4Y5Y6Y7第第8章:逻辑门电路进行章:逻辑门电路进行I/O地址译码地址译码A9A8A7A6A5A2A4A3AENA1A074LS033E7H第第8章:章:8.1.6 数据传送方式数据传送方式程程序序控控制制下下的的数数据据传传送送通通过过CPU执执行行程程序序中中的的I/O指指令令来来完完成成传传送送,又又分分为为:无无条条件件传送、查询传送、中断传送传送、查询传送、中断传送直直接接存存储储器器存存取取(DMA)传传送送请请求求由由外外设设向向DMA控控制制器器(DMAC)提提出出,后后者者向向CPU申申请请总总线线,最最后后DMAC利利用用系系统统总总线线来来完成外设和存储器
17、间的数据传送完成外设和存储器间的数据传送第第8章:章:8.2 无条件传送方式及其接口无条件传送方式及其接口在在CPU与与慢慢速速变变化化的的设设备备交交换换数数据据时时,可可以以认认为为它它们们总总是是处处于于“就就绪绪”状状态态,随随时时可可以以进进行行数数据据传传送送,这这就就是是无无条条件件传传送送,或或称称立立即传送、同步传送即传送、同步传送适适合合于于简简单单设设备备,如如LED数数码码管管、按按键键或或按按纽等纽等无条件传送的接口和操作均十分简单无条件传送的接口和操作均十分简单这种传送有前提:外设必须随时就绪这种传送有前提:外设必须随时就绪流程流程第第8章:无条件传送:输入示例章:
18、无条件传送:输入示例MOV DX, 160HIN AL, DX第第8章:无条件传送:输入实例章:无条件传送:输入实例MOV DX, 160HIN AL, DX74LS244+5V10K x 8G1 G2数数据据总总线线CSRD第第8章:无条件传送:输出示例章:无条件传送:输出示例MOV DX, 160HMOV AL, BXOUT DX, AL第第8章:无条件传送:输出实例章:无条件传送:输出实例MOV DX, 160HMOV AL, BXOUT DX, AL+5V74LS373300 x 8LE OE数数据据总总线线CSWR第第8章:无条件传送:输入输出接口章:无条件传送:输入输出接口K7K1
19、K0+5VD0D7A0A15CLKLS06反相反相驱动器驱动器LS2738D锁存器锁存器LS244三态三态缓冲器缓冲器8000H译码译码+5VLED0LED7GIOWIORnext:mov dx,8000h;DX指向数据端口指向数据端口in al,dx;从输入端口读开关状态从输入端口读开关状态not al;反相反相out dx,al;送输出端口显示送输出端口显示call delay ;调子程序延时调子程序延时jmp next;重复重复第第8章:章:8.3 查询传送方式及其接口查询传送方式及其接口CPU需需要要选选了了解解(查查询询)外外设设的的工工作作状状态态,然然后后在在外外设设可可以以交交
20、换换信信息息的的情情况况下下(就绪就绪)实现数据输入或输出)实现数据输入或输出对对多多个个外外设设的的情情况况,则则CPU按按一一定定顺顺序序依依次次查查询询(轮轮询询)。先先查查询询的的外外设设将将优优先进行数据交换先进行数据交换查查询询传传送送的的特特点点是是:工工作作可可靠靠,适适用用面面宽,但传送效率低宽,但传送效率低就绪就绪?第第8章:查询传送的两个环节章:查询传送的两个环节 查询环节查询环节寻址状态口寻址状态口读取状态寄存器的标志位读取状态寄存器的标志位若不就绪就继续查询,直至就绪若不就绪就继续查询,直至就绪 传送环节传送环节寻址数据口寻址数据口是是输输入入,通通过过输输入入指指令
21、令从从数数据据端端口口读入数据读入数据是是输输出出,通通过过输输出出指指令令向向数数据据端端口口输出数据输出数据输入状态输入状态就绪?就绪?数据交换数据交换YN流程流程第第8章:章:8.3.1 查询输入接口查询输入接口mov dx,8000h;DX指向状态端口指向状态端口status: in al,dx;读状态端口读状态端口test al,01h;测试标志位测试标志位D0jz status;D00,未就绪,继续查询未就绪,继续查询inc dx;D01,就绪,就绪,DX指向数据端口指向数据端口in al,dx;从数据端口输入数据从数据端口输入数据第第8章:章:8.3.2 查询输出接口查询输出接口
22、mov dx,8000h ;DX指向状态端口指向状态端口status: in al,dx;读取状态端口的状态数据读取状态端口的状态数据test al,80h;测试标志位测试标志位D7jnz status;D71,未就绪,继续查询未就绪,继续查询inc dx;D70,就绪,就绪,DX指向数据端口指向数据端口mov al,buf;变量变量buf送送ALout dx,al;将数据输出给数据端口将数据输出给数据端口第第8章:章:8.4 中断传送方式中断传送方式断点断点主程序主程序中断服务程序中断服务程序中断请求中断请求对外设对外设进行处理进行处理继续执行继续执行返回断点返回断点CPU在在执执行行程程序
23、序中中,被被内内部部或或外外部部的的事事件件所所打打断断,转转去去执执行行一一段段预预先先安安排排好好的的中中断断服服务务程程序序;服服务务结结束束后后,又又返返回回原原来来的的断断点点,继继续续执执行行原原来的程序来的程序流程流程第第8章:章:8.4.1 中断传送与接口中断传送与接口中断传送是一种效率更高的程序传送方式中断传送是一种效率更高的程序传送方式进行传送的进行传送的中断服务程序是预先设计好的中断服务程序是预先设计好的中断请求是外设随机向中断请求是外设随机向CPU提出的提出的CPU对对请请求求的的检检测测是是有有规规律律的的:一一般般是是在在每每条条指指令令的的最最后后一一个个时时钟钟
24、周周期期采采样样中中断断请请求求输输入引脚入引脚本书主要论述中断在输入和输出方面的应用本书主要论述中断在输入和输出方面的应用中断还有着非常广泛的应用中断还有着非常广泛的应用第第8章:中断输入接口章:中断输入接口D0D7+5V8D锁存器锁存器8位位三态三态缓冲器缓冲器三态缓冲器三态缓冲器RQ 译码译码 8001H中断向量号中断向量号D0D7INTRD输入输入设备设备中断允许触发器中断允许触发器A0A15中断请求触发器中断请求触发器IORINTASTB第第8章:章:8.4.2 中断工作过程中断工作过程n中断请求中断请求n中断响应中断响应n关中断关中断n断点保护断点保护n中断识别中断识别n现场保护现
25、场保护n中断服务中断服务n恢复现场恢复现场n开中断开中断n中断返回中断返回中断服务是进行数据交换的实质性环节中断服务是进行数据交换的实质性环节中断源的识别中断源的识别第第8章:章:8.4.3 中断优先权中断优先权问题问题1:系统有多个中断请求,:系统有多个中断请求,CPU如何识别中断源?如何识别中断源?解答解答1:向量中断向量中断(图(图4-20)解答解答2:中断查询中断查询(图(图4-21)第第8章:中断查询接口章:中断查询接口A0A15锁锁存存器器INTR三态三态缓冲器缓冲器译码译码 8001HD0D7中断中断A中断中断B中断中断CIOR中断优先权排队中断优先权排队第第8章:章:8.4.3
26、 中断优先权中断优先权(续(续1)问题问题2:有多个中断同时请求,:有多个中断同时请求,CPU如何应对?如何应对?解答解答1:链式优先权排队电路链式优先权排队电路(图(图6-13)解答解答2:优先权编码电路优先权编码电路(图(图6-14)中断嵌套中断嵌套第第8章:章:8.4.3 中断优先权中断优先权(续(续2)问题问题3:中断处理过程中,:中断处理过程中,又有中断提出请求,怎么办?又有中断提出请求,怎么办?解答解答1:链式优先权排队电路链式优先权排队电路(图(图6-13)解答解答2:优先权编码电路优先权编码电路(图(图6-14)第第8章:章:8.5 DMA传送方式传送方式希望克服程序控制传送的
27、不足:希望克服程序控制传送的不足:外设外设CPU存储器存储器外设外设CPU存储器存储器直接存储器存取直接存储器存取DMA:外设外设存储器存储器外设外设存储器存储器CPU释放总线,由释放总线,由DMA控制器管理控制器管理第第8章:章:DMA传送的工作过程传送的工作过程 CPU对对DMA控制器进行初始化设置控制器进行初始化设置 外外设设、DMAC和和CPU三三者者通通过过应应答答信信号号建立联系:建立联系:CPU将总线交给将总线交给DMAC控制控制 DMA传送传送DMA读存储器:存储器读存储器:存储器 外设外设DMA写存储器:存储器写存储器:存储器 外设外设 自动增减地址和计数,判断传送完成否自动
28、增减地址和计数,判断传送完成否第第8章:章:DMA传送流程传送流程HLDA发存储器地址发存储器地址传送数据传送数据传送结束?传送结束?DMA结束结束修改地址指针修改地址指针流程流程第第8章:传送方式的比较章:传送方式的比较无无条条件件传传送送:慢慢速速外外设设需需与与CPU保保持持同同步步查询传送查询传送: 简单实用,效率较低简单实用,效率较低中中断断传传送送:外外设设主主动动,可可与与CPU并并行行工工作,但每次传送需要大量额外时间开销作,但每次传送需要大量额外时间开销 DMA传传送送:DMAC控控制制,外外设设直直接接和和存存储储器器进进行行数数据据传传送送,适适合合大大量量、快快速速数数据传送据传送第第8章:教学要求章:教学要求1. 了了解解I/O接接口口电电路路的的主主要要功功能能、内内部部和和外外部部特点、端口编址方法、特点、端口编址方法、I/O地址译码特点地址译码特点2. 掌握输入输出指令掌握输入输出指令3. 掌握无条件、查询传送方式掌握无条件、查询传送方式4. 理理解解中中断断、中中断断源源、中中断断工工作作过过程程、中中断断源识别、优先权排队和中断嵌套源识别、优先权排队和中断嵌套