Defining Design Requirements Using the 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.

Do I have the Constraint Manager?

  • Il Constraint Manager è disponibile in un progetto di progettazione PCB solo se l'opzione Constraint Management è stata abilitata nella finestra di dialogo Create Project dialog al momento della creazione del progetto. Si noti che:

    • Se il Constraint Manager è stato abilitato per il progetto PCB, la finestra di dialogo PCB Rule and Constraints Editor dialog (Design » Rules) non è not disponibile nell'editor PCB.

    • Se il Constraint Manager non è stato not abilitato per il progetto PCB, possono essere utilizzati solo gli approcci precedenti per definire i vincoli di progettazione (uso delle design directives e della finestra di dialogo PCB Rule and Constraints Editor dialog).

    Quando l'opzione System.ConstraintManager è abilitata nella finestra di dialogo Advanced Settings dialog, l'opzione Constraint Management è abilitata per impostazione predefinita nella finestra di dialogo Create Project.

  • Per verificare rapidamente quale approccio alla definizione dei vincoli di progettazione viene utilizzato nel progetto PCB corrente, controlla se il comando Design » Constraint Manager è disponibile nei menu principali dell'editor schematico o PCB quando è aperto un documento schematico/PCB del progetto. Se il comando è presente, per questo progetto viene utilizzato il Constraint Manager. In caso contrario, per questo progetto viene utilizzata la finestra di dialogo PCB Rule and Constraints Editor (Design » Rules nell'editor PCB).

  • Se un progetto PCB utilizza il precedente sistema di gestione delle regole, puoi eseguire la migrazione al Constraint Manager – scopri di più.

  • Se il Constraint Manager è stato abilitato per il progetto PCB, il Constraint Manager verrà visualizzato in modalità View Only quando viene aperto da un utente che non ha accesso alla funzionalità. In questo caso, l'utente potrà vedere, ma non modificare, i vincoli definiti. Il messaggio nella parte superiore del Constraint Manager ti informa quando il Constraint Manager è in modalità View Only ().

Il Constraint Manager è un'interfaccia utente basata su documenti, simile a un foglio di calcolo, che consente di visualizzare, creare e gestire i vincoli di progettazione utilizzati per i progetti PCB.

Alcuni dei vantaggi dell'utilizzo del Constraint Manager, soprattutto per progetti complessi con molte net, classi, ecc., sono:

  • Disponibilità a livello di progetto, che rende l'accesso alla gestione dei vincoli di progettazione simile sia nell'ambito della cattura schematica sia in quello della progettazione PCB.

  • Il passaggio dall'ambito delle regole basato su query alla corrispondenza applicata del tipo di oggetto semplifica la creazione delle regole di vincolo.

  • Uso di insiemi di vincoli per velocizzare il processo di definizione dei vincoli.

  • La priorità delle regole è automatica in base alla gerarchia naturale degli oggetti di progettazione.

  • L'uso di un'interfaccia di presentazione basata su documenti anziché di una finestra di dialogo significa che l'editor schematico e PCB e le relative funzioni rimangono attivi e accessibili.

Accesso al Constraint Manager

È possibile accedere al Constraint Manager selezionando il comando Design » Constraint Manager dai menu principali dell'editor schematico o PCB.

Il comando Constraint Manager non è presente nel menu Design? Verifica se hai il Constraint Manager disponibile – scopri di più.

Accedi al Constraint Manager dall'editor schematico
Accedi al Constraint Manager dall'editor schematico

Accedi al Constraint Manager dall'editor PCB
Accedi al Constraint Manager dall'editor PCB

Le schede documento del Constraint Manager dipendono da come vi si accede, come mostrato nell'immagine seguente.

Tipi di vincolo

Utilizzando i pulsanti in alto a sinistra del Constraint Manager, puoi passare tra le sue viste per definire diversi tipi di vincoli.

Clearances – una matrice che consente di definire le distanze elettriche di isolamento tra classi di net e/o coppie differenziali.

Physical – un elenco di net, coppie differenziali, xNet e relative classi in cui è possibile definire i vincoli fisici per il progetto: larghezze dei conduttori, gap nelle coppie differenziali, ecc. Quando si accede al Constraint Manager dal PCB, le rooms attualmente definite nel documento PCB vengono elencate qui ed è possibile definire vincoli fisici per le rooms.

Electrical – un elenco di net, xNet, e classi di net e xNet, in cui è possibile definire i vincoli elettrici per il progetto: topologia, impedenza, ecc. Anche le coppie differenziali e gli xSignal sono elencati nelle rispettive schede dedicate.

 

Quando si accede al Constraint Manager dall'editor PCB, è disponibile un'ulteriore vista All Rules. Si tratta di una vista dei vincoli di progettazione orientata alle regole, un elenco di tutte le regole nel progetto PCB in cui è possibile creare regole personalizzate basate su query – scopri di più.

Note sull'utilizzo del Constraint Manager:

  • Usa l'opzione Units nel pannello Properties (o le opzioni corrispondenti nel sottomenu Tools » Measurement Units dei menu principali; scorciatoia: Ctrl+Q) per passare tra le unità di misura (mm o mils) in cui i valori vengono mostrati nell'area griglia del Constraint Manager.

  • Usa l'opzione Show Default Values nel pannello Properties (o l'opzione corrispondente nel menu principale View o nel sottomenu View Options del menu contestuale dell'area griglia) per attivare/disattivare la visibilità dei valori predefiniti (ad esempio, valori ereditati da una classe di net o da una coppia differenziale) nel Constraint Manager. Quando mostrati, questi valori predefiniti vengono visualizzati nell'area griglia del Constraint Manager in grigio. I valori personalizzati vengono visualizzati nell'area griglia del Constraint Manager in bianco.

  • Quando ti trovi nella vista Physical o Electrical, usa l'opzione Show Only Object Custom Values nel pannello Properties (o l'opzione corrispondente nel menu principale View o nel sottomenu View Options del menu contestuale dell'area griglia) per attivare/disattivare la visibilità delle voci oggetto con i valori predefiniti (in pratica, per filtrare le voci con valori predefiniti quando l'opzione è abilitata).

  • La copia e l'incolla di valori da/verso le celle sono supportati – usa i comandi del sottomenu Copy/Paste Values dal menu contestuale oppure le scorciatoie Ctrl+C e Ctrl+V.

  • Usa il campo Search in alto a destra del Constraint Manager per filtrare l'elenco degli oggetti inserendo una stringa di ricerca. Fai clic sull'icona  a destra della barra Search per rimuovere la stringa di ricerca attualmente definita.

  • Usa il campo Comment nella parte inferiore del Constraint Manager quando è selezionata una cella per un vincolo/regola per aggiungere un commento a questo vincolo/regola, ad esempio una descrizione significativa dell'uso previsto (). Quando la parte inferiore del Constraint Manager consente di definire vincoli per regole diverse, puoi definire un commento individuale per ciascuna di esse cambiando la regola corrente tramite il menu a discesa Rule ().

  • È necessario eseguire un'azione di salvataggio nel Constraint Manager prima che le modifiche vengano riflesse nel progetto. Usa il comando File » Save (quando si accede al Constraint Manager dallo schematico) oppure File » Save to PCB (quando si accede al Constraint Manager dal PCB) dai menu principali del Constraint Manager o la scorciatoia Ctrl+S per farlo.

  • Al primo salvataggio del Constraint Manager quando vi si accede dal lato schematico, il documento dei vincoli schematici (Constraints.xml) viene aggiunto al progetto e reso disponibile tramite il pannello Projects (nella sottocartella Settings/Constraints). Inoltre, i dati dei vincoli nel documento vengono ricaricati/aggiornati dopo l'aggiornamento del progetto dal Workspace connesso.

  • Se sono presenti modifiche nel progetto schematico o nello stackup dei layer PCB (modifiche che interessano layer e/o profili di impedenza), fai clic sul pulsante  nella parte superiore del Constraint Manager (a cui si accede dal rispettivo editor) per riflettere queste modifiche nel Constraint Manager. Facendo clic su questo pulsante puoi anche importare le direttive dagli schemi nel Constraint Manager – scopri di più. Se nel Constraint Manager sono presenti modifiche non ancora salvate, viene visualizzata una finestra di dialogo di conferma che avvisa che tali modifiche andranno perse.

    Se vengono apportate modifiche al profilo di impedenza nel Layer Stack Manager, facendo clic su nel Constraint Manager verrà aggiornato solo il valore Preferred Width nella regola corrispondente, e non i valori Min Width e Max Width (ove applicabile). Una definizione errata del vincolo viene evidenziata dal fatto che i valori di larghezza diventano rossi nella griglia superiore della vista Physical. È necessario controllare e aggiornare/regolare questi valori secondo necessità. È inoltre necessario eseguire un'azione di salvataggio nel Constraint Manager prima che queste modifiche vengano riflesse nel progetto e rese disponibili per il routing.

  • Le seguenti opzioni globali sono disponibili nella sezione Clearances Settings del pannello Properties  dalle viste Clearances e Physical quando si accede al Constraint Manager sia dallo schematico sia dal PCB:

    • Ignore Pad to Pad clearances within a footprint – usa questa opzione per applicare l’impostazione a tutte le regole di clearance definite. Questa opzione consente di specificare se le clearance tra pad nello stesso footprint del componente devono essere ignorate.

    • Apply zero Keepout clearance – quando questa opzione è abilitata, viene applicata una regola di clearance predefinita, con uno spazio pari a ‘0’, tra un keepout e tutte le altre primitive del progetto. Nota che questa regola non è visibile in nessuna delle viste del Constraint Manager e, pertanto, non può essere modificata. Se disabilitata, verranno seguiti i normali valori della matrice di clearance.

  • Puoi annullare o ripristinare rapidamente le modifiche apportate nel Constraint Manager utilizzando  nell’angolo superiore sinistro dell’area di progettazione oppure usando Edit » Undo/Redo dai menu principali ed è disponibile nella maggior parte delle aree, incluse regole, ambiti e insiemi di vincoli. Come in altre aree del software, le icone/i comandi sono disponibili solo se è stata eseguita un’azione (per annullare) o un annullamento (per ripristinare).

