Hallo,
Ansonsten wollte ich mit dem Thread mal ausloten, was es so an developerfreundlichen ARM-Geräten jenseits der Evaluationsboards gibt.
Also da wird wohl nicht viel bei raus kommen.
So wie ich das sehe gibt es da 2 Kategorien an interessanten ARM-Chips: einmal die typischen Microkontroller (Cortex-M[0..4], von etlichen Firmen wie NXP,STM,Freescale u.v.m.) und zum anderen die richtigen SoCs (wie den Tegra von NVidia, den Exynos von Samsung, den Snapdragon von Qualcomm, den OMAP von TI und etwas weniger bekannt die ARMADA von Marvell (wurde aus dem PXA entwickelt der von Intel übernommen wurde welche von den StrongARM abstammen, mit den PXA hab ich selber schon gearbeitet)).
Die Vertreter der Microkontroller-Klasse haben alle gewisse Gemeinsamkeiten wie das nur sehr kleine Mengen an RAM/Flash verfügbar sind und oft auch eine MMU fehlt (was beides den Einsatz von Linux wirksam verhindert) dafür gibt es da eine sehr große Fülle an Varianten und man bekommt eigentlich bei allen Hersteller
anständige Datenblätter usw. An Pehripherie wird oft Ethernet (meist nur 100MBit ganz selten auch mal 1GBit), USB (meistens maximal Full-Speed (1.1) als Device und/oder Host aber manchmal auch High-Speed (2.0) als Device und ganz selten sogar als Host mit einem EHCI-kompatiblen Interface) und all den anderen Kram den man so gewöhnt ist wie UART/SPI/I²C/CAN/LIN/.... Auch gute Development-Board bekommt man in allen möglichen Varianten für fast jede Familie der ARM-Microkontroller von etlichen Herstellern (nicht nur vom Chip-Hersteller selber), meistens liegt auch ein vollständer Schaltplan/Stückliste/... bei um auf Basis dessen ein eigenes Produkt zu entwickeln.
In der SoC-Klasse bekommt man oft keine vollständigen Datenblätter und auch nur selten frei käufliche Development-Boards. An Peripherie steckt meistens ein richtiger DRAM-Controller, Flash-Controller (meistens mit irgendeiner Boot-Fähigkeit), USB (meistens Host und Device mit High-Speed), ein paar UARTs, Bluetooth, Touch-Controller und ne GPU drin. Oft sind auch noch irgendwelche Funk-Module für WLAN, GPS oder auch GSM/EDGE/UMTS drin da ja Handys/Tablet-PCs das primäre Marktsegment sind das die Hersteller bedienen wollen. Leider fehlen oft ein paar Schnittstellen die benötigt werden um daraus einen normalen PC zu bauen, wie z.B. LAN und SATA. In dem Trim-Slice ist SATA z.B. über einen zusätzlichen USB-SATA-Chip angebunden was natürlich keine berauschenden Performance-Werte beim Umgang mit HDDs ermöglicht, LAN ist dort mit einem Realtek-Chip per PCI-Express angebunden. Immerhin hat der Tegra 2 von NVidia eine einzelne PCI-Express-Lane als Root-Port, die meisten anderen ARM-SoCs haben sowas überhaupt nicht so das es kaum möglich ist irgendein vermisstes Interface nach zurüsten, diese SoCs sind also so wie sie sind und fertig. Als ich im Februar 2011 auf der Embedded-World war habe ich an vielen Ständen sehr interessante Embedded-Boards mit dem Tegra 2 gesehen und man hat mir auch oft gesagt das NVidia den Embedded-Markt bedienen
will und demzufolge auch Datenblätter usw. veröffentlichen wird, nur leider ist das bis heute nicht passiert und die Auswahl an tatsächlich käuflichen Tegra 2 Boards ist auch eher kleiner als größer geworden. Die Hoffnung das tatsächlich mal einer der ARM-SoC-Hersteller sich diesen, sicher lukrativen, Markt erschließen will war also vergebens.
Es gibt zwar mit älteren ARM-SoCs durchaus interessante frei käufliche Boards aber einen echten PC kann man aus diesen auch nur selten bauen da keine echte Erweiterungsschnittstelle (wie eben PCI-Express) verfügbar ist und selbst einige Basics wie SATA konsequent fehlen. Dazu kommt das der RAM-Ausbau oft sehr bescheiden ist. Der Exynox unterstützt zwar 2 GB aber es gibt keine freien Boards damit. Der Tegra 2 untersützt auch nur maximal 1 GB RAM, so wie alle übrigen ARM-SoCs auch, aber der Tegra 3 soll immerhin schon 2 GB unterstützen.
Wer sich überlegt aus einem ARM-SoC einen halbwegs brauchbaren General-Purpose-PC zu bauen wird leider auf ganzer Linie enttäuscht. Das einzigste was zumindest auf dem Papier einen guten Eindruck macht ist der
ECX-1000 von Calxeda, der kann echte 4GB RAM und die nicht nur mit lahmen 32Bit Datenbus-Breite und maximal 800MT/s sondern mit vollen 64Bit Datenbus-Breite (eigentlich 72 Bit für ECC) und bis zu 1333 MT/s DDR3. SATA (mit AHCI-kompatiblen Host-Controller) und LAN sind auch schon drin, neben einem SD-Card-Controller und jeweils mehreren UART/SPI/I²C-Schnittstellen. Es fehlen ihm zwar 2 sehr wichtige Dinge, eine GPU und USB-Anschlüsse, aber da er mehrere PCI-Express-Root-Ports hat kann man beides extern nachrüsten. Von TI gibt es einen USB 3.0 Host-Controller mit xHCI-Interface für PCI-Express, sogar mit Datenblättern, und ne taugliche PCI-Express-GPU bekommt man gleich mit Platine in jedem Computer-Laden (sogar Versionen wo man auch freie Treiber für bekommt) so das dem eigentlich nichts im Wege steht um aus einem ECX-1000 einen echten vollwertigen PC zu bauen. Ob der Chip auch wirklich was taugt versuche ich gerade raus zu finden, ich hab bei Calxeda einfach mal Datenblätter angefordert.
Wenn irgendjemand noch andere interessante ARM-SoCs kennt so wäre es toll hier etwas darüber zu lesen.
An dem Performance-Vergleich, den Svenska verlinkt hat, finde ich besonders interessant das die beiden ARM-SoCs den beiden Atom-CPUs durchaus dicht auf den Fersen sind bzw. sogar oft überholen, auch der Pentium-M ist in einigen Disziplinen gar nicht mehr weit entfernt. Trotzdem benötigen die ARM-SoCs nur einen Bruchteil an elektrischer Energie, selbst gegenüber den Atom-Systemen. Ich denke (und hoffe) spätestens wenn erste ARMv8-Systeme verfügbar sind dürfte sowas gegenüber einem klassischen x86-PC eine ernstzunehmende Alternative darstellen und dann wird hoffentlich auch der Markt nach anständigen Datenblättern verlangen.
Grüße
Erik