• 正文
    • 多核架構(gòu)-基于AUTOSAR 4.3
    • 基本概念介紹
    • 術(shù)語(yǔ)
  • 推薦器件
  • 相關(guān)推薦
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

AutoSAR,在多核汽車(chē)MCU中如何運(yùn)行

2023/06/29
5731
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

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

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

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

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

SWC即Software Component縮寫(xiě),一般位于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í),另一種是沒(méi)有Staellite,如下圖:

基本概念介紹

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

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

也就是說(shuō),利用Proxy或者Satellite機(jī)制之后,你就不需要像以前為了性能考慮而將需要使用特定BSW Module的服務(wù)的SWC,一定與這個(gè)BSW Module放在一個(gè)核,為設(shè)計(jì)帶來(lái)了靈活性。當(dāng)然,即使是使用了Proxy或者Satellite,仍然會(huì)有一定的資源開(kāi)銷(xiāo),但是這相比與直接的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ù)(參考上圖),顯然更好。

比較常見(jiàn)的有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的。

 

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
NCP45560IMNTWG-H 1 onsemi Load Switch, Integrated, ecoSWITCH™, 17 A, Fault Protection, DFN12 3x3, 0.5P, 3000-REEL

ECAD模型

下載ECAD模型
$1.77 查看
NE555PE4 1 Texas Instruments Single Precision Timer 8-PDIP 0 to 70

ECAD模型

下載ECAD模型
$0.47 查看
LMX2572RHAR 1 Texas Instruments 6.4-GHz low-power wideband RF synthesizer 40-VQFN -40 to 85

ECAD模型

下載ECAD模型
$119.42 查看

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計(jì)資源下載
  • 產(chǎn)業(yè)鏈客戶(hù)資源
  • 寫(xiě)文章/發(fā)需求
立即登錄