Lavorare con la matrice di clearance

Per impostazione predefinita, la matrice di clearance nella vista Clearances del Constraint Manager include una singola voce da All Net Classes a All Net Classes con cui puoi definire un valore di clearance predefinito tra qualsiasi net del progetto. Usa il controllo Add in alto a sinistra della matrice (oppure fai clic con il pulsante destro su una qualsiasi cella della matrice di clearance e usa il comando Add dal menu contestuale) per mostrare una finestra popup con un elenco delle classi di net e delle classi di coppie differenziali attualmente definite. Seleziona una o più classi richieste (è possibile selezionare più voci di classe usando la tecnica Shift+Click o Ctrl+Click) e fai clic sul pulsante Add. Verranno aggiunte alla matrice una riga e una colonna per ciascuna classe selezionata.

Fai clic su una cella nel punto in cui si intersecano la riga e la colonna di due classi per selezionarla e mostrare le impostazioni dettagliate di clearance nella parte inferiore del Constraint Manager, dove puoi definire valori di clearance specifici tra oggetti diversi e su layer diversi.

Usa il campo Clearance nella parte inferiore per inserire il valore richiesto che verrà applicato a tutti gli abbinamenti di oggetti e a tutti i layer per questa coppia di classi. In alternativa, fai doppio clic su una cella nella matrice nella parte superiore per inserire direttamente il valore richiesto.

Inserisci nella tabella i valori di clearance richiesti per coppie di oggetti specifiche. Nota che la cella nella matrice di clearance mostra l’intervallo dei valori minimo e massimo definiti nella tabella.

  • La modifica multipla all’interno di una riga/colonna selezionata è supportata nelle impostazioni dettagliate di clearance. Fai clic sull’intestazione di una riga o colonna per selezionarla, digita il valore richiesto e premi Enter oppure fai clic per applicare questo valore a tutte le celle della riga/colonna.

  • Nota che se modifichi un valore track-to-primitive, la stessa clearance verrà applicata anche a text-to-primitive.

Note sul lavoro con la vista Clearances:

  • L’inserimento di un valore in una cella della matrice di clearance o nel campo Clearance applicherà automaticamente tale valore a tutti i campi nell’area griglia nella parte inferiore del Constraint Manager quando è selezionata una cella nella matrice di clearance. Devi modificare nell’area griglia solo quando hai bisogno di definire una clearance in base al tipo di oggetto.

  • Nelle impostazioni dettagliate di clearance nella parte inferiore del Constraint Manager, puoi anche abilitare il vincolo Creepage per le classi selezionate e definire il valore di creepage (). Questo vincolo verifica la distanza di creepage tra i segnali interessati sulla superficie della scheda attraverso fori non metallizzati, ritagli e attorno al bordo della scheda.

  • Nelle impostazioni dettagliate di clearance nella parte inferiore del Constraint Manager, puoi anche abilitare il vincolo Z-Axis Clearance per le classi selezionate e definire il valore di clearance sull’asse Z (). Questo vincolo viene utilizzato per verificare le clearance minime tra primitive su diversi layer di rame.

    Questa funzionalità è in Open Beta ed è disponibile quando l’opzione PCB.Rules.ZAxisClearanceRule è abilitata nella finestra di dialogo Advanced Settings dialog.

  • Per reimpostare il valore di clearance per una specifica coppia di oggetti (ad esempio, una coppia da Track a Track) al valore predefinito (cioè al valore definito per la voce da All Net Classes a All Net Classes), seleziona la relativa cella nella tabella inferiore e premi il tasto Delete oppure fai clic con il pulsante destro sulla cella e seleziona il comando Reset to Default dal menu contestuale.

  • Per reimpostare ai valori predefiniti il valore di clearance per tutte le coppie di oggetti di una specifica voce nella matrice di clearance (ad esempio, una voce tra una classe di net e un’altra classe di net), fai clic con il pulsante destro sulla cella corrispondente nella matrice di clearance e seleziona il comando Remove Rule dal menu contestuale.

  • Per rimuovere una classe dalla matrice di clearance, fai clic con il pulsante destro su una qualsiasi cella nella riga di questa classe nella matrice di clearance e seleziona il comando Remove Scope dal menu contestuale.

Quando nel Constraint Manager è impostata una clearance classe-classe, puoi esaminare le classi di net pertinenti degli oggetti nello spazio di progettazione del documento PCB usando la finestra di dialogo Applicable Binary Rules. È possibile accedere alla finestra di dialogo nell’editor PCB facendo clic con il pulsante destro nello spazio di progettazione, selezionando Applicable Binary Rules dal menu contestuale, quindi facendo clic su due oggetti nel progetto. La voce Clearance Constraint nella finestra di dialogo mostrerà le classi di net pertinenti dell’oggetto per le quali sono state definite regole di clearance nel Constraint Manager ().

Configurazione delle clearance per layer

Usando le schede sotto la tabella, puoi anche definire valori di clearance per layer. Usa il controllo Add per aggiungere una scheda per un layer specifico.

  • Nota che quando si accede al Constraint Manager dall’editor schematico, solo i layer Top e Bottom possono essere aggiunti come layer specifici. Quando si accede al Constraint Manager dall’editor PCB, può essere aggiunto qualsiasi layer di segnale attualmente presente nel progetto PCB.

  • Per definire rapidamente i valori per i layer interni ed esterni, puoi anche inserire due valori delimitati da una barra (ad esempio, 5/6) in una cella della matrice di clearance in alto. Il primo valore verrà applicato ai layer interni e il secondo valore verrà applicato ai layer esterni.

  • I vincoli applicati a layer / gruppi di layer più specifici hanno una priorità maggiore, cioè un valore applicato a una coppia di oggetti su un layer specifico (ad esempio, Top Layer o Bottom Layer) avrà una priorità maggiore rispetto a un valore applicato alla stessa coppia di oggetti nel gruppo corrispondente (Inner Layers o Outer Layers), e un valore applicato a una coppia di oggetti nel gruppo Inner Layers o Outer Layers avrà una priorità maggiore rispetto a un valore applicato alla stessa coppia di oggetti nel gruppo All Layers.

Filtraggio delle classi

Per agevolare il lavoro con un gran numero di classi nella vista Clearances, puoi usare la funzione di filtro/raggruppamento. Questa consente di costruire filtri (o raggruppamenti) di classi per permettere il passaggio tra sottoinsiemi mirati della matrice di clearance e lavorare su di essi.

Usa il pulsante in alto a destra della vista Clearances per accedere a una finestra popup da cui puoi creare, modificare, rimuovere e abilitare/disabilitare i filtri.

Per creare un nuovo filtro, fai clic sul pulsante e poi fai clic sul pulsante nella finestra popup visualizzata.

Definisci un nome univoco per il nuovo filtro, abilita il gruppo di classi richiesto. Usa il campo Search per filtrare l’elenco in base alla stringa di ricerca inserita e usa il controllo Reset per disabilitare rapidamente tutte le voci abilitate nell’elenco. Una volta selezionate le classi richieste, fai clic su .

