微机原理与接口技术输入输出接口技术

上传人:博****1 文档编号:568780352 上传时间:2024-07-26 格式:PPT 页数:30 大小:840KB
返回 下载 相关 举报
微机原理与接口技术输入输出接口技术_第1页
第1页 / 共30页
微机原理与接口技术输入输出接口技术_第2页
第2页 / 共30页
微机原理与接口技术输入输出接口技术_第3页
第3页 / 共30页
微机原理与接口技术输入输出接口技术_第4页
第4页 / 共30页
微机原理与接口技术输入输出接口技术_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《微机原理与接口技术输入输出接口技术》由会员分享,可在线阅读,更多相关《微机原理与接口技术输入输出接口技术(30页珍藏版)》请在金锄头文库上搜索。

1、第第6章章 输入输出接口技术输入输出接口技术微机原理与接口技术输入输出接口技术本章重点本章重点vI/OI/O接口的基本概念接口的基本概念v输入入输出出IN/OUTIN/OUT指令指令v程序程序查询输入入输出方式出方式v中断中断输入入输出方式出方式vDMADMA输入入输出方式出方式vI/OI/O端口地址分配端口地址分配vI/OI/O端口地址端口地址译码微机原理与接口技术输入输出接口技术v计算机系算机系统的的I/OI/O接口接口为什么输入输出设备不能像存储器一样直接连在总线上?为什么输入输出设备不能像存储器一样直接连在总线上?6.16.1接口技接口技术基本概念基本概念ALUCPUI/O设备设备CU

2、主存主存M MI/OI/O接口接口地址总线地址总线ABAB控制总线控制总线CBCB数据总线数据总线DBDB微机原理与接口技术输入输出接口技术v外外设接口接口(I/O(I/O接口接口) )的必要性的必要性外外设的种的种类繁多,而存繁多,而存储器的种器的种类单一,必一,必须经过接口接口电路路连接到接到总线上。上。外外设的速度的速度较慢,而存慢,而存储器的速度器的速度较快,必快,必须经过接口接口电路路进行数据的行数据的缓冲和冲和锁存。存。 外外设的信号多种多的信号多种多样,必,必须经过接口接口电路路转换成成处理器理器可以可以识别的信号。的信号。 I/OI/O接口接口的作用相当与一个转换器的作用相当与

3、一个转换器,它可以保证外它可以保证外围设备用计算机所要求的形式发送或接受信息。围设备用计算机所要求的形式发送或接受信息。微机原理与接口技术输入输出接口技术v I/O I/O接口的功能接口的功能进行行译码选址址在具有多台外在具有多台外设的系的系统中,外中,外设接口必接口必须能能够进行地址行地址译码,确定本,确定本设备是否被是否被选中中转换信息格式信息格式接口接口电路完成串并路完成串并转换、并串、并串转换协调定定时差异差异为了了缓解主机与外解主机与外设之之间的速度差异,的速度差异,对传输的数据或地址加以的数据或地址加以缓冲或冲或锁存存提供提供联络信号信号接口接口电路向主机提供外部路向主机提供外部设

4、备“就就绪”、“忙忙”,数据,数据缓冲器冲器“满”、“空空”等状等状态信号信号中断管理功能中断管理功能接口接口电路有路有产生并管理中断生并管理中断请求和求和DMADMA请求的能力,以求的能力,以满足足实时系系统以及大批量数据以及大批量数据传送的能力送的能力可可编程程对一些通用的接口一些通用的接口电路,路,应该具有通具有通过软件件编程程控制外控制外设工作方式的能力工作方式的能力错误检测功能功能对通信通信过程中的程中的传输错误或者溢出或者溢出错误能能够进行行实时检测微机原理与接口技术输入输出接口技术vI/OI/O接口的接口的组成成 控制寄存器控制寄存器地址译地址译码器码器 状态状态 寄存器寄存器数

