AutoSAR軟體架構解析(二)
上一期簡單介紹了下軟體架構的概念以及AutoSAR簡介。本期繼續講解下AutoSAR的分層設計理念。
無論是AutoSAR還是其他類型的嵌入式軟體分層設計,核心目標都是類似的:
- 區分硬體相關和硬體無關的軟體模塊,減小與硬體平台的耦合度
- 模塊化軟體體系結構,提高可移植性與可重用性
- 通過軟體自上而下分層,對不同層的軟體可以單獨進行更新和問題修復,增強可維護性
- ... ....
從頂層視圖來看,總的而言AutoSAR分為三層:
- 應用軟體層(Application Layer)
- 運行環境RTE(Runtime Environment)
- 基礎軟體層BSW(Basic Software)
層與層之間存在自上而下的依賴關係,即上層組件會訪問下層組件的APl,而下層組件不依賴上層組件。其中運行環境RTE為應用軟體層提供通信服務,它的存在任務為使AutoSAR軟體構件獨立於特定的ECU,實現上與ECU和應用相關。
BSW層又細分為以下幾個層:
- 服務層(Services Layer)
- ECU抽象層(ECU Abstraction Layer)
- 微控制器抽象層(Microcontroller Abstraction Layer)
- 複雜驅動(Complex Device Drivers)
以上幾個軟體層實現哪些功能,作用又是什麼呢,繼續看下圖更為細化的分層結構。
其中,微控制器抽象層則是包含了直接訪問微控制器和內部外設的驅動,它使高層的軟體能夠獨立於微控制。
ECU抽象層則是微控制器抽象層驅動的介面以及外部設備介面,總的來說它封裝並提供了訪問外設的API,使得高層軟體與ECU硬體布局無關。
複雜驅動層跨越硬體到運行時環境,它的任務是提供集成特殊功能的能力,主要面向AutoSAR中未規定的設備驅動,例如帶SPI的模擬前端採集器驅動。
服務層提供操作系統功能,存儲服務,車載網路通信 和管理服務,診斷服務,ECU狀態管理,模式管理等功能,它的任務是為應用和基礎軟體的其他模塊提供基本服務,而這些服務大部分都與微控制器和ECU硬體本身無關。
通過上述的介紹,相信大家對於AutoSAR的軟體分層有了基本的認識。不管你是不是在汽車行業,都希望這些理念對你今後設計軟體有所幫助。本期就這樣啦,下期見。
TAG:芯連心嵌入式設計交流 |
※HUAWEI Mate 10 Pro 測評:硬體良心軟體創新
※RPA軟體之Automation Anywhere研究
※針對間諜軟體InvisiMole的RC2CL模塊分析
※MARUI-PlugIn為三維創作軟體Maya、Blender提供VR插
※Unity為iOS和安卓打造AR開發軟體:AR Foundation
※TSCookie惡意軟體分析鵬越·安全
※軟體定義廣域網平台 NSX SD-WAN by VeloCloud
※對標Netsuite 在線管理軟體SAAS雲服務商「來肯雲商」獲數百萬美元A輪融
※關於TIA Portal軟體安裝
※Epson和Crestec合作將PORECT AR軟體帶入Moverio系列
※AMRA用於機體成分無創評估的磁共振診斷軟體AMRA?Profiler獲得美國FDA核准
※BBEdit文本編輯軟體重回蘋果Mac App Store
※錄屏軟體ApowerREC,去廣告應用AdAway 等等
※Revenge RAT惡意軟體升級版來襲
※After Effects AE CS6軟體安裝教程
※VT MAK升級無人機VR-Engage虛擬模擬器軟體
※FAUXPERSKY惡意軟體分析
※新JNEC.a勒索軟體曝光,利用WinRAR ACE漏洞傳播
※開源OCR文字識別軟體Calamari
※勒索軟體Kraken Cryptor RaaS分析