User Login


Sie sind noch nicht eingeloggt!

     anmelden |  registrieren

Termine


08. - 10.12.2014: Frankfurt |
PLC2 - Video Signal Processing

08. - 12.12.2014: Freiburg |
PLC2 - Expert FPGA Schaltungstechnik

08. - 10.12.2014: Mnchen |
PLC2 - Compact ZYNQ for HW Designers

Boards


Spartan 6 FPGA SP605 Evaluation Kit (XC6SLX45T-FGG484)
    

Links


FPGA Hersteller:  Altera
Xilinx
Lattice
FPGA Schulungen:  PLC2
El Camino
Trias
Weiteres:  VHDL ORG

Literatur


Dieter Wecker

Prozessorentwurf

Jahr: 2015
ISBN-10: 3110 4029 63

Zeitmessung

Hier findet ihr diverse VHDL Designs von Forum-Benutzern oder könnt Anregungen für Designs liefern.

Zeitmessung

Beitragvon Hansdebaer » Mo 17. Nov 2014, 14:35

Hallo Leute,
ich habe ein VHDL Code um Zeit auf die Millisekunde genau zu messen. Das mache ich einfach in dem Ich ein Oszilator Takt so Teile das ich auf eine Millisekunde komme und addiere die auf. Gibt es noch eine zweite Möglichkeit eine Zeit zu Messen mit einem FPGA? Also bei einem Mikrocontroller kann man ja z.B. die Zeit vom Start und vom Ende auslesen, die beiden Subtrahiert und ich habe die Zeit ist sowas auch möglich? Und wenn ja wie geht das?

Liebe Grüße und vielen Dank im Voraus.
Hansdebaer
 
Beiträge: 10
Registriert: Mi 6. Aug 2014, 09:44

Re: Zeitmessung

Beitragvon eilert » Di 18. Nov 2014, 10:13

Hi,
wenn du nur Millisekundengenauigkeit brauchst ist das völlig OK so.
Durch das Nullsetzen am Anfang sparst du dir die Subtraktion am Ende, verglichen mit dem Microcontroller.
Dort muss man oft mit der von dir beschriebenen Methode arbeiten, weil man nur einen frei laufenden Zähler hat, der von vielen Prozessen genutzt werden kann. Und auch dort ist es manchmal möglich den Counter zu resetten um sich die subtraktion hinterher zu sparen.

Im FPGA kann man sich ja im Prinzip beliebig viele Zähler mit passender Genauigkeit bauen.
Für die von dir beschriebene Methode braucht man neben dem Zähler ein Register für die Startzeit und einen Subtrahierer. (ggfs noch ein Ergebnisregister.)

Angenommen man würde mehrere unabhängige Zeitmessungen gleichzeitig machen wollen, dann wäre diese Methode letztendlich schlechter als mit separaten Zählern.
Da ein Zähler ja auch nur ein Register mit Addierer ist benötigt man für N Zeitnehmer N Register und N addierer (Die Kontrolllogik vernachlässige ich jetzt mal.)
Für deine Methode bräuchte man ein Register und einen Addierer für den Zähler und zusätzlich N Register und N Subtrahierer, also in Summe mehr Ressourcen.

Have a nice synthesis
Eilert
eilert
 
Beiträge: 72
Registriert: Fr 15. Jun 2012, 09:22


Zurück zu VHDL Designs

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron