Routage de paires différentielles dans une disposition de PCB avec Altium Designer

Zachariah Peterson
|  Créé: December 21, 2018  |  Mise à jour: Avril 5, 2024
Routage de paires différentielles dans Altium Designer

Si vous travaillez avec un dispositif à haute vitesse, vous aurez probablement besoin de router des paires différentielles entre les composants. De nombreux PCB à haute vitesse incluent des interfaces différentielles qui nécessitent des valeurs d'impédance en mode impair/différentiel spécifiques, et le concepteur de la disposition du PCB devra spécifier ces contraintes géométriques dans leur éditeur de PCB pour s'assurer que les traces ont les bonnes valeurs d'impédance.

La manière la plus rapide et la plus précise de faire cela est de fusionner le calcul d'impédance et la configuration des règles de conception en un seul flux de travail. Altium Designer vous aide à faire cela avec la fonctionnalité Layer Stack Manager, qui transmettra son résultat de calcul à l'éditeur de règles et de contraintes PCB. D'autres fonctionnalités telles que la limite de longueur de découplage, la limite de longueur totale de trace et les limites de déséquilibre de longueur/délai.

Définir des paires différentielles dans votre schéma

Lorsque vous avez besoin d'utiliser des paires différentielles dans votre dispositif, vous devrez définir quels réseaux utiliseront la signalisation différentielle pour interagir avec vos composants. Il ne suffit pas simplement de placer un réseau, un réseau doit être spécifiquement désigné comme faisant partie d'un signal différentiel. L'éditeur de schémas et de mise en page dans Altium Designer® inclut des fonctions de définition de réseaux, et vous pouvez définir des paires différentielles au sein d'un réseau de signal. Tout d'abord, vous devrez sélectionner certains composants qui communiqueront entre eux, les placer dans votre schéma, et définir quels ports utiliseront la signalisation différentielle.

Ici, nous avons trois objectifs :

  1. Définir les paires différentielles dans le schéma ;
  2. Configurer l'impédance et les règles de routage pour nos paires différentielles ;
  3. Commencer le routage de paires différentielles dans la mise en page du PCB.

Pour commencer, nous examinerons le schéma ci-dessous et définirons les paires différentielles dont nous avons besoin pour créer notre signal différentiel. Ce schéma contient un contrôleur USB/Ethernet LAN9514I-JZX de Microchip, un connecteur de bord et quelques connecteurs USB blindés. Ces composants peuvent être trouvés dans le Panneau de Recherche de Pièces du Fabricant au sein d'Altium Designer. Par souci de concision, nous ne regarderons que la "Partie A" de cette liste de broches, étiquetée avec le désignateur "U1A" sur le schéma. Certaines des sorties seront connectées au connecteur de bord de la carte, et d'autres réseaux seront routés vers les connecteurs USB.

A simple schematic for differential pair routing in Altium Designer

Contrôleur USB/Ethernet et certaines connexions dans Altium Designer

Notez que, dans ce schéma, j'ai défini les sorties USB comme des paires différentielles avec un symbole de directive spécial. vous pouvez spécifier quelles connexions sont des paires différentielles en cliquant sur le menu "Place". Mettez en surbrillance l'option "Directives" et sélectionnez "Paire Différentielle". Vous pourrez placer le symbole de directive sur les connexions que vous souhaitez fonctionner comme des paires différentielles. Sélectionnez simplement tous les réseaux qui feront partie d'une paire différentielle.

Ensuite, chaque moitié d'une paire différentielle est définie comme positive ou négative en utilisant le nom de son réseau. L'extrémité positive doit être nommée en utilisant “_P” à la fin de l'étiquette du réseau, et l'extrémité négative doit être nommée en utilisant “_N”. J'ai fait cela pour les lignes USB1-USB3 dans le schéma ci-dessus. Nous pouvons faire de même pour les lignes RX dans la partie inférieure gauche de U1A. Notez que normalement, celles-ci seraient connectées à un circuit de terminaison magnétique et Bob Smith avant d'être routées vers un connecteur RJ45, mais nous utiliserons juste la situation simple ci-dessus pour illustrer le routage de paire différentielle.

Quelles classes définir ?