Una volta creato un filtro, usa i controlli disponibili nella finestra popup per abilitarlo, disabilitarlo, modificarlo o rimuoverlo secondo necessità. Usa il controllo Clear All per disabilitare rapidamente tutti i filtri abilitati. Nota che quando è abilitato almeno un filtro, il pulsante in alto a destra viene mostrato come .

 

Lavorare con i vincoli fisici ed elettrici

Quando ti trovi nella vista Physical o Electrical del Constraint Manager, fai clic su una cella nell’area griglia per mostrare le impostazioni delle regole corrispondenti nella parte inferiore del Constraint Manager, dove puoi definirne i valori di vincolo.

 

I seguenti vincoli possono essere configurati nella vista Physical

  • Width – questo vincolo specifica la larghezza delle tracce posizionate sui layer di segnale.

  • Diff Pair Gap – questo vincolo specifica la clearance (o spazio) tra le net nelle coppie differenziali incluse nell’ambito.

  • Clearance – questo vincolo specifica la clearance minima consentita tra gli oggetti delle net incluse nell’ambito e gli oggetti di altre net nel progetto.

  • Via Style– questo vincolo specifica lo stile delle via che possono essere utilizzate durante il routing. È possibile definire valori specifici Min/Max/Preferred per il diametro della via e la dimensione del foro (Min/Max Preferred) oppure, quando il Constraint Manager viene aperto dal PCB o durante la configurazione dei vincoli per uno specifico layer stack (learn more), utilizzare i template disponibili per il progetto della scheda (Templates).

  • Polygon Connect – questo vincolo specifica lo stile della connessione da un pad di componente, o da una via instradata, a un polygon pour.

    Utilizzare il controllo Advanced per passare dalla modalità semplice, che consente di definire uno stile di connessione generico applicabile a tutti i pad e le via, alla modalità avanzata, nella quale è possibile specificare stili di connessione diversi per ciascuna delle entità di collegamento (pad passanti, pad SMD e via).

    Per ulteriori informazioni sui valori dei vincoli, fare riferimento alla pagina Plane Rule Types.

  • Same Net Clearance – questo vincolo specifica la distanza minima consentita tra due oggetti primitivi qualsiasi appartenenti alla stessa net (ad esempio, tra una via e un pad sulla stessa net, oppure tra due segmenti di traccia nella stessa net).

  • Routing Neck Down – questo vincolo specifica la lunghezza massima consentita delle route continue la cui larghezza è compresa tra i valori Min Width e Preferred Width definiti dal vincolo Width applicabile.

I seguenti vincoli possono essere configurati nella vista Electrical:

  • La scheda Nets:

    • Topology – questo vincolo specifica la topologia da utilizzare durante il routing delle net sulla scheda. La topologia di una net è la disposizione o il modello delle connessioni pin-to-pin.

      Per ulteriori informazioni sui valori dei vincoli, fare riferimento alla pagina Routing Rule Types.

      È possibile utilizzare una topologia personalizzata per definire xSignals. Per ulteriori informazioni, fare riferimento alla sezione Defining xSignals riportata di seguito.

    • Impedance – questo vincolo specifica l'impedenza minima e massima consentita per la net.

    • All Layer Sets – questo vincolo specifica quali layer possono essere utilizzati per il routing.

    • Maximum Via Count – questo vincolo specifica il numero massimo consentito di via.

    • Min / Max Total Length – questo vincolo specifica le lunghezze minime e massime di una net.

    • Max Stub Length – questo vincolo specifica la lunghezza massima consentita dello stub per una net con topologia a daisy chain.

    • Max Via Stub Length – uno stub è la lunghezza del barrel di una via o di un pad che sporge oltre l'ultimo layer di segnale utilizzato a cui la via/il pad è collegato. Il back drilling verrà applicato alle via/ai pad idonei nelle net di destinazione, in conformità con le caselle di controllo Layer del lato scheda abilitate e con le coppie di back drill definite nella scheda Back Drills di Layer Stack Manager.

      Per ulteriori informazioni sui valori dei vincoli, fare riferimento alla pagina High Speed Rule Types.

      Per ulteriori informazioni sul back drilling, fare riferimento alla pagina Controlled Depth Drilling (Back Drilling).

  • La scheda Diff Pairs :

    • Impedance – questo vincolo specifica l'impedenza minima e massima consentita per la net.

    • Gap – questo vincolo specifica la distanza (o gap) tra le net nelle coppie differenziali incluse nell'ambito.

    • Width – questo vincolo specifica la larghezza consentita da utilizzare per le tracce durante il routing della coppia differenziale.

    • Max Uncoupled Length – questo vincolo specifica il valore della lunghezza massima consentita non accoppiata tra le net positiva e negativa all'interno della coppia differenziale.

    • Tolerance – questo vincolo specifica una tolleranza di lunghezza nel confronto con la net più lunga della coppia differenziale.

    • Dynamic Phase Tolerance – questo vincolo specifica il disallineamento di fase consentito tra le tracce di una coppia differenziale oltre il quale è richiesta una compensazione.

    • Matching Distance – questo vincolo specifica la distanza dopo il superamento della tolleranza per la quale deve essere applicata la compensazione.

  • La scheda xSignals:

    • Tolerance – questo vincolo specifica una tolleranza di lunghezza nel confronto di ciascun xSignal all'interno della classe xSignal con l'xSignal selezionato come Matching Target per la classe.

Note sull'utilizzo delle viste Physical o Electrical:

  • Il Constraint Manager definisce automaticamente le priorità delle regole in queste viste: la priorità è ordinata da All (più bassa) a classe di oggetti fino a oggetto (più alta).

  • Per rimuovere i valori di vincolo personalizzati definiti da una regola specifica (in pratica, reimpostando i valori di questa regola ai valori predefiniti), fare clic con il pulsante destro del mouse sulla cella corrispondente nella griglia e selezionare il comando Remove rule dal menu contestuale.

  • Per rimuovere i valori di vincolo personalizzati di tutte le regole per un oggetto, fare clic con il pulsante destro del mouse su una qualsiasi cella della riga relativa a questo oggetto nella griglia e selezionare il comando Remove rules from scope dal menu contestuale.

  • Tutti i nodi, ad eccezione di quelli predefiniti (ad esempio, All Nets), sono compressi per impostazione predefinita nelle viste Physical Electrical . È possibile utilizzare i comandi del menu contestuale accessibile con il pulsante destro del mouse Expand All e Collapse All per controllare i nodi della griglia.

  • Quando viene immesso un valore nella griglia superiore della vista Physical per una singola net o xNet (Min Width o Preferred Width), una coppia differenziale (Min WidthPreferred WidthPreferred Diff Pair Gap) o una classe di net/xNet/coppie differenziali, questo valore verrà propagato ai campi di larghezza corrispondenti (Min Width/Preferred Width/Max Width) o di gap (Min Gap/Preferred Gap/Max Gap) nelle aree dei vincoli sottostanti. Si noti che un valore immesso verrà propagato ad altri campi solo se per l'oggetto non è definita la regola specifica.

  • Quando si definiscono i valori per le larghezze di routing minima, massima e preferita e per i gap delle coppie differenziali nella vista Physical, la tabella Values by Layer nella parte inferiore della vista evidenzierà le voci non valide in rosso. Ciò può verificarsi, ad esempio, quando si specifica un valore minimo del vincolo maggiore del valore massimo del vincolo. La definizione errata del vincolo viene ulteriormente evidenziata dal fatto che i valori di larghezza/gap diventano rossi nella griglia superiore della vista.

Configurazione dei valori dei vincoli per layer

Quando si accede al Constraint Manager dallo schematico, è possibile configurare i vincoli Width e Differential Pairs Routing per i layer in uno specifico layer stack scelto.

Utilizzando il menu a discesa nella parte superiore del Constraint Manager, selezionare una voce per uno specifico documento PCB del progetto di progettazione. Se il PCB selezionato contiene più layer stack, è possibile scegliere lo stack richiesto per il quale devono essere configurati i vincoli utilizzando le schede nella parte inferiore del Constraint Manager quando è selezionata la regola corrispondente. Inoltre, è possibile utilizzare un profilo di impedenza scelto (se definito come parte del layer stack del PCB selezionato).

Definizione delle coppie differenziali

