您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 第6章 输入输出和中断技术解析
第6章输入输出及中断技术主要内容:I/O端口及其编址方式简单接口芯片及其应用基本输入输出方法中断的基本概念及工作过程中断控制器8259§6.1输入输出接口主要内容:I/O接口与I/O端口的概念I/O端口的编址方式端口地址译码数据传送方式微型计算机中I/O接口的作用存储器MI/O接口输入设备II/O接口数据总线DB控制总线CB地址总线AB输出设备OCPUI/O接口与端口I/O接口:将外设连接到总线上的一组逻辑电路的总称。实现外设与主机之间的信息交换。I/O端口:接口中的寄存器一、I/O系统的特点1、复杂性输入输出系统的复杂性主要表现在两个方面。一是输入输出设备的复杂性。另外是处理器本身和操作系统所产生的一系列随机事件也要调用输入输出系统进行处理。2、异步性CPU的各种操作系统都是在统一的时钟信号作用下完成的,各种操作都有自己的总路线周期。不同的外部设备也有各自不同的定时与控制逻辑且大都与CPU时序不一致,它们与CPU的工作通常是异步进行的。3、实时性实时性是指处理器对每一个连接到它的外设或处理器本身,在需要或出现异常时,如电源故障、运算溢出等,都要能够给予及时处理,以防止错过服务时机,使数据丢失或产生错误。4、与设备无关性由于输入输出设备在信号电平、信号形式、信息格式等的差异,使得它们与CPU之间不能够直接地连接,必须通过一个中间环节---输入输出接口。为了适应与不同外设的连接,规定了一些独立于具体设备的标准接口,如串行接口、并行接口等。二、I/O接口的基本功能1、I/O接口要解决的问题速度匹配(Buffer)信号的驱动能力(电平转换器、驱动器)信号形式和电平的匹配(A/D、D/A)信息格式(字节流、块、数据包、帧)时序匹配(定时关系)总线隔离(三态门)2、接口的功能I/O地址译码与设备选择把选中的与总线相接,未选中的与总线隔离(高阻态)数据的缓冲与暂存缓解接口与CPU工作速度的差异输出接口有锁存环节输入接口有缓冲环节对外设进行监测、控制与管理,中断处理信号电平与类型的转换形式、格式、电平、功率、码制等数据端口状态端口控制端口端口类型三、I/O端口的编址方式一个I/O接口可能含有其中一类或两类,也可能含有三类。CPU通过数据端口从外设读入数据,从状态端口读入设备的当前状态,通过命令端口向外设发出控制命令。8088的CPU最多能管理64K个端口,当前是针对哪个端口,要像为内存单元分配地址那样为每个端口分配一个地址(I/O地址)。CPU数据状态控制外设I/O端口I/O端口的编址方式统一编址独立编址内存地址960KBI/O地址64KB00000HF0000HFFFFFH端口与内存的统一编址定义把外设接口与内存统一进行编址。各占据统一地址空间的不同部分。优点指令统一,灵活;访问控制信号统一,使用同一组的地址/控制信号。缺点内存可用地址空间减小例如:MCS-51单片机内存地址I/O地址00000HFFFFFHFFFFH0000H端口的独立编址例如:8088/8086微机系统定义:外设地址空间和内存地址空间相互独立。优点:内存地址空间不受I/O编址的影响缺点:I/O指令功能较弱,使用不同的读写控制信号8088总线A19-A0A15-A0MEMR、MEMWIOR、IOW、AEN存储器输入/输出端口的独立编址8088/8086的I/O端口编址●采用I/O独立编址方式(但地址线与存储器共用)●地址线上的地址信号用IO/M来区分:IO/M=1/0时为I/O地址/M地址●I/O操作只使用20根地址线中的16/8根:A15/7~A0●可寻址的I/O端口数为64K(65536)/256个●I/O地址范围为0~FFFFH/0~FFH●IBMPC只使用了10根A9~A01024个I/O地址(0~3FFH)原因:够用为度,简化电路四、I/O地址的译码目的:确定端口的地址参加译码的信号:IOR,IOW,A15~A0OUT指令将使总线的IOW信号有效IN指令将使总线的IOR信号有效I/O地址的译码当接口只有一个端口时,16位地址线一般应全部参与译码,译码输出直接选择该端口;当接口具有多个端口时,则16位地址线的高位参与译码(决定接口的基地址),而低位则用于确定要访问哪一个端口。I/O地址的译码某外设接口有4个端口,地址为2F0H~2F3H,则其基地址为2F0H,由A15~A2译码得到,而A1、A0用来确定4个端口中的某一个。端口0端口1端口2端口3CS&1A2A3A8A10A11A4A5A6A7A9A12A13A14A15CSCSCSCS2—4译码器A0A1Y0Y1Y2Y3五、I/O数据的传送方式并行一个数据单位同时传送串行数据按位传送并行定义:一个数据单位(通常为字节)的各位同时传送特点:速度快、距离短、成本高例如:PC机的并行接口(通常用于连接打印机)串行定义:数据按位进行传送特点:速度慢、距离远、成本低例如:PC机的串行接口(通常用于串行通信)§6.2简单接口电路掌握:接口电路的分类及特点;两类简单接口芯片的应用CPUI/O接口外设数据端口地址控制数据状态控制一、接口电路的基本构成I/O端口1(状态端口)I/O端口2(数据端口)I/O端口3(控制端口)地址译码数据缓冲控制电路外设ABDBCBCPUCPU对外设输入/输出的控制,通过对接口电路中各I/O端口的读/写操作完成。端口地址编号接口电路的典型结构数据输入/输出寄存器(缓冲器/锁存器)——暂存输入/输出的数据。命令寄存器(锁存器)——存放控制命令,用来设定接口功能、工作参数和工作方式。状态寄存器(缓冲器)——保存外设当前状态,以供CPU读取。一个外设一般占用端口地址情况——数据I/O、命令、状态三个寄存器各占一个端口地址(共3个);有时把命令、状态两个寄存器共占一个端口地址(共2个);一些简单外设只有数据寄存器一个端口(共1个)。接口类型接口的类型输入接口:负责把信息从外部设备送入CPU的接口输出接口:将信息从CPU输出到外设的接口接口特点输入接口:要求对数据具有控制能力(常用三态门实现)外设有数据保持能力时—可用三态门实现外设无数据保持能力时—用三态输出的锁存器实现输出接口:要求对数据具有锁存能力(常用锁存器实现)CPU总线I/O读、写时序(简化)IN指令时序A15~A0IORCLKD7~D0T4T1T2T3TwA15~A0CLKIOWD7~D0T4T1T2T3TwOUT指令时序二、三态门接口高电平、低电平、高阻态P237图常用芯片74LS244含8个三态门的集成电路芯片在外设于机器连接时常用来作输入接口74LS244应用例教材p238K6K7+5VI0I3D0-D7DO0DO7~74LS244E1E2≥1&A2A3A4A5A6A7A8A9A10A11A12A13A14A15IOR系统总线信号≥1K5K4K3K2K1K0I1I2I4I5I6I7编程实现如果所有开关都闭合,则程序转向标号NEXT1,否则转向NEXT2。MOVDX,83FCHINAL,DXANDAL,0FFHJZNEXT1JMPNEXT2简单的输入接口举例三、锁存器接口74LS273通常由D触发器构成;特点:74LS273具有对数据的锁存能力;不具备对数据的控制能力常用锁存器芯片74LS373......译码器=1=1......+5VRD0|D7CPQ0Q7D0~D7A0~A15IOW74LS273RMOVDX,0FFFFHMOVAL,01000001BOUTDX,AL功能:第1、7个发亮,其余不亮接口电路输出设备系统总线应用例子:发光二极管接口I/O接口综合应用例根据开关状态在7/8段数码管上显示数字或符号–共阳极7段数码管结构见p255图6.10–用74LS273作为输出接口,把数据送到7段数码管74LS273的地址假设为F0H–用74LS244作为输入口,读入开关K0~K3的状态74LS244的地址假设为F1H–当开关的状态分别为0000~1111时,在7段数码管上对应显示’0’~’F’–7段码表见下面符号形状7段码.gfedcba符号形状7段码.gfedcba’0’00111111’8’01111111’1’00000110’9’01100111’2’01011011’A’01110111’3’01001111’B’01111100’4’01100110’C’00111001’5’01101101’D’01011110’6’01111101’E’01111001’7’00000111’F’01110001O1I1O2I2O3I3O4I4E1K0~K3+5VGG2AG2BCBA≥174LS244D0Q0|Q1D7Q2Q3Q4CPQ5Q6Q7abcdefgDP7406反相器74LS273Rx8≥174LS138D0~D7IOW#IOR#Y0Y174LS273的端口地址:F0H=000000001111000074LS244的端口地址:F1H=0000000011110001&≥1A7~A4A15~A8A3A2A1A0D0D1D2D3译码器相应程序段如下:……Seg7DB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,67H,77H,7CH,39H,5EH,79H,71H……LEABX,Seg7;取7段码表基地址MOVAH,0GO:MOVDX,0F1H;开关接口的地址为F1HINAL,DX;读入开关状态ANDAL,0FH;保留低4位MOVSI,AX;作为7段码表的表内位移量MOVAL,[BX+SI];取7段码MOVDX,0F0H;7段数码管接口的地址为F0HOUTDX,ALJMPGO§6.3基本输入/输出方法无条件传送查询式传送中断方式传送直接存储器存取(DMA)一、无条件传送适用场合:适用于总是处于准备好状态(定时固定或已知)的外设以下简单外设可采用无条件传送方式:–开关–发光器件(如发光二极管、7段数码管、灯泡等)–继电器–步进电机优点:软件及接口硬件简单缺点:只适用于简单外设,适应范围较窄无条件传送例读取开关的状态;当开关闭合时,输出编码使发光二极管亮DCPQD0D1输出口地址38F3H输入口地址38F0H+5V1二、查询工作方式适用场合:适用于外设并不总是准备好,而且对传送速率、传送效率要求不高的场合。CPU在与外设交换数据前必须询问外设状态——“你准备好没有?”对外设的要求:应提供设备状态信息对接口的要求:需要提供状态端口优点:软件比较简单缺点:CPU效率低,数据传送的实时性差,速度较慢查询方式的流程图超时?READY?与外设进行数据交换超时错读入并测试外设状态YNYN传送完?防止死循环复位计时器NY注:多个外设时,查询流程见教材图6.14单一外设查询方式数据传送的工作过程:⑴首先查询外设的状态,看数据是否准备好⑵若没有准备好,则继续查询⑶否则就进行一次数据读取⑷数据读入后,CPU向外设发响应信号,表示数据已被接收。外设收到响应信号之后,开始下一个数据的准备工作。⑸CPU判断是否已读取完全部数据,若没有读完,则重新进行(1)否则就结束传送。查询工作方式例外设状态端口地址为03FBH,第5位(bit5)为状态标志(=1忙,=0准备好)外设数据端口地址为03F8HD5D7-D0A9|A3≥1&A15|A10≥1IOWD7-D03F8H外设D7D6D5D4D3D2D1D0BUSYCPQ7Q6Q5Q4Q3Q2Q1Q0状态端口GG2AG2BCBAA2A1A074LS138Y0≥1IORY3OE74LS3743FBHLEASI,DATAMOVDX,3FBHWAIT:INAL,DXTESTAL,20HJZWAITMOVDX,3F8HMOVAX,[SI]OUTDX,AX相应的程序为:利用查询方式与外设进行数据交换要满足的条件:⑴连接到系统的外部设备是简单的、慢速的、对实时性要求不高的设备⑵连接到同一系统的外设,其工作速度是相近的。三、中断控制方式概念:CPU无需
本文标题:第6章 输入输出和中断技术解析
链接地址:https://www.777doc.com/doc-3356312 .html