隨著汽車電子向著智能化、標準化、網絡化的方向發(fā)展,軟件開發(fā)在產品開發(fā)中所占的比重不斷增加,采用平臺化的設計方法降低成本、縮短開發(fā)時間、充分利用已有資源成為一種必然趨勢。 目前,主要的汽車電子軟件的開發(fā)標準有AUTOSAR、MISRA和OSEK。浙江大學CCNT實驗室根據已有的標準和平臺,開發(fā)出了SMARTCAR汽車電子軟件平臺,包括了智能汽車平臺和汽車電子軟件開發(fā)平臺。 浙江大學副校長吳朝暉老師同時也是CCNT的學術帶頭人,他介紹說,包括面向智能汽車的自適應中間件平臺ScudWare和在此基礎上開發(fā)的一個智能汽車空間原型系統,是由車載處理中心、各種上下文采集設備、以及一系列遠程Web服務器組成的一個計算環(huán)境,主要目的是根據用戶設定或者當前環(huán)境特性自動提供適當的服務,減少用戶主動發(fā)出服務請求的次數,在車內形成自發(fā)的、定制的服務空間,為用戶提供安全、舒適的行車環(huán)境。汽車電子軟件開發(fā)平臺SmartOSEK主要包括高可靠強實時的嵌入式操作系統內核SmartOSEK OS、支持服務的板級支持體系結構SmartOSEK BSS以及支持基于模型設計的圖形化開發(fā)環(huán)境SmartOSEK IDE幾大部分。重點解決復雜汽車電子應用對操作系統的需求問題,面向汽車領域的建模描述問題,車控軟件的有效性驗證問題,開發(fā)過程中的文檔和代碼的自動生成問題,通過基于模型的軟件開發(fā)思想改變嵌入式系統的傳統開發(fā)方法,最終提高汽車電子控制系統產品開發(fā)的效率和產品質量,降低開發(fā)成本。 SmartOSEK的組成結構 SmartOSEK標準重點借鑒OSEK OS、OSEK OIL、OSEK COM、OSEK NM標準。AUTOSAR標準,目前來說,主要借鑒了其Architecture的CommunicaTIon Stack、RTE、SystemServices、Peripherals標準以及MethodologyAndTools、Application InteRFaces中相關的部分。MISRA標準主要是借鑒其針對汽車電子安全代碼的127條規(guī)則。 嵌入式實時操作系統SmartOSEK OS SmartOSEK由操作系統、板級支持、開發(fā)工具三大部分組成,其操作系統部分SmartOSEK OS是嚴格按照OSEK/VDX規(guī)范實現的,而且是國內第一個通過OSEK官方組織認證的符合OSEK規(guī)范的嵌入式實時操作系統。 SmartOSEK OS嚴格實現了OSEK標準所規(guī)定的內核模塊,具體包括任務管理模塊、資源管理模塊、事件機制模塊、定時器模塊、中斷處理模塊、錯誤處理模塊、內部通信模塊等。 SmartOSEK內核模塊需要底層模塊的支撐,包括體系相關模塊、開發(fā)調試模塊、硬件驅動模塊。體系相關模塊實現體系密切相關部分,如上下文切換等;開發(fā)調試模塊針對特定的平臺實現對應用的監(jiān)控跟蹤調試;硬件驅動模塊包括各研究外設的驅動。SmartOSEK OS的應用開發(fā)主要面向汽車電子控制系統,包括發(fā)動機控制、變速箱控制、通信系統控制等。圖1是SmartOSEK OS的架構圖。 SmartOSEK OS可滿足嚴格的片內存儲器要求,內核在4KB~12KB之間(32位PowerPC平臺);主頻為40M的MPC555上的SmartOSEK OS的上下文切換時間為微秒級;最大中斷屏蔽時間為21.72μs;最高可承受運行40kHz的中斷。 板級支持SmartOSEK BSS 板級支持SmartOSEK BSS是一個開放、通用的平臺,屏蔽具體硬件細節(jié),通過API向上層操作系統和應用程序提供服務,實現操作系統和應用程序與硬件無關。對于新的硬件平臺,只要SmartOSEK BSS能夠實現,那么上層軟件就可以方便的移植。同時SmartOSEK BSS也應該能夠在不同的開發(fā)平臺上使用,雖然它的具體實現可能會有不同,但接口是統一的。 參照AUTOSAR標準中對軟件系統的劃分,板級支撐平臺采用層次化結構設計,分為微控制器抽象層和ECU抽象層,同時將整個板級支撐平臺按照功能分為四個模塊。 MCU抽象層包含各種驅動,按照功能特點分為四部分:IO驅動、通訊驅動、存儲驅動和微控制器驅動。它們是一個個軟件模塊,用于直接訪問微控制器內的外設或者是內存映射到微控制器的外部設備。MCU抽象層的結構如圖2所示。 ECU抽象層包含那些通過網絡方式連接到微控制器的外部設備的驅動。ECU抽象層也分為四個部分:IO硬件抽象、通訊硬件抽象、存儲硬件抽象、板上設備抽象。 集成開發(fā)環(huán)境SmartOSEK IDE SmartOSEK IDE是面向汽車電子應用、支持SmartOSEK操作系統的集成開發(fā)環(huán)境。它充分借鑒了基于模型驅動的設計思想,圍繞汽車電子軟件開發(fā)領域V字型流程,提供UML需求建模、SmartC算法建模、狀態(tài)圖模型驗證、系統可調度性分析、自動代碼生成、自動文檔生成等一整套開發(fā)工具鏈。SmartOSEK IDE的總體結構見圖3。 |