Définir les exigences de conception à l’aide du Constraint Manager

Altium Training

Altium Essentials: Schematic Updating

This content is part of the official Altium Professional Training Program. For full courses, materials and certification, visit Altium Training.

En un coup d'œil

Cet article explique comment déterminer si votre projet PCB utilise le gestionnaire de contraintes (Constraint Manager), comment y accéder dans Altium Designer et comment l’utiliser pour définir et gérer les contraintes de conception dans une interface de type tableur. Il présente les différentes vues disponibles, notamment Clearances, Physical, Electrical et, lorsque vous y accédez depuis le PCB, All Rules. Il aborde également des aspects pratiques du flux de travail, comme le filtrage, la copie de valeurs, l’enregistrement des modifications, l’actualisation des données et l’utilisation de la matrice des distances d’isolement. Pour mieux comprendre comment définir des contraintes dans cet environnement et vous familiariser avec les principaux outils, poursuivez votre lecture : cet article vous aidera à prendre vos repères et à travailler avec davantage d’assurance.

- Vous apprendrez à vérifier si le gestionnaire de contraintes est disponible pour votre projet et à comprendre ce que cela implique si votre projet utilise encore l’ancienne méthode de gestion des règles.
- Vous découvrirez l’organisation du gestionnaire de contraintes, les types de contraintes que vous pouvez définir dans chaque vue et la façon d’y accéder depuis l’éditeur de schémas ou de PCB.
- Vous vous familiariserez avec les principales fonctions utiles au quotidien, notamment l’enregistrement et l’actualisation des modifications, l’affichage des valeurs par défaut et des valeurs personnalisées, ainsi que la définition des distances d’isolement dans la matrice.
Approfondissez avec l'IA :

Do I have the Constraint Manager?

  • Le gestionnaire de contraintes est disponible dans un projet de conception de PCB uniquement si l’option Constraint Management était activée dans la boîte de dialogue Create Project lors de la création du projet. Notez que :

    • Si le gestionnaire de contraintes était activé pour le projet PCB, la boîte de dialogue PCB Rule and Constraints Editor (Design » Rules) n’est not disponible dans l’éditeur PCB.

    • Si le gestionnaire de contraintes n’était not activé pour le projet PCB, seules les méthodes précédentes de définition des contraintes de conception (utilisation des directives de conception et de la PCB Rule and Constraints Editor boîte de dialogue) peuvent être utilisées.

    Lorsque l’option System.ConstraintManager est activée dans la boîte de dialogue Advanced Settings, l’option Constraint Management est activée par défaut dans la Create Project boîte de dialogue.

  • Pour vérifier rapidement quelle méthode de définition des contraintes de conception est utilisée dans le projet PCB actuel, vérifiez si la commande Design » Constraint Manager est disponible dans les menus principaux de l’éditeur de schémas ou de l’éditeur PCB lorsqu’un document de schéma ou de PCB du projet est ouvert. Si cette commande est présente, le gestionnaire de contraintes est utilisé pour ce projet. Sinon, la boîte de dialogue PCB Rule and Constraints Editor (Design » Rules dans l’éditeur PCB) est utilisée pour ce projet.

  • Si un projet PCB utilise l’ancien système de gestion des règles, vous pouvez effectuer une migration vers le gestionnaire de contraintes – en savoir plus.

  • Si le gestionnaire de contraintes était activé pour le projet PCB, il s’affiche en mode View Only lorsqu’il est ouvert par un utilisateur qui n’a pas accès à cette fonctionnalité. Dans ce cas, l’utilisateur peut consulter les contraintes définies, mais pas les modifier. Le message en haut du gestionnaire de contraintes vous indique lorsque celui-ci est en mode View Only ().

Le gestionnaire de contraintes est une interface utilisateur de type tableur, présentée sous forme de document, qui vous permet de consulter, de créer et de gérer les contraintes de conception utilisées pour vos PCB.

Voici quelques avantages du gestionnaire de contraintes, en particulier pour les conceptions complexes comportant de nombreux nets, classes, etc. :

  • Sa disponibilité au niveau du projet permet d’accéder à la gestion des contraintes de conception de manière similaire depuis les environnements de saisie de schémas et de conception de PCB.

  • Le passage d’une définition de la portée des règles fondée sur des requêtes à une correspondance selon le type d’objet auquel elles s’appliquent simplifie la création des règles de contrainte.

  • L’utilisation de jeux de contraintes accélère le processus de définition des contraintes.

  • La priorité des règles est déterminée automatiquement selon la hiérarchie naturelle des objets de conception.

  • L’utilisation d’une interface présentée sous forme de document plutôt que d’une boîte de dialogue permet aux éditeurs de schémas et de PCB, ainsi qu’à leurs fonctions associées, de rester actifs et accessibles.

Accéder au gestionnaire de contraintes

Pour accéder au gestionnaire de contraintes, sélectionnez la commande Design » Constraint Manager dans les menus principaux de l’éditeur de schémas ou de l’éditeur PCB.

La commande Constraint Manager ne figure pas dans le menu Design ? Vérifiez si le gestionnaire de contraintes est disponible – en savoir plus.

Accéder au gestionnaire de contraintes depuis l’éditeur de schémas
Accéder au gestionnaire de contraintes depuis l’éditeur de schémas

Accéder au gestionnaire de contraintes depuis l’éditeur PCB
Accéder au gestionnaire de contraintes depuis l’éditeur PCB

Les onglets de document du gestionnaire de contraintes correspondent à la manière dont vous y avez accédé, comme le montre l’image suivante.

Types de contraintes

Les boutons en haut à gauche du gestionnaire de contraintes vous permettent de passer d’une vue à l’autre pour définir différents types de contraintes.

Clearances – une matrice permettant de définir les distances d’isolement électrique entre les classes de nets et/ou de paires différentielles.

Physical – une liste de nets, de paires différentielles, de xNets et de leurs classes, dans laquelle vous pouvez définir les contraintes physiques de la conception : largeurs des conducteurs, espacement au sein des paires différentielles, etc. Lorsque vous accédez au gestionnaire de contraintes depuis le PCB, les rooms actuellement définies dans le document PCB sont répertoriées ici, et vous pouvez définir leurs contraintes physiques.

Electrical – une liste de nets, de xNets et de classes de nets et de xNets, dans laquelle vous pouvez définir les contraintes électriques de la conception : topologie, impédance, etc. Les paires différentielles et les xSignals sont également répertoriés dans leurs onglets dédiés.

 

Lorsque vous accédez au gestionnaire de contraintes depuis l’éditeur PCB, une vue All Rules supplémentaire est disponible. Cette vue des contraintes de conception est organisée par règles et présente la liste de toutes les règles de la conception PCB. Vous pouvez y créer des règles personnalisées à partir de requêtes – en savoir plus.

