第八章 中断技术 微机基础与接口技术 教学课件

合集下载

微机原理与接口技术第8章 中断技术

微机原理与接口技术第8章  中断技术
(1)可屏蔽中断 (2)非可屏蔽中断NMI
2.内部中断
(1)溢出中断 (2)除法出错中断 (3) INT n指令中断 (4)断点中断 (5)单步(陷阱)中断
部中断的特点是:
⑴ 中断类型码或者包含在指令中,或者是预先规定的; ⑵ 不执行总线周期; ⑶ 除单步中断外,任何内部中断都无法禁止,即都是非屏蔽中断; ⑷ 除单步中断外,任何内部中断的优先级都比外部中断的高。 8086/8088的中断优先级如表8-1所示
求。
解决中断优先级的方法有以下几种。
1. 软件查询法 软件查询确定中断优先级是最简单的方法,其基本思想是把 几个(通常是8个)外设的中断请求触发器组合起来,形成一 个中断请求寄存器,作为一个端口使用,然后把各个外设的 中断请求信号作为一个逻辑“或”电路的输入信号,“或” 电路的输出端INT连接到CPU的中断请求输入引脚,对8086的 可屏蔽中断而言连接到INTR引脚。
8.2.2 中断向量表 中断向量表又称中断服务程序地址指针表,是存放中断服务程序入口
地址的表格。由于8086的存储器采用20位物理地址,被分成段地址和段 内偏移地址(有效地址)两部分,所以每个中断服务程序入口地址都由 段地址和段内偏移地址组成。
图8-7 中断向量表
8.3 8086的中断处理过程
中断过程也应该把它要使用的任何寄存器的内容在修改前保 存起来,并在处理结束前再恢复。中断过程最好在程序中关 键部分以外的所有部分都开放外部中断。若在一个过程中禁 止外部中断的时间过长,就可能丢失INTR线上的中断请求信 号。
8.2 8086/8088 的中断系统
8.2.1 8086/8088中断分类
根据中断源所处的位置不同,8086/8088的中断源可分为两类,即外部中 断和内部中断。如图8-6所示。

大学课程《微型计算机接口技术及其应用》课件PPT 第8章 中断

大学课程《微型计算机接口技术及其应用》课件PPT 第8章 中断
取IRR或ISR,由OCW3中P位设定读取 查询字 而A0引脚为高电平时读取的都是IMR 查询字反映8259A是否有中断请求
一个系统中,8259A可以级连,有一个主8259A, 若干个(最多8个)从8259A
级连时,主8259A的三条级连线CAS0~CAS2作 为输出线,连至每个从8259A的CAS0~CAS2
每个从8259A的中断请求信号INT,连至主8259A 的一个中断请求输入端IR
主8259A的INT线连至CPU的中断请求输入端
IF=1:可屏蔽中断会被响应
开中断、允许中断、中断开放
执行指令STI,使IF=1
执行指令IRET恢复原IF状态
8086的中断响应过程
现行指令
软件中断 N NMI N INTR N TF=1 N
下条指令
查询中断的顺序,
决定了各种中断源的优先权
Y 软件中断
除法错中断

Y 指令中断
溢出中断
×××
1 LTIM × SNGL IC4
×为中LL规SS是IITTCCNN1—1断定否II—为44GGMM—==触单LL写—0= =表都==10发片入只,,10示可10方, ,或I能, ,要 不C可以式电 边级为单 级W写 写以(:平 沿连1片 连4入 入,任建触 触方方 方IICC作意议发 发式式 式WW为为方 方:44标0,式 式)志即 ICW4规定的位全为0
个中断向量,向量号也从0开始 256个中断占用1KB区域,就形成中断向量表
8.5 8259A中断控制器
Intel 8259A是可编程中断控制器 可用于管理Intel 8080/8085、8086/8088、
80286/80386的可屏蔽中断 8259A的基本功能

微机原理与接口技术第八章

微机原理与接口技术第八章

