Forum: FPGA, VHDL & Co. fixed Delay Buffer


von Tobias Floery (Gast)


Lesenswert?

Hallo,

ich beschäftige mich seit einigen Tagen mit VHDL und finde die
Möglichkeiten einfach klasse.

Kurze Beschreibung was ich machen möchte:
Ich habe 2 Ausgänge auf denen ich mit einstellbarer Verzögerung Pulse
ausgeben will (also die Zeit zwischen den Pulsen auf Pin1 und Pin2
sollte einstellbar sein). O.k. das würde ja noch gehen, aber ich
benötige eine Auflösung von <= 150ps.

Meine Idee war, ein paar Gatter hintereinander zu schalten um somit die
Durchlaufszeit als Verzögerung zu nehmen. Mit einem Multiplexer könnte
ich dann versch. Verzögerungszeiten abgreifen. In der Theorie sollte
dies ja funktionieren nur leider scheint der VHDL Compiler zu tüchtig
zu sein Optimiert die Verzögerungen & Co immer weg. Leider habe ich es
noch nicht geschafft ihm das abzugewöhnen.

Hat jemand von euch eine Idee wie das gemacht werden könnte (ohne
PLL)?

Ich verwende einen Altera FPGA und Quartus II.

Danke
Tobias

von Jochen Pernsteiner (Gast)


Lesenswert?

>O.k. das würde ja noch gehen, aber ich
>benötige eine Auflösung von <= 150ps.

Welchen FPGA benutzt Du?
Haben die so eine geringe Durchlaufverzögerung?
(Pin->Gatter, Gatter, Gatter->Pin)

Hast Du die nötigen Messgeräte um das zu messen?

Was genau soll das eigentlich werden?

von FPGA-User (Gast)


Lesenswert?

mit den 150ps hast Du schlechte Karten.

Dass die Delays wegoptimiert werden, ist sicher hinzubekommen
(sofern Du mal Deinen VHDL-Code preisgibst), aber
die tatsächliche Delay-Zeit ist unbestimmt, von Temp. und
Betriebsspannung abhängig und von MUX-Abgriff zu Abgriff
verschieden, es sei denn Du machst Hand-Placement.

Da würde ich sicherheitshalber eine externe Delay-Line
(von MAXIM oder so) bevorzugen, keine Ahnung ob die 150ps
können - wohl weher 1 ns aufwärts.

von Tobias Floery (Gast)


Lesenswert?

Also die 150ps sind nicht von Pin-zu-Pin sondern nur intern...

Ja das mit einer externen Delay Line habe ich mir auch schon überlegt.


(Habe bei On-Semiconductors so gar einen Chip mit 10ps Auflösung
entdeckt...)

Nur wenn ich schon für das ganze erstliche Timing einen FPGA verwenden
muss, dachte ich mir das es halt schöner wäre wenn ich alles im FPGA
realisieren könnte.

Ich verwende im Moment einen Altera ACEX1k30T144-1 werde aber nächste
Woche mit einem Cyclone anfangen zu arbeiten.
Beim Cyclone werde ich mir mal die PLL genauer anschauen, laut
Datenblatt sollte man 125ps delay herbekommen. Das wäre dann ja schon
mal etwas.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.