|
本帖最后由 nbzwt 于 2012-7-28 07:05 编辑
关注这个项目的应该知道,因为钱,这个项目被暂停了。项目投资暂停并不影响我们讨论,所以就来说说关于最核心,也是和钱关系最大的:CPU选型。我按架构分成了4类,ARM11、ARM9、Cortex-M、ARM7。
1、ARM11或更高的带ARM指令集CPU
我这里单独说明了是ARM指令集,那说明肯定还有别的,那就是Thumb指令集。既然已经在标题里写了ARM科普了,那我也就来简单说下ARM和Thumb两套指令集的关系。从ARM7开始,ARM处理器就有了两套指令集,一套32位的ARM,一套16位的Thumb,开发Thumb的初衷是为了提高代码密度(ARM指令集一条指令4字节,Thumb两字节)。早期的ARM处理器都同时具有这两套指令集,通过运行1条指令来切换指令集。到了ARM11,出现了Thumb-2,它的最大优势就是,这两套指令集不用切换,可以混写,大大提高了工作效率。而到了Cortex这一代,出现了不带32位ARM指令集而只有Thumb-2的Cortex-M系列处理器。它确实算是新一代,但是并不属于第一类的范畴,所以我特别强调是带ARM指令集的。
这是目前在移动设备上非常主流的CPU,这类CPU通常具有VFP(ARM的浮点运算器),计算性能较高,但是价格也贵,而且只能购买成品的核心板,价格要被别人牵着走,原因如下:
(1)这种CPU通常工作速度很快,400MHz以上,最便宜的双面PCB已经无法保证其稳定性,更好的PCB带来的就是更高的成本,而且对信号质量的高要求对于我来说也是很难做到的。
(2)这种CPU通常为BGA封装,不方便自己焊接
常见型号:
AM3517(Cortex-A8,ARMv7A,BGA,1GHz)
S3C6410(ARM11,ARMv6,BGA,600MHz)
参考最小系统价格:350元
参考储存器配置:
ROM:1GB
RAM:256MB
2、ARM9
这类CPU因为不带VFP,所以计算较慢。ARM9具体来说,也分为两代,早期的ARM920T采用的ARMv4T指令集,而后来的ARM926EJ-S采用的是ARMv5TE的指令集。相比之下,ARMv5TE总体快于ARMv4T。因为是老产品,所以价格相对低廉,虽然有LQFP封装的芯片,但是同样要购买核心板,理由同上第一条,据我同学说,他自制的ARM9板(双面PCB)只能稳定到180MHz,更高就频繁死机。
常见型号:
AT91SAM9260(ARM926EJ-S,ARMv5TE,LQFP,200MHz)
S3C2416(ARM926EJ-S,ARMv5TE,BGA,400MHz)
S3C2440(ARM920T,ARMv4T,BGA,400MHz)
参考最小系统价格:150元~250元
参考储存器配置:
ROM:256MB
RAM:64MB
3、Cortex-M
ARM7放到最后讲,先来说说Cortex-M。Cortex-M是ARM针对低端市场(8位机市场)推出的架构,ARMv7M指令集,即以前Thumb指令集。从辈分来说,和Cortex-A8属于同级,但是从性能来说,和ARM7属于同级。按照官方的说明,是ARM7的替代品。但是我觉得仍然有非常重要的一点,使得我无法放下ARM7:Cortex-M处理器大多数并不支持SDRAM和在外部Flash运行程序,这就严重限制了可扩展性。对于不支持SDRAM,我们可以用SRAM来替代,但是价格么,8MB的SDRAM卖2元,8MB的SRAM卖800元(8*1M)。而对于不支持外部Flash跑程序,我们也有解决方案,那就是把程序复制到RAM中运行。但是之前说了,内存贵,所以也是没用。直接影响:做出来的计算器不能方便的安装自己写的程序!我前面说是大多数不支持,那肯定有小部分支持,准确的说,就是LPC1788,强大的一塌糊涂,但是也贵的一塌糊涂(超过部分ARM9)。不过如果你在寻找传统8bit单片机(比如STC单片机)的替代品,价格低廉的Cortex-M0系列会是很好的选择(64KB ROM,8KB RAM,48MHz的CM0处理器只需要6元就能拿下,所以我认为传统的8位机未来会在4元以下的市场存活,STC走高端路线,推出STC15F4K60S2确实不是明智之举)。
常见型号:
STM32F407VG(Cortex-M4,ARMv7M,LQFP,168MHz)
STM32F103VC(Cortex-M3,ARMv7M,LQFP,72MHz)
LPC1788(Cortex-M3,ARMv7M,LQFP,120MHz)
参考最小系统价格:30元
参考存储器配置:
ROM:512KB
RAM:64KB
4、ARM7
终于轮到ARM7了。ARM7是一代非常辉煌的产品,它是ARM处理器辉煌的开始,和早期的ARM9一样采用了ARMv4T的经典架构。同ARM9,作为老一辈,当然要降价让路,所以同样价格低廉。而且由于速度不快,也通常是LQFP封装,非常适合自己制板。可以外扩大容量的SDRAM和Flash,也方便了程序扩展。唯一的一点小遗憾是:它的LCD控制器不支持TFT,所以如果要接TFT,必须像第三种CM一样,通过总线来连接带控制器的屏幕。不过可以说,ARM7虽然是即将淘汰的产品,但在这里,却几乎是绝佳之选。
常见型号:
S3C44B0(ARM7,ARMv4T,LQFP,66MHz)
LPC2148(ARM7,ARMv4T,LQFP,72MHz)
参考最小系统价格:30元
参考存储器配置:
ROM:2MB
RAM:8MB
讲到这里,我想也差不多了,我基本上把ARM各系列作了一个简单的介绍和对比。如果有兴趣,可以登录ARM官网或联系我(QQ:380212456)进一步了解。大家对选型有什么看法,欢迎提出。 |
|