五、 8259A的初始化编程举例
包含的内容: ① 8259A的初始化 ② 完成中断向量表的设置 例:将单片8259A接入8088系统中,设计其端口地址为0FFF0H 和0FFF1H。 分析:控制字写入的时序,见下表:
A0 0 1 0 0 0 1 其连接如图所示 0 0 1 0 1 D4 D3
RD
WR
8.3 中断控制器8259A
Intel8259A是一种可编程的中断控制器,有如下功能:
1.可管理8个中断源电路的中断,并对其进行优先级管理; 2.具有8级中断优先控制,通过级连可以扩展至64级优先权控制; 3.对中断源有屏蔽或允许申请中断的操作; 4.CPU响应中断时,能自动提供中断类型码。
一、 8259A的内部结构
三、 8259A的工作过程
① 中断源 ② IRR
经IR0~IR7 请求
8259A,使IRR相应位置“1”; PR,PR 经判优,将最高INT CPU的INTR;
两个INTA
经IMR允许置位
③ 若CPU处于开中断,则完成当前指令后
8259A;
其中:8259收到第一个INTA时,a>使ISR相应位置“1”; b>使IRR相应位清“0”; 8259收到第二个INTA时
中断类型号
DB
④ 若8259工作在自动结束方式AEOI,则8259清除ISR相应位,
否则到全结束,发出EOI命令,才使ISR清“0”。
四、8259可编程命令
1. 初始化命令字 1)ICW1 --芯片控制字,格式如图所示 作用:对8259复位 a>对中断请求信号边沿检测电路复位,使信号低时产生中断 b>清除IMR c>设置全嵌套方式 2)ICW2字--中断类型号,格式如图所示 3)ICW3字--主/从片初始字(单片时不用此字) 主/从片8259A的格式分别如图所示 4)ICW4字格式--中断方式字,格式如图所示 主要用于决定8259工作于8080还是8086,以及是否要EOI命令

微机原理与接口技术[8-1]课件资料

微机原理与接口技术[8-1]课件资料
类型0的中断服务 程序入口地址 类型1的中断服务 程序入口地址 类型2的中断服务 程序入口地址
. . .
息,引导程序进入中断服务子程序,这些中断在内
存中专门开辟一个区域,存放中断向量表(也称中 断矢量表)。
00000H
中断服务程序的入口地址构成的表 称为中断向量表
00004H
00008H
0000CH
003FCH
类型255的中断服 务程序入口地址
8086的中断向量表示意图
18:01
7
§8-1 概述-中断概念
4.中断优先级
当有多个中断源请求中断时,中断系统判别中 断申请的优先级,CPU响应优先级高的中断,挂起 优先级低的中断。 当CPU在运行中断服务子程序时,又有新的更 高优先级的中断申请进入,CPU要挂起原中断进入 更高级的中断服务子程序,实现中断嵌套功能。
18:01 3
§8-1 概述-中断概念
1.中断源
当CPU正常运行程序时,由于微处理器内部 事件或外设请求,引起CPU中断正在运行的程序, 转去执行请求中断的外设(或内部事件)的中断 服务子程序,中断服务程序执行完毕,再返回被 中止的程序,该过程称为中断。 中断源:引起程序中断的事件
中断源 中断响应 中断向量表 中断优先级 中断屏蔽
§8-1 概述-Βιβλιοθήκη 中断分类1. 外部中断① 不可屏蔽中断请求
INT n 指令 INTO 指令 除法 出错 单步 TF=1
非屏蔽中断请求
NMI
中断逻辑
INTR
8259A
可 屏 蔽 中 断 请 求

由CPU的引脚NMI引入,采用边沿触发,上升沿之后维持两个时钟
周期高电平有效。

微机原理及接口技术课件 第八章_ppt课件

微机原理及接口技术课件 第八章_ppt课件

