Ethernet RMII sur PCB à deux couches


10

INTRODUCTION: Je vise à concevoir un système connecté Ethernet comme un passe-temps (c'est-à-dire beaucoup de temps mais ne souhaitant pas dépenser beaucoup). Idéalement, mes contraintes de conception seraient de s'en tenir à un PCB à 2 couches de 100 mm x 100 mm avec des trous de 0,3 mm et une piste / dégagement de 0,15 mm, jusqu'à une empilement total mince de 0,6 mm. Le coût de production d'un PCB à 4 couches chez mon fabricant connu dépasse celui des composants aux quantités dont j'ai besoin (un seul vraiment, mais jusqu'à 10 PCB vont pour le même coût dans mon cas particulier).

MON APPROCHE: Un microcontrôleur ATSAME54N20 avec MAC Ethernet intégré connecté avec un RMII à un KSZ8091RNA PHY dans Altium Designer.

 Microcontrôleur ATSAME54N20 avec MAC Ethernet intégré connecté avec un RMII à un KSZ8091RNA PHY dans Altium Designer.

Schéma de l'ATSAME54N20 et du KSZ8091RNA

QUESTION 1: Quelles sont mes chances de réussite? Le maintien d'une impédance caractéristique de 68 ohms à GND (GND toujours non versé) pour les traces RMII semble impossible même avec l'option d'empilement de hauteur totale de 0,6 mm, mais la longueur de trace maximale est inférieure à 30 mm, avec des traces comme CLK de 4 mm de long. Des problèmes de sonnerie et de réflexion sont-ils susceptibles de survenir dans un circuit comme celui-ci?

QUESTION 2: Les deux traces TX sont acheminées ensemble et séparées de celles RX, bien qu'aucune correspondance de longueur n'ait été effectuée. Dois-je envisager des tolérances de correspondance de longueur serrées?

QUESTION 3: Le NET en surbrillance réserve les vías en passant par deux broches inutilisées qui seraient réglées sur une impédance élevée. Est-ce une pratique courante? L'intégrité du signal est-elle affectée par cette opération? L'utilisation de vias est-elle une meilleure pratique?

REMARQUE 1: J'ai trouvé des sujets sur l'exécution de traces via des broches de broches NC, dans mon cas, je me pose des questions sur les broches inutilisées bien documentées. J'ai également rencontré ce post , mais je prévois de refusionner cette carte moi-même et manque d'expérience, je préférerais donc éviter de couper les broches et de traiter les forces de tension de surface inégales agissant sur la puce.

REMARQUE 2: les pistes d'impédance différentielle de 100 ohms du PHY au magnétique n'ont pas encore été exécutées, mais elles sortent du PHY sans se rapprocher des signaux RMII.

NOTE 3: Je profite de cette occasion pour remercier la communauté pour ses connaissances et son aide. J'espère que quelqu'un trouvera mon message utile à l'avenir!


SUIVRE:

entrez la description de l'image ici

  • Tous les filets RMII étaient assortis en longueur à 29,9 mm +/- 0,1 mm.
  • Les broches inutilisées n'étaient pas utilisées pour exécuter des traces.
  • L'empilement se compose d'un panneau d'une épaisseur totale de 1,6 mm et aucune impédance contrôlée n'a été créée.
  • GND doit encore être versé, ainsi que certains polygones de 3,3 V, sans percer sous aucune piste.

Cette conception est-elle meilleure?

Semble-t-il que cela pourrait fonctionner?


SUIVI 2:

entrez la description de l'image ici

entrez la description de l'image ici - Un guide d'onde coplanaire avec mise à la terre a été mis en place pour une correspondance d'impédance plus étroite.

entrez la description de l'image ici

La réponse la plus complète à l'impédance de ligne de transmission correcte pour les traces RMII que j'ai trouvée était Wikipedia:

