Chinaunix首页 | 论坛 | 博客
  • 博客访问: 348155
  • 博文数量: 106
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 861
  • 用 户 组: 普通用户
  • 注册时间: 2013-09-10 08:32
文章分类

全部博文(106)

文章存档

2016年(11)

2015年(93)

2013年(2)

分类: 嵌入式

2015-08-19 16:01:57

ARM概念梳理:Architecture, Core, CPU,SOC

作者:蜗蜗 发布于:2014-12-9 22:54 分类:ARMv8A Arch

1. 前言

本文简单梳理一下ARM有关的概念,包括ARM architecture、ARM core、ARM CPU(或MCU)以及ARM Soc。我们这些以ARM平台为主的嵌入式工程师,几乎每天都会和这些概念打交道,也似乎非常理解它们。但仔细想想,却有些说不清道不明的感觉,因而有必要整理一下思路,也就顺手记录下来了。

2. 概念梳理

1)ARM architecture

ARM architecture,是指ARM公司开发的、基于精简指令集架构(RISC, Reduced Instruction Set Computing architecture)的指令集架构(Instruction set architecture)。我们常说的ARMv7、ARMv8、ARMv8-A,就是指ARM architecture。类似的基于RISC的architecture也有很多,例如MIPS、AVR、Blackfin等等,都是这个概念。

2)ARM core

ARM core是基于ARM architecture开发出来的IP core,它是介于architecture和最终的CPU(MCU)之间的中间产品,这也是ARM商业模式的独特之处。

有两种类型的ARM core:一种是ARM公司自己发布的,如我们耳熟能详的ARM7、ARM9、ARM Cortex M3、ARM Cortex A57等等;另一种是ARM授权其它公司开发的Core,如苹果的A6/A6X等等。下面链接是维基百科上的ARM core的列表,共大家参考:

3)ARM CPU(MCU)

其它的芯片厂商,如Phillips、ST、TI等,会基于ARM公司发布的Core,开发自己的ARM处理器,这称作ARM CPU(也可称为MCU)。这些是我们工作过程中接触最多的,如LPCxxxx、STM32xxx、OMAPxxxx、S3Cxxxx等等。

4)ARM Soc

对于一些比较专业的应用场景,如视频、音频等,为了追求更小的size、更低的功耗,厂商会在芯片上,集成除处理器之外的东西,如视频编解码器、DSP等。这些集成了其它功能的芯片,称作片上系统(SOC),如TI的DM37x Video SOC。

注1:其实ARM的技术和商业模式,正体现了软件工程中抽象和封装的思想。

3. ARM 64bit

我们以一款64bit ARM CPU为例,反向阐述一下ARM处理的诞生过程,同时罗列一些学习、研究方向。

1)我们熟悉一个CPU(假设它的型号是WW9000)的第一手资料,是芯片厂家发布的Datasheet,例如WW9000_SPEC.pdf。

2)WW9000是基于ARM Cortex-A57 Core封装而来的,该ARM core的资料可以从下面链接下载

3)ARM Cortex-A57 Core又是基于ARMv8-A architecture,该结构的资料可以通过如下方式获取:

Go to ARM Infocenter and navigate through ARM architecture / Reference Manuals

注2:ARM Infocenter中资料是非常全面的,没事时可以多逛逛。

原创文章,转发请注明出处。蜗窝科技,

标签: Architecture ARM core soc

评论:

tigger 
2014-12-10 13:05
所以高通的芯片是高通拿到ARM的IP core lincense然后自己做出来的一个ARM Core,指令集跟拿到的那IP core的指令集兼容。但是有自己的独特的东东 
其他的公司比如国内的芯片公司,都是拿的完整的ARM core,然后自己封装出来一个ARM CPU.所谓的CPU就是ARM CORE+其他总线啊,外设啊。等等。
tigger 
2014-12-10 13:06
@tigger:当然对于高通比如8916,光有ARM core还不行,还是要有外设组成一个CPU.这个8916应该是个ARM CPU.
tigger 
2014-12-10 13:19
@tigger:这里cpu 跟soc的区别我有点搞不懂了。。。
wowo 
2014-12-10 14:05
@tigger:是的,你看维基上给出来的那个表格,高通比较有技术含量,买的是IP core的授权,而不是ARM core的授权。 
对于CPU和SOC,其实界限不是特别明显,这取决于厂商怎么定义。如果严格定义,CPU应该只负责取指、执行、存储、读取。从这个角度看,主流CPU都是SOC,因为里面包了很多之外的东西,但厂商却不那么叫。 
另外,有一些很明显的chip,它可以包含1个ARM core和1个DSP,这一定是SOC了。
tigger 
2014-12-10 16:36
@wowo:领教了。
阅读(507) | 评论(0) | 转发(0) |
0

上一篇:tasklet

下一篇:linux内核层次分析

给主人留下些什么吧!~~