No Image
在输入时,保存外设发往 CPU 的数据 (输入寄存器) 在输出时,保存 CPU 发往外设 的数据 (输出寄存器)
任何接口电路均包括如下基本功能:
1. 作为微型机与外设间传递数据的中间缓冲站; 2.正确寻址与微机交换数据的外设 ;
3.提供微型机与外设间交换数据所需的控制逻辑 与状态信号。
No Image
采用间接寻址,则其指令格式为: 输入指令:IN AL,DX 输出指令:OUT DX,AL
这种间接寻址方式的端口地址为两个字节长, 由DX寄存器间接给出,可寻址64K个端口地址。
No Image
优点:
1. I/O口的地址空间独立,且不占用存储
器地址空间。
2.地址线较少,且寻址速度相对较快 。
3.专门I/O指令的使用,使编制的程序清
晰,便于理解和检查。
No Image
缺点:
1. I/O指令较少,导致程序设计的灵活 性较差;
2.需要存储器和I/O端口两套控制逻辑, 增加了控制逻辑的复杂性。
No Image
8.3 CPU与外设之间的数据传送方式
微机与外设间的数据传送,实际上是CPU 与 I/O 接口间的数据传送。 CPU 与外设间的数 据传送通常包括无条件传送、查询传送、

No Image
8086/8088等就采用了I/O端口单独寻址方式。 这些指令包含直接寻址和寄存器间接寻址两种
类型。
No Image
对以8086为CPU的PC系列机而言,如采用直接 寻址,则其指令格式为: 输入指令: IN AL,PORT 输出指令: OUT PORT, AL
这种直接寻址方式的端口地址为一个字节长, 可寻址256个端口
No Image

微机技术第08章中断控制接口PPT课件

微机技术第08章中断控制接口PPT课件
微机技术第08章中断控制接口ppt 课件
目 录
• 中断控制接口概述 • 中断控制接口的工作原理 • 中断控制接口的应用 • 中断控制接口的编程与实现 • 中断控制接口的发展趋势和未来展望
01 中断控制接口概述
中断的基本概念
中断
指计算机在执行程序过程中,出现异常情况或特殊请求,计算机暂停当前程序的执行,转去执行相应的处理程序,处 理完毕后再返回原程序继续执行。
现代中断控制接口
随着微处理器技术的发展,现代中断控制接口已经实现了 更为复杂的功能,如可编程中断控制器等,能够更好地满 足各种应用需求。
中断控制接口的现状
目前,中断控制接口已经成为计算机系统中不可或缺的一 部分,广泛应用于各种领域,如工业控制、通信、医疗等。
中断控制接口的未来发展趋势和挑战
发展趋势
3. 使用软件计数器实现定时器溢出 事件的处理。
总结:通过示例可以更好地理解中断 控制接口的实现过程,掌握编程技巧 ,提高实际应用能力。
05 中断控制接口的发展趋势 和未来展望
中断控制接口的发展历程和现状
早期中断控制接口
中断控制接口的早期实现主要依赖于硬件,功能相对简单, 主要用于实现计算机的实时处理和多任务处理。
中断控制接口的编程步骤和技巧
01
3. 编写中断服务程序。
02
4. 配置中断控制寄存器和向量表。
5. 启动中断。
03
中断控制接口的编程步骤和技巧
01
技巧
02
1. 合理安排中断优先级,避免优先级冲突。
03
2. 优化中断服务程序的执行效率,减少中断处理时间。
中断控过程中的数据冲突。
中断控制接口的实现示例
5. 在中断服务程序中处理定时器 溢出事件。

微机原理与接口技术课件(铁道大学)第8章中断技术

