Auf der Suche nach Open-Source-FPGA-Hardware und Entwicklertools [geschlossen]

38

Untersuchte FPGA-Boards, kann aber keine Open-Source-Board- und herstellerneutralen FPGA-Entwicklungstools finden:

  • Der ORSoC-Hersteller bietet Open-Sourcing auf seiner Website an, aber ich kann nur durch Webmastering von OpenCores.org überzeugende Beweise finden.
  • Das Duo: Xilinx bewirbt seine Produkte mit dem "Open Source Hardware-Innovationswettbewerb für Universitäten auf dem chinesischen Festland". Trotzdem sind ihre Produkte proprietär und werden von * ix - nur unzureichend unterstützt. In ähnlicher Weise hat Altera eine schlechte Unterstützung für * ix. Prüfen Sie einfach, ob das Betriebssystem von Quartus unterstützt wird, oder wie Sie Ihren Logikanalysator im Syntheseschritt einsetzen können.
  • Gruppe kleiner Spieler - zeigen Sie das Beste.

Gibt es Hersteller, die stark mit Open-Sourcing-Dingen wie Hardware- und Entwicklungstools umgehen?

hhh
quelle
Verwandte Frage in SO hier .
hhh
3
Es gibt jetzt eine Open - Source - Toolchain für die Lattice Semiconductor ICE40 FPGAs finden Sie unter : github.com/cseed/arachne-pnr
Cotton Seed

Antworten:

8

Leider gibt es nicht viel freie Software für programmierbare Hardware. Es gibt ein paar Synthesewerkzeuge wie Lava (das größtenteils manuelles Platzieren erwartet), Confluence, HDCaml und Atom und Icarus Verilog , aber so gut wie keinen Installateur, Mapper oder Ort- und Routenwerkzeug (ich würde mich absolut freuen, wenn ich mich irren würde) Dies). Opencircuitdesign.com hat einige Tools zusammengestellt, benötigt jedoch wahrscheinlich Dokumentation und einen Bitstream-Generator. Die Simulation hingegen ist ziemlich gut abgedeckt.

Auf der nicht-freien Seite haben sich die nicht-freien, aber kostenlosen Tools von Xilinx in letzter Zeit verbessert, indem sie libusb-Unterstützung hinzugefügt und Wind / U (ein schreckliches nicht-freies Winelib-Analog) zugunsten von Qt fallen gelassen haben (was aber nicht der Fall sein wird) Aktualisierung für Chips im Ruhestand). Die meisten anderen Tools scheinen mit einem Paket namens flexlm so sabotiert worden zu sein, dass es selbst mit Hilfe des Herstellers schwierig ist, sie zum Laufen zu bringen . Ich war auch in der Lage, die Lattice Diamond-Software unter Linux auszuführen, aber die Simulation fehlte. Für Atmel AT40KAL könnten das Ortungs- und Routentool in Wine ausgeführt werden, die Bibliothek fordert jedoch nicht standardmäßige Komponenten (LPM wird verwendet, Gates mit zwei Eingängen werden jedoch abgelehnt), sodass eine Art Mapper benötigt wird.

Yann Vernier
quelle
5

Leider sind die Synthesewerkzeuge meines Wissens alle Closed Source. Der in ihnen enthaltene Code ist ein großer Teil ihres Geschäftsvorteils, daher halte ich es für unwahrscheinlich, dass Sie den Eindruck erwecken, dass sie aus offenen Quellen stammen.

Xilinx bietet kostenlose Toolchains für Windows und Linux. Wenn Ihnen die IDE nicht gefällt, können Sie die Befehlszeilentools mit Ihrem eigenen Editor verwenden. Ich habe das schon einmal gemacht, es funktioniert gut für kleine Projekte (z. B. CPLD), bei denen Sie nicht mit großen komplexen Softwarepaketen herumalbern möchten.

Ich glaube, Altera bietet nur kostenlose Tools für Windows an. Ihre Linux-Tools werden erst bezahlt, wenn ich sie das letzte Mal überprüft habe (dies hat sich möglicherweise geändert, vielleicht ist es ein Jahr her, seit ich das letzte Mal nachgeschaut habe).

davr
quelle
Ich verstehe, dass die Synthese - der Prozess der Implementierung eines Designs in die Bausteinkomponenten der Technologie - die letzte Ebene ist, auf der es möglich ist, das eigene zu ersetzen. Es ist die nächste Ebene - Ort und Route, die Timing-Analyse, die dazugehört, und die nachfolgende BitSream-Generierung, in der wirklich genau festgehaltene Informationen benötigt werden.
Chris Stratton
5