Remarques sur l’utilisation du gestionnaire de contraintes :

  • Utilisez l’option Units du panneau Properties (ou les options correspondantes du sous-menu Tools » Measurement Units dans les menus principaux ; raccourci : Ctrl+Q) pour changer les unités de mesure (mm ou mils) dans lesquelles les valeurs sont affichées dans la grille du gestionnaire de contraintes.

  • Utilisez l’option Show Default Values du panneau Properties (ou l’option correspondante du menu principal View ou du sous-menu View Options du menu contextuel de la grille) pour afficher ou masquer les valeurs par défaut (par exemple, les valeurs héritées d’une classe de nets ou d’une paire différentielle) dans le gestionnaire de contraintes. Lorsqu’elles sont visibles, ces valeurs par défaut sont affichées en gris dans la grille du gestionnaire de contraintes. Les valeurs personnalisées sont affichées en blanc dans cette grille.

  • Dans la vue Physical ou Electrical, utilisez l’option Show Only Object Custom Values du panneau Properties (ou l’option correspondante du menu principal View ou du sous-menu View Options du menu contextuel de la grille) pour afficher ou masquer les entrées d’objets comportant des valeurs par défaut (c’est-à-dire pour exclure ces entrées de l’affichage lorsque l’option est activée).

  • Le copier-coller de valeurs depuis et vers les cellules est pris en charge – utilisez les commandes du sous-menu Copy/Paste Values du menu contextuel ou les raccourcis Ctrl+C et Ctrl+V.

  • Utilisez le champ Search en haut à droite du gestionnaire de contraintes pour filtrer la liste des objets en saisissant une chaîne de recherche. Cliquez sur l’icône  à droite de la barre Search pour effacer la chaîne de recherche actuellement définie.

  • Utilisez le champ Comment en bas du gestionnaire de contraintes lorsqu’une cellule correspondant à une contrainte/règle est sélectionnée pour ajouter un commentaire à cette contrainte/règle, par exemple, une description pertinente de son utilisation (). Lorsque la partie inférieure du gestionnaire de contraintes permet de définir des contraintes pour différentes règles, vous pouvez définir un commentaire propre à chacune d’elles en changeant la règle active à l’aide de la liste déroulante Rule ().

  • Un enregistrement doit être effectué dans le gestionnaire de contraintes pour que les modifications soient répercutées dans la conception. Pour cela, utilisez la commande File » Save (lorsque le gestionnaire de contraintes est ouvert depuis le schéma) ou File » Save to PCB (lorsqu’il est ouvert depuis le PCB) dans les menus principaux du gestionnaire de contraintes, ou le raccourci Ctrl+S.

  • Lors du premier enregistrement dans le gestionnaire de contraintes ouvert depuis le schéma, le document de contraintes du schéma (Constraints.xml) est ajouté au projet et devient accessible dans le panneau Projects (dans le sous-dossier Settings/Constraints – ). De plus, les données de contraintes du document sont rechargées/actualisées après la mise à jour du projet depuis l’espace de travail connecté.

  • Si des modifications sont apportées au schéma ou à l’empilage des couches du PCB (modifications touchant les couches et/ou les profils d’impédance), cliquez sur le bouton  en haut du gestionnaire de contraintes (ouvert depuis l’éditeur correspondant) pour y répercuter ces modifications. Ce bouton permet également d’importer des directives des schémas dans le gestionnaire de contraintes – en savoir plus. Si certaines modifications du gestionnaire de contraintes n’ont pas encore été enregistrées, une boîte de dialogue vous avertit qu’elles seront perdues et vous demande confirmation.

    Si le profil d’impédance est modifié dans le gestionnaire d’empilage des couches, un clic sur dans le gestionnaire de contraintes ne met à jour que la valeur Preferred Width de la règle correspondante, et non ses valeurs Min Width et Max Width (le cas échéant). Une définition de contrainte incorrecte est signalée par l’affichage en rouge des valeurs de largeur dans la grille supérieure de la vue Physical. Vous devez vérifier ces valeurs et les mettre à jour/ajuster si nécessaire. Un enregistrement doit également être effectué dans le gestionnaire de contraintes pour que ces modifications soient répercutées dans la conception et disponibles pour le routage.

  • Les options globales suivantes sont disponibles dans la zone Clearances Settings du panneau Properties , depuis les vues Clearances et Physical , lorsque le gestionnaire de contraintes est ouvert depuis le schéma ou le PCB :

    • Ignore Pad to Pad clearances within a footprint – utilisez cette option pour appliquer le paramètre à toutes les règles d’espacement définies. Cette option vous permet de spécifier si les espacements entre les pastilles d’une même empreinte de composant doivent être ignorés.

    • Apply zero Keepout clearance – lorsque cette option est activée, une règle d’espacement par défaut est appliquée, avec un écart de « 0 », entre une zone d’exclusion et toutes les autres primitives de la conception. Notez que cette règle n’est visible dans aucune des vues du gestionnaire de contraintes et ne peut donc pas être modifiée. Si est désactivée, les valeurs habituelles de la matrice d’espacement sont respectées.

  • Vous pouvez rapidement annuler ou rétablir les modifications effectuées dans le gestionnaire de contraintes à l’aide de  en haut à gauche de l’espace de conception ou de Edit » Undo/Redo dans les menus principaux. Cette fonction est disponible dans la plupart des zones, notamment les règles, les périmètres d’application et les ensembles de contraintes. Comme dans les autres parties du logiciel, les icônes/commandes ne sont disponibles que si une action (pour annuler) ou une annulation (pour rétablir) a été effectuée.

Utilisation de la matrice d’espacement

Par défaut, la matrice d’espacement de la vue Clearances du gestionnaire de contraintes comprend une seule entrée All Net Classes à All Net Classes, qui permet de définir une valeur d’espacement par défaut entre tous les nets de la conception. Utilisez la commande Add en haut à gauche de la matrice (ou faites un clic droit sur une cellule de la matrice d’espacement et utilisez la commande Add du menu contextuel) pour afficher une fenêtre contextuelle contenant la liste des classes de nets et de paires différentielles actuellement définies. Sélectionnez une ou plusieurs classes souhaitées (vous pouvez sélectionner plusieurs entrées de classe à l’aide de la méthode Shift+Click ou Ctrl+Click), puis cliquez sur le bouton Add. Une ligne et une colonne seront ajoutées à la matrice pour chaque classe sélectionnée.

Cliquez sur une cellule à l’intersection de la ligne et de la colonne de deux classes pour la sélectionner et afficher les paramètres d’espacement détaillés dans la partie inférieure du gestionnaire de contraintes. Vous pouvez y définir des valeurs d’espacement spécifiques entre différents objets et sur différentes couches.

Utilisez le champ Clearance dans la partie inférieure pour saisir la valeur souhaitée, qui sera appliquée à toutes les paires d’objets et à toutes les couches pour cette paire de classes. Vous pouvez également double-cliquer sur une cellule de la matrice dans la partie supérieure pour saisir directement la valeur souhaitée.

Saisissez les valeurs d’espacement souhaitées pour des paires d’objets spécifiques dans le tableau. Notez que la cellule de la matrice d’espacement affiche la plage des valeurs minimales et maximales définies dans le tableau.

  • La modification simultanée des cellules d’une ligne/colonne sélectionnée est possible dans les paramètres d’espacement détaillés. Cliquez sur l’en-tête d’une ligne ou d’une colonne pour la sélectionner, saisissez la valeur souhaitée, puis appuyez sur Enter ou cliquez pour appliquer cette valeur à toutes les cellules de la ligne/colonne.

  • Notez que si vous modifiez une valeur d’espacement entre piste et primitive, le même espacement sera appliqué entre texte et primitive.

Remarques sur l’utilisation de la vue Clearances :

  • La saisie d’une valeur dans une cellule de la matrice d’espacement ou dans le champ Clearance applique automatiquement cette valeur à tous les champs de la grille située dans la partie inférieure du gestionnaire de contraintes lorsqu’une cellule de la matrice d’espacement est sélectionnée. Vous ne devez modifier les valeurs dans cette grille que si vous souhaitez définir un espacement en fonction du type d’objet.

  • Dans les paramètres d’espacement détaillés de la partie inférieure du gestionnaire de contraintes, vous pouvez également activer la contrainte Creepage pour les classes sélectionnées et définir la valeur de la ligne de fuite (). Cette contrainte vérifie la distance de fuite entre les signaux ciblés à la surface de la carte, en tenant compte des trous non métallisés, des découpes et du contour de la carte.

  • Dans les paramètres d’espacement détaillés de la partie inférieure du gestionnaire de contraintes, vous pouvez également activer la contrainte Z-Axis Clearance pour les classes sélectionnées et définir la valeur d’espacement selon l’axe Z (). Cette contrainte sert à vérifier les espacements minimaux entre les primitives situées sur différentes couches de cuivre.

    Cette fonctionnalité est en bêta ouverte et est disponible lorsque l’option PCB.Rules.ZAxisClearanceRule est activée dans la boîte de dialogue Paramètres avancés.

  • Pour rétablir la valeur d'espacement par défaut d'une paire d'objets spécifique (par exemple, une paire Track à Track), c'est-à-dire la valeur définie pour l'entrée All Net Classes à All Net Classes, sélectionnez sa cellule dans le tableau inférieur et appuyez sur la touche Delete, ou faites un clic droit sur la cellule et sélectionnez la commande Reset to Default dans le menu contextuel.

  • Pour rétablir les valeurs d'espacement par défaut de toutes les paires d'objets d'une entrée spécifique de la matrice d'espacement (par exemple, une entrée associant une classe de nets à une autre classe de nets), faites un clic droit sur la cellule correspondante dans la matrice d'espacement et sélectionnez la commande Remove Rule dans le menu contextuel.

  • Pour supprimer une classe de la matrice d'espacement, faites un clic droit sur une cellule de la ligne correspondant à cette classe dans la matrice d'espacement et sélectionnez la commande Remove Scope dans le menu contextuel.

Lorsqu'un espacement entre classes est défini dans le gestionnaire de contraintes, vous pouvez examiner les classes de nets pertinentes des objets dans l'espace de conception du document PCB à l'aide de la boîte de dialogue Applicable Binary Rules. Pour accéder à cette boîte de dialogue dans l'éditeur PCB, faites un clic droit dans l'espace de conception, sélectionnez Applicable Binary Rules dans le menu contextuel, puis cliquez sur deux objets de la conception. L'entrée Clearance Constraint de la boîte de dialogue affiche les classes de nets pertinentes de l'objet pour lesquelles des règles d'espacement ont été définies dans le gestionnaire de contraintes ().

Configuration des espacements par couche

Les onglets situés sous le tableau vous permettent également de définir des valeurs d'espacement par couche. Utilisez la commande Add pour ajouter un onglet pour une couche spécifique.

  • Notez que lorsque vous accédez au gestionnaire de contraintes depuis l'éditeur de schémas, seules les couches supérieure et inférieure peuvent être ajoutées comme couches spécifiques. Lorsque vous accédez au gestionnaire de contraintes depuis l'éditeur PCB, vous pouvez ajouter toute couche de signal actuellement présente dans la conception PCB.

  • Pour définir rapidement les valeurs des couches internes et externes, vous pouvez également saisir deux valeurs séparées par une barre oblique (par exemple, 5/6) dans une cellule de la matrice d'espacement située en haut. La première valeur sera appliquée aux couches internes, et la seconde aux couches externes.

  • Les contraintes appliquées à des couches ou à des groupes de couches plus spécifiques ont une priorité plus élevée. Ainsi, une valeur appliquée à une paire d'objets sur une couche spécifique (par exemple, Top Layer ou Bottom Layer) est prioritaire sur une valeur appliquée à la même paire d'objets dans le groupe correspondant (Inner Layers ou Outer Layers), et une valeur appliquée à une paire d'objets dans le groupe Inner Layers ou Outer Layers est prioritaire sur une valeur appliquée à la même paire d'objets dans le groupe All Layers.