5、据缓冲数据缓冲 寄存器寄存器 控控制制逻逻辑辑电电路路I/O接口接口外外 部部 设设 备备数据线数据线数据线数据线CPU控制控制命令线命令线状态状态状态线状态线地址线地址线微机原理与接口技术输入输出接口技术vI/OI/O接口与接口与I/OI/O端口端口端口:端口:CPUCPU能够直接访问的能够直接访问的I/OI/O接口内部的寄存器称为端口接口内部的寄存器称为端口端口号:每一个端口的访问地址端口号:每一个端口的访问地址I/OI/O接口接口微机原理与接口技术输入输出接口技术vCPUCPU与与I/OI/O接口接口传递的信息的信息数据信息:数据信息: CPU CPU 输入输出设备输入输出设备 CPU

6、CPU 输入输出设备输入输出设备控制信息:控制信息: CPU CPU 输入输出设备输入输出设备 控制命令控制命令外设状态外设状态状态信息:状态信息: 输入输出设备输入输出设备 CPUCPU数据信息、状态信息和控制信息都是通过数据总线传送的。数据信息、状态信息和控制信息都是通过数据总线传送的。CPUCPU写入控制端口的数据是写入控制端口的数据是CPUCPU对外设的控制信息;对外设的控制信息;CPUCPU读状态端口的数据是外设的状态信息;读状态端口的数据是外设的状态信息;CPUCPU写数据端口的数据是写数据端口的数据是CPUCPU送给外设的数据送给外设的数据CPUCPU读数据端口的数据是外设送给读

7、数据端口的数据是外设送给CPUCPU的数据的数据微机原理与接口技术输入输出接口技术vI/OI/O端口端口编址方式址方式 为了便于了便于CPUCPU访问端口,每一个端口都有一个地址,系端口,每一个端口都有一个地址,系统有两种方式有两种方式为端口分配地址:端口分配地址:vI/OI/O端口和存端口和存储器器统一一编址址 统一一编址就是从存址就是从存储器空器空间中划分出一部分中划分出一部分给I/OI/O设备,把把I/OI/O端口当作存端口当作存储单元来元来访问。 例如:例如:设CPUCPU有有1616根地址根地址线,存,存储空空间为64K64K,规定地址定地址总线的最高位的最高位A A15151 1访

8、问I/OI/O端口,端口,A A15150 0访问存存储器,器,则0 032K32K为存存储器地址空器地址空间,32K32K64K64K为I/OI/O端口地址空端口地址空间。 统一一编址址的的优点是不需要点是不需要专门的的I/OI/O指令,凡指令,凡对存存储器有器有效的效的访问指令都可以指令都可以访问I/OI/O端口,端口,访问形式灵活。缺点是端形式灵活。缺点是端口占用了一定的存口占用了一定的存储空空间,存,存储器空器空间变小。小。6.36.3I/OI/O端口端口编址方式及地址址方式及地址译码微机原理与接口技术输入输出接口技术20201616统一编址方式统一编址方式微机原理与接口技术输入输出接

9、口技术I/OI/O端口和存端口和存储器器独立独立编址址 独立独立编址就是址就是I/OI/O端口地址端口地址补占用存占用存储器地址空器地址空间,两者,两者的地址空的地址空间完全独立,都从完全独立,都从0 0开始开始编址。独立址。独立编址需要址需要专门的的I/OI/O端口端口访问指令。指令。 8086 8086采用存储器与采用存储器与I/OI/O端口独立编址方式,即内存单元和端口独立编址方式,即内存单元和I/OI/O端口从端口从0 0单元开始编址。当引脚单元开始编址。当引脚M/IOM/IO为高电平时访问存储为高电平时访问存储器,当器,当M/IOM/IO为低电平时访问为低电平时访问I/OI/O端口。

