• IIANews微官网
    扫描二维码 进入微官网
    IIANews微信
    扫描二维码 关注微信
    移动客户端
  • English
2025机器人产业趋势论坛报名
传感器

网络连接和其它智能接口改变嵌入式系统设计的面貌

  2005年07月07日  

人们通常对嵌入式系统中的处理部分给予很大关注。但别忘记,送入这些处理单元的数据和从中计算出的结果都是通过系统内某种类型的I/O端口来实现输入输出。因此,考虑到I/O的重要性,我们有必要去考察设计系统接口的方法是如何变化的。其中某些变化是细微的,如系统级芯片(SoC)硬件对系统总体架构的影响。而另一些变化,如网络接口,正促使应用也发生显著变化。

这是嵌入式系统设计方面的一个关键变化。多种先进I/O端口集成在一起的做法使得设计人员可以应对复杂的外设环境,同时不被它们的多样性所压垮。

图1:USB、1394的硬件
相当简单,但协议栈涉及许多软件。

在软件和网络接入方面,嵌入式系统以往是一潭平静的“死水”。这方面的变化速率基本上处于可控制的范围内,设计决策的结果也是非常局部性的。然而,集成电路晶体管密度无休止的增加已经使芯片设计人员可以把各种功能添加到嵌入式CPU中。其结果是更快更复杂的CPU、各种各样的片上存储器和外设I/O端口。长期以来,所谓的变化只是包含更多的串行和并行端口,但一场革命已经发生在智能及高级外设接口领域。更智能化的接口正在成为微控制器和SoC处理器集成的标准功能。标准化接口和更复杂系统的出现正在迫使这个“死水”般的领域融入计算机发展的主流。

在I/O端口方面,设计人员有多种选择。一些宽泛的类别包括串行/并行端口、标准端口和网络接口。许多年来,绝大多数嵌入式系统一直围绕着简单的并行和串行I/O端口进行构建。事实上,在过去的某个时间点,设计者曾一度利用并行口上的各个离散位来模拟串行口。这避免了增加一个UART芯片的成本,因而很有意义。

这种端口的组合方式可以应对多种多样的接口要求。并行端口可以提供最终的位级别(bit-level)的控制和并行速度,而串行端口能以稍低的速率实现同智能设备的连接。这些智能设备可以实现高级数据协议,用以操作文件传送或其它更复杂的数据交换。

在传输距离的角度来看,两种端口也有差异。并行端口受到串扰、斜移以及长电缆成本的限制,而串行端口可以更可靠地实现更长距离的数据传送。将串行电缆延伸二、三百英尺的做法非常常见,这大约正是这些系统所需的最远通信距离。

集成标准端口

这些智能接口的最好例子就是IEEE-1394和USB。它们都提供多点串行接口,定义了许多高级协议以支持众多的应用对象。实际上,这些接口的硬件实现是相对简单直观的,但为了支持这类简单的硬件,在协议栈中要涉及相当多的软件。这增加了软件复杂性,而这正是现代嵌入式系统设计人员关注的首要问题。

此外,这些接口对系统设计人员来说具有很大优势。以往大部分串行和并行端口需要点对点连接。每个必须连接的设备要求系统相应增加另一个端口。现代接口的多点特性允许它们通过一个接口来支持众多外设,这样做相对便宜,而且占据非常少的I/O板空间。

另一个关键的优点是灵活性。这些接口可以适用于一切场合,从低端的人机接口设备,如键盘和鼠标,到外部的磁盘存储器和实时多媒体接口。这些设备甚至可以在同一个接口上相对和谐地共存,因为服务质量(QoS)协议允许利用专门的数据时隙来支持预定的实时数据传送。

这对于芯片设计人员来说是一个巨大的优点。这些接口可以被集成到高出货量的芯片中,使这些芯片重新指向许多应用市场。与前几代产品相比,这是一个重大的变化,因为过去这类芯片的成功或失败往往取决于是否拥有恰当的片上外设组合。

USB和1394接口提供了与许多本地外设的连接,而一个网络接口可以为系统增加与全世界的连接能力。从硬件的观点看,一个USB端口和一个以太网端口之间没有太大的差别。但从所涉及的软件机会和危险来看,二者存在巨大差别。

