Forum: Platinen Layoutempfehlung RMII


von Frank K. (fchk)


Lesenswert?

Hallo!

Gegeben ist ein STM32F767BI (TQFP208) und ein LAN8720A/LAN8742A PHY 
(sind pinkompatibel zueinander), die per RMII verbinden sind. Die 
RMII-SIgnale sind auf ca 58mm+-4mm length-matched. Kürzer geht nicht, 
weil das Pinout bei ST etwas blöd ist und die RMII-SIgnale an 3 von 4 
Kanten des TQFP rauskommen.

Jetzt die Frage: Wo platziere ich den 50MHz Oszillator vorzugsweise? 
Direkt am PHY? Oder besser in der Mitte zwischen PHY und Prozessor?

fchk

von Sebastian R. (sebastian_r569)


Lesenswert?

Quarze immer so nah wie möglich an das Bauteil, zu dem sie gehören.

Der STM hat doch auch nen CLK Out für's RMII, dann kann der den Clock zu 
beiden PHYs liefern (so passiert es in unseren Designs)

von zonk (Gast)


Lesenswert?

Korrekt, bei RMII wird die Clock vom PHY erzeugt, die läuft also 
synchron zu den TX, RX, CRS, etc...
Was anderes ist OSC1/OSC2 bzw XTAL, das ist der Takteingang des Phy, das 
kommt bei dem in der Nähe. Um so kürzer um so weniger Abstahlung würde 
man meinen

von Frank K. (fchk)


Lesenswert?

Sebastian R. schrieb:
> Quarze immer so nah wie möglich an das Bauteil, zu dem sie gehören.

Ist klar. Hier ist es aber ein Oszillator, der seinen Takt an den PHY 
und an den Ethernet MAC liefert.

> Der STM hat doch auch nen CLK Out für's RMII, dann kann der den Clock zu
> beiden PHYs liefern (so passiert es in unseren Designs)

Die Pins werden hier anderweitig benötigt. Außerdem habe ich Sorge bei 
der Signalqualität bei nicht-ganzzahligen Multiplikatoren.

zonk schrieb:
> Korrekt, bei RMII wird die Clock vom PHY erzeugt, die läuft also
> synchron zu den TX, RX, CRS, etc...

Hier nicht, hier ist der PHY so konfiguriert, dass die 50 MHz extern von 
einem Oszillator erzeugt und in XTAL1 vom PHY und in TXCLK vom STM32 
eingespeist werden.

Siehe Datenblatt 
https://ww1.microchip.com/downloads/en/DeviceDoc/00002165B.pdf
Figure 3-7, Seite 29.

fchk

von zonk (Gast)


Lesenswert?

Dann bau ihn in die Mitte. Auf korrekte Terminierung achten.

von Hanswurst (Gast)


Angehängte Dateien:

Lesenswert?

Also ich habs beim PIC32MZ und LAN8740 so mit Serienterminierung 
gemacht.
Läuft problemlos.

von zonk (Gast)


Lesenswert?

RMII ist eh kein großes Ding. RGMMI wäre da schon bissl kritischer.

von zonk (Gast)


Lesenswert?

RGMII, aber egal:/

von Wolfgang (Gast)


Lesenswert?

Frank K. schrieb:
> Jetzt die Frage: Wo platziere ich den 50MHz Oszillator vorzugsweise?

Das sind 50MHz, nicht 5GHz. Wenn du den Oszillator mittig platzierst, 
kommen die Signalflanken gleichzeitig bei den beiden Abnehmern an. Wie 
kritisch das ist, sollte aus den Timing Anforderungen von STM und PHY 
hervorgehen.

von Michael K. (mab)


Lesenswert?

Frank K. schrieb:
>> Quarze immer so nah wie möglich an das Bauteil, zu dem sie gehören.
>
> Ist klar. Hier ist es aber ein Oszillator, der seinen Takt an den PHY
> und an den Ethernet MAC liefert.

Gibt es denn einen trifftigen Grund in diesem Fall einen Oszi einem 
Quarz vorzuziehen?

Eigentlich gibt es nur Nachteile:
1. Höhere Bauteilekosten
2. Höherer Stromverbrauch
3. Umständlich/Unmöglich in einen Sleep Modus zu kommen
4. Standard Linux Treiber mögen das auch nicht besonders

Habe ich da was übersehen?

Michael

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Michael K. schrieb:
> Eigentlich gibt es nur Nachteile:
Ich würde da aus kürzlich gemachter Erfahrung noch das Thema EMV 
dazupacken.

Denn die steilflankigen Rechtecke aus einem Oszillator haben uns da 
einen sauberen Sender geliefert. Und weil Klarsicht-Plastikgehäuse war 
da auch nichts mit Abschrimen. Erst nach Umstellung auf einen Oszillator 
mit Sinusausgang oder eben einfach die Verwendung eines Quarzes haben 
Ruhe ins System gebracht.

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.