10、端口。 80868086有专门的访问有专门的访问I/OI/O端口的指令端口的指令( (ININ和和OUTOUT) ),当,当80868086在在执行访问执行访问I/OI/O端口的输入端口的输入(IN)(IN)指令和输出指令和输出(OUT)(OUT)指令时,就会指令时,就会使使M/IOM/IO信号处于低电平,结合信号处于低电平,结合RDRD和和WRWR信号产生出对相应的信号产生出对相应的I/OI/O端口的读端口的读/ /写操作。写操作。 独立编址的优点是独立编址的优点是I/OI/O端口不占用内存空间;缺点是端口不占用内存空间;缺点是I/OI/O指指令功能单一,类型少,使输入输出操作受到限制。令功

11、能单一,类型少,使输入输出操作受到限制。微机原理与接口技术输入输出接口技术独立编址方式独立编址方式微机原理与接口技术输入输出接口技术vININ和和OUTOUT指令指令 80868086系系统中可以有中可以有64K64K个个8 8位端口,相位端口,相邻编号的两个端口可号的两个端口可以以组合成合成为一个一个1616的端口。的端口。 执行行输入入(IN)(IN)输出出(OUT)(OUT)指令指令时,CPUCPU可以从一个可以从一个8 8位端口位端口读入入( (写出写出) )一个字一个字节到到ALAL中,或者从一个中,或者从一个1616位端口位端口读入入( (写出写出) )一个字到一个字到AXAX中。

12、中。1. IN1. IN指令指令( (输入指令输入指令) )格式:格式:IN AIN A,PORT ;APORT ;A可以是可以是ALAL或者是或者是AXAX功能:功能: AL(PORT) AL(PORT) 或或AX(PORTAX(PORT +1)_(PORT)+1)_(PORT)(1)(1)直接输入指令直接输入指令 端口号为端口号为0 0255255,用一个立即数表示(,用一个立即数表示(00H00HFFHFFH) IN AL IN AL,50H 50H ;将将5050H H端口的字节读入端口的字节读入ALAL IN AX IN AX,70H 70H ;分别将分别将7070H H、71H71

13、H端口的内容读入端口的内容读入ALAL、AHAH微机原理与接口技术输入输出接口技术(2)(2)间接接输入指令入指令 当端口号大于当端口号大于FFHFFH时,这些端口号不能用在指令中用立即些端口号不能用在指令中用立即数的形式数的形式给出,出,端口号放在端口号放在DXDX寄存器中寄存器中。 MOV DX MOV DX,500H ;500H ;端口号送端口号送DXDX IN ALIN AL,DX ;DX ;将将DXDX所指端口内容送所指端口内容送ALALOUT DXOUT DX,AL AL ;将将ALAL中的字节输出到中的字节输出到DXDX所指的端口中所指的端口中2. OUT2. OUT指令指令(

14、(输出指令输出指令) )格式:格式:OUT PORTOUT PORT,A ;AA ;A可以是可以是ALAL或者是或者是AXAX功能:功能: AL(PORT) AL(PORT) 或或AXAX(PORT(PORT +1)_(PORT)+1)_(PORT)(1)(1)直接输出指令直接输出指令 OUT 44H OUT 44H,AL AL ;将将ALAL中的内容输出到中的内容输出到4444H H端口端口 OUT 80HOUT 80H,AX AX ;将将ALAL、AHAH中的内容输出到中的内容输出到8080H H、81H81H端口端口(2)(2)间接输出指令间接输出指令微机原理与接口技术输入输出接口技术v

15、I/OI/O端口地址端口地址译码CSCSA9A9A8A8A7A7A6A6A5A5A4A4A3A3A2A2M/IOM/IOAENAEN接口电路芯片接口电路芯片A1A1A0A0片内端口选择片内端口选择端口地址端口地址27CH27CH27FH27FH固定式译码方式固定式译码方式门电路译码门电路译码微机原理与接口技术输入输出接口技术跳线在跳线在J1J1时,端口地址时,端口地址27CH27CH27FH27FH跳线在跳线在J2J2时,端口地址时,端口地址37CH37CH37FH37FHA9A9A8A8A7A7A6A6A5A5A4A4A3A3A2A2CSCSJ1J1J2J2M/IOM/IOAENAENCSC

16、S接口电路芯片接口电路芯片A1A1A0A0片内端口选择片内端口选择可选式译码方式可选式译码方式微机原理与接口技术输入输出接口技术译码器电路译码译码器电路译码G3CBAG2G1Y0Y2Y1Y3Y4Y6Y5Y774LS13874LS138A2A1A0A7A5A4A3&M/IOM/IOA9A8A6&340H340H341H341H342H342H343H343H344H344H345H345H346H346H347H347H全地址译码全地址译码G3CBAG2G1Y0Y2Y1Y3Y4Y6Y5Y774LS13874LS138A7A6A5000-01FH000-01FH040-05FH040-05FH06

17、0-07FH060-07FH080-09FH080-09FH0A0-0BFH0A0-0BFH0C0-0DFH0C0-0DFH0E0-0FFH0E0-0FFHA9A8M/IOM/IO1 1020-03FH020-03FH部分地址译码部分地址译码微机原理与接口技术输入输出接口技术vCPUCPU与外部与外部设备的定的定时方式方式输入入过程:程:1)CPU1)CPU把一个地址把一个地址值放在地址放在地址总线上,上,选择某一某一输入入设备; 2)CPU2)CPU等候等候输入入设备的数据成的数据成为就就绪; 3)CPU3)CPU从数据从数据总线读入数据,并放在一个相入数据,并放在一个相应的寄存器中。的寄存

