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核包括:
等等,这些都是IP核的名字.有的厂家,会拿去ARM的IP核,自己修改和加强出新的IP核.
2. 体系架构
- 统一寄存器文件加载/存储体系结构,其中的数据处理操作只针对寄存器内容,并不直接针对内存内容。
- 简单寻址模式,所有加载/存储地址只通过寄存器内容和指令字段确定。
3. 指令集
指令集实际上和体系结构是相互对应的,指令集和体系结构一样,是不断扩展的,同时保证了兼容性。相应的体系结构特征,需要对应的指令去实现。体系结构和指令集,可以在一起成为指令集架构,每个处理器IP核会实现特定的一种指令集架构.
ARM的指令集包括:ARM指令集,Thumb指令集.
4. 总结
市面上的CPU或者SOC,都是基于某IP核,这个IP核心实际上实现了一种指令集架构(体系结构特性+特定指令集) .指令集架构决定了功能范围,IP核决定了处理器性能,具体的CPU或者SOC决定了处理器的功能范围.
举个例子: S3C2440是个Soc,使用了ARM920T的处理器IP核,ARM920T核实现了ARMv4架构,支持支持32位ARM指令集和16位Thumb指令集.