首页 > 其他分享 >Armv8/Armv9架构的学习大纲-学习方法-自学路线-付费学习路线

Armv8/Armv9架构的学习大纲-学习方法-自学路线-付费学习路线

时间:2024-07-20 09:29:18浏览次数:10  
标签:路线 架构 TrustZone 学习 EL2 64 Armv9 bit ARM

本文给大家列出了Arm架构的学习大纲、学习方法、自学路线、付费学习路线。有兴趣的可以关注,希望对您有帮助。

ARM 64位架构介绍

  • ARM 64位架构介绍
    • ARM架构概况,v8-A及其他架构概况
    • ARM架构扩展到v8-A, v8.1A, v8.2-A等版本
    • v8-A介绍和原理
    • 支持v7遗留代码
      • AArch32和AArch64状态
      • v7指令集变更
        • 废弃
        • 新增功能(一些新的64位特性也被添加到32位执行中)

64位平台架构概述

  • 示例SoC
  • 多核处理器
  • 互连(ACE或CHI)
    • 一致性和互连
  • 分布式中断控制器
    • 固件的角色
    • 启动

A64指令集架构(ISA)

  • 整数操作
  • 指令集
    • 整数操作
    • 内存操作
    • 堆栈
    • 系统指令
      • 系统控制寄存器
      • 与v7支持和协处理器的关系
    • 调用约定
    • 内存访问(DRAM和设备)
      • 排序模型
        • 屏障
          • dmb, dsb, isb
          • 负载-获取和存储-释放
          • 领域
          • 信号量
      • 缓存管理
    • 浮点,先进的SIMD,加密
      • 寄存器和指令
    • 异常级别
      • 4个异常级别
      • 栈模型,处理程序和线程
      • 向量表
      • 核心实现选择
      • 切换AArch32和AArch64状态
    • 异常和中断处理
      • 控制异常和中断的传递
      • 综合寄存器
      • 切换异常级别
      • 从异常中返回
    • 分页
      • 使用页表进行内存管理
      • 4K, 16K和64K粒度
      • 页大小
      • 使用页表实现的特性,例如“永不执行”
      • 地址空间技巧——不属于地址的一些字段,例如标签和指针认证
      • TLB管理

EL2概述

  • 处理器特性,适用于虚拟化
    • 使用异常级别
    • 内存管理
      • 二级页表
      • 内存分区
      • I/O MMU (SMMU)
    • 启动过程中使用EL2进行UEFI执行
    • 增加了Secure EL2架构

缓存

  • 硬件缓存一致性
  • 软件责任
  • 软件中的缓存控制

安全(TrustZone)

  • TrustZone功能
    • 安全内存
    • 链接到其他架构中的TrustZone
    • 32位或64位TrustZone
    • 异常级别上的影响和Secure EL2的增加
    • 切换TrustZone的位宽
    • 动态TrustZone,也称为Realms,是ARM的机密计算架构的一部分

其他主题

  • 核心电源管理,外部电源控制器
    • 电源模式(休眠,关闭)
    • WFI, WFE, SEV
  • 调试(硬件和软件调试)
    • 调试器,虚拟机监控程序,操作系统
    • RAS(可靠性,可用性,可维护性)
    • 启动过程

Introduction to ARM 64-bit Architecture

  • Introduction to ARM 64-bit Architecture
    • ARM architecture profiles, what is v8-A and the other architecture profiles
    • ARM architecture extensions to v8-A, the v8.1A, v8.2-A, etc
    • v8-A introduction and rationale
    • Support for v7 legacy code
      • AArch32 and AArch64 state
      • v7 instruction set changes
        • Deprecation
        • Additional features (some new 64-bit features have also been added to 32-bit execution)

64-bit Platform Architecture Overview

  • Sample SoC
  • MP Core
  • Interconnect (ACE or CHI)
    • Coherency and the interconnect
  • Distributed interrupt controller
    • Role of firmware
    • Booting

A64 ISA (Instruction Set Architecture)

  • Integer operations
  • Instruction set
    • Integer operations
    • Memory operations
    • Stack
    • System instructions
      • System control registers
      • Relationship to v7 support and co-processors
    • Calling conventions
    • Memory access (DRAM and device)
      • Ordering model
        • Barriers
          • dmb, dsb, isb
          • load-acquire and store-release
          • Domains
          • Semaphores
      • Cache management
    • Floating point, advanced SIMD, crypto
      • Registers and instructions
    • Exception levels
      • The 4 exception levels
      • Stack model, handler and thread
      • Vector table
      • Core implementation choices
      • Switching AArch32 and AArch64 state
    • Exception and interrupt handling
      • Control of delivery of exceptions and interrupts
      • Syndrome registers
      • Switching exception levels
      • Return from exception
    • Paging
      • Memory management with page tables
      • 4K, 16K and 64K granules
      • Page sizes
      • Features achieved with page tables, such as execute never
      • Address space trickery – fields in pointers that are not part of the address, such as tags and pointer authentication
      • TLB management