微机原理与接口技术课件(铁道大学)第8章中断技术
2011年6月28日星期二 年 月 日星期二
章第2页共 第8章第 页共 章第 页共145页 页
第8章 中 断 技 术 章
中断是指计算机在正常执 行程序的过程中, 行程序的过程中,由于某事件
主程序 中断 的发生使CPU暂时停止当前程 申请 的发生使 暂时停止当前程 中断服务程序 入口
序的执行, 序的执行,而转去执行相关事 件的处理程序, 件的处理程序,结束后又返回 断点 原程序继续执行,这样的一个 原程序继续执行, 过程就是中断。 过程就是中断。
2011年6月28日星期二 年 月 日星期二
章第9页共 第8章第 页共 章第 页共145页 页
第8章 中 断 技 术 章
5) 中断服务 每一个中断源都有其相应的服务程序,即中断程序。 每一个中断源都有其相应的服务程序,即中断程序。当 CPU识别中断源后,就会取得其中断程序的入口地址,并转入 识别中断源后,就会取得其中断程序的入口地址, 识别中断源后 该中断程序,进行相应的中断服务。 该中断程序,进行相应的中断服务。中断服务是整个中断处理 的核心。 的核心。 6) 现场恢复 当CPU完成相应的中断服务后,利用中断服务程序,将原 完成相应的中断服务后, 完成相应的中断服务后 利用中断服务程序, 来在中断程序中用软件保存的相关信息从堆栈弹出, 来在中断程序中用软件保存的相关信息从堆栈弹出,恢复为中 断前的内容。 断前的内容。 7) 中断返回 在中断程序的最后,通过执行一条中断返回指令, 在中断程序的最后,通过执行一条中断返回指令,将IP、 、 CS及标志寄存器的内容从堆栈中弹出,使CPU返回到中断前的 及标志寄存器的内容从堆栈中弹出, 及标志寄存器的内容从堆栈中弹出 返回到中断前的 程序,并从断点处继续执行。 程序,并从断点处继续执行。

第 8 章 中断——微机原理课件PPT

