探索 AUTOSAR 與 英飛凌 AURIX? TC4x MCAL 解決方案-下探索 AUTOSAR 與 英飛凌 AURIX? TC4x MCAL 解決方案-下
往期回顧
AURIX? TC4x 微控制器的并行處理單元(PPU)簡介
AURIX? TC4x免費開發環境介紹
英飛凌新一代MCU AURIX? TC4x 即將量產
緣起今生:英飛凌車規MCU全系支持Rust 語言開發
探索 AUTOSAR 與 英飛凌 AURIX? TC4x MCAL 解決方案-上
英飛凌的AURIX? TC4x微控制器家族是一個多核 (multi-core)系統并且增強支持虛擬化 (virtualization)功能和分區(partitioning)功能。它可以單獨在每個核上啟用/禁用虛擬化。并且MCAL軟件可以與這些構建在single core, multi-core 或者 virtualized cores上的應用程序無縫配合。
01
AURIX? TC4x MCAL的虛擬化
和分區功能
英飛凌為AURIX? TC4x微控制器家族提供完備的MCAL驅動層,并且這些驅動符合AUTOSAR R20-11(Memory drivers 滿足R20-11)標準。
AURIX? TC4x 的MCAL是具備滿足ASIL D安全等級的驅動程序,并且增強對multi-core, virtualization, ASIL partitioning的支持,從而提供更大的靈活性,簡化客戶的軟件分區和系統級安全論證。
02
AURIX? 的多核 、虛擬化和
分區的聯系
1
AURIX?在multi-core環境下的Partitioning (no virtualization):

2
AURIX?在multi-core環境下的virtualization 以及Partitioning:

AURIX? TC4x TriCore?1.8 針對
虛擬化的增強功能
04
AURIX? TC4x 的虛擬化和分區
在MCAL中的應用案例
1
MCAL的應用案例 - monolithic software
在monolithic Software Stack的應用實例中, Software Stack作為一個不被分割的monolithic Software工作在單核上,包含一個獨立的MCAL代碼實例,所有的硬件資源都被分配給這個monolithic Software。
2
MCAL的應用案例 - multi-core
在multi-core應用實例中,software stack工作在多核上,software stack可能在每一個核上都有很多分區,并且為每個分區分配了不同的硬件資源,每個分區可以有不同的ASIL,這是單核實例的擴展,以支持多核系統。
3
MCAL的應用案例 - multiple SW stacks
在multiple software stack應用實例中,multiple software stacks (binaries)被分配到芯片的不同的執行單元上。每一個binary 內包含一個MCAL的實例,而且里面包含一些硬件資源被分配到分區當中。每一個binary是獨立的,自包含的,可運行在單核或多核上。
4
MCAL的應用案例 - single core with partitions

在single core應用實例中,software stack工作在單核上,software stack可以包括多個分區。但是,MCAL軟件本身僅支持從單個分區執行。所有驅動程序所需的硬件資源的所有實例都分配給該分區。
在MCAL軟件需要從single core上的不同分區進行操作的情況下,例如不同分區位于不同ASIL的情況,“integration software”應為試圖執行MCAL的每個分區提供唯一標識符。MCAL允許“integration software”通過“configuration module and stub implementation for static source code”提供該標識符。如果沒有integration software的這種實現,MCAL軟件就無法在同一核的多個分區上運行。
5
MCAL的應用案例 - virtualized core
在virtualized core應用實例中,software stack工作在virtualized core上(VM1 to VM7), 這樣的配置使得應用實例可以支持多個分區運行在同一個physical core上,并且每個分區可以有不同的ASIL等級。這里每個virtualized core可以安排一個分區的一個物理核上,也可以安排最多7個分區(using VM1 to VM7) 在一個物理核上。
在MCAL軟件需要從一個virtualized core上的不同分區進行操作的情況下,“integration software”應為試圖執行MCAL的每個partition提供唯一標識符。MCAL允許“integration software”通過“configuration module and stub implementation for static source code” 的方式提供該標識符。如果沒有integration software的這種實現,MCAL軟件就無法在同一核上的多個分區上運行。
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。