Forum: FPGA, VHDL & Co. Taktfrequenz-Messung


von St. D. (st_d)


Lesenswert?

Hallo zusammen,
bei einer RGMII-Schnittstelle (mit three-speed-Unterstützung) kann ja 
der RX_CLK 125, 25 oder 2,5MHz sein, je nach Gegenstück vom PHY.
Angenommen wir haben einen festen 125MHz Takt intern, wie würdet ihr die 
Geschwindigkeit vom RX_CLK bestimmen? 125MHz verdoppeln und einfach 
einen Zähler implementieren?
Gibt es da bessere Tricks?
Grüße & vielen Dank!

von Gustl B. (-gb-)


Lesenswert?

Einen internen Zähler der eine genaue feste Zeit lang zählt, also mit 
125 MHz dann von 0 bis 124999999 und dann zurücksetzen.

Und einen Zähler mit dem externen zu messenden Takt. Und diesen Zähler 
resettest du immer dann wenn der interne Zähler resettet wird und gibst 
den Zählerstand aus.

Z. B. hat der Zähler mit dem externen Takt dann bis 99856837 gezählt 
während der 125 MHz Zähler bis 124999999 gezählt hat. Dann ist der 
externe Takt vermutlich ein 100 MHz Takt.

Noch einfacher wäre ein Oszi anschließen ...

von Duke Scarring (Gast)


Lesenswert?

St. D. schrieb:
> bei einer RGMII-Schnittstelle (mit three-speed-Unterstützung) kann ja
> der RX_CLK 125, 25 oder 2,5MHz sein, je nach Gegenstück vom PHY.
Ich würde die entsprechenden Status-Register im PHY über MDIO auslesen.
Da steht ja drin, mit welcher Geschwindigkeit der Link läuft.

Duke

von Signalverarbeiter (Gast)


Lesenswert?

Duke Scarring schrieb:
> Ich würde die entsprechenden Status-Register im PHY über MDIO auslesen.
> Da steht ja drin, mit welcher Geschwindigkeit der Link läuft.

Dazu muss die Verbindung zum PHY aber stehen :-)

von daniel__m (Gast)


Lesenswert?

Hi,

ich sehe dazu das Taktsignal als digitales Signal an und zähle die 
steigenden Flanken (edge detection) pro Zeitbasis. Da kommt das 
Nyquist-Shannon-Abtasttheorem ins Spiel, d.h. der Arbeitstakt muss mind. 
2x Eingangsfreq. sein. Entweder ein Takt > 250 MHz nutzen (wenn 
verfügbar) oder den Eingang per Taktteiler unter 125/2 bringen.

grüße

von Fitzebutze (Gast)


Lesenswert?

daniel__m schrieb:
> Da kommt das
> Nyquist-Shannon-Abtasttheorem ins Spiel, d.h. der Arbeitstakt muss mind.
> 2x Eingangsfreq. sein. Entweder ein Takt > 250 MHz nutzen (wenn
> verfügbar) oder den Eingang per Taktteiler unter 125/2 bringen.

Das klingt ja jetzt doch etwas hoch-abenteuerlich überingeniörisiert.
Da ist die Variante mit dem Zähler doch etwas pragmatischer :-)

Nur sollte man sich da ev. einige Gedanken über Einsynchronisierung 
machen (Taktdomänen-Uebergang) um Glitches falscher Zählerwerte zu 
verhindern.

von Msd (Gast)


Lesenswert?

Signalverarbeiter schrieb:
> Dazu muss die Verbindung zum PHY aber stehen :-)

Aber nur auf dem MDIO-Bus, dazu brauchts keinen RGMII/RMII-Takt.

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.