Le coppie differenziali vengono create dalla vista Physical oppure dalla scheda Diff Pairs della vista Electrical del Constraint Manager. Affinché il Constraint Manager possa creare coppie differenziali a partire dalle net, le net da accoppiare devono avere uno schema di denominazione coerente (ovvero, devono avere una radice comune seguita da un suffisso positivo/negativo coerente, ad esempio, TX0_P e TX0_N).

Fare clic con il pulsante destro del mouse in qualsiasi punto dell'area della griglia della vista Physical o della scheda Diff Pairs della vista Electrical e selezionare il comando Differential Pairs » Create Differential Pairs From Nets dal menu contestuale per aprire la finestra di dialogo Create Differential Pairs From Nets e definire le opzioni di creazione delle coppie differenziali. I filtri nella parte superiore della finestra di dialogo consentono di individuare rapidamente queste net in termini di classe di net a cui appartengono e dello specifico fattore distintivo utilizzato per distinguere le net positiva e negativa in un accoppiamento previsto, ad esempio, _P e _N. È inoltre possibile definire un prefisso da aggiungere agli oggetti coppia differenziale creati e determinare a quale classe di coppie differenziali verranno aggiunti.

Per ciascun oggetto coppia differenziale, la finestra di dialogo elenca le net positiva e negativa che lo compongono. Per impostazione predefinita, tutti i potenziali oggetti coppia differenziale sono selezionati per la creazione e quelli singoli possono essere esclusi deselezionando la casella di controllo Create

Quando tutte le opzioni sono impostate come richiesto, fare clic sul pulsante  – gli oggetti coppia differenziale verranno creati e mostrati nella vista Physical del Constraint Manager, con le net costituenti elencate sotto le rispettive voci.

Le coppie differenziali possono anche essere create da xNets. Utilizzare il menu a discesa nella parte superiore della finestra di dialogo Create Differential Pairs From Nets per selezionare All xNets o una specifica classe xNet. Quando le altre opzioni nella finestra di dialogo sono configurate come richiesto, fare clic sul pulsante  per creare le coppie differenziali di conseguenza.

Si noti che il concetto di coppia differenziale xNet esiste solo all'interno del Constraint Manager. Quando viene salvata nel PCB, viene "spacchettata" come normali coppie differenziali (per tutte le coppie di net contenute negli xNet e con tutte le regole replicate tra di esse). Quando si accede nuovamente al Constraint Manager, le coppie differenziali costituenti (normali) vengono ricombinate, se possibile, nella coppia differenziale xNet. Si noti inoltre che le coppie differenziali xNet vengono spacchettate e ricombinate durante l'importazione dalle direttive dello schematico e nelle operazioni di sincronizzazione del documento. Per quanto riguarda queste ultime, l'oggetto ECO Constraint Manager Data viene utilizzato per trasportare le definizioni delle coppie differenziali xNet e facilitare quindi la ricombinazione delle coppie differenziali in coppie differenziali xNet.

Per rimuovere una coppia differenziale, fare clic con il pulsante destro sulla relativa voce e selezionare il comando Differential Pairs » Remove Differential Pair dal menu contestuale. È anche possibile rimuovere più coppie differenziali selezionando le relative voci con la tecnica Ctrl+Click, Shift+Click o Click, Hold&Drag, facendo clic con il pulsante destro sulla selezione e scegliendo il comando Differential Pairs » Remove Differential Pair dal menu contestuale.

La scheda Diff Pairs della vista Electrical può essere utilizzata anche per gestire esplicitamente le coppie differenziali. In questa scheda viene mostrato un elenco gerarchico delle coppie differenziali presenti nel progetto. Selezionare una cella relativa a una coppia differenziale o a una classe di coppie differenziali per visualizzarne i vincoli nella parte inferiore del Constraint Manager.

Definizione delle xNet

Un percorso da un componente sorgente a un componente di destinazione, che passa attraverso uno o più componenti in serie, può essere definito come una xNet.

Gli elenchi separati da virgole dei prefissi per i designatori dei componenti che possono essere usati come componenti sorgente o di destinazione (Sources/Destinations) e dei componenti in serie (Discretes) possono essere definiti nell'area xNets Creation della scheda Options del dialogo Project Options.

L'area xNets Creation della scheda Options del dialogo Project Options
L'area xNets Creation della scheda Options del dialogo Project Options

Un esempio di percorso che può essere definito come xNet nel Constraint Manager (in base alle impostazioni di creazione delle xNet mostrate sopra)
Un esempio di percorso che può essere definito come xNet nel Constraint Manager (in base alle impostazioni di creazione delle xNet mostrate sopra)

Nella vista Physical o Electrical del Constraint Manager (quando vi si accede da uno schematico o da un PCB), fare clic con il pulsante destro su una net da includere in una nuova xNet e selezionare il comando xNets » Create xNets From Selected Nets dal menu contestuale. Verrà creata una nuova xNet e mostrata nelle viste Physical o Electrical del Constraint Manager, con le net costituenti elencate sotto la relativa voce.

La generazione delle xNet supporta anche componenti seriali con più di due pin. Sono supportati i seguenti componenti seriali:

  • Dual-inline component with an even number of pins – le xNet possono essere generate dalle net collegate al primo e all'ultimo pin del componente, poi al secondo e al penultimo pin, e così via. ()

  • Single-inline component with an even number of pins – le xNet possono essere generate dalle net collegate al primo e al secondo pin del componente, poi al terzo e al quarto pin, e così via. () Si noti che il componente deve includere un parametro denominato PinPairsConfiguration con valore SIP; in caso contrario, le xNet verranno generate come nel caso del componente dual-inline.

  • Component with an odd number of pins – viene generata una xNet dalle net collegate a tutti i pin del componente. ()

Per rimuovere una xNet, fare clic con il pulsante destro sulla relativa voce e selezionare il comando xNets » Remove xNet dal menu contestuale. È anche possibile rimuovere più xNet selezionando le relative voci con la tecnica Ctrl+Click, Shift+Click o Click, Hold&Drag, facendo clic con il pulsante destro sulla selezione e scegliendo il comando xNets » Remove xNet dal menu contestuale.

Definizione delle xSignals

Dal Constraint Manager è anche possibile definire le xSignals – percorsi di segnale definiti dall'utente tra due nodi nel PCB. Quando ci si trova nella vista Electrical del Constraint Manager, selezionare la cella nella colonna Topology per una net o una xNet, scegliere Custom dal menu a discesa nella parte inferiore del Constraint Manager e quindi usare i controlli forniti per definire la topologia personalizzata e selezionare le xSignals corrispondenti.

Di seguito viene descritto e illustrato un esempio di definizione di xSignals per una xNet mostrata sotto.

Un esempio di xNet per la quale devono essere create xSignals.
Un esempio di xNet per la quale devono essere create xSignals.

È possibile definire una topologia personalizzata usando il grafico della topologia nella parte inferiore del Constraint Manager. Usare il menu del clic destro nell'area del grafico per aggiungere e rimuovere nodi e cambiarne il tipo da Source a Destination e viceversa, quindi Click, Hold&Drag i nodi per definire la topologia.

L'elenco delle xSignals proposte (denominate secondo lo schema <SourceNetName> (<SourcePinDesignator> → <DestinationPinDesignator>)) appare a destra dell'area della griglia. L'elenco è diviso in due gruppi: xSignals che vanno da una sorgente a una destinazione (S-T) e xSignals che vanno da una destinazione a un'altra (T-T). Usare le caselle di controllo per i gruppi o per le singole xSignals per selezionare/deselezionare le xSignals da creare. Le xSignals selezionate appariranno nella scheda xSignals della vista Electrical.

Un esempio di creazione di xSignals usando il grafico della topologia

In alternativa, è possibile definire una topologia personalizzata usando la tabella. Aggiungere i pin e i componenti seriali richiesti usando la colonna Pin, selezionarne i ruoli (Source, Destination o Discrete) usando la colonna Role e definire l'ordine desiderato usando la colonna Order.

Un esempio di creazione di xSignals usando l'interfaccia utente tabellare

