0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AutoSAR構(gòu)架以及在多核汽車MCU的運(yùn)行

麥辣雞腿堡 ? 來(lái)源:芯小二的下午茶 ? 作者:JokerCK ? 2023-07-24 10:57 ? 次閱讀

小二之前只開發(fā)過異構(gòu)雙核的芯片,各跑各的軟件(比如各自運(yùn)行一套FreeRTOS,反正組件裁剪下也不大),針對(duì)類似Stellar,AURIX這樣的同構(gòu)多核的軟件不了解;

比如針對(duì)AutoSAR,在AURIX 三核處理器上,上如何運(yùn)行?看到CSDN上JokerCK的文章,覺得好像懂了,記錄如下,水平有限,歡迎指正

閱讀前,一些說(shuō)明:

RPC,遠(yuǎn)程過程調(diào)用(Remote Procedure Call),一般是核間通信

SWC即Software Component縮寫,一般位于AUTOSAR架構(gòu)的Application層

AUTOSAR分四層:Application、RTE(RunTime Environment,運(yùn)行環(huán)境)、BSW(Basic
Software,基礎(chǔ)軟件)和MCAL(MicroController Abstration Layer,微處理器抽象層 )

多核架構(gòu)-基于AUTOSAR 4.3

AUTOSAR 4.3中定義了如下多核架構(gòu),基于這份架構(gòu),Application SWC 可以按照需求分到不同的核上,但是可以看到絕大多數(shù)的BSW Module 都在一個(gè)核上,部分BSW Module會(huì)在兩個(gè)核上都存在實(shí)例

圖片

RTE橫跨多核之間,為SWC與BSW Module之間提供Mapping。這個(gè)Mapping分為兩種,一種是這個(gè)BSW Module提供了在對(duì)應(yīng)核上的Satellite時(shí),另一種是沒有Staellite,如下圖:

圖片

基本概念介紹

AUTOSAR描述了關(guān)于跨核/Partition調(diào)用服務(wù)的三種方式,一種就是直接,通過RPC(Remote Procee Call),這種方式下RTE可能會(huì)替你生成一系列的保護(hù)措施,比如SpinLock;第二種就是BSW
Satellite,第三種就是Proxy,他主要是通過將直接的跨核C/S調(diào)用轉(zhuǎn)成了資源消耗更少的S/R接口調(diào)用,如下圖:

圖片

RPC沒有固定的機(jī)制,如上述提到的SpinLock就是其中一種,但是無(wú)論哪種機(jī)制,其為了解決數(shù)據(jù)一致性所帶來(lái)的額外開銷都是比較大的。所以Proxy以及Statellite機(jī)制的目的就是為了提高在所有的核上對(duì)BSW
Module的基本服務(wù)的高效的訪問。

也就是說(shuō),利用Proxy或者Satellite機(jī)制之后,你就不需要像以前為了性能考慮而將需要使用特定BSW
Module的服務(wù)的SWC,一定與這個(gè)BSW Module放在一個(gè)核,為設(shè)計(jì)帶來(lái)了靈活性。當(dāng)然,即使是使用了Proxy或者Satellite,仍然會(huì)有一定的資源開銷,但是這相比與直接的RPC來(lái)說(shuō),都微乎其微。

圖片

