ARM IHI0069F GIC architecture specification (7)

3.1 GIC逻辑组件

GICv3体系结构由一组逻辑组件组成:
    •Distributor。
    •每个受支持的PE都有一个Redistributor。
    •支持的每个PE都有一个CPU interface。
    •中断翻译服务组件(ITS),支持将事件翻译为LPI。
Distributor, Redistributor和ITS统称为IRI。
    a.ITS是可选的,IRI中可能有多个ITS。
    b.每个PE有一个Redistributor。
    c.每个PE有一个CPU interface。

CPU interface处理所有实现的异常级别的物理中断:
    •可选择通过ITS将转换为LPI的中断路由至Redistributor和CPU interface
    •PPI直接从源路由到本地Redistributor。
    •SPI从源通过分发服务器路由到目标Redistributor和相关的CPU interface
    •SGI由软件通过CPU interface和Redistributor生成。然后通过Distributor路由到到一个或多个目标Redistributor和相关联的CPU interface。

在GICv3中,ITS是一个可选组件,可将事件转换为物理LPI。该体系结构还支持不需要使用ITS的直接LPI。如果支持LPI,可以通过下面两个方式中的任意一个来实现:
    •通过访问Redistributers中的寄存器来支持直接LPI。
    •LPI支持由ITS提供。
一个实现必须只支持其中一种方法。

在GICv4中,必须包含至少一个ITS,以提供对虚拟LPI直接注入的支持。

ITS和Redistributor之间的通信机制由具体实现定义的。

CPU interface 和 Redistributor 之间的通信机制由具体实现定义的。

以下列表更详细地描述了上面第一张图所示的组件:

Distributor

Distributor执行中断优先级排序,并将SPIs和SGI分配给PE的Redistributor和CPU interface。
GICD_CTLR为以下各项提供全局设置:
    •启用亲和路由。
    •禁用安全性。
    •启用安全和非安全组1中断。
    •启用组0中断。
对于SPI,分发服务器为以下各项提供编程接口:
    •启用或禁用SPI。
    •设置每个SPI的优先级。
    •每个SPI的路由信息。
    •将每个SPI设置为电平敏感型或边缘触发型。
    •生成基于消息的SPI。
    •将每个SPI分配给一个中断组。
    •控制SPI的挂起状态和活动状态。
分发服务器寄存器由GICD_前缀标识。
有关详细信息,请参阅第2章中断的分布和路由。

ITS

ITS是GICv3体系结构中的一种可选硬件机制,用于将LPI路由到适当的Redistributor。软件使用命令队列来配置ITS。存储器中与ITS相关联的表结构将与设备相关联的EventID转换为PE的未决INTID。
ITS在GICv4中不是可选的,并且所有GICv4实现必须至少包括一个ITS。
有关更多信息,请参阅第5-85页的中断翻译服务。
Redistributor Redistributr是IRI中连接到PE的CPU interface的部分
Redistributor使用内存中的数据结构来保存所有物理LPI的控制、优先级和挂起信息。Redistributor中的两个寄存器指向以下数据结构:
    •GICR_PROPBASER。
    •GICR_PENDBASER。
在GICv4中,Redistributor还包括用于处理虚拟LPI的寄存器,这些虚拟LPI由ITS转发到Redistributer并直接转发到VM,而不涉及系统管理程序。这被称为将虚拟中断直接注入到VM中。
在GICv4中,Redistributers使用内存中的数据结构共同托管所有虚拟LPI的控制、优先级和挂起信息。Redistributor中的两个寄存器指向以下数据结构:
    •GICR_VPROPBASER。
    •GICR_VPENDBASER。
在支持LPI但不包括ITS的实现中,GICR_*寄存器包含一个简单的内存映射接口,用于信号和控制物理LPI。
Redistributers提供了一个编程接口,用于:
    •识别、控制和配置支持的功能,以启用实施的中断和中断路由。
    •启用或禁用SGI和PPI。
    •设置SGI和PPI的优先级。
    •将每个PPI设置为水平敏感型或边缘触发型。
    •将每个SGI和PPI分配给一个中断组。
    •控制SGI和PPI的未决状态。
    •控制SGI和PPI的活动状态。
    •为连接的PE提供电源管理支持。
    •在支持LPI的情况下,内存中支持相关中断属性及其挂起状态的数据结构的基地址控制。
    •在支持GICv4的情况下,内存中支持相关虚拟中断属性及其挂起状态的数据结构的基地址控制。
