Multi Core in der Automation

Seit zwei Jahren geht die Prozessorentwicklung den Weg des Parallelismus: Immer mehr Kerne werden in ein Prozessorgehäuse integriert, bei teilweiser Reduktion der Frequenz. – In der Automatisierungstechnik stellt sich dabei die Frage: Wie wirkt sich dieser Trend auf die Steuerungskonzepte aus?

Seit zwei Jahren geht die Prozessorentwicklung den Weg des Parallelismus: Immer mehr Kerne werden in ein Prozessorgehäuse integriert, bei teilweiser Reduktion der Frequenz. – In der Automatisierungstechnik stellt sich dabei die Frage: Wie wirkt sich dieser Trend auf die Steuerungskonzepte aus?

Es ist noch gar nicht lange her, da rangen Intel & Co. mit dem Argument des schnelleren Prozessors um Marktanteile. Nachteil des durch den Desktop-Markt getriebenen Wettbewerbs der Taktzeiten war allerdings, dass der Leistungsverbrauch und damit die Abwärme der Rechnereinheiten in die Höhe schoß; ein für Industrie- Anwendungen sehr nachteiliger Effekt.

Mit der Einführung von Multicore-Systemen kam zuerst eine Reduktion der Taktfrequenz, welche sich vordergründig negativ auf die Gesamtleistung des Systems auswirkt, da seriell ablaufende Programme durch die niedrigere Frequenz nicht so schnell abgearbeitet werden. Um aus den neuen Multi-Core-Architekturen den größtmöglichen Nutzen zu ziehen, ist also ein Umdenken bei den Applikationsentwicklern notwendig: Was bisher möglichst schnell seriell auf einem Kern abgearbeitet wird, sollte in Zukunft gleichzeitig auf zwei beziehungsweise mehreren Cores parallel ablaufen. Das heißt: Bei einer geschickten funktionellen oder datenbasierten  Trennung der Aufgaben lassen sich bei Automatisierungs-Anwendung Beschleunigungen jenseits der 50-%-Marke erzielen. Um einen auch nur annähernden Leistungszuwachs durch Frequenzsteigerung zu erreichen, müsste der IPCHersteller eine hohe Leistungsaufnahme in Kauf nehmen und in wesentlich hochpreisigere Produkte investieren.

Die Core Microarchitecture

Mit der zweiten Generation von Dual- Core-Produkten führte Intel im Jahr 2006 die „Core Microarchitecture“ ein, bekannt unter dem Label „Core 2 Duo“. Diese Architektur brachte zwei neue Aspekte mit sich: Erstens erfuhren die Dual-Core-Prozessoren durch die Verringerung der Strukturbreite auf 65 nm und bei grundlegender Architekturänderung – verglichen mit Netburst oder Yonah – einen weiteren Leistungsschub und das bei einer stark reduzierten Leistungsaufnahme. Und zum zweiten ermöglicht ein Dual-Core-System die physikalisch parallele Abarbeitung verschiedener Funktionen, die vorher nur quasi parallel – mit dem Nachteil gegenseitiger Beeinflussung der Rechenleistung – auf einem System ausgeführt werden konnten.

Mittels der Microarchitecture lassen sich heute also die Funktionen wie Steuerung und HMI auf zwei Kerne aufteilen. Wobei idealerweise die Steuerung auf einem Kern unter einem eingebetteten Echtzeit-System ausgeführt wird, um die Echtzeit-Fähigkeit zu bewahren und jegliche Einflussnahme einer grafikbasierten Ausgabe auszuschließen. Auf der anderen Seite profitiert aber auch die Nicht-Echtzeit-Anwendung von dem eigenen CPU-Kern, den sie exklusiv zur Verfügung hat. Denn der zweite Kern stellt für das HMI eine allgemeine Betriebssystemplattform bereit, bei der nicht die Deterministik, sondern die grafischen Möglichkeiten im Vordergrund stehen. So werden etwa Bildumschaltzeiten der Bedienoberflächen kürzer und die Compilierzeiten der PLC-Projekte, wenn sie auf dem Zielsystem übersetzt werden, drastisch reduziert. Zum Vergleich: Wo bislang ein 2,8-GHz-P4-System bei 50-%iger Auslastung durch die Echtzeit-Anwendung für eine vollständige Neucompilation eines 4,5-MByte-SPS-Projektes rund 6 Minuten benötigt, braucht ein 2,1-GHz-CoreTM2-Duo-System für dasselbe Projekt nur noch 40 Sekunden.