什么是中断:类型及其应用
PC 使用中断请求来处理各种硬件功能。 1953 年,UNIVAC 1103 首次引入了硬件中断。1954 年 IBM 650 首次引入了中断屏蔽。将不同的 IRQ 分配给不同的硬件设备以执行各种功能是必不可少的。在程序执行过程中,键盘、鼠标等设备需要CPU的服务,并产生中断以引起CPU的注意并处理请求的服务。这些被称为中断。 I/O 设备的其中一条总线专用于实现此目的,称为中断服务程序 (ISR)。这些用于各种应用,例如时间敏感事件、数据传输、强调异常事件、看门狗定时器、陷阱等。
什么是中断?
定义: 它被称为对需要立即处理事件的硬件或软件事件具有最高优先级的输入信号。在计算的早期,处理器必须等待信号来处理任何事件。处理器应该检查每个硬件和软件程序,以了解是否有任何信号需要处理。这种方法会消耗大量时钟周期并使处理器忙碌。以防万一,如果产生任何信号,处理器将再次花费一些时间来处理该事件,从而导致系统性能不佳。
引入了一种新机制来克服这个复杂的过程。在这种机制中,硬件或软件会将信号发送到处理器,而不是处理器检查来自硬件或软件的任何信号。该信号警告具有最高优先级的处理器,并通过保存其当前状态和功能来暂停当前活动,并立即处理中断,这称为 ISR。由于它持续时间不长,处理器在处理完后立即重新启动正常活动。

中断类型
主要分为两大类。
硬件中断
从外部设备或硬件发送的与处理器通信的电子信号,表明它需要立即关注。例如,来自键盘的敲击或来自鼠标的操作会调用硬件中断,从而导致 CPU 读取和处理它。所以它在执行指令的任何时间点异步到达。
硬件中断分为两种
- 可屏蔽中断 – 处理器必须中断屏蔽寄存器,允许启用和禁用硬件中断。每个信号都有一个位放置在屏蔽寄存器中。如果设置了该位,则在未设置位时启用和禁用中断,反之亦然。通过这些掩码中断处理器的信号称为掩码中断。
- 不可屏蔽中断 (NMI) – NMI 是需要在任何情况下立即处理的最高优先级活动,例如看门狗定时器生成的超时信号。
软件中断
在执行某些指令或满足特定条件后,处理器本身会请求软件中断。这些可以是触发子程序调用等中断的特定指令,也可以由于程序执行错误而意外触发,称为异常或陷阱。
触发方法
通常,这些信号设计为使用逻辑信号电平或信号边沿触发。这些方法有两种。
电平触发中断
在这种类型中,如果该服务级别被断言,则输入模块调用中断。如果固件中断处理程序处理中断源时继续断言中断源,则该模块重新生成并触发处理程序再次调用。如果保持断言时间较长,电平触发的输入就不好。
边沿触发中断
边沿触发的中断输入模块在识别到断言边沿(下降沿或上升沿)后立即调用中断。当源的电平发生变化时,边缘会被注意到。这种类型的触发需要立即采取行动,而与源的活动无关。

系统实现
中断应作为不同的组件与控制线一起应用于硬件,或集成到内存子系统中。当在硬件中实现时,需要一个可编程中断控制器(PCI)来连接 CPU 的输入引脚和中断设备。 PCI 将各种中断源复用到单 CPU 或双 CPU 线。当实现与内存控制器相关时,系统的内存地址槽直接与中断映射。
共享中断请求 (IRQ)
对于边沿触发中断,使用上拉或下拉电阻来驱动中断线。这条线传输每个设备产生的每个脉冲。如果来自不同设备的中断脉冲发生的时间很接近,CPU 必须调用脉冲的后沿以免错过中断,然后 CPU 确保检查每个设备的服务请求。具有共享 IRQ 线的上拉电阻器性能良好的工业标准架构 (ISA) 主板必须正常工作。然而,在旧系统中,多个设备共享 IRQ 线,编程接口设计不佳,这使得处理中断变得困难。另一方面,新的系统架构,如 PCI 有助于大大缓解这个问题。
混合
混合类型的系统实现结合了边沿触发和电平触发信号。硬件应寻找边沿并验证信号是否在特定时间段内处于活动状态。不可屏蔽中断(NMI)输入通常使用混合类型,以确保错误中断不会影响系统。
消息– 发出信号
通过在通信通道(例如计算机总线)上传输消息,使用设备信号的消息信号中断请求服务。这些不使用物理中断线。 PCI Express 充当串行总线,专门用作消息信号中断。
门铃
门铃中断通常被软件系统用作一种机制,以向计算机硬件发出信号以完成工作。在硬件和软件之间相互同意后,软件将数据放在众所周知的内存位置,并按门铃通知硬件数据已准备好等待处理。现在,计算机硬件设备理解数据有效并进行相应处理。
多处理器IPI
在多处理器系统中,来自处理器的中断请求通过处理器间中断(IPI)发送到不同的处理器
典型用途/应用
这些是强大的输入,通常用于
- 服务硬件定时器,处理键盘敲击和鼠标动作
- 快速响应时间敏感或实时事件
- 与外围设备之间的数据传输
- 响应掉电信号、陷阱和看门狗定时器等高优先级任务
- 表示CPU异常事件
- 断电中断预见断电,使系统有序关机
- 周期性中断以跟踪绝对时间
常见问题
1).为什么要使用中断?
这些用于引起 CPU 的注意以执行硬件或软件请求的服务。
2).什么是 NMI?
NMI 是不可屏蔽的中断,不能被处理器忽略或禁用
3)。中断确认线的作用是什么?
处理器向设备发送信号,表明它已准备好接收中断。
4).描述硬件中断。举例
由外部设备或硬件生成;如键盘按键或鼠标移动调用硬件中断
5).描述软件中断。
定义为调用子程序调用等中断的特殊指令。由于程序执行错误可能会意外触发软件中断
6).哪个中断的优先级最高?
- 非屏蔽边缘和电平触发
- TRAP 的优先级最高
7).给出中断的一些用途
- 快速响应时间敏感或实时事件
- 与外围设备之间的数据传输
- 响应掉电信号、陷阱和看门狗定时器等高优先级任务
- 表示CPU异常事件
8).什么是混合类型的系统实现?
混合类型的系统实现结合了边沿触发和电平触发信号。硬件应寻找边沿并验证信号是否在特定时间段内处于活动状态。
在本文中,我们了解了中断的重要性以及如何使用中断来执行请求的服务。我们还讨论了哪些类型、系统实现及其用途。
嵌入式