Working with Directives on a Schematic

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.

Le direttive di progettazione sono oggetti che vengono posizionati sullo schema durante l’acquisizione del progetto e forniscono un modo per specificare istruzioni da trasmettere ad altre parti del software. È disponibile una varietà di direttive di progettazione, utilizzabili nei due modi seguenti:

  • Direttive associate alla compilazione automatica dei documenti schematici sorgente.
  • Direttive utilizzate per trasferire al PCB le informazioni definite su un foglio schematico.

Le sezioni seguenti esaminano più da vicino questi ambiti e le direttive associate.

Direttive relative alla compilazione

I progetti evolvono nel tempo e vengono acquisiti per fasi. Quando ciascuna fase si consolida, non è raro volerla verificare isolatamente rispetto al resto del progetto. La compilazione di un singolo documento schematico (o dell’intero progetto) in fasi intermedie del processo di acquisizione produce spesso diversi messaggi di errore causati da circuiti non ancora acquisiti o da collegamenti di interfaccia tra frammenti di circuito ancora incompleti. Tali messaggi non hanno alcun valore reale, poiché generano solo rumore attorno alle informazioni davvero utili. Il modo più rapido e semplice per sopprimere questi errori di compilazione consiste nel posizionare direttive No ERC o Compile Mask.

Direttiva No ERC

La direttiva No ERC viene posizionata su un nodo del circuito per sopprimere tutti gli avvisi e/o le condizioni di violazione di errore dell’Electrical Rule Check rilevati quando il progetto schematico viene convalidato. Per saperne di più, fare riferimento alla pagina Validating Your Design Project.

Direttiva Compile Mask

Le direttive No ERC sono ottime per sopprimere un numero ridotto di pin, porte, sheet entry o net in violazione all’interno di un progetto. In alcuni casi, però, può essere desiderabile rimuovere un’intera sezione del progetto, inclusi i componenti. Utilizzare una direttiva Compile Mask (Place » Directives » Compile Mask command) oppure fare clic sul pulsante Compile Mask () nel menu a discesa delle direttive su Active Bar per nascondere efficacemente al Compiler l’area del progetto che essa contiene, consentendo di impedire manualmente il controllo degli errori per circuiti che potrebbero non essere ancora completi e che si sa genereranno errori di compilazione. Questo può risultare molto utile se è necessario compilare il documento attivo o il progetto per verificare l’integrità del progetto in altre aree specifiche, ma non si desidera il “rumore” dei messaggi generati dal compilatore associati alle parti non finite del progetto.

Come suggerisce il nome, questa direttiva istruisce il Compiler a ignorare qualsiasi oggetto che ricada completely entro i limiti della maschera definita. Posizionare la maschera esattamente come si farebbe con una nota o un oggetto rettangolo.

Si consideri il circuito schematico di esempio nell’immagine seguente, in cui il cablaggio verso il dispositivo LCD1 non è ancora completo. Compilando solo questo schema (Project » Validate PCB Project) si otterranno numerosi messaggi di violazione (mostrati sotto), ciascuno dei quali è causato dal circuito incompleto. Passare il mouse sopra l’immagine per vedere l’effetto del posizionamento di una direttiva Compile Mask attorno al circuito incompleto. Queste violazioni verranno ignorate dal Compiler, mentre il resto del circuito sullo schema, che è completamente cablato, verrà controllato. Si noti che gli oggetti realmente mascherati, cioè quelli che ricadono completamente all’interno del rettangolo delimitatore della maschera, appariranno in grigio.

Passare il mouse sull’immagine per mostrare l’effetto dell’uso di una direttiva Compile Mask per nascondere le violazioni del compilatore dovute a circuiti incompleti.
Passare il mouse sull’immagine per mostrare l’effetto dell’uso di una direttiva Compile Mask per nascondere le violazioni del compilatore dovute a circuiti incompleti.

