Welches FPGA-Entwicklungsboard sollte man wählen: Xilinx oder Altera? [geschlossen]

Ich bin sehr neu in der Welt der programmierbaren Logik und habe noch nie mit HDL-Sprachen gearbeitet, aber ich möchte auf jeden Fall mit FPGA beginnen. Im Moment ist das Ziel, eine einfache 8-Bit-CPU zu entwickeln/simulieren und vielleicht (in der Zukunft) eine Grafikausgabe zu machen.

Soweit ich weiß, gibt es zwei große Player auf dem FPGA-Markt: Xilinx und Altera. Ich habe sehr obwohl Budget - 40 $. Außerdem bin ich ein wenig verwirrt über die Fähigkeiten, die von Board zu Board variieren (unabhängig vom Anbieter). Beispielsweise haben einige der Boards - sogar basierend auf demselben Chip - einen VGA-Anschluss (oder COM/RS-232-Anschluss), eine RJ-45-Buchse und sogar Audio-Line-Out/In; Einige von ihnen haben nur ein Array von Pins (wenn ja, bedeutet das, dass FPGA digitale/analoge E/A hat?). Ich bin also gespannt, ob es möglich sein wird, die Fähigkeiten auf dem Board, das keine erforderliche Schnittstelle hat, zu "erweitern" (z. B. einen D-Sub-Anschluss hinzuzufügen, um einige Grafiken auszugeben, oder eine Telefonbuchse für Audio).

Ich brauche einen Rat und sicherlich auch eine Erklärung, was das Board in meinem "Noob"-Fall besser zu kaufen ist. Ich benutze aliexpress, um solche Dinge zu kaufen, also hier sind einige Beispiele, die ich als "Beschwerde" gefunden habe:

Kaufen Sie kein Board mit einem FPGA, das von den Toolketten der Anbieter nicht mehr unterstützt wird. ZB unterstützt Xilinx Vivado nur Geräte der 7er-Serie oder neuere (zB kein Spartan). Altera Quartus 14+ (aktuelle Version ist 15.1) hat die Unterstützung für Cyclon III und Statix ​​III oder älter eingestellt.

Antworten (2)

Ehrlich gesagt: Es spielt keine große Rolle.

Beide Unternehmen liegen etwa auf Augenhöhe

  • Features: viele Nachschlagetabellen, einige dedizierte Blöcke wie Multiplikatoren oder I/O),
  • Entwicklungsumgebung (nervig)
  • Preise (alle guten Funktionen sind nur für ernsthaftes Geld verfügbar)

Es ist immer schwierig, sich für ein Board zu entscheiden, ohne ein sehr konkretes Projekt im Sinn zu haben, also würde ich ein Projekt auswählen und mich dann für das Board anhand der verfügbaren Peripheriegeräte auf dem Board entscheiden.

FPGAs haben nur digitale I/O-Leitungen und einige dedizierte Takteingänge und -ausgänge, die zur Synchronisierung der Kommunikation mit der Außenwelt verwendet werden können. Wenn Sie einen analogen Eingang benötigen, benötigen Sie einen separaten ADC, für einen analogen Ausgang einen DAC und für USB einen USB-Controller (das USB-Protokoll kann nicht sinnvoll nur mit digitalen E / A-Ports emuliert werden).

Ein Display zu haben ist schön, aber es wird schwierig sein, es einzurichten, wenn Sie nicht nur vorgefertigte Komponenten verwenden – aber andererseits ist es eine gute Lernerfahrung, weil es mehrere gestapelte Ebenen hat.

Protip: Sie können auch WS2812-LED-Streifen problemlos als Peripherie hinzufügen.

Geräte der Xilinx 7-Serie verfügen über einen Mehrkanal-ADC
Wenn das FPGA selbst einen kleinen Unterschied aufweist, was ist dann mit dem Unterschied der verwendeten Software? Xilinx ISE Webpack gegen Altera Quartus Prime?
Diese unterscheiden sich auch nur in kleinen Details – wo Dinge im Menü sind und wie sich ihr Editor verhält. Mit beiden können Sie VHDL und Verilog bearbeiten, fertige Komponenten konfigurieren, kompilieren, herunterladen und simulieren. Beide Editoren sind nervig (der in Quartus schlägt beispielsweise immer Wortergänzungen vor, die nicht unbedingt in den Kontext passen), aber da Sie beide Compiler von der Kommandozeile aus ausführen können, ist das Ersetzen des Editors einfach.
@SimonRichter, tolle Antwort und sehr hilfreich. Ich verstehe nicht, warum dies geschlossen wurde. Das ist ziemlich weit hergeholt, aber ich versuche auch zu lernen, wie eine 8-Bit-MCU aufgebaut ist. Könnten Sie eine Richtung angeben, wo Sie angefangen haben? Wo ich gerade bin, ist der Versuch, sich von dem Punkt abzulösen, an dem Sie weiter nach unten gehen, anstatt nur zu wissen, WAS die Montageanleitung bewirkt, sondern zu verstehen, was auf der physischen Ebene passiert. Ich wachse irgendwie aus der Versammlung heraus, ich möchte tiefer gehen ...

Der einzige Unterschied, der mir bekannt ist, ist, dass die neuesten Xilinx-Teile etwas höhere maximale Pin-Toggle-Raten haben (~ 1 GHz gegenüber 0,85 GHz), ich denke, das war's. FPGAs haben kein analoges IO, der VGA-Port wird von einer Reihe einfacher DACs gesteuert, die von digitalen Daten vom FPGA angesteuert werden, aber ohne Konfiguration macht es nichts, ein FPGA macht absolut nichts ohne seine Konfigurationsdatei