第 8 章  中断——微机原理课件PPT
D
2. 设置中断屏蔽触发器
在实际系统中,往往有多个中断源。为了增加控制的 灵活性,在每一个外设的接口电路中,增加一个中断屏蔽 触发器,只有当此触发器为“1”时,外设的中断请求才能 被送出至CPU。可把8个外设的中断屏蔽触发器组成一个 端口,用输出指令来控制它们的状态。
3. 中断是开放的
在CPU内部有一个中断允许触发器。只有当其为“1” 时(即中断开放时),CPU才能响应中断;若其为“0”(即中 断是关闭的),即使INTR线上有中断请求,CPU也不响应。 而这个触发器的状态可由STI和CLI指令来改变。当CPU复 位时,中断允许触发器为“0”,即关中断,所以必须要用 STI指令来开中断。当中断响应后,CPU就自动关中断, 所以必须在中断服务程序中用STI指令来开中断。
在中断服务程序的最后,要开中断(以便CPU能响应新 的中断请求)和安排一条返回指令,将堆栈内保存的IP和 CS值弹出,运行就恢复到主程序。
8.3 中断优先权
同时有多个中断源发出中断请求。
1、用软件确定中断优先权
优点: (1)程序决定优先权的次序; (2)不需要有判断与确定优先权的硬件排 队电路。
缺点:由询问转至相应的服务程序入口的时间长,尤其是在中断源较多 的情况下。
8.1.2 中断源
引起中断的原因,或能发出中断申请的来源。
中断源有以下几种: (1) 一般的输入输出设备。如键盘、行打印
机等。 (2) 数据通道中断源。如磁盘、磁带等。 (3) 实时时钟。 (4) 故障源。 (5) 为调试程序而设置的中断源。
8.1.3 中断系统的功能
1. 实现中断及返回 2. 实现优先权排队 3. 高级中断源能中断低级的中断处理
单步 中断
INTR 8259A 中断
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8.2
2020/9/26
图8-2 8086/88的中断向量表
8.2
8086/8088 中断系统有256个中断,每个中断向量占 四个存储单元,共需占用1K字节的存储空间来存放 中断向量。PC系列微机把中断向量表存入存储器的 最低端1K字节,即从00000H~003FFH的存储空间 中。
中断类型号n×4
3.中断向量的修改
用户利用系统中断资源来开发可屏蔽中断服务程序的常用方法
用户编程实现把系统提供的中断服务程序入口地址 指向自己开发的中断服务程序。 方法:用户中断服务程序的 CS:IP加入中断向量表
2020/9/26
8.3 可编程中断控制器8259A
PC采用中断控制器8259A协助CPU完 成对外部硬件中断的管理 工作 ———— 具有三个主要方面的功能:
MOV AX,OFFSET INT_PRO
STOSW
;装入INT_PRO子程序的偏移地址
MOV AX,SET INT_PRO
STOSW
; 装入INT_PRO子程序的段地址
2020/9/26
3)使用DOS系统功能调用装入
8.2
INT 21H的25H/35H号功能也提供了装入/保存中断向量的功能。
PUSH DS
中断源的中断屏蔽触发器可以设置是否发出 这一请求
2020/9/26
2. 中断响应
8.1
响应中断请求的条件:
这一请求没有被中断管理机构屏蔽 这一请求的中断优先级最高; 这一请求没有超过系统允许嵌套的层数 CPU允许中断 且CPU执行完当前指令 响应时系统的操作:执行中断隐指令 保存程序计数器PC和标志寄存器内容
以防止CPU再次响应。
2020/9/26
6.总线连接方式
8.3
缓冲方式和非缓冲方式两种
1)缓冲方式 8259A通过总线驱动器和系统数据总线连接
SP / EN 作为总线驱动器的启动信号输出中断类型号
2)非缓冲方式
2020/9/26
8259A数据线与系统数据总线直接相连
7.查询中断方式
8.3
8259A也可以用查询方式来检查请求中断的设备。当 CPU关中断时,中断输入信号将不起作用,那么对设备的 服务就可通过软件查询来实现。
2020/9/26
3. 中断处理
8.1
用户编程完成的操作:
1) 关中断、保护现场
2)开中断
允许嵌套
3)中断服务 4)关中断 恢复断点和现场时不被中断
5)恢复现场、中断结束 6)中断返回
2020/9/26
8.2 8086/8088的中断系统
8086/8088系统的中断类型可以有256个, 用一个8位二进制码表示。 划分为硬件中断(外部中断)
二、中断的基本原理与概念
8.1
1. 中断屏蔽 中断分为两大类:
IF:STI 、CLI
不可屏蔽中断 (NMI)
可屏蔽中断(INTR )
2020/9/26
2. 中断优先级
8.1
系统根据引起中断事件的重要性和紧迫程度,
硬件将中断源分为若干个级别,称作中断优先 级。
CPU按照由高到低的顺序响应。高级中断可以 打断低级中断处理程序的运行,优先执行高级中 断处理程序。
不利于多片级联
2)特殊完全嵌套方式
在CPU中断服务期间,除了允许高级中断请求进 入外,还允许同级中断请求进入,从而实现了对同 级中断请求的特殊嵌套。
2020/9/26
用于多片级联
8259的多片级联
8.3
主控8259A向CPU申请
从控8259的INT输出端接 到主控制器的IR输入端。
如果某一从属8259A的 中断请求被CPU响应,在
MOV AX, SEG INT_PRO ;取INT_PRO子程序的段基址
MOV DS, AX
MOV DX, OFFSET INT_PRO ;取INT_PRO子程序的偏移地址
MOV AL, 60H
;中断类型号
MOV AH, 25H
;25H号DOS功能调用
INT 21H
POP DS
2020/9/26
8.2
3. 中断嵌套
优先级更高的中断打断当前正在执行的级别较低的中断
2020/9/26
三、中断的过程
8.1
中断是一个软硬件协调工作的过程,整个工作过 程可分为中断请求、中断响应和中断处理。
1.中断请求
中断请求是由中断源发出并送给CPU的控制信 号,由中断源设备通过置"1"设置在接口卡上的中 断触发器完成。
中断响应周期里,主控 8259A将其对应IR输入端的 编码作为对从属8259A进行 识别的地址,送到CAS2 ~ CAS0级联线上,被选中的 从属8259A将接收INTA信
号,并把其中断向量送上 数据总线。
CPU +5 V
8259A
INTA IN T
C A S0 C A S1 C A S2
IR0
IR1
查询中断的命令是通过OCW3中P=1发出的,8259A接 到查询命令后,把随后的一次CPU读操作当作中断响应 信号,如果有中断请求,就把ISR相应的位置位,并读出 查询字,从而判断该中断级别,并编程实现中断服务程序 的转移。
2020/9/26
三、8259A的命令字 初始化命令字ICW1~ICW4 操作命令字OCW1~OCW3
IR2
IR3
IR4
SP / EN
IR5
IR6
IR7
8259A
INTA
IR0

