Anbieter zum Thema
Speziell für SIL 3 von IEC61508 ausgelegter Mikrocontroller

Die Mikrocontroller TMS570 sind speziell für den Safety Integrity Level 3 (SIL3) des IEC61508-Standards ausgelegt. Die TMS570LS-Familie verwendet auf dem Chip zwei identische ARM Cortex R4F CPUs, die dasselbe Programm im lock-step-Verfahren bearbeiten. Operationen und Ergebnisse beider Berechnungen werden in jedem CPU-Zyklus miteinander verglichen, um mögliche Fehler zu erkennen. Beide CPUs haben geometrische und zeitliche Diversität, um physikalische Fehler gemeinsamer Ursache zu erkennen. So ist die zweite R4F-CPU gespiegelt und gedreht und in der Abarbeitung um wenige Zyklen verzögert. Im Falle einer Fehlererkennung kann binnen weniger CPU-Zyklen ein fehlersicherer Zustand hergestellt werden. Da die Fehlererkennung rein von der Hardware bewerkstelligt wird, ist sie für die Software transparent.
In jeder CPU ist eine Fehlerkorrekturlogik integriert
Um Fehler im Programm- und Datenspeicher erkennen und darauf reagieren zu können, hat jede ARM Cortex R4F CPU eine integrierte Error-Correction-Logik (ECC), mit der sich einzelne Bitfehler korrigieren und Doppelfehler erkennen lassen. Zusätzlich werden intern Adress-Busse und Decoder überwacht.
Zwei Arten von Built-In-Self-Test-Modulen überwachen CPUs (LBIST) und Datenspeicher (PBIST). Das LBIST-Modul überprüft die ARM Cortex R4F CPU während der Initialisierung des Kontrollers oder während der laufenden Applikation auf versteckte CPU-Defekte. Das PBIST-Modul testet das RAM mit verschiedenen wählbaren Algorithmen. Generell helfen die eingebauten BIST-Module, die Software um entsprechende Test-Routinen zu erleichtern. Peripheriemodule, die über einen eigenen Datenspeicher verfügen, sind durch Paritätslogik abgesichert. Diese RAM-Bereiche können ebenso per PBIST getestet werden.
Signaling Module meldet Fehler nach außen
Um Zugriffe auf bestimmte Speicherbereiche zu überwachen und um diesen Bereichen spezifische Zugriffsrechte zuzuweisen, kann die integrierte Memory Protection Unit (MPU) verwendet werden. Zum Test gespeicherter statischer Daten ist eine 64-Bit-CRC-Einheit vorhanden, die per DMA im Hintergrund betrieben werden kann. Zusätzlich haben die Peripherie-Module eigene Fehlererkennungs-Fähigkeiten, z.B. den Selbsttest der A/D-Wandler.
Alle wichtigen Module zur Fehlererkennung sind mit dem Error Signaling Module verbunden, das eine zentralisierte Priorisierung und Auswertung sowie Signalisierung aller erkannten Fehler nach Außen ermöglicht.
Texas Instruments hat bei kundenspezifischen Lösungen auch langjährige Erfahrung mit asymmetrischen (nicht lock-step) TMS570-Architekturen, bei denen eine Cortex-R4- und eine Cortex-M3-CPU auf einem Chip integriert wurden. Hier kann bei sicherheitskritischen Applikationen die Cortex M3 CPU die Cortex-R4-CPU überwachen oder umgekehrt. Zusätzlich kann jede CPU eigene Aufgaben übernehmen, um so die Rechenleistung insgesamt zu erhöhen.
Mit Cache werden zukünftige Derivate noch leistungsfähiger
Die verwendeten Mikrocontroller-Kerne von ARM wurden u.a. für den automobile Anwendungen entwickelt und werden von vielen Halbleiterherstellern als Rechnerkerne verwendet. Die Vorteile liegen in einer Standardisierung, die es einer Vielzahl von Drittanbietern ermöglicht hat, diese CPU Kerne mit Entwicklungswerkzeugen und Softwarekomponenten zu unterstützen. FlexRay-Treiber und AUTOSAR-Pakete sind für den TMS570LS vorhanden.

Auf dem Horizont der TMS570 Roadmap stehen Derivate mit 4 MByte Flash-Speicher, basierend auf zwei ARM Cortex R4F CPU in lock-step, der allerdings zur getrennten simultanen Abarbeitung unterschiedlicher Programme auftrennbar ist. Cache wird bei diesen Derivaten noch höhere Rechenleistungen ermöglichen, unterstützt durch einen optionalen zusätzlichen On-Chip-I/O-Prozessor.
*Gerhard Wenderlein ist Automotive System Applications Engineer bei Texas Instruments in Freising.
(ID:356586)