La funzionalità del grafico della topologia è disponibile quando l'opzione ConstraintManager.TopologyGraphAvailable è abilitata nella finestra di dialogo Advanced Settings. Quando l'opzione è disabilitata, viene utilizzata l'interfaccia utente tabellare.

  • Per i nomi delle xSignals create che possono essere visualizzati nella scheda xSignals del Constraint Manager o nel documento PCB, viene utilizzato il seguente schema:

    <SourceNetName>_<SourcePinDesignator>_<DestinationPinDesignator>

  • Per propagare rapidamente la topologia personalizzata definita a xNet/net e creare più xSignals con una struttura simile, è possibile creare un Constraint Set per una xNet/net con topologia personalizzata e quindi applicare questo Constraint Set ad altre xNet/net. Quando si modifica un Constraint Set che include una topologia personalizzata, le modifiche alla topologia verranno propagate agli altri oggetti a cui è applicato questo Constraint Set.

  • Una xSignal può essere rimossa dalla scheda xSignals della vista Electrical. Per farlo, fare clic con il pulsante destro su una xSignal e selezionare il comando xSignals » Remove xSignal dal menu contestuale.

  • Le xSignals associate vengono rimosse automaticamente quando si passa dalla topologia Custom a una delle topologie predefinite per la net/xNet selezionata.

  • Quando viene selezionata la topologia Custom per una net a 2 pin o una xNet semplice (con una sorgente, una destinazione e un componente discreto tra ogni coppia di net), i relativi pin vengono aggiunti automaticamente come nodi della topologia personalizzata e la xSignal proposta viene selezionata automaticamente. Sono supportati anche i casi in cui una xNet attraversa elementi discreti con più di due pin (ad esempio, una rete di resistori in un unico componente).

Per una classe di xSignal creata (per i dettagli, fare riferimento alla sezione Defining Classes qui sotto), è possibile definire il vincolo Tolerance e selezionare una xSignal all'interno di questa classe come Matching Length. Quando si accede al Constraint Manager dal lato PCB, sono disponibili anche le colonne Actual Value e Margin.

Nel documento PCB, le xSignals definite possono essere esplorate dal pannello PCB nella modalità xSignals. Inoltre, verranno creati i corrispondenti From-Tos e potranno essere esplorati dal pannello PCB nella modalità From-To Editor.

Nel documento PCB, le xSignals generate possono essere esplorate dal pannello PCB nella modalità xSignals.

Verranno generati anche i From-Tos, che potranno essere esplorati dal pannello PCB nella modalità From-To Editor.

 

Definizione delle classi

Il Constraint Manager consente di definire classi di net, coppie differenziali, xNet e xSignals.

  • Per aggiungere oggetti nella vista Physical o Electrical del Constraint Manager a una classe esistente, selezionare più voci di oggetti usando la tecnica Ctrl+ClickShift+Click o Click, Hold&Drag, quindi fare clic con il pulsante destro sulla selezione e scegliere la classe richiesta dal sottomenu Classes » Add Selected to Class del menu contestuale.

    Quando sono presenti più di 30 classi, viene presentato il comando Classes » Add Selected to Class » Existing Class invece dell'elenco delle classi. Usare questo comando per accedere a una finestra di dialogo in cui è possibile selezionare una classe esistente alla quale aggiungere gli oggetti selezionati.

  • Per aggiungere una nuova classe di oggetti elencati nella vista Physical o Electrical del Constraint Manager, selezionarli, quindi fare clic con il pulsante destro sulla selezione e scegliere il comando Classes » Add Selected to Class » New Class dal menu contestuale per aprire la finestra di dialogo Add Class. Definire il Name della classe (che deve essere univoco e non vuoto) e l'insieme dei membri della classe. Gli oggetti selezionati prima di accedere alla finestra di dialogo saranno già presenti nell'elenco Member. Se necessario, configurare ulteriormente l'insieme dei membri della classe spostando le voci degli oggetti tra gli elenchi Non-Members e Member usando i pulsanti freccia.

  • In alternativa, fare clic con il pulsante destro nell'area della griglia e selezionare il comando Classes » Add Class nella vista Clearances o Electrical o un comando dal sottomenu Classes » Add Class (per aggiungere una classe di net) per accedere alla finestra di dialogo Add Class. Accedendo alla finestra di dialogo in questo modo, gli elenchi Member saranno inizialmente vuoti.

  • Per rimuovere oggetti da una classe alla quale sono attualmente aggiunti, selezionali, quindi fai clic con il pulsante destro del mouse sulla selezione e scegli il comando Classes » Remove Selected from Class dal menu contestuale.

  • Per modificare una classe, fai clic con il pulsante destro del mouse sulla relativa voce e seleziona il comando Classes » Edit Class dal menu contestuale per accedere alla finestra di dialogo Edit Class, in cui puoi modificare il nome e i membri della classe.

  • Per rimuovere una classe esistente, fai clic con il pulsante destro del mouse sulla relativa voce e scegli il comando Classes » Remove Class dal menu contestuale. Puoi anche rimuovere più classi selezionando le relative voci tramite la tecnica Ctrl+Click, Shift+Click o Click, Hold&Drag, facendo clic con il pulsante destro del mouse sulla selezione e scegliendo il comando Classes » Remove Class dal menu contestuale.

In alternativa, puoi usare la finestra di dialogo Object Class Explorer per aggiungere, modificare e rimuovere classi. Fai clic con il pulsante destro del mouse nell'area della griglia e seleziona il comando Classes » Class Explorer dal menu contestuale per aprire la finestra di dialogo.

Il riquadro ad albero delle cartelle sul lato sinistro della finestra di dialogo elenca i tipi di classi di oggetti supportati e le classi di oggetti esistenti di ciascun tipo.

  • Fai clic sulla cartella radice Object Classes per accedere, nell'area principale di modifica della finestra di dialogo, a un elenco riepilogativo di tutte le classi specifiche definite in tutti i tipi di classi di oggetti.
  • Fai clic su una cartella figlia di un tipo di classe di oggetti per accedere a un elenco riepilogativo di tutte le classi specifiche definite per quel tipo.
  • Fai clic sulla voce di una classe specifica (oppure fai doppio clic sulla relativa voce in un elenco riepilogativo) per accedere ai controlli per la gestione dell'appartenenza degli oggetti a quella classe.

Per aggiungere una nuova classe definita dall'utente dalla finestra di dialogo Object Class Explorer, fai clic con il pulsante destro del mouse all'interno della categoria di classe che desideri creare e scegli Add Class dal menu contestuale. Per rinominare o eliminare una classe definita dall'utente, fai clic con il pulsante destro del mouse sul suo nome e scegli rispettivamente Rename Class o Delete Class.

Le classi di sistema predefinite (All Nets, All Differential Pairs, All xNets, All xSignals) non possono essere modificate, rinominate o eliminate. Nella finestra di dialogo Object Class Explorer, queste classi si distinguono perché i loro nomi sono racchiusi tra <>.

Set di vincoli

Per velocizzare il processo di definizione dei vincoli per gli oggetti, il Constraint Manager offre la possibilità di salvare un insieme di vincoli come Set di vincoli e quindi applicare questo Set di vincoli agli oggetti.

Per salvare come Set di vincoli l'insieme di vincoli attualmente definito per un oggetto, fai clic con il pulsante destro del mouse su una cella di questo oggetto e seleziona il comando Save as Constraint Set dal menu contestuale. Nel popup New Constraint Set, inserisci il nome desiderato del Set di vincoli (che deve essere univoco e non vuoto) e fai clic su Create.

Un Set di vincoli appena creato verrà applicato all'oggetto da cui è stato creato. Per applicare un Set di vincoli a un altro oggetto, fai clic con il pulsante destro del mouse sulla relativa cella e seleziona il Set di vincoli richiesto dal sottomenu Select Constraint Set del menu contestuale. Le celle a cui è applicato un Set di vincoli si distinguono per un simbolo nell'angolo superiore sinistro (ad esempio, ) e, nelle viste Physical o Electrical, il nome del Set di vincoli applicato verrà riportato nella colonna Constraint Set.

Per modificare i valori di un Set di vincoli esistente, seleziona un oggetto a cui è applicato questo Set di vincoli e fai clic sul pulsante . Modifica i valori dei vincoli secondo necessità, quindi fai clic sul pulsante Save nel popup visualizzato per salvare le modifiche. Le modifiche verranno applicate a tutti gli oggetti per i quali quel Set di vincoli è attualmente selezionato.

I Set di vincoli attualmente definiti sono elencati nell'area Constraint Sets del pannello Properties. Fai clic sulla voce di un Set di vincoli per mostrarne i valori dei vincoli. Un Set di vincoli selezionato nel pannello Properties può essere rimosso facendo clic sul pulsante  nella parte inferiore dell'area Constraint Sets. Gli oggetti per i quali era stato selezionato il Set di vincoli rimosso manterranno i valori dei vincoli applicati da questo Set di vincoli prima della sua rimozione.

