当前位置:文档之家› 第五章中断技术

第五章中断技术


2020/9/27
长江大学地物学院
10
(1)软件查询法
INT “或”
76
210
端口号= XXH
磁磁 盘带
CRT
键打
盘印
把各个外设的中断请求信号“相或”,产生一个总的INT信 号
当CPU响应中断后,进入中断处理程序,在中断处理程序的 开始部分安排一段带有优先级的查询程序。
优点:省硬件
缺点:中断响应慢
2020/9/27
长江大学地物学院
9
四 中断优先级和中断嵌套
1.中断优先级(Priority)的解决方法
系统中多个中断请求可能同时出现,CPU只 能按一定的次序(优先级策略)予以响应和处 理,这个响应的次序称为中断优先级。一般 的方法有:
软件查询法(需要少量硬件) 菊花链(daisy chain)优先级排队电路 可编程中断控制器(如8259)
中断处理就是指CPU执行中断服务程序;
执行完中断服务程序后,返回到原先被中断的程序称为“中断返回”。
为了能正确返回到原来程序被中断的地方(也称断点-即主程序中当前指 令下面一条指令的地址),在中断服务程序的最后应专门放置一条中断返 回指令。
另外,为了使主程序在返回后仍能从断点处继续执行,还需要在中断服 务程序的开头-保护现场(通过PUSH指令实现),在中断服务程序的末 尾-恢复现场(通过POP指令实现)。
(4N,4N+1)->IP (4N+2,4N+3)->CS
Y 有NMI?
N Y
暂存器=1? N
执行中断服务程序
2020/9/27
执行IRET指令
(弹出CS,IP,FR)
长江大学地物学院
24
8086/8088中断处理流程图
*8086中断优先级(Priority)
说明:
(1)~(5)步是CPU的内部处理(由 硬件自动完成)
程序控制方式:是在CPU的控制下,通过执行 程序指令进行的数据传送方式。又分为“无条 件传送”和“程序查询传送”两种方式。
2020/9/27
长江大学地物学院
2
程序控制方式
无条件传送方式:是在假定外围设备(Peripheral Device)已经准备好的情况下,直接利用输入/输出指令 (IN指令,OUT指令)与外围设备传送数据,而不去检测 外设的工作状态。
2020/9/27
长江大学地物学院
7
三 中断响应和处理过程
对于不同的中断类型(如可屏蔽中断、不 可屏蔽中断;外部中断、内部中断…), 处理器(CPU)进行响应和处理的具体过程 并不完全相同;另外,就是对同一种中 断类型(如可屏蔽中断),不同的处理器 (如Z80,80X86)进行响应和处理的过程 也不尽相同。
高地址的两个字节单元存放中断服务程序入口地址 的段地址(CS)-低字节在前(低地址),高字节在后 (高地址)。
2020/9/27
长江大学地物学院
17
中断向量和中断向量表
8086/8088的中断向量表如书P80图5.1所示。 解释:
8086/8088可以处理256种中断,对每种中断都指定一个中断 类型号(也称中断向量号),每个中断类型号与一个中断服务程 序的入口地址相对应。
2020/9/27
长江大学地物学院
6
二 中断方式
中断请求是指中断源(引起中断的事件或设备)向CPU发出的请求中断的 要求;
中断判优当有多个中断源发出中断请求时,需要通过适当的办法(软件的; 硬件的;软、硬件结合的)决定究竟先处理哪个中断请求,这就是“中断 判优”;
中断响应是指CPU中止现行程序转至中断服务程序的过程;
第五章 中断系统
中断的基本概念 8086/8088的中断系统 可编程中断控制器8259A 8259A在微机系统中的应用
2020/9/27
退出 1
第一节 中断的基本概念
一 CPU与外设之间的数据传送控制方式(即
I/O控制方式),通常有以下三种:
程序控制方式 中断方式 DMA方式(Direct Memory Access)
N
TF=1? N 执行下一条指令
(1)
读中断类型码 响应中断
IF=1? N
(1)
内部自动提供类型码
(2)
FR->栈
(3) TF->暂存器
(4) 0->TF和IF
(5) CS、IP->栈
(4N,4N+1)->IP (4N+2,4N+3)->CS
Y 有NMI?
N Y
暂存器=1? N
执行中断服务程序
2020/9/27
•INTR=INT1+INT2+INT3
中断请求
•当INTA信号沿菊花链行进时,最 靠近CPU并发出INT请求的接口将 首先拦截住INTA信号,并送出中 断类型码,进入相应的中断处理 程序;在服务完成后撤销其请求 (解除对下一级的阻塞和封锁)。
INTA INTR
(3)可编程中断控制器(如8259)
2020/9/27
则:中断服务程序的入口地址 为 CS=4030;IP=2010
入口地址为:43210
(0083H)=40H
2020/9/27
长江大学地物学院
21
中断向量和中断向量表
例3.中断类型号为23(17H),中断服务程序的 入口地址为:2340:7890H,由于中断类型号 17H对应的中断向量存放在0段的 0000:005CH(17H×4=5CH)处,所以有:
将中断分为两大类(如表5.1表5.2所示):
第一类:硬件中断:是由外部的中断请求信 号启动的中断,也称为外部中断。又可分为:
非屏蔽中断NMI:整个系统只有一个,不受IF屏蔽 可屏蔽中断INTR:受IF屏蔽,在中断控制器8259
的统一管理下,可屏蔽中断有几个至几十个。
2020/9/27
长江大学地物学院
2020/9/27
长江大学地物学院
8
三 中断响应和处理过程
中断一般由硬件(处理器内部)和软件(由程序设 计者编写的中断服务程序)共同完成,即整个 中断响应和处理过程是由CPU内部的有关硬件 和中断处理软件密切配合完成的。
针对一个具体的系统(机型),中断服务程序设 计者应该清楚在中断响应时,“硬件”完成了 哪些操作(如FR是否已被压入堆栈),还需要 “软件”(中断服务程序)完成哪些操作。
读取状态信息
读取状态信息
否 准备好?
是 忙?