Filtrage des classes

Pour faciliter votre travail avec un grand nombre de classes dans la vue Clearances, vous pouvez utiliser la fonction de filtrage/regroupement. Celle-ci permet de créer des filtres (ou des regroupements) de classes afin de basculer entre des sous-ensembles ciblés de la matrice d'espacement et de travailler sur ceux-ci.

Utilisez le bouton  en haut à droite de la vue Clearances pour accéder à une fenêtre contextuelle dans laquelle vous pouvez créer, modifier, supprimer et activer/désactiver des filtres.

Pour créer un nouveau filtre, cliquez sur le bouton , puis sur le bouton  dans la fenêtre contextuelle qui s'affiche.

Définissez un nom unique pour le nouveau filtre et activez le groupe de classes souhaité. Utilisez le champ Search pour filtrer la liste selon la chaîne de recherche saisie et la commande Reset pour désactiver rapidement toutes les entrées activées dans la liste. Une fois les classes souhaitées sélectionnées, cliquez sur .

Une fois le filtre créé, utilisez les commandes disponibles dans la fenêtre contextuelle pour l'activer, le désactiver, le modifier ou le supprimer selon vos besoins. Utilisez la commande Clear All pour désactiver rapidement tous les filtres activés. Notez que lorsqu'au moins un filtre est activé, le bouton en haut à droite s'affiche sous la forme .

 

Utilisation des contraintes physiques et électriques

Dans la vue Physical ou Electrical du gestionnaire de contraintes, cliquez sur une cellule de la grille pour afficher les paramètres des règles correspondantes dans la partie inférieure du gestionnaire de contraintes, où vous pouvez définir leurs valeurs de contrainte.

 

Les contraintes suivantes peuvent être configurées dans la vue Physical : 

  • Width – cette contrainte spécifie la largeur des pistes placées sur les couches de signal.

  • Diff Pair Gap – cette contrainte spécifie l'espacement (ou l'écart) entre les nets des paires différentielles ciblées.

  • Clearance – cette contrainte spécifie l'espacement minimal autorisé entre les objets des nets ciblés et les objets des autres nets de la conception.

  • Via Style – cette contrainte spécifie le type de vias pouvant être utilisés lors du routage. Vous pouvez définir des valeurs minimales, maximales et préférées spécifiques pour le diamètre du via et celui de son trou (Min/Max Preferred) ou, lorsque vous accédez au gestionnaire de contraintes depuis le PCB ou configurez des contraintes pour un empilage de couches spécifique (en savoir plus), utiliser les modèles disponibles pour la conception de la carte (Templates).

  • Polygon Connect – cette contrainte spécifie le type de connexion entre une pastille de composant ou un via routé et un remplissage polygonal.

    Utilisez la commande Advanced pour basculer entre le mode simple, qui permet de définir un type de connexion générique applicable à toutes les pastilles et à tous les vias, et le mode avancé, qui permet de spécifier différents types de connexion pour chaque entité à connecter (pastilles traversantes, pastilles CMS et vias).

    Pour plus d'informations sur les valeurs de contrainte, consultez la page Types de règles de plan.

  • Same Net Clearance – cette contrainte spécifie l'espacement minimal autorisé entre deux objets primitifs appartenant au même net (par exemple, entre un via et une pastille du même net, ou entre deux segments de piste du même net).

  • Routing Neck Down – cette contrainte spécifie la longueur maximale autorisée des tracés continus dont la largeur est comprise entre les valeurs Min Width et Preferred Width définies par la contrainte de largeur applicable.

Les contraintes suivantes peuvent être configurées dans la vue Electrical :

  • L'onglet Nets :

    • Topology – cette contrainte spécifie la topologie à utiliser lors du routage des nets sur la carte. La topologie d'un net correspond à l'agencement ou au schéma des connexions entre broches.

      Pour plus d'informations sur les valeurs de contrainte, consultez la page Types de règles de routage.

      Une topologie personnalisée peut être utilisée pour définir des xSignals. Pour plus d'informations, consultez Définition des xSignals ci-dessous.

    • Impedance – cette contrainte spécifie l’impédance minimale et maximale autorisée pour les nets.

    • All Layer Sets – cette contrainte spécifie les couches autorisées pour le routage.

    • Maximum Via Count – cette contrainte spécifie le nombre maximal de vias autorisé.

    • Min / Max Total Length – cette contrainte spécifie les longueurs minimale et maximale d’un net.

    • Max Stub Length – cette contrainte spécifie la longueur maximale admissible d’un tronçon résiduel pour un net avec une topologie en chaîne.

    • Max Via Stub Length – un tronçon résiduel est la portion du fût d’un via ou d’une pastille qui dépasse la dernière couche de signal utilisée à laquelle le via ou la pastille est connecté. Un contre-perçage sera appliqué aux vias et pastilles appropriés des nets ciblés, conformément aux cases à cocher Layer activées pour les faces de la carte et aux paires de contre-perçage définies dans l’onglet Back Drills du Layer Stack Manager.

      Pour plus d’informations sur les valeurs des contraintes, consultez la page Types de règles haute vitesse.

      Pour plus d’informations sur le contre-perçage, consultez la page Perçage à profondeur contrôlée (contre-perçage).

  • L’onglet Diff Pairs :

    • Impedance – cette contrainte spécifie l’impédance minimale et maximale autorisée pour les nets.

    • Gap – cette contrainte spécifie l’espacement entre les nets des paires différentielles ciblées.

    • Width – cette contrainte spécifie la largeur de piste autorisée pour le routage de la paire différentielle.

    • Max Uncoupled Length – cette contrainte spécifie la longueur maximale admissible des portions non couplées entre les nets positif et négatif de la paire différentielle.

    • Tolerance – cette contrainte spécifie une tolérance de longueur par rapport au net le plus long de la paire différentielle.

    • Dynamic Phase Tolerance – cette contrainte spécifie le décalage de phase admissible entre les pistes d’une paire différentielle, au-delà duquel une compensation est nécessaire.

    • Matching Distance – cette contrainte spécifie la distance au-delà du dépassement de la tolérance sur laquelle la compensation doit être appliquée.

  • L’onglet xSignals :

    • Tolerance – cette contrainte spécifie une tolérance de longueur lors de la comparaison de chaque xSignal de la classe de xSignals avec le xSignal sélectionné comme Matching Target pour la classe.

Remarques sur l’utilisation des vues Physical ou Electrical :

  • Le gestionnaire de contraintes définit automatiquement la priorité des règles dans ces vues : elle va de All (la plus basse) à la classe d’objets, puis à l’objet (la plus élevée).

  • Pour supprimer les valeurs de contrainte personnalisées définies par une règle particulière (c’est-à-dire rétablir les valeurs par défaut de cette règle), faites un clic droit sur la cellule correspondante dans la grille et sélectionnez la commande Remove rule dans le menu contextuel.

  • Pour supprimer les valeurs de contrainte personnalisées de toutes les règles d’un objet, faites un clic droit sur une cellule de la ligne de cet objet dans la grille et sélectionnez la commande Remove rules from scope dans le menu contextuel.

  • Tous les nœuds, sauf ceux prédéfinis (par exemple, All Nets), sont repliés par défaut dans les vues Physical et Electrical . Vous pouvez utiliser les commandes Expand All et Collapse All du menu contextuel pour gérer les nœuds de la grille.

  • Lorsqu’une valeur est saisie dans la grille supérieure de la vue Physical pour un seul net ou xNet (Min Width ou Preferred Width), une paire différentielle (Min Width, Preferred Width ou Preferred Diff Pair Gap) ou une classe de nets, de xNets ou de paires différentielles, cette valeur est propagée aux champs de largeur (Min Width/Preferred Width/Max Width) ou d’espacement (Min Gap/Preferred Gap/Max Gap) correspondants dans les régions de contraintes situées en dessous. Notez qu’une valeur saisie n’est propagée aux autres champs que si aucune règle spécifique n’est définie pour l’objet.

  • Lors de la définition des valeurs minimale, maximale et préférée pour les largeurs de routage et les espacements des paires différentielles dans la vue Physical, le tableau Values by Layer au bas de la vue signale les saisies non valides en rouge. Cela peut se produire, par exemple, lorsque vous spécifiez une valeur de contrainte minimale supérieure à la valeur maximale. La définition incorrecte de la contrainte est également signalée par l’affichage en rouge des valeurs de largeur ou d’espacement dans la grille supérieure de la vue.

Configuration des valeurs de contrainte par couche

