| von Wolfgang Heinz-Fischer

Auf einen Blick

Die volle Designfreiheit bezogen auf einen Prozessor, also die üblich ausgewählte Plattform für unterschiedliche Anwendungen, bietet in der Regel nur ein proprietäres System, das optimiert auf den Prozessor entwickelt wurde. Damit kann dieses Modul in den meisten Fällen kleiner in den Abmessungen realisiert werden. Genau unter diesem Gesichtspunkt wurden und werden die TQ-Module entwickelt – maximale Leistung, bei höchster Integration, Bereitstellung aller Signale, robuste und zuverlässige Stecksysteme und das in kleinster Modulgröße. Das heißt größtmögliche Designfreiheit und langfristige Liefer- und Designsicherheit.

Seit der Vorstellung des ARM-Cortex-A9-Prozessors kommt mächtig Bewegung in den Modulmarkt. Was auffällt, ist die Fülle an Standards, die im Wettstreit zueinander stehen. Das erstaunt, da eine Standardisierung ja gerade eine Vereinheitlichung und Festlegung auf einen gemeinsamen Nenner bedeutet. Ein Blick hinter die Kulissen scheint also sinnvoll, um die Unterschiede der einzelnen Anbieter zu verstehen und die richtige Entscheidung für einen Modulanbieter zu treffen. Schließlich erwartet der Anwender von seinem Modullieferanten eine zuverlässige und langfristige Liefersicherheit mit der entsprechenden Design-Freiheit. Denn es stehen, wie so oft bei Neuvorstellungen, Marketingaussagen im Vordergrund, die leider manchmal die tatsächlichen technischen Fakten etwas zu sehr schönen.

Im ARM-Modulmarkt treten mehr als ein halbes Dutzend Standards gegeneinander an. Dazu zählen unter anderem Qseven, SMARC, phyFLEX, nanoRISC, EDM und TX. Alle verfolgen das gleiche Ziel: die Austauschbarkeit von Modulen des gleichen Standards und damit eine mögliche Skalierbarkeit und Liefersicherheit. Dabei sind die Module von herstellerspezifischen Standards nur bei dem einen Hersteller kompatibel und austauschbar. Erfüllen diese Standards also die Erwartung des Anwenders in Richtung Kompatibilität, Austauschbarkeit, Skalierbarkeit und damit langfristige Liefer- und Investitionssicherheit?

Es lohnt sich also, erst einmal zu verstehen, was ein Standard ist. Das Verständnis über Standards geht leider weit auseinander: Ein realer Standard ist unter einer Non-profit-Organisation gelistet und verwaltet. Dazu zählen unter anderem die PICMG und die PC/104.org mit den entsprechenden Standards wie unter anderem COM Express, MicroTCA und PC/104 bei den Modulen oder ISA, PCI und PCIe bei den System-Bussen. Echte Standards zeichnen sich dadurch aus, dass alle Parameter fix definiert sind und damit eine garantierte Austauschbarkeit ermöglichen. Dazu zählen neben allen mechanischen Abmessungen die Position aller Stecker und sonstiger Verbinder, alle elektrischen Signale sowohl in der Position auf dem Stecker, der Funktion als auch in den Timings. Um sicherzustellen, dass die Austauschbarkeit zwischen unterschiedlichen Anbietern auch tatsächlich funktioniert, führt die verwaltende Organisation ständig Kompatibilitätstests durch. Reale Standards haben den Nachteil, dass es immer recht lange Zeit in Anspruch nimmt, bis eine Spezifikation festgelegt und im Standard verankert ist. Meist werden reale Standards durch einen speziellen Markt oder eine spezielle Anwendung getrieben, um die Vorteile von vielen austauschbaren Komponenten zu nutzen. So ist ATCA und MicroTCA der Standard im Telekom-Markt.

Vorteile eines Standards

Von Standard spricht man manchmal auch, wenn sich eine Idee in einer breiteren Gruppe etabliert, von dieser Interessensgruppe beschrieben und verwaltet wird, aber anders als ein realer Standard auf ein zu enges Korsett an Festlegungen verzichtet. Diese Unschärfe in der Definition führt gelegentlich dazu, dass die Produkte einzelner Anbieter nicht vollständig austauschbar sind. Zu diesen sogenannten Industrie-Standards zählen unter anderem ETX und Qseven. Industriestandards sind in aller Regel schneller definiert und auch Änderungen an den Spezifikationen erfolgen recht zügig. Den Begriff Standard verwenden aber auch viele Hersteller für eigene Definitionen, die ausschließlich von ihnen getragen werden. Ob der Begriff Standard hier angebracht ist, erscheint zweifelhaft.

