文章目录

  • (一)指令集的基本概念
  • (二)ARM指令集的发展
  • (三)微架构
  • (四)ARM授权方式
  • (五)编译器


(一)指令集的基本概念

  • 什么是指令集ISA
  • 一般称为架构Architecture,其实是 Instruction Set Archiecture;
  • 是计算机体系结构一部分;
  • 从软件意义上,可以看作是一个设计标准,用来规范编程语言模型;
  • 从系统角度上看,规范了CPU能支持的指令范围和种类;
  • 实现形式:由CPU内部结构及指令解码电路实现。
  • 指令集规范规范了什么?
  • 指令的分发、预取、解码、执行、回写;
  • 操作数的类型、存储、存取、旁路转移;
  • 运行结果的存储:寄存器
  • 地址的格式

(二)ARM指令集的发展

  • ARM V1 最初版本,26为寻址控制,无乘法指令,没有商业化;
  • ARM V2 26为寻址控制,增加乘法指令,支持协处理器;
  • ARM V3 寻址范围扩展到32位;
  • ARM V4 增加了半字符存储操作,对调试的支持以及支持嵌入的ICE;
  • ARM V5 增加了DSP指令和Java指令;
  • ARM V6 增加了媒体指令,ARM V6指令集合中加入了超过60条SIMD单指令和多数据指令;
  • ARM V7 定义了三种独立的内核模型——A(应用领域),R(实时领域),M(控制领域);
  • ARM V8 定义了 64位指令集,兼容32位指令集,增加了VFO、NENO指令,增加64位的通用寄存器、堆栈指令SP、程序计算器PC

(三)微架构

  • 什么是微架构
  • 也就是处理器架构,Microarchitecture;
  • 指令集的实现,实现指令集规定的各种操作、运行;
  • 具体表现位CPU硬件电路。
  • 微架构仅仅是一个CPU内核
  • 是指令集的一个具体实现,表现为CPU的内部硬件电路;
  • 它不是SOC!

(四)ARM授权方式

  • 指令集/架构授权
  • 可以开放对指令集进行扩展或缩减权限;
  • 厂商可以基于该指令集实现自己的微架构;
  • 主要用户:苹果的swift架构;高通的Krait处理器;华为的ARM V8 64位指令集授权。
  • 内核授权
  • 微架构授权,用户不用对ARM核进行修改;
  • 主要用户:三星、飞思卡尔、ST、德州仪器。
  • 使用授权
  • 可以使用封装好的ARM处理器、工艺、生产厂家;
  • 主要授权给CPU设计实力不是很雄厚的公司。

(五)编译器

  • 编译器的产生
  • 二进制机器码——> 汇编语言——>高级语言
  • 指令集是编译器设计者的重要参考手册
  • 解决如何将高级语言(比如C语言)翻译成汇编语言的问题;
  • 解决不同类型的数据如何存储的问题;
  • 解决寄存器如何使用的问题。