Lorsque vous accédez au gestionnaire de contraintes depuis le schéma, vous pouvez configurer les contraintes de largeur et de routage des paires différentielles pour les couches d’un empilage sélectionné.

Dans la liste déroulante en haut du gestionnaire de contraintes, sélectionnez l’entrée correspondant à un document PCB du projet de conception. Si le PCB sélectionné comporte plusieurs empilages de couches, vous pouvez choisir celui pour lequel les contraintes doivent être configurées à l’aide des onglets situés dans la partie inférieure du gestionnaire de contraintes, lorsque la règle correspondante est sélectionnée. Vous pouvez également utiliser un profil d’impédance de votre choix, s’il en existe un dans l’empilage de couches du PCB sélectionné.

Définition des paires différentielles

Les paires différentielles sont créées depuis la vue Physical ou depuis l’onglet Diff Pairs de la vue Electrical du gestionnaire de contraintes. Pour que le gestionnaire de contraintes puisse créer des paires différentielles à partir de nets, les nets à associer doivent suivre une convention de nommage cohérente (c’est-à-dire présenter une racine commune suivie d’un suffixe positif ou négatif cohérent, par exemple, TX0_P et TX0_N).

Faites un clic droit n’importe où dans la grille de la vue Physical ou de l’onglet Diff Pairs de la vue Electrical, puis sélectionnez la commande Differential Pairs » Create Differential Pairs From Nets dans le menu contextuel pour ouvrir la boîte de dialogue Create Differential Pairs From Nets et définir les options de création des paires différentielles. Les filtres en haut de la boîte de dialogue permettent de cibler rapidement ces nets selon la classe à laquelle ils appartiennent et le critère utilisé pour distinguer les nets positif et négatif d’une paire prévue, par exemple, _P et _N. Vous pouvez également définir un préfixe à ajouter aux objets de paire différentielle créés et déterminer à quelle classe de paires différentielles ils seront ajoutés.

Pour chaque objet de paire différentielle, la boîte de dialogue répertorie les nets positif et négatif qui le composent. Par défaut, tous les objets de paire différentielle potentiels sont sélectionnés pour la création ; vous pouvez en exclure certains en décochant la case Create correspondante. 

Une fois toutes les options configurées comme souhaité, cliquez sur le bouton  – les objets de paire différentielle seront créés et affichés dans la vue Physical du gestionnaire de contraintes, avec les nets qui les composent répertoriés sous leurs entrées.

Les paires différentielles peuvent également être créées à partir de xNets. Utilisez la liste déroulante en haut de la boîte de dialogue Create Differential Pairs From Nets pour sélectionner All xNets ou une classe de xNets particulière. Une fois les autres options de la boîte de dialogue configurées comme souhaité, cliquez sur le bouton  pour créer les paires différentielles correspondantes.

Notez que la notion de paire différentielle xNet n’existe que dans le gestionnaire de contraintes. Lors de son enregistrement dans le PCB, elle est « décomposée » en paires différentielles classiques (pour toutes les paires de nets contenues dans les xNets, avec toutes les règles répliquées entre elles). Lorsque vous accédez de nouveau au gestionnaire de contraintes, les paires différentielles constitutives (classiques) sont regroupées, si possible, en une paire différentielle xNet. Notez également que les paires différentielles xNet sont décomposées et regroupées lors de l’importation à partir de directives de schéma et des opérations de synchronisation des documents. Dans ce dernier cas, l’objet ECO Constraint Manager Data sert à transmettre les définitions des paires différentielles xNet et facilite ainsi le regroupement des paires différentielles en paires différentielles xNet.

Pour supprimer une paire différentielle, cliquez avec le bouton droit sur son entrée et sélectionnez la commande Differential Pairs » Remove Differential Pair dans le menu contextuel. Vous pouvez également supprimer plusieurs paires différentielles en sélectionnant leurs entrées à l’aide de la technique Ctrl+Click, Shift+Click ou Click, Hold&Drag, puis en cliquant avec le bouton droit sur la sélection et en choisissant la commande Differential Pairs » Remove Differential Pair dans le menu contextuel.

L’onglet Diff Pairs de la vue Electrical permet également de gérer explicitement les paires différentielles. Cet onglet affiche une liste hiérarchique des paires différentielles de la conception. Sélectionnez une cellule correspondant à une paire différentielle ou à une classe de paires différentielles pour afficher ses contraintes dans la partie inférieure du gestionnaire de contraintes.

Définition des xNets

Un chemin reliant un composant source à un composant de destination et passant par un ou plusieurs composants en série peut être défini comme un xNet.

Des listes de préfixes de désignateurs, séparés par des virgules, pour les composants pouvant servir de source ou de destination (Sources/Destinations) et les composants en série (Discretes) peuvent être définies dans la zone xNets Creation de l’onglet Options de la boîte de dialogue Options du projet.

La zone xNets Creation de l’onglet Options de la boîte de dialogue Project Options
La zone xNets Creation de l’onglet Options de la boîte de dialogue Project Options

Exemple de chemin pouvant être défini comme un xNet dans le gestionnaire de contraintes (selon les paramètres de création des xNets présentés ci-dessus)
Exemple de chemin pouvant être défini comme un xNet dans le gestionnaire de contraintes (selon les paramètres de création des xNets présentés ci-dessus)

Dans la vue Physical ou Electrical du gestionnaire de contraintes (accessible depuis un schéma ou un PCB), cliquez avec le bouton droit sur un net à inclure dans un nouveau xNet et sélectionnez la commande xNets » Create xNets From Selected Nets dans le menu contextuel. Un nouveau xNet est créé et affiché dans les vues Physical ou Electrical du gestionnaire de contraintes, avec ses nets constitutifs répertoriés sous son entrée.

La génération des xNets prend également en charge les composants en série comportant plus de deux broches. Les composants en série suivants sont pris en charge :

  • Dual-inline component with an even number of pins – les xNets peuvent être générés à partir des nets connectés à la première et à la dernière broche du composant, puis à la deuxième et à l’avant-dernière broche, etc. ()

  • Single-inline component with an even number of pins – les xNets peuvent être générés à partir des nets connectés à la première et à la deuxième broche du composant, puis à la troisième et à la quatrième broche, etc. () Notez que le composant doit inclure un paramètre nommé PinPairsConfiguration ayant pour valeur SIP; sinon, les xNets sont générés comme dans le cas du composant à deux rangées de broches.

  • Component with an odd number of pins – un xNet est généré à partir des nets connectés à toutes les broches du composant. ()

Pour supprimer un xNet, cliquez avec le bouton droit sur son entrée et sélectionnez la commande xNets » Remove xNet dans le menu contextuel. Vous pouvez également supprimer plusieurs xNets en sélectionnant leurs entrées à l’aide de la technique Ctrl+Click, Shift+Click ou Click, Hold&Drag, puis en cliquant avec le bouton droit sur la sélection et en choisissant la commande xNets » Remove xNet dans le menu contextuel.

Définition des xSignals

Depuis le gestionnaire de contraintes, vous pouvez également définir des xSignals – des chemins de signal définis par l’utilisateur entre deux nœuds du PCB. Dans la vue Electrical du gestionnaire de contraintes, sélectionnez la cellule de la colonne Topology correspondant à un net ou à un xNet, choisissez Custom dans la liste déroulante située dans la partie inférieure du gestionnaire de contraintes, puis utilisez les commandes disponibles pour définir la topologie personnalisée et sélectionner les xSignals correspondants.

Un exemple de définition de xSignals pour un xNet présenté ci-dessous est décrit et illustré ensuite.

Exemple de xNet pour lequel des xSignals doivent être créés.
Exemple de xNet pour lequel des xSignals doivent être créés.

Vous pouvez définir une topologie personnalisée à l’aide du graphe de topologie situé dans la partie inférieure du gestionnaire de contraintes. Utilisez le menu contextuel de la zone du graphe pour ajouter et supprimer des nœuds, faire passer leur type de Source à Destination et inversement, et Click, Hold&Drag les nœuds pour définir la topologie.

La liste des xSignals proposés (nommés selon le modèle <SourceNetName> (<SourcePinDesignator> → <DestinationPinDesignator>)) apparaît à droite de la zone de grille. Elle est divisée en deux groupes : les xSignals allant d’une source à une destination (S-T) et les xSignals allant d’une destination à une autre (T-T). Utilisez les cases à cocher des groupes ou des xSignals individuels pour sélectionner ou désélectionner les xSignals à créer. Les xSignals sélectionnés apparaissent dans l’onglet xSignals de la vue Electrical.

Exemple de création de xSignals à l’aide du graphe de topologie

Vous pouvez également définir une topologie personnalisée à l’aide du tableau. Ajoutez les broches et les composants en série nécessaires à l’aide de la colonne Pin, sélectionnez leurs rôles (Source, Destination ou Discrete) dans la colonne Role, puis définissez l’ordre souhaité dans la colonne Order.

Exemple de création de xSignals à l’aide de l’interface sous forme de tableau

