Forum: FPGA, VHDL & Co. Einsteiger FPGA board


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von N. B. (charlie_russell)


Lesenswert?

Ein Topic was alle Jahre wieder aufkommen dürfte:
Welches FPGA devboard zum lernen?

Beim durschauen was es aktuell an boards gibt sind mir bisher 3 
aufgefallen (IDE/Software und Dokumentation noch nicht angeschaut):
Tang Nano (GW1N): 
https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/102991314/10667532
Tang Nano primer(EG4S20): 
https://www.digikey.com/en/products/detail/seeed-technology-co-ltd/102110202/9975972
Arrow deca (10M50DAF484C6G): 
https://www.arrow.com/en/products/deca/arrow-development-tools

Erstmal gibt es andere lohnenswerte boards in dem Preisbereich?

Wie viel ist ein "LUT" in der Praxis? Anders ausgedrückt wie 
klein/beschränkend sind z.B. 8k LUT?

von Autofahrer mit Abschluß (Gast)


Lesenswert?

N. B. schrieb:
> Wie viel ist ein "LUT" in der Praxis? Anders ausgedrückt wie
> klein/beschränkend sind z.B. 8k LUT?

Kommt darauf an, was du mit dem FPGA machen willst.

IN 8k LUT kriegt man schon eine CPU rein.
So braucht ein 32bit microblaze ca. 1000 slices (ein 8bit wie beim AVR 
kommt mit einem Zehntel aus) und belegt so 50% eines S3-200.


https://www.mikrocontroller.net/articles/Retrocomputing_auf_FPGA#FPGA-Auswahl

von Lothar M. (lkmiller) (Moderator) Benutzerseite


Lesenswert?

N. B. schrieb:
> wie klein/beschränkend sind z.B. 8k LUT?
Das ist wie wenn du fragst, wie weit komme ich mit 10 Litern Treibstoff?

Da kommt es dann auf das Fahrzeug an (ein Panzer kommt damit gerade mal 
3km weit, ein kleines Dieselauto fast 300), es kommt auf das Gelände und 
es kommt auch noch auf den Fahrstil an.

Übertragen auf das FPGA bedeutet das Architektur (4er oder 6er LUT), die 
interne Verschaltung (Fabric für das Routing) und das Können des 
"Programmierers" an.

> Wie viel ist ein "LUT" in der Praxis?
Prinzipiell ist 1 LUT das selbe wie 1 beliebige Logikeinheit, die 4 
(oder 6) Eingänge auf 1 Ausgang logisch verknüpfen kann. Und 
üblicherweise hängt hinter jeder LUT ein Flipflop.

Das ist dann auch der bessere Weg zum Abschätzen, was da reinpasst: mit 
8k LUT/FF kannst du 500 Stück 16 Bit Zähler machen.

Und jetzt musst du natürlich selber abschätzen, was dein Design denn 
überhaupt braucht...

: Bearbeitet durch Moderator
von lexi (Gast)


Lesenswert?

Wie wäre es mit dem FOMU?
https://www.hackster.io/news/the-fomu-an-fpga-that-fits-in-your-usb-port-1b09560b5541

Es ist zwar wirklich minimalistisch (~5000 LUTs, dafür aber 
überdurchschnittlich viel Block-RAM (+128kB)), aber man kann schon 
einiges damit machen. Lattice Radiant als Synthese-Umgebung ist gerade 
für Anfänger auch nicht schlecht meiner Meinung nach, da es doch sehr 
einfach gehalten ist.

Für Fortgeschrittene empfiehlt sich ein Blick auf die open-source 
Synthese-Tools (yosys und Co). Im Netz gibt es reichlich 
Beispielprojekte und Tutorials für das FOMU. Sogar RISC-V Systeme wurden 
darauf portiert.

von Fpgakuechle K. (fpgakuechle) Benutzerseite


Lesenswert?

lexi schrieb:

> Für Fortgeschrittene empfiehlt sich ein Blick auf die open-source
> Synthese-Tools (yosys und Co). Im Netz gibt es reichlich
> Beispielprojekte und Tutorials für das FOMU. Sogar RISC-V Systeme wurden
> darauf portiert.

Einem Anfänger kann man vom Nicht-mainstream-Software-Pfad wie 
OpenSource nur abraten. Mit FPGA's fängt man an, um sich später mit 
diesem KnowHow zu bewerben. Und das nachgefragte KnoHow ist nun mal 
entweder Altera/intel Quartus oder Xilinx ISE/Vivado.

Dementsprechend sollte man sich zuerst eine von den beiden genannten 
Software kostenlos installieren und von den angepeilten Boards die 
Sourcen compilieren. Das zeigt schon mal ob das Board und zugeliefrte 
Firmware/Tutorials unabhängig von der verbauten Hardware was taugt.
Aber das würde alles schon x-Mal durchgekaut. Also bitte das Archiv 
beherzigen:

