Die Entwicklung von ASICs, ASSPs und SoCs ist und bleibt ein ebenso riskantes wie teures Geschäft. Wenn man außerdem berücksichtigt, dass 50 bis 70 Prozent des Entwicklungsaufwands auf die Funktions-Verifikation entfallen, so wird klar, warum traditionelle Verifikations-Methoden...
Die Entwicklung von ASICs, ASSPs und SoCs ist und bleibt ein ebenso riskantes wie teures Geschäft. Wenn man außerdem berücksichtigt, dass 50 bis 70 Prozent des Entwicklungsaufwands auf die Funktions-Verifikation entfallen, so wird klar, warum traditionelle Verifikations-Methoden allein nicht mehr ausreichen, um mit der wachsenden Komplexität der Designs Schritt zu halten.
Der Entwurf von Prototyping-Boards erfordert heutzutage den Umgang mit über 20 Leiterplattenlagen sowie einigen zehntausend Bauelementen auf der Platine. Hinzu kommen die Probleme der Stromversorgung, der Signalintegrität und des High-Speed-Designs, um nur einige zu nennen. All dies gehört nicht gerade zu den Stärken und Aufgaben von ASIC-Designern. Dass die Leiterplattenentwicklung mittlerweile sehr spezielle Kenntnisse voraussetzt, ist ein Grund dafür, weshalb kommerziell angebotene Prototyping-Boards mehr und mehr bevorzugt werden.
Auf die Software kommt es an
Zweck des Prototypings ist es, ASIC-, ASSP- oder SoC-Designs auf ihre funktionale Korrektheit innerhalb der Systemumgebung zu prüfen. Da an diesen Verifikationsläufen immer mehr Software beteiligt ist, werden mehr Prototypen für die Software-Entwicklung verwendet als für die Hardware-Verifikation. FPGA-basierte Prototypen eignen sich als Verifikations-Plattform, weil sich Software mit ihnen um mehrere Größenordnungen schneller verarbeiten lässt als mit jeder alternativen Methode. Die RTL-Simulation überzeugt zwar durch Komfort und Debug-Möglichkeiten. Wegen ihrer geringen Simulations-Performance kommt sie jedoch für die Software-Entwicklung ebenso wenig in Frage wie für die System-Integration und -Verifikation. Für das Prototyping-System ergeben sich hierdurch völlig neue Anforderungen. Gefragt sind in erster Linie Zuverlässigkeit, aber auch einfache Anwendung, unkomplizierter Aufbau und selbstverständlich die nötige Leistungsfähigkeit, um eine für die Software-Entwicklung taugliche Plattform zur Verfügung zu stellen. Allerdings ist dies nicht der einzige Software-Aspekt, der hier im Spiel ist. Das Implementieren und Austesten des Designs setzt nicht nur leistungsstarke Software-Tools voraus, sondern verlangt auch, dass diese Tools reibungslos miteinander und mit dem Prototyping-Board selbst kooperieren. Die Einbindung der Prototyp-Hardware in die Design-Implementierung und die Debugging-Software hat einen klaren Vorteil, denn durch diese enge Bindung wird der gesamte Prozess schneller und weniger fehleranfällig.