Router vos paires différentielles avec succès nécessite la configuration de Classes de Paires Différentielles et de Classes de Réseaux. L'objectif ici est de regrouper plusieurs paires ensemble afin que les mêmes règles de conception puissent être appliquées à toutes les paires du groupe. Ce groupe est une Classe de Paire Différentielle, et vous appliquerez les exigences de géométrie et les exigences d'appariement de longueur dans l'éditeur de Règles de Conception.

Puisque nous devons définir une classe de paires différentielles, nous allons ajouter cela à chaque directive. J'ai défini des classes USB1 à USB 3 pour chacune des connexions montrées dans le schéma. Si vous double-cliquez sur le symbole de directive, vous pourrez définir des classes et des règles de conception pour une connexion dans une paire différentielle. Vous pouvez également cliquer avec le bouton droit sur le symbole de directive et cliquer sur « Propriétés ». Cela ouvrira une boîte de dialogue qui vous permet de spécifier une étiquette, des classes et des règles pour une paire différentielle. Ici, nous allons ajouter la « Classe de réseau de paires Diff. » à chaque paire et assigner un nom de classe pour ce réseau. Ceci est montré ci-dessous pour USB1_P.

Defining differential pair design rules and constraints in Altium Designer

Définition d'une classe de réseau de paires différentielles

Vous devrez également ajouter des règles de conception à cette directive. Cela peut être fait dans la boîte de dialogue montrée ci-dessus pour appliquer une règle de conception à un réseau individuel. Si vous souhaitez faire quelque chose comme l'ajustement de longueur pour une paire différentielle, ou pour un groupe de paires différentielles, il est préférable de le faire dans l'éditeur de PCB. Si vous créez une règle à partir de la boîte de dialogue ci-dessus, une nouvelle règle de conception sera créée qui s'applique uniquement à ce réseau. Puisque nous voulons appliquer l'appariement de longueur aux connexions individuelles de USB1 à USB3, nous pouvons simplement définir les Classes de Paires Différentielles montrées ci-dessus et attendre que le schéma soit capturé pour définir une règle de conception pour ces réseaux.

Router les Paires Différentielles dans Votre Mise en Page

Définir un Profil d'Impédance

Avant de capturer votre schématique et de commencer le routage, vous devez créer un nouveau PcbDoc qui inclut un profil d'impédance pour vos paires différentielles. Pour cet exemple simple, j'ai créé un PCB à 4 couches avec un profil d'impédance en mode simple (50 Ohm, nommé S50) et un profil d'impédance pour paire différentielle (90 Ohm, nommé D90). Le profil d'impédance pour paire différentielle sera utilisé pour les lignes USB car celles-ci doivent avoir une impédance différentielle définie. Vous pouvez faire cela via le Gestionnaire de Configuration des Couches dans l'Éditeur de PCB. Mon empilement et mon profil d'impédance sont montrés ci-dessous.

Notez que j'ai défini l'espacement entre les traces dans la paire différentielle à la valeur par défaut de 5 mil. Cependant, vous pourriez envisager de changer cela, lisez cet article pour obtenir des conseils sur le réglage de l'espacement de vos traces de paires différentielles.

Impedance profile in differential pair routing

Définir un profil d'impédance pour le routage de paires différentielles

Définir les Règles de Conception : Une Paire Individuelle

À ce stade, nous pouvons capturer le schéma sous forme de layout et router les paires différentielles que nous avons définies. J'ai défini des paires différentielles pour le reste des connexions entre le FPGA et le connecteur. Tout d'abord, ajoutez un nouveau PCB à votre projet et capturez votre schéma. Vous pouvez le faire en ouvrant votre PCB vide et en cliquant sur le menu « Design », suivi de « Import Changes From… ». Notez qu'une Room sera créée par défaut à moins que vous ne décochiez l'option dans le dialogue de l'Ordre de Changement d'Ingénierie.

Avant de router, nous devons définir des règles de conception pour les réseaux de paires différentielles dans notre schéma. Cela se fait en ouvrant le dialogue Design -> Rules dans l'éditeur PCB. Ici, nous devons définir les règles suivantes pour que ces réseaux soient conformes à la spécification USB :

  1. Tolérance de longueur : 2 mil (trouvée dans l'entrée High Speed -> Matched Lengths)
  2. Contraintes de routage de paires différentielles : définies par le profil d'impédance (trouvées dans l'entrée Routing -> Differential Pair Routing)

