STM32F107RBT6 Ethernet Clock

#7392470
Lesenswert?

Hat jemand Erfahrungen mit dem Ethernet Interface des STM32F107RBT und der Clock Source. Im Datenblatt steht, dass man die 25MHz für MII aus einem externen Quartz über den MCO Pin bereitstellen kann. Nun würde ich aber gerne keinen 25MHz Quartz, sondern einen 20MHz Quartzoscillator benutzen und daraus in der PLL 50MHz Systemtakt erstellen und dann an MCO PLLCLK/2 ausgeben. Lässt sich in der Konfiguration Ethernet mit dem MII noch betreiben?

#7392502
Lesenswert?

Gustav G. schrieb:

Hat jemand Erfahrungen mit dem Ethernet Interface des STM32F107RBT und der Clock Source.

Dein Problem hat mit dem genannten Controller im Speziellen nichts zu tun sondern betrifft alle Ethernet Cores und PHYs.

Ein per PLL generierter Clock ist weitaus weniger jitter-arm als ein Quarzoszillator und birgt das Potential der vermehrten Fehlübertragungen in sich da sich durch das Jittern die Kommunikationspartner schlechter verstehen.

Ich würde mir einen extra Quarzoszillator für den PHY leisten, seinen Clock kann man ja dem Ethernet Core auch zur Verfügung stellen. Und der extra Quarzoszillator ist so klein und so preisgünstig dass er in den meisten Fällen weder vom Platz noch vom Preis ins Gewicht fällt. Dafür hat man nachher garantiert weniger Ärger bzw. braucht sich im Fehlerfall um diese Baustelle nicht zu kümmern.

#7392515
Lesenswert?

Wastl schrieb:

Ich würde mir einen extra Quarzoszillator für den PHY leisten, seinen Clock kann man ja dem Ethernet Core auch zur Verfügung stellen. Und der extra Quarzoszillator ist so klein und so preisgünstig dass er in den meisten Fällen weder vom Platz noch vom Preis ins Gewicht fällt. Dafür hat man nachher garantiert weniger Ärger bzw. braucht sich im Fehlerfall um diese Baustelle nicht zu kümmern.

Deswegen meine Idee einen Oszillator zu benutzen und den intern mit der PLL auf 25MHz zu bringen und diese dann für den PHY zu benutzen. Spricht da etwas gegen?

#7392533
Lesenswert?

Wastl schrieb:

Gustav G. schrieb:

Spricht da etwas gegen?

Prinzipiell geht's, aber die PLL macht den Jitter, falls du es nicht verstanden haben solltest. PLLs in Controllern sind "digital" und sind nicht auf Signalreinheit ausgelegt. Ethernet-Verbindungen reagieren darauf empfindlich.

Ja ist verstanden. Der Prozessor bietet ha die Möglichkeit die 25MHz durchzurouten. Kann das auch schon Jitterprobleme geben?

#7392576
Lesenswert?

Gustav G. schrieb:

Nun würde ich aber gerne keinen 25MHz Quartz, sondern einen 20MHz Quartzoscillator benutzen

Der Vorteil einen extra Quarzoszillator für den PHY zu verwenden besteht ja auch darin dass man für den Controller mehr Freiheiten in der Clock-Konfiguration bekommt und nicht darauf angewiesen ist eine so "hohe" Basis-Frequenz (25 MHz) zu verwenden um den PHY möglichst Jitter-arm zu speisen. Der Ethernet Core kann damit synchron zum PHY laufen und der Controller läuft ungestört auf seiner ganz eigenen Frequenz.

#7392628
Lesenswert?

Gustav G. schrieb:

Hat jemand Erfahrungen mit dem Ethernet Interface des STM32F107RBT und der Clock Source. Im Datenblatt steht, dass man die 25MHz für MII aus einem externen Quartz über den MCO Pin bereitstellen kann. Nun würde ich aber gerne keinen 25MHz Quartz, sondern einen 20MHz Quartzoscillator benutzen und daraus in der PLL 50MHz Systemtakt erstellen und dann an MCO PLLCLK/2 ausgeben. Lässt sich in der Konfiguration Ethernet mit dem MII noch betreiben?

Wenn Du in der PLL keinen ganzzahligen Faktor hast, ist die Signalqualität des Signals nicht gut genug für den PHY. Mach das nicht. Nimm einen 25 MHz Quarz und versorge STM32 und den PHY damit, wenn Du MII verwendest. Für RMII nimmst Du einen extra 50MHz Oszillator, der sowohl an den PHY als auch an den RefClk des STM32 MACs geht. Alles andere gibt oftmals Bruch.

fchk

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren