您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 汇编语言---第7章中断系统
第7章中断系统7.1中断系统基本概念7.2中断的过程7.3中断向量及其操作7.4Intel8259A可编程中断控制7.5PCI中断7.6串行中断7.1中断系统基本概念7.1.1中断的概念所谓中断,是指当计算机正在执行正常的程序时,计算机系统中的某个部分突然出现某些异常情况或特殊请求,CPU这时就中止(暂停)它正在执行的程序,而转去执行申请中断的那个设备或事件的中断服务程序,执行完这个服务程序后,再自动返回到断点执行原来中断了的正常程序。这个过程或这种功能就叫做中断。返回7.1.2中断的作用和分类1.中断系统有如下的作用:(1)分时处理;(2)故障处理;(3)实时处理2.中断的分类(1)不可屏蔽中断;(2)可屏蔽中断INTR;(3)由程序预先安排的中断指令(INTn);(4)程序性中断返回7.2中断的过程中断过程分为以下几步:中断请求→中断优先级的判别(中断排队,中断源识别)→中断响应→中断处理(保护现场,中断服务,恢复现场)。返回7.2.1中断请求与中断屏蔽1.中断请求与中断请求的条件内部中断请求,是由内部中断指令(或满足一定条件时),CPU自动以中断方式挂起正在执行的程序。外部中断请求就是外部设备(中断源)用某种信号加在CPU的某个引脚(如INTR)上,通知CPU,某中断源正在请求CPU中断现行程序的执行。在具有中断处理能力的微处理器外部引线中,都有一根或多根中断请求线。返回2.中断优先级别优先级最高的为0级。安排优先级别的原则是:先内部中断,后外部中断;先故障中断,后设备中断;先高速设备中断,后慢速设备中断;DMA请求优先于一般I/O请求。返回7.2.2中断识别与中断优先级的管理1.单线中断处理和多线中断处理2.中断排队与中断源的识别(1)软件查询法(程序查询识别)(2)硬件查询法(单级串行顺序链识别)(3)中断向量法识别返回7.2.3中断响应1.中断响应的方法(1)中断隐指令;(2)中断向量法2.中断响应的前提条件3.中断响应的过程(1)实模式下中断响应的过程(2)保护模式下中断响应的过程返回7.2.4中断处理1.起始部分—保护现场;2.主体部分—中断服务;3.结尾部分—恢复现场返回7.3中断向量及其操作7.3.1中断类型号和中断向量表;7.3.2中断向量的设置;7.3.3中断向量的修改;7.3.4中断类型号的获取返回7.4Intel8259A可编程中断控制器7.4.18259A的框图和引脚1.功能及工作特点2.结构框图3.8259A的引脚4.8259A的工作原理5.8259A寄存器及I/O端口的识别返回VCCA0INTAIR7IR6IR5IR4IR3IR2IR1IR0INTSP/ENCAS2CSWRRDD7D6D5D4D3D2D1D0CAS0CAS1GND18259A2822732642552462372282192010191118121713161415图7-138259A的引脚返回7.4.2中断触发方式和中断响应过程1.中断触发方式工作在缓冲方式时,会在输出状态字或中断类型号的同时,从端输出一个低电平,此低电平正好可作为总线驱动器的启动信号。往8259A输送数据时,情况也类似。非缓冲方式是相对于缓冲方式而言的。当系统中只有单片8259A时,一般将它直接与数据总线相连。在另外一些不太大的系统中,即使有几片8259A工作在级联方式,只要片数不多,也可以将8259A直接与数据总线相连。返回2.中断响应过程8259A中断控制器能实现向量中断。它是在中断响应期间,由8529A向CPU送出中断类型号,而引导CPU找到中断服务程序的入口地址。返回7.4.3工作方式1.一般完全嵌套方式2.特殊完全嵌套方式3.优先级自动循环方式4.优先级特殊循环方式返回7.4.4屏蔽中断源的方式1.普通屏蔽方式8259A内部有一个屏蔽寄存器,在普通屏蔽方式中,它的每一位对应了一个中断请求输入。当某一位为“1”时,对应的这一级中断就受到屏蔽。程序设计时,可以通过设置操作命令字OCW1,使屏蔽奇存器中任一位或几位置“1”。返回2.特殊屏蔽方式在有些场合,希望一个中断服务程序能动态地改变系统的优先级结构。例如,在执行中断处理程序某一部分时,希望禁止较低级别的中断请求;在执行中断处理程序另一部分时,又能够开放比本身的优先级别较低的中断请求。返回7.4.5结束中断处理的方式1.中断自动结束方式2.一般的中断结束方式3.特殊的中断结束方式返回7.4.6中断级联方式1.缓冲方式在多片8259A级联的大系统中,8259A通过总线驱动器和数据总线相连,这就是缓冲方式。在缓冲方式下,有一个对总线驱动器的启动问题。返回2.非缓冲方式非缓冲方式是相对于缓冲方式而言的。当系统中只有单片8259A时,一般将它直接与数据总线相连。在另外一些不太大的系统中,即使有几片8259A工作在级联方式,只要片数不多,也可以将8259A直接与数据总线相连。返回7.4.78259A初始化命令字和操作方式命令字1.初始化命令字ICW8259A的初始化命令字共有4个:ICW4~ICW1,初始化命令字必须顺序填写,但并不是任何情况下都要预置4个命令字,用户根据具体使用情况而定。8259A有两个端口地址,一个为偶地址,一个为奇地址。(1)ICW1芯片控制初始化命令(2)ICW2设置中断类型号初始化命令(3)ICW3标识主片/从片初始化命令(4)ICW4方式控制初始化命令返回2.操作方式命令字OCW为了在系统运行中,进一步对8259A的管理中断的规则进行修改,可通过对它写入操作控制字来实现。和初始化命令字ICW不同,OCW不是按照既定的流程写入,而是由CPU按照用户程序的需要写入的。(1)OCW1中断屏蔽操作命令字(2)OCW2优先级循环方式和中断结束方式命令字(3)OCW3操作控制字返回7.4.88259A在以80x86为CPU的计算机中的应用1.PC/AT机的硬件中断控制逻辑2.80386/80486/Penlium微机的中断控制逻辑返回3.PentiumIII微机的中断控制逻辑82801BA芯片1)82801BA芯片的中断控制逻辑2)82801BA中8259A各中断请求线的连接返回7.5PCI中断在现代微机中,不仅有前文所述的常规中断,还有PCI中断、串行中断等新技术。本节我们将简单介绍现代微机中关于PCI中断的操作、响应周期和PCI中断共享的概念。返回7.5.1现代微机中的PCI在815EP芯片组的82801BA芯片中,集成了两个中断控制器8259A,它除了提供与ISA兼容的中断外,还可以利用将PCI中断映射到与ISA兼容的中断线而支持PCI中断。7.5.2PCI中断响应周期返回7.5.3PCI中断的共享在815EP芯片组的82801BA芯片中,集成了两个中断控制器8259A,它除了提供与ISA兼容的中断外,还可以利用将PCI中断映射到与ISA兼容的中断线而支持PCI中断。返回7.6串行中断在82801BA内部集成了两个8259A可编程控制器,但并没有许多的中断请求引脚被引出来,这是因为82801BA支持串行中断技术,允许使用一根信号线SERIRQ提出中断请求,对于主处理器、82801BA和所有支持串行中断的外设,它们使用这个信号线传输与中断有关的信息。返回7.6.1开始帧串行IPQ协议有两种开始帧的操作模式,它们是连续模式(82801BA单独产生开始帧)和静态模式(由一个串行IRQ设备来启动开始帧)。返回7.6.2数据帧一旦开始帧被启动,所有的SERIRQ外设必须在SERIRQ的上升沿开始计算帧。在一个时钟内,每个IRQ数据帧都被分为3个阶段。(1)取样阶段;(2)恢复阶段;(3)翻转阶段返回7.6.3停止帧所有数据帧之后,82801BA会发出一个停止帧。SERIRQ信号被82801BA驱动为低电平,并维持2或3个PCI时钟周期。返回
本文标题:汇编语言---第7章中断系统
链接地址:https://www.777doc.com/doc-3973818 .html