Una compile mask può essere visualizzata in modalità espansa (cornice completa) o compressa (piccolo triangolo). Queste modalità corrispondono rispettivamente alla maschera abilitata e disabilitata. Per cambiare modalità di visualizzazione, fare clic sull’angolo superiore sinistro di una compile mask già posizionata. Questa funzione può essere utile quando la simulazione è inclusa nel flusso di progettazione: learn more.
Sebbene le compile mask possano essere ruotate o specchiate lungo l’asse X o Y, ciò non ha alcun effetto sull’orientamento del circuito contenuto al loro interno.

Direttive correlate al PCB

Come Unified Design Environment, Altium Designer offre la possibilità di definire i requisiti del PCB prima di eseguire il layout della scheda. Ciò si ottiene aggiungendo e specificando parametri agli oggetti posizionati nei fogli schematici.

Per alcuni oggetti di progettazione schematica – come componenti, sheet symbol, porte, ecc. – questo comporta l'aggiunta dei parametri pertinenti come parte delle proprietà di quell'oggetto. Per gli oggetti net come fili e bus, i parametri non possono essere aggiunti direttamente come proprietà del filo o del bus. Invece, i parametri necessari per contenere le informazioni vengono specificati usando direttive di progetto dedicate.

Le seguenti informazioni possono essere specificate usando le direttive e verranno trasferite alle definizioni appropriate basate su PCB durante la sincronizzazione del progetto:

  • Vincoli di layout PCB
  • Coppie differenziali
  • Classi di net

Includendo direttive di progetto nello Schematic, i progettisti possono specificare vincoli di progetto espliciti e questo garantisce che lo Schematic rimanga il record principale del progetto. Qualsiasi modifica al progetto verrebbe eseguita solo sul lato schematico e trasferita al PCB. Questo può diventare particolarmente importante quando più persone stanno lavorando al progetto, soprattutto se sono geograficamente separate.  Invece di tentare di comunicare tra loro tramite catene di email o telefonate, la persona che acquisisce il progetto può assicurarsi che determinati vincoli vengano effettivamente utilizzati durante la fase di layout.

Al centro di questa funzionalità si trova la direttiva Parameter Set directive.

