第7章+输入输出接口_第1页
第7章+输入输出接口_第2页
第7章+输入输出接口_第3页
第7章+输入输出接口_第4页
第7章+输入输出接口_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、微机原理与接口技术微机原理与接口技术 朱华贵朱华贵2016年年05月月03日日微机原理与接口技术微机原理与接口技术第第7 7章章 输入输出接口输入输出接口 朱华贵朱华贵2016年年05月月03日日微机原理与接口技术微机原理与接口技术本章主要内容本章主要内容 I/O接口概述接口概述1 常用常用I/O接口芯片接口芯片2 CPU与外设之间的数据传送方式与外设之间的数据传送方式3 8086CPU的输入输出的输入输出47.1 I/O接口概述接口概述n输入和输出设备输入和输出设备是计算机系统的重要组成部分,是计算机系统的重要组成部分,完成输入完成输入/输出(简称输出(简称I/O)操作的部件称为输)操作的部

2、件称为输入入/输出接口。输出接口。n各种外部设备通过输入输出接口与系统相连,各种外部设备通过输入输出接口与系统相连,并在接口电路的支持下实现数据传输和操作控并在接口电路的支持下实现数据传输和操作控制。制。计算机系统中接口的位置计算机系统中接口的位置7.1.1 CPU与与I/O设备之间的接口信息设备之间的接口信息1.数据(数据(Data)数字量数字量模拟量模拟量开关量开关量2.状态信息(状态信息(Status)3.控制信息(控制信息(Control)7.1.2 I/O接口的主要功能接口的主要功能1.对输入输出数据进行缓冲和锁存对输入输出数据进行缓冲和锁存2.对信号的形式和数据的格式进行变换对信号

3、的形式和数据的格式进行变换3.对对I/O端口进行寻址端口进行寻址4.提供联络信号提供联络信号7.1.3 I/O接口的结构接口的结构数据端口:数据端口:用于数据信息用于数据信息I/O的端口。的端口。CPU通过数据接通过数据接收端口输入数据,有的能保存外设发往收端口输入数据,有的能保存外设发往CPU的数据;的数据;CPU通过数据输出端口输出数据,一般能将通过数据输出端口输出数据,一般能将CPU发往发往外设的数据锁存。外设的数据锁存。状态端口:状态端口:CPU通过状态端口了解外设或接口部件本身通过状态端口了解外设或接口部件本身的状态。的状态。控制端口:控制端口:CPU通过控制端口发出控制命令,以控制

4、接通过控制端口发出控制命令,以控制接口部件或外设的动作。口部件或外设的动作。7.1.4 输入输出的寻址方式输入输出的寻址方式1.存储器映像的存储器映像的I/O寻址寻址 存储单元和存储单元和I/O端口的地址统一编址。端口的地址统一编址。把一个外设端口作为把一个外设端口作为存储器的一个单元来对待,故每一个外设端口占有存储器的一个存储器的一个单元来对待,故每一个外设端口占有存储器的一个地址。地址。 从外部设备输入一个数据,作为一次存储器读的操作;而向从外部设备输入一个数据,作为一次存储器读的操作;而向外部设备输出一个数据,则作为一次存储器写的操作。外部设备输出一个数据,则作为一次存储器写的操作。优点

5、:优点:CPU对外设的操作可使用全部的存储器操作指令,对外设的操作可使用全部的存储器操作指令,故指令多,使用方便。如可以对外设中的数据故指令多,使用方便。如可以对外设中的数据(存于外设的寄存器中)进行算术和逻辑运算,(存于外设的寄存器中)进行算术和逻辑运算,进行循环或移位等。进行循环或移位等。内存和外设的地址分布图是同一个。内存和外设的地址分布图是同一个。不需要专门的输入输出指令以及区分是存储器还不需要专门的输入输出指令以及区分是存储器还是是I/O操作的控制信号。操作的控制信号。缺点缺点:外设占用了内存单元,使内存容量减小。外设占用了内存单元,使内存容量减小。7.1.4 输入输出的寻址方式输入

6、输出的寻址方式2. I/O映像的映像的I/O寻址寻址 I/O端口地址与存储单元地址分开编址。端口地址与存储单元地址分开编址。CPU有专有专门的门的I/O指令,用地址来区分不同的外设。指令,用地址来区分不同的外设。 但要注意实际上是以端口(但要注意实际上是以端口(Port)作为地址单元,)作为地址单元,因为一个外设不仅有数据寄存器还有状态寄存器和控因为一个外设不仅有数据寄存器还有状态寄存器和控制命令寄存器,它们各需要一个端口才能加以区分,制命令寄存器,它们各需要一个端口才能加以区分,故一个外设往往需要数个端口地址故一个外设往往需要数个端口地址。优点:优点:I/O端口不占用存储器地址,故不会减少用

7、户的存端口不占用存储器地址,故不会减少用户的存储器地址空间;储器地址空间;采用单独的采用单独的I/O指令,使程序中指令,使程序中I/O操作和其他操作操作和其他操作层次清晰,便于理解。层次清晰,便于理解。缺点缺点:单独单独I/O指令的功能有限,只能对端口数据进行输指令的功能有限,只能对端口数据进行输入入/输出操作,不能直接进行移位、比较等其他操输出操作,不能直接进行移位、比较等其他操作;作;采用专用的采用专用的I/O操作时序及操作时序及I/O控制信号线,因而增控制信号线,因而增加了微处理器本身控制逻辑的复杂性。加了微处理器本身控制逻辑的复杂性。I/O芯片名称芯片名称 地址范围地址范围 DMAC1

8、DMAC2DMA页面寄存器页面寄存器 0000-001FH00C0-00DFH0080-009FH 中断控制器中断控制器1中断控制器中断控制器2 0020-003FH00A0-00BFH 定时器定时器并行接口芯片并行接口芯片(键盘接口键盘接口)RT/CMOS RAM协处理器协处理器 0040-005FH0060-006FH0070-007FH00F0-00FFH 系统板系统板I/O接口芯片端口地址接口芯片端口地址(0000H-00FFH):A8=A9=0端口端口(256个个)为系统板所用,为系统板所用,其他端口其他端口(768个个)为扩展槽所用。为扩展槽所用。n例如:读取计算机的实时时钟并显示

9、。例如:读取计算机的实时时钟并显示。根据根据COMS RAM实时钟信息存放位置表,是编写程序显示当前实时钟信息存放位置表,是编写程序显示当前的时间,格式为时时:分分:秒秒。的时间,格式为时时:分分:秒秒。nMOV AL,4H;04H是存放是存放“小时小时的单元偏移地址的单元偏移地址nOUT 70H,AL;送地址端口;送地址端口nIN AL,71H;读数据端口;读数据端口7.2 常用常用I/O接口芯片接口芯片7.2 常用常用I/O接口芯片接口芯片7.3 CPU与外设之间的数据传送方式与外设之间的数据传送方式 CPU与外设之间的数据传送方式一般有:与外设之间的数据传送方式一般有:程序控制方式程序控

10、制方式中断方式中断方式直接存储器存取方式直接存储器存取方式DMA通道控制方式通道控制方式7.3.1 程序控制方式程序控制方式n采用程序控制方式时,状态和数据的传输由采用程序控制方式时,状态和数据的传输由CPU执行一系列指令完成。数据传送过程中,执行一系列指令完成。数据传送过程中,或者由或者由CPU查询外设状态,或者由外设向查询外设状态,或者由外设向CPU发出请求。发出请求。n这种方式又可分为这种方式又可分为无条件传输方式无条件传输方式和和程序查询程序查询方式方式。1.无条件传输方式无条件传输方式nCPU不需要了解外设状态,直接与外设传输数不需要了解外设状态,直接与外设传输数据,适用于按钮开关、

11、发光二极管等简单外设据,适用于按钮开关、发光二极管等简单外设与与CPU的数据传送过程。的数据传送过程。n这种传输方式的特点这种传输方式的特点是硬件电路和程序设计都是硬件电路和程序设计都比较简单,比较简单,一般用于能够确信外设已经准备就一般用于能够确信外设已经准备就绪的场合绪的场合。CPU译码译码数据线数据线M/IOWR或或门门地址线地址线 接口接口外外设设输输 出出CPU译码译码数据线数据线M/IORD或或门门地址线地址线 接口接口外外设设输输 入入【例【例7-1】接口电路】接口电路如图所示。编程不如图所示。编程不断扫描开关断扫描开关Ki(i=07)。若开)。若开关关Ki闭合,对应的闭合,对应

12、的发光二极管发光二极管LEDi(i=07)点亮,)点亮,否则否则LEDi熄灭。熄灭。CODE SEGMENTASSUMECS:CODEMAINPROC FARSTART: PUSH DS MOV AX,0 PUSH AXAGAIN: MOV DX,200H IN AL,DX ;读取开关状态;读取开关状态 NOT AL ;取反;取反 OUT DX,AL ;输出控制;输出控制LED JMP AGAIN RET ;返回;返回DOSMAIN ENDPCODE ENDS END STARTAD7AD0AD1AD2AD3AD4AD5AD6AD7AD0AD1AD2AD3AD4AD5AD6IO3WRA02B0

13、18A13B117A24B216A35B315A46B414A57B513A68B612A79B711CE19AB/BA1U174LS245AD0.7IO3RDK8K7K6K5K4K3K2K1R110kR210kR310kR410kR510kR610kR710kR810kD03Q02D14Q15D27Q26D38Q39D413Q412D514Q515D617Q616D718Q719OE1LE11U1074LS373D1D2D3D4D5D6D7D8564U11:B74LS02AD0.7U12OR【例【例7-2】硬件连接如】硬件连接如前例前例图所示,要求图所示,要求LED0LED7循环电亮。循环电

14、亮。自到按自到按“ESC”时退出。时退出。CODE SEGMENT ASSUME CS:CODE MAIN PROC FAR START: PUSH DS MOV AX,0 PUSH AX MOV DX,200H ;设置;设置I/O端口端口 MOV CL,01H ;设置输出初值;设置输出初值AGAIN: MOV AH,1 ;读键盘缓冲区字符;读键盘缓冲区字符 INT 16H CMP AL,1BH ;若为;若为“ESC”键,则退出键,则退出 JZ EXIT MOV AL,CL OUT DX,AL ;输出控制;输出控制LED MOV BX,100 ;向子程序传递参数,实现;向子程序传递参数,实现1

15、秒软延时秒软延时 CALL DELAY ;子程序;子程序DELAY实现实现10ms延时延时 ROL CL,1 ;循环左移;循环左移1位位 JMP AGAINEXIT: RETDELAY PROC NEAR ;延时子程序;延时子程序DELAY PUSH BX PUSH CXWAIT0:MOV CX,2801WAIT1:LOOP WAIT1 DEC BX JNZ WAIT0 POP CX POP BX RETDELAY ENDPMAIN ENDPCODE ENDS END START2.程序查询方式程序查询方式n也称为也称为条件传输方式条件传输方式,常用于慢速设备与,常用于慢速设备与CPU交换数据

16、。交换数据。nCPU与外设传输数据之前,先检查外设状态,与外设传输数据之前,先检查外设状态,如果外设处于如果外设处于“准备好准备好”状态(输入设备)或状态(输入设备)或“空闲空闲”状态(输出设备),才可以传输数据。状态(输出设备),才可以传输数据。为此,接口电路中除了数据端口外,还必须有为此,接口电路中除了数据端口外,还必须有状态端口。状态端口。n程序查询方式的一般过程为:程序查询方式的一般过程为:CPU从接口中读取状态字;从接口中读取状态字;CPU检测状态字的相应位,是否满足检测状态字的相应位,是否满足“就绪就绪”条条件,如不满足,则转件,如不满足,则转1););如状态位表明外设已处于如状态

