Anbieter zum Thema
Auch erfolgt hier die Festlegung, welche IPs zu Einsatz kommen. Beispielsweise kann es erforderlich sein, einen Prozessor für Steuerungs- und Debugging-Aufgaben in das FPGA zu integrieren, da bei hohen Geschwindigkeiten konventionelle Messungen am Chip teilweise nicht mehr möglich sind und mittels geeigneter Software und Pattern-Generatoren interne Selftests durchgeführt werden müssen. Anhand entsprechender Statusregister, Error-Counter, Fehlerbits etc. lässt sich so feststellen, ob die gewünschte Funktionalität erreicht ist. Dies ist die Grundlage, um Fehlfunktionen und Fehler Schritt für Schritt beheben zu können. Während der Konzeptphase erfolgt auch eine Abschätzung der Systemperformance und Echtzeitfähigkeit sowie der elektrischen, mechanischen und thermischen Eigenschaften.
Ganz wichtig an dieser Stelle ist die Termin- und Kostenabschätzung für das Gesamtprojekt, einschließlich Spezifikation, FPGA- und Board-Entwicklung, Softwareentwicklung und Inbetriebnahme bis hin zum Prototypen und dann gegebenenfalls vom Prototypen bis zum serienreifen Produkt.
Funktions-Spezifikation
Im Rahmen der Funktions-Spezifikation werden sowohl die Hardware- als auch die Firmware-Design-Spezifikationen festgelegt. Die Spezifikation des Hardware-Designs erfolgt dabei für das FPGA sowie für alle wesentlichen Komponenten auf dem Board. Es umfasst die Definition der FPGA-Architektur, die Auswahl und Beschreibung der FPGA-Komponenten, die Abschätzung des Strom- und Spannungsbedarfs für Board und FPGA, detaillierte Funktions-Blockschaltbilder, Modulbeschreibungen, Ablaufdiagramme, die Zuordnung der FPGA-I/O-Pins, das Clock- und Reset-Konzept, die Hard- und Software-Interfaces und die erforderliche Testumgebung.
Als Ergebnis der Firmware-Design-Spezifikation stehen detaillierte Flussdiagramme, die Auswahl des Betriebssystems, das Boot-Konzept und die Definition von Low-level-Treiber- und Testroutinen zur Verfügung. Außerdem werden Interaktionstests, Applikationsdetails, Firmware/Software-Interfaces sowie die Diagnose-Unterstützung und das Fehlerhandling festgelegt.
Qualitätssicherung
Mit Beginn des eigentlichen FPGA-Designs ist es von größter Bedeutung, weitere umfangreiche Maßnahmen zur Qualitätssicherung zu treffen. Engmaschige Reviews sind hierfür das geeignete Mittel, da allein dadurch schon viele Fehler in der Spezifikation und im Code gefunden werden. Dies mag aufwendig erscheinen, ist aber sehr wirksam und erhöht die Qualität bereits in einer frühen Phase. Der durch die Reviews und Inspektionen gegebene Erfahrungsaustausch zwischen den Entwicklern bringt automatisch einen Zuwachs an Entwicklungs-Know-how in den weiteren Phasen des Projekts mit sich.
Ergänzt werden diese Maßnahmen, durch umfangreiche Checklisten und ein konsequentes Versions-Management. Für die Implementierung kommen High-Level-Design-Entry-Tools wie z.B. Mentor HDL Designer zum Einsatz, und die Verifikation und Validierung der Funktionen erfolgt mit einer FPGA-Modul-/System-Simulation, die voll automatisierte Self-Checking-Testbenches mit BFMs, Scoreboards, Assertions, Regression, usw. umfasst.
* Stefan Purr ist Projektleiter Electronic System Design bei Heitec, München.
Artikelfiles und Artikellinks
(ID:42290285)