Quando si accede al Constraint Manager dallo schematico e si configurano vincoli per diversi stack di layer (vedi Configurazione dei valori dei vincoli per layer per i dettagli), i set di vincoli ricordano in quale stack di layer sono stati creati. Per lo stack di layer attualmente scelto, non è possibile assegnare o modificare un set di vincoli creato per uno stack di layer diverso. In questo caso, nel pannello Properties verrà visualizzato il messaggio This Constraint Set was created for a different layer stack ().

Importazione delle direttive dagli schematici

Questa funzionalità è disponibile quando l'opzione ConstraintManager.ImportFromDirectives è abilitata nella finestra di dialogo Advanced Settings dialog.

Puoi importare classi di net e coppie differenziali, coppie differenziali e vincoli dalle direttive di progettazione parameter set e differential pair, posizionate e definite nei documenti sorgente dello schematico, nel Constraint Manager. Per farlo, fai clic sul pulsante  quando il Constraint Manager è aperto dal lato schematico. La finestra di dialogo Refresh Constraint Manager mostrerà un riepilogo dell'importazione dallo schematico al Constraint Manager che verrà completata facendo clic sul pulsante  nella finestra di dialogo.

È presente un'indicazione dello stato di sincronizzazione tra un vincolo nel Constraint Manager e l'equivalente definito in una direttiva posizionata su uno schematico.

  • Quando un oggetto nello schematico ha una direttiva parameter set o differential pair posizionata su di esso e questa direttiva ha valori di vincolo diversi dai valori definiti per lo stesso oggetto nel Constraint Manager, questi valori saranno contrassegnati con una barra arancione sul lato sinistro della cella corrispondente nella vista Physical o Electrical del Constraint Manager quando il Constraint Manager è aperto da uno schematico (ad esempio, ).

  • Quando i valori del vincolo sono sincronizzati tra il Constraint Manager e la direttiva, l'indicazione cambia in una barra verde (ad esempio, ).

È presente anche un'indicazione dello stato di sincronizzazione tra classi di net, coppie differenziali e classi di coppie differenziali importate dalle direttive. Le modifiche (elementi nuovi/rimossi) vengono rilevate, con un'indicazione delle incoerenze che richiedono sincronizzazione tramite una barra arancione a sinistra del nome dell'oggetto corrispondente (ad esempio, ). Lo stato sincronizzato è indicato da una barra verde (ad esempio, ).

Note sull'importazione delle direttive nel Constraint Manager:

  • Eventuali vincoli esistenti già definiti per net/classi di net/coppie differenziali/classi di coppie differenziali tramite il Constraint Manager avranno la precedenza e verranno mantenuti durante l'elaborazione di un'importazione. Pertanto, se un valore di vincolo sincronizzato con una direttiva viene modificato nel Constraint Manager dopo l'importazione, non verrà sincronizzato dopo una successiva nuova importazione.

  • Dopo aver sincronizzato i dati importando dati dalle direttive nel Constraint Manager e aver salvato le modifiche nel Constraint Manager:

    • Le direttive importate si distinguono nello spazio di progettazione per il colore blu e per l'uso di un simbolo leggermente diverso ().

    • Le voci per classi e regole importate nel Constraint Manager possono essere filtrate usando il pulsante Constraint Manager nella parte superiore dell'area Parameters del pannello Properties.

    • Per una direttiva parameter set collegata a un singolo filo, i dati associati dal Constraint Manager (nome della classe di net/coppia differenziale e impostazioni delle regole) possono essere visualizzati vicino a tale direttiva sul foglio schematico. Per una direttiva parameter set che include classi di net definite ed è collegata a una blanket, dopo la sincronizzazione/importazione con/nel Constraint Manager, è anche possibile attivare/disattivare la visualizzazione delle informazioni della direttiva di classe di net nello spazio di progettazione. Per una direttiva differential pair collegata a una blanket, è possibile attivare/disattivare la visualizzazione delle informazioni sulla classe di coppie differenziali e sulle regole associate nello spazio di progettazione dopo la sincronizzazione/importazione con/nelle direttive nel Constraint Manager. Usa il controllo di visibilità () a sinistra della voce dati corrispondente nel pannello Properties quando la direttiva è selezionata.

    • I controlli per aggiungere una nuova classe di net, classe di coppie differenziali o classe di componenti esistente saranno disattivati nel pannello Properties per le direttive corrispondenti.

    • I controlli per aggiungere una nuova regola o modificare/rimuovere una regola esistente saranno comunque disponibili nel pannello Properties per le direttive corrispondenti. Inoltre, puoi modificare il nome di una classe di net. Per applicare ai dati nel Constraint Manager le modifiche apportate alle regole e/o al nome della classe di net di una direttiva già importata, fai clic sul pulsante  quando il Constraint Manager è aperto dal lato schematico.

  • Per le regole aggiunte a una direttiva parameter set che non sono presenti nelle viste Physical e Electrical, tali regole verranno create automaticamente come regole avanzate presentate nella vista All Rules view quando il Constraint Manager è aperto dal PCB. Le regole avanzate vengono create al completamento dell'importazione delle direttive e del successivo ECO dallo schematico al PCB.

  • Per consentire l’importazione nel Constraint Manager delle classi di net definite tramite direttive, deve essere abilitata l’opzione Generate Net Classes nella scheda Class Generation della finestra di dialogo Project Options. Si noti che, se le classi di net sono state importate nel Constraint Manager e successivamente l’opzione Generate Net Classes è stata disabilitata, una successiva importazione nel Constraint Manager proporrà la rimozione delle classi di net importate. 

In uno schema vengono posizionate direttive di parameter set e di coppia differenziale. Queste direttive definiscono quanto segue:

  • Un vincolo di Width per la net A00.

  • Una classe di net (Control) e un vincolo di Width per la net A09.

  • Una coppia differenziale di net DQS0R_P e DQS0R_N.

Nella vista Physical del Constraint Manager, le celle relative ai vincoli di larghezza delle net A00 e A09 presentano una barra arancione che indica che questi valori non sono sincronizzati con le direttive.

Fare clic sul pulsante . Si aprirà la finestra di dialogo Refresh Constraint Manager, nella quale è possibile esaminare i dati da importare nel Constraint Manager. Dopo la verifica, fare clic sul pulsante per importare tutti i dati dalle direttive.

I vincoli di Width, la classe di net e la coppia differenziale sono ora importati nel Constraint Manager. Le celle relative ai vincoli di Width di A00 e A09, così come le celle della classe di net Control e della coppia differenziale DQS0R, presentano ora una barra verde che indica che i relativi valori/membri sono sincronizzati con la direttiva.

Le direttive cambieranno aspetto nello spazio di progettazione schematico. Sebbene sia ancora possibile aggiungere, modificare e rimuovere regole nelle proprietà della direttiva, i controlli per aggiungere, modificare e rimuovere classi saranno ora disattivati.

 

Modifica delle direttive importate da documenti di sola lettura

Le direttive importate da documenti di sola lettura (ad esempio device sheet e managed sheet) non possono essere modificate se l’opzione Make Device Sheets In Projects Read-Only è abilitata (selezionata) nella pagina Data Management - Device Sheets della finestra di dialogo Preferences.

Quando l’opzione è disabilitata (deselezionata), le direttive possono essere modificate. Dopo che le direttive sono state importate (con l’opzione abilitata), la regola viene evidenziata in blu nel Constraint Manager.

Importazione ed esportazione di vincoli e set di vincoli

È possibile importare ed esportare vincoli e set di vincoli tra progetti. Per accedere a questa funzione , fare clic con il pulsante destro del mouse nella vista ClearancesPhysical, o Electrical del Constraint Manager, quindi selezionare Import oppure Export.

Dopo aver selezionato Import, si apre la finestra di dialogo standard File Explorer, nella quale è possibile selezionare il vincolo/set di vincoli desiderato (*.CstrDot ) da importare nel progetto. Si apre la finestra di dialogo Constraints to Import, nella quale è possibile selezionare i vincoli/set di vincoli da importare nel progetto corrente. I vincoli/set di vincoli selezionati verranno applicati agli oggetti corrispondenti nel progetto di destinazione.

  • Se una net selezionata per l’importazione non esiste nel progetto di destinazione, verrà aggiunta una voce corrispondente nel Constraint Manager. Poiché tale net non esiste nel progetto, la voce sarà contrassegnata con l’icona . I valori dei vincoli possono essere copiati da questa voce e incollati in un oggetto esistente. Il problema può essere risolto aggiungendo al progetto una net con lo stesso nome e quindi aggiornando i dati nel Constraint Manager. In alternativa, un oggetto non corrispondente può essere rimosso dal Constraint Manager facendo clic con il pulsante destro sulla relativa voce e selezionando Delete unmatched object ().

  • Se una coppia differenziale o una xNet selezionata per l’importazione non esiste nel progetto di destinazione, non verrà aggiunta al progetto.

  • Se una classe di net / coppia differenziale / xNet selezionata per l’importazione non esiste nel progetto di destinazione, verrà aggiunta automaticamente al progetto.

Exporting Constraints and Constraint Sets

Dopo aver selezionato una o più celle nella vista Clearances o una o più righe nella vista Physical o Electrical e aver quindi scelto Export, si apre la finestra di dialogo Constraints to Export con i vincoli e i set di vincoli per tutti gli oggetti selezionati prima di scegliere il comando elencato nella griglia. Selezionare i vincoli/set di vincoli che si desidera esportare utilizzando le caselle di controllo (i vincoli relativi alla vista corrente saranno selezionati nella finestra di dialogo per impostazione predefinita). Dopo aver fatto clic sul pulsante Export items, si apre la finestra di dialogo standard File Explorer, nella quale è possibile assegnare un nome e salvare i vincoli/set di vincoli. Il file verrà esportato con estensione *.CstrDot  e potrà quindi essere importato in un altro progetto.

Lavorare con tutte le regole sul lato PCB

Quando si accede al Constraint Manager dall’editor PCB, è disponibile la vista All Rules, nella quale è presente un elenco di tutte le regole del progetto PCB. Da qui è possibile creare regole avanzate che includono espressioni di query più complesse nel relativo ambito di corrispondenza.

  • Le regole avanzate (elencate sotto gli elenchi Advanced Rules nella vista All Rules ) hanno la precedenza sulle regole definite nelle altre viste del Constraint Manager (e elencate sotto gli elenchi Basic Rules nella vista All Rules ). Le priorità delle regole avanzate possono essere ridefinite digitando le priorità richieste (1 è la priorità più alta) nella colonna Priority (). Le priorità delle regole elencate sotto gli elenchi Basic Rules non possono essere ridefinite.

  • Ogni coppia di classi per cui sono configurati vincoli di clearance nella matrice di clearance verrà presentata con una propria regola di base nella vista All Rules quando è selezionato il tipo di regola Clearance della categoria Electrical. Si noti che, se nella matrice di clearance sono configurati valori di vincolo per layer diversi (vedere i dettagli sopra), la coppia corrispondente sarà comunque rappresentata da una singola regola di base nella vista All Rules e i valori applicati a layer / gruppi di layer più specifici avranno una priorità più alta.

  • Utilizzare la colonna Comment per aggiungere un commento a una regola, ad esempio una descrizione significativa dell’uso previsto della regola.

Creazione di una nuova regola avanzata

Per creare una nuova regola avanzata nella vista All Rules del Constraint Manager, selezionare Add Advanced Rule dal menu contestuale del clic destro (oppure utilizzare il pulsante  nella parte inferiore del Constraint Manager quando nessuna regola è selezionata nell’area della griglia), quindi immettere un ambito di corrispondenza basato su query e i parametri del vincolo nella griglia a colonne o nella rappresentazione grafica inferiore.

Javascript ID: CM_AllRules_AddAdvancedRule_AD25_8

La configurazione di una nuova regola avanzata nel Constraint Manager è simile alla costruzione di una regola nella finestra di dialogo PCB Rules and Constraints Editor dialog. Fare riferimento alla pagina PCB Design Rule Types per ulteriori informazioni sui tipi di regola disponibili nella finestra di dialogo e nella vista All Rules del Constraint Manager.

Se un’espressione di query dell’ambito viene considerata non valida a causa della sintassi, ecc., viene visualizzata una finestra di dialogo di avviso. 

Per mantenere l’ambito non valido, fare clic su Yes nella finestra di dialogo. Ciò farà sì che la regola non valida venga evidenziata in rosso come mostrato di seguito. Fare clic su No per tornare all’ambito precedente (valido).

Gestione della libreria degli ambiti

Per semplificare il processo ripetitivo di creazione di regole avanzate, il Constraints Manager consente di memorizzare nella Scopes Library gli ambiti di corrispondenza degli oggetti basati su query. La libreria viene gestita tramite la finestra di dialogo Scopes Library, accessibile facendo clic sul pulsante Edit Library nella regione Scopes Library del pannello Properties . La libreria è presentata nel pannello Properties, dove gli ambiti personalizzati possono essere importati ed esportati come file XML, che può poi essere utilizzato per popolare la Scopes Library di un’altra installazione di Altium Designer.

Per esportare un ambito nella libreria o importarne uno dalla libreria, utilizzare i comandi del menu del pulsante  accanto al campo Object Match / Second Object Match nella parte inferiore del Constraint Manager. Una volta che un ambito basato su libreria è stato applicato a una regola, il nome dell’ambito verrà mostrato nella colonna Object Match / Second Object Match nell’area della griglia e sopra il campo Object Match / Second Object Match. È possibile utilizzare il menu  del campo per riportare l’ambito al relativo formato basato su query (Detach Scope).

Abilitazione/disabilitazione delle regole

È possibile abilitare/disabilitare le regole di base e avanzate elencate nella vista All Rules . La colonna Enabled riflette lo stato di una regola: True (abilitata) oppure False (disabilitata). Fare doppio clic su una cella nella colonna e attivare/disattivare lo stato di una regola specifica. Le celle corrispondenti alle regole di base disabilitate sono etichettate (Disabled) e visualizzate in grigio nelle viste Physical e Electrical.

Lo stato di abilitazione delle regole avanzate di un particolare tipo, categoria o di tutte le regole avanzate può essere attivato/disattivato anche utilizzando i comandi disponibili nel menu contestuale del clic destro per la voce corrispondente nell’albero Rule Class.

Javascript ID: CM_EnableDisableAdvancedRules_AD25_8

Fare clic con il pulsante destro del mouse su una voce di tipo regola nell'albero Rule Class per abilitare/disabilitare le regole avanzate di questo tipo.

Fare clic con il pulsante destro del mouse su una voce di categoria regola nell'albero Rule Class per abilitare/disabilitare le regole avanzate in questa categoria.

Fare clic con il pulsante destro del mouse sull'intestazione Rule Class per abilitare/disabilitare tutte le regole avanzate.

Importazione ed esportazione delle regole

Dalla vista All Rules, è possibile importare ed esportare regole (avanzate e/o di base).

Per esportare, selezionare più regole nell'elenco usando Ctrl+Click, Shift+Click o Click, Hold&Drag, quindi fare clic con il pulsante destro del mouse e selezionare il comando Export Selected Rules (x) (x rappresenta il numero di regole selezionate). È inoltre possibile esportare tutte le regole di un particolare tipo, categoria o tutte le regole avanzate usando i comandi disponibili nel menu contestuale accessibile con il clic destro per la voce corrispondente nell'albero Rule Class. Dopo aver scelto un comando Export, si apre la finestra di dialogo Constraints to Export nella quale è possibile selezionare quale regola esportare in un file *.CstrDot che potrà poi essere importato in un altro progetto. Dopo aver fatto clic sul pulsante Export x Items (x rappresenta il numero di elementi selezionati nella finestra di dialogo), si apre la finestra di dialogo standard File Explorer nella quale è possibile definire il nome e il percorso del file. Le regole verranno esportate in un file *.CstrDot che potrà poi essere importato in un altro progetto.

Javascript ID: CM_ImportExport_AllRules_Export_AD25_8

Fare clic con il pulsante destro del mouse su una o più regole selezionate per esportarle.

Fare clic con il pulsante destro del mouse su una voce di tipo regola nell'albero Rule Class per esportare le regole di questo tipo.

Fare clic con il pulsante destro del mouse su una voce di categoria regola nell'albero Rule Class per esportare le regole in questa categoria.

Fare clic con il pulsante destro del mouse sull'intestazione Rule Class per esportare tutte le regole.

Per importare, fare clic con il pulsante destro del mouse nell'area dell'elenco o nell'albero Rule Class della vista All Rules e selezionare il comando Import Rules. Si apre la finestra standard File Explorer nella quale selezionare il file *.CstrDot desiderato; quindi fare clic su Open. Si apre la finestra di dialogo Constraints to Import nella quale è possibile selezionare le regole da importare nel progetto corrente. Una volta importati, gli ambiti personalizzati associati vengono applicati automaticamente.

Eliminazione delle regole avanzate