Das Butterfly Board sieht aus wie eine gute Open-Source-Einstiegsroute in FPGAs. Sie haben den AVR8-Kern bereits portiert, sodass Sie Arduino-Skizzen / AVR-Objektcode auf dem Ding ausführen können, sodass eine gesunde Lernkurve entsteht.

Update: Jetzt umbenannt in Papilio Boards .

Ich denke, dass Xilinx WebPack benötigt wird und für Windows und Linux verfügbar ist.

Toby Jaffey
quelle
Das Webpack sollte auch für Sie kostenlos sein.
Kortuk,
Entschuldigung, aber ich kann nicht wirklich sehen, was die "Open Source" damit ist. Ich möchte lieber eine Münze mit mehr als der Hälfte billiger wie: item.taobao.com/auction/… .
hhh
3
Obwohl es auf der proprietären Xilinx-Toolchain basiert, enthält das Butterfly One 1) ein Open-Source-Board-Design, 2) einen Open-Source- "Programmierer" (Bitstream-> Flash-Dienstprogramm) und 3) viele Open-Source-IPs als Beispiele . Empfohlen!
Vielleicht sollten Sie Ihren Link aktualisieren, um auf den Butterfly One zu verweisen? Wissen Sie auch, wie gut diese unterstützt werden (wie viele Leute verwenden sie und ob sie für Anfänger geeignet sind)?
Earlz
Die Schaltpläne und alle sind Open Source für den Butterfly One und ich habe dies vollständig auf meinem Arch Linux-Computer ausgeführt. Sie müssen einige Dinge manuell kompilieren, aber ich würde nicht sagen, dass es schwieriger ist, damit zu beginnen als mit den meisten FPGAs. (und wahrscheinlich einfacher, weil es als AVR-Softcore programmiert ist
Earlz 22.12.10
3

FPGA-Entwicklungstools sind eng mit den FPGA-Geräten selbst verbunden und hängen in hohem Maße von proprietären Details der FPGA-Architektur ab, insbesondere auf der Ebene der Platzierung, des Routings und der Bitstream-Generierung. Eine Verkäuferneutralität ist daher weitgehend nicht gegeben. Übergeordnete Tools sind möglicherweise bis zu einem gewissen Grad herstellerneutral (z. B. Synchronisieren, ESL-Tools, Überprüfungstools usw.), sie sind jedoch keinesfalls Open Source.

Auf der anderen Seite gibt es viele akademische Tools, die Open Source sind. Solange Sie nicht für ein echtes physisches Gerät entwickeln möchten, können Sie die VPR 5.0- Toolchain verwenden.

mrkj
quelle
Ich kaufe die Erklärung "fest mit der Hardware verbunden" nicht. Dies gilt auch für verschiedene Befehlssätze für Embedded-CPUs.
3.
@maxy - nein, das ist es wirklich nicht. Eine CPU abstrahiert große Mengen an Hardwaredetails, die einer FPGA-Toolchain ausgesetzt sind und von dieser berücksichtigt werden müssen. Der AC-Compiler muss nicht wirklich wissen oder sich darum kümmern, ob die Ausgabe des Multiplizierers rechtzeitig zum nächsten Register gelangt, und selbst der Board-Designer muss nur die maximal zulässige Taktrate prüfen, um dies zu wissen. Für ein FPGA-Tool müssen Sie wissen, wie lange der Multiplikator dauert, wie lange die Einrichtung des Registers dauert, und dann die Verzögerung zwischen ihnen basierend darauf berechnen, wo Sie sie auf dem Chip ablegen und wie Sie das Signal dazwischen routen.
Chris Stratton
3

Weder Open Source noch unterstützt, aber Xilinx bietet eine kostenlose plattformübergreifende (Java) API namens Jbits, mit der FPGAs direkt programmiert (und im laufenden Betrieb neu programmiert) werden können. Ich glaube, dass nur CPLDs und bis zu Virtex-II unterstützt werden, aber es ist am ehesten zu erlauben, dass Entwickler ihre eigenen benutzerdefinierten Synthesewerkzeuge produzieren. Ich habe vor, in naher Zukunft ein bisschen damit herumzuspielen.


quelle
Jbits war wirklich cool.
Prof. Falken