Was erwartet der Anwender von einem Standard und welche Vorteile bringt ein Standard? Eines der gebräuchlichsten Argumente für einen Standard ist die Wahl zwischen verschiedenen Anbietern, also eine größere Liefersicherheit. Nicht ganz unerheblich dürfte dabei die Möglichkeit sein, die Lieferanten gegeneinander auszuspielen, um einen besseren Einkaufspreis zu erreichen. Ein zweiter Punkt ist die mögliche Skalierbarkeit von Systemen. Reicht die Leistung eines Moduls nicht aus, nimmt man einfach das nächst leistungsstärkere und hat damit das Problem gelöst. In den meisten Fällen ist das jedoch eine schöne Theorie und in der Praxis kaum so genutzt. Aus der PC-Welt kennt jeder die mögliche Aufrüstung seines PCs mit der nächsten Generation an Prozessoren, soweit diese in den gleichen Sockel passen. Der COM-Express-Standard aus dem Embedded-Markt bietet hier scheinbar eine noch viel weitere Skalierbarkeit von ATOM- bis zu i7-Prozessoren. Treiber einspielen und läuft – meistens zumindest. Auch hier ist schon auf die feinen Unterschiede zu achten. So sind bei der COM Express Spec. 2.0 für die Ausführung Version 2 beispielsweise 24 Express Lanes spezifiziert. Ein Modul bestückt mit einem Intel-Atom-Prozessor N2600 / N2800 / D2550 und Chipsatz NM10 liefert 2 x PCIe x 1, ein anderes Modul bestückt mit einem Embedded-Intel-Core-i7 / i5 / i3-Prozessor und Chipsatz QM67 bietet 5 x PCIe x 1. Dies zeigt schon in diesem Bereich die Einschränkung von seit langer Zeit eingeführten Standards und die Einschränkungen bei der Austauschbarkeit.

Austauschbarkeit und Skalierbarkeit

Schematische Darstellung von Standards.

Schematische Darstellung von Standards.TQ-Systems

Nimmt man die unterschiedlichen Chip-Anbieter von ARM-Cortex-A9-Prozessoren, wird man schnell feststellen, dass diese Prozessoren zwar schon deutlich mehr Ähnlichkeit mit einem x86-System bieten als ein ARM9- oder ARM11-Prozessor, was ja unter anderem auch so gewollt ist, um in angestammte x86-Applikationen eindringen zu können, aber einen unterschiedlichen Funktionsumfang bieten. ARM-Cortex-A9-Prozessoren sind jedoch im Gegensatz zu x86-Prozessoren eine Ein-Chip-Lösung mit deutlich geringerem Platzbedarf und erheblich geringerer Leistungsaufnahme, bei annähernd gleicher Performance. Das erklärt sicher die Motivation vieler Anbieter von x86-Modulen, auch Module mit ARM-Technologie zu entwickeln. Es ist ja auch verlockend, wenn eigentlich alle ARM-Cortex-A9-Chipanbieter die klassischen PC-Schnittstellen wie Ethernet, USB und Grafik bieten, jedoch auch hier sind schon deutliche Unterschiede zu sehen. Wie viele Ethernet-Schnittstellen bietet der Chip und mit welcher Übertragungsgeschwindigkeit arbeiten diese? Welche Grafik und welche Auflösung bietet der Prozessor? Bei den realisierten PCIe-Schnittstellen wird der Unterschied noch deutlicher. Und ganz groß werden die Funktionsabweichungen der einzelnen ARM-Cortex-A9-Anbieter, wenn es um Industrie-Schnittstellen wie Feldbusse, SPI, Parallel-LCD oder Kamera-Interfaces geht. Wie sieht es also bei den hier angebotenen Standards mit der Austauschbarkeit und Skalierbarkeit aus?

Vergleichstabelle für die Systemintegration.

Vergleichstabelle für die Systemintegration.TQ-Systems

Um mehr Klarheit zu erhalten, hilft es, den angebotenen Standard näher zu untersuchen. Die meisten Pins / Funktionen des Prozessors sollten über das Stecksystem zur Verfügung stehen. Unter Umständen sind aber einige Funktionen des Prozessors nicht im Standard definiert, werden also nicht nach außen geführt und stehen so für die Anwendung nicht zur Verfügung. Andere Funktionen des Standards können teilweise über entsprechende Zusatzchips realisiert werden. Und letztendlich können im Standard Funktionen festgelegt sein, die überhaupt nicht unterstützt werden. Einen optimalen Standard zeichnet also aus, dass auf der einen Seite alle Prozessorfunktionen in der Anwendung, also über das Steckersystem zur Verfügung stehen und auf der anderen Seite alle sonstigen Funktionen über Zusatzchips realisiert sind.

