【ARM入门】ARM、SOC、ARM授权 概念篇

什么是ARM

ARM前身是Acorn公司设计的第一款微处理器,叫ARM:Acorn RISC Machine

ARM公司的名字叫ARM:Advanced RISC Machines

ARM内核

包括了寄存器组、指令集、总线、存储器映射规则、中断逻辑和调试组件等

内核是有ARM公司设计并以销售方式授权给芯片厂商使用的

比如Cortex A8、A9都是ARMv7a架构,Cortex M3、M4都是ARMv7m架构(Cortex A8、A9和Cortex M3、M4都是处理器(就是内核),ARMv7a和ARMv7m是指令集的架构(简称架构))

命名的改变

以前叫ARM9、ARM11

ARM11芯片之后,即ARMv7架构开始,ARM的命名方式有所改变

Cortex系列

新的处理器家族,改以Cortex命名

分为三个系列:

  • Cortex-A(A:Applications,面向手持终端。用于具有高计算要求、运行丰富操作系统及提供交互媒体和图形体验的应用系统,如导航仪、手机、数字电视、家用网络、家用网关等)
  • Cortex-R(R:REAL-TIME,面向对实时要求高的设备,如摄像机、打印机、动力传动解决方案、大容量存储控制器等嵌入式实时应用)
  • Cortex-M(M:MCU,单片机领域,不需要处理手机那种复杂应用,主要针对成本和功耗敏感的应用,如单片机、玩具、家用电器、医疗器械、人机接口设备、智能测量等)

ARM指令集架构

ARM指令集,就是ARM架构,比如ARMv8,每个处理器都需要以来一定的ARM架构来设计

从1985年ARMv1架构诞生起,到2021年,ARM架构已经发展到了ARMv9

Cortex-A53、CortexA57两款处理器输入Cortex-A50系列,首次采用64为ARMv8架构

2020年ARM发布了一款全新的CPU架构Cortex-A78,是基于ARMv8.2指令集

2021年Cortex-X2、Cortex-A710、Cortex-A510基于ARMv9架构

什么是SoC

SoC:System-on-a-Chip,把系统都做到一个芯片上

  • 一个SOC实例

什么是ARM授权

就比如制造汽车,ARM公司相当于拥有最先进的'大动机'设计方案,但是他不'生产发动机',而是把设计方案授权给各大'汽车厂商'生产,赚来的钱继续研发更先进的'发动机'

  • 架构层级授权
    指可以对ARM架构进行大幅度改造,甚至可以对ARM指令集进行扩展或缩减
    比如苹果,在使用ARMv7-A架构基础上,扩展出来自己的苹果swift架构
  • 内核层级授权
    指可以以一个内核为基础,然后再加上自己的外设,比如usart、GPIO、SPI、ADC等,最后形成自己的MCU
    这种公司很多, 如三星、TI
  • 使用层级授权
    想要使用一款处理器,得到使用层级的授权是最基本的,这就意味着只能na别人提供的定义好的ip来嵌入在你的设计中,不能更改人家的ip,也不能借助人家的ip创造自己的基于该ip的风扎u那个产品

以写文章为例:我写了一篇文章

架构层级授权:可以拿去修改后使用

内核层级授权:我告诉乙,你可以在你的文章中引用我的文章

使用层级授权:只能对我的文章进行转发,不能修改

相关推荐
TeYiToKu11 小时前
笔记整理—linux驱动开发部分(9)framebuffer驱动框架
linux·c语言·arm开发·驱动开发·笔记·嵌入式硬件·arm
w微信150135078121 天前
小华一级 代理商 HC32F005C6PA-TSSOP20 HC32F005系列
c语言·arm开发·单片机·嵌入式硬件
憧憬一下1 天前
Pinctrl子系统中Pincontroller和client驱动程序的编写
arm开发·嵌入式·c/c++·linux驱动开发
上海知从科技2 天前
知从科技受邀出席ARM日产技术日
arm开发·科技
极客小张3 天前
基于STM32的智能温室环境监测与控制系统设计(代码示例)
c语言·arm开发·stm32·单片机·嵌入式硬件·物联网·毕业设计
TeYiToKu3 天前
笔记整理—linux驱动开发部分(6)platform平台总线
linux·c语言·arm开发·驱动开发·笔记·嵌入式硬件
飞腾开发者3 天前
飞腾平台Arm ComputeLibrary编译安装指南
linux·服务器·arm开发·后端·性能优化
CodingCos4 天前
【ARM Linux 系统稳定性分析入门及渐进 1.1 -- Crash 工具功能概述】
linux·arm开发·crash tools·linux crash·crash 工具使用
@haihi5 天前
IIC和SPI的区别和相同之处
arm开发·stm32·mcu
@@庆5 天前
FreeRTOS 数据传输方法(环形buffer,队列的本质)队列实验—多设备玩游戏
arm开发·stm32·单片机·嵌入式硬件·freertos