Si tratta essenzialmente di oggetti Parameter Set definiti dall'utente, che possono essere associati a un oggetto net all'interno di un progetto schematico. Posizionare una direttiva PCB Layout su un filo, un bus o un signal harness per definire uno o più vincoli di progetto destinati alle net associate. Quando viene creato un PCB dallo schematico, le informazioni nella direttiva PCB Layout vengono utilizzate per creare le relative regole di progettazione PCB. Le informazioni specificate da una direttiva PCB Layout si applicano solo alla net (o all'insieme di net) a cui la direttiva è collegata.

Una direttiva Parameter Set.
Una direttiva Parameter Set.

Questa agisce come contenitore per un numero qualsiasi di parametri destinati alla net a cui è collegata la direttiva Parameter Set. È possibile posizionare una direttiva Parameter Set predefinita senza parametri (Place » Directives » Parameter Set) e aggiungere successivamente i parametri pertinenti. Le sezioni seguenti esaminano più da vicino l'uso di queste direttive basate su parametri. Sono disponibili sia direttive di set di parametri definite dall'utente (Parameter Set) sia predefinite (Differential Pair). L'unica differenza tra un set di parametri vuoto e uno predefinito è che i set di parametri predefiniti includono un parametro, come descritto di seguito.

Fare riferimento alla pagina Defining Differential Pairs in Your Schematics per saperne di più sull'uso delle direttive Differential Pair.

Moving from Directives to the Constraint Manager

L'approccio originale alla definizione dei requisiti di progetto consisteva nel gestirli separatamente negli editor schematico e PCB; le Directives li definiscono nello schematic editor e le Design Rules nel PCB editor. Questa separazione è stata risolta con l'introduzione del Constraint Manager, un editor separato per definire i requisiti di progetto, consentendo di configurarli e modificarli in qualsiasi fase del processo di progettazione. Per un determinato progetto può essere utilizzato un solo approccio; un modo semplice per verificarlo è cercare una voce Constraint Manager nel menu Design. Se non è presente (e invece è presente una voce Rules nel menu Design del PCB editor), allora il progetto sta utilizzando il vecchio approccio basato sulle Design Rules.

Se viene utilizzato Constraint Manager, le classi di net, le coppie differenziali, le classi di coppie differenziali e le regole definite usando il parameter set e le direttive differential pair not verranno rilevate e trasferite durante l'aggiornamento del PCB dallo schematico. Verranno trasferite solo le classi di net, le coppie differenziali, le classi di coppie differenziali e le regole definite nel Constraint Manager.

Si noti che è possibile importare regole, classi di net, coppie differenziali e classi di coppie differenziali dalle direttive posizionate negli schematici, usando il comando Import from Directives dal menu del clic destro della vista Physical o Electrical del Constraint Manager quando vi si accede dagli schematici – scopri di più. Si noti che dopo aver importato i dati dalle direttive nel Constraint Manager e aver salvato tali modifiche, le direttive importate saranno distinte nell'area di progettazione schematica dal loro colore blu (con un simbolo leggermente diverso). Questo indica che è avvenuta la transizione unidirezionale dalle direttive al Constraint Manager, con le direttive blu che diventano oggetti di sola lettura (non è consentita alcuna ulteriore modifica).

Posizionamento delle direttive Parameter Set

Posizionare una direttiva di questo tipo scegliendo il comando Place » Directives » Parameter Set dal menu principale oppure facendo clic con il pulsante destro all’interno dell’area di progettazione. Quando si posiziona una direttiva parameter set predefinita, non saranno presenti parametri esistenti. Un parameter set è una direttiva di progettazione che consente di associare specifiche di progetto a un oggetto di tipo net all’interno di un progetto schematico. Ad esempio, usare un parameter set per dichiarare che due net sono membri di una coppia differenziale. È la presenza di parametri con nomi specifici nel parameter set che il software usa per determinare quale direttiva di progettazione si sta posizionando.

Oltre alle direttive di parametro definite dall’utente, una direttiva di parametro basata su regole viene definita dalla finestra di dialogo Choose Design Rule Type, accessibile dalla modalità pannello Properties associata al parametro. L’accesso avviene come segue:

  1. Premere Tab prima di posizionare la direttiva Parameter Set o fare doppio clic su una direttiva Parameter Set già posizionata per visualizzare la modalità Parameter Set del pannello Properties.

  2. Successivamente, fare clic sul pulsante Add nella sezione Parameters della modalità Parameter Set del pannello Properties e scegliere Rule dal menu a discesa per selezionare una regola dalla finestra di dialogo Choose Design Rule Type.

Modifica del valore di una regola.
Modifica del valore di una regola.

Usare la finestra di dialogo Choose Design Rule Type per scegliere la regola che si desidera aggiungere come parametro di regola alla direttiva. Facendo doppio clic su un tipo di regola si avrà accesso alla relativa finestra di dialogo Edit PCB Rule (From Schematic) nella quale è possibile definire i vincoli della regola.

Le proprietà specifiche presenti nella finestra di dialogo Edit PCB Rule (From Schematic) dipendono dalla regola di progettazione selezionata e saranno le stesse proprietà definite per quella regola nell’editor PCB.

Ad esempio, l’immagine seguente mostra la finestra di dialogo Edit PCB Rule (From Schematic) per Max-Min Width Rule, dove è possibile: configurare le impostazioni Min/Preferred/Max per tutti i layer, definire manualmente ciascuna impostazione di larghezza per ogni layer, oppure scegliere di usare un Impedance Profile. Se si sta selezionando un profilo di impedenza e la struttura fisica reale della scheda è già stata definita nell’editor PCB, è anche possibile selezionare il file della scheda per Load the PCB Layer Stack and calculate the track width values.

Se il PCB esiste e lo stackup dei layer è stato definito, le larghezze calcolate possono essere caricate nello schematico.Se il PCB esiste e lo stackup dei layer è stato definito, le larghezze calcolate possono essere caricate nello schematico.

La regola mostrata sopra è stata applicata a una classe di net. Questo è stato ottenuto posizionando una Blanket Directive con una PCB Routing Directive allegata per raggruppare le net in una classe e quindi applicare a quella classe la regola Max-Min Width (show image).

Per informazioni dettagliate su ciascuna delle PCB Design Rules e dei vincoli, fare clic qui.

Usare il campo a discesa Measurement Units per selezionare unità Metric o Imperial.

Specificare i vincoli per una regola scelta.
Specificare i vincoli per una regola scelta.

La voce per la regione Parameters sarà il tipo di regola scelto, insieme ai vincoli specificati. L’immagine seguente illustra i parametri della regola di vincolo di larghezza definiti per una direttiva Parameter Set. Per visualizzare la regola nell’area di progettazione, fare clic sull’icona di visibilità () nella regione Rules.

Vincoli di regola multipli definiti per una particolare net, per gentile concessione di una direttiva Parameter Set.
Vincoli di regola multipli definiti per una particolare net, per gentile concessione di una direttiva Parameter Set.

Quando il progetto viene trasferito al PCB, tramite il processo di sincronizzazione, verranno create le regole di progettazione pertinenti in base alle informazioni contenute in una direttiva. La parola Schematic viene utilizzata nel nome di ogni regola generata, per distinguere l’origine di tale regola.

Regole di progettazione generate sul lato PCB.
Regole di progettazione generate sul lato PCB.

Ricorda che è possibile aggiungere più parametri alla stessa direttiva Parameter Set, ottenendo così uno schematico più ordinato.

Posizionamento delle direttive Net Class

Una direttiva Net Class consente di creare classi di net definite dall’utente nello schematico. Una direttiva Net Class può essere posizionata scegliendo il comando Place » Directives » Parameter Set dai menu principali, quindi definendo il parameter set come direttiva net class come specificato nel Suggerimento n. 2 nella pagina del comando. Quando viene creato un PCB dallo schematico, le informazioni contenute in una direttiva Net Class vengono utilizzate per creare la corrispondente Net Class sul PCB. Per rendere una net membro di una net class, collega una direttiva Net Class al filo, bus o signal harness pertinente, quindi imposta il parametro ClassName della direttiva sul nome della classe desiderata. L’opzione Generate Net Classes (per User-Defined Classes) deve essere abilitata in la scheda Class Generation della finestra di dialogo Project Options per utilizzare questa funzionalità.

Se per una net è stata definita una direttiva Net Class, allora qualsiasi regola di progettazione PCB creata anch’essa da quell’oggetto parameter set avrà un rule scope di Net Class quando il progetto viene trasferito all’editor PCB. Una direttiva Net Class può essere creata dalla direttiva Parameter Set già posizionata aggiungendo una classe il cui valore deve essere impostato sulla PCB Net Class richiesta.

Sebbene le Net Class possano essere create dall’interno dell’editor PCB, la funzione logica o il raggruppamento delle net è solitamente molto più chiaro nello schematico e, pertanto, ha più senso guidare il processo da lì.

Quando il progetto viene trasferito al PCB, tramite il processo di sincronizzazione, verranno create le net class pertinenti in base alle informazioni contenute in una direttiva.

Collega una direttiva Net Class a un oggetto Blanket, per creare una net class i cui membri siano le singole net coperte da quel blanket. Se a quel blanket è collegata anche una direttiva PCB Layout, i parametri di regola della direttiva PCB Layout avranno come destinazione quella net class, anziché ogni singola net. Quando si importano le modifiche nel documento PCB, questo comporta la creazione di un’unica regola di progettazione (per parametro), con uno scope impostato per avere come destinazione la net class.

Posizionamento delle direttive Blanket

Le direttive Parameter Set possono avere come destinazione solo la net specifica a cui sono collegate, ma se combinate con una direttiva Blanket il loro scope può essere esteso per coprire tutte le net all’interno del blanket.

Posiziona una direttiva di questo tipo scegliendo il comando Place » Directives » Blanket dai menu principali. Quando si posiziona un blanket, è possibile definire una semplice forma rettangolare oppure una forma poligonale. Quest’ultima offre un controllo più preciso sulla copertura degli oggetti net richiesti su un foglio.

Il blanket identifica le net di interesse: posiziona una direttiva Parameter Set in qualsiasi punto sul bordo del blanket per applicare i requisiti di progettazione a tali net. Per applicare la direttiva perimetrale a una net sotto una direttiva Blanket, un oggetto associato a quella net – un pin, una port, una net label, una power port, un segmento wire/bus/harness (incluse entrambe le estremità) – deve ricadere entro i limiti del blanket. Nota che per gli identificatori di net, come le net label, l’hotspot deve trovarsi all’interno del blanket. Se le net membro non vengono trasferite nel PCB Parameter Set come previsto, prova a regolare di conseguenza l’area del blanket.

Per verificare a quali net si applicherà la direttiva blanket, usa la funzione Net Colors per evidenziarle. Scegli il colore richiesto dal menu View » Set Net Colors, quindi fai clic sul perimetro della direttiva Blanket desiderata. Per rimuovere l’evidenziazione per una net specifica, usa il comando View » Set Net Colors » Clear Net Color, quindi fai clic sulla net da cui desideri rimuovere la colorazione. Per cancellare la colorazione delle net da tutti i fogli schematici, usa il comando View » Set Net Colors » Clear All Net Colors.

Un esempio di utilizzo di una direttiva Blanket per applicare una direttiva Parameter Set alle net all’interno del blanket.
Un esempio di utilizzo di una direttiva Blanket per applicare una direttiva Parameter Set alle net all’interno del blanket.

Esempi di utilizzo di una direttiva blanket possono includere:

  • Collegare una direttiva Parameter Set a un oggetto blanket affinché i suoi parametri di regola vengano applicati a ogni singola net coperta da quel blanket.
  • Collegare una direttiva Parameter Set a un oggetto blanket per creare un Parameter Set i cui membri siano le singole net coperte da quel blanket.
  • Collegare una direttiva Differential Pair a un oggetto blanket per creare oggetti differential pair basati sulle net differenziali entro i limiti di quel blanket.
Collega una direttiva Parameter Set a un oggetto Blanket affinché i suoi parametri di regola vengano applicati a ogni singola net coperta da quel blanket. Se a quel blanket è collegata anche una direttiva Parameter Set e il Parameter Set ha anche un parametro Net Class, i parametri di regola della direttiva Parameter Set avranno come destinazione quella net class, anziché ogni singola net. Quando si importano le modifiche nel documento PCB, questo comporta la creazione di un’unica regola di progettazione (per parametro) con uno scope impostato per avere come destinazione la net class.
È anche possibile copiare una direttiva Parameter Set perimetrale e collegarla a un’altra direttiva Blanket o anche a singoli wire, bus o harness: il risultato sarà l’aggiunta di tutte le net aggiuntive associate alla stessa direttiva Parameter Set alla stessa PCB Net Class generata.

Un Blanket, insieme a una direttiva Parameter Set, può essere utilizzato anche per applicare classi di componenti e parametri ai componenti che si trovano completamente all’interno dell’area definita dal Blanket. Per farlo, usa le opzioni Component Class e Parameter dal menu a discesa del pulsante Add nelle proprietà della direttiva Parameter Set collegata al Blanket. Le informazioni sulla classe di componenti e sul parametro verranno trasferite al documento PCB del progetto durante il processo ECO quando si aggiorna il PCB.

Direttive indirette (basate su parametri)

Le direttive Parameter Set sono necessarie quando si vogliono indirizzare oggetti di progetto nello schematico che non possono contenere parametri, ma per quegli oggetti che invece possono farlo, le direttive di progetto possono essere applicate indirettamente aggiungendole (e definendole) come parametri all'oggetto schematico pertinente. In sostanza, sono parameter-based directives.

Esempi di utilizzo delle direttive basate su parametri includono la limitazione dell'altezza di un particolare componente oppure l'aggiunta di una regola di clearance che abbia come target tutti gli oggetti del progetto. Il parametro richiesto che definisce il vincolo viene aggiunto all'oggetto come regola.

Quando vengono sincronizzate con il PCB, le direttive basate su parametri aggiunte agli oggetti nello schematico diventeranno regole di progettazione PCB. L'ambito della corrispondente regola di progettazione PCB sarà determinato dalla natura dell'oggetto a cui il parametro è stato assegnato inizialmente. La tabella seguente riepiloga le opzioni supportate per l'associazione tra parametro schematico e ambito della regola PCB.

Aggiungere un parametro (come regola) a un... Da... Per un ambito della regola PCB di...
Pin la scheda Parameters della modalità Pin del pannello Properties. Pad
Port la scheda Parameters della modalità Port del pannello Properties. Net
Component l'area Parameters della modalità Components del pannello Properties.ComponentSheet Symbol
la scheda Parameters della modalità Sheet Symbol del pannello Properties, quando è selezionato Local nell'area Source. Component Class
Device Sheet Symbol la scheda Parameters della modalità Sheet Symbol del pannello Properties, quando è selezionato Device nell'area Source. Component Class
Managed Sheet Symbol l'area Parameters della modalità Sheet Symbol del pannello Properties, quando è selezionato Managed nell'area Source. Component Class
Sheet la scheda Parameters della modalità Document Options del pannello Properties. Tutti gli oggetti

In ciascun caso, il metodo per aggiungere un parametro basato su regola è lo stesso. Dalla rispettiva scheda o finestra di dialogo, eseguire quanto segue:

  1. Aggiungere un parametro come regola.
  2. Selezionare il tipo di regola da utilizzare.
  3. Configura i vincoli per il tipo di regola scelto.
Quando si aggiungono parametri di regole di progettazione agli oggetti in uno schematico, a ciascun parametro di regola viene assegnato un ID univoco. Gli stessi ID vengono assegnati alle corrispondenti regole di progettazione create sul PCB. Grazie a questo ID univoco, i vincoli di una regola possono essere modificati sia dal lato schematico sia dal lato PCB, e le modifiche propagate durante la sincronizzazione.

Specifica delle classi di componenti

In modo analogo, le classi di componenti possono essere definite nello schematico aggiungendo un parametro ClassName ai componenti di destinazione e impostandone il valore sul nome della classe desiderata. Quando il progetto viene trasferito al PCB, verranno create le classi di componenti definite.

Per garantire che le Component Classes definite nello schematico vengano propagate al PCB, nella finestra di dialogo Project Options devono essere impostate le seguenti opzioni:

  • Abilitare l'opzione Generate Component Classes situata nell'area User-Defined Classes della scheda Class Generation della finestra di dialogo.
  • Nella scheda Comparator della finestra di dialogo, impostare l'opzione Differences Associated with Components » Extra Component Classes Mode su Find Differences.

L'opzione della scheda Class Generation sopra elencata è mostrata nell'immagine seguente. Passare il cursore sull'immagine per visualizzare l'impostazione dell'opzione della scheda Comparator .

Per propagare le Component Classes al PCB, abilitare l'opzione Generate Component Classes nella scheda Class Generation. Passare il cursore sull'immagine per mostrare la scheda Comparator in cui sarà necessario impostare l'opzione Extra Component Classes Mode su Find Differences.
Per propagare le Component Classes al PCB, abilitare l'opzione Generate Component Classes nella scheda Class Generation. Passare il cursore sull'immagine per mostrare la scheda Comparator in cui sarà necessario impostare l'opzione Extra Component Classes Mode su Find Differences.

Una volta definite, le classi possono essere bloccate nell'area Properties del pannello Properties delle proprietà del rispettivo componente.

Nell'editor PCB, un componente può appartenere a più Component Classes. Per definirlo nello schematico, separare ciascun nome di PCB Component Class con una virgola nel valore del parametro del componente schematico (show image).

Controllo della stampa delle direttive

Per impostazione predefinita, tutte le direttive di progetto sono incluse nella stampa dei fogli schematici. Questo comportamento può tuttavia essere modificato:

Controllare la stampa delle direttive secondo necessità. Per le direttive No ERC, è possibile scegliere di stampare determinati stili di simbolo, escludendone altri.
Controllare la stampa delle direttive secondo necessità. Per le direttive No ERC, è possibile scegliere di stampare determinati stili di simbolo, escludendone altri.

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