zoukankan      html  css  js  c++  java
  • 【arm】arm指令集架构和处理器命名规则和历史

    Date: 2018.7.29


    转载自:https://zhuanlan.zhihu.com/p/25681832

    1、“指令集架构”命名

    | ARMv | n | variants | x(variants) |

    分成四个组成部分:
    ·ARMv – 固定字符,即ARM Version
    ·n – 指令集版本号。迄今为之,ARM架构版本发布了8个系列,所以n=[1:8]。
    ·variants – 变种。
    ·x(variants) – 排除x后指定的变种

    常见的variants有以下字母可选:

    ·T – Thumb指令集
    ·M – 长乘法指令
    ·E – 增强型DSP指令
    ·J – Java加速器Jazelle
    ·SIMD – ARM媒体功能扩展

    比如:ARMv5TxM表示ARM指令集版本为5,支持T变种,不支持M变种

    2、“处理器系列”命名

    2.1 在 ARMv3 ~ ARMv6 时期

    ARM{x}{y}{z}{T}{D}{M}{I}{E}{J}{F}{-S}

    ·x – 处理器系列
    ·y – 存储管理/保护单元
    ·z – cache
    ·T – 支持Thumb指令集
    ·D – 支持片上调试
    ·M – 支持快速乘法器
    ·I – 支持Embedded ICE,支持嵌入式跟踪调试
    ·E – 支持增强型DSP指令
    ·J – 支持Jazelle
    ·F – 具备向量浮点单元VFP
    ·-S – 可综合版本
    比如:ARM926, 属于ARMv5指令集架构的,CPU是 ARM9系列的,
    2个存储管理/保护单元,6个 Cache【?不确定】

    2.2 在 ARMv7 以后时期

    公司改革了以前的冗长的命名方法,用看起来比较整齐的办法,统一用 Cortex 作为主名。

    3、ARM指令集架构发展史

    (1)ARMv1、ARMv2 这两代没有做CPU,没有商业化;
    (2)ARMv3 对应的 CPU 是 ARM6;
    (3)ARMv4 首次增加 Thumb 指令集;
    对应的 CPU 有:ARM7-TDMI,ARM720-T,ARM9-TDMI,ARM920-T,ARM940-T
    (4) ARMv5 改进了 Thumb,首次增加 E(增强型DSP指令)、J(Java加速器Jazelle);
    对应的 CPU 有:
    ARMv5TE指令集:ARM9-E-S,ARM966-E-S,ARM1020-E,ARM1022-E,ARM940-T
    ARMv5EJ指令集:ARM926-EJ-S,ARM7-EJ-S,ARM1026-EJ-S
    (5)ARMv6 首次增加 SIMD,升级为 Thunmb-2,首次增加TrustZone;
    对应 CPU 有:ARM1136-J(F)-S,ARM1156-J(F)-S,ARM1176-J(F)-S,ARM11 MPCore
    (6) ARMv7 首次增加 M(长乘法指令),NEON(DSP+SIMD)
    CPU 系列名字为“Cortex”,分为了3个款式:A、R、M & SC;
    (6.1)A 系列,支持大型嵌入式系统,如手机;
    节能:A5,A7
    平衡:A8,A9
    性能:A15,A17
    (6.2)R 系列,Real-time 处理器,即执行一个指令段的耗时是固定时钟周期数。
    用于比如汽车控制,这种不允许随机执行时间的应用
    功能安全:R4,R5
    存储、调制解调:R7,R8
    (6.3)M 系列,单片机市场,抢8051的生意;
    超低的功耗、面积:M0,M0+
    平衡:M3,M4,M7
    SC(SecurCore)系列,主打“安全”,面向支付、政府、SIM 卡
    SC000,SC300;

    (7)ARMv8 首次增加 指令集A64,可执行64位指令;可在 32位 和 64位 之间切换;
    (7.1)A 系列,
    节能:A32,A35
    平衡:A53,
    性能:A57,A72,A73

    (7.2)R 系列
    功能安全:R52

    (7.3)M 系列,
    超低的功耗、面积:M23
    平衡:M33


    THE END!

  • 相关阅读:
    python——协程
    解读python中SocketServer源码
    python——初识socket
    python的类和对象——类的静态字段番外篇
    python的类和对象——类成员番外篇
    python的类和对象——进阶篇
    初识python中的类与对象
    python中lambda表达式应用
    python——挖装饰器祖坟事件
    python的基础类源码解析——collection类
  • 原文地址:https://www.cnblogs.com/SoaringLee/p/10532404.html
Copyright © 2011-2022 走看看