要选好一款处理器,要考虑的因素很多,不单单是纯粹的硬件接口,还需要考虑相关的操作系统、配套的开发工具、仿真器,以及工程师微处理器的经验和软件支持情况等。微处理器选型是否得当,将决定项目成败。当然,并不是说选好微处理器,就意味着成功,因为项目的成败取决于许多因素;但可以肯定的一点是,微处理器选型不当,将会给项目带来无限的烦恼,甚至导致项目的流产。
1 嵌入式微处理器选型的考虑因素
在产品开发中,作为核心芯片的微处理器,其自身的功能、性能、可靠性被寄予厚望,因为它的资源越丰富、自带功能越强大,产品开发周期就越短,项目成功率就越高。但是,任何一款微处理器都不可能尽善尽美,满足每个用户的需要,所以这就涉及选型的问题。
(1)应用领域
一个产品的功能、性能一旦定制下来,其所在的应用领域也随之确定。应用领域的确定将缩小选型的范围,例如:工业控制领域产品的工作条件通常比较苛刻,因此对芯片的工作温度通常是宽温的,这样就得选择工业级的芯片,民用级的就被排除在外。目前,比较常见的应用领域分类有航天航空、通信、计算机、工业控制、医疗系统、消费电子、汽车电子等。
(2)自带资源
经常会看到或听到这样的问题:主频是多少?有无内置的以太网MAC?有多少个I/O口?自带哪些接口?支持在线仿真吗?是否支持OS,能支持哪些OS?是否有外部存储接口?……以上都涉及芯片资源的问题,微处理器自带什么样的资源是选型的一个重要考虑因素。芯片自带资源越接近产品的需求,产品开发相对就越简单。
(3)可扩展资源
硬件平台要支持OS、RAM和ROM,对资源的要求就比较高。芯片一般都有内置RAM和ROM,但其容量一般都很小,内置512 KB就算很大了,但是运行OS一般都是兆级以上。这就要求芯片可扩展存储器。
(4)功 耗
单看“功耗”是一个较为抽象的名词。这里举几个形象的例子:
①夏天使用空调时,家里的电费会猛增。这是因为空调是高功耗的家用电器,这时人们会想,“要是空调能像日光灯那样省电就好了”。
②随身的MP3、MP4都使用电池。正当听音乐看视频时,系统因为没电自动关机,谁都会抱怨“又没电了!”
③目前手机一般使用锂电池,手机的待机和通话时间成了人们选择手机的重要指标。待机及通话时间越长,电池的使用寿命就可以提高,手机的寿命也相对提高了。
以上体现了人们对低功耗的渴求。低功耗的产品即节能又节财,甚至可以减少环境污染,它有如此多的优点,因此低功耗也成了芯片选型时的一个重要指标。
(5)封 装
常见的微处理器芯片封装主要有QFP、BGA两大类型。BGA类型的封装焊接比较麻烦,一般的小公司都不会焊,但BGA封装的芯片体积会小很多。如果产品对芯片体积要求不严格,选型时最好选择QFP封装。
(6)芯片的可延续性及技术的可继承性
目前,产品更新换代的速度很快,所以在选型时要考虑芯片的可升级性。如果是同一厂家同一内核系列的芯片,其技术可继承性就较好。应该考虑知名半导体公司,然后查询其相关产品,再作出判断。
(7)价格及供货保证
芯片的价格和供货也是必须考虑的因素。许多芯片目前处于试用阶段(sampling),其价格和供货就会处于不稳定状态,所以选型时尽量选择有量产的芯片。
(8)仿真器
仿真器是硬件和底层软件调试时要用到的工具,开发初期如果没有它基本上会寸步难行。选择配套适合的仿真器,将会给开发带来许多便利。对于已经有仿真器的人们,在选型过程中要考虑它是否支持所选的芯片。
(9)OS及开发工具
作为产品开发,在选型芯片时必须考虑其对软件的支持情况,如支持什么样的OS等。对于已有OS的人们,在选型过程中要考虑所选的芯片是否支持该OS,也可以反过来说,即这种OS是否支持该芯片。
(10)技术支持
现在的趋势是买服务,也就是买技术支持。一个好的公司的技术支持能力相对比较有保证,所以选芯片时最好选择知名的半导体公司。
另外,芯片的成熟度取决于用户的使用规模及使用情况。选择市面上使用较广的芯片,将会有比较多的共享资源,给开发带来许多便利.
2 ARM公司及相关产品介绍
ARM公司于1991年成立于英国剑桥,主要出售ARM IP的授权。目前,ARM处理器(即采用ARM IP核的处理器)已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场。ARM处理器应用占据了32位RISC微处理器很大的市场,ARM技术已渗入生活的各个方面。
目前市面上常见的ARM处理器架构可分为ARM7、ARM9、ARM10、ARM11以及Cortex系列,每个系列又包括很多种IP内核的产品。ARM 也是嵌入式处理器中首先推出多核架构的厂商。生产ARM芯片的厂家很多,主流半导体厂商的产品比较齐全,供货也相对更有保障。Samsung、NXP、 Cirrus Logic、Atmel、Freescale、TI、ST、Winbond等主流半导体厂商的ARM芯片产品列表见本刊网站,其中有些产品已供货,有些正在样片阶段,有些正在开发,还有许多产品不支持外部存储器的扩展。
3 嵌入式微处理器选型示例
(1)需 求
①适合于工业控制的温度。
②支持VxWorks、Linux操作系统。
③存储方面,SDRAM大于16 MB,Flash大于8 MB。
④主频方面,60 MHz以上。
⑤接口方面具有带DMA控制的Ethernet MAC、2个以上RS232串口、1个USB 2.O接口、1个SPI接口,以及大于30个GPIO引脚(不包括数据总线、地址总线和CPU内置接口总线)。
⑥提供实时时钟或实时定时器。
⑦引脚封装为QFP。
⑧价格为<200元。
(2)选型需求分析
根据需求①,参照前述选购的考虑因素中的“应用领域”,把要选的芯片定位于工业控制领域。目前市场上生产较适合用于作工业控制的微处理器的半导体公司有 NXP、Atmel、ST公司(Samsung公司的产品较适合用于PDA、多媒体产品,Cirrus Logic公司的产品较适合音频产品。)根据需求②,参照选购的考虑因素中的“OS及开发工具”,VxWorks5.5对于ARM核支持到V5T架构,所以把选型范围缩小到ARM7和ARM9系列。由于需要支持Linux操作系统,所以最好选择带有MMU的内核,因为不带MMU内核(ARM7TMDI)支持的Linux操作系统非常有限,只能支持uCLinux。
根据需求③,结合各种型号的芯片资源介绍,不难看出要求芯片必须带有可扩展存储接口,因为芯片的内置存储量不可能那么大。所以只能选择带可扩展存储接口的芯片。NXP公司的LPC2400系列和LH7A具备此项功能,Atmel公司的AT91SAM7SE系列、AT91RM9200、AT91SAM9系列也满足此项需求。
根据需求④、⑤、⑥、⑦,参照选购的考虑因素中的“价格及供货保证”,结合NXP、Atmel公司的芯片资源介绍,把选型范围框定在LPC2468 (LPC2400系列中的其他产品要么处于样片阶段,要么处于开发阶段,而LH7A资源不满足要求)、AT91RM9200和AT91SAM9260 (AT91SAM7SE系列处理速度太慢,AT91SAM9261和AT91SAM9263封装不满足需求)型号上。根据需求⑧,上一步所选的3个型号都能满足要求。
(3)选型结论
综合需求和芯片各方面的资源,选型结论如下:
①从产品开发周期角度考虑,AT91RM9200最为适合,它在这4个芯片中开发周期应该最短;
②从技术可继承性角度考虑,且对开发周期没有严格限制的话,AT91SAM9260较为合适;
③如果单支持VxWorks,对Linux支持要求不高,且对开发周期没有严格限制的话,LPC2468较为合适;
④综合各方面考虑,STR912排在其他三者之后。
选型满意度从高到低的排列顺序是:AT91RM9200、AT91SAM9260、LPC2468、STR912。