基于 Arm Cortex-R82AE 簡化高性能區(qū)域控制器的軟件開發(fā)
作者:Arm 汽車事業(yè)部高級產(chǎn)品經(jīng)理 Prakash Mohapatra
本文引用地址:http://cafeforensic.com/article/202408/461971.htm在 之前的一篇推文 中我曾談到過,汽車行業(yè)的近期發(fā)展趨勢正在推動對汽車架構(gòu)中區(qū)域控制器和域控制器的需求。而基于 Armv8-R 的 Arm Cortex-R52 和 Cortex-R52+ 核心正是滿足區(qū)域控制器和域控制器設計和性能需求的理想之選。Cortex-R52 和 Cortex-R52+ 已廣泛應用于汽車設計領(lǐng)域,既包括獨立的微控制器 (MCU),也有與 Cortex-A 核心結(jié)合的異構(gòu)設計。
對于更多特性和功能的需求使得車載算力要求與日劇增。在追求更高性能的過程中,區(qū)域控制器的發(fā)展也齊頭并進。為應對新興的電子/電氣 (E/E) 架構(gòu)引發(fā)的應用整合趨勢,對更高性能區(qū)域控制器的需求愈發(fā)高漲。在某些設計場景中,可能需要多個 Cortex-R52 和 Cortex-R52+ 集群來滿足性能要求。
新的 Arm Cortex-R82AE
為了滿足區(qū)域控制器的高性能需求, Arm 推出了基于 Armv8-R AArch64 架構(gòu)的 Cortex-R82AE 。Cortex-R82AE 核心現(xiàn)已向合作伙伴開放授權(quán)并可部署到其設計中。 作為 首款采用 Armv8-R AArch64 架構(gòu)的汽車增強 (AE) 處理器,Cortex-R82AE 提供先進的功能安全性和出色的單核性能。Cortex-R82AE 不僅拓展了性能邊界,更為汽車合作伙伴提供了擴展產(chǎn)品系列的升級途徑。
Cortex-R82AE 的優(yōu)勢
Cortex-R82AE 進一步擴大了已被廣泛采用的 Cortex-R 系列在汽車市場的覆蓋范圍。這款 64 位處理器支持每個集群多達八個核心。其內(nèi)存系統(tǒng)經(jīng)過增強后,具備更寬的集群端口和共享 L2 緩存,能夠提供更高的性能。與此同時,通過支持集群內(nèi)和集群間一致性,Cortex-R82AE 簡化了面向更高計算對稱多處理 (SMP) 設計的軟件開發(fā)流程。
此外,作為首款汽車增強 Cortex-R 處理器,Cortex-R82AE 配備了可選的內(nèi)存管理單元 (MMU),能夠支持 Linux、Adaptive AUTOSAR 等功能強大的操作系統(tǒng)。除此之外,與 Cortex-R 系列的其他核心一樣,Cortex-R82AE 也配備了內(nèi)存保護單元 (MPU)。它支持實時虛擬化,可在單個核心上運行功能強大的操作系統(tǒng),以及 Zephyr、FreeRTOS、Classic AUTOSAR 等實時操作系統(tǒng)。虛擬機管理程序可確保運行不同軟件組件的虛擬機之間互不干擾 (FFI)。
Cortex-R82AE 可與 Cortex-A 核心等應用處理器一起部署在異構(gòu)設計中。由于應用處理器核心集群和 Cortex-R82AE 集群具有統(tǒng)一的內(nèi)存視圖,對大地址位寬的支持簡化了系統(tǒng)集成。在這種異構(gòu)設計中,Cortex-R82AE 的主要用例之一是充當安全島。安全島的目的是進行故障報告并驗證應用處理器的運行情況。它還可用于實時任務、啟動編排和系統(tǒng)測試。
升級至 Cortex-R82AE
為了滿足區(qū)域控制器和安全島設計的新興需求,目前采用 Cortex-R52 和 Cortex-R52+ 的合作伙伴考慮在其即將推出的產(chǎn)品中升級到 Cortex-R82AE。為了支持這一升級過程,Arm 精心編制了一份指南,為合作伙伴如何將其現(xiàn)有軟件遷移到基于 Cortex-R82AE 的設計中提供建議。該指南同樣適用于 Cortex-R82AE 的新項目開發(fā)。除了提供軟件遷移指導外,該指南還討論了基于 Armv8-R AArch32 的 Cortex-R52 和 Cortex-R52+,與基于 Armv8-R AArch64 的 Cortex-R82AE 之間的主要區(qū)別。
其中包含以下幾個部分:
指令集架構(gòu) (ISA) :該節(jié)列出了 Armv8-R AArch32 和 Armv8-R AArch64 架構(gòu)上使用的不同指令集。該節(jié)還闡述了這兩種架構(gòu)在浮點支持和寄存器集方面的差異。
異常模型 : 深入探討這兩種架構(gòu)中的異常向量表和異常處理的細節(jié)。
內(nèi)存模型 : Armv8-R AArch32 僅支持物理地址;而 Armv8-R AArch64 還支持虛擬內(nèi)存。該節(jié)討論內(nèi)存映射和虛擬內(nèi)存系統(tǒng)架構(gòu) (Virtual Memory System Architecture, VMSA),僅 Armv8-R AArch64 支持 VMSA 架構(gòu)。
系統(tǒng)寄存器 : 深入探討這兩種架構(gòu)中包含的系統(tǒng)寄存器。
安全性 : Cortex-R82AE 支持“僅安全訪問”狀態(tài),因此它可以發(fā)起正常訪問和安全內(nèi)存訪問。而基于 Armv8-R AArch32 的 Cortex-R52 和 Cortex-R52+ 僅支持正常訪問狀態(tài)。
虛擬化 : 利用 EL2 MPU 技術(shù)的 Cortex-R82AE 以及 Cortex-R52 和 Cortex-R52+ 核心均支持虛擬化,可確保在同一設備上運行的多個混合關(guān)鍵軟件組件之間互不干擾 (FFI)。而 Cortex-R82AE 具有可選的 EL1 MMU,適合在虛擬機中運行 Linux 等功能強大的操作系統(tǒng)的同時,使用 EL1 MPU 運行實時操作系統(tǒng)。
編譯器和優(yōu)化 :該節(jié)圍繞基于 Cortex-R52 和 Cortex-R52+,以及 Cortex-R82AE 的開發(fā),提供關(guān)于編譯選項的提示和指導。
評論