Gestione delle regole di progettazione con l’Editor dei vincoli
Il Constraints Editor è un'interfaccia utente basata su documento che offre un approccio alternativo per visualizzare, creare e gestire le regole dei vincoli di progettazione utilizzate per i layout PCB. L'editor è organizzato in sei sezioni di regole selezionabili in ordine di priorità crescente: Nets, Diff Pairs, xSignals, Polygons, Components, e Advanced. In questa organizzazione, le prime cinque sezioni (Nets fino a Components) rappresentano una vista delle regole basata sugli oggetti di progettazione, mentre la sezione di vista Advanced si applica a regole più complesse (in genere con query) che non possono essere espresse come regole più semplici orientate agli oggetti di progettazione.

Il Constraints Editor – un approccio alternativo per la gestione delle regole di progettazione.
Si accede al Constraints Editor facendo clic sul pulsante Switch to Document View nella finestra di dialogo PCB Rules and Constraints Editor.

Passaggio alla vista Constraints Editor dalla finestra di dialogo PCB Rules and Constraints Editor.
Alcuni dei vantaggi dell'uso dell'editor sono:
-
L'uso di un'interfaccia di presentazione basata su documento, anziché di una finestra di dialogo, consente all'editor PCB e alle relative funzioni di rimanere attivi e accessibili.
-
Il passaggio da una definizione dell'ambito delle regole basata su query a una corrispondenza applicata del tipo di oggetto semplifica la creazione delle regole dei vincoli.
-
La priorità delle regole è automatica, in base alla gerarchia naturale degli oggetti di progettazione.
-
Controllo interattivo della validazione delle regole per rilevare errori comuni di sintassi, assegnazione e ambito.
Tipi di regole di vincolo
Nel Constraints Editor, le regole esistenti che presentano espressioni di query più complesse nel loro ambito di corrispondenza sono considerate Advanced Rules (o regole personalizzate), mentre le regole più semplici vengono riespresse come Basic Rules basate sul tipo di oggetto, ossia regole basate sul tipo di oggetti di progettazione controllati.
La maggior parte delle regole nel formato Advanced (basato su query) può essere convertita nelle più semplici regole Basic trascinando la regola nell'elenco Basic Rules oppure selezionando l'opzione Move Custom Rule to Basic dal menu contestuale della regola Advanced (oppure usando il comando Tools » Convert » Migrate Advanced Rules to Basic dai menu principali). Dopo l'avvio del comando, verrà visualizzata la finestra di dialogo Migration of Advanced Rules to Basic , che fornirà informazioni su quante regole basic possono essere migrate prima di chiedere di confermare la migrazione. Una volta convertita, l'ambito basato su query della regola advanced verrà interpretato come qualifica del tipo di oggetto della regola basic.

Le regole Advanced basate su query possono essere convertite in regole Basic più semplici.
Definizione delle priorità delle regole
In generale, la priorità delle regole viene gestita automaticamente dal sistema. Questo è indicato dalla disposizione dei pulsanti di visualizzazione delle regole nell'interfaccia, posizionati in base alla priorità della regola da sinistra a destra, con Nets che ha la priorità più bassa.
- Le regole Advanced (o create personalizzate) hanno la precedenza sulla sequenza delle regole Basic sugli oggetti e possono essere riordinate manualmente nella vista Advanced trascinando le relative voci verso l'alto o verso il basso.
- Al contrario, le regole Basic sono prioritizzate automaticamente dal sistema in base al tipo di oggetto di progettazione, come indicato dalle sezioni oggetto (Nets fino a Components) nell'interfaccia del documento.
- All'interno di ciascuna delle sezioni di regole oggetto (Basic), la priorità è ordinata da All (più bassa) a Object Class a Object (più alta) e, per inferenza, le regole con ambito All convertite in regole Basic avranno la priorità più bassa.
- Per impostare una priorità esplicita per una regola Basic, fare clic con il pulsante destro del mouse sulla regola e selezionare l'opzione Move Basic Rule to Advanced (oppure usare il comando Tools » Convert » Migrate Basic Rules to Advanced dai menu principali). Dopo l'avvio del comando, verrà visualizzata la finestra di dialogo Migration of Basic Rules to Advanced , che fornirà informazioni su quante regole basic possono essere migrate prima di chiedere di confermare la migrazione. Impostarne manualmente la posizione di priorità nella vista Advanced. Questo si applica a regole diverse da quelle con ambito All, ad esempio, nella vista Nets, una regola con ambito Net Class o Net specificato può essere convertita (spostata) in una regola Advanced.
Nuova regola di vincolo personalizzata
La creazione di una nuova regola nella modalità predefinita Advanced dell'editor (come indicato e selezionato tramite il pulsante è simile alla costruzione di una regola nella finestra di dialogo PCB Rules and Constraints Editor. Selezionare Add Custom Rule dal menu contestuale del tasto destro (oppure usare il pulsante
o il comando Edit » Add Constraint dai menu principali), aggiungere se necessario un ambito di corrispondenza basato su query , quindi immettere i parametri del vincolo nella griglia a colonne o nella rappresentazione grafica inferiore.

