2.2.1 BeagleBoard-xM
BeagleBoard.org开发的最早的板子叫作BeagleBoard,于2008年7月发布,现在还能买到。这个板子基于TI公司720MHz的OMAP3530 Cortex-A8处理器,配备256MB RAM、256MB闪存、HDMI视频和S-Video视频输出、USB On-The-Go接口、USB host接口、SD卡插槽、RS-232接口,以及立体声音频输出口。这个75mm×75mm的计算机板标价125美元。
2010年9月升级的板子命名为BeagleBoard-xM,被称作售价149美元的、能当作台式机的系统板(见图2.1)。这里根据《BeagleBoard-xM系统参考手册》来总结一下它的特点,完整的手册可从http://circuitco.com/support/index.php?title=BeagleBoard-xM#Rev_C2
取得。
德州仪器号称BeagleBoard-xM所采用的1GHz的DM3730处理器是数字媒体处理器(详见http://www.ti.com/product/dm3730)。这个处理器带有NEON SIMD协处理器,能够显著加速多媒体应用和数学计算(http://www.arm.com/products/processors/technologies/neon.php)。这个处理器采用层叠封装(PoP,Package-on-Package),512MB的RAM芯片被装到处理器芯片的上边。这个处理器足以运行全功能的Linux系统和标准的渗透测试工具。图2.2和图2.3是BeagleBoard-xM的照片。
图2.2 BeagleBoard-xM的正面 图2.3 BeagleBoard-xM的背面
BeagleBoard-xM的电源管理和音频是由德州仪器的TPS65950芯片实现的,电源和音频结合到一片集成电路上似乎很怪异,这是因为该芯片设计目标是配套嵌入式应用处理器使用,在这样的应用场合降低芯片个数是重要的目标。有了TPS65950,BeagleBoard-xM就能通过USB OTG连接PC来供电。但当使用多种外设以及LCD触摸屏时不推荐这种供电方式,因为PC的USB口提供的功率有可能不够。当使用大功率USB外设时,可以用Y形USB电缆、带外部供电的USB集线器,或者外部5V(2A)的电源供电。
BeagleBoard-xM有4个USB 2.0 host接口,当使用直流电源口而不是USB OTG接口供电时,每一个USB host接口能提供高达500mA的供电能力。《System Reference Manual》推荐当所有的设备都工作起来时,要使用3A的电源供电。根据作者的经验,驱动1W Alfa无线网卡工作时,2A的电源足够了。这些host接口完全支持USB 2.0的三种速度(低速、全速、高速)。
在视频输出方面,BeagleBoard-xM提供S-Video、经HDMI插座输出的DVI-D,以及LCD触摸屏三种方式。S-Video可用来连接NTSC(默认制式)或PAL制式的电视。板子可以配置成向S-Video和DVI-D输出不同的显示内容。板上的标准HDMI插座可以连接数字显示器或电视。除了电缆里没有音频信号,DVI-D协议实际上和HDMI是相同的。Enhanced Display ID(EDID)或者Display Data Channel(DDC2B)用来正确识别所连接显示器的视频配置。建议在给BeagleBoard-xM上电前连接好显示器,以避免电涌冲击,这种冲击有可能损坏板子,而且这样也能让系统正确识别显示器。BeagleBoard-xM上一对0.05英寸2×10的插针可以连接LCD屏幕,比如像上一章餐盒计算机上的7寸触摸屏(http://elinux.org/Beagleboard:BeagleBone_LCD7)。
BeagleBoard-xM带有一个microSD卡槽,支持高容量microSD卡。这主要用来容纳操作系统,当然也可以买一个更大容量的卡来存储数据,这就省去了连接USB大容量存储设备了(不说别的,大容量存储至少会增加电源负担)。买microSD卡的时候,多花点钱买个class 10的绝对是值得的。class 4的或class 6的用起来明显感觉对性能有影响。BeagleBoard-xM与microSD的通信采用4位宽,20MHz的时钟。
BeagleBoard-xM配备2个按键和6个LED方便用户交互。一个按键用于热复位,另一个便于用户自定义。5个绿色LED的功能如下:前2个分别表示板子上电和USB集线器上电;后3个可由I2C或GPIO编程控制。还有一个红色的会在直流电源输入偏离5V时点亮,表明过压或欠压。虽然处理器和大部分电路都工作在3.3V,但5V对于USB电路工作是必需的。
BeagleBoard-xM带有集成的快速以太网(100Mbps)接口。以太网口由SMSC LAN9514芯片实现,它还包括USB集线器用来实现4个USB host接口。需要注意一件很重要的事情,这个芯片每次启动产生不同的MAC地址,这很可能导致使用DHCP的时候得到不同IP地址。
BeagleBoard-xM上还有一些其他的在破解和渗透测试中不太会用到的接口。一个JTAG接口用于板子测试和调试。还有一个DB9 RS-232串口用来连接一些老的设备或者用作串行控制台。还可以通过板上的一个专用连接器连接一个摄像头模块。有几个扩展口引出了GPIO和其他功能。
强烈推荐给BeagleBoard-xM板子配上外壳保护,比如像图2.4那样的外壳。从Special Computing(http://specialcomp.com)提供的简单亚克力外壳到eSawdust(http://www.esawdust.com/product/encl-dh-xm/)的金属壳,有多种外壳可供选择。至少要用带有铜柱的亚克力片(或其他不导电材料)保护一下,以防在导体上带电检修时短路。