微机原理课件 西电 第24次课

上传人:我*** 文档编号:145967079 上传时间:2020-09-25 格式:PPT 页数:40 大小:712KB
返回 下载 相关 举报
微机原理课件 西电 第24次课_第1页
第1页 / 共40页
微机原理课件 西电 第24次课_第2页
第2页 / 共40页
微机原理课件 西电 第24次课_第3页
第3页 / 共40页
微机原理课件 西电 第24次课_第4页
第4页 / 共40页
微机原理课件 西电 第24次课_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《微机原理课件 西电 第24次课》由会员分享,可在线阅读,更多相关《微机原理课件 西电 第24次课(40页珍藏版)》请在金锄头文库上搜索。

1、I/O接口 I/O接口的功能 CPU与I/O设备之间的信号 接口电路的典型结构 I/O端口及其编址方式 输入输出指令 I/O地址的译码 数据输入输出的基本方式 IBM PC系列微机输入输出接口的基本结构 IBM PC/XT机的I/O地址,7.1 输入输出接口基础,9. IBM PC系列微机输入输出接口的基本结构,P341 基本配置的系统为I/O接口既提供了硬件资源又提供了软件资源 提供的硬件资源包括: 在扩充插槽上提供了系统级总线。 主机板上有键盘接口逻辑和扬声器接口逻辑。 主机板上有两片8259中断控制器为核心组成的中断控制逻辑。 主机板上有以两片8237DMA控制器为核心组成的DMA传送控

2、制逻辑 主机板上有一片8254定时/计数器芯片,有3个功能:第一个功能是用于当日计时,和CMOS共同组成定时计时系统;第二个功能是为动态存储器刷新提供定时信号;第三个功能是通过编程向扬声器提供声音信号。,基本(或常规)配置的系统微机包含的I/O接口卡可能有不同的组合,但在功能上和编程上是兼容的,通常包括以下接口逻辑:显示器接口、两个标准的并行打印机接口、两个标准的串行异步通信接口、磁盘驱动器接口; 除此之外,系统总线中还提供了相当容量的+5V、-5 V、+12 V、-12 V直流电源。 系统为I/O接口提供的软件资源包括DOS的功能调用和BIOS调用。我们已经讨论了很多利用INT 21H指令实

3、现的I/O功能调用,包括从键盘缓冲区读取字符码、在显示器上显示字符、利用打印机打印输出字符等。,XT总线 最早出现在IBM-PC,IBM-PC/XT及其兼容机上,黑色槽中共由62条引脚,这些引脚提供了8位数据线、20位地址线、6条中断请求线和一些控制线。,10、IBM PC/XT机的I/O地址,IBM PC/XT的I/O地址空间范围03FFH,210 , A0A9参加译码; 很多I/O地址已经分配给系统的基本I/O设备,见P349的表10.2; 当AEN1时表示正在进行DMA操作,因此,设计译码电路时,应该使AEN0。 I/O接口与I/O端口一对一关系,采用单端口地址译码方式; 一个I/O接口

4、(设备)对应多个I/O端口,高位地址译码产生接口地址,低位地址产生端口地址,即多端口地址译码。,PC机单端口地址译码电路,PC机多端口地址译码电路(打印机),8088最小方式系统:,8088最大方式系统:,IBM PC/XT 系统:,8086最大方式系统:,8086最小方式系统:,I/O端口地址译码时用到的总线信号,系统总线驱动及控制,在较大的微机应用系统中,I/O插件板设计时要考虑系统总线的负载能力,必要时可以通过缓冲器或总线驱动来提高总线的负载能力。常用的缓冲器或总线驱动器有74LS373、74LS244(单向8位)和74LS245(双向8位)等。,对单向的地址总线及控制总线的驱动可以74

5、LS373、74LS244等芯片缓冲的方式。,例题,例7.1 在PC/XT系统总线上扩充设计一个数据输出端口, 分配给该端口的地址为280H,输出端口芯片用74LS374,输出设备为8个LED发光二极管。,(1)画出此输出端口与PC/XT系统总线以及 与LED发光二极管的连接图。 (2)编写使8个LED发光二极管每间隔一段时间交替亮灭的功能段程序。,解:74LS374的功能和74LS373相同,都是8位数据输出锁存器,不同之处是使能信号的有效形式,74LS374的使能信号CP为上升沿有效。LED发光二极管导通时流过的电流应20mA,否则会损坏器件。设计的此输出端口与PC/XT系统总线以及与LE

