GIC的分配器Distributor为每一个中断都维护了一个状态机,这些中断状态包括Active(正在处理)、Inactive(停止处理)、Pending(挂起)、Active and pending(处理与挂起),具体如图所示。

结合图所示的中断状态转换,GIC检测中断的流程如下。
(1)当GIC检测到一个中断产生时,会将中断标记为Pending状态(A1)。
(2)GIC分配器Distributor从Pending状态的中断中选择一个优先级最高的中断,发送到确定的CPU Interface中。
(3)CPU Interface决定中断是否发送给CPU,如果该中断优先级满足要求,GIC会发送一个中断信号给CPU。
(4)当一个CPU进入中断异常后,会读取GICC_IAR寄存器(中断响应寄存器)获取需要处理的中断号(HW Interrupt ID)来响应该中断(一般由内核中断处理程序完成,寄存器会返回硬件中断号)。当GIC感知到程序读取寄存器后,如果中断源是Pending状态,则将其修改为Active状态(C)࿱

GIC检测中断的流程相关推荐

  1. GIC通用中断控制器

    1. GIC简介 操作系统中,中断是很重要的组成部分.有了中断系统才可以不用一直轮询(polling)是否有事件发生,系统效率才得以提高.一般在系统中,中断控制分为三个部分:模块.中断控制器和处理器. ...

  2. openmv串口数据 串口助手_STM32 串口接收不定长数据 STM32 USART空闲检测中断

    编者注: 单片机串口接收不定长数据时,必须面对的一个问题为:怎么判断这一包数据接收完成了呢?常见的方法主要有以下两种: 1.在接收数据时启动一个定时器,在指定时间间隔内没有接收到新数据,认为数据接收完 ...

  3. 车管所免检测审车流程

    城东车管所免检测审车流程 不知不觉中爱车已经四年了,这次刚好赶上符合"6年内免检测审车"的政策.由于离城东车管所近一点,所以本次就在城东车管所去免检审车了. 早上9点半,坐公交车前 ...

  4. stm32之备份寄存器(BKP)应用(侵入检测中断)

    前言:很多的嵌入式设备使用过程中,当系统掉电时,往往需要把一些用户设置的参数保存起来,或者是将掉电前的一些状态信息保存,或者是统计系统重启次数.保存这些动态信息其实有很多种方法,第一种:在系统掉电前保 ...

  5. :I/O中断处理过程包括哪几个阶段?中断服务程序流程分为哪几部分?

    完整的中断处理过程分为 1)中断响应的事前准备: 系统要想能够应对各种不同的中断信号,总的来看就是需要知道每种信号应该由哪个中断服务程序负责以及这些中断服务程序具体是如何工作的.系统只有事前对这两件事 ...

  6. python登录系统账号检测_一种基于python的惠普打印机默认用户名密码检测方法与流程...

    本发明涉及打印机检测技术领域,特别是一种基于python的惠普打印机默认用户名密码检测方法. 背景技术: 网络打印机是当前各大中小型企业正常办公比不可少的办公网络设备,但对于大中型企业而言,不同部门或 ...

  7. MTCNN——多目标检测人脸实现流程

    MTCNN 是什么? MTCNN全称:Multi-task convolutional neural network(多任务卷积神经网络) 可以简单理解为MTCNN中包含不止一个卷积网络,每个卷积神经 ...

  8. ARM通用中断控制器GIC之中断控制

    在阅读本章之前,可以参考笔者之前关于GIC的一些描述: ARM通用中断控制器GIC(generic Interrupt Controller)简介 ARM架构Generic Interrupt Con ...

  9. 中断触发流程三(中断控制器)

    这一篇主要说说中断控制器,及GPIO中断触发与中断号的识别,为什么GPIO引脚的触发最后调用特定的中断例程,这中间是怎么联系起来的.现在知道的是request_irq只是在特定的中断号 链表中注册了一 ...

最新文章

  1. 皮一皮:原来网恋就是这个感觉...
  2. 数据库acid简介(一)
  3. Linux 内核定时器使用 二 高精度定时器 hrtimer 的用例
  4. boost::geometry::index::detail::segment_intersection用法的测试程序
  5. 千方百计管理系统服务器地址,千方百计医药管理系统如何查库存
  6. python问卷调查系统设计案例_从设计到施工,全面剖析超级玻璃屋面系统案例!...
  7. 奥斯卡“最佳国际电影”奖,《哪吒之魔童降世》申请出战!
  8. 公共 API 的错误次数远超你想象!
  9. 【GIS导论】实验三 数据处理
  10. [OpenGL] 斯坦福兔子与显示列表
  11. oracle多表关联查询技巧,Oracle SQL 多表关联查询
  12. CTR预估 论文精读(十七)--ESMM: Entire Space Multi-Task Model
  13. layui table表格隐藏
  14. 《计算机存储与外设》----2.3 DRAM
  15. vue-element-admin动态加载接口和报错解决
  16. Adobe Photoshop CC 2019 for Mac(版本介绍)
  17. Oracle--ORA-01144 报错解决方案
  18. Poster Design
  19. visio中如何取消跨线和去掉页边距
  20. 提交form表单方法

热门文章

  1. linux 查看 操作系统位数
  2. linux 查看ln链接地址,linux ln链接详解
  3. 读书有益——》民间治咳偏方
  4. 【20210910】【机器/深度学习】lightGBM模型训练中报错:“Cannot set reference after freed raw data“
  5. ksoftirqd内核线程-处理软中断
  6. Android 输入法键盘的显示和隐藏
  7. file_get_contents failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request
  8. [iWencai]问财-热门股票排名
  9. UE4碰撞射线检测2
  10. 联想微型计算机m910q6,一台比较完美的黑苹果小主机 联想M910Q折腾记 opencore EFI分享...