17、位表明外设已处于“就绪就绪”条件,则传输条件,则传输数据。数据。 输入时,状态寄存器的状态指示要输入的数据是输入时,状态寄存器的状态指示要输入的数据是否已经准备就绪;否已经准备就绪; 准备好?准备好?读取状态信息读取状态信息输入数据输入数据是是否否数据线状态线外设常用的状态线有常用的状态线有IBF,READY功能:功能:n1、输入设备准备好数据,状态线有效;、输入设备准备好数据,状态线有效;n2、CPU读数据端口,取走数据后,状态线转换为无读数据端口,取走数据后,状态线转换为无效效1、STB有效,有效,(1)、输入设备数据进入锁存器;、输入设备数据进入锁存器;(2)、IBF 有效有效2、CPU

18、读状态端口读状态端口3、CPU读数据端口,同时清读数据端口,同时清IBF外设STBIBF/RD123输出时,状态寄存器的状态指示输出设备是否空闲。输出时,状态寄存器的状态指示输出设备是否空闲。忙?忙?读取状态信息读取状态信息输出数据输出数据否否是是数据线数据线状态线状态线外设外设常用的状态线有常用的状态线有empty,busy功能:功能:n1、输出设备空闲,、输出设备空闲,BUSY无效;无效;n2、CPU写数据端口,输出设备输写数据端口,输出设备输出数据,状态线转换为有效出数据,状态线转换为有效1、CPU读状态端口,查读状态端口,查BUSY线线2、CPU写数据,写数据,(1)、数据进入数据锁存