Redistributor寄存器由GICR_前缀标识。
有关Redistributor的更多信息,请参阅第2-35页的Affinity routing和第2-30页的The Distributor and Redistributers。

CPU interface

GIC体系结构支持CPU interface,该接口为系统中的PE提供寄存器接口。每个CPU interface提供一个编程接口,用于:
    •一般控制和配置,以根据实施的安全状态和遗留支持要求实现中断处理。
    •确认中断。
    •执行优先级下降。
    •中断的停用。
    •为PE设置中断优先级掩码。
    •定义PE的抢占策略。
    •确定PE的最高优先级未决中断。
CPU interface有几个组件:
    •一种允许软件监控级别控制物理中断处理的组件。与此相关联的寄存器由ICC_前缀标识。
    •一种允许软件监控级别控制虚拟中断处理的组件。与此相关联的寄存器由ICV_前缀标识。
    •允许系统管理程序控制一组挂起中断的组件。与此相关联的寄存器由ICH_前缀标识。


CPU interface中的系统寄存器与在物理域中处理中断的软件相关联,或者与作为VM一部分的非安全EL1的执行相关联。HCR_EL2的配置确定访问是对物理资源还是对虚拟资源。
在EL2可访问的系统寄存器,用于控制PE的活动、挂起、活动和挂起虚拟中断的列表,由ICH_前缀标识。
有关处理物理中断的更多信息,请参阅第4章物理中断处理和优先级。
有关处理虚拟中断的更多信息,请参阅第6章虚拟中断处理和优先级。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/649536.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

灌装线在线粒子浮游菌监测系统安装调试

近日,北京中邦兴业成功完成了某企业灌装线多个点位的洁净环境在线粒子浮游菌监测系统的施工并完成了前期的调试工作。 【项目现场】 北京中邦兴业技术工程师根据客户现场实际情况,进行了粒子、浮游菌的点位布置,此系统能够实时监测生产线上的…

面向对象编程的魅力与实战:以坦克飞机大战为例

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、面向对象编程的引言 二、理解面向对象编程与面向过程编程的差异 三、创建类与对象&…

计算机的存储体系

计算机的存储分为内存和硬盘两大类。其中内存属于非持久化的存储设备,用于临时存储数据,设备掉电后数据会丢失;硬盘属于持久化的存储设备,设备掉电后数据不会丢失。 实际上在计算机领域存储的种类是非常多的,业界有时…

猫咪掉毛严重怎么办?小米、希喂、霍尼韦尔宠物空气净化器测评

吸猫成瘾,养猫“致贫”?在当今社会,养猫已成为众多年轻人的一个追捧的事情。乖巧又可爱,下班回到家撸一把猫已经成为年轻人的日常。但是猫咪可爱也不影响它的各种养猫伴生的问题!无论是漂浮的浮毛、飘散的皮屑还是偶发…

线程池(详细)

Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序都可以使用线程池。在开发过程中,合理地使用线程池能够带来3个好处。 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二&…

数据安全革命:Web3带来的隐私保护创新

随着数字化时代的发展,数据安全和隐私保护问题日益突出。传统的中心化数据存储和管理方式已经无法满足日益增长的数据安全需求,而Web3作为下一代互联网的新兴力量,正以其去中心化、加密安全的特性,引领着一场数据安全革命。本文将…

【MySQL02】【 InnoDB 记录存储结构】