Per eliminare la regola avanzata attualmente selezionata, fare clic con il pulsante destro del mouse su di essa e selezionare Remove Advanced Rule. Per eliminare più regole avanzate contemporaneamente, selezionare più regole usando Ctrl+ClickShift+ClickClick, Hold&Drag, quindi fare clic con il pulsante destro del mouse e selezionare Remove Advance Rules (x). "x" rappresenta il numero di regole che verranno rimosse. È inoltre possibile rimuovere tutte le regole avanzate di un particolare tipo, categoria o tutte le regole avanzate usando i comandi disponibili nel menu contestuale accessibile con il clic destro per la voce corrispondente nell'albero Rule Class.

Javascript ID: CM_RemoveAdvancedRules_AD25_8

Fare clic con il pulsante destro del mouse su più regole selezionate per rimuoverle.

Fare clic con il pulsante destro del mouse su una voce di tipo regola nell'albero Rule Class per rimuovere le regole avanzate di questo tipo.

Fare clic con il pulsante destro del mouse su una voce di categoria regola nell'albero Rule Class per rimuovere le regole avanzate in questa categoria.

Fare clic con il pulsante destro del mouse sull'intestazione Rule Class per rimuovere tutte le regole avanzate.

In ogni caso, le regole verranno eliminate immediatamente senza alcuna conferma.

Cross-Probing

Il Constraint Manager include una funzione di cross-probing che mostra gli oggetti associati evidenziandoli visivamente nel documento corrispondente. Per eseguire il cross-probe verso qualsiasi oggetto, 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 avanzata.

Javascript ID: CM_CrossProbe_AD24_1

Impostare Cross Probe View Settings nel pannello Properties per configurare le impostazioni di cross-probing.

Usare l'opzione Clear Filter dell'editor schematico/PCB (fare clic con il pulsante destro del mouse nell'area di progettazione e selezionare Clear Filter, scorciatoia: Shift+C) per reimpostare l'evidenziazione del cross-probe.

Fare riferimento alla pagina Cross-Probing & Selecting per saperne di più sul cross-probing in Altium Designer.

Selezione incrociata

La funzione di selezione incrociata facilita la selezione dinamica e bidirezionale degli oggetti. Quando la modalità di selezione incrociata è abilitata (usando il comando Cross Select Mode dal menu principale Tools del Constraint Manager, dell'editor schematico o dell'editor PCB), gli oggetti selezionati nel Constraint Manager vengono selezionati anche nei documenti schematici e PCB, e viceversa.

Fare riferimento alla pagina Cross-Probing & Selecting per saperne di più sulla selezione incrociata in Altium Designer.

Trasferimento dei vincoli tra schematico e PCB

Le modifiche applicate nel Constraint Manager vengono trasferite tra i progetti schematici e PCB usando il processo Engineering Change Order (ECO). Selezionare un comando per aggiornare i vincoli sull'altro lato.

  • Per trasferire le modifiche dallo schematico al PCB – selezionare il comando Design » Update PCB Document <PCBDocumentName> dai menu principali dell'editor schematico.

  • Per trasferire le modifiche (apportate nelle viste Clearances, Physical e/o Electrical del Constraint Manager) dal PCB allo schematico – selezionare il comando Design » Update Schematics in <PCBProjectName> dai menu principali dell'editor PCB.

Usare la successiva finestra di dialogo Engineering Change Order per esaminare, convalidare ed eseguire le modifiche.

Il Constraint Manager viene aggiornato automaticamente con le modifiche apportate a regole/classi quando si accede alla finestra di dialogo ECO durante l'invio delle modifiche dallo schematico al PCB. Si noti che, se il Constraint Manager è già aperto, questa sincronizzazione avverrà solo a condizione che non siano state apportate modifiche non salvate.

Quando si trasferiscono modifiche dallo schematico al PCB, si noti che vengono trasferite solo le regole, le classi di net, le coppie differenziali e le classi di coppie differenziali definite nel Constraint Manager. Quanto segue non verrà rilevato né trasferito:

  • Regole definite usando le direttive Parameter Set e Differential Pair oppure il pannello Properties per le opzioni del documento schematico.

  • Classi di net generate automaticamente (in base alle impostazioni nella scheda Class Generation tab of the Project Options dialog).

  • Classi di net e di coppie differenziali definite usando le direttive Parameter Set e Differential Pair.

  • Coppie differenziali definite usando le direttive Differential Pair.

Si noti che le classi di net definite nel Constraint Manager verranno trasferite indipendentemente dalle impostazioni nella scheda Class Generation del dialogo Project Options.

È possibile importare regole, classi di net, coppie differenziali e classi di coppie differenziali dalle direttive inserite negli schematici al Constraint Manager – scopri di più.

  • Durante la sincronizzazione tra schematici e PCB, verrà mostrato un avviso nella finestra di dialogo Engineering Change Order se le modifiche apportate nel Constraint Manager non sono state salvate. L'avviso includerà il lato sul quale le modifiche non sono state salvate: schematici, PCB o entrambi ().

  • La finestra di dialogo Engineering Change Order mostrerà un avviso se negli schematici sono presenti direttive di progetto che non sono state precedentemente importate nel Constraint Manager ().

  • Nel caso in cui gli ambiti (elenchi di membri) di alcune classi siano cambiati ma non siano sincronizzati tra gli schematici di origine e il Constraint Manager, la finestra di dialogo Engineering Change Order mostrerà un avviso quando si tenta di aggiornare il PCB dagli schematici ().

Fare riferimento alla pagina Keeping the Schematics & PCB Synchronized per saperne di più.

Migrazione dalle Design Rules al Constraint Manager

Questa funzione è disponibile quando l'opzione ConstraintManager.ProjectMigrationWizard è abilitata nella finestra di dialogo Advanced Settings dialog.

Se un progetto PCB usa il vecchio sistema di gestione delle regole (ovvero la finestra di dialogo PCB Rules and Constraints Editor), è possibile eseguire una migrazione una tantum e unidirezionale al Constraint Manager.

Usare il comando Design » Migrate Project to Constraint Manager Flow dai menu principali negli editor PCB e schematico. Si apre la finestra di dialogo Migration Required per avvisare che la migrazione avrà luogo e che non potrà essere annullata dopo aver fatto clic sul pulsante .

Sia le regole di progettazione PCB sia le direttive schematiche verranno trasferite nei corrispondenti vincoli applicabili all'interno del Constraint Manager. Una volta conclusa con successo la migrazione, il Constraint Manager verrà aperto (nel contesto dell'editor che era attivo quando è stata eseguita la migrazione).

  • Se una regola di progettazione con un ambito predefinito non esiste nella finestra di dialogo PCB Rules and Constraints Editor (ad esempio, non esiste alcuna regola Width con ambito All), verrà creata nel Constraint Manager come parte del processo di migrazione.

  • Quando le espressioni del primo e del secondo ambito (Where the First Object Matches e Where the Second Object Matches) di una regola Clearance sono impostate su All, l'opzione di controllo dell'ambito net/connettività viene presa in considerazione durante la migrazione del progetto al Constraint Manager come segue:

    • Different Nets Only – la regola viene aggiunta alla cella All Nets – All Nets della matrice di clearance nella vista Clearances.

    • Different Differential Pair – la regola viene aggiunta alla cella All Nets – All Differential Pairs della matrice di clearance nella vista Clearances.

    • Same Net Only – la regola viene aggiunta alla cella Same Net Clearance per All Nets nella vista Physical.

    • Same Differential Pair – la regola viene aggiunta alla cella Same Net Clearance per All Differential Pairs nella vista Physical.

  • Se sono presenti regole aggiunte a una direttiva di set di parametri prima della migrazione e che non sono visualizzate nelle viste Physical e Electrical del Constraint Manager, tali regole verranno create automaticamente come regole avanzate visualizzate nella All Rules view quando si accede al Constraint Manager dal PCB. Le regole avanzate vengono create durante la migrazione dal precedente sistema di gestione delle regole e nel successivo ECO dallo schema al PCB.

AI-LocalizedLocalizzato tramite A
Se trovi un problema, seleziona il testo/l’immagine e premi Ctrl + Invio per inviarci il tuo feedback.
Disponibilità delle funzionalità

Le funzionalità disponibili dipendono dalla soluzione Altium in uso – Altium Develop, un’edizione di Altium Agile (Agile Teams o Agile Enterprise), oppure Altium Designer (con licenza attiva).

Se non vedi nel tuo software una funzionalità descritta,  contatta il team vendite di Altium per saperne di più.

Documentazione legacy

La documentazione di Altium Designer non è più suddivisa per versione. Se è necessario accedere alla documentazione delle versioni precedenti di Altium Designer, visitare la sezione Documentazione legacy della pagina Altri programmi di installazione.

Contenuto