ARM Call for Papers
Die große Konferenz für ARM-Systementwicklung am 11. und 12. Juli 2012 in München bietet Entwicklern die Gelegenheit, sich detailliertes Wissen über die aktuellen Cortex-Architekturen anzueignen, die mittlerweile zum Industriestandard avanciert sind.
Ausführliche Informationen:
www.arm-entwicklerkonferenz.de
iPad 3 Teardown & Light+Building
Mit dem Lava Xolo X900 gibt es erstmals ein Smartphone, das auf einem Atom-Prozessor von Intel basiert. Kann das mit ARM mithalten? Wir haben das untersucht.
Mit dem Cortex-M0+ hat ARM im März den kleinsten 32-bit-Core der Welt vorgestellt. Wir haben ihn uns einmal genauer angeschaut.
Der Tegra-3 von Nvidia ist der erste Quad-Core-Prozessor für Smartphones und Handys - ganz aktuell im neuen Galaxy S3. Doch bringen vier Kerne im Smartphone überhaupt etwas?
Zahlreiche Hersteller bieten im Netz Online-Tools, zeitlich begrenzte Testversionen oder ganze Programmme zum Download an. Wir haben eine kleine Auswahl davon zusammengestellt.
Produkte des Jahres 2012
Events
Marktübersichten Bauelemente
Wer bietet was?
Schnelle Information auf einen Klick!
Electronic WebLessons
Die Electronic WebLessons vermitteln multimedial aufbereitet Basiswissen zum Thema Elektronik. Hier können Sie ihr Praxiswissen auffrischen oder sich die Grundlagen der Elektronik neu aneignen.
Mikroprozessoren
IBM fordert ARM und Mips heraus
Anzeige
Einen anderen Ansatz als die Wettbewerber wählte Mips. Selbst zwei Jahre nach der Markteinführung des MIPS32 1004Kf ist er der einzige Prozessor auf dem Markt, der das Hardware-Multithreading auf einem Core erlaubt. Dies bedeutet, dass sich zwei Software-Prozesse zur gleichen Zeit dieselbe Pipeline teilen können und ein Kontextwechsel innerhalb eines Taktzyklus möglich ist – dasselbe Prinzip setzt Intel unter der Bezeichnung „Hyperthreading“ ein. Virtuell arbeitet der Quadcore-Prozessor damit wie der 8-Core-IBM.
Auf der anderen Seite wird der MIPS32 1004Kf im Vergleich zum PowerPC 476FP durch eine einfache uniskalare Pipeline und In-Order- Befehlsausführung ausgebremst. Auf Thread-Ebene kann er damit nicht gegen den IBM bestehen, das Hardware- Multithreading erlaubt jedoch eine bessere Parallelisierung auf Befehlsebene als eine superskalare Ausführung.
Von den reinen DMIPS-Werten schlägt IBM Mips mit 2,5 DMIPS/ MHz zu 1,56 DMIPS/MHz. Der Dhrystone- Benchmark wurde allerdings für Single-Thread-Architekturen entwickelt und sagt nichts darüber aus, wie schnell mehrere Threads auf mehreren Cores ausgeführt werden. Insofern verwundert dieses Ergebnis nicht, da, wie oben beschrieben, der IBM die wesentlich leistungsfähigere Mikroarchitektur beinhaltet.
Der CoreMark-Benchmark von EEMBC [3] wäre für einen Leistungsvergleich erheblich besser geeignet. Hier liegen folgende Zahlen vor: Der ARM-Cortex-A9 liefert mit vier Threads auf vier Cores 11,522 Core-Marks/MHz. Für den MIPS32 1004k (dies ist die Version ohne FPU) wurden bei acht Threads auf vier Cores 11,650 CoreMarks/MHz erzielt – beide Prozessoren liegen damit auf Augenhöhe.
Laut Mips ist der Ablauf von zwei CoreMark-Instanzen in zwei Hardware-Threads um 25 % schneller, als wenn CoreMark zweimal auf einem für Single-Threading konfigurierten Prozessor läuft.
IBM setzt CoreMark zwar intern ein, konnte sich aber bis heute nicht dazu durchringen, die Ergebnisse zu veröffentlichen – schade! Wenn man annimmt, dass man mit acht Threads auf vier Cores tatsächlich eine fast ebenso hohe Rechenleistung/MHz erzielen kann wie bei acht Threads auf acht Cores (dies hängt sicher von der jeweiligen Anwendung ab), kommen wieder andere Faktoren ins Spiel, wie die erzielbare Taktfrequenz selbst.
Der MIPS32 1004Kf kann in einer geschwindigkeitsoptimierten Implementierung in TSMCs 40-nm-Bulk- CMOS-Prozess 1,3 GHz erreichen. Der PowerPC 476FP erreicht als Hard- Makro in IBMs SOI-Prozess, wie schon erwähnt, 1,6 GHz; wenn man bei einer Implementierung als Soft-Core die Verluste durch Synthese und Bulk-CMOS berücksichtigt, dürfte er sich in ähnlichen Frequenz-Regionen bewegen wie der MIPS32 1004Kf.
Was das Thema Kohärenz angeht (I/O-Steuerung, Debugging), sind beide identisch aufgestellt, bei der Datenübertragungsrate vom und zum L2- Cache hat Mips jedoch Vorteile: Der 1024Kf hat zwei separate 256-bit- Schnittstellen für Lese- und Schreibzugriffe, der IBM „nur“ eine 256-bit- Schnittstelle für Lesezugriffe und eine 128-bit-Schnittstelle fürs Schreiben. Beim On-Chip-Bus bewegen sich beide wieder auf Augenhöhe: Das Open- Core-Protocol (OCP) von Mips hat zwei 64-bit-Busse für Lesen und Schreiben, die jeweils mit voller Core-Frequenz getaktet werden. IBM hat 128-bit-Datenkanäle, die jedoch maximal mit halber Core-Frequenz arbeiten.
Die Leistungsaufnahme macht den Unterschied
Die große Stärke des MIP32 1004kf ist seine vergleichsweise geringe Leistungsaufnahme: 0,17 mW/MHz in TSMCs 40-nm-G-Prozess stehen 1,0 mW/MHz des IBM gegenüber (jeweils ohne L2-Cache) und bedeuten, dass der MIPS 3,6-Mal soviel DMIPS/MHz liefert wie der IBM. Hier muss der PowerPC 476FP für seine komplexe Mikroarchitektur bezahlen.
Abgesehen davon ist der Mips- Core auch deutlich kleiner: 1,0 mm2 Silizium stehen 3,6 mm2 gegenüber, selbst wenn man berücksichtigt, dass 45-nm-SOI (IBM) hier 40-nm-Bulk- CMOS (Mips) gegenüberstehen, ist Mips deutlich kleiner. TSMCs 40-nm- Prozess arbeitet nämlich nur mit optischem Schrumpfen, die Design-Regeln sind dieselben wie beim 45-nm- Prozess.
Fazit
Der IBM 476FP wird es aus zwei Gründen schwer haben, ARM und Mips signifikante Marktanteile abzujagen: Er ist wesentlich energiehungriger und er trifft insbesondere bei ARM auf ein extrem gut ausgebautes Ecosystem mit unzähligen Partnerfirmen, Tools und verfügbaren Software-Entwicklern. Für die Anwendungen, die jedoch mehr als ein vier-Wege-SMP benötigen (z.B. Netzwerk und Kommunikation), gibt es derzeit noch keine Alternative zum PowerPC 476FP. Und last but not least: (Neue) Konkurrenz belebt das Geschäft.
Eine ausführliche Tabelle, in der die verschiedenen Cores verglichen werden, finden Sie in der Elektronik 16/2010 auf Seite 28.
Literatur
[1] Riemenschneider, F.: ARMs neue Mittelklasse. Elektronik embedded 2010, S. 24ff.
[2] Riemenschneider, F.: Multicore-Multithreading mit Mips. Elektronik 2008, H. 22, S. 46ff.
[3] Riemenschneider, F.: EEMBC stellt Open-Source-Benchmark vor. Elektronik 2009, H. 16, S. 15.
[4] Informationen über IBMs PowerPC 476FP: www-01.ibm.com/chips/techlib/ techlib.nsf/products/PowerPC_476FP_ Embedded_Core
[5] Informationen über IBMs Bus Core- Connect PLB6: www-01.ibm.com/chips/ techlib/techlib.nsf/products/Core- Connect_PLB6_Bus_Cores
1. Teil: IBM fordert ARM und Mips heraus
2. Teil: PowerPC vs. ARM Cortex-A9
3. Teil: Mips und das Multithreading
Weiterführende Links:








