Comment puis-je disposer des traces de PCB pour une «impédance différentielle» donnée

11

Il s'agit d'une tentative d'élaborer une bonne question générale et une réponse pour un sujet qui a été posé auparavant, mais uniquement dans des situations spécifiques.


Pourriez-vous décrire ce que je dois savoir avant de disposer d'une carte PCB pour une paire de signaux différentiels avec une "impédance différentielle" spécifiée?

Des paires différentielles sont utilisées pour divers bus série haute vitesse, notamment USB, MIPI, RS-422, RS-485, PCI Express, DisplayPort, LVDS, HDMI et plus encore.

Quelle est la définition de "l'impédance différentielle"? Sur une carte PCB, dois-je tordre ou alterner les fils, comme cela se fait pour les paires différentielles dans un câble? L'impédance de chaque tracé de longueur adaptée est-elle la moitié de "l'impédance différentielle", ou est-ce plus compliqué que cela? À quelle distance la correspondance de longueur doit-elle être, étant donné la fréquence maximale du signal?

Références pouvant être utiles:

Bryce
la source

Réponses:

22

J'essaierai d'y répondre brièvement, mais une excellente ressource pour ce type de question est le signal et l'intégrité du pouvoir d' Eric Bogatin - Simpified .

Vous avez énuméré et décrit plusieurs protocoles à très grande vitesse qui ont des débits de signal dans la plage de centaines de picosecondes. Cela signifie que même des traces de seulement quelques pouces peuvent être considérées comme électriquement longues et que ces canaux de transmission doivent être acheminés en tant que lignes de transmission .

En termes très, très brefs, la présentation d'une ligne de transmission avec une impédance connue à un pilote à grande vitesse (émetteur-récepteur série sur l'entrée / sortie d'un SerDes) permet la transmission de données traversant cette ligne sans reflets de signaux délétères qui peuvent interférer avec une communication réussie. Cela peut se manifester par une interférence intersymbole (ISI), une diaphonie, une gigue supplémentaire rendant une interface utilisateur (intervalle d'unité) inutilisable et de nombreux autres effets. Rappelons que certains de ces protocoles (comme PCIe) poussent au-delà de 8GT / s par rapport au cuivre conventionnel sur FR-4 à faible coût; pour ce faire, les concepteurs doivent faire tout leur possible pour fournir un canal de haute qualité pour la transmission de données.

Un protocole (ou spécification) donné répertorie généralement une impédance caractéristique souhaitée . Par exemple, Intel peut demander que les traces PCI Express pour leurs plates-formes Xeon soient acheminées sous forme de «paires différentielles de 100 ohms». Cela signifie qu'ils ont qualifié et conçu leurs émetteurs-récepteurs PCI Express pour s'attendre à une ligne de transmission d'impédance caractéristique de 100 ohms pour le transfert de données. USB nécessite généralement 90 ohms, RS-422 peut être de 120 ohms et Ethernet est de 100 ohms. Je ne vais pas entrer dans les structures de lignes de transmission asymétriques dans ce post, mais comme mentionné ci-dessous dans les commentaires, à un premier ordre approximatif, vous pouvez considérer chaque `` moitié '' des structures ci-dessous comme la moitié de l'impédance de la paire.

Maintenant, pour créer la structure de la ligne de transmission sur un PCB FR-4 conventionnel (afin de garder ces choses abordables!), Nous avons plusieurs options. Pour les traces différentielles, nous avons plusieurs options. Supposons que vos traces se trouvent sur la couche supérieure ou inférieure - la première option est une microruban à couplage de bord (l'image que j'ai est «enduite», où le masque de soudure est au-dessus. Techniquement , il y a un revêtement à couplage de bord et un couplage de bord surface pour les options de couche supérieure / inférieure - pour les travaux RF à très haute fréquence, même la présence de masque de soudure peut être un problème).

ECMS

En fonction de la distance au plan de retour en dessous, de l'espacement entre les deux lignes et de la largeur de chaque ligne, votre PCB fab peut vous fournir une structure qui présente l'impédance cible.

Maintenant, disons que vous êtes sur une couche intérieure. La structure utilisée ici est généralement un microruban intégré à couplage de bord :

EC EMS

Semblable au premier, celui-ci tient également compte de la distance au plan de référence le plus proche. De nombreux concepteurs préfèrent enfouir leurs paires à grande vitesse sur des couches internes pour bénéficier du blindage «gratuit» des avions en cuivre afin de réduire les émissions rayonnées. La stripline offset à couplage d'arête est utilisée lorsque vous avez une couche de signal prise en sandwich entre deux couches planes:

EC OS

Pour obtenir ces structures différentielles , vous contactez votre maison de fabrication de PCB et leur dites les impédances différentielles que vous recherchez - cela fait partie du processus de conception d' empilement de PCB . La maison de fabrication gère les matériaux réels qu'ils utilisent (qui ont des valeurs Er différentes) pour les noyaux et les matériaux pré-imprégnés, et vous reviennent avec un ensemble de géométries à suivre dans votre outil de conception, par exemple ( pas des nombres réels) "0,2 mm traces épaisses avec un espacement de 0,15 mm sur les couches 1 et 8 pour une impédance de 100 Ohms +/- 10% ". Vous entrez ensuite ces valeurs dans Altium, et il s'assurera intelligemment que lorsque vous routez des paires que vous avez appelées différentielles, elles suivent ces géométries.

De par leur conception, lorsque vous fabriquez votre PCB avec votre magasin et que vous leur envoyez l'empilement qui a été conçu, ces traces se traduiront par l'impédance caractéristique souhaitée. Vous devez demander un coupon d'impédance , qui est généralement un morceau de votre PCB de la partie externe du réseau où une structure en double de la ligne de transmission a été créée, et un TDR (réflectomètre de domaine temporel) est utilisé pour vous fournir le impédance construite. La tolérance typique est d'environ 10% .

