<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 面向汽車應(yīng)用的AUTOSAR體系結(jié)構(gòu)及設(shè)計技巧介紹

          面向汽車應(yīng)用的AUTOSAR體系結(jié)構(gòu)及設(shè)計技巧介紹

          作者: 時間:2016-12-20 來源:網(wǎng)絡(luò) 收藏
            汽車OEM正在開發(fā)基于AUTOSAR的電子系統(tǒng)以應(yīng)對當(dāng)代汽車中日益復(fù)雜的軟件。AUTOSAR簡化了開發(fā)流程并使得ECU軟件具有復(fù)用性。

            從2004年AUTOSAR面世開始,這項創(chuàng)新性的前沿技術(shù)就在許多研究性的項目中進行測試;現(xiàn)在,AUTOSAR開始通過產(chǎn)品化ECU進入真正的實現(xiàn)階段。AUTOSAR軟件代表了當(dāng)前的技術(shù)水平,并通過不斷的版本更新來保證技術(shù)上的不斷進步。

            汽車工業(yè)正在面臨新的時代。復(fù)雜的汽車功能越來越多,使得汽車電子的開發(fā)越來越復(fù)雜。顧客對于產(chǎn)品的功能和個性化要求,以及象診斷這種非功能性需求的增加,更加劇了ECU開發(fā)過程的復(fù)雜度。汽車,尤其是高級豪華車,大約有超過1000個軟件功能,幾條車內(nèi)總線網(wǎng)絡(luò),以及超過70個 ECU。由于汽車電子領(lǐng)域硬件平臺的多樣性,ECU軟件開發(fā)嚴(yán)重依賴硬件和系統(tǒng)配置。每次相關(guān)的約束條件的更改都將導(dǎo)致重新編寫程序或?qū)浖男薷摹?

            為了降低ECU軟件開發(fā)的復(fù)雜度,AUTOSAR開發(fā)成員提供了一套經(jīng)過實踐驗證的軟件架構(gòu),并以此作為開發(fā)可重用應(yīng)用程序的基礎(chǔ)。 AUTOSAR這一開放的系統(tǒng)架構(gòu)標(biāo)準(zhǔn)是由全世界的汽車OEM,零部件供應(yīng)商以及軟件、半導(dǎo)體和電子工業(yè)的企業(yè)共同制定。AUTOSAR可以使得用戶避免因為采用私有的解決方案導(dǎo)致日益增長的開發(fā)成本。

            AUTOSAR將電子架構(gòu)分成若干層和模塊。在定義接口的同時,AUTOSAR也定義了軟件組件和易于交換的硬件平臺標(biāo)準(zhǔn)。 AUTOSAR開發(fā)成員不僅提供了基礎(chǔ)軟件模塊的規(guī)范,還提供了用于開發(fā)分布式系統(tǒng)應(yīng)用程序的方法。這種方法以基于模型的軟件和分布式系統(tǒng)描述開始,以自動代碼生成和可重復(fù)的測試結(jié)束。這種方法簡化了工具鏈的使用。

            在AUTOSAR面世之后三年,AUTOSAR開發(fā)成員在2007年發(fā)布了2.1版本。此時,AUTOSAR的發(fā)展到達了一個穩(wěn)定的階段。幾個不同的開發(fā)項目對AUTOSAR的實用性進行了測試。在商業(yè)領(lǐng)域里,“AUTOSAR評估系統(tǒng)”已經(jīng)完成?,F(xiàn)在,AUTOSAR已經(jīng)做好進入到產(chǎn)品ECU的準(zhǔn)備了。



          AUTOSAR體系結(jié)構(gòu)

            為了實現(xiàn)AUTOSAR的目標(biāo),即實現(xiàn)應(yīng)用程序和基礎(chǔ)模塊之間的分離,汽車電子被抽象成幾個層,如圖1所示。

            與實際微控制器之間的連接,也就是物理基礎(chǔ),抽象為微控制器抽象層(Microcontroller Abstraction Layer),用于映射微控制器的功能和外圍接口。微控制器抽象層定義了內(nèi)存接口、I/O驅(qū)動接口和通信連接接口,同時還可以模擬一些微控制器無法提供的功能。第二層是ECU抽象層(ECU Abstraction Layer)。這一層在ECU相關(guān)硬件的基礎(chǔ)上,為ECU提供外圍設(shè)備的驅(qū)動程序。第三層是服務(wù)層(Services Layer)。這一層提供了各種服務(wù),例如網(wǎng)絡(luò)服務(wù)、內(nèi)存管理、網(wǎng)絡(luò)通信和操作系統(tǒng)。服務(wù)層在很大程度上獨立于硬件系統(tǒng)。第四層的RTE真正實現(xiàn)了應(yīng)用程序和基礎(chǔ)軟件之間的分隔。RTE負(fù)責(zé)處理應(yīng)用程序集成以及應(yīng)用程序與基礎(chǔ)軟件模塊之間的數(shù)據(jù)交換。RTE的存在是真正實現(xiàn)應(yīng)用程序重用的基礎(chǔ)。由于RTE 預(yù)定義了相關(guān)的接口,所以開發(fā)人員可以在對硬件一無所知的情況下進行應(yīng)用軟件的開發(fā),并將這個軟件應(yīng)用在任何符合AUTOSAR標(biāo)準(zhǔn)的ECU中。

            虛擬功能總線(Virtual Functional Bus)形成了這些層的配置基礎(chǔ)。通過這條虛擬總線,所有汽車電子通信組件都可以進行抽象,同時使用預(yù)先定義的端口;而對于虛擬功能總線來說,ECU內(nèi)部通信和外部總線通信并沒有什么區(qū)別。這種區(qū)別要等到系統(tǒng)布局以及ECU的具體功能最終確定才會體現(xiàn)出來。軟件組件本身對于這種區(qū)別并不關(guān)注,因此我們可以在獨立的情況下開發(fā)軟件組件。軟件組件被分成若干個可執(zhí)行單元,即運行實體。當(dāng)某一個規(guī)定的事件發(fā)生時,就會有對應(yīng)的運行實體被觸發(fā)。這樣的事件有可能是一個新的傳感器信號 ,也有可能是一個周期性定時。從虛擬功能總線的角度對電子系統(tǒng)的形式化描述最終定義了相關(guān)軟件組件的接口。因此,應(yīng)用軟件的開發(fā)可以獨立于具體的ECU。

            RTE實現(xiàn)了對于I/O、內(nèi)存和其它基本服務(wù)的訪問。利用基于模型的描述,可以針對指定的ECU定制RTE,這樣可以適應(yīng)不同的需求并節(jié)省資源。

          方法

            在定義ECU軟件體系架構(gòu)的同時,AUTOSAR標(biāo)準(zhǔn)也定義了開發(fā)AUTOSAR系統(tǒng)的方法。符合經(jīng)過確認(rèn)的開發(fā)過程是開發(fā)軟件的一個重要前提。需求列表中的不足會在開發(fā)早期被發(fā)現(xiàn),軟件組件的重用使得開發(fā)流程變得簡化,整個系統(tǒng)也就更加可靠。但是,這種方法也允許一定程度的自由:例如,用戶可以自己決定是使用從上至下還是從下至上的開發(fā)流程。

            AUTOSAR的目的在于通過工具為軟件開發(fā)流程提供通用的支持。成熟的工具用于需求的結(jié)構(gòu)化實現(xiàn)和相應(yīng)的管理,同時建立相應(yīng)的配置。

            第一步包括三個主要方面的形式化描述:軟件(軟件組件),ECU(ECU資源)和系統(tǒng)約束。合適的編輯工具用于創(chuàng)建完整的系統(tǒng)描述,如圖2所示。



            系統(tǒng)配置作為ECU配置的基礎(chǔ),而用戶可以利用配置工具根據(jù)ECU配置生成基礎(chǔ)軟件組件。在開發(fā)流程的末期,有多種生成工具可以用來生成RTE和基礎(chǔ)軟件。開發(fā)過程中的所有設(shè)計和配置數(shù)據(jù)都用統(tǒng)一的文件格式保存。為此,AUTOSAR定義了一種基于XML的文件格式。一方面,統(tǒng)一的文件格式保證了開發(fā)流程的通用性;另一方面,它簡化了開發(fā)工具之間的無縫集成。

          上一頁 1 2 下一頁

          關(guān)鍵詞: AUTOSARECU汽車軟

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();