Beitrag "Entscheidungshilfe FPGA-Board für Anfänger"
Beitrag "FGPA Board für Anfänger"
Beitrag "Gutes FPGA Starter-Kit?"
Beitrag "Anfänger sucht FPGA Entwicklungsboard für verschiedene Projekte"
Beitrag "FPGA - Wie einsteigen?"
Beitrag "FPGA-Board bis 300€ für den Einstieg"

von N. B. (charlie_russell)


Lesenswert?

Fpgakuechle K. schrieb:
> Aber das würde alles schon x-Mal durchgekaut. Also bitte das Archiv
> beherzigen:

Seit dem hat sich was getan. Der Arrow Deca ist im Preis gesunken, die 
Chinesischen kamen auf den Markt und ein Teil der Boards wurden 
eingestellt.

Fpgakuechle K. schrieb:
> Und das nachgefragte KnoHow ist nun mal
> entweder Altera/intel Quartus oder Xilinx ISE/Vivado.

Ist ein Wechsel zwischen Herstellern ähnlich einfach wie bei µC? Zum 
anderen wäre das eine Empfehlung für Altera Max 10 Boards wie das Deca?

lexi schrieb:
> Wie wäre es mit dem FOMU?

So sicher toll jedoch in dem Fall schlecht das es keine IO hat (bis auf 
die eine LED).

Autofahrer mit Abschluß schrieb:
> Kommt darauf an, was du mit dem FPGA machen willst.
>
> IN 8k LUT kriegt man schon eine CPU rein.

Lothar M. schrieb:
> Das ist dann auch der bessere Weg zum Abschätzen, was da reinpasst: mit
> 8k LUT/FF kannst du 500 Stück 16 Bit Zähler machen.
>
> Und jetzt musst du natürlich selber abschätzen, was dein Design denn
> überhaupt braucht...

Die ganzen Basics und danach das ausprobieren was im Datenblatt steht, 
jedoch nicht in den üblichen Beispielen wie VGA oder UART implementieren 
genutzt werden. Somit vorerst keine soft cores jedoch später evnetuell 
RISC-V.

von Fitzebutze (Gast)


Lesenswert?

Fpgakuechle K. schrieb:
> Einem Anfänger kann man vom Nicht-mainstream-Software-Pfad wie
> OpenSource nur abraten. Mit FPGA's fängt man an, um sich später mit
> diesem KnowHow zu bewerben. Und das nachgefragte KnoHow ist nun mal
> entweder Altera/intel Quartus oder Xilinx ISE/Vivado.

Firmen, die sowas 'abfragen', würde ich ja schon mal meiden.
Wichtiger ist, dass jemand die Grundlagen der HDL-Entwicklung kapiert 
hat und grundsätzlich versteht, was die Tools ausspucken. Welche 
Technologie es dann wird, sollte egal sein.
Allerdings sollte man Vivado meiner Meinung nach keinem Anfänger 
zumuten. Da macht Lattice mit Synplify als Dreingabe eine deutlich 
bessere Nummer.

Es gibt einige interessante Kurse betr. yosys, die durchaus für Anfänger 
geeignet sind, wo man auch Schritt für Schritt zuschauen kann, was für 
Hardware generiert wird.

Die Diskussion um Anfängerboards hat aber derart fauligen Geschmack, 
dass man sie eigentlich nicht mehr zum n-ten Mal aufwärmen sollte.
Fehlt nur noch, dass die Influtrenzer ihre Ladenhüter anpreisen.

von Fpgakuechle K. (fpgakuechle) Benutzerseite


Lesenswert?

N. B. schrieb:
> Fpgakuechle K. schrieb:
>> Aber das würde alles schon x-Mal durchgekaut. Also bitte das Archiv
>> beherzigen:
>
> Seit dem hat sich was getan. Der Arrow Deca ist im Preis gesunken, die
> Chinesischen kamen auf den Markt und ein Teil der Boards wurden
> eingestellt.

Eingestellte Boards haben oft einen Nachfolger und sind immer mal wieder 
auf ebay, Forums-Markt o.ä zu finden (der Grossteil meiner Boards sind 
gebraucht).
Mit den China-Boards kann man eher wenig bei Bewerbungen und Co. 
punkten.
Das Decca ist mehr Evalboard für komplexere Designs als Einsteigerboard 
zum sofort loslegen. Einsteigerboards haben 7Segment-anzeige, paar 
Knöpfe und standardartisierte Schnittstellen (PMOD) zum dranflanschen 
von Kaufmodule.
Das fehjlt dem Deca. Ja, es hat viele Anschlüße mit den zwei 
Buchsenleisen, aber um diese zu nutzen, muss man sich 'ne Platine 
basteln. Kein Problem für einen der Lochraster und Lötkolben hat, bei 
Einsteigern ist das eher nicht zu erwarten.