Lorsque vous définissez les règles de conception pour ces paires, vous pouvez créer une règle pour chaque réseau et sélectionner le profil d'impédance que vous souhaitez utiliser. Ceci est montré ci-dessous.

Defining differential pair rules in Altium Designer

Définition des règles de conception pour les réseaux individuels

Définition des règles de conception : Plusieurs paires

Comme nous travaillons avec plusieurs paires différentielles qui nécessitent toutes les mêmes règles de conception, une meilleure option est de créer une seule règle de conception qui s'applique à notre classe de paires différentielles. Pour vérifier et créer des classes, ouvrez le dialogue Conception -> Classes dans l'éditeur de PCB. Descendez jusqu'à l'entrée Classes de paires différentielles, faites un clic droit et créez une nouvelle classe. Tant que vous avez correctement défini vos paires différentielles dans le schéma, vous pouvez maintenant ajouter ces paires à votre nouvelle classe. Ceci est illustré dans l'image ci-dessous.

Classes in differential pair routing

Définition d'une classe pour un groupe de paires différentielles USB

Maintenant, vous pouvez aller à l'éditeur de règles de conception et sélectionner la classe de réseau que vous venez de créer pour la tolérance de longueur et les contraintes de routage, comme cela a été fait pour les réseaux individuels. Sous l'entrée "Où l'objet correspond" dans la fenêtre de règle de conception, sélectionnez la classe de paires différentielles que vous avez définie dans la fenêtre ci-dessus. La règle de conception s'appliquera désormais à tous les réseaux de la classe (USB1, USB2 et USB3). Cela appliquera le profil d'impédance que vous avez défini dans le gestionnaire de pile de couches tant que vous sélectionnez l'option dans la fenêtre de règle de conception.

Définition de règles de conception supplémentaires

Des règles de conception supplémentaires qui pourraient être nécessaires pour assurer une impédance constante et maintenir l'intégrité du signal incluent :

  • Longueur totale de routage : Cela est principalement lié à la perte d'insertion totale autorisée le long de la paire différentielle.
  • Longueur maximale de désaccord : Un désaccord de longueur impacte la conversion de mode, et les interfaces à large bande passante nécessiteront des limites sur la conversion de mode. Un désaccord de longueur est également nécessaire pour créer une marge pour le décalage le long du réseau.
  • Nombre maximal de vias sur le réseau : Chaque via a le potentiel de créer une perte de retour supplémentaire due à un désaccord d'impédance, il pourrait donc être souhaitable de limiter le nombre de vias.
  • Restriction des couches de routage : Les profils d'impédance différentielle sont définis pour toutes les couches de signal et seront appliqués sur n'importe quelle couche de signal. Si vous le souhaitez, vous pouvez restreindre votre routage de paire différentielle à des couches spécifiques.
  • Longueur maximale de stub : La longueur maximale de stub est plus importante dans les interfaces/canaux avec des bandes passantes multi-GHz.
  • Chemin de retour : L'écart autorisé par rapport aux réseaux GND voisins peut être défini et détecté pendant le routage.

La plupart de ces paramètres de règles peuvent être trouvés sous la section Haute Vitesse de l'éditeur de Règles de Conception et de Contraintes PCB.

Routage des Paires Différentielles dans l'Éditeur PCB

Il est maintenant temps d'importer les modifications du schématique et de commencer votre agencement de PCB. Nous avons beaucoup travaillé en amont pour définir les contraintes avant de créer l'agencement du PCB, mais désormais, les règles de conception que nous avons établies garantiront que les pistes routées auront l'impédance requise, l'espacement et les règles de correspondance de longueur alors que les paires sont routées. Une fois que vous avez arrangé les composants comme vous le souhaitez, sélectionnez l'option de Routage Différentiel Interactif en haut de la fenêtre de l'Éditeur de PCB.

L'image ci-dessous montre le composant avec lequel nous voulons travailler en cours de routage. Lorsque vous utilisez le routeur interactif, vous avez juste besoin de cliquer sur une extrémité du réseau, et les deux pistes seront routées en tandem au fur et à mesure que vous vous déplacez sur le circuit.

Mid differential pair routing in a PCB layout.

 