Les signaux RMII sont traités comme des signaux groupés plutôt que comme des lignes de transmission; aucune terminaison ou impédance contrôlée n'est nécessaire; l'entraînement de sortie (et donc les vitesses de balayage) doivent être aussi lents que possible (temps de montée de 1 à 5 ns) pour permettre cela. Les pilotes devraient être capables de piloter 25 pF de capacité, ce qui permet des traces de PCB jusqu'à 0,30 m. Au moins, la norme dit que les signaux n'ont pas besoin d'être traités comme des lignes de transmission. Cependant, à des taux de bord de 1 ns, une trace supérieure à environ 2,7 cm, les effets de la ligne de transmission pourraient être un problème important; à 5 ns, les traces peuvent être 5 fois plus longues. La version IEEE de la norme MII correspondante spécifie une impédance de trace de 68 Ω. National recommande d'exécuter des tracés de 50 Ω avec des résistances de terminaison en série de 33 Ω (ajoute à l'impédance de sortie du pilote) pour le mode MII ou RMII afin de réduire les réflexions.

Certains autres incluent la spécification RMII v1.2:

Toutes les connexions sont destinées à être des connexions point à point sur les PCB. En règle générale, ces connexions peuvent être traitées comme des chemins électriquement courts et les réflexions des lignes de transmission peuvent être ignorées en toute sécurité. Ni un connecteur ni une impédance caractéristique pour les traces de PCB électriquement longues ne sont dans le cadre de cette spécification. Il est recommandé de maintenir le lecteur de sortie aussi bas que possible pour minimiser le bruit au niveau de la carte et les interférences électromagnétiques.

Et une directive Sun Microsystems:

Comme les signaux MII, les signaux GMII seront terminés à la source pour préserver l'intégrité du signal selon l'équation suivante: Rd (impédance du tampon) + Rs (impédance de terminaison de la source = Z0 (impédance de la ligne de transmission).

  • Tous les filets RMII étaient assortis en longueur à 40 mm +/- 0,1 mm.
  • Les broches inutilisées n'étaient pas utilisées pour exécuter les traces de signal.
  • Des broches inutilisées ont été utilisées pour la connexion GND et 3,3 V.
  • L'empilement se compose d'un panneau d'épaisseur totale de 1,6 mm.

Cette conception est-elle meilleure?

Semble-t-il que cela pourrait fonctionner?

Lier certaines broches à 3,3 V ou GND est-il acceptable? Je pourrais me passer de cette pratique.

Combien de vias dois-je placer le long du guide d'ondes coplanaire? Il y a plus d'espace pour plus de vias ATM.

Les traces GND entre les traces de signal atteignent une largeur de 0,15 mm, est-ce correct?

Merci d'avance pour votre aimable réponse! J'apprécie vraiment cela !


3
Une broche "NC" ne signifie pas qu'elle n'est pas connectée à l'intérieur de la puce: cela signifie que vous n'êtes pas connecté à eux. La raison d'avoir des broches NC sur une puce varie, mais il peut s'agir de broches réservées, de broches utilisées pour les tests, etc. La connexion à celles-ci peut entraîner un comportement imprévisible.
TimB

1
Merci d'avoir posté le suivi. Je pensais que vous aviez dit la pile avec 0,6 mm (ce qui est un PCB très mince), pas 1,6 mm? De toute façon, cela ne fait pas beaucoup de différence pour les calculs d'impédance. Dans la contrainte (indésirable) de vouloir le faire sur 2 couches, je dirais que c'est une solution plus sûre, et la différence de propagation du signal a été traitée (je pense qu'ils n'ont jamais été à cette vitesse). Mais vous ne semblez pas avoir traité l'aspect impédance de la conception? Les calculs que j'ai faits dans ma réponse étaient pour un scénario à ondes coplanaires, où vous remplissez entre des signaux avec Gnd, ils sont donc maintenant faux.
Techydude

1
Tout d'abord, c'est maintenant ~ 140ohms (calc microruban), auparavant ~ 86ohms (calc coplanaire). Je vous exhorte, au moins pour l'exercice d'apprentissage, à rechercher l'impédance de source des deux CI, à confirmer mon calcul Z0 au fond de l'enveloppe et à déterminer si vous aurez un problème de réflexions / sonneries (en supposant réception est Hi-Z). Deuxièmement, tous les signaux reviennent par le sol, mais cela est particulièrement important pour la haute vitesse (diaphonie, EMI, etc.), il faut donc toujours prendre en considération, sinon vous n'êtes qu'à "moitié faire le travail", donc nous sommes intéressés à voyez comment vous faites le plan gnd en bas :-), si rien en haut.
Techydude

1
cela vient d'arriver sur un google aléatoire qui pourrait aider, si vous n'êtes pas familier avec la théorie et les mathématiques de la ligne de transmission. Je ne l'approuve pas personnellement, mais il semble "assez bon" pour ce cas :-): web.cecs.pdx.edu/~greenwd/xmsnLine_notes.pdf
Techydude

2
Vous devez utiliser des résistances série, en particulier sur l'horloge. Comme exemples, vous pouvez rechercher le schéma et la disposition des "Eth Board LAN8720" et "Eth Board DP83848".
TEMLIB

Réponses:


6

Je pense que vous seriez bon pour 100BaseT (signaux RMII 50 MHz), bien que pour d'autres raisons, je pense que c'est toujours une conception risquée. Je n'ai pas le temps de passer par une analyse minutieuse de la synchronisation et de l'impédance, mais je peux faire les commentaires suivants:

a) Bien que je ne sache pas où vous vous trouvez ni si vous avez accès à une carte de crédit, les PCB à 4 couches sont très abordables auprès de nombreux fabricants de PCB. OSHpark.com me vient à l'esprit. En traitant cette limitation, votre problème (b) (point suivant) est également évité.