La fonctionnalité de graphe de topologie est disponible lorsque l’option ConstraintManager.TopologyGraphAvailable est activée dans la boîte de dialogue Paramètres avancés. Lorsque cette option est désactivée, l’interface sous forme de tableau est utilisée.

  • Pour les noms des xSignals créés, visibles dans l’onglet xSignals du gestionnaire de contraintes ou dans le document PCB, le modèle suivant est utilisé :

    <SourceNetName>_<SourcePinDesignator>_<DestinationPinDesignator>

  • Pour propager rapidement une topologie personnalisée définie à des xNets/nets et créer plusieurs xSignals de structure similaire, vous pouvez créer un jeu de contraintes pour un xNet/net doté d’une topologie personnalisée, puis appliquer ce jeu de contraintes à d’autres xNets/nets. Lorsque vous modifiez un jeu de contraintes incluant une topologie personnalisée, les modifications apportées à la topologie sont propagées aux autres objets auxquels ce jeu de contraintes est appliqué.

  • Un xSignal peut être supprimé depuis l’onglet xSignals de la vue Electrical . Pour ce faire, cliquez avec le bouton droit sur un xSignal et sélectionnez la commande xSignals » Remove xSignal dans le menu contextuel.

  • Les xSignals associés sont automatiquement supprimés lors du passage depuis Custom topologie vers l’une des topologies prédéfinies pour le net/xNet sélectionné.

  • Lorsque la topologie Custom est sélectionnée pour un net à 2 broches ou un xNet simple (comportant une source, une destination et un composant discret entre chaque paire de nets), ses broches sont automatiquement ajoutées comme nœuds de la topologie personnalisée, et le xSignal proposé est automatiquement sélectionné. Les cas où un xNet traverse des composants discrets comportant plus de deux broches (par exemple, un réseau de résistances dans un seul composant) sont également pris en charge.

Pour une classe de xSignals créée (consultez la section Définition des classes ci-dessous pour plus de détails), la contrainte Tolerance peut être définie, et un xSignal de cette classe peut être sélectionné comme Matching Length. Lorsque le gestionnaire de contraintes est ouvert depuis le PCB, les colonnes Actual Value et Margin sont également disponibles.

Dans le document PCB, les xSignals définis peuvent être consultés dans le panneau PCB en mode xSignals. Les From-Tos correspondants sont également créés et peuvent être consultés dans le panneau PCB en mode From-To Editor.

Dans le document PCB, les xSignals générés peuvent être consultés dans le panneau PCB en mode xSignals.

Les From-Tos sont également générés et peuvent être consultés dans le panneau PCB en mode From-To Editor.

 

Définition des classes

Le gestionnaire de contraintes vous permet de définir des classes de nets, de paires différentielles, de xNets et de xSignals.

  • Pour ajouter des objets de la vue Physical ou Electrical du gestionnaire de contraintes à une classe existante, sélectionnez plusieurs entrées d’objets à l’aide de la méthode Ctrl+Click, Shift+Click ou Click, Hold&Drag, puis faites un clic droit sur la sélection et choisissez la classe souhaitée dans le sous-menu Classes » Add Selected to Class du menu contextuel.

    Lorsqu’il y a plus de 30 classes, la commande Classes » Add Selected to Class » Existing Class s’affiche à la place de la liste des classes. Utilisez cette commande pour ouvrir une boîte de dialogue dans laquelle vous pouvez sélectionner une classe existante à laquelle ajouter les objets sélectionnés.

  • Pour ajouter une nouvelle classe d’objets répertoriés dans la vue Physical ou Electrical du gestionnaire de contraintes, sélectionnez-les, puis faites un clic droit sur la sélection et choisissez la commande Classes » Add Selected to Class » New Class dans le menu contextuel pour ouvrir la boîte de dialogue Add Class. Définissez le Name de la classe (qui doit être unique et non vide) ainsi que l’ensemble de ses membres. Les objets sélectionnés avant l’ouverture de la boîte de dialogue figurent déjà dans la liste Member. Si nécessaire, ajustez l’ensemble des membres de la classe en déplaçant les entrées d’objets entre les listes Non-Members et Member à l’aide des boutons fléchés.

  • Vous pouvez également faire un clic droit dans la zone de la grille et sélectionner la commande Classes » Add Class dans la vue Clearances ou Electrical ou une commande du sous-menu (pour ajouter une classe de nets) ou du sous-menu Classes » Add Class pour ouvrir la boîte de dialogue Add Class. Lorsque vous ouvrez la boîte de dialogue de cette manière, les listes Member sont initialement vides.

  • Pour retirer des objets d’une classe à laquelle ils appartiennent actuellement, sélectionnez-les, puis faites un clic droit sur la sélection et choisissez la commande Classes » Remove Selected from Class dans le menu contextuel.

  • Pour modifier une classe, faites un clic droit sur son entrée et sélectionnez la commande Classes » Edit Class dans le menu contextuel pour ouvrir la boîte de dialogue Edit Class, dans laquelle vous pouvez modifier le nom et les membres de la classe.

  • Pour supprimer une classe existante, faites un clic droit sur son entrée et choisissez la commande Classes » Remove Class dans le menu contextuel. Vous pouvez également supprimer plusieurs classes en sélectionnant leurs entrées à l’aide de la méthode Ctrl+Click, Shift+Click ou Click, Hold&Drag, puis en faisant un clic droit sur la sélection et en choisissant la commande Classes » Remove Class dans le menu contextuel.

Vous pouvez également utiliser la boîte de dialogue Object Class Explorer pour ajouter, modifier et supprimer des classes. Faites un clic droit dans la zone de la grille et sélectionnez la commande Classes » Class Explorer dans le menu contextuel pour ouvrir la boîte de dialogue.

Le volet d’arborescence des dossiers, à gauche de la boîte de dialogue, répertorie les types de classes d’objets pris en charge et les classes d’objets existantes de chaque type.

  • Cliquez sur le dossier racine Object Classes pour afficher, dans la zone d’édition principale de la boîte de dialogue, une liste récapitulative de toutes les classes spécifiques définies pour l’ensemble des types de classes d’objets.
  • Cliquez sur un sous-dossier correspondant à un type de classe d’objets pour afficher une liste récapitulative de toutes les classes spécifiques définies pour ce type.
  • Cliquez sur l’entrée d’une classe spécifique (ou double-cliquez sur son entrée dans une liste récapitulative) pour accéder aux commandes permettant de gérer les objets appartenant à cette classe.

Pour ajouter une nouvelle classe définie par l’utilisateur depuis la boîte de dialogue Object Class Explorer, faites un clic droit dans la catégorie de classe que vous souhaitez créer et choisissez Add Class dans le menu contextuel. Pour renommer ou supprimer une classe définie par l’utilisateur, faites un clic droit sur son nom et choisissez respectivement Rename Class ou Delete Class.

Les classes système par défaut (All Nets, All Differential Pairs, All xNets, All xSignals) ne peuvent être ni modifiées, ni renommées, ni supprimées. Dans la boîte de dialogue Object Class Explorer, ces classes se distinguent par leurs noms encadrés par <>.

Ensembles de contraintes

Pour accélérer la définition des contraintes des objets, le gestionnaire de contraintes permet d’enregistrer un groupe de contraintes sous forme d’ensemble de contraintes, puis d’appliquer cet ensemble aux objets.

Pour enregistrer les contraintes actuellement définies pour un objet sous forme d’ensemble de contraintes, faites un clic droit sur une cellule de cet objet et sélectionnez la commande Save as Constraint Set dans le menu contextuel. Dans la fenêtre contextuelle New Constraint Set, saisissez le nom souhaité pour l’ensemble de contraintes (qui doit être unique et non vide), puis cliquez sur Create.

Un ensemble de contraintes nouvellement créé est appliqué à l’objet à partir duquel il a été créé. Pour appliquer un ensemble de contraintes à un autre objet, faites un clic droit sur sa cellule et sélectionnez l’ensemble souhaité dans le sous-menu Select Constraint Set du menu contextuel. Les cellules auxquelles un ensemble de contraintes est appliqué se distinguent par un symbole dans leur coin supérieur gauche (par exemple, ) et, dans les vues Physical ou Electrical, le nom de l’ensemble de contraintes appliqué apparaît dans la colonne Constraint Set.

Pour modifier les valeurs d’un ensemble de contraintes existant, sélectionnez un objet auquel cet ensemble est appliqué et cliquez sur  bouton. Modifiez les valeurs des contraintes selon vos besoins, puis cliquez sur le bouton Save dans la fenêtre contextuelle qui apparaît pour enregistrer les modifications. Les modifications seront appliquées à tous les objets auxquels cet ensemble de contraintes est actuellement affecté.

Les ensembles de contraintes actuellement définis sont répertoriés dans la zone Constraint Sets du panneau Properties. Cliquez sur l’entrée d’un ensemble de contraintes pour afficher les valeurs de ses contraintes. Un ensemble de contraintes sélectionné dans le panneau Properties peut être supprimé en cliquant sur le bouton  au bas de la zone Constraint Sets. Les objets auxquels l’ensemble de contraintes supprimé était affecté conserveront les valeurs de contraintes appliquées par cet ensemble avant sa suppression.

