转自http://blog.sina.com.cn/s/blog_6a59bd120100l6kj.html
随着2009年政府几万亿投资逐步落实,各地工业控制领域的各项目逐渐浮出水面;很多实用性更高,操作性更强的新项目和改进项目也纷纷上马。由于产业前景广阔、需求多样,工业领域目前着实是百花齐放,百家争鸣的繁荣景象(先不提资金问题)。因此最近接触了好多新的行业客户,其中不乏工业领域新贵企业的工程师。
我个人认为工业控制领域传统上始分为高端和低端两块市场。高端控制始终是PC平台的天下,低端控制始终是PLC的天下,还有些单片机控制。而随着近几年技术的发展,ARM平台逐渐进入工业领域。我们ASSP团队就是专业致力于ARM开发的。
陆陆续续结识的很多刚接触ARM的朋友们,向我们询问一些关于ARM的学习方法及发展前景。发现他们对于ARM产品一般会有几个误区。而如果我们理清了这几个误区,无论是对于新手抑或是广大工业领域的工程师们,在为自己的项目选型时,一定能与ARM产品(或方案)提供商有效地交流,充分表达自己的需求,又好又快地完成项目。
误区1:ARM产品是低端产品
以往有很多客户认为 ARM产品是低端产品,这的的确确是一个误区,而且是非常严重的误区。我曾经遇到不少的工程师,这些工程师不小心走入了这个误区,会跟我说“你的产品跟 X86的比起来差远了,某某公司一块X86的板子才XXX元,你的为什么这么贵?”之类的话。这种客户很容易被认为不是好客户,从而影响到进一步的沟通。而且ARM产品的业务人员或者技术人员要花不必要的时间来解释一些很难解释的问题。
ARM产品作为RISC构架最成功的技术,经过多年的市场考验,已经成为成熟的应用方案,与X86平台产品在很多地方功能是重叠的,对用户来讲最大的区别是操作系统——ARM产品采用WinCE,X86产品采用Win2000或WinXP。虽然ARM产品的主频相对低,但是对于工业控制的各项应用,操作员一定感受不到差别。就好像用长筷子和短筷子吃饭是一样的。所以切记,ARM产品不是低端产品。
误区2:ARM产品价格低
ARM产品由于本身功能强大,在很多场合可以进行裁剪使用,裁剪适用的ARM板卡可以节省部分功能电路,在民用的大规模应用领域可以有一定幅度的价格下调,但是下调空间有限。但是对于工业领域的很多产品要求严格的限制,诸如环境温度和EMC(电磁兼容)的特殊要求,ARM产品也无法拉开与PC平台的价格差距。
误区3:ARM产品没有行业价格标准
有很多的工程师会有这样的困扰:在网上找到好多类似的产品,价格偏差却特别大,无法判断品质和价格之间的关系。我们以“ARM核心板”来讨论这个问题。您在网上寻找ARM核心板的价格,会发现从200元到1000元以上都有,仔细看来,技术特征描述的差别并不大。实际上,不同价格的核心板,技术规格的差别可能非常大。
如果一块核心板上只有CPU+FLASH+RAM,那么这款核心板的价格可以做到200元的成本,卖主(这类卖主一般规模小,不受任何规则限制,见利就走,我们称其为游击部队)加上微薄的利润就出货了,由于各种接口实质上由CPU可以提供,所以指标也就写得不难看。实际上,一套ARM方案需要的外围电路都被省略了,用户二次开发的成本非常高。当然也有专门采购这种核心板做二次开发的企业。
而价格昂贵的核心板也是有理由的。以我们的一款MINI6045为例,这款核心板包含了CPU(9G45,400MHZ)+DDR2(256M)+nandflash(256M)+dataflash(4M)+eeprom(2K),价格虽然比前面的高,由于物有所值,依然得到客户的认可。
ARM产品并不是没有价格标准,各厂家都不会以偏离价值的价格去运作,产品相同价格就不会差太多,如果价格有明显差距,那就一定是技术支持和服务的差别了。此外,我们也呼吁生产和设计ARM主板的各个山头,推广产品的时候,清晰地说明自己的产品有啥没啥,否则,长此以往,难免市场会作乱了,弄得大家都赔本拼价格。
误区4:定制ARM主板很简单,做ARM的公司多如繁星
ARM产品在应用层与硬件之间有一层隔离,成为BSP(板级支持包),与X86构架里的BIOS概念类似,BSP就是设计开发ARM产品的要点。X86体系里,BIOS是支持芯片组(如945GM),只要是用同一套芯片组的主板,BIOS基本上是通用的。但是ARM产品的BSP是支持底层硬件的,不同的 CPU需要不同的BSP,相同的CPU不同的外围芯片也是不同的BSP。
因此客户提出需求的一套方案,往往要针对硬件编制客制化的BSP,我的一些客户还要求加入数据保护功能,需要改动的就更多。除此之外,操作系统如 WinCE的BUG也要考虑,必要时我们需要打上补丁。使用智能手机的朋友大多都有过手机死机的不愉快经历,基本上都是操作系统的BUG造成的。
而具备编写完整BSP能力的公司并不多,能够灵活迅速地满足客户的需求,高效可靠地解决客户困扰的技术团队更是凤毛麟角。因此,需要客制ARM产品的工程师在选型时不仅要看目标公司是否有产品,更要看有没有专业的技术团队。也尽量不要选择小型公司。虽然小型公司或者工作室一般都是有一定经验的设计师担纲,其中不乏高手,但是小型公司的生命周期也就是产品的服务周期,一但小公司解体,辛辛苦苦做起来的项目就没有任何技术保障了。而且要牢记,团队A编写的 BSP,团队B是很难维护的。
误区5:ARM产品的功能差不多,找一款能用就行
现在市场上面的ARM处理器品牌很多,但是无论Samsung、TI、Freescale、ATMEL,NXP或者其他品牌初看基本功能差别不大。但是仔细研究会发现各款芯片会有不同侧重的应用场合。有时是不能替换的。现就我们团队在项目所涉及到的一些品牌做出相关比较研究:
美国ATMEL公司一直采用ARM核心技术,最高也只采用到ARM9技术,旨在打造稳定的工业级芯片,不追求性能上的卓越,但求性能更加的可靠的工业级芯片。能克服各种恶劣的环境,及各种干扰,功耗低,让工业控制能更加稳定有条不紊的进行;
美国德州仪器TI一直致力于研究处理速度更快,功能更加强大的芯片。更是采用ARM最新技术Cortex A8来提升芯片的性能。使得一些芯片的处理速度与X86架构的MCU不分伯仲。TI凭借性能卓越的半导体性能不断推动着嵌入式时代前进的步伐;
韩国SAMSUNG半导体虽然起步比较晚,但是作为后起之秀,其实力也不能小觑。SAMSUNG生产MCU的超高性价比也是无人能敌的。正因为这点,其芯片也得到很多厂家的亲睐。例如S3C2440性价比极高,但是系统设计空间不大,而且据说三星在国内的芯片只保证工作温度在0度以上。在一般的工业场合和消费类应用较多,不适于在严苛环境使用。属于低端产品。
以上几点体会是我们团队在项目操作过程中与很多选型的工程师的交流后有感而发,广大的工程师朋友在选型之初注意到以上几点,结合自己项目的实际情况,有针对性地给 ARM厂商的技术人员提出需求,从而选择好的合作伙伴和适合的产品。产业链条的上下游共同努力,抓住2010年的契机,把我国的工业水平推上一个新的高度。