Vorteilhaft ist der HDMI-Monitoranschluss, das ist fast das einzige wo 
man als Anfänger gleich loslegen kann. Annäherungssensor und Co sind 
nette Spielereien, mehr nicht.
Und wie gesagt ,mal die mitgelieferten Reference-designs ohne Board, nur 
an den Tools durchtesten. Sind tutorials, sourcebeispiele und scripte 
verständlich genug um davon eigene Sachen abzuleiten?! Das Deca setzt 
stark auf Verilog, da tut man sich gleich zu Anfang des VHDL-Lernens 
schwer einen wrapper zu schreiben.

> Fpgakuechle K. schrieb:
>> Und das nachgefragte KnoHow ist nun mal
>> entweder Altera/intel Quartus oder Xilinx ISE/Vivado.
>
> Ist ein Wechsel zwischen Herstellern ähnlich einfach wie bei µC?

Definitiv nein, weil die Toolchain und das C_programmieren bei µC 
deutlich weniger komplex ist, als ein FPGA-Designen mit den 
verschiedenen Synthesetools. Nicht ohne Grund wird bei Bewerbungen und 
Co nach Erfahrung mit einer speziellen Toolchain und Hersteller gefragt 
und nicht allgemein.

> Zum
> anderen wäre das eine Empfehlung für Altera Max 10 Boards wie das Deca?

Der Max10-Typ auf dem Deca ist etwas speziel, er ist vom einzigen 
Speedgrade, der vom Hersteller für DDR3 freigegeben ist, aber dieser 
Speedgrade ist ausserhalb des Deca kaum lieferbar. Will man DDR3 sollte 
man den MAX10 meiden. Das Deca scheint auch eine 'Entsorgungsplatform' 
für Engineering Samples zu sein ;-) :

Beitrag "Info: intel MAX10 und speedgrade -6"

Aber für ein passend designdes Einsteigerboard ist der FPGA-Typ an sich 
zweitrangig solange er keine Einschränkungen bei der benutzbaren 
toolchain mitbringt. So sollte man von Cyclon zwei (Cyc II) die Finger 
lassen, weil die zugehörigen tools seit 8 Jahren eingefroren sind und 
alle aktuellen Quartus-tools den cyclone zwei nicht unterstützen.

: Bearbeitet durch User
von oooOO (Gast)


Lesenswert?

> Firmen, die sowas 'abfragen', würde ich ja schon mal meiden.
++
Zusaetzlich wird dann noch auf "tieferen" Kenntnissen einer bestimmten
und nur genau der Version beharrt. HRler wissen es halt nich besser.

> Mit FPGA's fängt man an, um sich später mit
> diesem KnowHow zu bewerben.
Das ist so pauschal schlicht Unsinn. FPGAs erlauben auch dem
Hobbyisten Loesungen, die klassischen Controllern oder DSPs
verschlossen bleiben. Und ich bewerbe mich ueberhaupt nicht.
Nette und interessante Projekte finden auch so den Weg zu mir.

> Das Decca ist mehr Evalboard für komplexere Designs als Einsteigerboard
> zum sofort loslegen.
Kleine Broetchen kann man damit nicht gut backen.

> Einsteigerboards haben 7Segment-anzeige, paar Knöpfe und ...
Richtig. Damit kann man den besonderen Aha-Effekt eben besonders
einfach aus dem Probanden herauslocken.
Wer bislang nur mit dem Zusammenklicken von Bibliotheken, wenn
es wirklich welche sind, und mit dem Kopieren und Pastieren
von anderen (der Akkusativ ist beabsichtigt) Quaeltext
brogrammiert hat, wird diesen Aha-Effekt wohl auch nicht erleben.

> Das Deca scheint auch eine 'Entsorgungsplatform' ... zu sein
Den Eindruck habe ich allerdings auch.

> So sollte man von Cyclon zwei (Cyc II) die Finger lassen
...
> tools seit 8 Jahren eingefroren sind
Mit der Version 11.1SP2 kann man von Cyclone I bis Cyclone 4E
wirklich alles an Einsteigerprojekten realisieren.
Dem Versteandnis tut das keinen Abbruch.

Und wem die 20 - 30 Euros fuer so ein Einsteigerbord das explizit
zum Lernen und Kennenlernen gedacht ist, zu viel sind, sollte sich
andere Ziele suchen.

von Fpgakuechle K. (fpgakuechle) Benutzerseite


Lesenswert?

>
>> Mit FPGA's fängt man an, um sich später mit
>> diesem KnowHow zu bewerben.
> Das ist so pauschal schlicht Unsinn.