Lorsque vous accédez au gestionnaire de contraintes depuis le schéma et configurez des contraintes pour différents empilages de couches (voir Configuration des valeurs de contraintes par couche pour plus de détails), les ensembles de contraintes mémorisent l’empilage de couches dans lequel ils ont été créés. Pour l’empilage de couches actuellement choisi, il n’est pas possible d’affecter ou de modifier un ensemble de contraintes créé pour un autre empilage. Le message This Constraint Set was created for a different layer stack apparaît alors dans le panneau Properties ().

Importation de directives depuis les schémas

Cette fonctionnalité est disponible lorsque l’option ConstraintManager.ImportFromDirectives est activée dans la boîte de dialogue Paramètres avancés.

Vous pouvez importer dans le gestionnaire de contraintes des classes de nets et de paires différentielles, des paires différentielles et des contraintes à partir de directives de conception de jeu de paramètres et de paire différentielle, placées et définies dans vos documents sources de schéma. Pour ce faire, cliquez sur le bouton  lorsque vous accédez au gestionnaire de contraintes depuis le schéma. La boîte de dialogue Refresh Constraint Manager affiche un récapitulatif de l’importation du schéma vers le gestionnaire de contraintes, qui sera effectuée en cliquant sur le bouton  dans cette boîte de dialogue.

Un indicateur signale l’état de synchronisation entre une contrainte du gestionnaire de contraintes et son équivalent défini dans une directive placée sur un schéma.

  • Lorsqu’une directive de jeu de paramètres ou de paire différentielle est placée sur un objet du schéma et que ses valeurs de contraintes diffèrent de celles définies pour le même objet dans le gestionnaire de contraintes, ces valeurs sont signalées par une barre orange à gauche de la cellule correspondante dans la vue Physical ou Electrical du gestionnaire de contraintes, lorsque celui-ci est ouvert depuis un schéma (par exemple, ).

  • Lorsque les valeurs de la contrainte sont synchronisées entre le gestionnaire de contraintes et la directive, l’indicateur devient une barre verte (par exemple, ).

Un indicateur signale également l’état de synchronisation des classes de nets, des paires différentielles et des classes de paires différentielles importées depuis les directives. Les modifications (éléments ajoutés ou supprimés) sont détectées, et les incohérences nécessitant une synchronisation sont signalées par une barre orange à gauche du nom de l’objet correspondant (par exemple, ). L’état synchronisé est indiqué par une barre verte (par exemple, ).

Remarques sur l’importation de directives dans le gestionnaire de contraintes :

  • Toutes les contraintes existantes déjà définies pour les nets, les classes de nets, les paires différentielles ou les classes de paires différentielles dans le gestionnaire de contraintes sont prioritaires et conservées lors d’une importation. Par conséquent, si une valeur de contrainte synchronisée avec une directive est modifiée dans le gestionnaire de contraintes après l’importation, elle ne sera pas synchronisée lors d’une nouvelle importation.

  • Après avoir synchronisé les données en important celles des directives dans le gestionnaire de contraintes et enregistré les modifications dans ce dernier :

    • Les directives importées se distinguent dans l’espace de conception par leur couleur bleue et un symbole légèrement différent ().

    • Les entrées des classes et des règles importées dans le gestionnaire de contraintes peuvent être masquées par filtrage à l’aide du bouton Constraint Manager situé en haut de la zone Parameters du panneau Properties.

    • Pour une directive de jeu de paramètres rattachée à un seul fil, les données associées du gestionnaire de contraintes (nom de la classe de nets ou de paires différentielles et paramètres des règles) peuvent être affichées à proximité de cette directive sur la feuille de schéma. Pour une directive de jeu de paramètres comprenant des classes de nets définies et rattachée à une zone de couverture, il est également possible d’activer ou de désactiver l’affichage des informations de la directive de classe de nets dans l’espace de conception après synchronisation avec le gestionnaire de contraintes ou importation dans celui-ci. Pour une directive de paire différentielle rattachée à une zone de couverture, il est possible d’activer ou de désactiver l’affichage des informations sur la classe de paires différentielles et les règles associées dans l’espace de conception après synchronisation avec le gestionnaire de contraintes ou importation des directives dans celui-ci. Utilisez la commande de visibilité () à gauche de l’entrée de données correspondante dans le panneau Properties lorsque la directive est sélectionnée.

    • Les commandes permettant d’ajouter ou de supprimer une classe de nets, de paires différentielles ou de composants seront grisées dans le panneau Properties pour les directives correspondantes.

    • Les commandes permettant d’ajouter une règle ou de modifier ou supprimer une règle existante resteront disponibles dans le panneau Properties pour les directives correspondantes. Vous pouvez également modifier le nom d’une classe de nets. Pour appliquer aux données du gestionnaire de contraintes les modifications apportées aux règles et/ou au nom de la classe de nets d’une directive déjà importée, cliquez sur le bouton  lorsque vous accédez au gestionnaire de contraintes depuis le schéma.

  • Les règles ajoutées à une directive de jeu de paramètres qui ne figurent pas dans les vues Physical et Electrical seront automatiquement créées en tant que règles avancées et présentées dans la vue Toutes les règles lorsque vous accéderez au gestionnaire de contraintes depuis le PCB. Les règles avancées sont créées à l’issue de l’importation des directives et de l’ECO ultérieur du schéma vers le PCB.

  • Pour permettre l’importation dans le gestionnaire de contraintes des classes de nets définies à l’aide de directives, l’option Generate Net Classes doit être activée dans l’onglet Génération de classes de la boîte de dialogue Options du projet. Notez que si des classes de nets ont été importées dans le gestionnaire de contraintes, puis que l’option Generate Net Classes a été désactivée, une importation ultérieure dans le gestionnaire de contraintes proposera de supprimer les classes de nets importées. 

Des directives de jeu de paramètres et de paire différentielle sont placées sur un schéma. Ces directives définissent les éléments suivants :

  • Une contrainte de largeur pour le net A00.

  • Une classe de nets (Control) et une contrainte de largeur pour le net A09.

  • Une paire différentielle constituée des nets DQS0R_P et DQS0R_N.

Dans la vue Physical du gestionnaire de contraintes, les cellules relatives aux contraintes de largeur des nets A00 et A09 présentent une barre orange indiquant que ces valeurs ne sont pas synchronisées avec les directives.

Cliquez sur le bouton . La boîte de dialogue Refresh Constraint Manager s’ouvre et vous permet de vérifier les données à importer dans le gestionnaire de contraintes. Après vérification, cliquez sur le bouton pour importer toutes les données des directives.

Les contraintes de largeur, la classe de nets et la paire différentielle sont maintenant importées dans le gestionnaire de contraintes. Les cellules liées aux contraintes de largeur de A00 et A09, ainsi que les cellules de la classe de nets Control et de la paire différentielle DQS0R, présentent désormais une barre verte indiquant que leurs valeurs/membres sont synchronisés avec la directive.

L’apparence des directives change dans l’espace de conception du schéma. Bien qu’il soit toujours possible d’ajouter, de modifier et de supprimer des règles dans les propriétés des directives, les commandes permettant d’ajouter, de modifier et de supprimer des classes sont désormais grisées.

 

Modification des directives importées depuis des documents en lecture seule

Les directives importées depuis des documents en lecture seule (par exemple, des feuilles de composants et des feuilles gérées) ne peuvent pas être modifiées si l’option Make Device Sheets In Projects Read-Only est activée (cochée) sur la page Gestion des données - Feuilles de composants de la boîte de dialogue Preferences.

Lorsque cette option est désactivée (décochée), les directives peuvent être modifiées. Après l’importation des directives (avec l’option activée), la règle est surlignée en bleu dans le gestionnaire de contraintes.

Importation et exportation de contraintes et de jeux de contraintes

Vous pouvez importer et exporter des contraintes et des jeux de contraintes entre différentes conceptions. Pour accéder à cette fonctionnalité, cliquez avec le bouton droit dans la vue Clearances, Physical, ou Electrical du gestionnaire de contraintes, puis sélectionnez Import ou Export.

Après avoir sélectionné Import, la boîte de dialogue standard File Explorer s’ouvre et vous permet de sélectionner la contrainte ou le jeu de contraintes souhaité  (*.CstrDot ) à importer dans votre conception. La boîte de dialogue Constraints to Import s’ouvre et vous permet de sélectionner les contraintes/jeux de contraintes à importer dans la conception actuelle. Les contraintes/jeux de contraintes sélectionnés seront appliqués aux objets correspondants dans la conception cible.

  • Si un net sélectionné pour l’importation n’existe pas dans la conception cible, une entrée correspondante sera ajoutée au gestionnaire de contraintes. Comme ce net n’existe pas dans la conception, l’entrée sera marquée de l’icône . Les valeurs des contraintes peuvent être copiées depuis cette entrée et collées dans un objet existant. Le problème peut être résolu en ajoutant à la conception un net portant le même nom, puis en actualisant les données dans le gestionnaire de contraintes. Il est également possible de supprimer un objet sans correspondance du gestionnaire de contraintes en cliquant avec le bouton droit sur son entrée et en sélectionnant Delete unmatched object ().

  • Si une paire différentielle ou un xNet sélectionné pour l’importation n’existe pas dans la conception cible, il ne sera pas ajouté à la conception.

  • Si une classe de nets / de paires différentielles / de xNets sélectionnée pour l’importation n’existe pas dans la conception cible, elle sera automatiquement ajoutée à la conception.

