Pour la liaison entre le DP et le RJ45:
- c'était carrément mieux sur ton premier routage.
Pour ce nouveau routage j'ai repris celui de la carte de démonstration de National Semiconducteur (www.ti.com/litv/zip/snlc033 et http://www.ti.com/product/DP83848C) : j'ai trouvé que l’implémentation des composants en 0603 était pas mal du tout du point de vu occupation de la carte. Mais les signaux sont moins symétriques..., mais comme c'est le concepteur du DP84838C, je me suis dit que cela devait le faire.
Sauf que je n'ai pas leur moyen pour contrôler l'impédance de mes liaisons. Il est donc probable que la première solution (reprise de l'implémentation de microchip) soit plus robuste.
Savez-vous s'il est possible de récupérer une partie du routage d'une carte version 1 vers une autre version ?
Merci pour les liens, je vais faire quelques calculs afin de vérifier les valeurs théorique de mon routage avec les spécifications demandés pour ce circuit.
ensuite j'aurais collé les vias très proche des résistances de liaison
Est-ce que la disposition des vias (celles placées entre le DP et le PIC) sont assez proches des résistances, ou est-ce que je dois encore les rapprocher ?
enfin je me débrouillerais pour avoir à peu près la même longueur sur tous les fils RMII
La vache (si je puis me permettre !), cela ne va pas être facile.
Le CLK est pour l'instant non routé, pas simple d'avoir la même longueur pour les deux connexions !
Jean-Marie
Dernière modification par schneiderj ; 25/03/2012 à 16h44.
Attention au routage du RMII à 50MHz....
Concernant la résistance Rbias..la datasheet de NS ne dit je crois pas grand chose à ce sujet. J'avais trouvé un commentaire sur l'ENCxxx ( controleur ethernet externe) :
“The resistor influences the TPOUT+/- signal amplitude. The RBIAS resistor should be placed as close as possible to the chip with no immediately adjacent signal traces in order to prevent noise capacitively coupling into the pin and affecting the transmit behavior. It is recommended that the resistor be a surface mount type”
Fais attention à la valeur de Rbias et de sa tolérance.
Il existe des cartes sur le marché qui utilisent des PIC32MX795. N'hésites pas à jeter un coup d'oeil au placement des composants.
Merci pour ces informations. Je vais regarder de plus près le choix et le positionnement de cette résistance.
pour ce qui est cartes que l'on peut voir sur le net, il y en a mais tout de même pas des masses et souvent avec une prise de vue qui donne peu d'information. Mais point intéressante : quelques unes ne semblent pas respecter les recommandations de routage pour les paires RX et TX.
Et hormis la carte que j'ai mis en lien un peu plus tôt (celle de NS), il y en a quelques autres qui ne comporte que la partie physique et RJ45. Est-ce que cela signifie que finalement la sensibilité de la liaison microcontrolleur/trancevier n'est pas si importante que cela ? Ou est-ce qu'ils prennent d'autres précautions pour sécuriser cette connexion ?
jlcms : tu as effectivement raison. une disposition comme tu le suggères est nettement plus simple à router (à priori, car je n'ai pas encore commencé avec cette nouvelle base) : Routage 3.jpg.
Je vais m'y attaquer dans la semaine à venir.
Jean-Marie
25/03/2012 - 22h56
jlcms
Date d'inscription
octobre 2010
Localisation
Lyon
Âge
47
Messages
311
Re : Réalisation d'une carte basée sur un PIC32MX
Bonsoir,
Pour tout ce qui est liaison DP vers RJ45 rien n'est vraiment critique, sauf si l'on veut garantir que tout ce passera bien dans un câble de 100m (voir plus). Pour les petites longueurs de câble et pour du 100Mbits ça marche presque tout le temps.
En revanche entre le DP et le pic il faut faire attention aux 5 signaux X1, RXD0, RXD1, TXD0 et TXD1 (les garder les plus courts possible, éviter trop de vias, et coller les résistances aux composants). Et surtout il faut que l'horloge 50MHz arrive en même temps sur le DP et le pic. Je pense qu'une tolérance de 1ns doit être acceptable et à ~7ns/m c'est à partir de ~10cm de différence que les choses doivent se gâter. Donc il ne faut pas trop dépasser 2cm de différence de longueur.
26/03/2012 - 09h54
sevenPap
Date d'inscription
mars 2012
Messages
8
Re : Réalisation d'une carte basée sur un PIC32MX
Bonjour,
Je trouve ce projet sur la famille des PIC32 très intéressant étant donné qu'il se pourrait que je les utilise dans mon projet sur la conception de calculateur central (automobile).J' avoue que je ne suis pas très familié avec les PIC32 mais j'essayerai d'apporter ma contribution comme il se doit
Bon courage
26/03/2012 - 20h03
schneiderj
Date d'inscription
octobre 2006
Localisation
Yvelines
Âge
53
Messages
558
Re : Réalisation d'une carte basée sur un PIC32MX
Bonsoir,
je viens de regarder dans le détail le routage du starter kit : les signaux TX ne sont pas du tout symétriques, et en plus les vias sont du coté 32MX. Que penses-tu de cela ?
L'extrait du couches avec élimination des infos non utiles ici :
Dans le post #24 je t'indiquais déjà que toutes les précautions n'étaient pas prise dans l'ESK.
En ce qui concerne les longueurs on ne voit qu'une couche et après les vias les longueurs s'équilibrent peut-être?
Pour les vias l'important est de ne pas les mettre au milieu d'une ligne (du coté du DP ou du PIC peu importe)
En tout cas, il ne faut pas trop s'inquiéter, ça marchera toujours! En revanche si tu as la possibilité de bien conserver les longueurs TXD0 et TXD1 égales, il faut le faire!
Pour la liaison RMII, il y a aussi une autre possibilité pour faciliter le routage c'est d'utiliser les broches "alternate" nommées ATXD0, ATXD1, ...
Dernière modification par jlcms ; 26/03/2012 à 22h03.
28/03/2012 - 07h06
schneiderj
Date d'inscription
octobre 2006
Localisation
Yvelines
Âge
53
Messages
558
Re : Réalisation d'une carte basée sur un PIC32MX
Merci pour ces précisions.
Une question du même type que la dernière : dans toutes ces documents, microchip précise qu'il faut placer les capacités directement sur les entrées VSS et VCC du microcontrolleur et je constate qu'ils ne le font pas systématiquement, plutôt jamais pour leur kit. Les capacité sont sur la face inférieur et lié au microcontrolleur par des vias.
Olimex dont j'ai plusieurs cartes place bien les capacités directement en liaison avec le PIC32, sans via sur le routage pour aller cherher VCC : les vias sont placées après la capacité. Par contre elles sont plus loin du microcontrolleur que dans le cas des kit de Microchip.
Donc ma question est : qu'elle est le meilleur compromis ? Avec via juste à côté (enfin dessous), plus loin sans via ?
Jean-Marie
28/03/2012 - 11h51
jlcms
Date d'inscription
octobre 2010
Localisation
Lyon
Âge
47
Messages
311
Re : Réalisation d'une carte basée sur un PIC32MX
Voici comment je procède pour les condos:
Je place en face de chaque broche +VDD un condo, si j'ai un VSS (GND) à coté je le route sur le condo.
après je mets un plan de masse, et une liaison entre tous les +VDD (plan de masse ou plutôt une piste)
Pour de TQFP je mets tout du même coté, pour des BGA je mets les condos dessous
Pour ce qui est des vias, est-ce que l'on peut les placer sous les pads, comme c'est le cas pour les brochages BGA ?
Jean-Marie
Dernière modification par schneiderj ; 29/03/2012 à 20h19.
29/03/2012 - 21h41
jlcms
Date d'inscription
octobre 2010
Localisation
Lyon
Âge
47
Messages
311
Re : Réalisation d'une carte basée sur un PIC32MX
Bonsoir,
Ça commence à s'organiser...
Pour les vias, peu importe. Ce qui compte surtout c'est la liaison entre le + du condo et la broche d'alim du PIC. Il faut que cette liaison soit la moins inductive possible donc la plus courte. C'est le cas sur le routage proposé et c'est bien. Comme ça lors des appels de courant du pic les charges électrique sont tout des suite dispo. On peut ensuit avoir une liaison plus longue entre le condo et le +3.3V.
Il y a cependant sur ce routage une petite incohérence. En effet les liaisons entre le DP et le RJ45 ne sont pas faites de manière différentielle (les paires ne sont pas "collées") alors que les pistes entre le PIC et le DP semblent être routées comme du différentiel. En fait c'est le contraire qu'il faudrait faire, à savoir, coller le TX+ avec le TX- (et le RX+ avec le RX-) entre le DP et le RJ45, et surtout écarter le ERXD0 du ERXD1 ( et le ETXD0 du ETXD1) entre le DP et le PIC.
Pour bien comprendre, sur une liaison différentielle (RX+/RX- ou TX+/TX- entre DP et RJ) c'est le même signal qui est transmis sur chaque brin de la paire (juste avec un sens opposé), il n'y a donc pas de diaphonie possible. Le fait de rapprocher le + du - permet d'annuler le champ magnétique produit et inversement d'être insensible aux perturbations électromagnétique.
En revanche dans le cas des liaisons parallèles, ERXD0 et ERXD1 ne porte pas le même signal et peuvent interférer entre eux. Il n'est donc pas souhaitable de les coller aux limites de l'isolation. Toutefois comme il s'agit d'une liaison synchrone avec une horloge c'est presque sans importance.
31/03/2012 - 07h59
schneiderj
Date d'inscription
octobre 2006
Localisation
Yvelines
Âge
53
Messages
558
Re : Réalisation d'une carte basée sur un PIC32MX
Pour ce qui est qui est du routage en différentiel entre ERXD0 et ERXD1, c'est exacte : je l'ai bien fait avec l'utilisation de cette propriété d'Eagle ! Je venais de lire les explications concernant l'utilisation de cette propriété "routage différentiel" et comme je ne maitrise pas les subtilités nécessaires pour faire un "bon montage" je me suis dit "pourquoi ne pas utiliser cette fonctionnalité pour router ces quatre pistes afin d'avoir une longueur presque identique".
Donc erreur qui doit être assez grossière ! Je vais donc rerouter ces huit pistes, afin d'avoir le circuit le plus correcte possible.
Et ce qui est superb, c'est que je vais le faire en meilleur connaissance de cause ! Donc merci pour ces explications.
Je pense que je ne vais pas finir ce routage avant 3 ou 4 semaines, mais il faut que j'avance sur la partir soft et que je puisse tester la partie RS232. A1fin de vérifier que la partie hard fonctionne, je vais faire faire un tirage de cette partie du circuit, avec l'ajout d'une mémoire de type flash. Je posterai une image de ce schéma ce soir.
Jean-Marie
03/04/2012 - 17h03
schneiderj
Date d'inscription
octobre 2006
Localisation
Yvelines
Âge
53
Messages
558
Re : Réalisation d'une carte basée sur un PIC32MX
Bonjour,
bon je n'ai pas répondu dans la soirée... le week end (long) est venu intercalée avec en prime pour le retour une gréve des contrôleurs aériens .
Bilan : arrivé à Charles de Gaulle à 1 heure 30 ce matin au lieu de 20 heures ! plus la deuxième fournée partie avec le CE qui arrivait une heure plus tard, mais pas moyen de leur trouver un bus pour le retour ! Nous les avons attendu... ils n'allaient tout de même finir la nuit à RCG !
Bref, une fin de week end gâchée.
J'ai tout de même profité de ces attentes pour mettre au propre ce dont je vous parlais : la partie I2C et RS232. Ce qui donne :
Toujours avec le même principe : le fichier pdf en lien avec l'image.
Avez-vous des commentaires par rapport à ce petit circuit : par rapport au plan de masse en particulier.
Et est-il utile d'avoir un deuxième plan de masse sur la partie supérieur ? ou un plan 5 volts ?
Ces deux questions ne concernent pas uniquement ce montage, mais se veulent plus générales !
Jean-Marie
NB : une dernière question. La société avec laquelle je travail propose les solution suivantes :
HASL -Hot Air Solder Leveling
Lead free HASL - Hot Air Solder Leveling with lead free solder
ENIG - Electrolytic Ni/Immersion Gold
OSP - Organic Solderability Preservatives
Immersion Tin
Immersion Silver
J'ai jusqu'à présent demandé un finition HASL, mais la surface qui n'est pas tout à fait plate ne facilite par la mise en place des composants. J'ai demandé (une seule fois) une finition immersion dans l'étain. C'est superb ! Mais cher...
Et vous quelle solution utilisez-vous ?
Dernière modification par schneiderj ; 03/04/2012 à 17h04.
09/04/2012 - 15h01
schneiderj
Date d'inscription
octobre 2006
Localisation
Yvelines
Âge
53
Messages
558
Re : Réalisation d'une carte basée sur un PIC32MX
Bonjour,
jlcms, je viens de rerouter la partie éthernet en tenant compte de tes dernières remarques :
Depuis cette date j'ai refais pas mal d'essai avec l'adaptateur pour TQFP 100, et cherché à comprendre pourquoi l'un de mes deux montages fonctionne au ralenti .
J'ai donc soudé, dessoudé et mis en place trois autres CI... sur les cinq, un seul fonctionne effectivement à 80 MHz ! Tous les autres sont à 8 MHz. Conclusion : quatre cartes sont passées sur l'oscillateur interne. J'ai donc supprimé le quartz et j'utilise cet oscillateur, mais la précision n'est pas au rendez-vous : environs 1% entre le montage le plus rapide et le plus lent.