Embbedded-Boards
RISC-Module versus x86-Designs
ARM- und QorIQ-basierte Embedded-Baugruppen profitieren von den aktuellen Fortschritten im Halbleiter- und Software-Bereich und erschließen sich so neue Einsatzmöglichkeiten. Die Anbieter setzen dabei auf unterschiedliche Modul-Strategien.
Waren modulare Embedded-Baugruppen auf Basis von RISC-Prozessoren bislang hauptsächlich für Applikationen mit Low-Power- oder Low-Cost-Anforderungen im Einsatz, eröffnen sich ihnen jetzt neue Chancen: Durch Microsofts künftigen Windows-8-Support nähern sich leistungsstarke ARM-Module den klassischen x86-Einsatzfeldern an und die QorIQ-Architektur kann dank gesteigert Core-Anzahl und Rechenleistung ebenfalls neue Aufgaben adressieren.
Allerdings bleibt eine Besonderheit der RISC-Welt erhalten, die einen erheblichen Unterschied zur x86-Branche ausmacht: Die Schnittstellenvielfalt der RISC-Chips, da die Halbleiterhersteller ihre Bausteine meist stark auf einen Anwendungsbereich hin optimieren. Das macht es für die Baugruppenanbieter schwer einen Modul-Standard zu entwickeln: Entweder man führt alle Signale vom Chip auf die Modulstecker und ist damit zu nichts kompatibel oder man konzentriert sich auf einen gemeinsamen Nenner und lässt damit viel I/O-Potenzial der Bausteine ungenutzt. Im Vergleich dazu hat es die x86-Welt einfacher: Eine x86-Baugruppe ist im Prinzip immer ein PC und nicht diesem Standard entsprechende I/Os werden über den Bus angekoppelt.
Die Anbieter von RISC-Modulen fahren deshalb sehr unterschiedliche Strategien, um der Heterogenität der RISC-Bausteine Herr zu werden. So setzt TQ beispielsweise auf das Konzept »alle Schnittstellen des Chips herausführen und die Modulfläche minimieren«. Damit holt das Unternehmen das Maximum aus dem jeweiligen Baustein, die Module sind aber nicht untereinander kompatibel.
Was das im Einzelnen bedeutet veranschaulicht das Minimodul (26 mm x 40 mm) TQMa28: Das Board basiert auf dem i.MX28 (i.MX283 bzw. i.MX287) und bietet ein ausgewogenes Verhältnis zwischen Rechen- und Grafikleistung. Die Grundlage dafür liefert der ARM926-Core mit einer Taktung von bis zu 450 MHz. Das Modul eignet sich damit für Smart Metering sowie einfache Visualisierungs- und Steuerungsaufgaben. Alle funktionalen Pins des Prozessors sind auf die Modul-Steckverbinder (2 x 80 Pins) herausgeführt. Damit stehen dem Anwender zahlreiche I/Os zur Verfügung: Bis zu 2 x Ethernet (L2 Switch), bis zu 2 x CAN 2.0B, bis zu 5 x UART, USB 2.0 Full-Speed Host, USB High-Speed On-The-Go, SDIO/MMC, 1-Wire, bis zu 2 x I2C, bis zu 2 x I2S, bis zu 2 x SPI, GPIO, bis zu 8 x 12-Bit ADC Kanäle (1 x High Speed), bis zu 8 x PWM und ein 24-Bit-TFT-Interface. Als Betriebssystem stehen Linux 2.6 und Windows CE 6.0 bereit. Die typische Leistungsaufnahme liegt bei unter 1 W.
Wichtig für Module ohne Standard-Pin-Out sind die vom Hersteller gebotenen Evaluierungs-Boards. Hier bietet TQ mit »STKDT070-AA« sogar eine Starter-Kit mit 7-Zoll-Touch-Display (WVGA 800x480), Touchpen und Kabelsatz an. Mit den aufeinander abgestimmten Komponenten kann sofort mit der Entwicklung grafischer Interfaces begonnen werden. Für die Entwicklung eigener Hardware können die geprüften und qualifizierten Schaltungsteile des Starter-Kits in eigene Designs übernommen werden.