Exporting Constraints and Constraint Sets

Après avoir sélectionné une ou plusieurs cellules dans la vue Clearances ou une ou plusieurs lignes dans la vue Physical ou Electrical, puis choisi Export, la boîte de dialogue Constraints to Export s’ouvre. Sa grille répertorie les contraintes et les jeux de contraintes de tous les objets sélectionnés avant l’exécution de la commande. Sélectionnez les contraintes/jeux de contraintes à exporter à l’aide des cases à cocher (les contraintes liées à la vue actuelle sont sélectionnées par défaut dans la boîte de dialogue). Après avoir cliqué sur le bouton Export items, la boîte de dialogue standard File Explorer s’ouvre et vous permet de nommer et d’enregistrer les contraintes/jeux de contraintes. Le fichier sera exporté avec l’extension *.CstrDot  et pourra ensuite être importé dans une autre conception.

Utilisation de toutes les règles côté PCB

Lorsque vous accédez au gestionnaire de contraintes depuis l’éditeur PCB, la vue All Rules est disponible et présente la liste de toutes les règles de la conception PCB. Vous pouvez y créer des règles avancées dont le périmètre d’application utilise des expressions de requête plus complexes.

  • Les règles avancées (répertoriées dans les listes Advanced Rules de la vue All Rules) sont prioritaires sur les règles définies dans les autres vues du gestionnaire de contraintes (et répertoriées dans les listes Basic Rules de la vue All Rules). Les priorités des règles avancées peuvent être redéfinies en saisissant les priorités souhaitées (1 étant la priorité la plus élevée) dans la colonne Priority (). Les priorités des règles répertoriées dans les listes Basic Rules ne peuvent pas être redéfinies.

  • Chaque paire de classes pour laquelle des contraintes d’espacement sont configurées dans la matrice d’espacement sera représentée par sa propre règle de base dans la vue All Rules lorsque le type de règle Clearance de la catégorie Electrical est sélectionné. Notez que si des valeurs de contraintes sont configurées pour différentes couches dans la matrice d’espacement (voir les détails ci-dessus), la paire correspondante sera toujours représentée par une seule règle de base dans la vue All Rules, et les valeurs appliquées à des couches / groupes de couches plus spécifiques auront une priorité plus élevée.

  • Utilisez la colonne Comment pour ajouter un commentaire à une règle, par exemple une description claire de son utilité.

Création d’une nouvelle règle avancée

Pour créer une nouvelle règle avancée dans la vue All Rules du gestionnaire de contraintes, sélectionnez Add Advanced Rule dans le menu contextuel accessible par clic droit (ou utilisez le bouton  dans la partie inférieure du gestionnaire de contraintes lorsqu’aucune règle n’est sélectionnée dans la grille), puis saisissez un périmètre d’application basé sur une requête et les paramètres des contraintes dans les colonnes de la grille ou dans la représentation graphique inférieure.

 

 

 

La configuration d’une nouvelle règle avancée dans le gestionnaire de contraintes est similaire à la création d’une règle dans la boîte de dialogue Éditeur de règles et de contraintes PCB. Consultez la page Types de règles de conception PCB pour en savoir plus sur les types de règles disponibles dans cette boîte de dialogue ainsi que dans la vue All Rules du gestionnaire de contraintes.

Si une expression de requête définissant le périmètre est jugée invalide en raison de sa syntaxe ou pour une autre raison, une boîte de dialogue d’avertissement s’affiche.

Pour conserver le périmètre invalide, cliquez sur Yes dans la boîte de dialogue. La règle invalide sera alors surlignée en rouge, comme illustré ci-dessous. Cliquez sur No pour revenir au périmètre précédent (valide).

Gestion de la bibliothèque de périmètres

Pour simplifier la création répétée de règles avancées, Constraints Manager vous permet d’enregistrer des périmètres de sélection d’objets basés sur des requêtes dans la bibliothèque de périmètres. Cette bibliothèque est gérée à l’aide de Scopes Library boîte de dialogue accessible en cliquant sur le bouton Edit Library dans la zone Scopes Library du panneau Properties . La bibliothèque est présentée dans le panneau Properties, où les périmètres personnalisés peuvent être importés et exportés sous forme de fichier XML, qui peut ensuite être utilisé pour alimenter la bibliothèque de périmètres d’une autre installation d’Altium Designer.

Pour exporter un périmètre vers la bibliothèque ou en importer un depuis celle-ci, utilisez les commandes du menu du bouton  à côté du champ Object Match / Second Object Match dans la partie inférieure du gestionnaire de contraintes. Une fois qu’un périmètre issu de la bibliothèque a été appliqué à une règle, son nom s’affiche dans la colonne Object Match / Second Object Match de la grille et au-dessus du champ Object Match / Second Object Match. Vous pouvez utiliser le menu  du champ pour rétablir le périmètre sous sa forme basée sur une requête (Detach Scope).

Activation/désactivation des règles

Vous pouvez activer/désactiver les règles de base et avancées répertoriées dans la vue All Rules. La colonne Enabled indique l’état d’une règle : True (activée) ou False (désactivée). Double-cliquez sur une cellule de la colonne pour modifier l’état d’une règle donnée. Les cellules correspondant aux règles de base désactivées portent la mention (Disabled) et sont grisées dans les vues Physical et Electrical.

Vous pouvez également modifier l’état d’activation des règles avancées d’un type ou d’une catégorie donnés, ou de toutes les règles avancées, à l’aide des commandes disponibles dans le menu contextuel de l’entrée correspondante de l’arborescence Rule Class.

Javascript ID : CM_EnableDisableAdvancedRules_AD25_8

Faites un clic droit sur une entrée de type de règle dans l’arborescence Rule Class pour activer/désactiver les règles avancées de ce type.

Faites un clic droit sur une entrée de catégorie de règles dans l’arborescence Rule Class pour activer/désactiver les règles avancées de cette catégorie.

Faites un clic droit sur l’en-tête Rule Class pour activer/désactiver toutes les règles avancées.

Importation et exportation des règles

Depuis la vue All Rules, vous pouvez importer et exporter des règles (avancées et/ou de base).

Pour exporter des règles, sélectionnez-en plusieurs dans la liste à l’aide de Ctrl+Click, Shift+Click ou Click, Hold&Drag, puis faites un clic droit et sélectionnez la commande Export Selected Rules (x) (x représente le nombre de règles sélectionnées). Vous pouvez également exporter des règles à l’aide des commandes disponibles dans le menu contextuel de l’entrée correspondante de l’arborescence Rule Class :

  • Faites un clic droit sur une entrée de type de règle dans l’arborescence et sélectionnez la commande Export <RuleType> Rules pour exporter les règles de ce type.

  • Faites un clic droit sur une entrée de catégorie de règles dans l’arborescence et sélectionnez la commande Export <RuleCategory> Rules pour exporter les règles de cette catégorie.

  • Faites un clic droit sur l’en-tête Rule Class de l’arborescence et sélectionnez la commande Export All Rules pour exporter toutes les règles.

Après avoir choisi une commande Export, la boîte de dialogue Constraints to Export s’ouvre. Vous pouvez y sélectionner les règles à exporter dans un fichier *.CstrDot, qui pourra ensuite être importé dans un autre projet. Après avoir cliqué sur le bouton Export x Items (x représente le nombre d’éléments sélectionnés dans la boîte de dialogue), la boîte de dialogue standard File Explorer s’ouvre pour vous permettre de définir le nom et l’emplacement du fichier. Les règles seront exportées dans un fichier *.CstrDot, qui pourra ensuite être importé dans une autre conception.

Javascript ID : CM_ImportExport_AllRules_Export_AD25_8

Faites un clic droit sur une ou plusieurs règles sélectionnées pour les exporter.

Faites un clic droit sur une entrée de type de règle dans l’arborescence Rule Class pour exporter les règles de ce type.

Faites un clic droit sur une entrée de catégorie de règles dans l’arborescence Rule Class pour exporter les règles de cette catégorie.

Faites un clic droit sur l’en-tête Rule Class pour exporter toutes les règles.

Pour importer des règles, faites un clic droit dans la zone de liste ou dans l’arborescence Rule Class de la vue All Rules et sélectionnez la commande Import Rules. La fenêtre standard File Explorer s’ouvre. Sélectionnez-y le fichier *.CstrDot souhaité, puis cliquez sur Open. La boîte de dialogue Constraints to Import s’ouvre pour vous permettre de sélectionner les règles à importer dans la conception actuelle. Lors de l’importation, les périmètres personnalisés associés sont appliqués automatiquement.

Suppression des règles avancées

