Multicore-Interferenzen treten auf, wenn mehrere Prozessor-Cores versuchen, auf dieselbe gemeinsam genutzte Ressource zuzugreifen, z.B. Speicher, gemeinsam genutzten Cache, I/Os oder die On-Chip-Verbindung (Interconnect). Interferenzen sind ein Problem, das sogar ein Positionspapier des Certification Authorities Software Team (CAST-32A) rechtfertigt, welches sich mit der Identifizierung von Problemen in Bezug auf Sicherheit, Leistungsfähigkeit und Integrität von Software befasst, die in einem luftfahrtbezogenen Multicore-System ausgeführt wird. Green Hills Software hat aufgezeigt, dass die Anwendungs-WCET bei nur einem störenden Core achtmal und bei drei störenden Cores sogar bis zu 13-mal höher ist.
BAM-Interferenzminderung überwacht und erzwingt strikt die Verwendung der gemeinsam genutzten Ressourcen, wie vom Systemintegrator definiert. In Verbindung mit den Multicore-SoC-spezifischen WCET-Dienstprogrammbibliotheken von Green Hills Software stellt die BAM sicher, dass kritische Partitionen ihre erforderlichen Fristen einhalten, während andere Partitionen mit geringerer Kritikalität gleichzeitig auf anderen Cores ausgeführt werden können, ohne dass dies Auswirkungen auf die kritischen Anwendungen hat. Dies gilt auch dann, wenn die anderen Partitionen geändert oder neue Partitionen in das System eingeführt werden. Dies ist eine wichtige Funktion für das Aufrechterhalten und den Ausbau kritischer Systeme, die auf Multicore-Architekturen basieren.
Obwohl CAST-32 erstmals 2014 veröffentlicht und 2016 aktualisiert wurde, erkennen einige RTOS-Anbieter erst jetzt an, dass Multicore-Interferenzen ein ernsthaftes Problem darstellen und suchen nun nach einer Lösung. So ist Lynx Software „mit mehreren Forschern im Gespräch“, einschließlich des EU-finanzierten MASTECS-Projekts, das im November 2021 abgeschlossen sein soll. Das zu erwartende Ergebnis sind Timing-Analyse-Softwaretools und keine Lösungen zur Schadensbegrenzung. Andere Anbieter von Betriebssystemen überlassen diese Multicore-Interferenz einfach dem Systemintegrator zur Lösung. Die BAM-Funktion bietet bereits heute die Lösung und wird seit Jahren an Kunden ausgeliefert, beginnend mit den Power Architecture® e500mc Cores.
„Green Hills Software ist führend bei der Eindämmung von Multicore-Interferenzen mit DAL-A-konformen Lösungen für mehrere Multicore-Architekturen“, so Dan O’Dowd, Gründer und CEO von Green Hills Software. „Unser Wettbewerb wie Lynx Software hat kürzlich festgestellt, dass die FAA versprochen hat, die Verwendung mehrerer Cores in einem Multicore-Prozessorchip zuzulassen – jedoch nur, wenn den Zertifizierungsstellen auf der Grundlage der CAST-32A-Spezifikationen angemessene Maßnahmen zur Eindämmung bzw. Störungsminderung nachgewiesen werden können. Kein anderer RTOS-Anbieter als Green Hills Software bietet eine konforme Lösung nach DO-178C Level A zum Eindämmen von Multicore-Interferenzen, die den CAST-32A-Anforderungen entspricht.“
Obwohl ein gewisses Maß an Schadensbegrenzung auf Anwendungsebene möglich ist, erfordert dies ein erneutes Testen und Überprüfen aller Anwendungen, die auf dem Multicore-System ausgeführt werden, sobald sich eine einzelne Anwendung ändert. Dadurch entstehen erhebliche Kosten und Verzögerungen, die zur Anbieterbindung beitragen. Ebenso wie die MMU-Unterstützung und Partitionierungsspläne im Betriebssystem implementiert werden müssen, muss die Durchsetzung der Multicore-Interferenzeindämmung im Betriebssystem erfolgen, um eine robuste Multicore-Partitionierung zu erreichen. INTEGRITY-178 tuMP bietet eine allgemeine Lösung zur Eindämmung von Multicore-Interferenzen, was das erneute Testen und Verifizieren nach Änderungen oder Ergänzungen der Anwendung minimiert.
Green Hills Software hat das Problem der Multicore-Interferenz schon frühzeitig erkannt und 2010 damit begonnen, in eine Lösung zu investieren. Basierend auf mehr als 60 Personen-Jahre Forschung und Entwicklung im Bereich der Analyse und Eindämmung von Multicore-Interferenzen überwacht und erzwingt die DAL-A-konforme BAM-Funktion die Bandbreitenzuweisung der Verbindung auf Chipebene zu jedem Core. Da diese Verbindungen auf Chipebene im Zentrum der Interaktionen zwischen den Cores und anderen gemeinsam genutzten Ressourcen stehen, sind sie der ideale Ort, um Grenzen beim Einsatz gemeinsam genutzter Ressourcen zu beachten und zu setzen. BAM emuliert einen hardwarebasierten Hochgeschwindigkeitsansatz, um die kontinuierliche Durchsetzung der Zuweisung gemeinsam genutzter Multicore-Ressourcen durch die Cores zu gewährleisten. Dies steht im Gegensatz zu einem „Sicherheitsnetz“-Ansatz, bei dem grobe Schwellenwerte und Fehlererkennung verwendet werden, um problembehaftete (Rogue-) Prozesse zu beenden oder auszusetzen. BAM reguliert die Bandbreite während des gesamten Ausführungszeitfensters der Anwendung, sodass andere Anwendungen im selben Ausführungszeitfenster ihren zugewiesenen Teil der gemeinsam genutzten Ressourcen abrufen können. Diese Funktionen senken das Integrations- und Zertifizierungsrisiko erheblich und ermöglichen es den Integratoren, die maximalen Leistungsvorteile von Multicore-Prozessoren zu erzielen.
Das betriebs- und datensicherheitskritische (Safety & Security) RTOS INTEGRITY-178 tuMP ist so ausgelegt, dass es gleichzeitig DO-178C Design Assurance Level (DAL) A und das von der NSA definierte Separation Kernel Protection Profile (SKPP v1.03) erfüllt. INTEGRITY-178 tuMP ist ein Multicore-RTOS, das jede Kombination aus asymmetrischem Multi-Processing (AMP), symmetrischem Multi-Processing (SMP) und gebundenem (Bound) Multi-Processing (BMP) unterstützt. Insbesondere umfasst es die Ausführung einer Multi-Threaded DO-178C DAL-A-Partition über mehrere Prozessor-Cores in einer BMP-Konfiguration gemäß ARINC 653 Teil 1, Ergänzungen 4 und 5 sowie SMP-Konfigurationen gemäß ARINC 653 Teil 2 Multicore Service Extensions, Ergänzungen 3 und 4. INTEGRITY-178 tuMP war das erste RTOS, das konform zum FACE™ Technical Standard, Edition 3.0, zertifiziert wurde, und ist nach wie vor das einzige RTOS, das zu allen drei Avionik-Prozessorarchitekturen Arm, Intel® und Power Architecture konform ist.
Weitere Informationen zu Multicore-Interferenzen und deren Eindämmung finden sich im Whitepaper „Solving Multicore Interference for Safety-Critical Applications“ auf www.ghs.com.
Green Hills, das Green-Hills-Logo, MULTI und DoubleCheck sind Warenzeichen oder eingetragene Warenzeichen von Green Hills Software in den USA und/oder international. Alle anderen Marken sind im Besitz ihrer jeweiligen Eigentümer.
Green Hills Software wurde 1982 gegründet und ist weltweit führend im Bereich Embedded Safety and Security. Im Jahr 2008 war Green Hills‘ INTEGRITY-178B RTOS das erste und einzige Betriebssystem welches von der NIAP (National Information Assurance Partnership, bestehend aus NSA & NIST) nach EAL6+ High Robustness zertifiziert wurde, dem höchsten Sicherheitsgrad, den ein Softwareprodukt jemals erzielt hat. Unsere architekturoffenen integrierten Entwicklungslösungen richten sich an absolut sichere und hochzuverlässige Anwendungen für die Bereiche Automobil, Medizin, Industrie, Luftfahrt, Verteidigung, Netzwerktechnik, Konsumgüter und andere Märkte, die branchenzertifizierte Lösungen erfordern. Green Hills Software hat seinen Hauptsitz in Santa Barbara, Kalifornien. Die europäische Zentralniederlassung befindet sich in England. Weitere Informationen unter: www.ghs.com.
Green Hills Software GmbH
Siemensstr. 38
53121 Bonn
Telefon: +49 (228) 4330777
Telefax: +49 (228) 4330797
http://www.ghs.com
Vice President Marketing
Telefon: +44 (23) 80649660
Fax: +44 (23) 80649661
E-Mail: chriss@ghs.com
Publitek
Telefon: +44 (20) 8429-6546
E-Mail: andrew.town@publitek.com