输入数据
输出数据
2020/9/27
长江大学地物学院
4
程序控制方式
程序查询传送方式比无条件传送方式要 准确可靠,但在此种方式下,CPU要不断 查询外设的状态,占用了大量CPU时间, 而真正用于数据传送的时间却很少,即 CPU的工作效率很低;另外,采用这种方 式,也很难满足实时系统对I/O处理的要 求。因此,出现了中断控制方式。
2020/9/27
长江大学地物学院
5
二 中断方式
中断定义:在程序运行中,出现了某种紧急事 件,CPU必须中止现行程序,转去处理此紧急 事件(执行中断服务程序),并在处理完毕后再 返回运行程序的过程。
中断的全过程及有关概念:
一个完整的中断过程包括:
中断请求; 中断判优; 中断响应; 中断处理; 中断返回.
IF=1 TF=1
15
中断的分类
(注意,这里的IF是CPU内部的标志寄存器的IF位,IF =0,则对所有从INTR引脚进入的中断请求均不予 响应(“总开关”);另外,也可以在CPU外部的中断 控制器(8259)中以及各个I/O接口电路(如8255)中对 某一级中断或某个中断源单独进行屏蔽)。
第二类:软件中断:是由CPU内部的标志状态 (如TF、OF)或执行一条中断指令(INT n),以及 除数为0引起的中断,也称为内部中断。
执行IRET指令
长江大学地物学院 (弹出CS,IP,FR)
23
结束当前指令
除法错,INT n,INT0?
(1)
Y
读中断类型码
N
响应中断
Y NMI?
N INTR?
N
TF=1? N 执行下一条指令
IF=1? N
(1)
内部自动提供类型码
(2)
FR->栈
(3) TF->暂存器
(4) 0->TF和IF
(5) CS、IP->栈
优点:控制程序简单 缺点:数据传送不可靠
程序查询方式(也称“条件传送”方式)
主要特点:CPU通过执行程序不断读取并检测外设的状态,只 有在外设确实已准备就绪的情况下,才进行数据传送;否则, 还要继续不断地查询外设的状态。
2020/9/27
长江大学地物学院
3
程序控制方式
查询式输入、输出程序流程图
256个中断向量要占256*4=1024个字节单元,地址编号从 00000H~003FFH
5个专用中断(类型0~类型4),它们有固定的定义和处理功能; 27个保留的中断(类型5~类型31)。占0000:0014H~
0000:007FH,共108个字节单元。这个区域供系统使用,不允许 用户自行定义。 224个用户可定义的中断(类型32~类型255)。占 0000:0080H~0000:03FFH单元;使用时,要由用户自行填写相 应的中断入口地址。(其中有些中断类型已经有了固定用途,例 如,类型21H的中断已用作MS-DOS的系统功能调用)。
2020/9/27
长江大学地物学院
16
二 中断向量和中断向量表
中断向量 即中断服务程序的入口地址。
中断向量表是存放中断向量(中断服务程序入 口地址)的一个特定的内存区域(最低地址区).
相关主题