FPGA-Entwicklung: Erfahrungen mit FPGA-Typen
Wir entwicklen Designs für alle gängigen FPGAs.
SRAM-basiert vs. Flash-basiert
SRAM-basierte FPGAs wie von Lattice (XP2, ECP2, ECP2M, ECP3, SC und SCM) und Xilinx (Spartan3, Spartan6, Virtex4, Virtex5 und Virtex6) zeichnen sich aus durch:
-
sehr hohe Integrationsdichten
-
DSP-Blöcke
-
Interface-Blöcke für PCI-Express und DDR-SDRAM-Controller
-
High-Speed Serdes für SATA und PCI-Express
Flash-basierte FPGAs von Microsemi/Actel (ProASIC, ProASIC nano, Igloo) sind hinsichtlich der Strukturgrößen nicht mit den neuesten Technologien herstellbar, die Logik-Dichte ist daher geringer. Trotzdem ergeben sich Vorteile, wie z.B.
-
sehr geringer Stromverbrauch,
-
sofortige Verfügbarkeit nach dem Einschalten,
-
kein Konfigurationsspeicher erforderlich,
-
Integration nicht flüchtigen Speichers,
-
hohe Strahlungshärte (RadHard)
die ihren Einsatz in bestimmten Bereichen sinnvoll machen.
Mikroprozessor Softcores
Für alle FPGAs gibt es Softcores für Mikrocontroller und Mikroprozessoren. Microsemi/Actel bietet für seine FPGAs die ARM Cores Cortex-M1 und Cortex-M3 an. Für Lattice FPGAs gibt es den Mico32 und von Xilinx die Cores MicroBlaze und PicoBlaze.
"Timing not met" ...?
Auch sauberes Einhalten aller Regeln des synchronen Designs garantiert kein Erreichen des Timing-Closure. Manchmal erhält man trotzdem Fehlermeldungen oder Warnungen wie "Timing not met". Abhilfe schaffen zusätzliche Pipelining-Stufen. Wir verfügen über umfangreiche Kenntnisse, um auf den verschiedenen FPGA-Typen das Timing zu verbessern.
|