18、器中。输出出过程:程:1)CPU1)CPU把一个地址把一个地址值放在地址放在地址总线上,上,选择输出出设备; 2)CPU2)CPU等候等候输出出设备的状的状态成成为就就绪; 3)CPU3)CPU把数据放在数据把数据放在数据总线上,上,输出出设备把数据取走。把数据取走。问题的关键在于:输入时究竟什么时候输入设备数据成为问题的关键在于:输入时究竟什么时候输入设备数据成为就绪就绪? ? 输出时什输出时什么时候输出设备的状态才成为么时候输出设备的状态才成为就绪。就绪。很显然由于输入输出设备本身的速度很显然由于输入输出设备本身的速度差异很大,对于不同速度的外围设备,需要有不同的定时方式。差异很大,对于不

19、同速度的外围设备,需要有不同的定时方式。 6.3CPU6.3CPU与外与外设数据数据传递方式方式微机原理与接口技术输入输出接口技术CPUCPU与外与外围设备的定的定时有三种情况:有三种情况:简单外外围设备: CPUCPU和和这类设备的数据交的数据交换不需要定不需要定时,CPU认为它它们始始终处于就于就绪状状态,例如:机械开关,例如:机械开关,CPUCPU认为输入入设备的数据一定的数据一定就就绪,因,因为只要根据开关的只要根据开关的闭/ /合就可以合就可以输入入0/10/1信号;例如信号;例如: :显示二极管,示二极管,CPUCPU认为输出出设备的状的状态一定就一定就绪,因,因为只要只要CPU输

20、出出0/10/1信号,信号,显示二示二级就可以就可以灭/ /亮。亮。 CPUCPU和和这类设备的数据交的数据交换一般采用一般采用无条件无条件传送方式送方式。慢速外慢速外围设备 由于由于这类设备的速度和的速度和CPU的速度不在一个数量的速度不在一个数量级上,如上,如打印机;或由于打印机;或由于设备本身是在不本身是在不规则时间间隔下操作的,如隔下操作的,如键盘,因此,因此CPU与与这类设备之之间的通常采用的通常采用异步定异步定时方式方式。微机原理与接口技术输入输出接口技术输入:入:CPU首先首先查询外部外部设备的数据是否就的数据是否就绪,如果就,如果就绪则通通过数据数据总线输入数据,否入数据,否则

