Methoden der FPGA-Entwicklung


 

Die Anzahl der Logic Cells bei Xilinx-FPGAs reicht von ca. 16.000 bis über 1 Million. Abhängig von der Komplexität der Schaltung, aber auch von der Aufgabenstellung, muss flexibel entschieden werden, welche Methode in Verbindung mit den Zielvorgaben die richtige ist. Zielvorgaben können z.B. sein: Betriebssicherheit, Kosten, Entwicklungszeit, Flexibilität.

In der nachfolgenden Aufstellung wird beispielhaft aufgezeigt welche Tools und Methoden man einsetzten könnte, wenn die Schaltungskomplexität im Mittelpunkt steht.


 

 

Geringe und mittlere Komplexität


 

Schaltungseingabe

Schaltbild und / oder HDL-Beschreibung.

Simulation und Verifikation

Eingangsdaten aus einer HDL-Beschreibung und Ausgabe der Ergebnisse als Waveform oder Tabelle.

Synthese, Place & Route

Verwendung des Hersteller Synthesetools, Eingabe von Constraints per GUI oder Textfile

Inbetriebnahme

Nachweis der Funktion auf Basis der Kundenhardware durch den Entwickler oder Kunden.


 

Hohe Komplexität


 

Schaltungseingabe

Schaltbild und System-Verilog/VHDL-Beschreibung und/oder C/C++ Beschreibung. Verwendung von IPs. Aufteilung des FPGAs in unabhängige Partitions.

Simulation und Verifikation

Eingangsdaten aus einer HDL-Beschreibung und der Ausgabe als Waveform. Erzeugung von Eingangsstimuli durch C/C++ Programm, Überwachung der Ergebnisse durch „Expected Data“, Assertions und Fault Coverage.

Synthese, Place & Route

Verwendung von Synthesetools des FPGA-Herstellers oder unabhängiger Toolhersteller, Eingabe von Constraints per GUI oder Textfile. Einsatz von Floorplaning.

Inbetriebnahme

Nachweis der Funktion auf Basis der Kundenhard- und Software durch den Entwickler in enger Zusammenarbeit mit dem Kunden.


 


 

Sehr hohe Komplexität


 

Typischerweise ist hier der Einsatz von sehr teurer Hard- und Software notwendig. Die Entwicklung kann nur in enger (auch räumlicher) Verbindung mit den Systementwicklern und den verschiedenen spezialisierten Abteilungen erfolgen. Die Entwicklung von sehr komplexen FPGAs wird daher von Array Electronics nicht unterstützt.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 




Array Electronics

Auf Basis der Kundenanforderungen (Spezifikation) werden ein oder mehrere Lösungskonzepte entwickelt. Das Konzept wird dann mit modernen Methoden verifiziert und in VHDL/Verilog realisiert. Die verifizierte Schaltung wird im Ziel-FPGA mit den Tools des FPGA-Herstellers synthetisiert , platziert und verdrahtet.

 

Die Inbetriebnahme kann vom Entwickler oder Auftraggeber durchgeführt werden. Es ist dabei zu entscheiden wer die notwendige Hardware, Messmittel und Software bereitstellt.

 

Nach der Abnahme und Abrechnung erhält der Auftraggeber alle Sourcen und bleibt so unabhängig!

 

Boardentwicklung

 

Auf Basis der Kundenanforderungen (Spezifikation) werden ein oder mehrere Lösungskonzepte entwickelt. Das Konzept wird dann in einer Schaltung realisiert. Das Layout wird von einem externen Dienstleister durchgeführt. Die Vorgaben, dass das Layout EMV-gerecht wird und die Hochfrequenz-anforderungen erfüllt, kommen vom Schaltungsentwickler. Die Bestückung erfolgt wieder über einen Dienstleister, die Materialbestellung ist in Verantwortung des Boardentwicklers.

 

Die Inbetriebnahme kann vom Entwickler oder Auftraggeber durchgeführt werden. Es ist dabei zu entscheiden wer die notwendige Hardware, Messmittel und Software bereitstellt.

 

Nach der Abnahme und Abrechnung erhält der Auftraggeber alle Sourcen und bleibt so unabhängig!