电子产品越做越小是不争的事实,同样的,电子工程所用的系统开发板(Development Board)也有越做越小的趋势,例如2013年9月的树莓派(Raspberry Pi)就只有信用卡大小,而Intel在2013年9月发表只有SD卡大小的系统爱迪生(Edison),其开发板Galileo也只有7×10公分。
类似的,相关的系统与开发板、开发平台还有联发科提出的LinkIt(也称LinkIt One)平台,或北京君正科技(Ingenic)提出的牛顿(Newton)参考设计平台,或者是国产的香蕉派(Banana Pi)等。
这些新兴的系统、系统开发板、参考平台,就Maker的角度当如何选择呢?笔者尝试从两个角度提供分析与建议。
1.了解开发板定位诉求
首先是了解其定位诉求,Raspberry Pi的原初定位是提供学生平价的电脑教育学习系统,绝大多数的情况下是将Raspberry Pi当一般的电脑在操作,例如使用键盘、鼠标、网络、屏幕等,当然也可以对硬件进行扩充延伸,电路板上有13×2的引脚,可用来连接其他的外部电子装置,例如无线网络、摄像头等,使Raspberry Pi变身成其他的电子应用系统。
Adafruit为Raspberry Pi开发专属显示器。
Rapsberry Pi如此,Banana PI也是相同的定位,差别是Banana Pi的硬件规格较好,但价格也稍高,Raspberry Pi约为25美元或35美元,但Banana Pi约为45美元,且Banana Pi的13×2引脚(General Purpose Input/Output, GPIO)几乎与Raspberry Pi没有差异,摆明鼓励他人转用Banana Pi进行相关开发。
Banana Pi出自国人之手,希望让不满足于Raspberry Pi的玩家可以更上一层楼。
简单说,Raspberry Pi 与Banana Pi多数情况下由USB供电,并固定使用,但另外三种平台(LinkIt、Edison、Newton)基本上都是诉求穿戴式与物联网应用,是更娇小的平台,其中LinkIt没有说明尺寸,Edison则如前述,Newton的尺寸则仅22×38毫米,必要时接电池运行。
Newton开发板的尺寸最小,仅22×38毫米。
2.芯片架构与软件开发支持
第二是从芯片架构与软件开发的角度来评估,先简单列出5个平台的芯片架构:
五大32位元開發板處理器核心
开发商开发板名称 处理器架构 尺寸
Raspberry Pi基金会Raspberry Pi ARM11 8.56cm x 5.6cm
Bananapi.orgBanana Pi ARM Cortex-A7 Dual-core CPU + Mali400MP2 GPU 9.2cm × 6cm
MTKLinkIt ARM7 NA
IntelEdison/Galileo x86 7cm x 10cm
北京君正Newton MIPS 2.2cm x 3.8cm
虽然全是32位处理器,但却有高低、新旧之别,其中ARM7、ARM11属于古典、经典版的ARM架构,基本上英国ARM公司不太推崇继续使用的架构,通常鼓励改行Cortex-M系列取代,且LinkIt所使用的ARM7比ARM11更低阶简陋,连内存管理单元(Memory Management Unit, MMU)都没有,其开发几乎与一般微控制器无异。至于Cortex-A7(Cortex-A系列,新架构)、Edison、Newton比较适合高级应用的开发。
了解架构后,也就了解其开发软件的支持性,其中ARM架构、Intel x86架构有较多的开发工具、操作系统、范例程序、驱动程序等软件生态系统(Ecosystem)可支持,但MIPS就相对较少,虽然MIPS支持者也宣称MIPS支持Linux、Android等,但就实际经验,其Android的支持性较难完整,或虽支持但仍需较多优化。
Intel Galileo已有不少扩展套件可用。
虽然ARM、x86架构的支持软件多,但x86的相关软件多半较庞大(从个人电脑上的软件精简而来),如此较不宜开发小型化的应用,因此就软件开发角度而言,ARM架构最为合适小型化案例的开发。
最后,也当从芯片架构来考虑未来的更换自由度,x86架构芯片除Intel外仅有AMD、VIA供货,但短期内无法提供与Edison(使用夸克Quark处理器)相同小体积、低功耗的方案;MIPS虽有广泛授权,芯片供货商较Intel多,但MIPS已多年走弱,可选择的芯片并不多。
至于ARM架构的可选性最多,而ARM自2008年即开始推广Cortex-A(微处理器)、Cortex-R(即时处理的微控制器)、Cortex-M(微控制器)等新架构,若选用古典版ARM架构,随着时间用的人将逐渐减少。
LinkIt采用ARm7架构的核心,是较旧的架构。
依次观察,LinkIt所用的ARM7EJ-S(MediaTekMT2502A)为2001年的架构,Raspberry Pi所用的ARM1176JZ-F(Broadcom BCM2835)也为2007年,均属古典版ARM架构。若不在意开发的未来升级、兼容延续性,以现阶段管用为着眼,依然是理想的选择。
|