当前位置:Linux教程 - Linux业界 - 满足汽车远程信息处理需求的汽车级Linux操作系统

满足汽车远程信息处理需求的汽车级Linux操作系统

引言:与生俱来的稳定性、功率节省以及能够根据需要装载设备驱动程序等技术优点让Linux非常适合于远程信息处理和驾驶者界面应用。

对下一代远程信息处理设备的设计工程师来说,嵌入式Linux在商业和技术上的优势非常有吸引力。直到最近,嵌入式Linux技术仍缺乏远程信息处理市场所需的确定性、启动时间性能和电源管理能力。但如今,汽车级Linux则是未来汽车电子所必需的。

开放源代码的汽车级Linux是未来汽车电子所必需的。

远程信息处理是一个涵盖性术语,代表数量众多的汽车和驾驶者信息系统和服务。自动紧急呼叫和位置标示是其中的关键部分,但紧接其后的是远程汽车安全和跟踪系统、路线导航、实时交通信息、专用移动消息以及管家服务,包括自动预定宾馆和饭店、预定车位和支付车位费用等。在不久的将来,驾驶者有望能够点播音视频下载(类似于用个人电脑和手机进行下载)。此外,汽车制造商对远程诊断和维修服务越来越有兴趣,以便提高汽车的可靠性和最低盈利。

当前,远程信息服务通过一个专用的车内硬件(通常被称为“黑匣子”)进行操作。这个黑匣子通常包括一个具有硬连线天线的全球定位系统(GPS)接收器、一个中央微处理器和一个连接主流外部蜂窝网络基础设施的通信板。

目前,许多技术正发展成需要采用下一代GPS接收器和通信板,以支持卫星定位(欧洲将在2009年拥有自己的卫星网络)和电信方面(升级到3G,这种蜂窝网络正在建立当中,而且802.11“Wi-Fi”和卫星通信也正被广泛采用)的最新发展。所有这些进步都意味着在当前模式下,改变或者升级整个黑盒子将很常见。

本地市场的偏爱问题变得越来越重要了,因为北美的驾驶者已经开始定购国家卫星无线电广播系统,而欧洲的驾驶者则喜欢数字音频广播(DAB)系统。这两个广播系统尽管具有完全不同的特性,但都需要与构成远程信息处理系统主要接口的驾驶者信息系统的其它部分进行集成。

这种变化需要很高的成本,因此将各种元件嵌入到核心汽车电子架构的普遍趋势被认为是非常有效的解决方案,因为单个元件可能很快被取代,而一组元件则不会。

复杂性需求

这些区域性需求和远程信息服务的快速发展给系统设计者和系统集成者带来了沉重负担,相当重要的原因是车内硬件系统的单一来源几乎是未知的。一个典型的情形是美洲豹Jaguar的驾驶者信息系统,该系统结合了三菱公司的触摸屏与摩托罗拉公司的免提电话系统、Clarion公司的导航系统、Visteon公司的语音启动以及Harman-Kardon公司的音频系统等。因此,系统设计者将这些独立的产品逐个模块地集成在一起。只要这种复杂系统继续作为高端汽车的配置,这种开发方法就是可以接受的,因为高端汽车的开发预算大,要求构建模块数量少,所以可允许采用这种开发方法。

然而,随着远程信息处理技术逐渐在利润较低、产量更高的汽车中得到应用,当设计工程师能够利用普通的硬件和软件平台加速集成并创建快速配置的架构时,分水岭就出现了。未来的车内系统将依赖这么一个平台:在这个平台上,来自最合适渠道的硬件和软件,能以最小的开发成本为购买它们的驾驶者带来最大好处。

除了规模经济的基本商业逻辑和这些平台的灵活设计性之外,它们还增加了严格的安全性规范要求。这种使用底层平台的方法,可实现快速测试周期和对重复使用很关键的模块化构建块。逻辑上说,在所有层次上使用公共操作平台(硬件和基础软件的组合)的应用将最为有效。

