基于FPGA的汽車(chē)ECU設(shè)計(jì)充分符合AUTOSAR和ISO 26262標(biāo)準(zhǔn)
汽車(chē)產(chǎn)業(yè)利用可重配置硬件技術(shù),可靈活地綜合車(chē)載功能。
本文引用地址:http://2s4d.com/article/221573.htm當(dāng)今的汽車(chē)制造商正在把越來(lái)越多的高級(jí)功能添加到汽車(chē)電子控制單元 (ECU)中,以改善駕駛體驗(yàn),增強(qiáng)安全性,當(dāng)然還期望超過(guò)同類(lèi)競(jìng)爭(zhēng)產(chǎn)品的銷(xiāo)量。在這種情況下,汽車(chē)開(kāi)放系統(tǒng)架構(gòu) (AUTOSAR) 計(jì)劃和功能安全國(guó)際標(biāo)準(zhǔn) ISO26262 正在快速成為汽車(chē) ECU 設(shè)計(jì)的技術(shù)和架構(gòu)基礎(chǔ)。
為了滿(mǎn)足新車(chē)型日益提高的功能需求,汽車(chē)電子產(chǎn)品的密度不斷增大,FPGA 廠商也正在不斷推出更大型的器件。這些器件能夠集成所有的應(yīng)用,而且與前代器件相比,功耗更低,價(jià)格更具競(jìng)爭(zhēng)力。這種趨勢(shì)意味著可重配置計(jì)算技術(shù)在汽車(chē)產(chǎn)業(yè)將會(huì)得到進(jìn)一步推廣和應(yīng)用。
我們推出了一種具有開(kāi)創(chuàng)性的方法,即使用可編程 FPGA 器件而非基于 MCU 的平臺(tái)作為 ECU 的基礎(chǔ),設(shè)計(jì)出一款能夠同時(shí)滿(mǎn)足 AUTOSAR 和 ISO 26262 標(biāo)準(zhǔn)的汽車(chē) ECU。我們的設(shè)計(jì)方法對(duì)可重配置硬件的關(guān)鍵特性,比如并行性、可定制性、靈活性、冗余性和多功能性進(jìn)行了充分的探索。在概念設(shè)計(jì)完成后,我們希望在原型中實(shí)現(xiàn)設(shè)計(jì)。為此,賽靈思 Zynq™-7000 可擴(kuò)展處理平臺(tái)成為了理想選擇。該款 FPGA平臺(tái)將 ARM® 雙核 Cortex™-A9 MPCore 硬處理器和具備動(dòng)態(tài)部分可重配置功能的 28 nm 賽靈思 7 系列可編程邏輯器件完美結(jié)合在一起,不但可充分滿(mǎn)足所需要求,而且還配備有 CAN 和以太網(wǎng)等車(chē)載網(wǎng)絡(luò)常用的片上通信控制器。
新興應(yīng)用
目前汽車(chē)計(jì)算能力借助通過(guò)通信網(wǎng)絡(luò)互連的ECU來(lái)分配。在未來(lái)幾年內(nèi),由于機(jī)動(dòng)車(chē)輛中新應(yīng)用的興起,這樣的計(jì)算能力有望進(jìn)一步提高。這些新應(yīng)用包括安全和駕駛員輔助功能、車(chē)輛間通信功能、舒適性和控制功能、車(chē)載娛樂(lè)功能以及為數(shù)眾多的混合動(dòng)力電動(dòng)技術(shù)。毫無(wú)疑義,車(chē)輛電子設(shè)備的數(shù)量預(yù)計(jì)還會(huì)增加。根據(jù)分析人員的預(yù)測(cè),汽車(chē)應(yīng)用半導(dǎo)體市場(chǎng)的規(guī)模將在未來(lái)五年內(nèi)以 8% 的年均復(fù)合增長(zhǎng)率 (CAGR) 增長(zhǎng)。其中增長(zhǎng)最快的細(xì)分市場(chǎng)之一涉及到微控制器 (MCU) 和可編程邏輯器件,比如現(xiàn)場(chǎng)可編程門(mén)陣列 (FPGA)。
在車(chē)載功能的數(shù)量和先進(jìn)性與日俱增的同時(shí),設(shè)計(jì)和管理這些系統(tǒng)變得日趨復(fù)雜,汽車(chē)制造商認(rèn)為有必要采取有效方式來(lái)解決這一難題。其結(jié)果就是當(dāng)今 AUTOSAR 和 ISO 26262 兩大標(biāo)準(zhǔn)都在影響著實(shí)際汽車(chē) ECU 軟硬件系統(tǒng)的架構(gòu)、設(shè)計(jì)和部署方式(見(jiàn)側(cè)邊欄)。
2003 年由多家汽車(chē)制造商共同制定的 AUTOSAR 標(biāo)準(zhǔn)旨在為分布于車(chē)輛中的 ECU 定義標(biāo)準(zhǔn)的系統(tǒng)軟件架構(gòu)。而 ISO 26262 標(biāo)準(zhǔn)的目的則以功能安全性為中心,實(shí)質(zhì)上是以避免或檢測(cè)并處理故障為目的,從而減輕故障影響并防止出現(xiàn)對(duì)任何既有的系統(tǒng)安全目標(biāo)的違反行為。隨著全新的安全關(guān)鍵功能(比如駕駛員輔助或動(dòng)態(tài)控制)的推出,功能安全性已經(jīng)成為汽車(chē)開(kāi)發(fā)中的關(guān)鍵問(wèn)題之一。ISO 26262 標(biāo)準(zhǔn)于 2011 年批準(zhǔn)生效,可為軟硬件的安全開(kāi)發(fā)提供支持。
因此,整個(gè)ECU 的設(shè)計(jì)和開(kāi)發(fā)流程由需要系統(tǒng)性進(jìn)程的標(biāo)準(zhǔn)進(jìn)行管理。我們的工作就是設(shè)計(jì)一款高性?xún)r(jià)比嵌入式計(jì)算平臺(tái),采用可重配置硬件技術(shù)實(shí)現(xiàn)優(yōu)化的系統(tǒng)架構(gòu)。
系統(tǒng)架構(gòu)
AUTOSAR 和 ISO 26262 標(biāo)準(zhǔn)主要從軟件開(kāi)發(fā)的角度著眼,面向的是基于微控制器單元的計(jì)算平臺(tái)。但是,硬件/軟件聯(lián)合設(shè)計(jì)和可重配置計(jì)算技術(shù)的應(yīng)用可為這個(gè)領(lǐng)域帶來(lái)眾多優(yōu)勢(shì)。雖然標(biāo)準(zhǔn)的 MCU 往往是汽車(chē) ECU 硬件平臺(tái)的最佳選擇,但隨著新型 FPGA成本的不斷降低,加上部分 FPGA 產(chǎn)品內(nèi)部集成有硬核處理器,使得 FPGA 器件也成為這個(gè)市場(chǎng)中值得廣泛應(yīng)用的理想解決方案。此外,汽車(chē)中不斷集成新的嵌入式功能的趨勢(shì)也提出了對(duì)并行計(jì)算架構(gòu)的需求。這在當(dāng)今的車(chē)載信息娛樂(lè)領(lǐng)域尤為明顯,在這種領(lǐng)域中高速數(shù)字信號(hào)處理正在敞開(kāi)大門(mén)迎接 FPGA 技術(shù)。像賽靈思這樣的可編程邏輯供應(yīng)商和像 MathWorks 這樣的 EDA 工具廠商已對(duì)這個(gè)領(lǐng)域表現(xiàn)出明顯的興趣。
為了在汽車(chē)應(yīng)用中發(fā)揮可重配置硬件的全部?jī)?yōu)勢(shì),我們將以關(guān)于部署最終用戶(hù)功能的汽車(chē)計(jì)算網(wǎng)絡(luò)中最為重要的 ECU 之一——“車(chē)身控制器模塊”為重點(diǎn),通過(guò)使用案例展現(xiàn)這種技術(shù)的潛力。該ECU也稱(chēng)為“車(chē)身域控制器”,負(fù)責(zé)綜合和控制車(chē)輛中主要的電子車(chē)身功能,比如擋風(fēng)玻璃雨刷/噴水系統(tǒng)、車(chē)燈、搖窗器、引擎點(diǎn)火/熄火、車(chē)外后視鏡和中控鎖。我們的目標(biāo)是在FPGA平臺(tái)上設(shè)計(jì)出一款配備有安全關(guān)鍵功能且符合 AUTOSAR 的 ECU 系統(tǒng)。
實(shí)際情景
如果汽車(chē)制造商要想經(jīng)濟(jì)高效地管理日益復(fù)雜的車(chē)輛功能,經(jīng) AUTOSAR 提倡的 ECU 系統(tǒng)架構(gòu)的標(biāo)準(zhǔn)化則是必由之路。它能夠?qū)崿F(xiàn)分布在 ECU 中的各項(xiàng)功能的高度集成和軟件組件的重復(fù)使用。AUTOSAR 的主要目的是定義一個(gè)統(tǒng)一的 ECU 架構(gòu),讓硬件與軟件分離。這樣 AUTOSAR 通過(guò)定義硬件無(wú)關(guān)的接口,可提高軟件的重復(fù)使用。換句話(huà)說(shuō),如果按照 AUTOSAR 標(biāo)準(zhǔn)編寫(xiě)的軟件組件,只要正確集成到符合 AUTOSAR 標(biāo)準(zhǔn)的運(yùn)行環(huán)境中,就能夠在任何廠商的微控制器上運(yùn)行。
這項(xiàng)功能給汽車(chē)制造商帶來(lái)了更高的靈活性。由于 AUTOSAR 標(biāo)準(zhǔn)內(nèi)在的即插即用特性,汽車(chē)制造商可以在整個(gè)汽車(chē)平臺(tái)上以透明的方式更換不同供應(yīng)商開(kāi)發(fā)的相同軟件模塊的各個(gè)版本,且不會(huì)給汽車(chē)中其余功能的發(fā)揮造成負(fù)面效果。最終硬件和軟件實(shí)現(xiàn)彼此高度獨(dú)立。這種分離是通過(guò)標(biāo)準(zhǔn)軟件的 API 將抽象層互聯(lián)實(shí)現(xiàn)的。圖 1 是 AUTOSAR 定義的功能層的分解圖。
圖1 從 MCU 到應(yīng)用層的 AUTOSAR 分層模型
底部以黑色表示的是硬件層或物理層,由 MCU 自身(即 CPU 和與其相連的部分標(biāo)準(zhǔn)外設(shè))構(gòu)成。微控制器之上是基礎(chǔ)軟件(BSW),分為三層:粉色的微控制器抽象層 (MCAL)、綠色的 ECU 抽象層 (ECUAL) 和復(fù)雜驅(qū)動(dòng)程序、紫色的服務(wù)層(SRV)。這三層經(jīng)組織形成了多個(gè)列或協(xié)議棧(存儲(chǔ)器、通信、輸入/輸出等)。
緊貼硬件組件的是微控制器抽象層。正如其名所示,該層是 MCU 的抽象。該層的目的是提供一個(gè)硬件獨(dú)立的 API,負(fù)責(zé)處理微控制器中的硬件外設(shè)。微控制器抽象層的上一層是 ECU 抽象層,負(fù)責(zé)抽象 ECU 開(kāi)發(fā)板上的其他智能器件,一般直接與MCU接觸(例如,系統(tǒng)電壓調(diào)節(jié)器、智能交換控制器、可配置通信收發(fā)器等)。接下來(lái)的第三層是服務(wù)層。該層基本具有硬件獨(dú)立性,其作用是處理所需的不同類(lèi)型的背景服務(wù)。例如網(wǎng)路服務(wù),系統(tǒng)看門(mén)狗的 NVRAM 處理或管理。通過(guò)這三層,AUTOSAR 定義了一套基礎(chǔ)軟件功能。這套軟件功能在特定的硬件平臺(tái)下支持著汽車(chē) ECU 各高級(jí)抽象層的所有功能。
第四層是運(yùn)行環(huán)境 (RTE),為應(yīng)用軟件提供通信服務(wù)。它由可從上面的 BSW 層和應(yīng)用層 (APP)共同訪(fǎng)問(wèn)的一套信號(hào)(發(fā)送器/接收器端口)和服務(wù)(客戶(hù)端和服務(wù)器端口)構(gòu)成。該 RTE 從基礎(chǔ)軟件中抽象出應(yīng)用,明確地勾勒出將通用的可交換軟件代碼 (APP))與特定的硬件相關(guān)代碼 (BSW) 分離的軟件協(xié)議棧架構(gòu)。換句話(huà)說(shuō),RTE可將軟件應(yīng)用與硬件平臺(tái)分離。因此運(yùn)行在 RTE 上的所有軟件模塊都具有平臺(tái)無(wú)關(guān)性。
評(píng)論