Je weniger Kompromisse bezüglich der angebotenen Funktionen und den im Standard geforderten Funktionen gemacht werden müssen, umso näher ist ein Standard am Optimum. Weichen die vom Prozessor und externen Chips angebotenen Funktionen stark von den im Standard definierten Funktionen ab, kann man davon ausgehen, dass das Preis- / Leistungsverhältnis nicht optimal ist. So ist einfach nachzuvollziehen, dass ein Porsche-Motor in einem Polo-Chassis nicht optimal funktionieren kann, genauso natürlich umgekehrt. Ein detaillierter Vergleich hilft in jedem Fall, Entscheidungssicherheit zu erlangen. Die Frage ist, welche Funktionen in einem Modul von unterschiedlichen Anbietern, auch mit verschiedenen Prozessoren, realisiert sind. Wo also die tatsächliche Austauschmöglichkeit liegt. Welche Prozessorfunktionen sind nicht verfügbar, weil die entsprechenden Signalpins nicht im Standard definiert sind und damit nicht auf dem Systemstecker zur Verfügung stehen? Wie viel Design-Freiheit hat der Anwender mit dem Modul?

Detaillierte Funktionsliste

Je größer der Überlappungsbereich von Funktionen ist, die von jedem Modulanbieter und jedem Prozessor geliefert werden, umso höher ist die tatsächliche Austauschbarkeit. Was ist aber mit den Funktionen des Prozessors, die im Standard nicht abgebildet werden? Werden diese in zukünftigen Projekten benötigt, heißt das für den Anwender, dass er den Modulanbieter wechseln muss. Es lohnt sich auf jeden Fall, eine detaillierte Funktionsliste zu erstellen, um Klarheit darüber zu erhalten, welche Systeme für die eigene Anwendung passen, welche Austauschmöglichkeiten vorhanden sind und welche zukünftigen Bedürfnisse mit dem Modul auch abgebildet sind.

Systemintegration mit TQ-Modulen.

Systemintegration mit TQ-Modulen.TQ-Systems

Eines der Hauptargumente für Standards, die Austauschbarkeit und Skalierbarkeit, ist für ARM-Cortex-A9-Module heute nur möglich, wenn auf eine sehr eingeschränkte Anzahl von Signalen zugegriffen wird. Will der Anwender die volle Leistungsfähigkeit des ARM-Cortex-A9-Prozessors auf dem Modul nutzen, muss er auf die „Sonderschnitze“ der Modulanbieter zurückgreifen, mit den Einschränkungen wie oben beschrieben. Dann ist es aber eigentlich ein proprietäres System, jedoch in der Boardgröße, dem Speicher- und Steckersystem und so weiter im Standard verhaftet. Der Anwender, der von x86 nach ARM umsteigt, wird schnell feststellen, dass es einen weiteren gravierenden Unterschied und eine Schwierigkeit gibt. Bei der Installation eines x86-Systems wählt man einfach die entsprechenden Treiber aus vorhandenen Bibliotheken des Chipherstellers und schon läuft die Applikation. Damit ist der Umstieg von einem System, also die Skalierbarkeit oder der Einsatz der Second Source, mehr eine logistische Aufgabe und weniger eine technologische Herausforderung. Bei ARM-Modulen sieht die Welt völlig anders aus. Für jeden Prozessor und für jede Funktion gibt es einen individuellen Treiber, der in aller Regel nicht als frei verfügbare Bibliothek vorhanden ist, schon gar nicht vom Chiphersteller selbst. Das zeigt deutlich die gestiegene Anforderung an die Modulhersteller, entsprechende Treiber zur Verfügung zu stellen. Auf dieser Seite fehlen noch jegliche Standards. Mit anderen Worten: eine Austauschbarkeit zwischen verschiedenen Herstellern und unterschiedlichen Modulen auch eines Herstellers ist nicht ohne weiteres möglich.

Wolfgang Heinz-Fischer

ist Leiter Marketing / PR bei der TQ-Group.

(ah)

Kostenlose Registrierung

Newsletter
Bleiben Sie stets zu allen wichtigen Themen und Trends informiert.
Das Passwort muss mindestens acht Zeichen lang sein.

Ich habe die AGB, die Hinweise zum Widerrufsrecht und zum Datenschutz gelesen und akzeptiere diese.

*) Pflichtfeld

Sie sind bereits registriert?