b) La connexion aux pads "NC" est risquée et à peu près non dans un environnement professionnel. Peut-être qu'ils sont vraiment "NC", ou peut-être qu'ils sont "réservés" pour une utilisation future sur un morceau de silicium mis à jour qui va non seulement dans un nouveau circuit intégré étroitement lié, mais aussi dans la fabrication future de ce circuit intégré. De toute évidence, il y aura du plomb, mais peut-être aussi du fil de liaison au silicium. Vous ne le savez tout simplement pas, pas aujourd'hui et pas à l'avenir. C'est pourquoi le mfg dit "No Connect"! Cette NC "bien documentée" (qui dit qui?) Aujourd'hui pourrait se connecter à du silicium demain. Mais peut-être que cela n'a pas d'importance dans votre situation pour une seule fois.

c) La vitesse du signal à travers le cuivre sur FR4 est d'environ 6 "/ 15 cm par ns. À en juger par la fiche technique KSZ8091 (7.0 Diagrammes de synchronisation), je pense que vous voudriez que vos synchronisations soient précises à 1ns près. Donc, vous avez beaucoup de l'espace (longueur) pour travailler ici, bien plus que votre disposition actuellement "à l'étroit"; du point de vue du timing, vous n'avez pas besoin d'être aussi proche du MCU. Personnellement, je ne serais pas trop pris par le timing et la longueur - correspondant dans cette situation, je ne pense pas que cela importera. Cela dit, il est recommandé que ces signaux rapides soient de la même longueur, car cela importe dans les conceptions plus rapides. Heureusement, vous avez l'espace pour tirer le PHY puce plus loin du MCU pour vous donner de l'espace pour la correspondance de longueur.

d) Intégrité et impédance du signal: avec votre masse inférieure à 0,6 mm, cela ne vous permet pas de contrôler le couplage ou l'impédance. C'est pourquoi les PCB à 4 couches existent :-). Si j'étais vous, j'utiliserais cet espace supplémentaire (distance entre PHY et MCU) disponible (d'un point de vue temporel) pour ajouter également quelques résistances 0402 en série avec ces signaux de 50 MHz (placés le plus près de la source), de sorte que vous ayez l'option de les ralentir et d'augmenter la composante R de votre impédance, au cas où la sonnerie (réflexions) serait un problème. Si vous vous en tenez à une couche double, j'utiliserais également cet espace disponible entre PHY et MCU pour ajouter un peu de cuivre connecté à la terre sur le côté supérieur entre ces signaux à haute vitesse.

Capture d'écran de Saturn PCB Toolkit

Fait intéressant, j'ai vu quelque chose de curieux dans les commutateurs Gigabit Ethernet GS105 à 5 ports GS305 (à droite) et encore moins chers (à gauche) de Netgear. IIRC, étant Gigabit, ce seront des signaux ~ 250 MHz vers le magnétique, où l'on pourrait penser que le contrôle de l'impédance serait plus important. Là encore, je soupçonne que leurs magnétiques ne sont évalués que pour 10 / 100BaseT, pas 1000, mais ils semblent s'en tirer aussi!

Netgear GS105 à gauche, GS305 à droite

Le modèle GS105 encore moins cher est à seulement 2 couches:

Netgear GS105, PCB 2 couches!


Merci beaucoup ! Je ferai une autre tentative de conception et je posterai, les circuits intégrés seront retirés plus loin et les longueurs seront adaptées. En ce qui concerne votre point b), j'utilise des broches régulières pour éviter les vias. Ils peuvent être configurés comme sorties ou autre. Dans quelle mesure pensez-vous que la capacité des broches supplémentaires affectera la correspondance de longueur? Merci beaucoup pour ces photos, elles sont réconfortantes!
Juan Manuel López Manzano

3
@ JuanManuelLópezManzano Oh merde, je pensais que vous aviez dit qu'il s'agissait de broches sans connexion?! Mais ce sont des GPIO que vous avez l'intention de configurer comme entrées Hi-Z? Enfer non - idée terrible. Non seulement vous avez réellement la capacité des circuits GPIO réels sur silicium et vous l'appliquez à certains, mais pas à tous, les signaux RMII, mais vous avez également le risque qu'un micrologiciel SNAFU en fasse des sorties et endommage les pilotes de sortie ( de MCU ou de circuits intégrés PHY) - et c'est après avoir confirmé que ces GPIO particuliers passent en Hi-Z pendant la réinitialisation. Tout simplement pas. Vous avez plus qu'assez d'espace de synchronisation pour faire face aux vias.
Techydude

1

Pour RMII, je crois que vous voulez que les traces correspondent à la ligne d'horloge. Mais, sur certaines traces, vous aurez une capacité supplémentaire des pads supplémentaires, ce qui les ralentira davantage, et je ne sais pas comment en tenir compte.

10 Mbps suffisent-ils? Si oui, vous pouvez être d'accord.


10 Mbps serait ok. Je conçois une alternative avec des traces plus minces (plus éloignées de la cible d'impédance caractéristique) mais des longueurs correspondantes. Si quelqu'un sait comment tenir compte des coussinets supplémentaires, faites-le moi savoir!
Juan Manuel López Manzano
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.