- 1、本文档共71页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中断接口8259
7 中断接口技术
2010级 讲稿
2012年9月
中断接口技术
中断技术概述
中断概念
中断系统
中断处理
8088中断系统结构
8088中断类型
8088的中断响应过程
8088的中断向量表
8088中断响应与时序
硬件中断请求与响应
硬件中断时序关系
中断概念
中断是一个(随机)过程。
中断源是可以引发中断过程的软件/硬件设备或事件,如软件中断指令、工作于中断方式的外设接口、需中断处理的软/硬件故障等。
中断请求信号是中断源向中断系统发出的软件/硬件中断请求信号。
中断程序有主程序和中断服务子程序。
中断断点是中断子程序返回主程序的指令地址。
中断系统是计算机不可缺少的重要组成部分,是实现中断过程的软、硬件的统称。
中断典型应用
并行处理:采用中断方式管理输入/输出设备,可以实现CPU和多个外设并行工作,大大提高了系统的工作效率。
实时处理:中断系统能对发生的事件实时处理。在应用于实时控制时,现场的许多信息是随机的,需要系统能迅速响应、及时处理。
故障处理:系统运行过程中,往往会随机出现一些故障。故障源可以利用中断系统功能,自动转去执行故障处理程序,而不必停机。
多机处理:中断系统可以高效地实现系统调度、人机对话、多机通信等。
中断系统基本功能
中断系统为了管理多个中断源,必须具有以下功能:
实现中断响应和返回
判断是否响应;若响应则保证正确转入中断子程序,以及正确返回。
实现中断优先权排队
当“同时”有多个中断请求时,根据某个判优策略选择最高优先权级别的中断源响应。
实现中断嵌套
根据优先权级别判断是否允许嵌套响应;若允许嵌套,则实现中断嵌套响应和返回。
中断的处理过程
中断请求
中断源向中断系统发出中断请求信号。
中断判优
若有多个中断源同时发出中断请求时,中断系统能够识别,并响应中断优先权级最高的中断源的请求。
中断响应
中断系统根据响应的中断源标识,以某种方式获得中断程序入口地址,并自动完成相关保护现场和返回信息的处理,然后转到中断服务子程序。
中断处理
执行中断服务子程序。中断服务子程序设计一般包括:保护现场、中断处理、恢复现场、中断返回(IRET指令)等环节。
中断返回
当执行到IRET指令,实现中断返回。
中断判优(排队)逻辑
根据中断优先权级别,中断系统的判优逻辑方法:
软件判优法(软件查询法)
—— P203,图8-1,图8-2
硬件判优法(硬件排队法)
简单硬件方式
串行“菊花”链 —— P204,图8-3
并行优先级编码器 —— P205,图8-4
专用软硬件方式
可编程中断控制器8259
中断接口技术
中断技术概述
中断概念
中断系统
中断处理
8088中断系统结构
8088中断向量机制
8088中断向量表结构与设置
8088的中断类型与优先级
8088的中断响应过程
8088中断响应与时序
硬件中断请求与响应
硬件中断时序关系
8088的向量中断机制
中断类型号——8086/8088最多能管理256个中断,统一编号为0~255(00H~FFH)。
中断向量——中断服务程序的入口地址,即段基址CS:偏移址IP 。
中断向量表——8086/8088系统规定在内存的最低1K字节(0段的0000H~03FFH)建立了中断向量表,按中断类型号顺序存放256个中断向量。
中断向量表地址——中断向量在中断向量表中的地址。中断向量表地址与中断类型号的关系为:
中断向量表地址= 中断类型号n×4
8088的中断向量表
向量号255的CS值
用户中断
(向量号255)
3FCH
向量号255的IP值
……
向量号2的CS值
非屏蔽中断
(向量号2)
008H
向量号2的IP值
向量号1的CS值
单步中断
(向量号1)
004H
向量号1的IP值
向量号0的CS值
除法错中断
(向量号0)
000H
向量号0的IP值
设置中断向量表
设置中断向量表有三种情况:
系统加电时,存放在系统ROM中的BIOS负责设置BIOS定义的中断向量表。
启动操作系统DOS时,DOS程序负责设置DOS定义的中断向量表。
用户自定义某个中断时,用户负责设置自定义类型号的中断向量表。
设置中断向量表方法一
编程设置中断向量表:
MOV AX, 0
MOV DS, AX
MOV BX, N*4 ;中断类型号N
MOV AX, OFFSET INT-N ;中断程序入口标号INT-N
MOV [BX], AX ;设置中断向量的IP值
MOV AX, SEG INT-N
MOV [BX+2], AX ;设置中断向量的CS值
设置中断向量表方法二
用DOS功能调用25H号子功能设置中断向量表:
MOV AX, S
文档评论(0)