即使在网络接口这个类别内,也存在一些非常新的选择。采用802.11系列协议的无线接口正被越来越多地应用在嵌入式系统中,这简化了相互连接这些系统或者把这些系统连接到互联网所需的外部连线。可供选择的无线接口还不只限于WLAN协议,因为802.16无线广域网协议和802.15个人区域网络协议正在积极地发展。

对系统设计人员来说,添加网络接口明显是一个反馈驱动过程。随着互联网和本地企业网基础设施变得普及,以及添加网络接口的硬件成本降低到几乎为零,论证添加无线或有线网络接口的合理性变得容易多了。在某些时候,设计者反而需要谨慎判断放弃一个网络接口的合理性。

图2:多年来,简单的并行
和串行I/O已经很好地服务于
嵌入式系统。

随着联网设备急剧增多,基础设施将需要扩展以支持它们。

这些接口已经极大地简化了嵌入式系统的硬件基础。详细的低层系统设计已经转移到更高的层次。开发者不再有必要设计独特的协议来处理数据传输或外设。为特定外设专门进行编程已经成为过去的事,取而代之的是即插即用的体验。那种详细的系统设计已经被集成标准化的高层接口和协议所取代。

这并不是说这些系统设计已经免除复杂性之苦。相反,它转化到软件方面,例如复杂的协议栈、更高的客户期望值和更大的系统级风险。

每种外设接口允许一定数量和种类的设备连接到一个任意系统,但要靠软件来协调这些设备。每个接口的基础协议栈负责处理大部分接口任务,但对于一个被使用的设备,必须要有一个应用纲要来处理抽象的设备类型。如果一个USB键盘插入你的系统,你的应用程序怎么知道如何使用它?

这些接口无法免除对设备驱动程序的需求,它们只是把它移动到一个更高的层次。单一的应用纲要将能够管理实现此纲要的任何设备。如果一个USB存储器设备类在你的应用程序中得到实现,那么它将能够处理来自许多供应商的不同存储器设备,但这个类别仍然必须予以实现。这要求系统设计人员确定一个用户将磁盘插入系统是否有意义,如果是这样,那么系统该怎么做。

如果某类东西可以被插入系统,那么用户就会这么做。标准化接口很容易识别,而且用户期望一个USB端口能支持他们手边恰巧有的任何USB设备。这种体验看上去不会产生负面的结果,但当用户尝试让他的嵌入式系统使用一个未受支持的设备时,他可能最后不得不向服务中心求救,而向客户解释这不是一台个人电脑是很难的。

甚至更重要的是系统级风险问题。进入专用系统的标准化通道有可能打开一个真正的安全漏洞。在2000年之前,曾经有大量预测说一旦管理各种社会基础设施的嵌入式系统遭遇“千年虫”问题将发生如何可怕的灾难。当初这种恐惧显然被夸大了,但如果一个相当的病毒攻击击中这个庞大网络的话,灾难不仅会重现,而且可能会严重一百倍。

最好的防卫武器是系统软件的可升级性与现场升级系统的能力。这是嵌入式系统与台式计算机之间界线正在日益模糊的另一个领域。

Larry Mittag (lfmittag@)是一位专注于嵌入式系统和通信领域的独立咨询顾问。

作者:Larry Mittag


最新视频
伊顿Bussmann:百年品牌 以创新驱动发展   
欧姆龙光电传感器E3AS | 角度特性演示:高反光不锈钢工件稳定检出   
研祥金码
专题报道
《我们的回答》ABB电气客户故事
《我们的回答》ABB电气客户故事 ABB以电气问题解决专家之志,回答未来之问。讲述与中国用户携手开拓创新、引领行业发展、推动绿色转型的合作故事,共同谱写安全、智慧和可持续的电气化未来。
企业通讯
研祥IPC-310准系统,5月28日冰点底价限时开抢
研祥IPC-310准系统,5月28日冰点底价限时开抢

疯狂星期三,研祥IPC-310准系统,5月28日冰点底价限时开抢!

优傲机器人新品巡展 NVITATION 邀请函
优傲机器人新品巡展 NVITATION 邀请函

优傲机器人将于2025年6月5日在北京亦庄举办新品巡展活动。届时,您将有机会近距离品鉴优傲新品成为首批见证 UR15 中

在线会议
热门标签

社区