19、器;、数据进入数据锁存器;(2)、BUSY 有效有效3、输出设备工作完毕,、输出设备工作完毕,busy无效无效外设外设7.3.2中断方式中断方式n不让不让CPU主动去查询外设的状态,而是让外设主动去查询外设的状态,而是让外设在数据准备好之后再通知在数据准备好之后再通知CPU。这样,这样,CPU在在没接到外设通知前只管做自己的事情,只有接没接到外设通知前只管做自己的事情,只有接到通知时才执行与外设的数据传输工作到通知时才执行与外设的数据传输工作,从而,从而大大提高大大提高CPU的利用率。的利用率。n中断方式中断方式详见详见第第10章章。7.3.2中断方式中断方式主主程程序序中中断断服服务务子子程

20、程序序中断申请信号中断申请信号 7.3.3 直接存储器存取(直接存储器存取(DMA)方式)方式nDMA方式方式就是在系统中建立一种机制,将就是在系统中建立一种机制,将外外设与内存间建立起直接的通道设与内存间建立起直接的通道,CPU不再直接不再直接参加外设与内存间的数据传输,而是在系统需参加外设与内存间的数据传输,而是在系统需要进行要进行DMA传输时,将传输时,将CPU对地址总线、数对地址总线、数据总线及控制总线的管理权交由据总线及控制总线的管理权交由DMA控制器控制器进行控制。当完成一次进行控制。当完成一次 DMA数据传输后,再数据传输后,再将这个控制权还给将这个控制权还给CPU。7.3.3

