单片机市场的规模可以用“巨无霸”来形容,预计到2010时每年能有20G片的出货量。世界各地的器件供应商纷纷亮出自己的得意之作,他们提供的器件和架构也是各具特色。业界内部可谓是百花齐放,热闹非凡,好戏不断。各行各业对单片机能力的要求也一直“得寸进尺”,而且还又要马儿跑,又要马儿不吃草——处理器必须在不怎么增加主频和功耗的条件下干更多的活儿。另一方面,处理器之间的互连也在加深,看这一串串熟悉的字眼:串口,USB,以太网,无线数传……处理器如欲支持这些数据通道,就必须在片上塞进更多的外设。软件方面的情况也如出一辙:应用程序的功能一直在花样翻新,性能需求也是变本加厉:更高的运算速度,更硬的实时能力,更多的功能模块,更炫的图形界面,……所有这些要求单片机都得照单全收。在这个大环境下,ARM Cortex-M3处理器,作为Cortex系列的处女作,为了让32位处理器入主作庄单片机市场,轰轰烈烈地诞生了!由于采用了最新的设计技术,它的门数更低,性能却更强。许多曾经只能求助于高级32位处理器或DSP的软件设计,都能在CM3上跑得很快很欢。嵌入式处理器市场正在32位化,相信用不了多久,CM3就一定会在这美丽新世界中脱颖而出。比当年8051推动整个业界还有过之而无不及,再次放飞工程师们的梦想,让深埋于心底多年的夙愿迎来dreams come true的激动!
CM3的招牌功夫包括:
• 性能强劲。在相同的主频下能做处理更多的任务,全力支持劲爆的程序设计。
• 功耗低。延长了电池的寿命——这简直就是便携式设备的命门(如无线网络应用)。
• 实时性好。采用了很前卫甚至革命性的设计理念,使它能极速地响应中断,而且响应中断所需的周期数是确定的。
• 代码密度得到很大改善。一方面力挺大型应用程序,另一方面为低成本设计而省吃俭用。
• 使用更方便。现在从8位/16位处理器转到32位处理器之风刮得越来越猛,更简单的编程模型和更透彻的调试系统,为与时俱进的人们大大减负。
• 低成本的整体解决方案。让32位系统比和8位/16位的还便宜,低端的Cortex-M3单片机甚至还卖不到1美元。
• 遍地开花的优秀开发工具。免费的,便宜的,全能的,要什么有什么。
基于Cortex-M3内核的处理器已渐成气候,以处处满溢的先进特性力压群芳。而且架构师们还在不停地求索降低成本的出路,同时很多组织也在尝试着实现“器件聚合”(device aggregation),使一个单一的小强芯片可以抵得上以前3、4块传统的单片机。 降低成本还有一招,就是使基础代码在所有系统中都可以重用,至少要方便移植。CM3的内核架构非常精工细作,使它与C语言成为了一个梦幻绝配。优质的C程序代码三下五除二就可以移植并重用,使升级和移植一下子从拦路虎变成了纸老虎。
值得一提的是,CM3并不是第一个被拿去做万金油型处理器的内核。那廉颇虽老却依然骁勇的ARM7/ARM9处理器,在通用嵌入式处理器市场中德高望重,至今拥有无数铁杆粉丝。半导体业界的群英们,像NXP(philips)、TI、Atmel、OKI、ST等,都以ARM为内核,做出了各自身怀绝技的32位MCU。ARM7作为最受欢迎的32位嵌入式处理器,被载入了亮煌煌的几页史册——每年超过10亿片出货量,为各行各业的嵌入式设备中都找得到它们的身影。
CM3作为ARM7的后继者, 大刀阔斧地改革了设计架构。从而显著地简化了编程和调试的复杂度,处理能力也更加强大。除此之外,CM3还突破性地引入了很多时尚的甚至崭新的技术,专门满足单片机应用程序的需求。比如,服务于“使命-关键”应用的不可屏蔽中断,极度敏捷并且拥有确定性的嵌套向量中断系统,原子性质的位操作,还有一个可选的内存保护单元。这些令人惊艳和振奋的新特性,让老的ARM玩家们再次找到“初恋”时烈焰迸发的感觉,也使萍水相逢就有激爽触电般的体验!相信读者一旦有机会用到了它,就会为它的秀外慧中而赞叹,爱不释手!