Anbieter zum Thema
Der AM3703 enthält eine Vielzahl von Interfaces, so einen Controller für SDRAM, direkten Anschluss von Flash und SRAM, asynchrone Interfaces für z.B. FPGAs oder ASICs, viele zur Kommunikation und einige eingebaute Timer. Ein Display Subset System ermöglicht den Anschluss von LC-Displays oder TV, beim 3715 sogar mit Unterstützung der Grafikfähigkeiten durch einen Grafikbeschleuniger. In Summe stellt dieser Chip alles bereit, mit Ausnahme des Speichers natürlich.
Die MIPS-Architektur, oftmals federführend bei der Einführung neuer Technologie und Architekturen, fristete in den letzten Jahren eher ein Schattendasein am Markt. Dies scheint nun endgültig beendet zu sein, denn mithilfe des chinesichen Institute of Computing Technology (ICT) in Shanghai erlebt sie eine Renaissance. Die dort definierte Loongson-Architektur basiert auf der MIPS-Architektur und ist zurzeit für den 90-nm-Prozess optimiert. Als Hersteller und Anbieter fungiert derzeit ST, so dass diese Variante besprochen wird.
Der Loongson 2F, bei ST mit STLS2F01 bezeichnet, bietet mit einer superskalaren (maximal 6-fach) 64-Bit-Architektur beste Grundlagen für Performance, selbst bei "bescheidenen" 900 MHz. Dies wird noch durch den SIMD-Befehlssatz ergänzt, während andererseits die auf dem Chip integrierte Peripherie bei diesen Bausteinen bislang komplett fehlt. Insofern kann (und muss) natürlich das Gesamtsystem auf den jeweiligen Einsatzfall optimiert werden, überflüssige Peripherie wird im STLS2F01 vermieden.
Software für Embedded-Prozessoren
Wenn man an eine Softwareunterstützung für eine Prozessorfamilie bzw. darauf basierende Rechner denkt, fallen einem sofort zwei Begriffe ein: Compiler und Betriebssystem. Compiler sind notwendig, um die Programmierung von Applikationen in einer Hochsprache zu ermöglichen, und das Betriebssystem stellt eine Art Maschine auf dem Prozessor bzw. Rechner dar, auf der dann die Applikationen laufen.
Betriebssystem, Rechner und Compiler sind eng miteinander verwoben. In [4] wird eine Einführung zu den Aufgaben gegeben, die hier kurz erläutert und erweitert werden soll. Das Betriebssystem besteht normalerweise aus verschiedenen Komponenten und auch Schichten, so z.B. einem Basic Input/Output System (BIOS), einem Disk Operating System und einem Scheduler. Die Device Driver stellen Softwarekomponenten dar, die ein Interface zur Hardware schaffen und somit auch ein wenig abstrahieren. Bild 1 zeigt vereinfachend die Struktur.
Mit dem Compiler werden die in einer Hochsprache geschriebenen Applikationen übersetzt, zugleich enthält der Compiler aber auch Schnittstellen zu den Gerätetreibern, meist in Form von Laufzeitbibliotheken bzw. darin enthalten. Beispielsweise wird die in C wohlbekannte Funktion printf() (formatierte Ausgabe auf Standard-Out) letztendlich auf putc() zurückgeführt, und nun muss diese Ausgabemethode für das Standard-Ausgabegerät (Bildschirm, serielle Schnittstelle) definiert sein. Die Gerätetreiber gehören aber in die Zuständigkeit des Betriebssystems (wenn eines vorhanden ist).
Damit soll gezeigt werden, dass Hardware (und nicht nur die CPU!), Betriebssystem und Compiler eng miteinander verwoben sind, was im Umkehrschluss bedeutet, dass die Anpassung eines Standard-Betriebssystems wie Linux oder Windows CE an eine neue Hardware weit mehr als nur die einfache Neuübersetzung für eine CPU darstellt. Das gleiche gilt auch für Compiler, hier müssen sowohl das Compiler-Backend (Codegenerator) als auch das Bibliothekssystem angepasst werden.
Aus diesem Grund muss immer auf die Verfügbarkeit des gewünschten Betriebssystems mit dem gewünschten Compiler geachtet werden, so dass zumindest einige Informationen in der Tabelle aufgenommen wurden. Wenn also ein Betriebssystem aufgeführt ist, bedeutet dies auch, dass entsprechende Gerätetreiber vorhanden sind. Im Fall der Teilnehmer in diesem Beitrag wird insbesondere die auf dem Chip bzw. in den Chipsätzen (Southbridge etc.) integrierte Peripherie durch Gerätetreiber der angegebenen Betriebssysteme unterstützt.
Literaturhinweise:
[1] Christof Windeck, "Schnellverbinder – Das leisten Chipsätze auf PC-Mainboards", C't 25(03), S. 206-213 (2007)
[2] Christof Windeck, "Hitzewelle – Thermal Design Power: Prozessor-Datenblatt und Wirklichkeit", C't 28(15), S. 174-179 (2010)
[3] Andreas Stiller, "Prozessorgeflüster – Von MiPS und MIPS", C't 28(22), S. 20 (2010).
[4] Rudi Swiontek, Ralf Ebert, "Architektur eines RTOS am Beispiel Windows CE." ELEKTRONIKPRAXIS-Sonderheft Embedded Systems Development I, S. 22-26 (Mai 2010).
* * Christian Siemers ist Professor für Hardwareentwicklung und Robotik am Institut für Informatik der TU Clausthal
(ID:25391380)