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时,平均能够执行的指令数。
这个指标缺少了一个重要的评估标准,哪就是CPU的时钟是多少?同样的CPU,只要在允许的范围内,使用的系统时钟频率越高,当然MIPS也越高。
所以更能体现指标应该是MIPS/MKHz,也就是系统时钟(CPU的工作时钟)为1M时,平均能够执行的指令数。