当前位置:文档之家› 微机原理CH8 微型计算机的中断系统(ok)

微机原理CH8 微型计算机的中断系统(ok)


这一过程称为中断。
(2)特点
中断方式是一种常用的数据传送的控制方式
,利用中断可以避免不断检测外部设备状态,提 高CPU的效率。
3
第八章
2、中断源 引起程序中断的事件称为中断源。中断源有内部 中断和外部中断两种。内部中断由程序预先安排的指
令(INT n)引起,或CPU运算中产生某些错误引起;外
部中断是外部设备向CPU发出中断申请引起的。
13
第八章
2、CPU响应可屏蔽中断的过程 (1)CPU在每条指令的最后一个T周期,检测INTR,若
为高电平,且IF=1,则CPU响应中断。
(2)响应过程中自动依次完成以下工作:
① CPU向外设发两个/INTA ,外设收到第2个/INTA 后
,立即往数据线上给CPU送中断类型号。
② CPU从数据线上读取中断类型号; ③ 将PSW入栈;
8
第八章
2、内部中断(软件中断) 由三种情况引起: (1)由软中断指令INT n引起 INT n指令,类型号n(0-255)。
(2)由CPU运算错误引起
① 除法错中断:类型号0; ② 溢出中断:类型号4,由INTO指令引起的中断。
9
第八章
(3)由调试程序debug设置的中断
① 单步中断:
类型号1,TF=1时产生(当前指令需执行完), Debug状态下的T命令执行时产生;
绍可屏蔽中断的处理过程。
可屏蔽中断处理过程:
中断请求 中断响应 保护现场 转入执行中断服务子程序 恢复现场 中断返回
12
第八章
一、CPU响应可屏蔽中断过程
1、CPU响应可屏蔽中断的条件
(1)外设提出中断申请;
(2)本中断未被中断控制器屏蔽;
(3)本中断优先级最高; (4)CPU允许中断。
第八章
15
二、中断向量表
确定中断源入口地址的方法:查询中断和矢量中断。
(1)查询中断:一种软件查询法,中断响应后,启动中断查 询程序,依次查询哪个外设申请了中断,检测以后,转到 此设备预先设置的中断服务程序处执行。这种中断处理过 程称为查询中断。 特点:速度慢。 (2)矢量中断:将每一个设备的中断服务程序的入口地址集
5
第八章
7、中断基本功能(3个)
(1)能实现中断响应,中断服务,中断返回,中断 屏蔽; (2)能实现中断优先级排队; (3)能实现中断嵌套。 本章主要介绍8086/8088CPU的中断系统和可编
程的中断控制器的芯片8259A。
6
第八章
二、中断的分类(中断源的分类)
8086/8088CPU可以处理256种不同类型的中断。 分成两类:内部中断和外部中断。 中断源示意图如下图:
非屏蔽中断请求 外部中断 非屏蔽中断 INTR 8259A 可屏蔽 中断请求
NMI
中断逻辑
INT n 指令
INTO 指令
除法 出错
单步 (TF=1) 内部中断
7
可屏蔽中断
8086/8088CPU
第八章
1、外部中断(硬件中断) (1)不可屏蔽中断NMI 采用边沿触发,上升沿后维持两个时钟周期的高电平 有效。中断的类型号为2,不可用软件屏蔽,CPU必须响应 它,一般用来处理一些紧急的情况,如:计算机突然掉电 。 (2)可屏蔽中断INTR 采用高电平触发,该信号维持到CPU响应中断时结束 ,中断类型号由PIO(如8259A)提供。是否允许中断由IF 的状态决定,IF=1时CPU才能响应中断,否则不响应中断 。IF可由STI置位允许中断,由CLI清零禁止中断。
第八章 微型计算机的中断系统
8-1 概述
8-2 中断处理过程
8-3 中断优先级和中断嵌套
8-4 可编程中断控制器8259A
1
第八章
8-1 概 述 一、中断概念
1、中断
2
第八章
(1)定义
CPU正常运行程序时,由于CPU的内部事件或 外设请求,引起CPU暂时中断正在运行的程序, 转去执行相应的外设(或内部事件)的服务程序 ,程序执行完后又返回到原先的程序继续执行,
中,依次放在中断向量表中。CPU响应中断时,从中断向量
表中找到该中断的入口地址,直接转向到该地址指向的位 置执行中断服务程序,这样加快了处理速度。
特点:速度快。
16
第八章
1、中断向量表 又称:中断服务程序的入口地址表。 中断服务程序的入口地址又称中断向量
8086在存储器最低的1KB(00000H~003FFH)空间内
3、中断响应
中断请求何时发生是随机的。CPU在每一条指令 的最后一个时钟(T)周期去检测INTR引脚,一旦检 测到有中断请求,并满足响应中断的要求,CPU就响 应中断。
4
第八章
4、中断向量表 CPU响应中断后,必须由中断提供地址信息,引 导程序进入中断服务子程序,这些中断服务程序的 入口地址存放在专门开辟的区域,该区域存放中断 向量表。 5、中断优先级 当多个中断源请求中断时,中断系统判别中断 申请的优先级,CPU响应高级的中断,挂起优先级低 的中断。 6、中断屏蔽 当中断源申请中断时,CPU可以由软件设置,使 之不能响应,称为中断屏蔽。
保护现行程序运行结果产生的状态和控制标志。
14
第八章
④ 关中断(清IF和TF)
为了防止在进入中断处理,但并未执行中断程序这 段时间内又响应新的中断。 ⑤ 保护断点 将当前指令的下一条指令的CS和IP压入堆栈,使中 断处理完成后能正确的回到原程序继续执行。 ⑥ 转入相应的中断服务子程序; ⑦ 中断返回 从堆栈中弹出断点的地址和PSW的内容,返回主程 序的断点处,继续执行主程序。
② 断点中断:
类型号3,INT 3指令引起的中断,属于软件中断
Debug状态下由G命令设置,相当于是在程序的某个
位置设置了断点。
10
第八章
三、与中断有关的引脚和指令
引脚
INTR、INTA#、NMI
指令
INT n、INTO、IRET
11
第八章
8-2 中断处理过程
不同类型的中断处理过程略有不同,本节主要介
,存放256个中断的中断向量。
每个类型号的中断向量占4字节,高2字节存放段
地址,低2字节存放偏移地址。
按照中断类型号的顺序依次将其中断向量存在1K
的内存表中,格式如下:
17
第八章
中断类型号n与中断
000 004
类型0中断入口(除பைடு நூலகம்出错)
类型1中断入口(单步中断)
IP CS IP CS
向量的地址关系: n×4=中断向量地址
相关主题