组成结构

中断系统是实现中断功能的软硬件总称:

  • 硬件: CPU 内部的中断机构 (控制器) 和外设接口中的中断控制器。
  • 软件: 用户或系统编写的中断服务程序

关键环节

1. 中断源与请求

  • 中断源: 能够引起中断的事件。
  • 中断请求触发器: 每个中断源唯一对应一个触发器, 用于记录随机发生的信号。

2. 中断判优 重点

  • 目的: 在多个中断请求同时发生时, 决定执行哪一个。
  • 优先级原则:
    1. 硬件故障 > 软件异常 > I/O 中断。
    2. 必须立刻处理的 (如掉电) 优先级最高。
  • 实现方式:
    • 硬件判优: 速度快, 但优先级固定不可改。
    • 软件判优: 通过执行程序轮询, 灵活但速度慢。

3. 中断响应条件

  1. 有中断请求信号。
  2. CPU 处于开中断状态 (中断允许触发器为 1)。
  3. 一条指令执行结束, 下一条指令尚未开始。

4. 中断隐指令

这是一组由硬件自动完成的操作, 并非真正的指令系统指令:

  • 保存断点: 将 PC 的值压入堆栈。
  • 关中断: 防止在保护现场过程中被新中断干扰。
  • 引出中断服务程序: 将入口地址装入 PC。

6. 中断屏蔽技术 重点

中断屏蔽技术通过硬件电路(屏蔽触发器)动态改变中断处理的优先级。

  • 屏蔽字 (Mask Word):对应每个中断源的一位。1 表示屏蔽(禁止该中断),0 表示开放(允许该中断)。
  • 屏蔽优先级:指在处理某级中断时,哪些更低优先级的中断被屏蔽。
  • 设计原则
    • 每个中断源的服务程序中,必须先设置对应的屏蔽字。
    • 通常,本级中断和所有低优先级中断都会被屏蔽(对应位设为 1)。
    • 优先级越高,其屏蔽字中 1 的数量通常越多。

7. 中断优先级设计实例 重点

假设有 A、B、C 三个中断源,硬件优先级为

若要通过屏蔽技术将处理优先级改为 ,则各级的屏蔽码(Mask Bits)设计如下:

中断源ABC屏蔽位数量
A级屏蔽码1102(屏蔽A、B)
B级屏蔽码0101(仅屏蔽B)
C级屏蔽码1113(全部屏蔽)
  • 关键考点:根据给定的处理优先级顺序,正确写出各级中断服务程序中的屏蔽字。