文章目录 一、前言二、InnoDB 行格式1. COMPACT 行格式1.1 记录的额外信息1.2 记录的真实数据1.3 综上 2. REDUNDANT 行格式2.1 字段长度偏移列表2.2 记录头信息 3. DYNAMIC 行格式和 COMPPESED 行格式 三、InnoDB 数据页结构1. File Header (文件头部)2. Page Header (页面头部…

vue3+vite解决项目打包后本地图片等资源找不到的问题

1.在vite.config.js里面做如下配置 import { defineConfig } from vite import vue from vitejs/plugin-vueexport default defineConfig({base: ./, // 打包的静态资源引用路径plugins: [vue()], // 放插件用的resolve: {alias: {: /src // 配置/提示符}}, })上述配置主要就是…

Samtec技术漫谈 | 电动自行车中的传感器和信号传输技术

【摘要/前言】 电动自行车,大家熟悉吗? 今天的话题似乎是可以唤起大家心底骑车的美好回忆,我们也曾骑车探索过大自然和社区,自行车也是我们曾经不可或缺的便捷交通工具。 怀旧思潮的影响,加持科技的进步&#xff0c…

备忘录可以统计字数吗?备忘录里在哪查看字数?

在这个信息爆炸的时代,很多人喜欢使用备忘录app来记录生活中的点点滴滴。备忘录不仅可以帮助我们记事、安排日程,还能提醒我们完成各种任务,是我们日常生活中不可或缺的小助手。 然而,在使用备忘录时,有时我们会遇到需…

软件工程基础

软件工程基础 甘特图(Gantt Chart) 关键字:开始、结束时间,并行关系 皮特图(PERT Chart) 关键字:开始、结束时间,依赖关系 黑盒测试 黑盒测试是一种软件测试方法,它专…

视频号小店应该怎么操作呢?不了解的小伙伴快来看!

大家好,我是电商小V 普通人想利用视频号小店赚钱,奈何自己不会直播,不会拍视频,那么普通人应该怎么在视频号中赚钱呢?今天咱们就来详细的说一下, 其实不直播,不拍视频也是可以在视频号上面卖货赚…

学校智慧公厕的有线与无线方案,怎样去选择才合适

在当今数字化时代,学校也在积极引入智慧公厕系统,以提升校园环境的舒适度和管理效率。然而,面对智慧公厕的有线与无线方案,如何做出合适的选择成为了一个关键问题。 一、智慧公厕无线方案优势 首先来看无线方案。如前文所述&#…

[SMB协议][问题][解决方法]电视访问共享视频 | 该共享设备尚未共享任何文件 | 音频格式不支持 | 播放卡顿

1.该共享设备尚未共享任何文件 | 一些智能电视(比如价格比较美丽,或者比较老的)兼容性可能较差, 1. 一般而言win 10默认关闭smb 1.0默认开启着smb 2.0,smb 1.0不安全,比较过时的技术,且微软建议…

SpringBoot 上传文件示例

示例效果&#xff1a; 前端代码&#xff1a; <html> <head><title>上传文件示例</title></head> <body> <h2>方式一&#xff1a;普通表单上传</h2> <form action"/admin/upload" method"post" enctyp…

Flink DataStream API 介绍

一、介绍 官网 DataStream API 得名于特殊的 DataStream 类&#xff0c;该类用于表示 Flink 程序中的数据集合。你可以认为 它们是可以包含重复项的不可变数据集合。这些数据可以是有界&#xff08;有限&#xff09;的&#xff0c;也可以是无界&#xff08;无限&#xff09;的…

视觉语言模型详解【VLM】

视觉语言模型&#xff08;Visual Language Models&#xff09;是可以同时从图像和文本中学习以处理许多任务的模型&#xff0c;从视觉问答到图像字幕。在这篇文章中&#xff0c;我们将介绍视觉语言模型的主要组成部分&#xff1a;概述&#xff0c;了解它们的工作原理&#xff0…

[自动驾驶技术]-8 Tesla自动驾驶方案之硬件(AI Day 2022)

特斯拉在AI Day 2022先介绍了AI编译器&#xff0c;后面又介绍了Dojo的硬件软件&#xff0c;软件部分和AI编译器有部分重叠&#xff0c;本文介绍还是延用AI Day的思路&#xff0c;分为三部分&#xff1a;AI编译和推理&#xff0c;Dojo硬件&#xff0c;Dojo软件。 特斯拉车道检测…

MATLAB导入导出Excel的方法|读与写Excel的命令|附例程的github下载链接

前言 前段时间遇到一个需求&#xff1a;导出变量到Excel里面&#xff0c;这里给出一些命令&#xff0c;同时给一个示例供大家参考。 MATLAB读/写Excel的命令 在MATLAB中&#xff0c;可以使用以下命令来读写Excel文件&#xff1a; 读取Excel文件&#xff1a; xlsread(filen…

Jlink卡死 JFlash keil 盗版JLINK

现象&#xff1a;用Keil打开Jlink配置页&#xff0c;会卡死。 解决方法&#xff1a;用旧版本的Jlink软件&#xff0c;因为淘宝买的很多JLINK下载器是盗版的&#xff0c;不支持新版本的JLINK软件。到https://www.segger.com/downloads/jlink下载旧版本的软件。 如果必须要用新版…