Dann formuliere ich es anders: "Nur ein kleiner Teil (<1%) lernt FPGA um 
sich später als Freiberufler o.ä. seine Brötchen damit zu verdienen, der 
überwiegende Teil braucht es als Nachweisbare Qualifikation um andere 
von sich im Bewerbungsverfahren zu überzeugen. Und ganz klein ist der 
Anteil, der FPGA-lernen 'just for Fun' erfolgreich betreibt.

oooOO schrieb:

> Zusaetzlich wird dann noch auf "tieferen" Kenntnissen einer bestimmten
> und nur genau der Version beharrt. HRler wissen es halt nich besser.

Nach meinen Erfahrungen sind es aber weniger die HR'ler als die 
bisherigen Entwickler, die sich wünschen, das deren 'künftigen Kollegen' 
aka Nachfolger nahtlos an das Vorhandene anknüpfen können.

Und dann kommt es zu solchen Formulierungen wie "Kandidat hat 
idealerweise Erfahrung mit Mentor HDL Designer und einer Xilinx Simulink 
Toolchain". IMHO nicht ganz zu Unrecht, da (a) die Toolchain nicht im 
Mittelpunkt der bezahlten Arbeit/Anlernens steht (sondern das damit 
erstellte Produkt) und (b) die Einarbeitungszeit in eine 
FPGA-Entwicklungs- und Laborumgebung nicht unerheblich ist. So versteht 
jeder C-compiler -Os (optimised for size), aber welche FPGA toolchain 
versteht -c 1 (maximum density) ?!

: Bearbeitet durch User
von oooOO (Gast)


Lesenswert?

> als die bisherigen Entwickler, die sich wünschen
Denen scheint das Wissen dann aber auch ueber Lehrgaenge o.ae.
"fremdeingepflanzt" zu sein. Die sind dann halt nicht besser
als HRler.

> der überwiegende Teil braucht es als Nachweisbare Qualifikation
Wenn es ohnehin heute Teil der Ausbildung ist, sehe ich das
besondere Herausstellungsmerkmal nicht mehr.

> "Kandidat hat
> idealerweise Erfahrung mit Mentor HDL Designer und einer Xilinx Simulink
> Toolchain". IMHO nicht ganz zu Unrecht, da (a) die Toolchain nicht im
> Mittelpunkt der bezahlten Arbeit/Anlernens steht
Das ist ja dann auch eine sinnvolle Randbedingung.

> aber welche FPGA toolchain versteht -c 1 (maximum density)
Naja, das ist ja mitunter gar nicht wuenschenswert, weil das u.U.
thermale "Hotspots" erzeugt. Ansonsten gibt es z.B. den
Design Explorer. Halt nicht in den freien Versionen.

Ich denke mal: Genug OT...

von Markus F. (mfro)


Lesenswert?

Fpgakuechle K. schrieb:
> So sollte man von Cyclon zwei (Cyc II) die Finger
> lassen, weil die zugehörigen tools seit 8 Jahren eingefroren sind und
> alle aktuellen Quartus-tools den cyclone zwei nicht unterstützen.

Das ist zwar prinzipiell richtig, m.E. aber eigentlich völlig 
irrelevant.

Der Cyclone II wird von Quartus 13.0 SP 1 letztmalig unterstützt, die 
Intel-Quartus-Prime Version ist mittlerweile bei 20.x angelangt.

Allerdings hat - zumindest nach meiner Erfahrung - weder die 
VHDL-Synthese, noch der Fitter, Assembler oder Timing Analyzer 
nennenswert dazugelernt (gefühlt würde ich sagen: unverändert). Nach 
meinem Eindruck sind die SW-Entwicklerstunden ausschließlich in die 
"Intellisierung" der Software und in QSys (bzw. "Platform Designer") 
eingeflossen.

Wer also "nur" VHDL lernen will, macht m.E. mit einem 15€ eBay-Cyclone 
II und Quartus 13.0 nichts falsch.

von Duke Scarring (Gast)


Lesenswert?

Markus F. schrieb:
> Wer also "nur" VHDL lernen will, macht m.E. mit einem 15€ eBay-Cyclone
> II und Quartus 13.0 nichts falsch.
Prinzipiell ja, wobei es von Jahr zu Jahr schwieriger wird, die alte 
Software zum Laufen zu bekommen. Dabei ist es egal ob Windows oder 
Linux.


Duke

von Christoph Z. (christophz)


Lesenswert?

N. B. schrieb:
> Fpgakuechle K. schrieb:
>> Aber das würde alles schon x-Mal durchgekaut. Also bitte das Archiv
>> beherzigen:
>
> Seit dem hat sich was getan. Der Arrow Deca ist im Preis gesunken, die
> Chinesischen kamen auf den Markt und ein Teil der Boards wurden
> eingestellt.

