Quo vadis, Multicore?

Seite: 3/3

Firmen zum Thema

Funktionale Sicherheit als einer der Treiber für Multicore bringt Ernüchterung dahingehend, dass man sich wohl viele Erleichterungen hinsichtlich Umsetzung und Zertifizierung bezüglich der Normen versprochen hat, nun aber realisiert, dass zwar Kosten auf Bauteilebene eingespart werden können, dies aber nichts an der nach wie vor aufwendigen Umsetzung und notwendigen Verwendung der Safety-Mechanismen ändert.

Entwicklungstendenzen

Während streng homogene Vertreter von Multicore ihren Ursprung eher in rechenintensiven Applikation wie Voice Over IP haben, waren in weniger fordernden eingebetteten Systemen initial öfter heterogene Systeme zu finden. Heute findet man Vertreter beider Typen sowie gemischte Formen, die eine optimale oder zugeschnittene Rechenauslastung zulassen, unter Umständen aber wiederum erhöhten Programmieraufwand nach sich ziehen.

Aktuell ist kein endgültiger Gewinner dieser unterschiedlichen Architekturen auszumachen. Vielmehr ist zu erkennen, dass je nach Anforderungsprofil jener Ansatz zum Zug kommt, der kosteneffektive Lösungen verspricht. Allerdings ist durchaus der Wunsch der Anwender auszumachen, die Hardware-Schicht nicht nur aus Sicht des Programmierers transparent zu machen, sondern auch in der Realität agnostisch zu implementieren.

Gerade der Aspekt der gleichen Performanz von mehreren Kernen scheint sich durchzusetzen, da dadurch keine strenge Verteilung von Tasks auf spezifische Kerne mehr notwendig scheint. Dies wird insofern noch auf die Spitze getrieben, dass praktisch individuelle Subsysteme auf dem Chip realisiert werden, mit lokalen - unter Umständen sogar nicht global ansprechbaren - Speichern unterschiedlichen Typs und Hierarchie (Flash, RAM, Cache).

Fast scheint es so, als ob die Anwender in eingebetteten Systemen nicht von altbewährten Ansätzen und Altbekanntem abweichen möchten. Ein simples Multiplizieren von Ressourcen auf dem Chip wird aber auf lange Sicht keine Lösung bringen, da Einsparungspotentiale ungenutzt bleiben.

So werden erst neue Generationen von in sich leistungsstärkeren Subsystemen eine neue Multicore-Kultur hervorbringen, in der verteilte Betriebssysteme, Hypervisor und dynamische Taskverteilung eine effektive Ausnutzung der Skalierbarkeit zulassen und die Tür zu Manycore-Bauteilen aufstoßen. Vorerst gilt es aber, die Probleme der Cache-Kohärenz zu adressieren, die Portabilität zu verbessern und die Software-Unterstützung für Synchronisationen und Kommunikation auszubauen.

* Dipl.-Ing. (TU) Marcus Gößler ist heute bei der MicroConsult GmbH als Trainer und Coach im Bereich Embedded Systems tätig, mit Schwerpunkten in sicherheitsrelevanten Anwendungen und Multicore-Bausteinen.

(ID:44202360)