【ARM-0】基本概念

1. ARM 介绍

之前称作艾康精简指令集机器,Acorn RISC Machine。现在的含义是 Advanced RISC Machine,高级 RISC 机器;

ARM 是 RISC(精简指令集计算机) 的一种。

指令集分为精简指令集与复杂指令集,对应两种计算机:

  • RISC
  • CISC

1.0 常见术语

  • PE Processing Element:状态机 ,单核单线程的处理器是一个 PE;多核,每个核单线程的处理器,每个核是一个 PE;多核,每个核多线程的处理器,每个线程是一个 PE
  • IMPLEMENTATION DEFINED:实现已经被定义,简称 IMP DEF。被描述为 IMP DEF 的特性或功能,其任何实现必须提供完全一致的行为或完全相同值。
  • UNPREDICTABLE and CONSTRAINED UNPREDICTABLE: 不可预测和约束不可预测 ,用来描述软件不应该做的事。当某个事件是 不可预测和约束不可预测 时,软件不能依赖处理器的行为。如果软件多次执行不良操作,处理器可能会展现出不同的行为。
  • DEPRECATED:不赞成。有时某个特性、功能会因为性能问题、不经常使用或者没有必要而删除,再删除之前,该特性或功能会被标记为 DEPRECATED,同时在该架构中添加一个控制开关,来允许关闭该特性或功能,也方便了使用该特性或功能的遗留代码进行测试。
  • RES0/RES1
    • Reserved, should be Zero:保留字段,初始化时应为 0
    • Reserved, should be One:保留字段,初始化时应为 1

1.1 ARM 与 APPLE

ARM 的前身为艾康电脑,1978年于英国剑桥创立。在1980年代晚期,苹果电脑开始与艾康电脑合作开发新版的ARM核心。1985年,艾康电脑研发出采用精简指令集的新处理器,名为ARM(Acorn RISC Machine),又称ARM 1。因为艾康电脑的财务出现状况,1990年11月27日,获得Apple与VLSI科技的资助,分割出ARM,成为独立子公司。—— 维基百科

ARM 架构所属的公司是安谋科技。2016年7月18日,日本软银集团收购了安谋科技。ARM 盈利模式为出售 ARM IP(Intellectual Property,知识产权)授权。

1.2 ARM 核类型

  • A(Applications):高性能,可以运行复杂系统,例如 Linux、Windows
  • R(Real-time):面向实时应用场景,通常用在网络设备、嵌入式设备中
  • M(Microcontroller):高功耗效率比,用在 IoT,即物联设备中

1.3 ARM 架构版本号

ARMv8-A:具体信息在 v8-A

  • v8,表示 verison 8,版本号是 8
  • A,表示核的类型是 A 型,即 Application

A 核最新版本是 ARMv9-A,ARMv9-A 基于 ARMv8-A,新增了一些特性:

  • 可扩展向量扩展,版本2,SVE2(Scalable Vector Extension2)
  • 事务内存扩展,TME(Transactional Memory Extension)
  • 分支记录缓存扩展,BRBE(Branch Record Buffer Extension)
  • 嵌入式跟踪扩展,ETE(Embeded Trace Extension)
  • 追踪缓存扩展,TRBE(Trace Buffer Extension)

1.4 Architecture 与 Micro-Architecture,架构与微架构

架构不会讲处理器是如何构建的,以及内部如何运行。

1.5 Architecture 包括什么

  • 指令集
  • 寄存器集
  • 异常模型
  • 内存模型
  • Debug、Trace跟踪、Profiling分析

1.6 Micro-Architecture 包括什么

  • 流水线长度以及布局
  • Cache 分级、数量、大小
  • 单个指令有多少个指令周期(Cycle Count,这里说指令周期可能不准确,有待查证)
  • 实现了哪些可选的特性

1.7 不止是架构和微架构规范

Arm 对构成现代系统级芯片 (SoC) 的许多组件都有类似的规范。

  • Generic Interrupt Controller(GIC):标准的通用中断控制器的规范,在 Armv7-A/R、Armv8-A/R 中有使用。
  • System Memory Management Unit(SMMU\IOMMU):提供给非处理器 master 译址服务
  • Generic Timer:通用计时器 Generic Timer 是 ARM 架构的一部分,system counter 是一个系统组件。Generic Timer 提供给所有处理器一个 system count reference(参考、引用),Generic Timer 提供的功能通常用在诸如 OS scheduler tick 之类的地方。
  • Server Base System Architecture and Trusted Base System Architecture:SBSA、TBSA 为 SoC 开发者提供设计指导。
  • Advanced Microcontroller Bus Architecture:总线协议系列的高级微控制器总线体系结构 (AMBA) 控制基于Arm的系统中的组件的连接方式以及这些连接上的协议。

1.8 阅读 ARM 文档

  • Arm Architecture Reference Manual:描述了架构规范
  • Arm Cortex processor has a Technical Reference Manual (TRM):每个 Cortex 处理器都有一个 TRM 文档。TRM 描述了特定 Cortex 处理器的特性。通常,TRM不会重复ARM架构参考手册中给出的任何信息。
  • Arm Cortex processor also has a Configuration and Integration Manual (CIM):每个 Cortex 处理器也有一个 CIM 文档。CIM描述了如何将处理器集成到系统中。通常,该信息仅与SoC设计者相关。

以 Cortex-A75 为例,相关文档如下:图片引用自 ARM 官方文档 [Introducing the Arm architecture]。
在这里插入图片描述
reference manuals 和 user guides 的区别:前者提供概念、技术细节,后者提供使用方法。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肥羊也

感谢给肥羊投喂!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值