Konkurrenzdruck zwingt die Embedded-Entwickler heute, ihren Design- und Entwicklungsprozess zu überarbeiten. Die Systeme werden komplexer, müssen mehr leisten, weniger Energie verbrauchen und dabei immer kleiner werden. Konventionelle Methoden stoßen hier schnell an ihre Grenzen. Dazu kommt, dass Entwickler ihre Geräte für Standards auslegen müssen, die selbst noch in der Entwicklung stecken, neue Märkte erschließen und sich an neuen Trends orientieren müssen. Das fordert viel mehr Flexibilität und Reaktionsfähigkeit im Design-Prozess als früher. Designer müssen nicht nur deutlich komplexere Systeme kreieren, sondern sie müssen auch in der Lage sein, sehr schnell neue oder abgeleitete Designs zu entwickeln. Mit diesen steigenden Anforderungen an die Design-Teams erscheint es nur logisch, dass Unternehmen die Entwicklungszeit und die dazugehörigen Ressourcen aufstocken, aber genau das Gegenteil ist der Fall. Kleinere Marktfenster zwingen sie nämlich, aufwändigere und flexiblere Systeme in viel kürzerer Zeit zu produzieren. Und um die Dinge noch schwieriger zu machen: Viele Design-Teams werden wegen wirtschaftlicher Zwänge kleiner anstatt größer. Folglich sind neue und effiziente Wege zur Entwicklung komplexer, leistungsstarker und anpassbarer Produkte für den zukünftigen Erfolg von entscheidender Bedeutung.
Immerhin eine Marktentwicklung bringt den Designern derzeit Vorteile: ARM-Prozessoren etablieren sich als dominante Plattform für Embedded-Systeme. Noch vor ein paar Jahren war der Prozessormarkt hochgradig fragmentiert. Power-PC-, RISC-, MIPS- und Sharc-Prozessoren haben miteinander konkurriert und um eine breite Marktakzeptanz gewetteifert. Mittlerweile ist der Markt gereift und viele Kunden setzen in Embedded-Anwendungen auf ARM als de-facto-Standard. Das hat zur Folge, dass immer mehr ARM-basierende Lösungen auf dem Markt zu finden sind, angefangen bei Standard-Produkten, über Soft-ARM-IP-Cores, bis hin zu Hard-IPs für die Implementierung in programmierbarer Logik und in ASICs.
MCU, ASIC und FPGA: Grenzen und Chancen
Trotz aller Vielfalt können gängige Implementierung von Embedded-Systemen die Anforderungen moderner Designs oft nicht erfüllen. So wären Multichip-Lösungen zwar relativ einfach umzusetzen, aber sie kosten viel, es mangelt an Flexibilität und sie erfüllen nicht die Anforderungen an Performance und Leistungsaufnahme. Im Gegenzug sind ASIC-SoCs mit integrierten festverdrahteten ARM-Cores zwar optimiert, stromsparend und performant, aber durch den enormen Entwicklungsaufwand dauert es lange, sie auf den Markt zu bringen. Außerdem sind sie unflexibel und für die große Mehrheit an Applikationen deutlich zu kostspielig. Um konkurrenzfähig zu bleiben, brauchen Entwickler von Embedded-Systemen daher eine andere Möglichkeit, um hochgradig differenzierte Produkte viel flexibler und effizienter entwickeln zu können: Zum Beispiel ein FPGA.
Eine Implementierung auf einem einzelnen FPGA punktet mit niedrigen Kosten und schnellem Time-to-Market. Sie stellt daher eine attraktive Alternative zu Multichip- und ASIC-SoC-Ansätzen dar. Und tatsächlich hat sich in der letzten Dekade gezeigt, dass Entwickler immer mehr Embedded-Prozessoren in FPGAs nutzen (Bild 1). Aber nicht alle FPGA-basierenden Lösungen eignen sich, um den heutigen strengen Anforderungen zu genügen. Traditionell wurden ARM-Systeme auf einem FPGA als HDL-basierende Soft-ARM-Cores implementiert. Dieser Ansatz ist eine gute Möglichkeit für Systeme, die keine großen Einschränkungen bezüglich Dichte, Leistungsaufnahme oder Performance aufweisen. Geht es aber um Systeme, die einem höheren Konkurrenzdruck unterliegen, reicht dieser Ansatz nicht aus – sie brauchen einen Prozessor-Kern in Hardware. Für eine wachsende Anzahl von Systemen bietet deshalb ein hochgradig optimierter, festverdrahteter ARM-Core auf einer FPGA-Plattform die optimale Lösung.
Dank der jüngsten Fortschritte in der FPGA-Technologie bieten Unternehmen wie Altera mittlerweile diese neuartigen SoC-Bausteine an (Bild 2). Diese Komponenten eröffnen ungeahnte Möglichkeiten für Embedded-Systeme mit höchsten Anforderungen. Die ARM-basierenden SoC-FPGAs kombinieren einen festverdrahteten ARM-Prozessor, Speicher-Controller, Peripheriefunktionen und eine kundenspezifisch veränderbare FPGA-Fabric auf einem gemeinsamen SoC. Das ARM-basierende SoC-FPGA von Altera verknüpft ein hochgradig optimiertes, festverdrahtetes Prozessorsystem (HPS, Hard Processor System) mit einem On-Chip-FPGA (Bild 3). Das HPS besteht aus einem Dual-Core-ARM-Prozessor, einem Memory-Controller mit mehreren Ports und einer Vielzahl von Peripherieelementen. Es kommt bei einer Leistungsaufnahme von weniger als 1,8 W auf eine Rechenleistung von bis zu 4000 MIPS (Dhrystone-2.1-Benchmark).
Wer in seinem Design einen Prozessorkern benötigt, hat von den Hard-IP-Blöcken viele Vorteile: Sie glänzen mit hoher Performance bei gleichzeitig niedriger Leistungsaufnahme und geringen Kosten und sie halten die FPGA-Logik-Ressourcen für die Produktdifferenzierung frei. Der Entwickler kann die integrierte Fabric nach seinen Vorstellungen nutzen, um seine applikationsspezifische Logik zu implementieren. Die Programmierbarkeit wiederum bringt die Flexibilität, um die Designs an neue oder sich verändernde Kommunikationsstandards oder Netzwerkprotokolle anzupassen oder ein Leistungstuning (Stichwort: Hardware-Beschleuniger) durchzuführen.
Applikationsbeispiel: Antrieb der nächsten Generation
In einem konventionellen Antriebsdesign (Bild 4a) übernimmt ein digitaler Signalprozessor (DSP) die zentralen Steuerungsfunktionen, ein Networking-ASIC kümmert sich um die Netzwerkprotokolle und ein FPGA steuert weitere Funktionen (in diesem Beispiel die I/O-Erweiterung). In einer SoC-FPGA-Implementierung sind diese Elemente alle auf einem einzigen Chip integriert (Bild 4b). Die SoC-FPGA-Implementierung erweitert sogar die Funktionalität, denn mit ihr lassen sich mehrere Motoren ansteuern und eine Vielzahl von Netzwerkprotokollen unterstützen. Außerdem kann der Entwickler mithilfe von Sicherheits-IP gewährleisten, dass der Controller in einer genau geregelten Art und Weise stoppt, wodurch das Design auch den neuen Sicherheitsstandards in der Industrie genügt.
Die ideale Kombination
Eine Single-Chip-Lösung verbessert Performance und Leistungsaufnahme deutlich gegenüber Multichip-Ansätzen. In einem Antriebssystem ist die Anzahl der Regelschleifen der wichtigste Leistungsparameter. Das SoC-FPGA bietet 20 mal so viele Regelschleifen als Multichip-Lösungen – statt 100 µs braucht eine Schleife nur noch 5 µs. Das führt zu einer deutlich verbesserten Leistungseffizienz, die bis zu 90 % der gesamten Betriebskosten eines Antriebs ausmachen kann. Im vorliegenden Beispiel verbraucht das SoC 37 Prozent weniger Leistung als die erwähnte Drei-Chip-Lösung.
Das SoC-FPGA reduziert zudem die Systemkosten: Durch die Kombination von drei oder mehr Komponenten in einem einzigen Baustein schrumpft die Stückliste (BOM) für das System. Außerdem lässt sich eine größere Funktionalität bei niedrigeren Kosten realisieren. Das SoC im Beispiel hat genug Ressourcen für zwei Motoren, während die Multichip-Lösung nur einen ansteuern kann. Für zwei Motoren wäre die Multichip-Lösung in doppelter Ausführung nötig – im Vergleich dazu spart ein SoC-FPGA 53 Prozent der Kosten. Das FPGA-SoC ist außerdem einfach skalierbar, um noch mehr Motoren und integrierte Antriebssysteme sowie eine Vielzahl von Protokollen zu unterstützen.
Eine Trendwende
Design-Teams, die auf FPGA-SoC setzen, können von den signifikanten Produktivitäts- und Wettbewerbsvorteilen der Technik profitieren. Hard-IP-Elemente bieten die größte Performance und höchste Dichte, verbrauchen am wenigsten Leistung und die integrierte FPGA-Fabric ermöglicht es darüber hinaus, sich schnell zu differenzieren sowie mehr und/oder kundenspezifische Funktionen zu realisieren. Das kann während der Design-Phase stattfinden, gelingt aber auch noch im Feld.
Dank der flexiblen Bausteine und der hochgradig automatisierten und gut unterstützten Design- und Software-Entwicklungs-Tools können Entwicklerteams ein kundenspezifisches SoC auf Basis von Standardbausteinen designen und das in einem Bruchteil der Zeit, die für die Entwicklung von ASICs oder Multichip-Lösungen notwendig wäre. Das resultierende Design ist außerdem flexibel, skalierbar, wiederverwendbar und einfach anpassbar. Die Design-Teams können schnell auf neue Märkte, sich verändernde Standards und schnellere Prozessknoten reagieren sowie die Produkte länger im Markt halten.
Todd Koelling
(lei)