Für den Einsatz einer modularen Lösung gibt es viele Gründe. So wird die Technologie immer komplexer und damit nehmen die Entwicklungszeiten und der Bedarf an Entwicklungsressourcen zu. Und genau das steht im Widerspruch zu den Marktanforderungen. Teilweise fehlen auch einfach die technischen Voraussetzungen, eine solche komplexe Technologie umzusetzen. In der x86-Welt wird seit Langem fast nur noch auf Module oder Standard-Boards gesetzt, eine Integration ist hier die absolute Ausnahme.
Der Einsatz eines Moduls mit komplexen Technologien, wie etwa eines Freescale-QorIQ-Prozessors mit 1,2 GHz Taktung und DDR3-Speicher, erfordert einen Lagenaufbau mit Microvia und mindestens zehn oder zwölf Lagen. Würde der Prozessor integriert, müsste das gesamte Applikationsboard diesen Lagenaufbau haben. Die oft ins Feld geführten Zusatzkosten für die Stecker des Moduls, rechnen sich bei einer normalen Anwendung allein aus den Einsparungen an Lagen für das Applikationsboard. Bei einer Leiterplatte mit den Maßen von 175 mm x 120 mm und zwölf Lagen liegt der durchschnittliche Preis bei etwa 20 bis 25 Euro bei mittleren Stückzahlen. Durch den Einsatz eines Moduls kann man den Lagenaufbau auf acht oder weniger Lagen reduzieren. Bei acht Lagen liegt der Leiterplattenpreis bei etwa 15 bis 20 Euro bei gleichen Stückzahlen. Der Gegensteckersatz für ein TQ-Modul mit QorIQ-Prozessor liegt bei circa 5 bis 6 Euro in höheren Stückzahlen. Also entstehen durch den Einsatz eines Moduls keine zusätzlichen Kosten.
Daneben gelten natürlich alle bekannten Argumente für den Einsatz eines Moduls. Eine deutliche Zeitersparnis für den Anwender in der Entwicklung wird dadurch erreicht, dass das Prozessor-Modul als fertige Hardware bereits vorliegt. Da das Applikationsboard wesentlich einfacher im Aufbau ist, kann es entsprechend schneller entwickelt und später produziert werden. Die Software-Entwicklung kann umgehend beginnen, die Referenzplattform liegt ja bereits vor, meist schon mit den entsprechenden BSPs und Treibern. So können bereits erste Leistungstests zu einem sehr frühen Zeitpunkt beginnen. Ein klarer Vorteil für den Anwender: Die Time-to-Market wird erheblich verkürzt.
Weniger Risiko, weniger Kosten
Ganz entscheidend ist aber auch die Risiko-Minimierung. Und Risiko bedeutet Zeit und Kosten. Da das Design für das Applikationsboard wesentlich einfacher ist, ist das Risiko für ein eventuelles Redesign deutlich geringer. Ein Redesign fällt im Laufe des Lebenszyklus im Allgemeinen nur für das Embedded-Modul an. Weniger Risiko und eine rechtzeitige Fertigstellung einer Entwicklung können entscheidend zum Markterfolg eines Produktes beitragen.
Aber auch bei weniger komplexen Designs kann ein modularer Ansatz Vorteile bringen. Die meisten Argumente von komplexen Designs gelten hier analog. Und die Vielzahl an Modulanbietern mit ARM9- und ARM11-Modulen, bei denen die Komplexität sicher nicht mit einem QorIQ-Design zu vergleichen ist, zeigt, dass ein Marktbedarf vorhanden ist.
Wurde früher versucht, möglichst immer den gleichen Prozessor einzusetzen, um die einmal getätigten Investitionen für die Infrastruktur, wie Entwicklungswerkzeuge, Softwaretreiber, BSPs, Testtools und anderes auch bei Neuentwicklungen zu nutzen, hat die Vielzahl an Prozessoren und entsprechenden Embedded-Modulen dazu verleitet, für jede Entwicklung und für jedes Gerät immer den optimalen Prozessor zu wählen. Da der Software-Anteil an der gesamten Entwicklung und in der Wertschöpfung eines Gerätes immer mehr zunimmt, setzt eine Rückbesinnung auf die Fokussierung auf einen Prozessor oder eine Plattform in Form eines Embedded-Moduls ein.
Das Thema Standards
Und hier streiten die so genannten Standards gegen proprietäre Systeme. 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 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 sicher zu stellen, 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. Sie werden meist 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.
Von Standard spricht man manchmal auch, wenn sich eine Idee in einer breiteren Gruppe etabliert, von dieser Interessengruppe 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 so genannten 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 er? Eines der gebräuchlichsten Argumente für einen Standard ist die Wahl zwischen verschiedenen Anbietern, also einer größeren 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 ein leistungsstärkeres 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. Was im Bereich x86 aufgrund einer sehr hohen Kompatibilität zwischen einem COM-Express-Modul mit einem Atom-Prozessor und einem anderen COM-Express-Modul mit Core i3 noch halbwegs funktioniert, wird im Bereich ARM-Module deutlich schwieriger. So ist ein Wechsel von einem ARM9- zu einem Cortex-A9 nur mit erheblichen Softwareanpassungen möglich. Und der Funktionsumfang eines Cortex-A9 ist ein Vielfaches eines ARM9. Das würde bedeuten, wenn der Anwender von einem ARM9-Modul zu einem pinkompatiblen Cortex-A9-Modul wechselt, dann nutzt er nur einen sehr geringen Teil des Cortex-A9-Prozessors, muss aber den kompletten Leistungsumfang zahlen.
In der Realität wird der Anwender in der Regel bei einem Prozessor-Wechsel sein Applikationsboard anpassen, um die zusätzlichen Funktionen des Prozessors optimal nutzen zu können. Oder es handelt sich gleich um ein neues Gerät. Die Skalierbarkeit und damit die Austauschbarkeit von Modulen werden also in der Praxis meistens nicht wirklich genutzt. Damit ist die Notwendigkeit von Standards zumindest in Frage gestellt und oft ist deshalb heute die Prozessor-optimierte proprietäre Modullösung der bessere Ansatz.
Optimales Plattform-Modul
Ist also der richtige Prozessor gefunden, stellt sich die Frage nach dem passenden Modul als Plattform. Im Hinblick auf langfristigen Einsatz und Einsatz in möglichst vielen Geräten, sollten alle Prozessorfunktionen zur Verfügung stehen. Und hier sind optimierte proprietäre Systeme im Vorteil. Einmal wird nur ein kleiner Teil der Funktionen genutzt, in einem anderen Fall wird der Prozessor vollständig ausgereizt. Stellt das Modul nicht alle Funktionen zur Verfügung, besteht die Gefahr, dass der Prozessor zwar passend für die Anwendung ist, die notwendigen Signale aber nicht zur Verfügung stehen. Gleiches gilt für die Boardgröße. Je kleiner ein Modul ist, umso wahrscheinlicher wird es mechanisch in alle Geräte passen, für das der Prozessor passend ist. Daneben sind natürlich die allgemeinen Anforderungen nach Robustheit, Industrietauglichkeit und langfristige Verfügbarkeit wichtige Entscheidungskriterien. Eine entsprechende Softwareunterstützung für das Modul sollte vorhanden sein. Und der Preis spielt wie immer eine wichtige Rolle. Eine richtige und langfristig erfolgreiche Entscheidung für ein Modul ist also immer die Frage, ob das Modul Einschränkungen bezüglich des Prozessors bringt. Alle TQ-Module bieten diese Voraussetzungen als optimales Plattform-Modul: kleinste Bauform, alle Prozessorsignale verfügbar, robust, industrietauglich und mindestens zehn Jahre verfügbar.