Ein bisschen etwas tut sich manchmal schon aber die archivierten 
Diskussionen sind immer noch sehr relevant und aufschlussreich.

Das FOMU wurde schon genannt, dann erwähne ich noch das QuickLogic 
QuickFeather.

Fpgakuechle K. schrieb:
> Einem Anfänger kann man vom Nicht-mainstream-Software-Pfad wie
> OpenSource nur abraten. Mit FPGA's fängt man an, um sich später mit
> diesem KnowHow zu bewerben. Und das nachgefragte KnoHow ist nun mal
> entweder Altera/intel Quartus oder Xilinx ISE/Vivado.

Zur anfängertauglichkeit kann ich hier nichts sagen, ist bei mir einfach 
zu lange her.
Aber am Punkt von Fpgakuechle ist schon etwas dran, das man beachten 
kann: Wenn ich mich mit FPGAs beschäftige um ev. damit meine Brötchen zu 
verdienen, dann lohnt es sich schon, das mit Quartus oder Vivado 
anzusehen. Man sitzt ja danach Stundenlang vor dieser Software und es 
hilft das als bewussten Entscheid zu machen.

Wenn es um Hobby und Spass an der Freude ist, egal. Da kannst du auch 
ein altes Quartus/ISE in eine VM packen, Yosys angucken oder die 
Software zu den Chinesischen FPGAs was halt gerade eher zu deinem Stil 
passt.

von Olaf (Gast)


Lesenswert?

> Dann formuliere ich es anders: "Nur ein kleiner Teil (<1%) lernt FPGA um
> sich später als Freiberufler o.ä. seine Brötchen damit zu verdienen, der

Also ich hab das ja als intellektuelle Stimulation in Coronazeiten
gemacht weil ich dachte das es anregender ist als das
Kreutzwortraetzel in der Times. :-D

> Prinzipiell ja, wobei es von Jahr zu Jahr schwieriger wird, die alte
> Software zum Laufen zu bekommen. Dabei ist es egal ob Windows oder
> Linux.

Die olle Xilinx ISE 8.3 von vor 15Jahren laeuft bei mir in XP in einer
virtuellen Maschine unter Linux mit dem chinesischen USB-flasher. Damit 
kann ich diverse FPGAs und CPLDs entwickeln und flashen.

Die chinesische Software zum EG4S20 laeuft native unter Centos und ist 
1000x angenehmer zu bedienen und 10x mal schneller als Xilinx. Wobei man 
einen neuen Rechner aus 2021 braucht damit man bei der Xilinx Software 
von 2005 nicht kotzen muss oder einem Spinnweben an der Backe wachsen. 
Wenn man dann noch bedenkt das der ChinaFPGA preiswerter ist als der 
chinesische Flasher fuer Xilinx dann muss man da nicht lange ueberlegen. 
In dem Thread hier zum EG4S20 stehen alle Informationen drin die man 
braucht!

Olaf

von Klartexter (Gast)


Lesenswert?

Olaf schrieb:

> Die olle Xilinx ISE 8.3

Diese Version gibt es nicht: 
https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vivado-design-tools/archive-ise.html

> Die chinesische Software zum EG4S20 laeuft native unter Centos und ist
> 1000x angenehmer zu bedienen und 10x mal schneller als Xilinx.

Naja, jeder Jeck ist anders, für manche ist nichts bequemer und 
schneller  als ein "make all". OK, dazu muss man die toolchain wirklich 
kennen und in der Lage sei makefiles und scripte aufzusetzen, eine 
Fähigkeit die von der Generation "ClickieBunti" immer weniger geschätzt 
wird.

von Olaf (Gast)


Lesenswert?

> Diese Version gibt es nicht:

Na gut, dann 8.2. Man kann ja nicht immer alle Nachkommastellen
im Kopf haben. :)

Olaf

von Fitzebutze (Gast)


Lesenswert?

Christoph Z. schrieb:
> Man sitzt ja danach Stundenlang vor dieser Software und es
> hilft das als bewussten Entscheid zu machen.

Ja, leider sitzt man so viele Stunden, dass der Fokus vom eigentlichen 
Entwickeln auf trial&error bis reverse-engineering hirntoter 
Softwarekonzepte hinausläuft, bis man schliesslich den Kunden davon 
überzeugt hat, dass es billiger ist, auf eine anderen Hersteller zu 
wechseln.

von Duke Scarring (Gast)


Lesenswert?

Fitzebutze schrieb:
> bis man schliesslich den Kunden davon
> überzeugt hat, dass es billiger ist, auf eine anderen Hersteller zu
> wechseln.
Die kochen doch alle nur mit Wasser. Ich habe noch keine 
FPGA-Design-Software gesehen, die 100% fehlerfrei läuft. Egal ob X, A/I 
oder L...