Bien qu'il ne soit pas idéal de laisser des obstacles tomber entre les pistes dans votre paire différentielle, le routeur peut automatiquement déplacer les pistes autour de l'obstacle pendant le routage. Pour illustrer, une résistance a été placée sur le chemin de routage comme montré ci-dessous. À mesure que les pistes approchent du composant, elles seront automatiquement déplacées autour du composant avec le dégagement le plus serré possible. Vous pouvez ensuite cliquer sur le côté éloigné du composant pour définir votre routage autour du composant, et vous pouvez continuer le routage vers la destination.

Notez que cela peut déclencher une erreur de règle de conception pour la longueur maximale non couplée, mais généralement l'évitement d'obstacle sera suivi ici alors que vous vous déplacez autour du composant.

Differential pair routing around an obstacle.

 

Pour les composants plus complexes, tels que les BGA à nombre élevé de billes ou un connecteur CMS avec un espacement de broches étroit, vous devrez utiliser une stratégie de fanout pour créer des connexions pour vos pistes. Des paramètres de routage supplémentaires dans ces composants peuvent être contrôlés en créant un objet Room autour du composant. Vous pouvez ensuite spécifier des contraintes, telles que les dégagements, à l'intérieur de cette région en utilisant la requête personnalisée "Within Room" lors de la définition des règles de conception. Cela vous permet de contrôler le rétrécissement entre les broches, les longueurs de découplage, les segments parallèles et les dégagements uniquement à l'intérieur de la région de la room, ce qui minimise les désadaptations d'impédance en regardant dans les brochages des composants.

Prochaines étapes : Ajustement de longueur et Intégrité du signal

L'image ci-dessous montre deux paires différentielles routées. C'est un processus rapide et facile grâce aux outils de routage interactif dans Altium Designer. À ce stade, vous pouvez appliquer un ajustement de longueur à chaque paire, ou à travers plusieurs paires. Jetez un œil à cet article pour voir comment appliquer l'ajustement de longueur aux paires différentielles.

Finished differential pair routing

Routage de paire différentielle terminé dans Altium Designer

Vous pourriez également utiliser le package xSignals pour examiner l'intégrité des signaux de ces réseaux, ou d'un groupe de réseaux. Examiner un groupe de réseaux nécessite de définir une classe xSignals depuis le dialogue Conception -> Classes, tout comme cela a été fait pour créer une Classe de Paires Différentielles. Cela vous permet d'examiner les bords montants et descendants des signaux, ainsi que tout dépassement/affaissement. D'autres règles de conception pour haute vitesse peuvent être appliquées à cette disposition de la même manière que cela a été fait pour la tolérance de longueur et l'impédance différentielle. Les règles de conception présentées ici sont la clé pour un routage rapide et facile des paires différentielles.

Altium Designer unifie les informations de votre conception avec vos outils de routage, assurant que votre prochain dispositif fonctionnera comme prévu. L'environnement intégré dans Altium Designer permet à tous vos outils de communiquer en utilisant le même moteur de conception basé sur les règles. Les meilleurs outils de schématique, CAO, simulation et routage sont exactement ce dont vous avez besoin pour créer les meilleurs PCBs.

Parlez aujourd'hui à un expert Altium Designer si vous souhaitez en savoir plus sur Altium Designer.

A propos de l'auteur

A propos de l'auteur

Zachariah Peterson possède une vaste expérience technique dans le milieu universitaire et industriel. Avant de travailler dans l'industrie des PCB, il a enseigné à la Portland State University. Il a dirigé son M.S. recherche sur les capteurs de gaz chimisorptifs et son doctorat en physique appliquée, recherche sur la théorie et la stabilité du laser aléatoire. Son expérience en recherche scientifique couvre des sujets tels que les lasers à nanoparticules, les dispositifs électroniques et optoélectroniques à semi-conducteurs, les systèmes environnementaux et l'analyse financière. Ses travaux ont été publiés dans diverses revues spécialisées et actes de conférences et il a écrit des centaines de blogs techniques sur la conception de PCB pour de nombreuses entreprises. Zachariah travaille avec d'autres sociétés de PCB fournissant des services de conception et de recherche. Il est membre de l'IEEE Photonics Society et de l'American Physical Society

Ressources associées

Documentation technique liée

Retournez à la Page d'Accueil
Thank you, you are now subscribed to updates.