新聞中心

EEPW首頁(yè) > 汽車電子 > 設(shè)計(jì)應(yīng)用 > 探索 AUTOSAR 與 英飛凌 AURIX? TC4x MCAL 解決方案-下

探索 AUTOSAR 與 英飛凌 AURIX? TC4x MCAL 解決方案-下

作者: 時(shí)間:2025-01-13 來(lái)源:英飛凌 收藏

? 微控制器家族是一個(gè)多核 (multi-core)系統(tǒng)并且增強(qiáng)支持虛擬化 (virtualization)功能和分區(qū)(partitioning)功能。它可以單獨(dú)在每個(gè)核上啟用/禁用虛擬化。并且軟件可以與這些構(gòu)建在single core, multi-core 或者 virtualized cores上的應(yīng)用程序無(wú)縫配合。

本文引用地址:http://2s4d.com/article/202501/466293.htm

01

? 的 虛擬化

和分區(qū) 功能

為 AU RIX 微控制器家族提供完備的驅(qū)動(dòng)層,并且這些驅(qū)動(dòng)符合 R20-11(Memory drivers 滿足R20-11)標(biāo)準(zhǔn)。

AU RIX TC4x 的MCAL是具備滿足ASIL D安全等級(jí)的驅(qū)動(dòng)程序,并且增強(qiáng)對(duì)multi-core, virtualization, ASIL partitioning的支持,從而提供更大的靈活性,簡(jiǎn)化客戶的軟件分區(qū)和系統(tǒng)級(jí)安全論證。

02

? 的多核 、 虛擬化和

分區(qū) 的聯(lián)系

1

AU RIX 在multi-core環(huán)境下的Partitioning (no virtualization):

2

AU RIX 在multi-core環(huán)境下的virtualization 以及Partitioning:

03

AURIX? TC4x TriCore?1.8 針對(duì)

虛擬化的增強(qiáng)功能

TriCore?1.8增強(qiáng)了硬件對(duì)virtualization的支持,采用獨(dú)特的設(shè)計(jì),針對(duì)virtualization應(yīng)用所需的Hypervisor而配備的功能寄存器和特殊指令集,在確保安全前提下,能夠快速在Hypervisor 的VMx (VM: Virtual Machine) 間切換。TriCore?1.8 每個(gè)core內(nèi)部部署HRHV, HRA, HRB 三組虛擬機(jī)管理寄存器, 對(duì)VMx任務(wù)進(jìn)行管理,該策略支持虛擬機(jī)VMx之間的相互隔離和獨(dú)立運(yùn)行。通常HRHV 用于管理VM0的Hypervisor 運(yùn)行,HRA用于管理Real Time 虛擬機(jī)VM1運(yùn)行,  而HRB 用于可配置的多達(dá)6個(gè)虛擬機(jī)VM2…7的運(yùn)行管理。

04

AURIX? TC4x 的虛擬化 和 分區(qū)

在MCAL中的應(yīng)用案例

1

MCAL的應(yīng)用案例 - monolithic software

在monolithic Software Stack的應(yīng)用實(shí)例中, Software Stack作為一個(gè)不被分割的monolithic Software工作在單核上,包含一個(gè)獨(dú)立的MCAL代碼實(shí)例,所有的硬件資源都被分配給這個(gè)monolithic Software。

2

MCAL的應(yīng)用案例 - multi-core

在multi-core應(yīng)用實(shí)例中,software stack工作在多核上,software stack可能在每一個(gè)核上都有很多分區(qū),并且為每個(gè)分區(qū)分配了不同的硬件資源,每個(gè)分區(qū)可以有不同的ASIL,這是單核實(shí)例的擴(kuò)展,以支持多核系統(tǒng)。

3

MCAL的應(yīng)用案例 - multiple SW stacks

在multiple software stack應(yīng)用實(shí)例中,multiple software stacks (binaries)被分配到芯片的不同的執(zhí)行單元上。每一個(gè)binary 內(nèi)包含一個(gè)MCAL的實(shí)例,而且里面包含一些硬件資源被分配到分區(qū)當(dāng)中。每一個(gè)binary是獨(dú)立的,自包含的,可運(yùn)行在單核或多核上。

4

MCAL的應(yīng)用案例 - single core with partitions

在single core應(yīng)用實(shí)例中,software stack工作在單核上,software stack可以包括多個(gè)分區(qū)。但是,MCAL軟件本身僅支持從單個(gè)分區(qū)執(zhí)行。所有驅(qū)動(dòng)程序所需的硬件資源的所有實(shí)例都分配給該分區(qū)。

在MCAL軟件需要從single core上的不同分區(qū)進(jìn)行操作的情況下,例如不同分區(qū)位于不同ASIL的情況,“integration software”應(yīng)為試圖執(zhí)行MCAL的每個(gè)分區(qū)提供唯一標(biāo)識(shí)符。MCAL允許“integration software”通過(guò)“configuration module and stub implementation for static source code”提供該標(biāo)識(shí)符。如果沒(méi)有integration software的這種實(shí)現(xiàn),MCAL軟件就無(wú)法在同一核的多個(gè)分區(qū)上運(yùn)行。

5

MCAL的應(yīng)用案例 - virtualized core

在virtualized core應(yīng)用實(shí)例中,software stack工作在virtualized core上(VM1 to VM7), 這樣的配置使得應(yīng)用實(shí)例可以支持多個(gè)分區(qū)運(yùn)行在同一個(gè)physical core上,并且每個(gè)分區(qū)可以有不同的ASIL等級(jí)。這里每個(gè)virtualized core可以安排一個(gè)分區(qū)的一個(gè)物理核上,也可以安排最多7個(gè)分區(qū)(using VM1 to VM7) 在一個(gè)物理核上。

在MCAL軟件需要從一個(gè)virtualized core上的不同分區(qū)進(jìn)行操作的情況下,“integration software”應(yīng)為試圖執(zhí)行MCAL的每個(gè)partition提供唯一標(biāo)識(shí)符。MCAL允許“integration software”通過(guò)“configuration module and stub implementation for static source code” 的方式提供該標(biāo)識(shí)符。如果沒(méi)有integration software的這種實(shí)現(xiàn),MCAL軟件就無(wú)法在同一核上的多個(gè)分區(qū)上運(yùn)行。

參考文獻(xiàn):

  1. _EXP_BSWDistributionGuide.pdf” https://www.autosar.org/fileadmin/standards/R21-11/CP/_EXP_BSWDistributionGuide.pdf



關(guān)鍵詞: 英飛凌 AUTOSAR AURIX TC4x MCAL

評(píng)論


相關(guān)推薦

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

關(guān)閉