Elektroniknet Logo

Safety für Auto, Industrie und Medizin

ARM Cortex-R52 für funktionale Sicherheit


Fortsetzung des Artikels von Teil 3

Bis zu Quad-Core im Lockstep-Betrieb

Bild 7. Der Cortex-R52 in einem Cluster mit 2-stufiger MPU, bis zu 32 KB großen Caches und drei TCM-Ports für schnelle Speicherzugriffe. Bis zu vier Cluster können auf einem SoC implementiert werden.
Bild 7. Der Cortex-R52 in einem Cluster mit 2-stufiger MPU, bis zu 32 KB großen Caches und drei TCM-Ports für schnelle Speicherzugriffe. Bis zu vier Cluster können auf einem SoC implementiert werden.
© ARM

Ein TCM-Port mehr als beim Cortex-R5

Bild 7 zeigt einen Cortex-R52 in einer Quad-Core-Konfiguration; dies ist ohne Lock-Step-Operation die maximale Anzahl CPUs in einem Cluster. Jede CPU enthält für die dediziert ihr zugewiesenen Blöcke einen 128 bit breiten AXI-4-Bus als Master, das Cluster teilt zudem noch einen weiteren AXI-4-Bus, der ebenfalls 128 bit breit ist und als Slave fungiert. Über diesen kann z. B. geteilter Flash- oder RAM-Speicher angebunden werden. Jede CPU verfügt zusätzlich über eine eigene Flash-Schnittstelle, jeweils mit 0, 8, 16 oder 32 KB konfigurierbaren Cache für Daten bzw. Instruktionen und vor allen Dingen über jetzt drei TCM-Ports (Tightly Coupled Memory) für schnelle Speicherzugriffe. Der Cortex-R5 musste noch mit zwei TCM-Ports Vorlieb nehmen.

Der Vorteil dieser für Daten oder Code konfigurierbaren Speicherregion ist, dass die CPU auf den TCM bei jedem Taktzyklus ohne Wait-States zugreifen kann und dadurch die Zugriffe seitens des Timings vorraussagbar sind. Normalerweise wird der TCM genutzt, um performance-kritische Daten und Code sowie Interrupt-Handler, Daten für Echtzeit-Tasks und OS-Kontrollstrukturen abzulegen.

Ebenfalls implementiert ist der Low-Latency-Port (LLPP), über den auf zeitkritische Peripherien wie Timer, Semaphore oder Kommunikationskanäle zugegriffen werden kann. Es handelt sich um einen dedizierten 32-bit-AMBA-Port (AXI oder optional AHB). Per ECC können für Caches und TCM Einzelbitfehler korrigiert und 2-bit-Fehler erkannt werden. ECC ist für alle externen Schnittstellen möglich.

Flexible Lockstep-Konfiguration

Bild 8. Mögliche Lock-Step-Konfigurationen bei Implementierung des Cortex-R52 in einem SoC mit bis zu acht CPUs: Lock-Step-Dual-Prozessor (links), Dual-Lock-Step (Mitte) und Shared-Memory-Lock-Step (Rechts).
Bild 8. Mögliche Lock-Step-Konfigurationen bei Implementierung des Cortex-R52 in einem SoC mit bis zu acht CPUs: Lock-Step-Dual-Prozessor (links), Dual-Lock-Step (Mitte) und Shared-Memory-Lock-Step (Rechts).
© ARM

Unterstützt warden seitens der Implementierung durch die zahlreichen verfügbaren Ports sowohl Lock-Step-Dual-Prozessor-Architekturen, bei denen zwei CPUs (Master und Checker) denselben Code ausführen (Bild 8 links) als auch Dual-Lock-Step-Architekturen, bei denen zwei Abschalt-Ausfall-Kanäle (Fail-Silent) mit jeweils einer Lock-Step-Dual-Prozessor-Architektur vorhanden sind (Bild 8 Mitte).

Auch Shared-Memory-Dual-Lockstep-Architekturen (Bild 8 rechts) sind möglich. Letztere bietet die Flexibilität von entweder zwei parallelen Fail-Silent-Kanälen für doppelte Performance oder – wenn die beiden Kanäle in einem Lock-Step-Modus betrieben werden – ein Fail-Operational-System, bei dem im Fehlerfall zumindest ein Notbetrieb ermöglicht wird.

Die theoretisch maximale Konfiguration sind im Lockstep-Betrieb acht CPU-Cores (Quad-Core-Cluster mit jeweils doppelten CPUs) auf einem Chip, ob man diese jemals in der Praxis sehen wird, sei einmal dahingestellt. Wahrscheinlicher erscheinen uns z. B. für ADAS- und Robotik-Anwendungen Konfigurationen mit sogenannten »Safety Islands« (z. B. neben 1-4 Cortex-A-Applika¬tionsprozessoren ein Cortex-A52 in Lock-Step-Betrieb) oder für Powertrain- und Chassis-Anwendungen zwei Cortex-R52 in Lock-Step-Konfiguration und zwei weitere Cortex-R52 ohne Lock-Step. Wie in Bild 7 ersichtlich ist, wird der generische Interrupt-Controller (GIC) von allen R52-Clustern geteilt. Auch er kann bei entsprechender Implementierung neben den CPUs ebenfalls in einer Lock-Step-Konfiguration betrieben werden.

Mitgeliefert von ARM wird ein Safety-Manual, eine Fehler-Modi- und Auswirkungsanalyse von Fehlern sowie ein Entwicklungs-Schnittstellen-Report. Erreicht werden SIL 3/IEC61508 und ASIL D/ISO 26262. Gegen zufällige Fehler werden neben den beschriebenen Hardware-Features auch BIST-Software-Bibliotheken (Build-In-Self-Test) mitgeliefert.

Konsolidierung unterschiedlichster Funktionen

ARM hat seine Architekturen für Cortex-A- (Virtualisierung) und Cortex-R-Cores (Unterstützung von Echtzeit-Betriebssys¬temen) quasi verheiratet und damit die Anforderungen aus der Embedded- mit denen aus der Konsumer-Welt zusammengeführt. ARMs Lizenznehmer mit Entwicklungspartner STMicroelectronics an der Spitze können jetzt Silizium bauen, das Embedded-Entwicklern z. B. aus Automotive und Automatisierung mit höchster Rechenleistung und Echtzeitfähigkeit endlich die lang angestrebte Konsolidierung von unterschiedlichsten Funktionen (Domänen-Controller) erlaubt. Der Cortex-R52 ist – möglichweise in Kombination mit Cortex-M4-MCUs auf einem SoC - dazu geeignet, dabei zu helfen, die größten Herausforderungen dieser Industrien zu lösen. 
 


  1. ARM Cortex-R52 für funktionale Sicherheit
  2. Drei neue Register für Hypervisor-Modus
  3. Verbessertes Interrupt-Handling
  4. Bis zu Quad-Core im Lockstep-Betrieb

Verwandte Artikel

ARM Germany GmbH