6、D发光二极管的连接图如图所示。,例7.1的连接图,编写使8个LED发光二极管每间隔一段时间交 替亮灭的功能段程序如下: MOV DX,280H LOP: MOV AL,0FFH OUT DX,AL ;使8个LED发光二极管亮 CALL DELAY1S ;调用1秒延时子程序 MOV AL,00H OUT DX,AL ;使8个LED发光二极管灭 JMP LOP,例7.2 在8086 CPU工作在最小方式组成的微机系中.扩充设计一个数据输入端口,分配给该端口的地址8001H,输入端口芯片用74LS245,输入设备为8个乒乓开关。,(1)画出此输入端口与8086系统总线以及与输 入设备的连接图。,(2

7、)编写程序检测K0开关,若K0断开,程序转 向PROG1;K0闭合,程序转向PROG2。,解: 由于为8086系统,且端口地址8001H为奇 地址,所以使用高8位数据线,且在I/O端口地 址译码中, =0要参加译码。设计的此输入 端口与8086系统总线以及与输入设备的连接图 如图所示。,例7.2的连接图,若K0开关断开程序转向PROG1,K0闭合程序转 向PROG2的程序如下:,MOV DX,8001H,IN AL,DX,TEST AL, 01H,JZ PROG2,PROG1:,PROG2:,小结,通过本节学习,要求了解I/O接口技术的有关概念,包括输入/输出系统的组成,I/O接口的功能,I/

8、O端口的编址方式,在此基础上了解I/O接口与I/O端口之间的区别。 掌握微型计算机的输入/输出控制方式及每种输入/输出方式的特点,重点掌握无条件输入/输出方式和查询输入/输出方式的典型结构,并能利用一些常用接口芯片进行简单的I/O接口电路设计和I/O驱动程序设计。,在I/O接口电路设计中,重点掌握I/O译码方法及译码电路的设计。而对不同的系统中进行I/O端口地址译码及I/O电路设计时,要弄清楚不同的控制信号要参加译码。,小结,中断及相关概念 中断控制芯片8259A,7.2 中断系统,1、中断及相关概念,中断 (比如电话响了) CPU执行程序时,由于发生了某种随机的事件(外部或内部),引起CPU

9、暂时中断正在运行的程序,转去执行一段特殊的服务程序(称为中断服务程序或中断处理程序),以处理该事件,该事件处理完后又返回被中断的程序继续执行,这一过程称为中断。,中断的作用:,提高数据传输率; 避免了CPU不断检测外设状态的过程,提高了CPU的利用率。 实现对特殊事件的实时响应。,中断源,IBM PC机有256个中断源 (8088),内部中断源-由处理器内部产生的中断事件称内部中断源。如运算发生溢出或执行软件中断指令等情况都属于内部中断源。 对于8086来说,内部中断源主要有5种: (1)除法错中断:执行除法指令除数为0或商超出了寄存器所能表示的范围时,CPU会产生一个向量码为0的中断,因而又

10、称为类型0中断。 (2)单步中断:标志寄存器中有一位陷阱状态标志-TF。CPU每执行完一条指令都要检测TF的状态。若TF=1,CPU则产生中断向量码为1的中断,使CPU转向单步中断的程序。程序的调试利用的正是单步中断,类型1中断。 (3)断点中断:指令系统中有一条专用于设置断点的指令,其操作码为CCH。CPU执行该指令会产生向量码为3的中断,又称为类型3中断,指令INT,或INT 3。 (4)溢出中断:当CPU进行算术运算时,若发生溢出,则会使标志寄存器的OF为置1。若在算术运算后加一条中断溢出指令INT0,将测试OF位,若OF=1,则发生向量码为4的中断,也称为类型4中断。 (5)用户自定义