21、直接存储器存取(直接存储器存取(DMA)方式)方式nDMA方式由硬件自动实现的,并不需要程序方式由硬件自动实现的,并不需要程序进行控制。进行控制。nDMAC(称为(称为DMA控制器)芯片来完成相关控制器)芯片来完成相关工作,如内存地址的修改、字节长度的控制。工作,如内存地址的修改、字节长度的控制。当当CPU放弃数据总线、地址总线及控制总线的放弃数据总线、地址总线及控制总线的控制权时,由控制权时,由DMAC实现外设和内存间的数据实现外设和内存间的数据交换,同时也包括与交换,同时也包括与CPU之间必要的连接。之间必要的连接。ABDBCB CPU DMAC Memory I/O7.3.4 通道控制方

22、式和通道控制方式和I/O处理器处理器n在大、中型计算机系统中,配置的在大、中型计算机系统中,配置的I/O设备很设备很多,输入输出操作十分频繁,如果仅用多,输入输出操作十分频繁,如果仅用DMA控制器,则需要控制器,则需要CPU不断地对各个不断地对各个DMA控制控制器进行设置,影响器进行设置,影响CPU的正常工作。的正常工作。n将将DMA控制器的功能增强,使其能够按控制器的功能增强,使其能够按CPU的意图自行设置操作方式,控制数据传送。于的意图自行设置操作方式,控制数据传送。于是,是,DMA控制器发展成了通道控制器。控制器发展成了通道控制器。1. I/O 通道(通道( I/O Channel )

23、n早期早期的的“通道通道”是由一些简单的是由一些简单的、主要用于数主要用于数据输入输出的据输入输出的CPU构成,可配置简单的输入输构成,可配置简单的输入输出程序。出程序。n主主CPU只需使用简单的通道命令启动通道,二只需使用简单的通道命令启动通道,二者即可并行工作。输入输出程序可以在主存中,者即可并行工作。输入输出程序可以在主存中,也可以在通道的局部存储器中。主也可以在通道的局部存储器中。主CPU一旦启一旦启动通道工作,通道控制器即从主存或通道存储动通道工作,通道控制器即从主存或通道存储器中取出相应的程序,控制数据的输入输出。器中取出相应的程序,控制数据的输入输出。2. I/O处理器(处理器(

24、IOP)n通道控制器发展成通道控制器发展成I/O处理器(处理器(I/O Processor),也称为),也称为I/O处理机处理机。n主要由一个进行主要由一个进行I/O操作的操作的CPU、内部寄存器、内部寄存器、局部存储器和设备控制器组成。在一个通道处局部存储器和设备控制器组成。在一个通道处理器中可有多个通道,分别与多个设备控制器理器中可有多个通道,分别与多个设备控制器连接;而一个设备控制器可控制多台外设工作。连接;而一个设备控制器可控制多台外设工作。在实际使用中,在实际使用中,I/O处理器与主处理器与主CPU构成多处构成多处理器(或称多处理机)系统,相互并行工作。理器(或称多处理机)系统,相互并行工作。3.外围处理机(外围处理机(PPU)nI/O处理器的功能不断增强,又出现了外围处处理器的功能不断增强,又出现了外围处理机理机PPU(Peripheral Processor Unit)。)。n除了完成除了完成I/O通道所要完成的通道所要完成的I/O控制之外,还控制之外,还增强了路由选择、数码转换、格式处理、数据增强了路由选择、数码

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论