Duke

von Philipp Klaus K. (Firma: Albert-Ludwigs-Universität) (pkk)


Lesenswert?

lexi schrieb:
> Wie wäre es mit dem FOMU?
> 
https://www.hackster.io/news/the-fomu-an-fpga-that-fits-in-your-usb-port-1b09560b5541
>
> Es ist zwar wirklich minimalistisch (~5000 LUTs, dafür aber
> überdurchschnittlich viel Block-RAM (+128kB)), aber man kann schon
> einiges damit machen. Lattice Radiant als Synthese-Umgebung ist gerade
> für Anfänger auch nicht schlecht meiner Meinung nach, da es doch sehr
> einfach gehalten ist.
>
> Für Fortgeschrittene empfiehlt sich ein Blick auf die open-source
> Synthese-Tools (yosys und Co). Im Netz gibt es reichlich
> Beispielprojekte und Tutorials für das FOMU. Sogar RISC-V Systeme wurden
> darauf portiert.

Gibt es passend zum Thema des Threads Empfehlungen für weitere Boards 
mit yosys-kompatiblen FPGA?

: Bearbeitet durch User
von Olaf (Gast)


Lesenswert?

> Gibt es passend zum Thema des Threads Empfehlungen für weitere Boards
> mit yosys-kompatiblen FPGA?

Ich glaube nicht das man damit passend zum Thema des Threads überhaubt 
etwas empfehlen kann. Ich hatte mir das auch mal angeschaut weil meine 
Arbeitsumgebung Linux ist und da scheint Opensource ja ein sinnvoller 
Ansatz.

Allerdings hab ich den Eindruck gewonnen das alles noch extrem auf 
Bastellevel ist. Mal eben so wird man da nichts ans laufen bringen. Das 
laeuft alles nur mit speziellen wenigen Boards/FPGAs auf wenigen 
Systemen irgendwie.

Olaf

von Fitzebutze (Gast)


Lesenswert?

Philipp Klaus K. schrieb:
> Gibt es passend zum Thema des Threads Empfehlungen für weitere Boards
> mit yosys-kompatiblen FPGA?

Zum Lernen taugen eigentlich alle Boards mit ECP5, wie ulx3s 
(radiona.org) oder die Lattice-Evalkits für eher Fortgeschrittene (Versa 
ECP5-G, EVDK).
Ein Problem ist, dass die komplizierteren/komplexen Primitiven nicht 
ganz einfach zu handeln sind, also High speed timing-Optimierung nicht 
drinliegt, man muss sein Design schon gut planen.
Es gehen durchaus aber komplexe RISC-V SoCs mit Ethernet, etc.
Ein grosses Problem bei yosys ist, dass die Block-RAM-Inference nur 
bedingt brauchbar ist. Da haben wir unsere eigenen Konverter stricken 
müssen.

von Fitzebutze (Gast)


Lesenswert?

Duke Scarring schrieb:
> Die kochen doch alle nur mit Wasser. Ich habe noch keine
> FPGA-Design-Software gesehen, die 100% fehlerfrei läuft. Egal ob X, A/I
> oder L...

Naja..bei Synplify kann ich sagen: Macht was ich will und macht es 
nachvollziehbar. Solange man Executables aufrufen kann, die nicht 
crashen oder HDL nach Standard gehandhabt wird und verifizierbar 
synthetisiert, kann man (um eventuelle Bugs/Features herum) arbeiten.
Ansonsten sind alle Gesamtpakete/IDEs eigentlich eher ein Graus, wobei 
lange Quartus noch am stabilsten lief. Und ja, es wurde alles brav in 
eine Linux-Sandbox VM gepackt, damit auch exakt dieselben Libraries 
verwendet werden.

von Christoph Z. (christophz)


Lesenswert?

Olaf schrieb:
> Allerdings hab ich den Eindruck gewonnen das alles noch extrem auf
> Bastellevel ist.

Philipp Klaus K. schrieb:
> Gibt es passend zum Thema des Threads Empfehlungen für weitere Boards
> mit yosys-kompatiblen FPGA?

Christoph Z. schrieb:
> Das FOMU wurde schon genannt, dann erwähne ich noch das QuickLogic
> QuickFeather.

Ich hätte wohl deutlicher sein sollen: Bei QuickLogic ist Yosys jetzt 
das einzige offizielle Tool um mit ihren FPGAs zu entwickeln.

Also kein reverse engineering und mit Zugang zum Support vom Hersteller 
(den es bei einer Herstellerauswahl ja auch zu testen gilt...).

Bis jetzt hat hier im Forum aber glaube ich noch niemand Erfahrungen 
damit gesammelt, ist ja auch noch sehr neu.

