mikrocontroller.net

Forum: FPGA, VHDL & Co. Verilog nach 74xx


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.
Autor: Gustav (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hier gibt es ein kleines Projekt, bei dem Verilog Code in 74xx Logik 
umgesetzt wurde:

https://hackaday.com/2019/07/20/breathing-led-done-with-raw-logic-synthesized-from-a-verilog-design/

Die Schaltung scheint etwas aufwändig. Wie könnte man das minimieren und 
wie viele Resourcen würden in einem CPLD oder FPGA verbraucht?

Autor: Gustl B. (-gb-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun, das ist echt untypisch. Wenn man 74 Steine verwendet dann genau 
anders herum. Man hat eine Schaltung in 74 und möchte die in einen FPGA 
stecken. Also baut man alle 74 Steine in VHDL/Verilog nach und dann 
verbindet man sie wie auf der Platine und steckt sie in das FPGA. Das 
macht vor allem Sinn wenn es um 74 Steine geht die man heutzutage kaum 
noch kaufen kann oder viel Platz gespart werden soll.
Hier https://gus.tl/fpga hatte ich auch ein paar 74 Steine in VHDL 
beschrieben.

Autor: Mw E. (Firma: fritzler-avr.de) (fritzler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja eigentlich macht mans andersrum.
Unser MIPS TTL Projekt haben wir auch erst in VHDL nachgebaut zum 
Designtest und viele Bugs gefunden.
Hier gibts die 74er Steine: 
http://www.fritzler-avr.de/spaceage2/down_vhdl.htm

Ansonsten ist die RTL Ausgabe der synthesen noch nicht das 
Minimaldesign.
Das ist nur zum nett ansehen, bzw gucken ob die synthese verstanden hat 
was man von ihr wollte.
Erst wenn alles in LUTs gequetscht wurde ist es minimal, da verschwinden 
dann ganze Gattergruppen in der LUT.

Autor: -gb- (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber LUTs kann man einzeln kaufen und verlöten.

Autor: Gustav (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mw E. (Firma: fritzler-avr.de) (fritzler)
>Das ist nur zum nett ansehen, bzw gucken ob die synthese verstanden hat
>was man von ihr wollte.

Ich verstehe nicht ganz, was du mit deinen Aussagen meintest.
Mein Verdacht ist, dass der VHDL-Synthethisierer nicht so gut im 
Optimieren ist, wie das Design in 74er Chips von Hand. Dann wäre aber 
die Frage, was die Synthese in VHDL am Anfang bringt.

Die Schaltung aus Hackaday sieht von weitem jedenfalls so aus, als wenn 
sich da ziemlich viel sparen ließe.

Wenn ich Zeit habe, werde ich das mal an irgend was einfachem probieren.

Autor: -gb- (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nun, erstmal wird aus dem VHDL eine netlist genau. Also so richtig mit 
gattern und so. Aber das sind Bauteile die es im fpga nicht gibt. Da 
gibt es luts. Das Palace and Route bildet dann die Schaltung aus gattern 
und so auf die real vorhandenen Bauteile im fpga ab. Und dabei wird dann 
optimiert.

Autor: Vancouver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
-gb- schrieb:
> Das Palace and Route bildet dann die Schaltung aus gattern
> und so auf die real vorhandenen Bauteile im fpga ab.

Nein, dieser Schritt heißt Technology Mapping oder einfach Mapping und 
wird heutzutage meistens gleich bei der Synthese mitgemacht, weil man da 
am besten optimieren kann. PAR legt nur die Lage der im FPGA verwendeten 
Ressourcen fest, sodass das Timing eingehalten wird. Manchmal ist es 
dabei notwendig das Teile des Design erneut gemappt werden (bei Vivado 
heißt das Resynthesis).

Autor: Mw E. (Firma: fritzler-avr.de) (fritzler)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Name bei der Synthese ist eigentlich Programm.
Dieser Schritt versucht aus dem VHDL/Verilog Code rauszulesen was du 
eigentlich willst.
Der Code wird also auf Gatter abgebildet, aber noch nicht optimiert.
Außer er erkennt direkt, dass ein Eingangssignal auf VSS/VDD hängt und 
dmait alles danach weg kann.

Dabei fällt eben auch die Gatteransicht bei raus.
In der kann man nachgucken ob zB auch die IOs so belegt sind wie man das 
wollte.

Die Abbildung auf die FPGA hardware wird dann im Translate Schritt 
durchgeführt.

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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.