21、循循环等待直到数据就等待直到数据就绪;或者由外;或者由外部部设备在数据就在数据就绪时通知通知CPU,CPU通通过数据数据总线输入数据。入数据。输出:输出:CPU首先查询外部设备的状态是否就绪,如果就绪则通首先查询外部设备的状态是否就绪,如果就绪则通过数据总线输出数据,否则循环等待直到外设就绪;或者由外过数据总线输出数据,否则循环等待直到外设就绪;或者由外部设备在状态就绪时通知部设备在状态就绪时通知CPU,CPU通过数据总线输出数据。通过数据总线输出数据。 CPU和这类设备的数据交换一般采用和这类设备的数据交换一般采用程序查询方式程序查询方式或者或者中中断方式断方式。 高速的外围设备高速的外围设

22、备 由于这类外设是以相等的时间间隔操作的,则由于这类外设是以相等的时间间隔操作的,则CPU可以用可以用等间隔的速率执行输入等间隔的速率执行输入/ /输出指令。因此输出指令。因此CPUCPU与这类设备之间的与这类设备之间的通常采用通常采用同步定时方式同步定时方式。 例如外设外设的速度是例如外设外设的速度是2400B/s2400B/s,则,则CPUCPU每隔每隔1/24001/2400执行一执行一次输入指令即可。次输入指令即可。 CPUCPU和这类设备的数据交换一般采用和这类设备的数据交换一般采用DMADMA方式方式或或通道方式通道方式。微机原理与接口技术输入输出接口技术v无条件方式无条件方式 C

23、PU CPU认为外外设的的输入数据始入数据始终有效,随有效,随时可以可以输入;或外入;或外设的状的状态始始终就就绪,随,随时可以可以输出。出。微机原理与接口技术输入输出接口技术v程序查询方式程序查询方式CPU 和和 I/O 串行工作串行工作踏步等待踏步等待从从I/O接口中读接口中读 一个字到一个字到CPU从从CPU向主存向主存 写入一个字写入一个字CPU向向I/O发发 读指令读指令CPU读读I/O状态状态检查状态检查状态 完成否完成否未准备就绪未准备就绪现行程序现行程序是是出错出错已准备就绪已准备就绪否否 CPUCPU通过执行程序不通过执行程序不断读取并测试外设的状断读取并测试外设的状态,如果

24、外设处于就绪态,如果外设处于就绪状态,则状态,则CPU执行输入执行输入指令或输出指令与外设指令或输出指令与外设交换数据。否则交换数据。否则CPU必必须循环等待。须循环等待。微机原理与接口技术输入输出接口技术设备选择电路设备选择电路数据缓冲寄存器数据缓冲寄存器QQ&数据线数据线是否就绪是否就绪启动命令启动命令地址线地址线SEL输入数据输入数据启动设备启动设备设备工作设备工作 结束结束就绪就绪忙忙10 10 程序查询方式的接口程序查询方式的接口 1 1)设备选择电路)设备选择电路 2 2)数据缓冲寄存器)数据缓冲寄存器 3 3)设备状态标志)设备状态标志微机原理与接口技术输入输出接口技术 CPU通

25、通过执行程序不断行程序不断读取并取并测试外外设的状的状态,如果外,如果外设处于就于就绪状状态,则CPUCPU执行行输入指令入指令(in)(in)或或输出指令出指令(out)(out)与外与外设交交换数据。否数据。否则CPUCPU循循环等待。等待。检查状态标记检查状态标记交换数据交换数据准备就绪准备就绪?是是否否测测试试指指令令转转移移指指令令传传送送指指令令控制总线控制总线输入输入设备设备 状态寄存器状态寄存器CPUCPU数据总线数据总线地址总线地址总线0:未就绪未就绪1:就绪就绪端口地址:端口地址:61H61H设设I/OI/O接口的数据寄存器端口地址为接口的数据寄存器端口地址为62H(62H

26、(图中未图中未给出给出) ),输入的字符存放在,输入的字符存放在BXBX所指的内存缓冲区所指的内存缓冲区中,则通过查询传送输入数据的程序如下:中,则通过查询传送输入数据的程序如下: INPUT: IN AL,61H INPUT: IN AL,61H ;读状态寄存器;读状态寄存器 TEST AL,01H TEST AL,01H ;测试最低位;测试最低位 JZ INPUT JZ INPUT ;继续读入;继续读入 IN AL,62H IN AL,62H ;输入数据;输入数据 MOV BX,AL MOV BX,AL ;存放数据;存放数据RDY微机原理与接口技术输入输出接口技术查询式式输入接口入接口电路