Derzeit gibt es auch erst einen Chip in einer Logik-Array-Grösse aber 
das ist ja meistens nur eine Frage der Zeit. Ist ja auch ein erfahrener 
Hersteller.

von Christoph Z. (christophz)


Lesenswert?

Fitzebutze schrieb:
> Naja..bei Synplify kann ich sagen: Macht was ich will und macht es
> nachvollziehbar.

Synplify ist ein Grund, wieso ich mittlerweile lieber mit Lattice und 
Microchip arbeite als mit den anderen. Den Tools von NanoXplore fehlt 
derzeit z. B. die RTL view komplett, da schicke ich mein Design gerne 
vorher durch Synplify um zu sehen ob ich Mist geschrieben habe.

von Klartexter (Gast)


Lesenswert?

Christoph Z. schrieb:
> Bis jetzt hat hier im Forum aber glaube ich noch niemand Erfahrungen
> damit gesammelt, ist ja auch noch sehr neu.
>
...
> das ist ja meistens nur eine Frage der Zeit. Ist ja auch ein erfahrener
> Hersteller.

Naja, Quicklogic ist seit 1988 auf dem Markt und dümpelt bei der 
Jahres-Revenue um 10 Mio/Jahr. Xilinx wurde 1984 gegründet und liegt bei 
3160 Mio/Jahr.

Genau genommen ist Quicklogik auch kein Hersteller sondern fabless (wie 
Xilinx auch). Quicklogic lässt übrigens in Israel fertigen, bei der 
Tower Semiconductor Ltd..

Auch so ein nahezu unbekannter Name im FPGA-business, wenn man sich 
nicht gerade fürs Militärische interessiert: 
https://ir.quicklogic.com/press-releases/detail/573/quicklogic-joins-darpa-toolbox-initiative-to-provide

von lexi (Gast)


Lesenswert?

Zum Thema yosys und embedded memories:

> Es gehen durchaus aber komplexe RISC-V SoCs mit Ethernet, etc. Ein grosses 
Problem bei yosys ist, dass die Block-RAM-Inference nur bedingt brauchbar ist.

Dieser VHDL RISC-V wird (unter anderem) mit yosys für das FOMU (Lattice 
ice40up) gebaut: https://github.com/stnolting/neorv32
Der Kern is rein "behavioral" geschrieben (keine Primitives/Macros) - 
also auch die Speicher - und yosys kriegt das ganz gut hin.

Ich versuche da gerade durch die Skripte zu steigen.... ;)
Falls jemand interessiert ist:
Yosys sources: 
https://github.com/stnolting/neorv32/tree/master/setups/osflow
Implementierung (als GitHub workflow): 
https://github.com/stnolting/neorv32/actions/workflows/Implementation.yml

von Andi (Gast)


Lesenswert?

Philipp Klaus K. schrieb:
>
> Gibt es passend zum Thema des Threads Empfehlungen für weitere Boards
> mit yosys-kompatiblen FPGA?

IceBreaker ist das offizielle Einsteigerboard von den Yosys Machern:
https://1bitsquared.com/products/icebreaker

Gleiches FPGA wie Fomu (Lattice UltraPlus), aber mit mehr IOs auf PMOD 
Schnittstellen. Das verwendete FPGA ist relativ langsam, dafür sehr 
stromsparend und hat viel onchip SRAM (128kByte).

von Fitzebutze (Gast)


Lesenswert?

lexi schrieb:
> Dieser VHDL RISC-V wird (unter anderem) mit yosys für das FOMU (Lattice
> ice40up) gebaut: https://github.com/stnolting/neorv32
> Der Kern is rein "behavioral" geschrieben (keine Primitives/Macros) -
> also auch die Speicher - und yosys kriegt das ganz gut hin.

Auf dem ICE40 geht das auch alles, da er kein echtes (True Dual Port) 
RAM hat.
Auf dem ECP5 und Kintex-Architekturen sieht's anders aus. Ich gehe da 
jetzt mal nicht zu gross in die Details, aber sobald man 1GB-Ethernet 
per DMA (für volle Performance) an den Core flanschen will, braucht man 
TDPRAM für die Packet-FIFOs.
Es gibt auch bei den performanteren RISC-V einige Eigenheiten, für die 
TDP unerlässlich ist, kommt aber erst bei einer effizient designten 
Pipeline zum Zuge.

von W.S. (Gast)


Lesenswert?

N. B. schrieb:
> Erstmal gibt es andere lohnenswerte boards in dem Preisbereich?
>
> Wie viel ist ein "LUT" in der Praxis?

Also wenn du solche Fragen stellst, dann rate ich dir, vor jeglichem 
Bestellen erstmal die Dokumentationen zu diversen FPGA's zu lesen.

