Neben der Prozessorleistung und dem Speicher, der für eine Anwendung benötigt wird, ist es wichtig, auch das physische Umfeld zu berücksichtigen, in dem das Embedded-System betrieben werden soll – besonders bei rauhen Industrieumgebungen. Robustes Boarddesign entsprechend der geltenden DIN-, EN- oder IEC-Industrienormen kann die nötige Unempfindlichkeit in mobilen Anwendungen und anderen rauhen Umgebungen gewährleisten. Norm-konforme Lackierung bietet in feuchten und staubigen Umgebungen zusätzlichen Schutz für die Bauteile auf dem Board. Maßgeschneiderte Kühlkörper und zusätzliche Board Management Controller mit integrierten Watchdogs für die thermische Überwachung des Prozessors und des Boards bieten zusätzlichen Schutz in stark beanspruchten Anwendungen, besonders in Bereichen mit hoher Umgebungstemperatur wie Stahlwerken oder Produktionslinien in nicht klimatisierten Gebäuden.
Die Zukunft heißt Multi-Core
Steigende Taktfrequenzen und eine zunehmende Packungsdichte der Komponenten auf den Baugruppen treiben die Leistungsaufnahme und damit die Abwärme nach oben. Diesen Herausforderungen stellen sich Multi-Core-Lösungen durch eine bessere Leistung pro Watt, einen größeren Datendurchsatz und bessere Skalierbarkeit. Zusammen mit den beschriebenen Software-Strategien liefern diese nicht nur eine Lösung für die heutigen Anforderungen an Embedded-Systeme, sondern bilden auch die Basis für zukünftige Systeme. Mit der Beherrschbarkeit der Designprinzipien für Hardware und Software sind auf Multi-Core-Basis beachtliche Leistungszuwächse in immer kürzeren Zeitspannen realisierbar. (Joachim Kroll)
Neueste Dual-Core-Technik im 3-HE-Format
Bestückt mit Intels neuestem Core-2-Duo-Prozessor T7500, L7500 oder U7500 aus der Embedded-Linie, ist der F18 das jüngste und leistungsstärkste Mitglied der Intel-bestückten Produktfamilie im CompactPCI-Einfacheuropaformat von MEN. Die 64-bit-Karte verfügt über einen 667/800-MHz-Frontside-Bus und leistungsfähige Grafik, die insbesondere Anwendungen zur digitalen Bildverarbeitung wie CAD-Tools, 2D/3D-Modellierung, Video und Rendern sowie die wissenschaftliche Datenverarbeitung beschleunigt.
Der F18 ist eine 32-bit-/33-MHz-System-Slotoder -Stand-Alone-Karte und benötigt nur einen Steckplatz am CompactPCI-Bus. In Verbindung mit einer PCI-Express-fähigen Side-Card kann der F18 auch als System-Slot-Karte in CompactPCI-Express-Systemen eingesetzt werden. Mit bis zu 4 Gbyte fest verlötetem DDR2-SDRAM, einem CompactFlash-Steckplatz und einem Serial-ATA-Festplattensteckplatz (auf der Side-Card) bietet der F18 reichlich Speicherplatz für die Anwendung.
An der Frontplatte befinden sich Anschlüsse für analoge Grafik, je zweimal Gigabit-Ethernet und USB 2.0. Zusätzliche Ein-/Ausgabe wird auf unterschiedlichen Side-Cards realisiert und umfasst DVI, Audio, weitere USB-Schnittstellen, UART-Schnittstellen und FireWire. Verschiedene Watchdogs zur Überwachung der Prozessor- und Kartentemperatur sowie Rear-I/O-Support runden die Funktionalität des F18 ab, der mit Board-Support-Packages für Windows, Linux und VxWorks auf den Markt kommt.
Indem verschiedene Echtzeit- und andere Betriebssysteme gleichzeitig auf getrennten Cores laufen, erlaubt VMM die Trennung der Echtzeit-I/OFunktionen von zeitunkritischen Anwendungen wie Datenaufzeichnung, Signalanalyse oder die Steuerung einer grafischen Benutzeroberfläche. Dieses „Teile-und-Herrsche-Prinzip“ löst zwei wichtige Probleme, die in vielen Automationsanwendungen kritisch sind: Latenz und Jitter. In der Industrieautomation ist dies besonders für eingebettete Systemanwendungen mit hohen Anforderungen an Rechenleistung und I/O von Vorteil.
Bild 2 zeigt ein Beispiel dafür, wie die über einem BIOS laufende Virtualisierungs-Software verschiedene Aufgaben der Anwendung auf mehr als einem Betriebssystem in einer Multi-Core-Umgebung unterstützt. In dieser Konfiguration müssen CPU, Chipsatz und BIOS alle mit der Multi-Core- und der Virtualisierungstechnik kompatibel sein. Für die Software-Entwicklung gibt es Tools wie Compiler, Virtualisierungstechnikanalysatoren und Cluster-Tools, die Multi-Core-Anwendungen unterstützen und den Entwicklern helfen, die Erstellung ihres Codes in einer Weise umzustellen, dass er für die Verteilung auf mehrere Cores innerhalb eines Chips oder innerhalb eines Boards geeignet ist, und nicht wie bisher nur für monolithische Single-Thread-Anwendungen.
In enger Zusammenarbeit zwischen den Prozessor- und Baugruppenherstellern werden immer leistungsfähigere Lösungen entwickelt, die auf die wachsenden Anforderungen von High-End-Embedded-Systemen ausgerichtet sind (Bild 3). Dies sind aktuell die Rechner mit Intels Core 2 Duo und 64-bit-Architektur mit integrierten 4 Mbyte Level-2-Cache.
Da auch der Intel Core 2 Duo mit breiteren Ausführungs-Pipelines ausgestattet ist, werden Flaschenhälse und Latenzprobleme reduziert und die Effizienz gesteigert. Durch einen fortschrittlichen Smart Cache (von 2 Mbyte bis 4 Mbyte geteilter L2-Cache) wird die Zugriffszeit auf oft benutzte Daten deutlich verkürzt. Dies verbessert die Leistung und die Effektivität, da jeder Ausführungskern eines Multi-Core-Prozessors mit höherer Wahrscheinlichkeit auf Daten aus dem Cache-Subsystem zugreifen kann und nicht erst auf den langsameren Arbeitsspeicher warten muss.