全球最大的汽车电子组件供应商Delphi公司几年之前曾声明支持一种公共的开放计算平台,这是该公司2000年后的又一次声明。在2000年的那次声明中,他们宣称与瑞典电信公司爱立信联合开发一系列他们称之为的“即插即用”的远程信息处理和驾驶者信息服务。那时Delphi在媒体咨询会上公布的商业模式,代表了汽车远程信息处理和多媒体系统的特殊系统需求。这种模块化系统基于一种开放平台,并要求选用和组合的硬件来自这些元件列表:微处理器和相关IC(200至500MIPS)、存储器(128MB SDRAM和128MB闪存)、电磁兼容性(EMC)、算法处理功能、显示功能(从Q-VGA 到VGA+)、计算机产生的图形、针对CD-ROM和DVD的ATAPI、MPEG接口,以及关电模式I2C、 I2S、RS-232、IrDA、CAN、J1708、MML、PCMCIA、PCI、USB、AC97、SPI等。

增加到这个列表中的软件功能包括Java兼容性、兼容POSIX的实时操作系统(RTOS)、导航、语音处理、视频处理以及具有车内数据总线的通信。为确保汽车系统的功能并优化功耗和散热,每个模块的电源都可在软件控制下打开或关断。另外,系统被设计成能够充分升级以提供所需的确定性级别,这样不需要定制核心平台,便可根据不同范围或者不同模块提供各种特性级别。

开放源代码

由于可更好地适应电子市场发展步伐所需的创新周期和需求,所以开放源代码软件是汽车制造商自然而然的选择。可升级架构的关键特性和快速的技术转移为广泛采用Linux作为操作系统平台创造了机遇。

Linux能提供构建开放源代码和可升级车内架构的必要基础。作为一种操作系统,Linux固有的稳定性将支持所有开发。向基于过程的开发方法转移要求Linux平台具有更多优点,它必须能满足驾驶者所期望的复位快速启动和对来自CAN、串行或者MOST总线的车内信息的快速响应。由于其独特的处理模式,Linux能处理局部故障而不会导致大规模的系统崩溃,并且能从这些故障中恢复。Linux还具有广泛的可用性,因此在开发来自外部需求的兼容性硬件和软件时不会有任何障碍,这意味着与其它开发模式相比,它的系统集成和成本控制是可预测的。Linux使受人欢迎的开放标准操作系统成为可能,在这些操作系统中最著名的是POSIX和由IEEE开发的便携式操作系统接口,后者目前以第二级形式的IEEE Std 1003.1 2004 版发布。

稳定性是Linux的关键优点,这种稳定性根植于其内核架构中。在Linux操作系统中,不同的应用程序相互隔离,并与核心Linux内核隔离。这种隔离处理可确保系统任务不会被普通用户破坏,并由正常运行在Linux操作系统上的硬件进行执行。这种硬件,特别是存储器管理单元(MMU),目前在很多嵌入式处理器中都具有,并且可提供内核可驻留的虚拟地址范围。这个虚拟地址范围被映射到物理存储器,MMU对虚拟地址范围进行监控以确保正确地对这个地址进行存取访问。当访问地址超出这个范围时,MMU将发送一个异常信息给操作系统并对之进行处理,以防止用户代码破坏物理存储器的其它区域。Linux操作系统还利用MMU分割每个用户处理。事实上,利用用户可以使用的服务甚至可以提供一个分割的设备驱动程序,以便很容易地在运行当中进行升级,并使关键设备驱动程序不会破坏其它系统和应用服务。这意味着系统任务与用户任务是隔离的,前者不会受后者影响。它们甚至有可能配置成可自我修复和自动重启。汽车驾驶者希望系统具有一致的稳定性,开放源代码的硬件和软件则为实现这种服务级别提供了最大可能性。

Linux内核比一般RTOS内核大很多,通常需要占用600KB~1.2MB存储空间,但是在这个范围内,可以定制Linux来提供多种服务与功能,从而成为远程信息处理应用的优秀选择。Linux的模块化架构组合了BusyBox(一种嵌入式应用工具包,它在一个可执行程序里包含许多标准Unix工具)等特定嵌入式工具,可保证得到“最适合”的功能,并同时确保系统的微管理成本仍是可管理的。假如不同尺寸类别的汽车希望具有不同级别的原始设备和更新硬件,那么这种核心灵活性对汽车制造商是很必要的。

按需要加载/卸载设备驱动程序