27、路微机原理与接口技术输入输出接口技术查询式式输出接口出接口电路路微机原理与接口技术输入输出接口技术v中断中断传送方式送方式 在在查询方方式式中中,不不能能有有效效的的利利用用CPUCPU。为了了提提高高CPUCPU的的利利用用率率,于于是是产生生了了中中断断处理理技技术。在在中中断断系系统中中,CPUCPU与与外外设交交换数数据据时,CPUCPU不不需需要要查询外外部部设备的的状状态,当当外外设没没有有做做好好传送送数数据据的的准准备时, CPUCPU可可以以执行行其其他他操操作作,当当外外设准准备好好后后,向向CPUCPU发送送中中断断请求求,CPUCPU暂停停当当前前的的程程序序,执行行中

28、中断断程程序序来完成数据来完成数据传送,接着返回原来的程序送,接着返回原来的程序继续执行。行。 主主程程序序主主程程序序中断请求中断请求中断返回中断返回中断服务中断服务子程序子程序中断的概念中断的概念 在在CPU正常运行程序时,由于内正常运行程序时,由于内部或外部某个部或外部某个非预料事件的发生非预料事件的发生,使,使C CPU暂停正在运行的程序,而转去暂停正在运行的程序,而转去执执行处理引起中断事件的程序行处理引起中断事件的程序,然后再,然后再返回被中断了的程序,继续执行。这返回被中断了的程序,继续执行。这个过程就是个过程就是中断中断。中断适合随机出现。中断适合随机出现的请求,例如输入输出设

29、备的请求。的请求,例如输入输出设备的请求。微机原理与接口技术输入输出接口技术I/OI/O中断的产生中断的产生以打印机为例以打印机为例发发中中断断请请求求 空闲空闲接收接收数据数据接收接收数据数据准备准备发发中中断断请请求求打印打印打印打印打印机打印机执行主程序执行主程序继续执行主程序继续执行主程序继续执行主程序继续执行主程序响响应应中中断断中中断断返返回回响响应应中中断断中中断断返返回回 启动启动打印机打印机传送传送数据数据传送传送数据数据CPUCPU 与打印机并行工作与打印机并行工作微机原理与接口技术输入输出接口技术v直接存直接存储器器读取取(DMA)(DMA)方式方式 为了了进一步提高一步

30、提高CPUCPU的利用率,人的利用率,人们提出了直接内存提出了直接内存访文文技技术,即,即Direct Memory AccessDirect Memory Access, ,简称称DMADMA技技术。 在在DMADMA方式下,外部方式下,外部设备利用利用专门的接口的接口电路直接和内存路直接和内存进行高速的数据交行高速的数据交换,不需要,不需要CPUCPU的干的干预。这样在在进行数据行数据传输时就不需要像中断那就不需要像中断那样要要进行保行保护断点之断点之类的一系列操作,的一系列操作,使使CPUCPU的利用率得到大幅度的提高。的利用率得到大幅度的提高。 利用利用DMADMA方式方式进行数据行数据传输时,当然要利用系,当然要利用系统中的数据中的数据总线,地址,地址总线和控制和控制总线,但是系,但是系统的的总线是由是由CPUCPU管理控管理控制的。因此用制的。因此用DMADMA方式方式进行数据行数据传输的的时候,接口候,接口电路需要向路需要向CPU发送送总线请求,申求,申请CPUCPU让出出总线,即把,即把总线控制控制权交交给控制控制DMADMA传输的接口的接口电路。路。 这种能种能够控制系控制系统总线完成外完成外设与内存之与内存之间大量数据交大量数据交换的接口的接口电路就是路就是DMADMA控制器。控制器。 微机原理与接口技术输入输出接口技术微机原理与接口技术输入输出接口技术

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 药学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号