Pour supprimer la règle avancée actuellement sélectionnée, faites un clic droit dessus et sélectionnez Remove Advanced Rule. Pour supprimer plusieurs règles avancées à la fois, sélectionnez-en plusieurs à l’aide de Ctrl+Click, Shift+Click ou Click, Hold&Drag, puis faites un clic droit et sélectionnez Remove Advance Rules (x). « x » représente le nombre de règles qui seront supprimées. Vous pouvez également supprimer toutes les règles avancées d’un type ou d’une catégorie donnés, ou l’ensemble des règles avancées, à l’aide des commandes disponibles dans le menu contextuel de l’entrée correspondante de l’arborescence Rule Class.

Javascript ID : CM_RemoveAdvancedRules_AD25_8

Faites un clic droit sur plusieurs règles sélectionnées pour les supprimer.

Faites un clic droit sur une entrée de type de règle dans l’arborescence Rule Class pour supprimer les règles avancées de ce type.

Faites un clic droit sur une entrée de catégorie de règles dans l’arborescence Rule Class pour supprimer les règles avancées de cette catégorie.

Faites un clic droit sur l’en-tête Rule Class pour supprimer toutes les règles avancées.

Dans tous les cas, les règles seront supprimées immédiatement, sans aucune confirmation.

Localisation croisée

Le gestionnaire de contraintes inclut une fonction de localisation croisée qui affiche les objets associés en les mettant visuellement en surbrillance dans le document correspondant. Pour localiser un objet, faites un clic droit sur son entrée, puis choisissez l’option Cross Probe dans le menu contextuel, ou sélectionnez Cross Probe dans le menu  d’une règle avancée.

Javascript ID : CM_CrossProbe_AD24_1

Définissez Cross Probe View Settings dans le panneau Properties pour configurer les paramètres de localisation croisée.

Utilisez l’option Clear Filter de l’éditeur de schémas/PCB (faites un clic droit dans l’espace de conception et sélectionnez Clear Filter, raccourci : Shift+C) pour réinitialiser la mise en surbrillance de la localisation croisée.

Consultez la page Localisation et sélection croisées pour en savoir plus sur la localisation croisée dans Altium Designer.

Sélection croisée

La fonction de sélection croisée facilite la sélection dynamique et bidirectionnelle des objets. Lorsque le mode de sélection croisée est activé (à l’aide de Cross Select Mode commande du Tools menu principal du gestionnaire de contraintes, de l’éditeur de schémas ou de l’éditeur PCB), les objets sélectionnés dans le gestionnaire de contraintes sont également sélectionnés dans les documents schématiques et PCB, et inversement.

Consultez la page Sondage croisé et sélection pour en savoir plus sur la sélection croisée dans Altium Designer.

Transfert des contraintes entre le schéma et le PCB

Les modifications apportées dans le gestionnaire de contraintes sont transférées entre les conceptions schématique et PCB à l’aide du processus d’ordre de modification technique (ECO). Sélectionnez une commande pour mettre à jour les contraintes de l’autre côté.

  • Pour transférer les modifications du schéma vers le PCB – sélectionnez la commande Design » Update PCB Document <PCBDocumentName> dans les menus principaux de l’éditeur de schémas.

  • Pour transférer les modifications (effectuées dans les vues Clearances, Physical et/ou Electrical du gestionnaire de contraintes) du PCB vers le schéma – sélectionnez la commande Design » Update Schematics in <PCBProjectName> dans les menus principaux de l’éditeur PCB.

Utilisez la boîte de dialogue Engineering Change Order qui s’affiche ensuite pour examiner, valider et appliquer les modifications.

Le gestionnaire de contraintes est automatiquement actualisé pour tenir compte des modifications apportées aux règles et aux classes lors de l’ouverture de la boîte de dialogue ECO, pendant le transfert des modifications du schéma vers le PCB. Notez que si le gestionnaire de contraintes est déjà ouvert, cette synchronisation n’aura lieu que si aucune modification non enregistrée n’a été effectuée.

Lors du transfert des modifications du schéma vers le PCB, notez que seules les règles, les classes de nets, les paires différentielles et les classes de paires différentielles définies dans le gestionnaire de contraintes sont transférées. Les éléments suivants ne seront ni détectés ni transférés :

  • Les règles définies à l’aide des directives d’ensemble de paramètres et de paire différentielle, ou du panneau Properties pour les options du document schématique.

  • Les classes de nets générées automatiquement (selon les paramètres de l’onglet Génération des classes de la boîte de dialogue Options du projet).

  • Les classes de nets et de paires différentielles définies à l’aide des directives d’ensemble de paramètres et de paire différentielle.

  • Les paires différentielles définies à l’aide des directives de paire différentielle.

Notez que les classes de nets définies dans le gestionnaire de contraintes seront transférées quels que soient les paramètres de l’onglet Class Generation de la boîte de dialogue Project Options.

Vous pouvez importer des règles, des classes de nets, des paires différentielles et des classes de paires différentielles à partir des directives placées dans les schémas vers le gestionnaire de contraintes – en savoir plus.

  • Lors de la synchronisation des schémas et du PCB, un avertissement s’affichera dans la boîte de dialogue Engineering Change Order si les modifications apportées dans le gestionnaire de contraintes n’ont pas été enregistrées. Cet avertissement précisera de quel côté les modifications n’ont pas été enregistrées : schémas, PCB ou les deux ().

  • La boîte de dialogue Engineering Change Order affichera un avertissement si les schémas contiennent des directives de conception qui n’ont pas été précédemment importées dans le gestionnaire de contraintes ().

  • Si les périmètres (listes des membres) de certaines classes ont été modifiés mais ne sont pas synchronisés entre les schémas sources et le gestionnaire de contraintes, la boîte de dialogue Engineering Change Order affichera un avertissement lors d’une tentative de mise à jour du PCB à partir des schémas ().

Consultez la page Maintenir les schémas et le PCB synchronisés pour en savoir plus.

Migration des règles de conception vers le gestionnaire de contraintes

Cette fonctionnalité est disponible lorsque l’option ConstraintManager.ProjectMigrationWizard est activée dans la boîte de dialogue Paramètres avancés.

Si un projet PCB utilise l’ancien système de gestion des règles (c’est-à-dire la boîte de dialogue PCB Rules and Constraints Editor), vous pouvez effectuer une migration unique et unidirectionnelle vers le gestionnaire de contraintes.

Utilisez la commande Design » Migrate Project to Constraint Manager Flow dans les menus principaux des éditeurs PCB et de schémas. La boîte de dialogue Migration Required s’ouvre pour vous avertir que la migration va être effectuée et qu’elle ne pourra pas être annulée après avoir cliqué sur le bouton .

Les règles de conception PCB et les directives schématiques seront transférées vers les contraintes correspondantes applicables dans le gestionnaire de contraintes. Une fois la migration terminée avec succès, le gestionnaire de contraintes s’ouvrira (dans le contexte de l’éditeur qui était actif lorsque vous avez effectué la migration).

  • Si une règle de conception avec un périmètre par défaut n’existe pas dans la boîte de dialogue PCB Rules and Constraints Editor (par exemple, s’il n’existe aucune règle de largeur avec le périmètre All), elle sera créée dans le gestionnaire de contraintes dans le cadre du processus de migration.

  • Lorsque les expressions du premier et du second périmètre (Where the First Object Matches et Where the Second Object Matches) d’une règle d’espacement sont définies sur All, l’option de périmètre des nets / de vérification de la connectivité est prise en compte lors de la migration du projet vers le gestionnaire de contraintes comme suit :

    • Different Nets Only – la règle est ajoutée à la cellule All Nets – All Nets de la matrice d’espacement dans la vue Clearances.

    • Different Differential Pair – la règle est ajoutée à la cellule All Nets – All Differential Pairs de la matrice d’espacement dans la vue Clearances.

    • Same Net Only – la règle est ajoutée à la cellule Same Net Clearance pour All Nets dans la vue Physical.

    • Same Differential Pair – la règle est ajoutée à la cellule Same Net Clearance pour All Differential Pairs dans la vue Physical.

  • Si des règles ont été ajoutées à une directive d’ensemble de paramètres avant la migration et qu’elles ne figurent pas dans les vues Physical et Electrical du gestionnaire de contraintes, ces règles seront automatiquement créées en tant que règles avancées, affichées dans la vue Toutes les règles lorsque le gestionnaire de contraintes est ouvert depuis le PCB. Les règles avancées sont créées lors de la migration depuis l’ancien système de gestion des règles et de l’ECO ultérieur du schéma vers le PCB.

AI-LocalizedLocalisé par IA
Si vous trouvez un problème, sélectionnez le texte/l’image et appuyez surCtrl + Enterpour nous envoyer vos commentaires.
Contents
Disponibilité des fonctionnalités

Les fonctionnalités auxquelles vous avez accès dépendent de la solution Altium dont vous disposez – Altium Develop, Altium Agile Teams, Altium Agile Enterprise, ou Altium Designer (avec un abonnement actif).

Si vous ne voyez pas une fonctionnalité documentée dans votre logiciel actuel, contactez le service commercial d’Altium pour en savoir plus.

Documentation héritée

La documentation d’Altium Designer n’est plus versionnée. Si vous devez accéder à la documentation des versions antérieures d’Altium Designer, consultez la section Documentation héritée de la page Other Installers.

Contents