Eine LUT (Lookup-Table) ist die Logik zur Verknüpfung von 2 (manchmal 
auch 3) logischen Eingangssignalen. Deren Resultat kann dann je nach 
Anwendungsfall direkt weiter verwendet werden oder es dient als Input 
für ein FF. An dieser Stelle sieht man auch den logischen Unterschied zu 
CPLD. Dort gibt es keine LUT, sondern jede Makrozelle hat mehrere 
OR-Eingänge, denen jeweils ein AND-Feld vorgeschaltet ist, wobei die 
AND's bis zu 38 Inputs haben können. Sowas kann man beim FPGA nur durch 
Kaskadieren von LUT's erreichen, was sich auf die erreichbare 
Arbeitsgeschwindigkeit auswirkt.

Kurz und knapp: Es kommt immer drauf an, was man machen will.

W.S.

von W.S. (Gast)


Lesenswert?

Nochwas:
Der Zweck von FPGA's besteht darin, daß man mit ihnen eine Schaltung 
macht. Schließlich kann keiner wissen, was du mit einem FPGA denn so vor 
hast.

Also ist es das Zweckmäßigste, sich sein eigenes Board zu machen anstatt 
nach Einsteiger-FPGA-Boards Ausschau zu halten.

W.S.

von Josef G. (bome) (Gast)


Lesenswert?

W.S. schrieb:
> Verknüpfung von 2 (manchmal auch 3) logischen Eingangssignalen.

Ich kenne nur solche mit 4 oder 6 Eingangssignalen.

von Gustl, der Echte! (Gast)


Lesenswert?

Josef G. (bome) schrieb:
> Ich kenne nur solche mit 4 oder 6 Eingangssignalen.

Ich auch und man kann sie oft auch als Speicher mit 2**4 oder 2**6 Bits 
verwendet.

von Gustl B. (gustl_b)


Lesenswert?

Da hatte ich 2 ** 4 oder 2 ** 6 geschrieben.

von ... (Gast)


Lesenswert?

Man kann uebrigens ein Verhalten einer digitalen Schaltung in
VHDL beschreiben, ohne von LUTs und ihren Registerbits jemals
etwas gehoert zu haben.
Wo es sich lohnt auf die FPGA-Resourcen zu achten, sind eher
die Wortbreiten von Multiplizierern und RAM.
Das man LUTs haendisch "verdrahtet" ist doch eher die absolute
Ausnahme.

> Also ist es das Zweckmäßigste, sich sein eigenes Board zu machen
Ja klar. Und den BGA braet man mit einem Dachrinnenloetkolben
aufs Board.

von Fpgakuechle K. (fpgakuechle) Benutzerseite


Lesenswert?

Josef G. (bome) schrieb:
> W.S. schrieb:
>> Verknüpfung von 2 (manchmal auch 3) logischen Eingangssignalen.
>
> Ich kenne nur solche mit 4 oder 6 Eingangssignalen.

weil du microsemi proasic (bspw sicherheitstechnik) nicht kennst.
https://www.microsemi.com/document-portal/doc_download/130702-ds0100-proasic3l-low-power-flash-fpgas-datasheet 
S.5

von W.S. (Gast)


Lesenswert?

... schrieb:
> Ja klar. Und den BGA braet man mit einem Dachrinnenloetkolben
> aufs Board.

Nö, den läßt man von seinem Bestücker aufsetzen. Das Wichtige bei allen 
diesen Gedanken ist, was so ein FPGA denn machen soll. Da hilft es 
wenig, Ausschau nach einem Board mit aufgelötetem FPGA und allenfalls 
noch dem Konfigurations-Flash zu halten, denn sowas kann eigentlich nur 
für allererste Trockenübungen herhalten, bei dem ein Einsteiger leider 
gar nicht mit der eigentlichen Schaltungstechnik rings um "sein" FPGA in 
Berührung kommt. Aber genau das ist ein wesentlicher Teil des Ganzen. 
Ich sehe solche "Einsteiger"-FPGA-Boards eher als die Steigerung des 
Arduino. Man kann zwar damit herumfuchteln, lernt dabei jedoch den 
wesentlichen Teil des Themas nicht.

W.S.

von Olaf (Gast)


Lesenswert?

> Ich sehe solche "Einsteiger"-FPGA-Boards eher als die Steigerung des
> Arduino. Man kann zwar damit herumfuchteln, lernt dabei jedoch den
> wesentlichen Teil des Themas nicht.

Sowas ist wohl auch eher fuer Firmen gedacht wo ja heute ueblicherweise
Software und Hardware getrennt ist. Dann kann der Software-ker schonmal 
auf dem FPGA losdatteln bis dann einen Monat spaeter die Zielhardware 
auf dem Tisch liegt.

Olaf

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.