中断技术与中断控制器.ppt
《中断技术与中断控制器.ppt》由会员分享,可在线阅读,更多相关《中断技术与中断控制器.ppt(86页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第9章章 中断技术与中断控制器中断技术与中断控制器 9.1 中断技术概述中断技术概述 9.2 8086/8088中断系统中断系统 9.3 可编程中断控制器可编程中断控制器82C59A9.4 高档微机中断系统高档微机中断系统 9.1 中断技术概述中断技术概述n9.1.1 什么是中断什么是中断 (概念)n在程序运行中,系统出现了某种紧急事件,CPU必须中止现行程序,转去处理此紧急事件(执行中断服务程序),并在处理完毕后再返回运行程序的过程。n一个完整的中断过程包括:n中断请求;中断请求;n中断判优;中断判优;n中断响应;中断响应;n中断处理;中断处理;n中断返回中断返回。n“中断请求中断请求”是
2、指中断源是指中断源(引起中断的事件或设备引起中断的事件或设备)向向CPU发出的请求中断的发出的请求中断的要求;要求;n“中断判优中断判优”当有多个中断源发出中断请求时,需要通过适当的办法当有多个中断源发出中断请求时,需要通过适当的办法(软件的;软件的;硬件的;软、硬件结合的硬件的;软、硬件结合的)决定究竟先处理哪个中断请求;决定究竟先处理哪个中断请求;n“中断响应中断响应”是指是指CPU中止现行程序转至中断服务程序的过程;中止现行程序转至中断服务程序的过程;n“中断处理中断处理”就是指就是指CPU执行中断服务程序,完成中断请求所要求的操作;执行中断服务程序,完成中断请求所要求的操作;n“中断返
3、回中断返回”执行完中断服务程序后,返回到原先被中断的程序。执行完中断服务程序后,返回到原先被中断的程序。9.1.2 中断源及其优先级中断源及其优先级n9.1.2 中断源及其优先级中断源及其优先级 n中断源中断源:发出中断请求的外部设备或内部原因。发出中断请求的外部设备或内部原因。n中断优先级:中断优先级:按照任务的轻重缓急给中断源排队。按照任务的轻重缓急给中断源排队。排队方法有:排队方法有:n软件查询法软件查询法(需要少量硬件需要少量硬件)简单排队电路:如菊花链式简单排队电路:如菊花链式 (daisy chain)优先级电路优先级电路n硬件排队电路:硬件排队电路:可编程中断控制器可编程中断控制
4、器(如如8259)(1)软件查询法)软件查询法n把各个外设的中断请求信号“相或”,产生一个总的INT信号n当CPU响应中断后,进入中断处理程序,在中断处理程序的开始部分安排一段查询程序。n优点:优点:省硬件n缺点:缺点:中断响应慢中断源及其优先级中断源及其优先级中断源及其优先级中断源及其优先级(2)菊花链优先级排队电路)菊花链优先级排队电路中断请求INT1INT2INT3CPU INTR接口设备3接口设备2接口设备1菊花链逻辑电路中断回答集电极开路门(OC门)INT1+INT2+INT3+5VINTR=INT1+INT2+INT3当INTA信号沿菊花链行进时,最靠近CPU并发出INT请求的接口
5、将首先拦截住INTA信号,并送出中断类型码,进入相应的中断处理程序;在服务完成后撤销其请求(解除对下一级的阻塞和封锁)。INTRINTA中断请求99.1.3 中断请求与中断屏蔽中断请求与中断屏蔽 2.2.中断屏蔽中断屏蔽 内部屏蔽:内部屏蔽:CPU不响应中断(关中断)不响应中断(关中断)中断屏蔽:中断屏蔽:外部屏蔽:中断请求信号不能送到外部屏蔽:中断请求信号不能送到CPUn 可屏蔽中断可屏蔽中断:受:受IF控制(IF为“1”时中断允许,IF为“0”时中断屏蔽)n 非屏蔽中断:不非屏蔽中断:不受受IF控制(无论IF为“1”或“0”都允许中断)(但可设计外部屏蔽电路进行屏蔽)1.中断请求中断请求
6、CPU在执行完每条指令后,自动检测中断请求输入线,以确定是否有外部发来的中断请求信号。指内部屏蔽指内部屏蔽9.1.4 中断服务程序中断服务程序 n中断服务程序:中断服务程序:为完成中断源所期望的功能而编写的程序。n中断服务程序的主要内容:中断服务程序的主要内容:在中断服务程序中,主要是进行输入/输出操作 或发出一系列控制信号,这些具体操作构成了中断服务程序的主体。另外还有一些附加操作,因此:中断服务程序的主要内容有:中断服务程序的主要内容有:n保护现场 n开中断n具体中断处理 n关中断 n恢复现场 n开中断、中断返回 9.1.5 中断隐操作和中断向量中断隐操作和中断向量 n中断隐操作中断隐操作
7、:CPU响应中断时,由内部硬件执行的一系列处理过程。响应中断时,由内部硬件执行的一系列处理过程。隐操作把隐操作把CPU引向中断服务程序引向中断服务程序中断类型、中断向量、中断向量表:中断类型、中断向量、中断向量表:中断类型:中断源的编号中断类型:中断源的编号中断向量:中断服务程序的入口地址中断向量:中断服务程序的入口地址中断向量表:内存中存放中断向量的区域中断向量表:内存中存放中断向量的区域以上三者关系:以上三者关系:中断向量在中断向量表中第一个单元的地址中断向量在中断向量表中第一个单元的地址=中断类型中断类型4 4第第1条可执行指令的条可执行指令的第第1个字节的地址个字节的地址9.1.6 中
8、断响应过程中断响应过程 n对于可屏蔽中断,当CPU检测到有中断请求时,如果满足响应条件就要予以响应。具体过程如下:n关中断、保护断点 n保护现场 n开中断 n具体中断处理 n关中断 n恢复现场 n开中断、中断返回 属于隐操作属于隐操作属于中断服务程序属于中断服务程序可选择可选择可选择主主 体体9.2 8086/8088中断系统中断系统 n中断系统:实现中断的软件和硬件的总和。中断系统:实现中断的软件和硬件的总和。9.2.1 中断系统的基本功能中断系统的基本功能 n要求能判断中断源的优先级,并按优先权的高低决定中断响应的顺序。n要求中断系统能实现中断和返回。n要求中断系统能实现中断嵌套,即高优先
9、级中断源的中断请求能中断低优先级中断源的中断服务。9.2.2 8086/8088的中断系统的中断系统 非屏蔽中断 外部中断 (硬件中断)可屏蔽中断 除法出错 内部硬件中断 单步跟踪 断点中断 内部中断 溢出中断 内部软件中断:INT n8086/8088的中断源分类:的中断源分类:n1.8086/8088的中断系统结构 8086/8088的中断系统结构如图9.1所示。8086/8088的中断系统的中断系统8086/8088的中断系统的中断系统n2.2.中断类型码与中断向量表中断类型码与中断向量表 n中断类型码中断类型码8086/8088为每个中断源指定的一个编号。n中断向量中断向量中断服务程序
10、的入口地址。n中断向量表中断向量表把系统中所有的中断向量按中断类型码从小到大的顺序放到存储器的某一个区域所形成的一个表n每个中断向量占用4 4个存储单元,8086/8088CPU的中断系统最多能处理256256个中断源。8086/8088CPU以存储器的00000H003FFH共1024个单元作为中断向量存储表 8086/8088的中断系统的中断系统n中断向量在中断向量表的存放次序中断向量在中断向量表的存放次序:是按中断类型号顺序存放,共占4个单元。每个中断向量存放的首地址=中断类型号4。CPU响应中断时,需把中断类型号N乘以4,得到中断向量的对应地址4N(该中断向量所占该中断向量所占4个字节
11、单元的第一个字节单元的地址个字节单元的第一个字节单元的地址)。n中断向量的装入:中断向量的装入:两个低字节单元的内容装入IP寄存器:IP=(4N,4N+1),两个高字节单元的内容装入CS寄存器:CS=(4N+2,4N+3)。外部(NMI、INTR):由接口提供n中断类型号中断类型号N的来源:的来源:硬件中断:由内部硬件提供 内部 软件中断:由中断指令提供8086/8088的中断系统的中断系统n例1:若中断类型号为3,则由中断类型号取得中断服务入口地址的过程如下图所示:00000H00001H0000CH(0000:000CH)1EA00H(1E00:0A00H)FFFFFH低地址内存高地址 1
12、E00 0 H+0A0 0 H 1EA0 0 H中断类型号34000CH.00(IPL)0A(IPH)00(CSL)1E(CSH).中断服务程序中断服务程序8086/8088的中断系统的中断系统n例2.中断类型号为20H,中断服务程序的入口地址存放在0000:0080H开始的4个单元中。若:n(0080H)=10H n(0081H)=20Hn(0082H)=30Hn(0083H)=40H则:中断服务程序的入口地址为图9.2 IBM PC/XT的硬件中断控制逻辑 n3.3.外部中断外部中断 图9.2 IBM PC/XT的硬件中断控制逻辑 NMI外部外部屏蔽电路屏蔽电路协协处处理理器器运运算算错错
13、RAM奇奇偶偶校校验验错错I/O校校验验错错8086/8088的中断系统的中断系统n非屏蔽中断非屏蔽中断NMI 当CPU的NMI引脚上来一个高电平时,CPU自动产生类型码为2的中断,并由此转入相应的服务程序。由于NMI引脚上的请求不能被CPU屏蔽,故常用于紧急情况的故障处理。8086/8088的中断系统的中断系统n可屏蔽中断可屏蔽中断INTR n当8086/8088的INTR引脚上有一个正跳变信号时,便产生硬件可屏蔽中断请求,这种中断请求可以用指令进行屏蔽或允许。当INTR的请求被允许时,如果现行指令执行完,其它中断响应条件也满足,CPU就会从 引脚发出中断响应信号。这时,中断源要向CPU提供
14、中断类型码,CPU得到类型码后自动从中断向量表中取得相应的中断向量,从而转去执行中断服务程序。图图9.3 8086/80889.3 8086/8088可屏蔽中断的响应过程可屏蔽中断的响应过程 8086/8088的中断系统的中断系统n4.内部中断内部中断 内部中断都是非屏蔽型的n除法出错中断是类型0n单步中断为类型1n断点中断是类型3n溢出中断是类型4n指令中断INT n8086/8088的中断系统的中断系统n8086/8088中断的优先权中断的优先权优先权按从高到低的顺序排列为:优先权按从高到低的顺序排列为:除法出错中断除法出错中断INT n溢出中断溢出中断NMIINTR断点中断断点中断单步。
15、单步。9.3 可编程中断控制器可编程中断控制器82C59A 9.3.1 82C59A的主要特性的主要特性 1)82C59A内部结构和外部引脚与8259A完全兼容。2)单一正5V电源,全静态工作(无需外加时钟)。3)该芯片集中断源识别、判优、提供中断类型号于一体。4)每片82C59A能管理8级中断。5)每片82C59A可送出8个8位的中断类型号(自动中断向量转移功能)。6)能用软件屏蔽中断请求输入,通过编程可选择多种不同的工作方式,以适应各种系统的要求。7)通过82C59A级联,在不增加外部电路的情况下,最多可用9片82C59A级连管理64级中断。属于中断源的外部屏蔽属于中断源的外部屏蔽9.3.
16、2 82C59A的内部结构的内部结构 IR0IR7:中断请中断请求寄存求寄存器器IRR优优先先权权电电路路在服务在服务寄存器寄存器ISR中断屏蔽寄存器中断屏蔽寄存器 IMR控控 制制 逻逻 辑辑数据总线数据总线缓冲器缓冲器读读/写写逻辑逻辑级连缓级连缓冲冲/比比较器较器INTAINTRDBRDWRA0CSCAS0CAS1CAS2SP/EN内部总线82C59A的内部结构的内部结构n1.1.数据总线缓冲器数据总线缓冲器:8位双向三态缓冲器。CPU向82C59A写入的命令字传送的信息:CPU从82C59A读取的状态字 82C59A向CPU提供的中断类型码n2读读/写逻辑写逻辑:内部地址译码和操作控制
17、。接收来自CPU的读/写命令,完成规定的操作。操作过程由 、A0、和 输入信号共同控制。82C59A的内部结构的内部结构n3.3.级联缓冲级联缓冲/比较器比较器:用于82C59A的级联和缓冲方式级连方式:传送从82C59A的编号。第1个 期间,识别ID标志;第2个 期间,该从片向CPU提供中断类型码。缓冲方式:输出局部数据总线允许信号。82C59A的内部结构的内部结构n4.4.中断请求寄存器(中断请求寄存器(IRRIRR):连接中断源 接收并寄存中断请求信号。(有请求时,IRR中相应位置“1”)。n5.5.中断屏蔽寄存器(中断屏蔽寄存器(IMRIMR):屏蔽中断源 82C59A的8级中断请求独
18、立地加以禁止或允许(当某位被置“1”时,与之对应的中断请求被屏蔽)。82C59A的内部结构的内部结构n6.6.优先级分析器(优先级分析器(PR):判断优先级。检查中断服务寄存器(ISR)的状态,判别有无优先权更高的中断正在接受服务,若无,则把中断请求寄存器(IRR)中优先权最高的中断请求送入中断服务寄存器。n7.7.中断服务寄存器(中断服务寄存器(ISR):寄存正在被响应的中断。正在被服务的所有中断级,包括尚未服务完而中途被更高级的中断打断了的中断级,他们在ISR中的对应位被置“1”,响应完后立即清“0”。n8.8.控制逻辑控制逻辑:按设置的工作方式控制82C59A的全部工作。有中断请求 IR
19、R相应位置“1”若中断未屏蔽 送PR 判优判优 送送ISR(相应位置“1”)向CPU发出INT信号 若满足响应条件 CPU 发回INTA信号 82C59A向CPU传送中断类型码 中断响应完成 ISR相应位清“0”9.3.3 8282C59AC59A引脚功能引脚功能 n82C59A的外部引脚 8282C59AC59A外部特性外部特性n82C59A的引脚可分为三个部分:n与CPU的接口引线n与外设的接口引线n用于级联的接口引线 1.82C59A与与CPU的接口引脚的接口引脚 nD7D0:数据线,数据线,双向,三态。传送的信息:控制字、状态字、中断类型码。nA A0 0:地址线,地址线,输入。偶地址
20、端口:3个控制字,3个状态字 寻址82C59A内部的端口:奇地址端口:4个控制字n :写信号,:写信号,输出,低高电平有效。n :读信号,:读信号,输出,低高电平有效。n :片选信号,:片选信号,输出,低高电平有效。nINTINT:中断请求信号,中断请求信号,输出,高电平有效。用于由82C59A向CPU发出中断请求,连接CPU的可屏蔽中断请求输入端INTR。n :中断响应信号,:中断响应信号,输出,低电平有效。用于接收CPU送回的中断响应负脉冲。连接CPU控制总线的 。OCW1,ICW2,ICW3,ICW4ICW1,OCW2,OCW3IRR,ISR,中断查询字CS RD WR A0 D4 D3
21、 读写操作 0 1 0 0 1 写ICW1 0 1 0 1 写ICW2、ICW3、ICW4、OCW1 0 1 0 0 1 0 写OCW2 0 1 0 0 0 1 写OCW3 0 0 1 0 读IRR/ISR 0 0 1 1 读IMR8259的读写功能的读写功能8282C59AC59A外部特性外部特性 3.82C59A级联时的接口引线级联时的接口引线 nCAS2CAS0:级连引脚,双向。用来构成82C59A的主从式级联控制结构,传送从片标志。n :从片编程/允许缓冲器信号,双向,低电平有效。主片SP=“1”当82C59A工作在缓冲方式时:输入SP信号功能:功能:从片SP=“0”=“0”允许 当8
22、2C59A工作在缓冲方式时:输出缓冲器允许信号 =“1”禁止2.82C59A与外设的接口引线与外设的接口引线 IR0IR7:中断请求,输入,高电平或上升沿有效。用于接收从外设来的中断请求信号。每个引脚分别连接一个中断源的 中断请求输出端或连接一个82C59A从片的INT端(级联方式时)。9.3.4 82 82C59AC59A的控制字的控制字 n82C59A共有共有7个控制字个控制字n4个初始化命令字(ICW1ICW4)n3个操作命令字(OCW1OCW3)n82C59A共有共有4个状态字个状态字 IRR寄存器内容、ISR寄存器内容、IMR寄存器内容 中断查询字8282C59AC59A的控制字的控
23、制字n1.1.初始化命令字初始化命令字 n初始化命令字通常是系统开机时,由初始化程序填写的,而且在整个系统工作过程中保持不变。n初始化命令字有四个ICW1、ICW2、ICW3、ICW4。写入顺序为ICW1、ICW2、ICW3、ICW4其中:是否写入ICW3和ICW4,由ICW1决定。nICW1的格式和含义 ICW1:芯片控制初始化命令字。:芯片控制初始化命令字。写入82C59A的偶地址端口。初始化命令字初始化命令字ICW1写入后,写入后,8259内部完成初始化过程:内部完成初始化过程:(1)清除ISR和IMR寄存器;(2)指定中断优先级R0 R7;(3)从方式的地址置成7;(4)特殊屏蔽方式复
24、位;(5)自动EOI循环方式复位;(6)边沿触发器复位。8282C59AC59A的控制字的控制字ICW1IC4SNGLADI0*1LTIM*A0D7 D6 D5 D4 D3 D2 D1 D001不写ICW4写ICW401级联,写ICW3单片,不写ICW3=0(不用)8088/8086不用标志位0=边沿触发方式1=电平触发方式ICW1的格式和各位的定义如下:的格式和各位的定义如下:当当ICW4=00H时,不写时,不写8282C59AC59A的控制字的控制字nICW2的格式和含义 ICW2:是设置中断类型码的初始化命令字是设置中断类型码的初始化命令字 写到8259A的奇地址端口 其格式和各位定义如
25、下:ICW2 D7 D6 D5 D4 D3 D2 D1 D0A11/T31A0A10A15/T7A14/T6A13/T5A12/T4A9A8自动填入中断类型码高5位 D7 D6 D5 D4 D3 D2 D1 D0IR7 T7 T6 T5 T4 T3 1 1 1IR6 T7 T6 T5 T4 T3 1 1 0IR5 T7 T6 T5 T4 T3 1 0 1IR4 T7 T6 T5 T4 T3 1 0 0IR3 T7 T6 T5 T4 T3 0 1 1IR2 T7 T6 T5 T4 T3 0 1 0IR1 T7 T6 T5 T4 T3 0 0 1IR0 T7 T6 T5 T4 T3 0 0 0写入
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中断 技术 控制器
限制150内