ARM9 处理器家族架构
架构有两个:ARMv5TE 和 ARMv5TEJ。
ARM的架构
从v1到v2是26位地址空间。
v3实现了32位地址空间。
v4的时候,增加了半字指令的读写操作,增加了处理器模式有了T变种-V4T,出现了Thumb状态,这状态下支持16位的Thumb指令集。
v5架构提升了 ARM 和 Thumb两种指令集的交换工作能力,同时还有了DSP指令 -V5E结构,还有Java指令-V5J结构。
举例:ARM9E,ARM9E-S(ARM9E可综合版本),ARM946(ARM9E核的处理器)
ARM946E-S
可以发现在ARM官方网站的处理器选择器里对它的描述是:(还有和ARM968E-S的对比)
| ARM946E-S | ARM968E-S |
Multicore 多核
否
否
Architecture 架构
ARMv5TE
ARMv5TE
ARM 指令集
√
√
DSP 指令扩展
√
√
Floating Point 浮点
X
√
Jazelle 指令集
√
X
Thumb 指令集
√
√
L1 Cache (Max) 缓存
1MB
X
TCM (Max) 紧致内存
4KB
Memory Controller 内存控制
MPU
X
Bus Interface 总线接口
AHB
AHB
Process Geometry 工艺尺寸
TSMC 65LP
TSMC 90G
Process Libraries
ARM SC10T
ARM SC12T
Performance (Total DMIPS)
409
636
Performance (DMIPS/MHz)
1.2
1.2
Max Frequency 最大时钟频率
341MHz
530MHz
Area With Cache (mm2)
0.488
X
Area No Cache (mm2)
0.26
0.42
Power With Cache (mW/MHz)
0.142
X
Power No Cache (mW/MHz)
0.095
0.11
MPU(Memory Protection Unit)相当于裁剪了的MMU. 最大只支持8个region. 目前暂时不想用uclinux, 期待有做过移植的朋友给点意见. 谢谢!
CPU性能评估采用合成测试程序,较流行的有Whetstone 和 Dhrystone 两种。Dhrystone主要用于测整数计算能力,计算单位就是DMIPS。采用Whetstone 主要用于测浮点计算能力,计算单位就是MFLOPS。
MIPS(Million Instructions Per Second)是CPU处理能力的一个指标,它的字面意思是每秒种执行指令的平均条数。
这个指标缺少了一个重要的评估标准,哪就是CPU的时钟是多少?同样的CPU,只要在允许的范围内,使用的系统时钟频率越高,当然MIPS也越高。
所以更能体现指标应该是MIPS/MKHz,也就是系统时钟(CPU的工作时钟)为1M时,平均能够执行的指令数。