ANDTech Fokus auf drahtlose Modul- und Hardwarelösungen seit 15 Jahren.
Ein intelligentes Design der FPGA-Schnittstelle ist ein Muss, wenn FPGA-Geräte verwendet werden, um die Anforderungen an modernste Systemschnittstellen wie DDR3 zu erfüllen. Ein FPGA-Schnittstellendesign ohne Berücksichtigung von PCB-Prozessintegration oder PCB-Routing kann zu erhöhten PCB-Kosten und verlängerten Designzeiten führen. Der Schlüssel ist, wie dieser Artikel zeigt, zu überlegen Konnektivität als Grundlage für einen FPGA/PCB-Co-Design-Prozess und die kritischen Elemente, die für eine effektive Implementierung erforderlich sind. Konnektivität ist in diesem Zusammenhang die bidirektionale Bewegung des FPGA Schnitts telle Informationen zwischen den FPGA- und PCB-Domänen.
Durch die Implementierung einer effektiven Grundlage für die Prozesskonnektivität kann das FPGA schnell in das PCB-Design integriert werden. Ein wichtiges Derivat einer Konnektivitätslösung ist die wiederholbare Erstellung einer FPGA-Schnittstellendefinition, die sowohl für das FPGA als auch für das PCB optimiert ist. Die Ergebnisse dieser Konnektivitätsgrundlage sind niedrigere Entwicklungskosten und eine verbesserte Leiterplattenqualität.
FPGA-Verbreitung
FPGA-Geräte sind allgegenwärtig in neuen Produktdesigns mit ungefähr 100.000 Designstarts pro Jahr. Niemand behauptet, dass die FPGA-Technologie viele Vorteile bietet. Die Branchenführer,
Xilinx
Und
Altera
, erzielten beide im Jahr 2007 einen Umsatz von über 1 Milliarde US-Dollar, wobei Xilinx sich 2 Milliarden US-Dollar näherte.
Es gibt einen ständigen Strom neuer Produktangebote von den Branchenführern, darunter Xilinx Virtex-5 FXT (High Performance wird bearbeitet und I/O) und Virtex-4QV (Weltraumanwendungen), Stratix IV von Altera (hohe Dichte mit 13,3 Millionen Gates) und Actels IGLOO (niedrige Leistung). Die Vielfalt der Angebote sollte der Traum eines Systemdesigners sein.
Der FPGA-Designprozess ist gut definiert und wird von einer Reihe von FPGA-Tools unterstützt, die von FPGA-Anbietern bereitgestellt werden, darunter ISE von Xilinx, Quartus II von Altera und Libero IDE von Actel. Mit jeder neuen FPGA-Generation werden auch die Tools ausgeliefert, in die ständig investiert wird ...
... Das leben ist gut!
Aber jetzt muss dieses neue coole Design, das im FPGA großartig funktioniert, auf eine Schaltkreis Planke. Die meisten Unternehmen haben eine minimale Investition in einen Co-Design-PCB-Prozess getätigt, wobei das Endergebnis ein Kompromiss in Bezug auf Produktivität und Ergebnisqualität war. Feige 1 zeigt eine zweidimensionale Darstellung der Co-Design-Komplexität. Die Komplexität des FPGA-Geräts ist auf der vertikalen Achse und die Komplexität des PCB-Prozesses auf der horizontalen Achse dargestellt. Die wachsende Anzahl von Pins, I/O Standards, Prozesskerne und Pinzuweisungsregeln erhöhen die FPGA-Komplexität. Diese Gerätefähigkeiten übertragen sich in PCB-Komplexität in Bezug auf Pin-Tausch, Symbolerstellung, Routing, Signalintegrität usw. Der implementierte Co-Design-Prozess muss die Komplexität berücksichtigen, die durch das verwendete Gerät und die Prozessziele bestimmt wird.
Die vereinfachte Co-Design-Lösung ist ein unidirektionaler Prozess, der beim Tool des FPGA-Anbieters beginnt, zum Schaltplan und schließlich zum PCB-Layout führt. Es mag eine vorläufige E/A-Planung geben, aber in den meisten Fällen lebt der PCB-Designer mit dem, was später kommt. Dieser Prozess kann für viele Anforderungen unangemessen sein und kann das Hinzufügen einer Pin-Swapping-Fähigkeit erfordern. Letztendlich steht die Qualität der Leiterplatte auf dem Spiel und die Zeit, die für das Design benötigt wird. Eine schlechte I/O-Zuweisung kann zu längeren Routing-Zeiten, längeren Leiterbahnen, zusätzlichen Signalschichten, mehr Durchkontaktierungen und möglicherweise Signalen führen Integrität Themen.
Die FPGA-Nutzung umfasst ein breites Spektrum, von einfacher Glue-Logik bis hin zu System-on-Programmable-Device-Implementierungen. Diese riesige Auswahl an Implementierungen verlangt nach einem flexiblen und erweiterbaren FPGA/PCB-Co-Design-Prozess. Die Grundlage für den Co-Design-Prozess ist Konnektivität – die Fähigkeit, domänenspezifische Informationen zwischen Domänen zu verschieben und die Daten so umzuwandeln, dass sie in der Zieldomäne nützlich sind.
Beispielsweise ist das Erstellen eines schematischen FPGA-Symbols für den FPGA-Designer ein Fremdwort. Aber die im FPGA-Bereich vorgenommenen Pinbelegungen in Form von a .Stift Oder .Pad Datei werden als verdrahtetes Symbol oder Symbolsatz in der PCB-Domäne dargestellt. Dies sind zwei sehr unterschiedliche Darstellungen derselben Information. Jede Darstellung bringt Wert in die native Domäne. Die Domänenüberschreitung von Informationen sollte bidirektional und frei von manuellen, fehleranfälligen Aktivitäten sein. Wirksam umsetzen Domain Konnektivität ist die Grundlage, auf der ein Prozess aufbaut.
Schließen Sie die Schleife
Der effektivste FPGA/PCB-Co-Design-Prozess ist ein geschlossener Regelkreis mit Feedback zur Ergebnisqualität aus dem PCB-Layout. Die FPGA-Schnittstelle wird dann basierend auf diesem Feedback abgestimmt, wodurch eine hochwertige FPGA/PCB-Integration entsteht. Die verschiedenen Schritte im Co-Design-Prozess sind wie folgt:
Jeder dieser Schritte wird im Folgenden im Zusammenhang mit einem tatsächlichen Design beschrieben...