使Linux非常适合于远程信息处理和驾驶者界面应用的另外一个关键点,是它能够根据需要装载设备驱动程序。例如,当将CD-ROM、DVD或者硬盘安装在汽车里,但是只是偶尔使用一下时,这个特性就非常有用。如果需要这个硬件,设备驱动程序将在数毫秒内加载,如果系统不再需要该硬件,则它将自动卸载。

这种根据需要装载设备驱动程序的功能可确保Linux平台一直具有最佳操作速度。对许多产品来说,Linux系统已经具备良好的实时响应特性,但还可对它进一步优化以适应远程信息处理和驾驶者界面应用。这些优化一般专注于针对Linux操作系统将底层硬件的性能最大化,它们集中在两个相似的功能:具有优先权的内核功能和低延时补丁,这些可以分开使用或者结合起来使用。(注:补丁是升级或修改Linux内核的一种常用方法)。对引导装载程序增加的修改可提供大多数汽车软件工程师所期望的快速启动和快速系统特性装/卸载功能。除了将Linux操作系统的响应时间减少到普通操作状态外,如今最新技术允许在要求通信总线响应时间低于60ms和整个引导过程时间在几百毫秒范围内的环境中使用Linux操作系统。

节省功率

Linux 还能解决汽车制造商面临的另外一个两难问题,即功率节省。随着在不久的将来,汽车电子/电气部分占整个系统成本的40%,预计往42V系统转移将不可避免,因为它能提供所期望的8kW/h功率,明显高于目前标准12V(实际上是14.2V)电池系统提供的2到3kW/h功率。但在转移过程中阻力重重,其中主要来自于汽车子系统(主要是照明、电池、仪表和驾驶者信息系统)生产商,他们在14.2V架构上投入巨大。这种意外阻力迫使汽车制造商重新考虑他们对42V系统的立场。现在有一种技术可让汽车继续使用14.2V系统,它常通过转移到一种允许电子管理系统进入完全无源模式的操作模式来实现这点,而当需要这些设备时,系统可以立即恢复到以前状态,然后再返回睡眠状态。结合处理器共享技术,在功耗和系统运行方面都足以保持绝对的高效。但是,如果没有开放、稳定、确定性的内核操作系统,这种高效是不可能实现的,特别是在汽车这样的恶劣环境中。

当将Linux用作整个平台基础的时侯,技术优点是Linux的部分优势。此外,庞大的开发者社群对代码库所做的贡献使这种技术快速向前发展。由于Linux的授权模式,已有很多资源可被用于技术支持和正在进行的开发。

事实上,为进行硅验证和增强参考平台技术,许多半导体和电路板制造商正大量投入Linux技术开发。尽管这些优点很明显,但由于内核和驱动程序的授权模式,Linux还是存在认知的局限性。

这些认知阻碍了汽车制造商对开放源代码系统的广泛采用,因为他们担心陷入知识产权方面的问题,包括自己的知识产权和其它开发商的知识产权。然而,对那些被创建运行在Linux操作系统上的应用程序来说,哪些知识产权受保护,哪些不受保护是很清楚的。

另一个需要关注的问题是,主要的系统提供商和集成商很少能够提供规划未来发展方向和时间表的技术线路图。由于销售商提供了一种可靠、可信赖的Linux操作系统(具有汽车市场所要求的功能),所以消费者和市场将需要并且提出这些问题的解决方法。通过结合汽车级软件开发过程和程序、清晰理解将应用程序代码加到整个系统的架构要求,以及关键芯片和硬件销售商的持续供应链管理,大多数问题都将得到解决。

本文小结

在这个市场中的Linux继续沿着标准汽车技术应用的曲线发展,它的广泛采用只是时间问题。随着半导体生产商越来越多使用Linux进行硅片生产前的评估和性能测试,市场推动力不断加大。此外,芯片设计工程师正逐渐理解软件架构对芯片销售的重要性,他们开始采用经过优化的Linux芯片和主板支持包来展示器件的关键特性,并且市场和技术环境的融合也不断地引导Linux在这个领域获得成功。因此,向提供开放源代码的元件转移正变得越来越有必要。

汽车级Linux是这种变化的关键。通过确保汽车制造商了解开发路线图,软件和器件供应商也在发挥重要作用,这让他们在开发行业标准的硬件和软件平台的共同愿望上不断前进。

Michael O'Donnell

核心技术营销经理

Metrowerks公司