滿足汽車遠(yuǎn)程信息處理需求的汽車級(jí)Linux操作系統(tǒng)
對(duì)下一代遠(yuǎn)程信息處理設(shè)備的設(shè)計(jì)工程師來說,嵌入式Linux在商業(yè)和技術(shù)上的優(yōu)勢(shì)非常有吸引力。直到最近,嵌入式Linux技術(shù)仍缺乏遠(yuǎn)程信息處理市場所需的確定性、啟動(dòng)時(shí)間性能和電源管理能力。但如今,汽車級(jí)Linux則是未來汽車電子所必需的。
遠(yuǎn)程信息處理是一個(gè)涵蓋性術(shù)語,代表數(shù)量眾多的汽車和駕駛者信息系統(tǒng)和服務(wù)。自動(dòng)緊急呼叫和位置標(biāo)示是其中的關(guān)鍵部分,但緊接其后的是遠(yuǎn)程汽車安全和跟蹤系統(tǒng)、路線導(dǎo)航、實(shí)時(shí)交通信息、專用移動(dòng)消息以及管家服務(wù),包括自動(dòng)預(yù)定賓館和飯店、預(yù)定車位和支付車位費(fèi)用等。在不久的將來,駕駛者有望能夠點(diǎn)播音視頻下載(類似于用個(gè)人電腦和手機(jī)進(jìn)行下載)。此外,汽車制造商對(duì)遠(yuǎn)程診斷和維修服務(wù)越來越有興趣,以便提高汽車的可靠性和最低盈利。
當(dāng)前,遠(yuǎn)程信息服務(wù)通過一個(gè)專用的車內(nèi)硬件(通常被稱為“黑匣子”)進(jìn)行操作。這個(gè)黑匣子通常包括一個(gè)具有硬連線天線的全球定位系統(tǒng)(GPS)接收器、一個(gè)中央微處理器和一個(gè)連接主流外部蜂窩網(wǎng)絡(luò)基礎(chǔ)設(shè)施的通信板。
目前,許多技術(shù)正發(fā)展成需要采用下一代GPS接收器和通信板,以支持衛(wèi)星定位(歐洲將在2009年擁有自己的衛(wèi)星網(wǎng)絡(luò))和電信方面(升級(jí)到3G,這種蜂窩網(wǎng)絡(luò)正在建立當(dāng)中,而且802.11“Wi-Fi”和衛(wèi)星通信也正被廣泛采用)的最新發(fā)展。所有這些進(jìn)步都意味著在當(dāng)前模式下,改變或者升級(jí)整個(gè)黑盒子將很常見。
本地市場的偏愛問題變得越來越重要了,因?yàn)楸泵赖鸟{駛者已經(jīng)開始定購國家衛(wèi)星無線電廣播系統(tǒng),而歐洲的駕駛者則喜歡數(shù)字音頻廣播(DAB)系統(tǒng)。這兩個(gè)廣播系統(tǒng)盡管具有完全不同的特性,但都需要與構(gòu)成遠(yuǎn)程信息處理系統(tǒng)主要接口的駕駛者信息系統(tǒng)的其它部分進(jìn)行集成。
這種變化需要很高的成本,因此將各種元件嵌入到核心汽車電子架構(gòu)的普遍趨勢(shì)被認(rèn)為是非常有效的解決方案,因?yàn)閱蝹€(gè)元件可能很快被取代,而一組元件則不會(huì)。
復(fù)雜性需求
這些區(qū)域性需求和遠(yuǎn)程信息服務(wù)的快速發(fā)展給系統(tǒng)設(shè)計(jì)者和系統(tǒng)集成者帶來了沉重負(fù)擔(dān),相當(dāng)重要的原因是車內(nèi)硬件系統(tǒng)的單一來源幾乎是未知的。一個(gè)典型的情形是美洲豹Jaguar的駕駛者信息系統(tǒng),該系統(tǒng)結(jié)合了三菱公司的觸摸屏與摩托羅拉公司的免提電話系統(tǒng)、Clarion公司的導(dǎo)航系統(tǒng)、Visteon公司的語音啟動(dòng)以及Harman-Kardon公司的音頻系統(tǒng)等。因此,系統(tǒng)設(shè)計(jì)者將這些獨(dú)立的產(chǎn)品逐個(gè)模塊地集成在一起。只要這種復(fù)雜系統(tǒng)繼續(xù)作為高端汽車的配置,這種開發(fā)方法就是可以接受的,因?yàn)楦叨似嚨拈_發(fā)預(yù)算大,要求構(gòu)建模塊數(shù)量少,所以可允許采用這種開發(fā)方法。
然而,隨著遠(yuǎn)程信息處理技術(shù)逐漸在利潤較低、產(chǎn)量更高的汽車中得到應(yīng)用,當(dāng)設(shè)計(jì)工程師能夠利用普通的硬件和軟件平臺(tái)加速集成并創(chuàng)建快速配置的架構(gòu)時(shí),分水嶺就出現(xiàn)了。未來的車內(nèi)系統(tǒng)將依賴這么一個(gè)平臺(tái):在這個(gè)平臺(tái)上,來自最合適渠道的硬件和軟件,能以最小的開發(fā)成本為購買它們的駕駛者帶來最大好處。
除了規(guī)模經(jīng)濟(jì)的基本商業(yè)邏輯和這些平臺(tái)的靈活設(shè)計(jì)性之外,它們還增加了嚴(yán)格的安全性規(guī)范要求。這種使用底層平臺(tái)的方法,可實(shí)現(xiàn)快速測試周期和對(duì)重復(fù)使用很關(guān)鍵的模塊化構(gòu)建塊。邏輯上說,在所有層次上使用公共操作平臺(tái)(硬件和基礎(chǔ)軟件的組合)的應(yīng)用將最為有效。
全球最大的汽車電子組件供應(yīng)商Delphi公司幾年之前曾聲明支持一種公共的開放計(jì)算平臺(tái),這是該公司2000年后的又一次聲明。在2000年的那次聲明中,他們宣稱與瑞典電信公司愛立信聯(lián)合開發(fā)一系列他們稱之為的“即插即用”的遠(yuǎn)程信息處理和駕駛者信息服務(wù)。那時(shí)Delphi在媒體咨詢會(huì)上公布的商業(yè)模式,代表了汽車遠(yuǎn)程信息處理和多媒體系統(tǒng)的特殊系統(tǒng)需求。這種模塊化系統(tǒng)基于一種開放平臺(tái),并要求選用和組合的硬件來自這些元件列表:微處理器和相關(guān)IC(200至500MIPS)、存儲(chǔ)器(128MB SDRAM和128MB閃存)、電磁兼容性(EMC)、算法處理功能、顯示功能(從Q-VGA 到VGA+)、計(jì)算機(jī)產(chǎn)生的圖形、針對(duì)CD-ROM和DVD的ATAPI、MPEG接口,以及關(guān)電模式I2C、 I2S、RS-232、IrDA、CAN、J1708、MML、PCMCIA、PCI、USB、AC97、SPI等。
增加到這個(gè)列表中的軟件功能包括Java兼容性、兼容POSIX的實(shí)時(shí)操作系統(tǒng)(RTOS)、導(dǎo)航、語音處理、視頻處理以及具有車內(nèi)數(shù)據(jù)總線的通信。為確保汽車系統(tǒng)的功能并優(yōu)化功耗和散熱,每個(gè)模塊的電源都可在軟件控制下打開或關(guān)斷。另外,系統(tǒng)被設(shè)計(jì)成能夠充分升級(jí)以提供所需的確定性級(jí)別,這樣不需要定制核心平臺(tái),便可根據(jù)不同范圍或者不同模塊提供各種特性級(jí)別。
開放源代碼
由于可更好地適應(yīng)電子市場發(fā)展步伐所需的創(chuàng)新周期和需求,所以開放源代碼軟件是汽車制造商自然而然的選擇??缮?jí)架構(gòu)的關(guān)鍵特性和快速的技術(shù)轉(zhuǎn)移為廣泛采用Linux作為操作系統(tǒng)平臺(tái)創(chuàng)造了機(jī)遇。
Linux能提供構(gòu)建開放源代碼和可升級(jí)車內(nèi)架構(gòu)的必要基礎(chǔ)。作為一種操作系統(tǒng),Linux固有的穩(wěn)定性將支持所有開發(fā)。向基于過程的開發(fā)方法轉(zhuǎn)移要求Linux平臺(tái)具有更多優(yōu)點(diǎn),它必須能滿足駕駛者所期望的復(fù)位快速啟動(dòng)和對(duì)來自CAN、串行或者M(jìn)OST總線的車內(nèi)信息的快速響應(yīng)。由于其獨(dú)特的處理模式,Linux能處理局部故障而不會(huì)導(dǎo)致大規(guī)模的系統(tǒng)崩潰,并且能從這些故障中恢復(fù)。Linux還具有廣泛的可用性,因此在開發(fā)來自外部需求的兼容性硬件和軟件時(shí)不會(huì)有任何障礙,這意味著與其它開發(fā)模式相比,它的系統(tǒng)集成和成本控制是可預(yù)測的。Linux使受人歡迎的開放標(biāo)準(zhǔn)操作系統(tǒng)成為可能,在這些操作系統(tǒng)中最著名的是POSIX和由IEEE開發(fā)的便攜式操作系統(tǒng)接口,后者目前以第二級(jí)形式的IEEE Std 1003.1 2004 版發(fā)布。
穩(wěn)定性是Linux的關(guān)鍵優(yōu)點(diǎn),這種穩(wěn)定性根植于其內(nèi)核架構(gòu)中。在Linux操作系統(tǒng)中,不同的應(yīng)用程序相互隔離,并與核心Linux內(nèi)核隔離。這種隔離處理可確保系統(tǒng)任務(wù)不會(huì)被普通用戶破壞,并由正常運(yùn)行在Linux操作系統(tǒng)上的硬件進(jìn)行執(zhí)行。這種硬件,特別是存儲(chǔ)器管理單元(MMU),目前在很多嵌入式處理器中都具有,并且可提供內(nèi)核可駐留的虛擬地址范圍。這個(gè)虛擬地址范圍被映射到物理存儲(chǔ)器,MMU對(duì)虛擬地址范圍進(jìn)行監(jiān)控以確保正確地對(duì)這個(gè)地址進(jìn)行存取訪問。當(dāng)訪問地址超出這個(gè)范圍時(shí),MMU將發(fā)送一個(gè)異常信息給操作系統(tǒng)并對(duì)之進(jìn)行處理,以防止用戶代碼破壞物理存儲(chǔ)器的其它區(qū)域。Linux操作系統(tǒng)還利用MMU分割每個(gè)用戶處理。事實(shí)上,利用用戶可以使用的服務(wù)甚至可以提供一個(gè)分割的設(shè)備驅(qū)動(dòng)程序,以便很容易地在運(yùn)行當(dāng)中進(jìn)行升級(jí),并使關(guān)鍵設(shè)備驅(qū)動(dòng)程序不會(huì)破壞其它系統(tǒng)和應(yīng)用服務(wù)。這意味著系統(tǒng)任務(wù)與用戶任務(wù)是隔離的,前者不會(huì)受后者影響。它們甚至有可能配置成可自我修復(fù)和自動(dòng)重啟。汽車駕駛者希望系統(tǒng)具有一致的穩(wěn)定性,開放源代碼的硬件和軟件則為實(shí)現(xiàn)這種服務(wù)級(jí)別提供了最大可能性。
Linux內(nèi)核比一般RTOS內(nèi)核大很多,通常需要占用600KB~1.2MB存儲(chǔ)空間,但是在這個(gè)范圍內(nèi),可以定制Linux來提供多種服務(wù)與功能,從而成為遠(yuǎn)程信息處理應(yīng)用的優(yōu)秀選擇。Linux的模塊化架構(gòu)組合了BusyBox(一種嵌入式應(yīng)用工具包,它在一個(gè)可執(zhí)行程序里包含許多標(biāo)準(zhǔn)Unix工具)等特定嵌入式工具,可保證得到“最適合”的功能,并同時(shí)確保系統(tǒng)的微管理成本仍是可管理的。假如不同尺寸類別的汽車希望具有不同級(jí)別的原始設(shè)備和更新硬件,那么這種核心靈活性對(duì)汽車制造商是很必要的。
按需要加載/卸載設(shè)備驅(qū)動(dòng)程序
使Linux非常適合于遠(yuǎn)程信息處理和駕駛者界面應(yīng)用的另外一個(gè)關(guān)鍵點(diǎn),是它能夠根據(jù)需要裝載設(shè)備驅(qū)動(dòng)程序。例如,當(dāng)將CD-ROM、DVD或者硬盤安裝在汽車?yán)?,但是只是偶爾使用一下時(shí),這個(gè)特性就非常有用。如果需要這個(gè)硬件,設(shè)備驅(qū)動(dòng)程序?qū)⒃跀?shù)毫秒內(nèi)加載,如果系統(tǒng)不再需要該硬件,則它將自動(dòng)卸載。
這種根據(jù)需要裝載設(shè)備驅(qū)動(dòng)程序的功能可確保Linux平臺(tái)一直具有最佳操作速度。對(duì)許多產(chǎn)品來說,Linux系統(tǒng)已經(jīng)具備良好的實(shí)時(shí)響應(yīng)特性,但還可對(duì)它進(jìn)一步優(yōu)化以適應(yīng)遠(yuǎn)程信息處理和駕駛者界面應(yīng)用。這些優(yōu)化一般專注于針對(duì)Linux操作系統(tǒng)將底層硬件的性能最大化,它們集中在兩個(gè)相似的功能:具有優(yōu)先權(quán)的內(nèi)核功能和低延時(shí)補(bǔ)丁,這些可以分開使用或者結(jié)合起來使用。(注:補(bǔ)丁是升級(jí)或修改Linux內(nèi)核的一種常用方法)。對(duì)引導(dǎo)裝載程序增加的修改可提供大多數(shù)汽車軟件工程師所期望的快速啟動(dòng)和快速系統(tǒng)特性裝/卸載功能。除了將Linux操作系統(tǒng)的響應(yīng)時(shí)間減少到普通操作狀態(tài)外,如今最新技術(shù)允許在要求通信總線響應(yīng)時(shí)間低于60ms和整個(gè)引導(dǎo)過程時(shí)間在幾百毫秒范圍內(nèi)的環(huán)境中使用Linux操作系統(tǒng)。
節(jié)省功率
Linux 還能解決汽車制造商面臨的另外一個(gè)兩難問題,即功率節(jié)省。隨著在不久的將來,汽車電子/電氣部分占整個(gè)系統(tǒng)成本的40%,預(yù)計(jì)往42V系統(tǒng)轉(zhuǎn)移將不可避免,因?yàn)樗芴峁┧谕?kW/h功率,明顯高于目前標(biāo)準(zhǔn)12V(實(shí)際上是14.2V)電池系統(tǒng)提供的2到3kW/h功率。但在轉(zhuǎn)移過程中阻力重重,其中主要來自于汽車子系統(tǒng)(主要是照明、電池、儀表和駕駛者信息系統(tǒng))生產(chǎn)商,他們?cè)?4.2V架構(gòu)上投入巨大。這種意外阻力迫使汽車制造商重新考慮他們對(duì)42V系統(tǒng)的立場。現(xiàn)在有一種技術(shù)可讓汽車?yán)^續(xù)使用14.2V系統(tǒng),它常通過轉(zhuǎn)移到一種允許電子管理系統(tǒng)進(jìn)入完全無源模式的操作模式來實(shí)現(xiàn)這點(diǎn),而當(dāng)需要這些設(shè)備時(shí),系統(tǒng)可以立即恢復(fù)到以前狀態(tài),然后再返回睡眠狀態(tài)。結(jié)合處理器共享技術(shù),在功耗和系統(tǒng)運(yùn)行方面都足以保持絕對(duì)的高效。但是,如果沒有開放、穩(wěn)定、確定性的內(nèi)核操作系統(tǒng),這種高效是不可能實(shí)現(xiàn)的,特別是在汽車這樣的惡劣環(huán)境中。
當(dāng)將Linux用作整個(gè)平臺(tái)基礎(chǔ)的時(shí)侯,技術(shù)優(yōu)點(diǎn)是Linux的部分優(yōu)勢(shì)。此外,龐大的開發(fā)者社群對(duì)代碼庫所做的貢獻(xiàn)使這種技術(shù)快速向前發(fā)展。由于Linux的授權(quán)模式,已有很多資源可被用于技術(shù)支持和正在進(jìn)行的開發(fā)。
事實(shí)上,為進(jìn)行硅驗(yàn)證和增強(qiáng)參考平臺(tái)技術(shù),許多半導(dǎo)體和電路板制造商正大量投入Linux技術(shù)開發(fā)。盡管這些優(yōu)點(diǎn)很明顯,但由于內(nèi)核和驅(qū)動(dòng)程序的授權(quán)模式,Linux還是存在認(rèn)知的局限性。
這些認(rèn)知阻礙了汽車制造商對(duì)開放源代碼系統(tǒng)的廣泛采用,因?yàn)樗麄儞?dān)心陷入知識(shí)產(chǎn)權(quán)方面的問題,包括自己的知識(shí)產(chǎn)權(quán)和其它開發(fā)商的知識(shí)產(chǎn)權(quán)。然而,對(duì)那些被創(chuàng)建運(yùn)行在Linux操作系統(tǒng)上的應(yīng)用程序來說,哪些知識(shí)產(chǎn)權(quán)受保護(hù),哪些不受保護(hù)是很清楚的。
另一個(gè)需要關(guān)注的問題是,主要的系統(tǒng)提供商和集成商很少能夠提供規(guī)劃未來發(fā)展方向和時(shí)間表的技術(shù)線路圖。由于銷售商提供了一種可靠、可信賴的Linux操作系統(tǒng)(具有汽車市場所要求的功能),所以消費(fèi)者和市場將需要并且提出這些問題的解決方法。通過結(jié)合汽車級(jí)軟件開發(fā)過程和程序、清晰理解將應(yīng)用程序代碼加到整個(gè)系統(tǒng)的架構(gòu)要求,以及關(guān)鍵芯片和硬件銷售商的持續(xù)供應(yīng)鏈管理,大多數(shù)問題都將得到解決。
本文小結(jié)
在這個(gè)市場中的Linux繼續(xù)沿著標(biāo)準(zhǔn)汽車技術(shù)應(yīng)用的曲線發(fā)展,它的廣泛采用只是時(shí)間問題。隨著半導(dǎo)體生產(chǎn)商越來越多使用Linux進(jìn)行硅片生產(chǎn)前的評(píng)估和性能測試,市場推動(dòng)力不斷加大。此外,芯片設(shè)計(jì)工程師正逐漸理解軟件架構(gòu)對(duì)芯片銷售的重要性,他們開始采用經(jīng)過優(yōu)化的Linux芯片和主板支持包來展示器件的關(guān)鍵特性,并且市場和技術(shù)環(huán)境的融合也不斷地引導(dǎo)Linux在這個(gè)領(lǐng)域獲得成功。因此,向提供開放源代碼的元件轉(zhuǎn)移正變得越來越有必要。
汽車級(jí)Linux是這種變化的關(guān)鍵。通過確保汽車制造商了解開發(fā)路線圖,軟件和器件供應(yīng)商也在發(fā)揮重要作用,這讓他們?cè)陂_發(fā)行業(yè)標(biāo)準(zhǔn)的硬件和軟件平臺(tái)的共同愿望上不斷前進(jìn)。 linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論