Crea la tua regola di vincolo personalizzata
Per semplificare il processo ripetitivo di creazione di regole di tipo advanced/personalizzato, il Constraints Editor consente di memorizzare gli ambiti di corrispondenza degli oggetti basati su query nella finestra di dialogo Scopes Library (accessibile facendo clic su
nella colonna Object Match e quindi selezionando Export to Library, oppure facendo clic sul pulsante Edit Library nell'area Scopes Library della modalità Advanced constraints options del pannello Properties ). La libreria è presentata nel pannello Properties, in cui gli ambiti personalizzati possono essere importati, gestiti ed esportati per il riutilizzo in altre regole di vincolo personalizzate. L'uso di un ambito basato su libreria in una regola è indicato da un'icona nella voce della colonna Object Match della regola.

Utilizzare la libreria degli ambiti per semplificare la creazione di regole personalizzate.
Options and Controls of the Scopes Library Dialog
- Scope - elenca tutti gli ambiti che sono stati definiti.
- Expression - visualizza l'espressione definita per l'ambito associato.
-
- apre la finestra di dialogo Query Helper dialog, che aiuta a scrivere espressioni di ricerca.
-
- apre la finestra di dialogo Query Builder dialog, che aiuta a creare una query.
- Update - utilizzare per aggiornare la regola nel Constraints Editor. Questa opzione è disponibile e accessibile solo se è stata apportata una modifica.
- Import - utilizzare per importare l'ambito selezionato nel Constraints Editor. Questa opzione è disponibile e accessibile solo se nella finestra di dialogo è selezionato un ambito non già presente nel Constraints Editor.
Modalità di vincolo degli oggetti di progettazione
Per adottare un approccio più semplice e orientato agli oggetti di progettazione nella creazione delle regole di vincolo, selezionare un pulsante di modalità oggetto adatto nella parte superiore della griglia delle regole per passare dalla modalità predefinita Advanced. Dal punto di vista concettuale, queste modalità presentano un'interfaccia delle regole più integrata che si concentra sul vincolare (limitare) il modo in cui gli oggetti di progettazione possono essere applicati, piuttosto che sulla creazione di regole di progettazione violabili. La sequenza posizionale dei pulsanti degli oggetti di progettazione è correlata alla crescente complessità dell'oggetto (e priorità della regola), dai Nets di base (e relative classi) ai Components unificati fino alla modalità Advanced.
Quando si è in modalità Advanced , le regole sono raggruppate per tipo, come le regole di vincolo di base Via e Width mostrate nelle immagini sottostanti. È possibile creare una maggiore specificità delle regole aggiungendo un'ulteriore regola e/o includendo un elemento del linguaggio di query.

Nella modalità Advanced del Constraints Editor, le regole sono raggruppate per tipo.
Al contrario, le viste orientate agli oggetti (Nets fino a Components) organizzano le regole per oggetti di progettazione (ad esempio, Nets) o classi (ad esempio, Net Class) e, di conseguenza, forniscono una panoramica diretta di come le regole si applicano al progetto. Per visualizzare una panoramica delle regole che si applicano a un tipo di oggetto, selezionare un oggetto o una classe nella colonna di sinistra per vedere tutte le regole associate, oppure selezionare All per vedere tutte le regole associate al tipo di oggetto. L'esempio seguente mostra la panoramica delle regole associate a Nets

Nelle viste orientate agli oggetti del Constraints Editor, le regole sono raggruppate per oggetti di progettazione.
Quando si utilizza l'approccio orientato agli oggetti di progettazione, ad esempio con il tipo di oggetto Nets selezionato come mostrato di seguito, le regole di base Via e Width sono integrate in un'unica voce composita. Il layout della griglia offre inoltre la possibilità di aggiungere altri vincoli per oggetto e classe (Net).

Una vista orientata agli oggetti visualizza i vincoli del tipo di oggetto selezionato.
L'aggiunta di ulteriori vincoli più specifici in questo esempio richiede soltanto la selezione di un Net o di una Net Class e l'inserimento di valori appropriati nelle celle della griglia corrispondenti al tipo desiderato di regola di vincolo. Come mostrato di seguito, è stata consentita una dimensione Via maggiore per le net Power (definite dalla relativa classe) ed è assegnata una larghezza massima della pista aumentata alla net della linea di alimentazione 5V. In pratica, quattro regole sono racchiuse in una sola semplice vista a griglia, cioè un vincolo di larghezza per la net 5V, un vincolo di larghezza per tutte le altre net, un vincolo di dimensione Via per le net Power e un vincolo di dimensione Via per tutte le altre classi di net.

Aggiungere vincoli più specifici per diversi oggetti e i relativi gruppi (ad esempio, net e classi di net).
Usare il pulsante
per aggiungere una variante della regola di vincolo attualmente selezionata, come nell'esempio mostrato di seguito, in cui una regola di net 5V aggiuntiva imposta una larghezza preferita per il layer Bottom.

È possibile aggiungere varianti di un vincolo selezionato.
Si noti che la disponibilità dei tipi di regola nelle voci della griglia è determinata dalle colonne disponibili, che a loro volta sono specificate da quelle abilitate nell'elenco Rule Visibility del pannello Properties. Ad esempio, abilitando la voce Clearance nell'elenco Rule Visibility verrà aggiunta la colonna Clearance al tipo di oggetto Nets, come mostrato di seguito. L'aggiunta di una regola di clearance applicabile richiede quindi solo l'inserimento di un ambito di net o classe e di parametri di distanza appropriati.

Selezionare le regole da visualizzare in una vista orientata agli oggetti.
Validazione delle regole
La validità di tutte le regole attive può essere verificata nell'area Rules/Constraints Checks del pannello Properties facendo clic sul pulsante
. Questa azione rileva regole con probabili errori, come regole duplicate, regole con lo stesso ambito ma valori diversi, regole con membri di classe sovrapposti (come le net) e regole con ambiti non risolti. Ogni voce del tipo di violazione può essere espansa per mostrare le regole in violazione che, se selezionate, apriranno la voce specifica della regola.

Controllare la validità delle regole attualmente definite nel Constraints Editor.
Per eseguire la validazione delle regole, è anche possibile usare il comando Tools » Run Rules Validation Check dai menu principali
Violazioni delle regole
Le regole dei vincoli di progettazione abilitate vengono applicate al progetto della scheda corrente tramite una serie di meccanismi, come Online Design Rule Checking in tempo reale, il Design Rule Checker batch o in modo selettivo dal PCB Rules And Violations panel. Le violazioni di tali regole di vincolo, ovvero quando i limiti specificati e definiti nell'ambito vengono superati, sono indicate tramite elementi grafici sulla scheda, voci nei pannelli e report, nonché icone di avviso nel Constraints Editor. Inoltre, come vantaggio aggiuntivo, le violazioni possono essere ispezionate, analizzate e corrette mentre il Constraints Editor è aperto grazie al suo formato di documento di progettazione (anziché finestra di dialogo).

Il Constraints Editor fornisce feedback sulle regole in violazione.
Pannello Properties
Quando il Constraints Editor è attualmente attivo, il pannello Properties presenta la modalità Document Options (oppure la modalità Advanced constraints options nella modalità Advanced dell'editor).
Le seguenti sezioni comprimibili contengono informazioni sulle opzioni e sui controlli disponibili:
Actions
- Switch to Dialog View – dopo l'avvio del comando, la modalità di visualizzazione passerà da Document View a Dialog View, che apre la finestra di dialogo PCB Rules and Constraints Editor.
General
- Show Default Values (solo nella modalità Document Options) – se abilitato, i valori predefiniti applicabili verranno mostrati per tutte le voci nell'area griglia dell'editor come testo attenuato.
- Units – utilizzare per selezionare l'unità di misura desiderata. Le unità di misura possono essere selezionate anche tramite il menu Tools » Measurement Units.
Cross Probe View Settings
- Select – se abilitato, gli oggetti filtrati verranno selezionati nello spazio di progettazione.
- Zoom – se abilitato (predefinito), gli oggetti filtrati verranno ingranditi e centrati (ove possibile) nello spazio di progettazione. Usare il pulsante Zoom Level per regolare il fattore di zoom che verrà utilizzato per ingrandire gli oggetti filtrati.
-
Normal/Mask/Dim a discesa – fornisce opzioni per contrastare visivamente gli oggetti filtrati e non filtrati nello spazio di progettazione.
- Normal – gli oggetti filtrati sono visibili nello spazio di progettazione e l'aspetto degli oggetti non filtrati rimane invariato.
- Mask – gli oggetti filtrati sono evidenziati nello spazio di progettazione, mentre tutti gli altri oggetti vengono resi monocromatici.
- Dim – gli oggetti filtrati sono evidenziati nello spazio di progettazione, mentre tutti gli altri oggetti mantengono i loro colori ma risultano ombreggiati.
Rule Visibility
Questa area del pannello Properties è disponibile solo nella relativa modalità Document Options.
- Grid – usare per configurare la disponibilità dei tipi di regola nell'area griglia dell'editor.
Scopes Library
Questa area del pannello Properties è disponibile solo nella relativa modalità Advanced constraints options.
- Scope – elenca tutti gli ambiti che sono stati definiti.
- Query – visualizza le query definite per l'ambito associato.
- Import – utilizzare per importare l'ambito selezionato nel Constraints Editor. Questa opzione è disponibile e accessibile solo se nella finestra di dialogo è selezionato un ambito non già presente nel Constraints Editor.
- Export – utilizzare per esportare l'ambito selezionato nel Constraints Editor.
- Edit Library – utilizzare per aprire la finestra di dialogo Scopes Library, in cui è possibile memorizzare ambiti di corrispondenza degli oggetti basati su query. Gli ambiti personalizzati possono essere importati, gestiti ed esportati per il riutilizzo in altre regole di vincolo personalizzate.
Rules/Constraints Checks
-
Check – utilizzare per avviare il Design Rule Checking (DRC). Le violazioni delle regole di vincolo (ossia quando i limiti specificati e definiti nell'ambito vengono superati) verranno automaticamente indicate nell'ultima colonna della singola regola in violazione, contrassegnata da
, una volta completato il DRC. Il numero totale di violazioni è mostrato in alto a destra dell'editor accanto a
.
È anche possibile usare Tools » Run DRC Rules Check dai menu principali per eseguire il DRC.
Verifica dell'applicazione delle regole
Il Constraints Editor include una funzione di cross-probe che mostra l'ambito dell'oggetto di una regola di vincolo evidenziando visivamente la net e le connessioni nel corrispondente layout PCB. Per eseguire il cross-probe su qualsiasi regola nell'elenco della griglia dell'editor, fare clic con il pulsante destro del mouse sulla relativa voce, quindi scegliere l'opzione Cross Probe dal menu contestuale oppure selezionare Cross Probe dal menu
di una regola advanced.
Impostare Cross Probe View Settings (le opzioni Zoom e Select) nel pannello Properties e usare l'opzione Clear Filter dell'editor PCB per reimpostare l'evidenziazione del cross-probe.

Eseguire il cross-probe dell'oggetto nell'ambito di una regola dal Constraints Editor.
