分布式汽車電氣/電子系統(tǒng)設(shè)計和實現(xiàn)架構(gòu)
在過去的十幾年里,汽車的電氣和電子系統(tǒng)已經(jīng)變得非常的復雜。今天汽車電子/電氣系統(tǒng)開發(fā)工程師廣泛使用基于模型的功能設(shè)計與仿真來迎接這一復雜性挑戰(zhàn)。新興標準(如AUTOSAR)定義了與低層軟件的標準化接口,最重要的是,它還為功能實現(xiàn)工程師引入了一個全新的抽象級。
這提高了軟件組件的可重用性,但不幸的是,關(guān)于如何將基于模型的功能設(shè)計的結(jié)果轉(zhuǎn)換成高度分布式環(huán)境中的可靠和高效系統(tǒng)實現(xiàn)方面的指導卻幾乎沒有。
此外,論述設(shè)計流程物理端的文章也非常少。本文概述了一種推薦的系統(tǒng)級設(shè)計方法學,包括架構(gòu)設(shè)計、分布在多個ECU中的網(wǎng)絡(luò)和任務(wù)調(diào)度、線束設(shè)計和規(guī)格生成。
為什么需要AUTOSAR?
即使在同一家公司,“架構(gòu)設(shè)計”對不同的人也有不同的含義,這取決于他們站在哪個角度上。物理架構(gòu)處理系統(tǒng)的有形一面,如布線和連接器,邏輯架構(gòu)定義無形系統(tǒng)的結(jié)構(gòu)和分配,如軟件和通信協(xié)議。目前設(shè)計物理架構(gòu)和邏輯架構(gòu)的語言是獨立的,這導致相同一個詞的意思可以完全不同,設(shè)計團隊和流程也是獨立的,這也導致了一個非常復雜的設(shè)計流程(如圖1所示)。
圖1:物理和邏輯設(shè)計流程
這種復雜性導致了次優(yōu)設(shè)計結(jié)果,整個系統(tǒng)的正確功能是如此的難于實現(xiàn), 以致于幾乎沒有時間去尋求一種替代方法,它可導致更堅固的、可擴展性更好的和更具成本效益的解決方案。為了實現(xiàn)這樣一種解決方案,設(shè)計師需要新的方法,它可以將物理和邏輯設(shè)計流程緊密相連,并仍然允許不同的設(shè)計團隊做他們的工作。
新興的AUTOSAR標準為系統(tǒng)級汽車電子/電氣設(shè)計方法學提供了一個技術(shù)上和經(jīng)濟上都可行的選擇,盡管它主要針對軟件層面,即邏輯系統(tǒng)的設(shè)計。不過,大量廣泛的AUTOSAR元模型及其豐富的接口定義允許系統(tǒng)級電子/電氣架構(gòu)師以標準的格式表達他的設(shè)計思想。從經(jīng)濟上看,AUTOSAR標準打開了一個巨大的、統(tǒng)一的市場,它使得可以創(chuàng)建合適的設(shè)計工具。
本文描述了基于AUTOSAR的由點工具組成的系統(tǒng)級設(shè)計方法。這導致整個流程在所有有意義的地方使用標準,但又不局限于標準,或要求用戶采用這些標準。
AUTOSAR工作原理
AUTOSAR標準是汽車制造商、供應(yīng)商和工具供應(yīng)商一起發(fā)起的,旨在規(guī)范汽車電子控制單元(ECU)的開放式軟件架構(gòu)。
AUTOSAR標準指定了一個分層軟件架構(gòu),它明確定義了應(yīng)用軟件組件(SWC)之間的接口、用戶可見汽車功能和基礎(chǔ)設(shè)施組件的實現(xiàn)。它對基礎(chǔ)設(shè)施組件進行了嚴格的規(guī)定,以允許不同供應(yīng)商開發(fā)的組件能一起工作。
用戶可見的汽車功能通過互連的應(yīng)用軟件組件來實現(xiàn)。SWC是可以映射到ECU的最小單元。為了使SWC與特定的硬件無關(guān),定義了虛擬功能總線(VFB)概念,此處SWC就使用VFB與它們的環(huán)境進行通信。
這一概念支持SWC重新定位到不同的ECU,從而增強了應(yīng)用軟件的可重用性。
一個AUTOSAR系統(tǒng)基本上由以下三個XML文件定義:SWC描述、ECU資源描述和系統(tǒng)配置描述。這些文件描述了一個邏輯架構(gòu)的所有方面: SWC、功能網(wǎng)絡(luò)、拓撲和功能到ECU的映射。雖然這些文件的語法和語義由AUTOSAR標準定義,但它們的創(chuàng)建方法學則留給了工具供應(yīng)商。
用戶案例分析
下面兩個代表性用戶案例可以讓你更深入地了解到總體物理和邏輯設(shè)計任務(wù)的復雜性。
在圖2顯示的設(shè)計流程中,你可看到邏輯設(shè)計過程是如何驅(qū)動物理設(shè)計過程的。這一設(shè)計流程的第一步是汽車邏輯功能的定義和實現(xiàn)。大多數(shù)OEM將一部汽車的電氣系統(tǒng)分解成約100-200個功能。用戶創(chuàng)建能表達各種汽車功能的單元級SWC,或從像Matlab/Simulink這樣的模型設(shè)計工具中調(diào)用這類SWC。
由于SWC的規(guī)范和開發(fā)在時間和地點上都是高度分散的,以及許多SWC從許多不同的來源進入設(shè)計流程,因此應(yīng)進行一致性檢查,以盡早發(fā)現(xiàn)錯誤。即便只有接口描述,也已經(jīng)可以進行內(nèi)部組件之間的接口一致性靜態(tài)檢查。在設(shè)計流程的這一點上,增加端到端的時序要求是重要的,以支持后面流程中要求時序信息的先進分析工具。
圖2:用戶案例1——邏輯設(shè)計驅(qū)動物理設(shè)計
與此同時,可以創(chuàng)建一個有潛力的拓撲結(jié)構(gòu),它能勾畫出分布式汽車網(wǎng)絡(luò)的邏輯拓撲結(jié)構(gòu),以及描述傳感器、激勵器和ECU的連接。通常情況下,一個汽車項目開始于原有設(shè)計的重利用,然后對它進行修改。在重利用現(xiàn)有的ECU時,非常詳細的ECU信息可以來自企業(yè)數(shù)據(jù)庫,或需要定義新的ECU,其技術(shù)特性在開發(fā)過程中的特定期間是變化的。
在以上兩種情況下,功能信息和拓撲信息都可以提供給物理設(shè)計流程。物理設(shè)計過程的功能級也需要ECU上的數(shù)據(jù)(如總線系統(tǒng)使用的)?,F(xiàn)在的物理設(shè)計需要一個子系統(tǒng)設(shè)計步驟,在該步驟上,在物理組件映射到汽車上的封裝空間(插槽)之前,如ECU和保險絲盒這樣的子系統(tǒng)需要做進一步的詳細設(shè)計。除此之外,在該步驟上,也可以開發(fā)出電源/接地概念。
邏輯架構(gòu)設(shè)計的對應(yīng)步驟是SWC映射到ECU。這也決定了SWC之間的通信方案,即多個SWC是通過總線系統(tǒng)還是內(nèi)部ECU進行通信。
通信方法的選擇對物理設(shè)計有直接的影響,這也增加了整個設(shè)計過程的復雜性。例如,這取決于是否需要電線、常規(guī)電線、雙絞線或雙股雙絞線。
封裝步驟之后是物理系統(tǒng)集成,此處,CAD系統(tǒng)的信息用于添加額外的物理信息,如所需的在線連接器和布線通道。
這反過來對設(shè)計的邏輯層面有影響,并再次增加了整個設(shè)計過程的復雜性。太小的布線通道可能使得無法使用雙股雙絞線,或太長的電線長度可能使得將某個SWC重定位到另一個ECU上成為一個更具成本效益的替代選擇。
當物理和邏輯流程都可以提供結(jié)果以后,它們的各種數(shù)據(jù)就可用來評估和優(yōu)化汽車架構(gòu)。不過,由于流程的復雜性,很難找到一個以上行得通的架構(gòu)。其結(jié)果是,邏輯和物理設(shè)計師只能嘗試優(yōu)化其各自負責的設(shè)計部分。
圖3:用戶案例2——物理設(shè)計驅(qū)動邏輯設(shè)計
圖3顯示物理設(shè)計驅(qū)動邏輯設(shè)計的設(shè)計流程,邏輯拓撲是物理拓撲的衍生。與前面的增加信息不同,這里不必要的信息需要被過濾。例如,在需要一個雪茄打火機的物理設(shè)計時,這一功能并不需要一個 SWC描述,因此這一信息在邏輯域中不需要。這兩個例子只是反映了今天現(xiàn)有的設(shè)計流程挑戰(zhàn)的一小部分,并說明了整個流程的復雜性。
物理和邏輯設(shè)計流程的集成
改善這個內(nèi)在復雜設(shè)計流程(多個設(shè)計小組在同一整體設(shè)計上同時工作)的一個選擇是,兩個不同設(shè)計流程之間的緊密聯(lián)系。
在整個設(shè)計流程中,數(shù)據(jù)需要保持同步,但與此同時,工程師受到了這一同步的太多阻礙。在目前的工作流程中,所有的人都共享相同的數(shù)據(jù)對象,而且在使用它們之前必須對它們進行檢查,一種替代工作流程是,針對兩個不同的設(shè)計流程,使用兩個獨立的數(shù)據(jù)庫(見圖4),但找到一種辦法可以在不帶來大量人力工作量情況下保持數(shù)據(jù)同步。
這需要這樣的一個設(shè)計流程,大部分的設(shè)計實際上是自動生成,而不是手工生成。在同步過程中數(shù)據(jù)庫的變化將自動導致一次“綜合”操作,從而完全避免了重復以前努力的任務(wù)。
圖4:并行處理物理和邏輯設(shè)計
一個例子是網(wǎng)絡(luò)配置的生成。當需要通過網(wǎng)絡(luò)傳輸?shù)男盘柊l(fā)生變化時,設(shè)計師可以手動輸入這些變化,并手動運行所有必需的驗證測試,這可以導致設(shè)計過程的時間延長幾個月。與此形成鮮明對比的是,各種通信數(shù)據(jù)可以自動基于通信要求和數(shù)學算法生成,這可將完成設(shè)計流程所需的時間大幅減少到秒級。
一個類似的物理設(shè)計例子是系統(tǒng)集成。當系統(tǒng)出現(xiàn)變化時(如不同的路由通道),人工過程需要太多的時間,而且容易出錯。通過使用一個自動生成的流程,系統(tǒng)的變化可以通過流程或多或少地馬上得到處理。例如,連接器的安裝位置改變和電線長度可以自動生成。在這里,工程師的know-how用于定義規(guī)則,而不是應(yīng)用這些規(guī)則。