11、的软件中断(指令中断):用户可以用INT n这样的指令形式来产生软件中断。INT是助记符;n为中断向量码。,外部中断源-由处理器外部设备产生的中断事件称外部中断源。如外设请求输入输出数据、硬件时钟定时到、某些设备出现故障等情况。 8086/8088有两个信号输入端供外部中断请求端提出中断请求: (1)不可屏蔽中断输入端NMI (上升沿有效) 只要NMI端有中断请求发生,CPU在执行完当前一条指令后立即响应它,不受IF标志的限制。 (2)可屏蔽中断输入端INTR (高电平有效) 简称为中断请求,受中断允许标志位IF的约束。只有当IF=1时,CPU才有可能响应INTR请求。在8086CPU中断系统

12、中,通过与专用中断控制器8259的配合使用,可以有864个可屏蔽的中断源。,可 屏 蔽 中 断 请 求,NMI,INTR,中断逻辑,软件中断指令,溢出中断,除法错,单步中断,非屏蔽中断请求,中断控 制器 8259A PIC,8086/8088CPU内部逻辑,断点中断,n,4,3,0,1,2,8086/8088中断源类型:,外部设备利用中断机制与CPU交换信息,就是利用外部可屏蔽中断。,控制8级向量中断,中断类型号(中断向量码),256个中断源,使用中断类型号加以区别,借助中断类型号(0255)能使程序转入相对应的中断服务程序; 软中断由指令给出类型号,如INT 21H; 可屏蔽中断的类型号由外

13、部中断控制逻辑提供,并在处理器响应中断时从外部输入处理器; 表10.3,P351,NMI中断和内部中断表,中断向量及中断向量表,00000H,003FFH,1KB (256个中断向量4B),微处理器响应任何中断都将转向中断服务程序。如何找到中断服务程序的入口地址?,入 口 地 址,中断向量:中断服务程序在内存中存放的入口地址。 段地址和偏移地址唯一地指定。 这4个字节统称为中断向量。中断向量也称中断服务程序的指针。,中断向量表,中断类型号n乘以4是该种中断的中断向量在中断向量表中的开始地址。,中断向量表例,例:中断类型号为27H 中断向量指针的低地址= 27H 4= 9CH 中断向量指针的高地

14、址= 27H 4+2= 9EH 即该中断向量存放在0000H:009CH开始的4个连续单元中。如果这4个单元中的内容如下: 0000:009C 2AH 0000:009D 43H 0000:009E 65H 0000:009F 87H 则该中断类型号27H的中断向量(中断服务程序入口地址)的逻辑地址是8765H:432AH,即(CS)=8765H,(IP)=432AH;物理地址是8B97AH。,前5个是专用中断 类型0:除数为0中断 类型1:单步中断 类型2:NMI中断 类型3:断点中断 类型4:溢出中断,保留的中断(类型号05-3FH):这是Intel公司为软件、硬件开发保留的中断类型,大部

15、分用于系统中断,如20H-3FH为DOS中断调用。,供用户定义的中断(类型号40H-FFH):使用用户自己定义的中断,用户必须把该中断的中断向量填写到中断向量表中。,中断向量表的初始化,将用户自定义的中断服务程序入口地址放入向量表 例:将中断向量码为48H的服务程序入口地址放入向量表,MOV AX,0000H MOV DS,AX ; DS清零 MOV SI,0120H; 48H*4 MOV BX,OFFSET INT1 MOV SI,BX MOV BX,SEG INT1 MOV SI+2,BX,中断嵌套,外部中断响应的一般过程,中断请求 中断判优及中断源识别 中断响应 中断处理(服务) 中断返

16、回,中断请求,中断判优,对同时产生的中断: 首先处理优先级别较高的中断;若优先级别相同,则按先来先服务的原则 对非同时产生的中断: 低优先级的中断程序允许被高优先级的中断源所中断,中断响应,向中断源发出INTA中断响应信号; 保护断点。包括FLAGS、 CS和IP 获得中断服务程序入口地址,中断服务,保护现场 开中断(STI) 中断处理 关中断(CLI) 恢复现场 中断返回(用IRET指令返回),首先中断请求信号INTR由外部硬件(如8259A芯片)产生,并送到8088的INTR引脚上。如果IF=1,则在CPU完成正在执行的指令后,便开始响应中断,步骤如下: CPU读取由外部硬件提供的中断类型号n (如8259A芯片通过数据总线传送) 。CPU 通过INTA发中断响应信号给接口,并启动中断过程。这个响应信号将使发中断请求的接口把一个字节的中断类型号通过数据总线送给CPU; 按先后

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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