RISC-Module geben Gas
Doppelstrategie: CPU-abhängige und CPU-neutrale Standards
Auf eine Doppelstrategie für seine Modul-Serien setzt hingegen Phytec . So haben die Steckverbinder des "phyCORE"-Konzepts eine individuell auf den jeweiligen Controller des Moduls zugeschnittene Pin-Belegung. Alle wesentlichen Signale - insbesondere auch Adress- und Datenbus und natürlich alle Schnittstellen des Controllers - stehen für das Design eines Basis-Boards zur Verfügung.
Einen komplett anderen Ansatz verfolgt das "phyCARD"-Konzept: Eine Vielzahl von Embedded-Lösungen setzen eine immer wieder gleiche Menge von Schnittstellen voraus. Zu diesen zählen I2C, SPI, Ethernet (10/100 MBit/s), Audio, UART, USB, SDIO/ MMC, GPIO, JTAG und LVDS. Phytec hat deshalb den Embedded-Bus "X-Arc" definiert, der diese immer wiederkehrenden Schnittstellen vom Modul herunter führt. Alle phyCARD-Module haben die gleichen Steckverbinder und identische Pin-Belegungen. Die Basisplatine als Schnittstelle zur jeweiligen Applikation kommuniziert daher mit dem Prozessorkern über Standardschnittstellen. Durch Bridges zu SPI, I2C oder USB lassen sich weitere Schnittstellen auf der Basisplatine implementieren.
Produktdesigns, die auf phyCARDs aufbauen, können daher mit unterschiedlichen Controller-Architekturen realisiert werden, ohne die Basisplatine zu verändern. Derartige Produkte sind flexibel an die Marktanforderungen in Leistung und Preis anpassbar. Zukünftige Leistungssteigerungen lassen sich damit einfach integrieren; ebenso wird der Schrecken von Bauteilabkündigungen - speziell des Controllers - genommen.
Alle phyCARDs haben einen Steckverbinder mit definierter Pin-Belegung. Da unterschiedliche Controller unterschiedliche Logik-Spannungen aufweisen, ändert Phytec nicht an den aus der Logik-Spanung abgeleiteten I/O-Pegeln auf den phyCARD-Modulen. Wird für ein Basis-Board die Verwendung unterschiedlicher phyCARDs gewünscht, müssen die I/O-Pegel auf dem Basis-Board mittels Level-Shifter auf die entsprechenden Pegel angepasst werden.
Doppelstrategie: RISC-Standard und x86/RISC-Konzept
Von einer Doppelstrategie, um den Abstand zwischen RISC und x86 zu verkleinern, kann man auch bei MSC sprechen. Mit "nanoRISC" hat das Unternehmen einen skalierbaren Hausstandard für ARM basierte Module entwickelt. Die nanoRISC-Module bieten durch ihre Pin-Kompatibilität und die Verwendbarkeit unterschiedlicher CPUs ein hohes Maß an Skalierbarkeit - aktuell von 400-MHz-getakteten ARM9-Derivaten bis hin zu 1-GHz-Cortex A8-Cores. Darüber hinaus kennzeichnet die 50 mm x 70 mm großen Module eine geringe typische Verlustleistung von unter 3 W. Über einen 230-Pin-MXM-Verbinder haben Entwickler Schnittstellen wie Ethernet, USB, CAN, UART, I2C, SPI, GPIO, Camera, Audio, ADC, Touch und Display direkt verfügbar. Die Grafikleistung erreicht je nach verwendeter CPU und Nutzung der integrierten 2D/3D-Grafikeinheit und entsprechender Codex Video-Auflösungen bis zu 1080p.
Im unteren Leistungsbereich kommen die nanoRISC-Module vorrangig in Applikationen zum Einsatz, die durch gestiegene Anforderungen sowohl im Bereich Visualisierung und Bedienung als auch der Kommunikation mit Ethernet oder USB einen Umstieg vom Mikrocontroller zum Mikroprozessor erforderlich machen. Im oberen Leistungsbereich stoßen nanoRISC-Module mit Cortex-A8-CPU und Taktfrequenzen bis 1 GHz vor in Richtung x86.
Noch einen Schritt weiter geht MSC mit dem Qseven-Modul "Q7-NT2". Es basiert auf dem Low-Power-Prozessor "Tegra 290" von Nvidia mit Dual-Core-ARM-Cortex-A9, der mit bis zu 1 GHz getaktet wird. Ursprünglich war Qseven für x86 ausgelegt, speziell für Intels Atom, seit September letzten Jahres sieht die Version 1.20 des offenen Qseven-Standards auch die ARM/RISC-Prozessorarchitektur vor. Damit kann MSC seinen Kunden eine Brücke zwischen den zwei Architekturwelten ARM und x86 anbieten.
Der onboard Ultra-Low-Power-3D-Grafikcontroller "GeForce OpenGL ES 2.0" von Nvidia bietet dabei eine Full-HD-Auflösung von 1920 x 1080 Bildpunkten sowie MPEG4/H.264 Video Encoding (D1) und Decoding (Full-HD). Zum Anschluss von zwei großflächigen Displays sind eine HDMI-1.3-Schnittstelle und ein Dual-Channel-LVDS-Interface vorgesehen. Über den Videoeingang lässt sich eine Kamera anschließen. Als Speicher sind auf dem Modul ein bis zu 1 GByte großes DDR2 SDRAM und NAND-Flash mit einer maximalen Kapazität von 8 GByte vorgesehen.
Dank dieser besonderen Grafikfunktionalität ist das Qseven-Modul Q7-NT2 für Visualisierungsanwendungen, z.B. im Medizinbereich, und für Bildaufbereitungsaufgaben prädestiniert - einer traditionellen x86-Domäne. Ebenfalls können damit anspruchsvolle Digital Signage-, Multimedia-, Entertainment- und Internet-TV-Systeme realisiert werden. An Standardschnittstellen verfügt die Baugruppe über 3 x PCI-Express-x1, bis zu vier USB-2.0-Hosts, ein USB-OTG, ein serielles UART-Interface, AC97-Audio und 10/100/1000-Base-T-Ethernet (IEEE1588 Real Time). Zusätzlich sind eine I2C-Schnittstelle bis 400 KBit/s und ein SPI-Interface vorhanden. Der Anschluss einer Speicherkarte ist über die SD/SDIO/MMC-Schnittstelle möglich. Die Anwenderdaten können auch über zwei SATA-II-Kanäle gespeichert werden.
QorIQ für COM Express
Ebenfalls Einen Brückenschlag zwischen RISC und x86 wagt Emerson - allerdings mit Hilfe der QorIQ-Architektur und COM Express. COM Express ist der momentan beliebteste x86-Computer-on-Module-Standard, daher überraschte Emerson die gesamte Branche vor rund zwei Jahren mit der Ankündigung QorIQ-Prozessoren nutzen zu wollen. Mit den drei neuen Baugruppen COMX-P3041, COMX-P4040 und COMX-P5020 verdoppelt Emerson jetzt nicht nur die Anzahl seiner QorIQ basierten COM-Express-Module, sondern schließt auch gleich die Leistungslücken der bisherigen Baugruppen COMX-P1022, COMX-P2020 und COMX-P4080. Darüber hinaus belegt die Ausweitung der Produktpalette das Kundeninteresse an Emersons Ansatz. Alle Module unterstützen ein oder zwei 2 GByte DDR-1333-ECC-SO-UDIMMs. Zusätzlich stehen zwölf konfigurierbare SERDES-Linien, 10G-XAUI, SRIO, GPIO, USB 2.0, PCI Express und Gigabit-Ethernet zur Verfügung.
Emerson adressiert damit kommunikationslastige Anwendungen wie Enterprise- und Service-Provider-Router, Switches, Base Station Controllers (BSCs), Radio Network Controllers (RNCs) und Long-Term Evolution Infrastrukturprodukte (LTE) - der Einsatz in anderen Embedded-Bereichen ist aber nicht ausgeschlossen.
QorIQ für AMC
Kontron nutzt ebenfalls QorIQ-Prozessoren, vertraut aber auf AMC-Module, um die Leistungsfähigkeit der Prozessor-Serie zu erschließen. Mit dem Single-Width-AdvancedMC-Prozessormodul AM4120 bietet Kontron ein erstes AMC-Modul an. Die neue Modulreihe ist für ein weites Anwendungsfeld ausgelegt, von kostensensitiven Applikationen über leistungsstarke Data-Plane- bis hin zu Control-Plane-Applikationen.
Das Prozessormodul ist ausgestattet mit dem Dual-Core-Prozessor QorIQ P2020 (1,2 GHz), basierend auf der Power-Architecture e500. Mit Funktionen wie dem universellen Bootloader U-Boot und redundantem, persistentem Speicher für zyklische Datensicherungen sorgt es für eine hohe Applikationsverfügbarkeit. Für ein vereinfachtes Systemmanagement und hohe Zuverlässigkeit integriert das AMC einen dedizierten Module Management Controller (MMC) für das Board-Management. Damit unterstützt es grundlegende IPMI-Befehle und ermöglicht so, den Modulstatus im System zu überwachen. Zudem sorgen die lange Verfügbarkeit der Freescale-Prozessoren bis mindestens 2018, die Komponentenauswahl und der integrierte Sockel für MicroSDHC-Karten - der Unabhängigkeit von abkündbaren Flash-Bausteinen gewährleistet - für eine hohe Langzeitverfügbarkeit.
Das Modul bietet einen flexiblen Datenaustausch über vier SERDES-Linien, die zu den AMC-Ports 4 bis 7 geroutet werden. Sie sind entweder als PCI-Express-Ports (Root Complex oder End Point) oder als SRIO-Ports (Host oder Agent) konfigurierbar, für Applikationen die eine hardwarenahe Programmierung ohne aufwendigen Overhead benötigen. Damit ist das AMC flexibel in unterschiedlichen Systemkonfigurationen einsetzbar. Zusätzlich bietet es diverse Optionen zum Booten des Betriebssystems, beispielsweise von einer leicht austauschbaren MicroSDHC-Karte (was Updates vereinfacht) oder vom NOR-Flash oder dem gelöteten NAND-Flash für besonders robust auszulegende Applikationen. Für weitere Flexibilität in der Inter- und Intra-Systemkommunikation unterstützt die Baugruppe bis zu drei Gigabit-Ethernet-Kanäle die entweder zum AMC Port 0 sowie zu zwei RJ45-Schnittstellen an der Frontblende geroutet werden oder auf die AMC Ports 0 und 1 sowie an einen Port an der Frontblende gelegt werden können.
Je nach Applikationsanforderung kann das Prozessormodul auch in Systemkonfigurationen ohne MCH eingesetzt werden. Dadurch können die Entwicklungskosten und Entwicklungszeit für Applikationen in Märkten wie Industrielle Automation, Medizintechnik, Kommunikation, Verteidigung, Verkehrs- und Transportwesen und Avionik noch weiter reduziert werden. Für besonders robust auszulegende Applikationen ist das Kontron AM4120 auf Projektbasis auch in einer Version für den erweiterten Temperaturbereich verfügbar. Das AdvancedMC-Prozessormodul unterstützt den Bootloader U-Boot, IPMI, VxWorks 6.9 und Linux LTIB.
Multimedial mit Touch
Kleinere Embedded-Anbieter von RISC-Modulen orientieren sich bei der Auslegung ihrer Angebote stärker an der Applikation, so beispielsweise Ka-Ro mit seinem TX53-Modul auf Basis des Multimediaprozessors i.MX53 von Freescale. Der i.MX53 markiert eine neue Ära für industrielle Anwendungen, da er die Leistung liefert, die eine neue Generation von Applikationen mit hohem visuellen Anteil und Touch-Eigenschaften benötigt, erklärt Michael Vyskocil, Entwicklungsleiter von Ka-Ro electronics. "Mit unserem TX53-Modul leisten wir für Applikations-Ingenieure die Vorarbeit, so dass sie sich voll auf ihre kundenspezifischen Aufgaben konzentrieren und ihre Designs sehr zeitnah und kosteneffizient realisieren können.«
In der für industrielle Applikationen geeigneten Version des TX53-Moduls, für einen erweiterten Temperaturbereich von -40°C bis +85°C, ist neben zwei CAN-Bussen auch und eine Unterstützung nach IEEE 1588 für Echtzeit-Ethernet-Anwendungen enthalten. Zudem ist der iMX53 dank dem integrieren Grafikbeschleuniger mit Android lauffähig und wird somit dem wachsenden Trend zu animierten Bildschirm- bzw. Multitouch-Applikationen für den Industrieeinsatz gerecht.
IP-Spezialist
SSV Software Systems adressiert hingegen IP-basierte Embedded-System-Anwendungen mit einem Miniatur-CoM mit »POCO«-Framework. Der "DNP/9265" ist ein Computer-on-Module aus der DIL/NetPC-Famlie, der mit einem Low-Power ARM9-Prozessor (192 MHz) betrieben wird. Die Speicherausstattung besteht aus 32 MBytes RAM und 32 MBytes NOR-Flash. Schnittstellenmäßig stehen 3 x UART, 1 x SPI Master/Slave, 1 x I2C Master/Slave, 1 x CAN, 1 x USB 2.0 Host, 1 x SD-Card-Interface, 1 x 10/100-MBit/s-Ethernet sowie verschiene GPIOs zur Verfügung.
Der DNP/9265 wird bereits mit einem im NOR-Flash vorinstallierten Linux 2.6 ausgeliefert. Das POCO-Framework ist eine für vernetzte Embedded Systeme entwickelte C++-Bibliothek, die unter einer Open-Source-Lizenz steht. POCO bietet unter anderem umfangreiche Funktionen für Multithreading, Streams, Zugriffe auf das Linux-Dateisystem, Logging, Shared Libraries sowie das dynamische Laden von C++-Klassen zur Laufzeit. Darüber hinaus werden TCP/IP-Sockets, FTP, SMTP, POP3 und SSL/TLS unterstützt. Für Web-basierte Anwendungen findet man in den POCO-Bibliotheken sowohl einen http-Client als auch einen http-Server. Letzter ermöglicht den Aufbau schneller Web-Benutzerschnittstellen. Darüber hinaus bietet POCO Bibliotheksfunktionen für die XML-Verarbeitung (SAX2, DOM) sowie den Zugriff auf SQL-Datenbanken (ODBC, MySQL, SQLite).
Die Beispiele zeigen nicht nur wie vielfältig der Markt für RISC-Module ist, sondern auch wie unterschiedlich die Strategien der einzelnen Anbieter sind. Große Standards, wie sie in der x86-Welt bekannt sind, wird es wohl auf absehbare Zeit nicht geben. Durch die Vielfalt an Konzepten und Strategien ist aber ein "Maßanzug von der Stange" für viele Anwender möglich.










