Ensuring PCB Readiness for Specctra-compatible Routers
L’exportateur Specctra d’Altium Designer permet la traduction de règles de conception de largeur et d’espacement mises en forme de manière spécifique, ce qui facilite la transition et améliore les chances de réussite lors de l’utilisation de produits de routage compatibles Specctra avec Altium Designer.
Contexte
Les règles de conception Specctra et les règles de conception d’Altium Designer sont assez différentes, tant par leur nature que par leur mise en œuvre. Les différences conceptuelles suivantes illustrent le défi que représente le transfert réussi d’une conception d’Altium Designer vers Specctra :
-
Specctra possède une hiérarchie de portée fixe (codée en dur), qui détermine également l’ordre dans lequel les règles sont appliquées (par exemple, les règles au niveau Net sont toujours appliquées avant les règles de classe de nets). Altium Designer dispose d’un système de règles plus puissant et plus flexible. Ni la précédence (priorité) ni la portée ne sont fixes. Vous pouvez définir librement la portée d’une règle à l’aide d’expressions, puis définir la priorité de cette règle selon les besoins. Vous pouvez donc avoir une règle à portée de classe de nets exécutée avant des règles à portée de net.
-
Dans Specctra, on peut considérer qu’une portée a des règles associées – un ensemble de règles s’applique à une instance de cette portée. Dans Altium Designer, ce n’est pas le cas. En dehors de la portée par défaut « All », toutes les autres portées de toutes les règles définies pour une conception peuvent être différentes.
-
Les règles Specctra peuvent être évaluées en un attribut au niveau du primitif ; par exemple, une piste du net A nécessite un espacement de 8 mil par rapport à tous les autres objets. Certaines règles d’Altium Designer (plus précisément les règles binaires) ne peuvent jamais être évaluées au niveau d’un attribut de primitif. Par exemple, l’espacement entre des pistes des nets A et B peut être différent de l’espacement applicable entre des pistes des nets A et C, ce qui fait qu’il n’existe pas de valeur unique unifiée pour les pistes du net A.
En résumé, on peut raisonnablement considérer que le système de portée d’Altium Designer est plus expressif que le système de règles de Specctra et qu’il constitue, de manière générale, un sur-ensemble du système de portée de Specctra.
Définition des règles dans Altium Designer
Si vous prévoyez de router votre conception PCB Altium Designer à l’aide de Specctra, il est fortement recommandé de suivre la hiérarchie de portée de Specctra afin de maximiser la justesse de la traduction et les résultats de routage. Le tableau suivant fournit une ligne directrice pour la définition des règles. Il résume les différentes portées fixes du côté Specctra et, lorsqu’elles sont prises en charge par l’exportateur, la portée requise du côté Altium Designer, ainsi que la priorité. Ces « correspondances », si vous préférez, visent à rendre le processus d’exportation des règles plus fluide et à éviter d’avoir à créer manuellement les règles requises après l’exportation du côté Specctra.
|
Portée Specctra
|
Portée Altium Designer
|
Priorité Altium Designer
|
|
|---|---|---|---|
|
Requête du 1er objet
|
Requête du 2e objet
|
||
| Conception PCB | All | All |
12
|
| Couche | OnLayer('LayerName') | All |
11
|
| Classe de nets | InNetClass('NetClassName') | All |
10
|
| Classe de nets sur couche | InNetClass('NetClassName') And OnLayer('LayerName') | All |
9
|
| Ensemble de groupes |
Non pris en charge dans Altium Designer
|
||
| Ensemble de groupes sur couche |
Non pris en charge dans Altium Designer
|
||
| Net | InNet('NetName') | All |
8
|
| Net sur couche | InNet('NetName') And OnLayer('LayerName') | All |
7
|
| Groupe | Émulé à l’aide de From To Class : InFromToClass('FromToClassName') |
All |
6
|
| Groupe sur couche | Émulé à l’aide de From To Class : InFromToClass('FromToClassName') And OnLayer('LayerName') |
All |
5
|
| FromTo | InFromTo('NetName (FromPad : ToPad)') | All |
4
|
| FromTo sur couche | InFromTo(NetName (FromPad : ToPad)') And OnLayer('LayerName') | All |
3
|
| Classe vs. classe | InNetClass - InNetClass actuellement non pris en charge par l’exportateur |
2
|
|
| Classe vs. classe sur couche |
Actuellement non pris en charge par l’exportateur
|
||
| Padstack |
Non pris en charge dans Altium Designer
|
||
| Région | WithinRoom('RoomName') | WithinRoom('RoomName') |
1
|
| Classe de nets dans une région |
Actuellement non pris en charge par l’exportateur
|
||
| Net dans une région |
Actuellement non pris en charge par l’exportateur
|
||
| Classe vs. classe dans une région |
Actuellement non pris en charge par l’exportateur
|
||
Remarques
-
Plusieurs expressions peuvent être combinées dans une seule règle Altium Designer à l’aide de l’opérateur
OR, ce qui réduit le nombre total de règles dans la conception. Par exemple :
-
InNet('N1') OR InNet('N2') OR InNet('N3')– ce qui rend la règle applicable à l’un des netsN1,N2ouN3. -
OnLayer('L1') OR OnLayer('L2')– ce qui rend la règle applicable à un objet situé soit sur la coucheL1, soit sur la coucheL2.
-
-
Pour la priorité des règles dans Altium Designer,
1correspond à la priorité la plus élevée et sera appliquée en premier.
Modificateurs de portée basés sur les primitifs
Les expressions suivantes sont prises en charge comme modificateurs de portée :
-
IsPad -
IsThruPin -
IsSMDPad -
IsVia -
IsTrack -
IsFill -
IsPolyRegion -
IsTestPoint -
TestPoint
Ces modificateurs sont utiles pour une règle d’espacement, lorsque vous souhaitez définir différentes valeurs d’espacement entre, par exemple, une via et une pastille, par rapport à une via et une piste. Les exemples de portée suivants montrent comment ces modificateurs peuvent être utilisés dans les définitions de règles d’espacement :
-
Pastille à via, espacement pour le net N1 :
InNet('N1') AND IsVia vs IsPad
-
Piste à piste, espacement sur la couche supérieure pour le net N1 :
InNet('N1') AND IsTrack vs IsTrack AND OnTopLayer
Alias de portée
Comme dans les langues parlées, lors de la définition des portées de règles, il est souvent possible d’obtenir le même sens de différentes manières. Les alias suivants sont pris en charge pour les portées basées sur les couches :
-
OnTopouOnTopLayer– alias deOnLayer('TopLayerName')
-
OnBottomouOnBottomLayer– alias deOnLayer('BottomLayerName')
-
OnMid– alias utilisé pour les couches Mid Layer 1 à Mid Layer 30 (c’est-à-dire les couches de signal à l’exclusion des couches top et bottom)
-
OnSignal– alias utilisé pour toutes les couches de signal
-
TestPointetIsTestPointsont des alias l’un de l’autre.
Importer une conception Specctra
Pour importer une conception Specctra dans le document PCB actif d’Altium Designer, sélectionnez la commande File » Import » Specctra Design dans les menus principaux de l’éditeur PCB. La boîte de dialogue Import Files’ouvrira, à partir de laquelle vous pourrez parcourir et sélectionner le fichier de conception Specctra requis.
Exporter un PCB au format de fichier de conception Specctra
Un document PCB Altium Designer peut être exporté au format de fichier de conception Specctra. Dans un fichier Outputjob file, cliquez sur [Add New Export Output]et sélectionnez une entrée dans le menu Specctra Design PCB . Les sorties d’exportation peuvent ensuite être générées directement à partir du fichier ou dans le cadre du processus Project Release.
Vous pouvez également sélectionner la commande File » Export » Specctra Design dans les menus principaux de l’éditeur PCB d’Altium Designer.
Que l’exportation soit effectuée dans le cadre d’un fichier OutJob ou directement depuis le menu File, vous pourrez configurer les options d’exportation dans la boîte de dialogue associée Setup Specctra Router .