EL2 Overview

  • Processor features intended for virtualization
    • Use of exception levels
    • Memory management
      • Second level page tables
      • Memory partitioning
      • I/O MMU (SMMU)
    • The use of EL2 for UEFI execution during boot
    • Addition of Secure EL2 to the architecture

Caches

  • Hardware cache coherency
  • Software responsibilities
  • Cache control in software

Security (TrustZone)

  • TrustZone functionality
    • Secure memory
    • Links to TrustZone in other architectures
    • 32-bit or 64-bit TrustZone
    • Implications on exception levels, and the addition of secure EL2
    • Switching bitness of TrustZone
    • Dynamic TrustZone, also called Realms, part of ARM's Confidential Compute Architecture

Other Topics

  • Core power management, external power controller
    • Power modes (dormant, shutdown)
    • WFI, WFE, SEV
  • Debug (hardware and software based debug)
    • Debugger, hypervisor, OS
    • RAS (Reliability, Availability, Serviceability)
    • Boot process

标签:路线,架构,TrustZone,学习,EL2,64,Armv9,bit,ARM
From: https://www.cnblogs.com/zhouhehe/p/18312741

相关文章

  • Java学习日记 (day4)
    习题练习1. 输入某年某月某日,判断这一天是这一年的第几天?输入某年某月某日,判断这一天是这一年的第几天packagetest.test2_1;importjava.util.Scanner;publicclassTest_1{publicstaticintsearch_month(intm,int[]arr){if(m==2){......
  • Datawhale AI 夏令营——电力需求挑战赛——Task3学习笔记
        这一期学习进阶的特征提取与分析,构建深度学习方案,拿下更高分数,冲冲冲。项目链接:‌​​‬​‍​​​‌​‬‬⁠​​⁠​⁠​​​​⁠​​‍​​‍​​‌⁠‬​⁠​⁠‍‌​‌​​‍​Task3:尝试使用深度学习方案-飞书云文档(feishu.cn)    前两期介绍了......
  • c语言学习
    double中用%lf进行输入scanf("%lf",&x); .在整型数组中用%d进行输入scanf("%d",&a); 注意:数组名必须带取地址符&  注意:此时&a传输的是首地址   4.在字符串数组中用%s进行输入scnaf("%s",a); 注意:数组名不能带取地址符& scanf("%s",a)函数输入字......
  • 2024/07/19(暑假学习hadoop第二周总结)
    本周的学习任务主要是完成Hadoop中有关的组件的配置。有关于此配置的过程严格按照黑马程序员大数据入门到实战教程,大数据开发必会的Hadoop、Hive,云平台实战项目全套一网打尽_哔哩哔哩_bilibili来进行配置。首先就是HDFS的配置,这是Hadoop分布式文件系统,用于在多个服务器上构建存储......
  • 大数据学习02
    HDFS(HadoopDistributedFileSystem)HDFS是Hadoop的核心组件之一,旨在解决大数据存储和管理的问题。其主要特性包括高容错性、高可扩展性和高吞吐量。HDFS将文件拆分成多个数据块,并将这些数据块分布存储在集群的不同节点上,从而实现数据的高可靠性和高可用性。HDFS的主......
  • 数据仓库建模工具之一——Hive学习第五天
    Hive的分区1、Hive分区(十分重要!!)分区的目的:避免全表扫描,加快查询速度!在大数据中,最常见的一种思想就是分治,我们可以把大的文件切割划分成一个个的小的文件,这样每次操作一个个小的文件就会很容易了,同样的道理,在hive当中也是支持这种思想的,就是我们可以把大的数据,按照每天或者......
  • Linux学习笔记day01-shell命令、vim编辑器
    **1.Linux基础**   1)特点:免费、开源、安全可靠、可裁剪、可移植、将所有硬件都识别视为文件来处理   2)Linux与Windows文件存储区别:         windows:磁盘分区管理         Linux:从根目录出发3)基本目录:    bin:二进制文件  ......
  • ## 学习笔记day05-C语言基础:控制语句 if else、do while、for循环
    day05六、控制语句1.顺序语句​在模块内部没有分支、跳转、循环等条件时,程序按照顺序执行2.分支语句选择语句if...else单分支if(表达式){代码块;} step:先判断表达式是否为真(非0为真,0为假)如果为真,进入if选择结构,执......
  • Linux内存从0到1学习笔记(8.19 ION (一))
    一,ION简介ION(InterprocessCommunicationOverNon-ContiguousMemory)即“跨进程非连续内存通信”。是Android系统中负责内存管理的关键子系统,由Google在Android4.0ICS中引入,旨在解决当时Android设备中存在的多样化内存管理机制所带来的问题,也就是用归一化的思想来解......
  • 【C++进阶学习】第七弹——AVL树——树形结构存储数据的经典模块
    二叉搜索树:【C++进阶学习】第五弹——二叉搜索树——二叉树进阶及set和map的铺垫-CSDN博客目录一、AVL树的概念二、AVL树的原理与实现AVL树的节点AVL树的插入AVL树的旋转AVL树的打印AVL树的检查三、实现AVL树的完整代码四、总结前言:在前面我们学习二叉搜索树的......