Forum: FPGA, VHDL & Co. Frequenzzähler


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 chris_ (Gast)


Angehängte Dateien:

Lesenswert?

Im Moment experimentiere ich gerade mit eine neuen Entwicklungsumgebung.

https://terostechnology.github.io/terosHDLdoc/about.html

Es ist ein Plugin für VS-Code.

Zur Übung will ich damit einen Frequenzzählerblock machen. Wie man aber 
im Bild sieht, scheint es zwei Fehler zu geben.
Hat jemand eine Idee, woran das liegen könnte?

von Vancouver (Gast)


Lesenswert?

Ich würde mal vermuten, dass das numeric_std-Package nicht installiert 
ist. Wie das geht, steht idealerweise in der Doku der IDE. Der zweite 
Fehler dürfte eine Folge des ersten sein.

Allerdings hast du keinen Frequenzzähler implementiert, sondern einfach 
einen Zähler, der Takte zählt. Aber vermutlich ist der Code noch nicht 
fertig.

von chris_ (Gast)


Angehängte Dateien:

Lesenswert?

>Ich würde mal vermuten, dass das numeric_std-Package nicht installiert
>ist. Wie das geht, steht idealerweise in der Doku der IDE. Der zweite
>Fehler dürfte eine Folge des ersten sein.

So habe ich mir das auch schon gedacht. Ich habe auf meinem 
Linux-Rechner GHDL installiert und damit kann man den Zähler problemlos 
simulieren. Praktischerweise gibt es bei VS-Code noch ein Plugin, 
welches sich "WaveTrace" nennt, damit kann man ich VCD Dateien 
anschauen, die ich vorher mit einem Bash-Scribt mit GHDL erzeugt habe. 
Wahrscheinlich kann man das auch irgendwie integriert in Teros, aber ich 
habe keine Ahnung "wie".
Scheinbar ist Teros für die Integration von VUNIT ausgelegt

https://github.com/VUnit/vunit

was das genau macht und ob das bei der Installation schon drinn ist, 
weis ich auch nicht.

>Allerdings hast du keinen Frequenzzähler implementiert, sondern einfach
>einen Zähler, der Takte zählt. Aber vermutlich ist der Code noch nicht
>fertig.

Ja, der ist im Entstehen. Ich will versuchen, dieses Verfahren 
umzusetzen:
https://www.mikrocontroller.net/topic/goto_post/6507727

Dort stellt sich dann die Frage, ob der eigentliche Zählerprozess vom 
Eingang getaketed wird und die Zeitreferenz vom Quarzsignal.

von Vancouver (Gast)


Lesenswert?

Das Tool hat ja mal ein paar interesssante Features, und unterstützt 
eine ganze Reihe von Simulatoren, sogar Verilator. Coole Sache.
Verwendest du das auf Linux?

von Duke Scarring (Gast)


Lesenswert?

chris_ schrieb:
> Praktischerweise gibt es bei VS-Code noch ein Plugin,
> welches sich "WaveTrace" nennt, damit kann man ich VCD Dateien
> anschauen, die ich vorher mit einem Bash-Scribt mit GHDL erzeugt habe.
Ich verwende inzwischen nur noch --wave statt --vcd.

Das vcd-Format scheint nur ganz rudimentäre Datentypen zu kennen. Mit 
dem wave-Format kann ich mir auch schön z.B. die Namen der States einer 
FSM im Zeitdiagramm anschauen.

Duke

von chris_ (Gast)


Lesenswert?

Vancouver (Gast)
>Das Tool hat ja mal ein paar interesssante Features, und unterstützt
>eine ganze Reihe von Simulatoren, sogar Verilator. Coole Sache.
>Verwendest du das auf Linux?

Ja, ich mache alles mit Ubuntu.

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.