使用Satellite在多核中主要有如下兩個(gè)好處:

  1. (improved efficiency)RTE不再需要生成RPC機(jī)制;
  2. 因?yàn)镾tatellite也是BSW Module的一部分,他承擔(dān)了一部分的工作,很顯然這會(huì)帶來(lái)性能提升,因?yàn)檎{(diào)用方所在的核也會(huì)執(zhí)行一部分的任務(wù),即分擔(dān)了主核的一些工作。

AUTOSAR WdgM, Dem, EcuM, Det 都提供了Satellite機(jī)制。

圖片

簡(jiǎn)單說(shuō),Proxy就是用更輕量級(jí)的S/R接口取代了耗時(shí)的跨核的C/S調(diào)用(很顯然,跨核C/S直接調(diào)用,調(diào)用方要等被調(diào)用方執(zhí)行完成),最終實(shí)際的操作肯定還是C/S函數(shù),但是這已經(jīng)由原來(lái)的跨核變成了同一個(gè)核內(nèi)由Proxy去直接調(diào)用BSW服務(wù)(參考上圖),顯然更好。

比較常見的有Com-Proxy和NVM-Proxy,其中Com-Proxy的Tx要注意要放到Com_MainFunctionTx之前:

術(shù)語(yǔ)

Core Types

多核架構(gòu)中有Master Core和Slave Core之分,這是針對(duì)處理器而言的,如Tc27x系列,Core0是主核,但是AUTOSAR又有個(gè)概念叫做BSW Core,即絕大多數(shù)的BSW模塊都Mapping在BSW Core上。BSW Core可以是Master Core也可以是其他的Slave Core之一。

Partition

AUTOSAR中,Partition指的是一組SWC,BSW Module(Satellite),Task的合集,具體體現(xiàn)就是某個(gè)OS Application。Partition有等級(jí)劃分,從QM到ASILD,對(duì)應(yīng)MPU的第幾個(gè)Set。需要注意一點(diǎn),OS Application也有Trusted和Non-Trusted之分,但是這根ASIL等級(jí)無(wú)關(guān),QM的Partition也可以是Trusted的。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17148

    瀏覽量

    351212
  • 架構(gòu)
    +關(guān)注

    關(guān)注

    1

    文章

    514

    瀏覽量

    25472
  • 汽車
    +關(guān)注

    關(guān)注

    13

    文章

    3515

    瀏覽量

    37317
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AUTOSAR架構(gòu)下的多核通信介紹

    隨著汽車ECU迅速的往域控制器方向發(fā)展,ECU要處理的任務(wù)越來(lái)越多,單核CPU的負(fù)載越來(lái)越大,多核ECU勢(shì)在必行。AUTOSAR架構(gòu)下OS支持多核處理,本系列文章將詳細(xì)介紹
    的頭像 發(fā)表于 11-13 09:24 ?2344次閱讀
    <b class='flag-5'>AUTOSAR</b>架構(gòu)下的<b class='flag-5'>多核</b>通信介紹

    Autosar軟件開發(fā)技術(shù)概述

    AUTOSAR是由全球汽車制造商、部件供應(yīng)商及其他電子、半導(dǎo)體和軟件系統(tǒng)公司聯(lián)合建立,各成員保持開發(fā)合作伙伴關(guān)系。自2003年起,各伙伴公司攜手合作,致力于為汽車工業(yè)開發(fā)一個(gè)開放的、標(biāo)準(zhǔn)化的軟件架構(gòu)
    發(fā)表于 12-26 10:34

    AUTOSAR MCAL MCU模塊的相關(guān)資料分享

    作者:Stephen Du免責(zé)聲明: 本文為個(gè)人學(xué)習(xí)筆記及總結(jié),僅代表個(gè)人觀點(diǎn),盡可能保證內(nèi)容準(zhǔn)確性。復(fù)制/轉(zhuǎn)發(fā)請(qǐng)注明來(lái)源/作者。歡迎添加微信交流學(xué)習(xí)。AUTOSAR MCAL MCU模塊解析1.
    發(fā)表于 11-03 08:18

    AUTOSAR的相關(guān)資料推薦

    AUTOSAR基礎(chǔ)篇之EcuM_wto9109的博客-CSDN博客【AutoSAR】【EcuM】ECU狀態(tài)管理專注汽車軟件開發(fā)、AutoSAR、車載以太網(wǎng)、SOA、EE架構(gòu)。07-08
    發(fā)表于 01-27 08:25

    介紹一種適配RT-Thread內(nèi)核的autosar操作系統(tǒng)

    */NVIC_SystemReset();}}??寫好mcal的mcu后編譯成可執(zhí)行文件下載到板子上,AUTOSAR能夠n32g45x上正常運(yùn)行,可以看到三個(gè)任務(wù)塊
    發(fā)表于 05-19 15:40

    基于RT-Thread內(nèi)核的AUTOSARn32g上的實(shí)現(xiàn)方案

    1、基于RT-Thread內(nèi)核的AUTOSARn32g上的實(shí)現(xiàn)隨著小米宣布造車,當(dāng)下“軟件定義汽車”的趨勢(shì)如火如荼,autosar的全稱Automotive Open System
    發(fā)表于 07-27 14:30

    AUTOSAR信息安全框架和關(guān)鍵技術(shù)相關(guān)資料介紹

    ,進(jìn)而可以偽造報(bào)文控制車輛。SecOC 是AUTOSAR 軟件包中添加的信息安全組件,主要增加了加解密運(yùn)算、密鑰管理、新鮮值管理和分發(fā)等一系列的功能和新要求。該模塊的主要作用是為總線上傳輸?shù)臄?shù)據(jù)提供身份驗(yàn)證,它可以有效地檢測(cè)出數(shù)據(jù)回放、欺騙
    發(fā)表于 11-24 16:51

    LLCE driver是否可以autosar os中運(yùn)行

    S32DS、RTD和LLCE CAN驅(qū)動(dòng)有對(duì)應(yīng)的工具版本嗎?我想知道,LLCE driver是否可以autosar os中運(yùn)行,是否有關(guān)于LLCE Driver +S32DS3.5的文檔可以學(xué)習(xí)。
    發(fā)表于 04-18 09:21

    面向汽車應(yīng)用的AUTOSAR設(shè)計(jì)技巧

    面向汽車應(yīng)用的AUTOSAR設(shè)計(jì)技巧 汽車OEM正在開發(fā)基于AUTOSAR的電子系統(tǒng)以應(yīng)對(duì)當(dāng)代汽車中日益復(fù)雜的軟件。
    發(fā)表于 01-15 10:46 ?1144次閱讀

    Freescale MPC5676R多核32位MCU汽車動(dòng)力總成解決方案

    Freescale公司的MPC5676R是采用Power Architecture?技術(shù)的32位多核Qorivva MCU,主要用在汽車動(dòng)力總成系統(tǒng)
    發(fā)表于 12-01 10:09 ?2568次閱讀
    Freescale MPC5676R<b class='flag-5'>多核</b>32位<b class='flag-5'>MCU</b><b class='flag-5'>汽車</b>動(dòng)力總成解決方案

    多核處理器構(gòu)架的高速JPEG解碼算法

    多核處理器構(gòu)架的高速JPEG解碼算法,很好的資料,快來(lái)學(xué)習(xí)吧
    發(fā)表于 02-18 13:54 ?0次下載

    AUTOSAR MCAL解析:MCU

    作者:Stephen Du免責(zé)聲明: 本文為個(gè)人學(xué)習(xí)筆記及總結(jié),僅代表個(gè)人觀點(diǎn),盡可能保證內(nèi)容準(zhǔn)確性。復(fù)制/轉(zhuǎn)發(fā)請(qǐng)注明來(lái)源/作者。歡迎添加微信交流學(xué)習(xí)。AUTOSAR MCAL MCU模塊解析1.
    發(fā)表于 10-27 18:36 ?29次下載
    <b class='flag-5'>AUTOSAR</b> MCAL解析:<b class='flag-5'>MCU</b>

    AP AutosarSOA開發(fā)中的應(yīng)用方法論

    近年來(lái),隨著汽車的智能化程度越來(lái)越高,處理器的性能要求也大大提高。通常是CP Autosar端采用多核處理器移植相應(yīng)的軟件算法,對(duì)于高階自動(dòng)駕駛來(lái)說(shuō)其對(duì)處理能力的需求遠(yuǎn)超
    的頭像 發(fā)表于 10-27 10:24 ?1528次閱讀

    如何在AUTOSAR OS系統(tǒng)運(yùn)行時(shí)使用事件Event呢?

    AUTOSAR OS系統(tǒng)中,事件用于向任務(wù)發(fā)送信號(hào)信息。本節(jié)解釋事件是什么,如何配置它們以及如何在運(yùn)行時(shí)使用它們。
    發(fā)表于 05-22 10:04 ?2740次閱讀
    如何在<b class='flag-5'>AUTOSAR</b> OS系統(tǒng)<b class='flag-5'>運(yùn)行</b>時(shí)使用事件Event呢?

    基于Tricore芯片的AUTOSAR架構(gòu)下的多核啟動(dòng)

    隨著汽車ECU迅速的往域控制器方向發(fā)展,ECU要出來(lái)任務(wù)越來(lái)越多,單核CPU的負(fù)載越來(lái)越大,多核ECU勢(shì)在必行。AUTOSAR架構(gòu)下OS支持多核處理,本系列文章將詳細(xì)介紹
    的頭像 發(fā)表于 10-23 10:15 ?3243次閱讀
    基于Tricore芯片的<b class='flag-5'>AUTOSAR</b>架構(gòu)下的<b class='flag-5'>多核</b>啟動(dòng)