L'adaptation en longueur n'affecte pas l'impédance différentielle et diffère d'un protocole à l'autre. Il existe une asymétrie intra-paire (P à N) et une asymétrie inter-paires / inter-voies (c'est-à-dire de PCIe Tx Lane 0 à 1), où cette dernière est généralement plus tolérante à l'inadéquation que la première. C'est quelque chose que vous analysez généralement vers la fin pour ajouter un routage sinueux ou serpentin pour que les membres de la paire répondent aux spécifications du fabricant. J'utilise un script qui transfère les longueurs nettes brutes vers Excel, puis une mise en forme conditionnelle pour me faire savoir comment je fais dans le respect des spécifications (expurgé quelque peu - il s'agit d'une carte avec un module qui a une mauvaise correspondance, et un PCB de transporteur qui ne correspond pas):

Correspondance de longueur

Et voici un exemple de configuration Altium pour des paires différentielles de 100 ohms en fonction des recommandations de mon fournisseur:

Routage différentiel 100R

Voici quelques autres conseils que j'ai choisis en cours de route et qui peuvent vous aider sans ordre particulier:

  • Étant donné une tolérance pour les erreurs de correspondance d'un fabricant, commencez par la diviser par deux si possible. Dans un cas comme PCI Express où vous avez un PCB hôte et un PCB porteur, cela (en quelque sorte) divise la tolérance entre les deux.
  • Lors de la fabrication d'une carte avec des impédances différentielles, utilisez des "codes D". Utilisez les centièmes ou les millièmes dans les largeurs de trace pour différencier les différentes impédances. Par exemple, si 0,20 mm a été appelé comme largeur pour 90 ohms et 100 ohms, je ferais 90 ohms 0,201 mm et 100 ohms 0,202 mm, et ajouter une note de fabrication expliquant ce que j'ai fait. L'ingénieur CAM peut alors facilement sélectionner les paires à l'aide de son logiciel et faire ce dont il a besoin.

Donc, avant de démarrer votre prochain projet PCB avec des protocoles / exigences qui impliquent un routage de trace différentiel:

  1. Identifiez toutes les différentes impédances à contrôler et les couches sur lesquelles elles se trouveront (c'est-à-dire quelles sont vos couches de signal).
  2. Contactez votre maison de fabrication avec les informations ci-dessus et travaillez avec eux pour définir un empilement pour votre projet et obtenir les géométries requises. Alternativement, comme indiqué dans les commentaires ci-dessous, avec le matériel approprié et d'autres informations, vos outils EDA pourraient être en mesure de vous fournir les géométries requises.
  3. Configurez votre outil de CAO avec les règles appropriées en fonction des chiffres de l'étape 2.
  4. Définissez les classes de filet pour les paires et éloignez-vous!
  5. Utilisez un script ou similaire pour générer un rapport qui montre les incompatibilités intra-paire / paire interne et si elles sont conformes aux spécifications ou non.
Krunal Desai
la source
De plus, il est possible de résoudre vous-même les géométries requises, mais je me suis toujours généralement appuyé sur ma maison fabuleuse parce que mes produits sont généralement à faible volume et collent à un, peut-être deux fournisseurs. Je ne sais pas non plus quelle partie de cette réponse a offensé quelqu'un - s'il y a quelque chose de factuellement incorrect, faites-le moi savoir.
Krunal Desai
Vous pourriez clairement indiquer que (à une première approximation) l'impédance de chaque ligne est la moitié de "l'impédance de paire". L'Altium, entre autres, peut résoudre la bonne largeur de ligne pour donner une impédance donnée.
Bryce
Je n'ai jamais eu de bons résultats avec la calculatrice d'Altium, mais j'ai ajouté que les outils EDA peuvent faire le calcul pour vous + une note sur l'impédance SE.
Krunal Desai
Notez qu'il est possible d'obtenir des coupons de test d'impédance «gratuits» (le fabricant de PCB vous les facturera). Sur une couche à impédance contrôlée (par exemple, avec 100 diff), trouvez une zone inutilisée et exécutez une paire différentielle et exposez à chaque extrémité à la surface avec des tampons de test. Sur n'importe quelle couche donnée, l'impédance de n'importe quelle paire sera très proche de l'impédance de n'importe quelle autre paire, donc cette paire factice est représentative des autres paires de cette couche. Obtenez votre TDR et mesurez loin.
Peter Smith
1
@Bryce, si l'impédance de la ligne individuelle est la moitié de l'impédance différentielle, cela dépend si la paire est "fortement couplée" ou "faiblement couplée". Lorsque les deux lignes sont éloignées l'une de l'autre (disons, plus de 3 ou 4 largeurs de trace), alors les lignes sont faiblement couplées et l'impédance de ligne individuelle est d'environ la moitié de l'impédance de paire. Si les deux lignes sont plus proches l'une de l'autre, alors elles sont fortement couplées et ce ne sera pas vrai.
The Photon
1

L'impédance différentielle est affectée par le couplage entre les deux côtés de la paire. Habituellement, les paires différentielles de PCB sont acheminées parallèlement côte à côte à un espace spécifique dans une configuration spécifique de couches de PCB. S'il n'y a pas de couplage entre les deux côtés (ils sont suffisamment éloignés), l'impédance différentielle est exactement le double de l'impédance caractéristique asymétrique de chaque côté. À mesure que les deux côtés se rapprochent, l'impédance différentielle s'écarte davantage de ce cas. Peut-être quelques idées de base dans mon blog: https://blog.zuken.com/routing-pcb-differential-pairs/

John Berrie
la source