IN T
C A S0 C A S1 C
8259A
INTA IN T
C A S0 C A S1 C A S2
IR0 IR7 SP / EN

在中断服务结束时,若不是自动EOI方式必须发出两个EOI命令,一个给从片, 一个给主片,清除各自的ISR位。
8.1
为了使系统的各类中断有序地进行,需对中断划分优先级
内部中断的优先级别最高(单步中断除外),其次是不可屏 蔽中断(NMI)和可屏蔽中断,单步中断的优先级别最低。
2020/9/26
三、中断向量表 1.中断向量与中断向量表
8.2
如何根据不同的中断源进入相应的中断服务子程 序,每一个中断服务程序都有一个唯一确定的入口 地址。
1)接收外部设备的中断请求 2)实现优先级排队管理 3)提供中断类型号
2020/9/26
一、8259A内部结构和引脚功能
8.3
D7~ D0
数据总线 缓冲器
INT A INT 控制逻辑
RD WR CS A0
CAS0 CAS1 CAS2 SP/ EN
读 /写 控制电路
级联缓 冲 /比 较 器
中断 服务 寄存器
2020/9/26
3.中断屏蔽方式
8.3
普通屏蔽方式和特殊(特定)屏蔽方式
1)普通屏蔽方式
通过8259A的中断屏蔽寄存器(IMR) 来实现对中断请求IRi的屏蔽。
由OCW1 设置
2)特殊屏蔽方式 (SMM)
实现低优先级中断请求中断正在服务的高优先级中断
2020/9/26
通过OCW3来设置或取消
4.中断结束方式
1.中断优先权方式
固定优先权方式和自动循环优先权方式
1)固定优先权方式
由高到低的优先级顺序是:IR0, IR1, IR2, …, IR7
2)自动循环优先权方式
2020/9/26
IR0~IR7的优先权级别可以改变
2.中断嵌套方式 一般完全嵌套和特殊完全嵌套
8.3
1)一般完全嵌套方式
中断优先权管理为固定方式, 即IR0优先权最高,IR7优先权最低
8.3
CPU为某个中断请求服务,中断对应的ISR 中的Di位被置1,使比它优先级低的中断请求 无法得到响应。中断结束时,应及时清除中 断服务标志位。
三种中断结束方式
1)自动结束方式
在中断响应过程中由硬件自动完成ISR中为“1”位 的清除, 所以这不是中断服务子程序的真正结束 。
2020/9/26 只适合用在没有中断嵌套的场合
查表,从低到高地址取连续4个字节
从高到底的这4个字节即为CS:IP
2020/9/26
2020/9/26
2. 中断向量的装入
8.2
系统设置的中断服务程序,其中断向量由 系统负责装入。
用户开发的中断系统,在编写中断服务程序 时,其中断向量由用户负责装入。
2020/9/26
用户程序三种方式装入中断向量 :
8.2
1)使用MOV指令直接装入
MOV MOV MOV
MOV MOV MOV MOV
AX, 0
;中断向量表的段基址为0000H
DS, AX
BX, 60H*4 ;60H号中断向量在向量表中存放的单 ;元地址
AX, OFFSET INT_PRO
[BX], AX ;装入INT_PRO子程序的偏移地址
AX, SEG INT_PRO
[BX+2], AX ;装入INT_PRO子程序的段地址
2020/9/26
8.2
2)使用串存指令直接装入
CLD
;方向标志置DF=0,串操作时,修改地址指针
;增量
MOV AX,0 ; 中断向量表的段基址为0000H
MOV ES,AX
MOV DI,60H*4 ;60H号中断向量在向量表中存放的单元地址
是用以提高计算机工作效率的一项重要技术
2020/9/26
一、中断的基本概念
8.1
1.中断及中断源
中断是指CPU正在运行程序时,由于某些事件或状态的出 现,使CPU暂时停止正在运行的程序,转到为这些事情或状 态服务的程序中去,服务完毕后,再返回被打断的程序继续 执行。
相关文档
最新文档