ARM系列处理器的体系结构、指令集、处理器IP核和处理器

0. 处理器

简单分类:

cpu也叫mpu – 微处理器或者中央处理单元,是计算机控制的核心,是控制的核心,同时可作为运算的核心,当然也可有其他的运算核心帮忙.

mcu也叫soc – 微控制器也叫片上系统,功能涵盖了cpu等功能,同时芯片上集成了总线、外设、DMA等控制核心,也有rom和ram等运行必须的部件,不像cpu,需要连接好外围的核心才能工作,mcu需要很少的无源元器件即可工作.

cpu或者soc的开发方法,目前为止趋向于IP核的集成,比如CPU核+GPU核+DMA核等等在一起互联,设计成处理器.

处理器太多了,同时大家基本上叫上名字的都是处理器的名字:

s3c2440,s3c2410,s3c6410,at91sam9261,at91sam9263….

厂家包括:三星,ATMEL,高通……

1. 处理器IP核

通常说的ARM7,ARM9,ARM11等,都是处理器的IP名字,每种市面上的CPU,比如S3C2440之类的,都会对应一个处理器的IP核,这些核都是ARM授权的。当然,ARM9之类的名字可能包括多种处理器内核,比如ARM920T,ARM926ejs等。具体的ARM处理器IP核包括:

arm2\’, `arm250\’, `arm3\’, `arm6\’, `arm60\’, `arm600\’, `arm610\’, `arm620\’, `arm7\’, `arm7m\’, `arm7d\’, `arm7dm\’, `arm7di\’, `arm7dmi\’, `arm70\’, `arm700\’, `arm700i\’, `arm710\’, `arm710c\’, `arm7100\’, `arm7500\’, `arm7500fe\’, `arm7tdmi\’, `arm7tdmi-s\’, `arm8\’, `strongarm\’, `strongarm110\’, `strongarm1100\’, `arm8\’, `arm810\’, `arm9\’, `arm9e\’, `arm920\’, `arm920t\’, `arm922t\’, `arm946e-s\’, `arm966e-s\’, `arm968e-s\’, `arm926ej-s\’, `arm940t\’, `arm9tdmi\’, `arm10tdmi\’, `arm1020t\’, `arm1026ej-s\’, `arm10e\’, `arm1020e\’, `arm1022e\’, `arm1136j-s\’, `arm1136jf-s\’, `mpcore\’, `mpcorenovfp\’, `arm1176jz-s\’, `arm1176jzf-s\’, `xscale\’, `iwmmxt\’, `ep9312\’,\’cortex-A5\’, \’cortex-A8\’, \’cortex-A15\’

等等,这些都是IP核的名字.有的厂家,会拿去ARM的IP核,自己修改和加强出新的IP核.

2. 体系架构

ARM 体系结构是构建每个 ARM 处理器的基础。ARM 体系结构随着时间的推移不断发展,其中包含的体系结构功能可满足不断增长的新功能、高性能需求以及新兴市场的需要。

体系结构是对处理器的架构描述,包括:

  • 统一寄存器文件加载/存储体系结构,其中的数据处理操作只针对寄存器内容,并不直接针对内存内容。
  • 简单寻址模式,所有加载/存储地址只通过寄存器内容和指令字段确定。

等等,体系结构相对稳定,可能会适时的推出新的特性,同时体系结构是兼容的.不同的处理器IP核,可能实现了不同的体系结构.ARM的体系架构包括:

`armv2\’, `armv2a\’, `armv3\’, `armv3m\’, `armv4\’, `armv4t\’, `armv5\’, `armv5t\’, `armv5te\’, `armv6\’, `armv6j\’, `iwmmxt\’, `ep9312\’. armv7-a等。

 

3. 指令集

指令集实际上和体系结构是相互对应的,指令集和体系结构一样,是不断扩展的,同时保证了兼容性。相应的体系结构特征,需要对应的指令去实现。体系结构和指令集,可以在一起成为指令集架构,每个处理器IP核会实现特定的一种指令集架构.

ARM的指令集包括:ARM指令集,Thumb指令集.

 

4. 总结

市面上的CPU或者SOC,都是基于某IP核,这个IP核心实际上实现了一种指令集架构(体系结构特性+特定指令集) .指令集架构决定了功能范围,IP核决定了处理器性能,具体的CPU或者SOC决定了处理器的功能范围.
举个例子: S3C2440是个Soc,使用了ARM920T的处理器IP核,ARM920T核实现了ARMv4架构,支持支持32位ARM指令集和16位Thumb指令集.

版权声明:本文为linucos原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/linucos/archive/2013/02/23/2923465.html