Computer on Modules Der Softwaresupport macht letztlich den Unterschied

Autor / Redakteur: Hubert Hafner * / Holger Heller

Diverse COM-Spezifikationen für ARM/SoC-Prozessoren, Module, Carrierboards und Entwicklungskits erleichtern den Entwicklungsstart. Neben dem Formfaktor ist auch der Softwaresupport entscheidend.

Firmen zum Thema

SMARC-Module von Kontron: ein grafikstarkes mit NVIDIA Tegra 3, eine breit skalierbare Reihe mit Freescales i.MX6 Single-, Dual- und Quad-Core-CPUs und ein Ultra-Low-Power-Modul mit TIs Sitara AM3874
SMARC-Module von Kontron: ein grafikstarkes mit NVIDIA Tegra 3, eine breit skalierbare Reihe mit Freescales i.MX6 Single-, Dual- und Quad-Core-CPUs und ein Ultra-Low-Power-Modul mit TIs Sitara AM3874
(Kontron)

Die neuen ARM-Prozessoren, die speziell für die neuen Generationen von Smartphones und Tablets entwickelt wurden, stoßen auch im Embedded-Markt auf eine große Nachfrage. Durch ihre dedizierte, aufgabenoptimierte Auslegung bieten sie eine kompakte Stellfläche und eine niedrige Energieaufnahme.

Allerdings stellt diese dedizierte Auslegung der ARM-SoCs auch eigene Anforderungen an die Applikationsentwicklung. Verschiedene Computer-on-Modules (COMs) von unterschiedlichen Herstellern sollen es dem Kunden ermöglichen, den Prozessor einfacher einzudesignen, als wenn sie ihr dediziertes Design komplett neu aufsetzen müssten.

Bildergalerie
Bildergalerie mit 6 Bildern

Zu unterscheiden sind dabei proprietäre Module von Modulen auf Basis offener Standards. Letztere sind zu bevorzugen, weil um sie herum ein Ökosystem mit einer deutlich höheren Langzeitverfügbarkeit sowie passender Wettbewerb entsteht. Unter den offenen Standards wiederum gibt auf der einen Seite solche, die aus der x86-Welt stammen und quasi umgewidmet wurden.

Auf der anderen Seite gibt es die neue Smart-Mobility-ARChitektur, kurz SMARC: Die erste reinrassige herstellerunabhängige Spezifikation der SGET. Hier ist letztlich der Standard mit klarem Fokus auf die spezifische Prozessortechnologie zu bevorzugen. Denn zu viele untereinander nicht kompatible Optionen verwässern die Durchsetzungskraft eines Standards. Sonderformen, Zwischenlösungen und Zwitterfunktionen sollten deshalb weitestgehend ausgeschlossen sein. Insofern kann die Wahl des Module-Standards durchaus schnell getroffen werden.

Doch nicht nur die Wahl des passenden Formfaktors ist entscheidend. Bei allen Modulen sowie den neuen SMARC-Modulen gibt es bei der Entscheidung zwischen den einzelnen Herstellern noch ein weiteres entscheidendes Kriterium: Den Softwaresupport. Und das hat seinen Grund.

Dedizierte Hardware verlangt dedizierte Software

Aufgrund der diversifizierten Auslegung der ARM-Prozessoren und der damit einhergehenden engen Verknüpfung von Hard- und Software lässt sich ein Standard-OS nicht auf jedwedem ARM-Prozessor integrieren. Meist sind Anpassungen notwendig. Ein Nvidia-Tegra-3-Prozessor basierend auf dem ARM Cortex-A9 verlangt beispielsweise schon einen anderen Softwaresupport als ein Nvidia Tegra 2. Und keine der dafür angepassten OS-Versionen läuft 1:1 auf einem Sitara von Texas Instruments oder Freescale i.MX6. Für jeden ARM-SoC muss vielmehr ein eigenes OS-Image individuell zusammengestellt werden.

Der Grund dafür liegt unter anderem in der individuellen Ausformung eines jeden SoCs, der neben dem General-Purpose-Prozessor weitere individuelle Funktionseinheiten integriert. Der OS-Support muss folglich dediziert auf die jeweiligen ARM-SoC zugeschnitten sein. Noch dedizierter wird es, wenn man ein eigenes Carrierboard mit applikationsspezifischen Interfaces entwickelt – was bei COMs üblich ist.

Anwender wollen auf der anderen Seite jedoch für den Neueinstieg wie auch den Umstieg auf neue oder andere ARM-SoCs einen ähnlichen Komfort, wie sie ihn von den standardisierten x86-COM-Express- und ETX-Modulen kennen. Hier können sie nämlich die Entwicklung direkt auf der Zielplattform starten und müssen sich um das Betriebssystem und die darunterliegenden Softwarefragen vergleichsweise weniger Sorgen machen. Deutlich mehr Aufmerksamkeit ist folglich bei ARM/SoC-Designs geboten. Worauf sollten Kunden, die Computer-on-Modules einsetzen wollen, deshalb achten?

Dedizierte Betriebssystem-Konfiguration

Zuerst einmal zählt für die softwareseitige Applikationsentwicklung natürlich der Betriebssystem-Support: Für ARM-basierte Low-Profile-Applikationen sind in erster Linie schlanke, auf den Bedarf kompilierbare Betriebssysteme mit einem kleinen Speicher-Footprint gefragt. Interessant sind hier vor allem Linux, das auf Linux basierende Android sowie Windows Embedded Compact 7 (ehemals Windows CE). Um die Stärken der ARM-Applikation voll zur Geltung zu bringen, sollten diese OS genau auf die Aufgabenstellung hin optimiert werden.

Dies ist zunächst einmal mit Implementierungsaufwand verbunden. Das Betriebssystem sollte nämlich ausschließlich die Bibliotheken und Funktionsblöcke beinhalten, die für die Applikation auch benötigt werden. Alles andere kann entfallen, um den Speicherbedarf möglichst gering zu halten und die Performance zu optimieren.

(ID:37541330)