La sfida
Con le velocità di commutazione dei dispositivi in continuo aumento, nasce la sfida di mantenere l’integrità del segnale e di soddisfare i requisiti di temporizzazione del segnale. L’integrità del segnale può essere gestita tramite controlled impedance routing, ottenuto mediante un’attenta progettazione sia dello stackup del PCB sia delle larghezze di routing da utilizzare su ciascun layer.
I requisiti di temporizzazione vengono soddisfatti abbinando le lunghezze instradate dei percorsi di segnale. Per un insieme di percorsi di segnale a 2 pin, ciascuno che va da un pin di uscita a un singolo pin di ingresso, calcolare e confrontare le lunghezze è un processo semplice. Tuttavia, questo non vale per molte soluzioni progettuali tipiche, dove può essere presente un componente di terminazione in serie nel percorso del segnale, oppure ci sono più di due pin nel segnale, che potrebbe quindi essere instradato usando una topologia Balanced T o Fly-By, come mostrato nell’immagine seguente.

Quattro chip RAM DDR2 instradati usando una topologia Balanced T. ##
La soluzione
Il compito del progettista è tradurre i requisiti di progetto, come la lunghezza massima di routing consentita per rispettare il budget di temporizzazione, in un insieme di regole di progettazione, ad esempio una regola Length per garantire il rispetto della temporizzazione e una regola Matched Length per rilevare potenziali disallineamenti temporali.
Ora il progettista vede i segnali in termini della loro funzione (ad esempio: “Questo segnale di indirizzo deve essere instradato da questo connettore a ciascun dispositivo di memoria. Per farlo userò una topologia fly-by con una resistenza di terminazione alla fine. Potrei anche richiedere un terminatore in serie alla sorgente”). Anche se l’indirizzo A0 passa attraverso una resistenza di terminazione, per il progettista quel segnale è ancora A0 dall’altro lato di quella resistenza.
Ma l’editor PCB vede ogni segnale semplicemente come un insieme di pin collegati (comunemente indicato come net) — la net A0 va da questo pin del connettore a questo pin del componente di memoria, poi a questo pin di un altro componente di memoria, e così via. Non appena viene aggiunta una resistenza di terminazione in serie, quella linea di indirizzo diventa due net distinte. Questo rende difficile per il progettista specificare requisiti chiave di progetto, come le regole di progettazione Length e Matched Length.
Questo può essere gestito da una funzionalità chiamata xSignals (o extended Signal). Questa funzionalità consente di trattare correttamente un percorso di segnale ad alta velocità proprio come tale: un percorso lungo il quale un segnale viaggia tra una sorgente e una destinazione, attraverso componenti di terminazione e anche rami.
Un xSignal è essenzialmente un percorso di segnale definito dal progettista tra due nodi. Questi possono essere due nodi all’interno della stessa net, oppure due nodi in net associate separate da un componente. L’xSignal può quindi essere usato per definire l’ambito di regole di progettazione pertinenti come Length e Matched Length, che verranno poi rispettate durante le attività di progettazione, come il tuning interattivo della lunghezza.
Creazione di un nuovo xSignal
Un xSignal è un percorso di segnale definito dal progettista tra due nodi; possono essere due nodi all’interno della stessa net oppure due nodi in net diverse.
Gli xSignals vengono definiti usando i seguenti metodi:
- Usare il xSignals Multi-Chip Wizard. Questo sarà l’approccio più comune per creare xSignals ed è descritto di seguito.
In alternativa, i seguenti metodi vengono usati selezionando prima gli oggetti di interesse, quindi scegliendo il comando appropriato:
-
Creare un singolo xSignal basato sui pad selezionati. Selezionare il pad iniziale e il pad finale richiesti (questi pad possono trovarsi in net diverse se è presente un componente di terminazione in serie). I pad possono essere selezionati direttamente nell’area di progettazione, oppure si può usare il pannello PCB in modalità Nets per individuare e selezionare i pad (come mostrato nell’immagine seguente). Una volta selezionati i pad, fare clic con il tasto destro su un pad selezionato nell’area di progettazione e quindi eseguire il comando xSignals » Create xSignal from Selected Pins, oppure fare clic con il tasto destro su uno dei pad selezionati nel pannello PCB ed eseguire il comando Create xSignal. Il nuovo xSignal verrà elencato nella modalità xSignals del pannello PCB.
Quando si definisce un xSignal basato su pin selezionati (pad del footprint), selezionare solo il pad iniziale e il pad finale prima di eseguire il comando Create.
Il nome del nuovo xSignal sarà una combinazione dei due nomi di net, separati da un trattino. Il nome dell’xSignal può essere modificato nella modalità xSignals del pannello PCB.
Il nuovo xSignal può essere aggiunto a una classe xSignal; fare clic con il tasto destro nell’area xSignal Classes del pannello per creare una nuova classe e aggiungervi membri.
- Selezionare il componente sorgente, quindi fare clic con il tasto destro sul componente selezionato e scegliere il comando xSignal » Create xSignals between Components dal menu contestuale. Si aprirà la finestra di dialogo Create xSignals Between Components, con il componente sorgente scelto selezionato. La finestra di dialogo è descritta di seguito.
- Selezionare uno o più componenti in serie nell’area di progettazione quindi fare clic con il tasto destro su uno dei componenti selezionati e scegliere il comando xSignal » Create xSignals from Connected Nets dal menu contestuale. Si aprirà la finestra di dialogo Create xSignals From Connected Nets. Verranno selezionati il componente sorgente scelto e le net collegate a quel componente. La finestra di dialogo è descritta di seguito.
- Possono esserci anche situazioni in cui si desidera creare un xSignal all’interno di un xSignal esistente; in questo caso si può usare la modalità xSignal del pannello PCB. Assicurarsi che l’opzione Select sia abilitata nella parte superiore del pannello, individuare l’xSignal corrente, selezionare i pad richiesti nella sezione xSignal Primitives del pannello, quindi fare clic con il tasto destro su uno dei pad selezionati nell’area di progettazione e usare il metodo descritto al punto 2 di questo elenco per completare il processo.

Selezionare i due pad nella modalità Nets del pannello, fare clic con il tasto destro su uno dei pad selezionati quindi scegliere Create xSignal. Si noti che i pad si trovano in net diverse.
Se i pad iniziale e finale si trovano nella stessa net, un xSignal assumerà un nome nella forma <NetName>_PPn, dove n è il successivo numero intero disponibile usato per distinguere più xSignals definiti per quella net. Se i pad iniziale e finale si trovano in net diverse, un xSignal assumerà un nome nella forma <StartNet>_<EndNet>_PPn, dove n è il successivo numero intero disponibile usato per distinguere più xSignals definiti per quella combinazione di net.
Procedura guidata xSignals Multi-Chip
Il xSignals Multi-Chip Wizard viene usato per creare xSignals tra un singolo componente sorgente e più componenti di destinazione. Il Wizard usa un approccio orientato ai componenti per identificare i potenziali xSignals: si seleziona un singolo componente sorgente, le net di interesse e i componenti di destinazione e il Wizard analizza quindi tutti i potenziali percorsi dal componente sorgente ai componenti designati, passando attraverso componenti passivi in serie e lungo eventuali rami. Come progettista, è quindi possibile scegliere gli xSignals che si desidera generare e si possono anche creare regole di progettazione Matched Length, se necessario. Il Wizard può inoltre essere usato per creare automaticamente xSignals e classi xSignal per diversi comuni circuiti di interfaccia e di memoria.
In questo Wizard, un pin di uscita è indicato come Source, mentre il pin di ingresso di destinazione è indicato come Destination.
La procedura guidata è anche uno strumento eseguibile più volte: dal gruppo principale complessivo di xSignals che si crea inizialmente nella pagina xSignal Routes, è possibile selezionarne un sottoinsieme, definire classi e regole, quindi tornare al gruppo principale, scegliere un altro sottoinsieme, definire classi e regole per esso, e così via.
Uno dei grandi punti di forza del Wizard è la facilità di lavoro tra il Wizard e l’editor PCB. Facendo clic su un xSignal in qualsiasi pagina della procedura guidata, i pad e l’eventuale routing vengono evidenziati visivamente sul PCB.
In questa fase, la procedura guidata non supporta l’aggiunta automatica di identificatori di giunzione a T, spesso indicati come tie-points o branch-points. Se il progetto include routing ramificato, si suggerisce di:
- Regolare la lunghezza dal componente sorgente al componente passivo (come una resistenza di terminazione in serie), se presente.
- Regolare la lunghezza in ciascun ramo, dalla giunzione a T al componente di destinazione.
- Se necessario, regolare la lunghezza rimanente tra il componente passivo (o dalla sorgente se non ci sono componenti passivi) e la giunzione a T.
Se è necessario regolare le lunghezze dei soli rami, creare un punto di diramazione definito dall’utente posizionando un componente a singolo layer e singolo pad all’interno del routing in corrispondenza della giunzione a T. Per ulteriori informazioni, fare riferimento alla sezione
Definizione del punto di diramazione in un pattern Balanced T riportata di seguito.
Per accedere al xSignals Multi-Chip Wizard, selezionare il comando Design » xSignals » Run xSignals Wizard dai menu principali oppure fare clic con il tasto destro nel layout PCB e quindi selezionare xSignals » Run xSignals Wizard. Verrà mostrata la pagina iniziale della procedura guidata.

La pagina iniziale del xSignals Multi-Chip Wizard
Modalità della procedura guidata xSignals Multi-Chip
Nella seconda pagina del Wizard, verrà richiesto di selezionare Custom Multi-Component Interconnect, On-Board DDR3 / DDR4 oppure USB 3.0. La modalità Custom Multi-Component Interconnect viene usata per definire più xSignals tra un componente sorgente scelto e più componenti di destinazione, mentre la modalità On-Board DDR3 / DDR4 viene usata per creare xSignals per la memoria DDR3 o DDR4. La modalità USB 3.0 crea gli xSignals, le classi xSignal e le regole Matched Length per ciascun canale USB 3.0. Selezionare la modalità appropriata per le proprie esigenze.
The Custom Multi-Component Interconnect Mode

In questa modalità, la procedura guidata può essere utilizzata per definire più xSignals tra un componente sorgente scelto e più componenti di destinazione. La procedura guidata utilizza un approccio orientato ai componenti per identificare i potenziali xSignals: si seleziona un singolo componente sorgente, le net di interesse e i componenti di destinazione; quindi analizza tutti i possibili percorsi dal componente sorgente ai componenti di destinazione, passando attraverso componenti passivi in serie e lungo eventuali diramazioni. Il progettista può quindi scegliere gli xSignals che desidera generare. Oltre a definire gli xSignals end-to-end per più net tra componenti, la procedura guidata consente anche di creare xSignals per sezioni di tali segnali end-to-end (dal pin di uscita della sorgente al componente di terminazione in serie e dal componente di terminazione in serie al pin di ingresso della destinazione). In base alle impostazioni abilitate, la procedura guidata può anche creare classi di xSignal e regole di progettazione Matched Net Lengths destinate a tali xSignals. Quando la procedura guidata è completata, è possibile iniziare il processo di tuning delle lunghezze.
La procedura guidata è configurata attraverso diverse pagine. Il numero di pagine dipende dalla configurazione del circuito. Ad esempio, se sono presenti terminatori in serie, ci saranno pagine aggiuntive. La configurazione di ciascuna pagina è descritta di seguito.
Selezionare il componente sorgente

Utilizzare questa pagina per selezionare un singolo componente sorgente. Utilizzare i campi Filter e Min Pin Count nella parte superiore della griglia per individuare più facilmente il componente di interesse. Sono supportati i caratteri jolly * e ?.
Le griglie di questa procedura guidata includono un menu di scelta rapida accessibile con il tasto destro del mouse, oltre al supporto dei tasti standard di selezione multipla di Windows. È inoltre possibile usare il clic sinistro o la barra spaziatrice per attivare/disattivare la casella di controllo degli elementi selezionati.
Selezionare le net sorgente

Selezionare le net di interesse collegate al componente sorgente scelto. Utilizzare i campi Filter e Label nella parte superiore della griglia per individuare più facilmente le net di interesse. Solo i pin con le net elencate diventeranno le sorgenti dei percorsi di segnale.
Selezionare i componenti di destinazione

Selezionare il/i componente/i di destinazione desiderato/i. Utilizzare i campi del componente Filter e Min Pin Count nella parte superiore della griglia per individuare più facilmente il componente di interesse.
Quando si fa clic su Next, la procedura guidata identificherà tutti i possibili xSignals che possono essere creati dall’insieme di net selezionate tra i componenti scelti. Se la procedura guidata rileva componenti a 2 pin con entrambi i pin collegati alle net selezionate, questi vengono automaticamente identificati come componenti di terminazione in serie e più avanti nel processo compariranno pagine aggiuntive della procedura guidata.
Percorsi xSignal

Questa pagina della procedura guidata elenca gli xSignals proposti da ciascun Source Pin fino a ciascun Destination Pin. Fare clic su una voce per evidenziare quell’xSignal sul PCB.
Dopo aver analizzato i percorsi delle net per identificare i potenziali xSignals, la procedura guidata tenterà di ridurre l’insieme per elencare solo le combinazioni di interesse. Questi sono gli xSignals end-to-end; l’immagine sopra li mostra tra i componenti sorgente e di destinazione selezionati nelle pagine precedenti della procedura guidata. L’immagine mostra anche che la procedura guidata ha rilevato il componente di terminazione in serie RA1 in ciascun percorso. RA1 è in realtà un pacchetto di quattro resistori: in questa situazione, la procedura guidata creerà automaticamente associazioni logiche, assumendo che ciascun resistore attraversi il pacchetto, e abbinerà le net collegate ai pin che si trovano uno di fronte all’altro sul componente.
Poiché questa ipotesi, secondo cui i pin di ciascun resistore siano uno di fronte all’altro, potrebbe non essere sempre corretta, è possibile selezionare una qualsiasi delle altre net di uscita disponibili utilizzando il menu a discesa nella colonna Dest Pin. In alternativa, abilitare l’opzione Show all alternative paths nella parte superiore della griglia per visualizzare tutte le possibili combinazioni di net che potrebbero essere utilizzate per generare xSignals. Abilitare la casella di controllo per ogni riga per cui si desidera creare un xSignal. Gli xSignals abilitati verranno aggiunti alla classe visualizzata nel campo Include created xSignals into class nella parte inferiore di questa pagina. Immettere un nuovo nome o selezionarne uno dall’elenco a discesa.

Tuning della lunghezza degli xSignals

Questa pagina viene utilizzata per creare automaticamente una regola di progettazione Matched Length per gli xSignals abilitati. Abilitare only gli xSignals che si desidera siano interessati da questa nuova regola di progettazione. Se il progetto richiede più regole con requisiti diversi, più avanti nel processo verrà data la possibilità di definire regole aggiuntive per quegli xSignals per i quali non è ancora stata definita una regola. Questa prima fase presenterà anche gli xSignals end-to-end complessivi. Nelle pagine successive della procedura guidata, si avrà la possibilità di definire regole di progettazione per le sezioni all’interno degli xSignals, ad esempio per le sezioni dal pin di uscita al resistore di terminazione in serie.
Se non si desidera eseguire il tuning della lunghezza degli xSignals, abilitare No, I don't want to tune the length of my xSignals. Se questa opzione è abilitata, nessun’altra opzione di questa pagina sarà disponibile. Per poter modificare e accedere alle altre opzioni, abilitare Yes, I want checked xSignals to have the same routed length.
Il campo xSignals Class Base Name viene utilizzato per definire un nome per gli xSignals attualmente selezionati. Immettere un nome significativo, tenendo presente che potrebbe essere necessario ripetere questo processo per altri xSignals. Questo insieme di xSignals sarà quindi interessato da una regola di progettazione con il nome immesso nel campo Matched Lengths Rule Base Name, con il valore Length Tolerance specificato.
Non si è sicuri di quali oggetti siano interessati? Fare clic su una o più voci per evidenziare il/i percorso/i di segnale nel layout PCB.
Tuning della lunghezza da sorgente a passivi

Se l’insieme di net selezionate include componenti di terminazione in serie, compariranno pagine aggiuntive della procedura guidata che offriranno la possibilità di creare xSignals e regole di progettazione aggiuntivi per queste sezioni delle net. Nell’immagine sopra, si vede che questa pagina della procedura guidata viene utilizzata per creare una regola di progettazione Matched Length per gli xSignals scelti che vanno dai pin sorgente ai componenti di terminazione. Se sono necessari xSignals / una classe di xSignal / una regola di progettazione per questi, abilitare l’opzione Yes, I want these segments to have the same length for next xSignals, abilitare gli xSignals richiesti e definire xSignals Class Base Name, Matched Lengths Rule Base Name e Length Tolerance. Verranno creati xSignals aggiuntivi da utilizzare con questa regola Matched Length.
Tuning della lunghezza da passivi a destinazioni

Questa pagina viene utilizzata per creare una regola di progettazione Matched Length per gli xSignals scelti che vanno dai componenti di terminazione ai pin di destinazione. Se necessario, abilitare l’opzione Yes, I want these segments to have the same length for next xSignals , abilitare gli xSignals richiesti e definire xSignals Class Base Name, Matched Lengths Rule Base Name e Length Tolerance. Verranno creati xSignals aggiuntivi da utilizzare con questa regola Matched Length.
Report e continua

Questa pagina della procedura guidata descriverà in dettaglio il numero di xSignals che stanno per essere creati e il numero di regole di progettazione che stanno per essere create.
Nella parte inferiore della pagina è possibile scegliere di:
- Continue length tuning for created signals – selezionare questa opzione se nelle pagine precedenti sono stati disabilitati specifici xSignals e ora è necessario procedere con la definizione di regole aggiuntive per tali xSignals.
- Restart wizard for the same source component – selezionare questa opzione se si desidera scartare queste impostazioni e riavviare la procedura guidata con gli stessi componenti/net selezionati.
- Finish wizard – selezionare questa opzione se si è terminata la creazione di xSignals e regole di progettazione per questo componente sorgente.
Gli xSignals sono descritti in dettaglio nella modalità xSignal del pannello PCB. Premere il tasto Delete nel pannello per rimuovere le classi di xSignal selezionate o gli xSignals selezionati.

Questi xSignals sono pronti per il tuning della lunghezza. Per iniziare, selezionare l’opzione Interactive Length Tuning (
) dal menu principale Route o da Active Bar.
È possibile rimuovere facilmente una fisarmonica di tuning della lunghezza. Fare clic una volta su un qualsiasi segmento della fisarmonica per selezionarlo, quindi premere Delete.
Si noti che i segmenti di traccia esistenti vengono interrotti nei punti iniziale e finale quando si posiziona una fisarmonica. Pertanto, se si ripete questo processo di tuning e poi eliminazione alcune volte, si può finire con un tratto rettilineo di routing che in realtà è composto da molti segmenti di traccia corti. Per ricondurre più piccoli segmenti di traccia a un singolo segmento, eseguire il comando Design » Netlist » Clean All Nets dai menu principali.
On-Board DDR3 / DDR4

In questa modalità, la procedura guidata creerà automaticamente gli xSignals, le classi di xSignal, i gruppi Matched Length, le regole Diff Pair Matched Lengths e la topologia Fly-By per DDR3/DDR4 on-board. La procedura guidata presuppone che venga utilizzata una topologia di routing fly-by.
Selezionare i componenti sorgente

In questa pagina, Wizard identifica tutti i potenziali componenti sorgente e i componenti di destinazione in base al prefisso del designatore e al numero di pin. Utilizzare i campi Controller/Memory Devices per filtrare componenti/dispositivi di memoria e usare le frecce su/giù per impostare Min Pin Count come richiesto per entrambi Source Component e Target Components Quindi selezionare un singolo componente sorgente e selezionare il/i componente/i di destinazione.
Gruppo indirizzi

La funzionalità di questa pagina è la seguente:
- Fly-By TopologySono supportate le opzioni T-Branch Topology e T-Branch Topology. Selezionare la topologia richiesta dall’elenco a discesa.
- Se viene scelto Fly-By Topology, i dispositivi di destinazione vengono elencati nell’ordine Point-to-Point del routing fly-by. Il software tenterà di determinare automaticamente l’ordine. Se la procedura guidata viene eseguita prima del posizionamento dei componenti, l’ordine point-to-point dovrà essere impostato manualmente utilizzando i controlli a discesa.
- Se viene scelto T-Branch Topology (come mostrato sopra), metà dei dispositivi di destinazione verrà mostrata prima della sorgente e metà dopo. Utilizzare i controlli a discesa per ordinare i componenti di destinazione come richiesto.
- Define xSignal Class Name Syntax:
- Il valore predefinito iniziale è
ADDR_PP[#]
- Il
[#] rappresenta il numero di dispositivi di memoria.
- Il suffisso
PP può essere modificato se necessario.
- La procedura guidata analizza i componenti, cerca questi suffissi nel progetto e visualizza la sintassi completa del nome, utilizzando l’approccio descritto di seguito. Aggiornare questi valori se non sono corretti.
- L'obiettivo qui è trovare automaticamente le net che corrispondono a queste funzioni. Una volta trovate le net, la sintassi di denominazione viene inserita nei campi.
- Le net tra i componenti vengono quindi esaminate; una volta trovato il suffisso, viene identificato il prefisso. Ad esempio, il Wizard cerca
_A[#] per individuare le linee di indirizzo.
- Se non vengono trovate net con un suffisso che inizia con “_”, allora cerca solo il testo dopo “_”. Vengono controllati anche separatori alternativi, come “-” o “.”.
- Se la sintassi non può essere determinata automaticamente, è necessario definire questi campi. Utilizzare i menu a discesa per selezionare tra le net esistenti sulla scheda.
- Una volta definiti l'ordine e la sintassi di denominazione, fare clic sul pulsante Analyze Syntax & Create xSignal Classes per creare l'elenco degli xSignals. Il Wizard analizzerà la sintassi e il modo in cui i componenti sono collegati e formerà le xSignal Classes visualizzate nella griglia sul lato destro della finestra di dialogo. Il numero di Classes Created corrisponderà al numero di dispositivi di memoria.
- Il numero di classi create (ad esempio, 4) e il numero di net xSignal in ciascuna classe (ad esempio, 26).
- Gli xSignals sono raggruppati in una colonna per ogni xSignal class. Verrà creata una regola di progettazione Matched Lengths per ogni classe. I sottotitoli nella tabella rappresentano i componenti sorgente e destinazione per questi xSignals.
- Se l'elenco generato automaticamente è incompleto o errato, fare clic sul pulsante Modify Nets in xSignal Classes per aprire la finestra di dialogo Edit xSignal Class e aggiungere o eliminare manualmente net da/verso una classe. Si noti che le modifiche manuali andranno perse se si fa nuovamente clic sul pulsante Analyze Syntax & Create xSignal Classes.
Identificazione delle net del gruppo dati

La fase finale consiste nell'identificare tutte le net che appartengono al gruppo dati.
La funzionalità di questa pagina è la seguente:
- Sintassi del nome della xSignal Class definita dall'utente:
- Il valore predefinito iniziale è
DATA_BL[#]
[#] rappresenta il numero di Byte-Lane, determinato dal numero totale di linee dati diviso per la larghezza del bus dati definita in precedenza.
- Il suffisso
BL può essere modificato se necessario.
- Il Wizard analizza i componenti e cerca questi suffissi nel progetto quindi visualizza la sintassi completa del nome. Utilizzare i menu a discesa per aggiornare se questi valori non sono corretti.
- Una volta definita la sintassi di denominazione, fare clic sul pulsante Analyze Syntax & Create xSignal Classes per creare l'elenco degli xSignals. Il Wizard analizzerà la sintassi e il modo in cui i componenti sono collegati e formerà le xSignal Classes visualizzate nella tabella sul lato destro della finestra di dialogo. Il numero di classi create corrisponderà al numero di Byte-Lane collegati ai dispositivi di memoria. Sopra l'area della tabella vengono visualizzati il numero di classi create (ad esempio, 8) e il numero di net xSignal in ciascuna classe (ad esempio, 11).
- Per queste xSignal Classes vengono create regole di progettazione Matched Lengths. I sottotitoli nella tabella rappresentano i componenti sorgente e destinazione per gli xSignals Byte-Lane.
- Se l'elenco generato automaticamente è incompleto o errato, fare clic sul pulsante Modify Nets in xSignal Classes per aprire la finestra di dialogo Edit xSignal Class e aggiungere o eliminare manualmente net da/verso una classe. Si noti che le modifiche manuali andranno perse se si fa nuovamente clic sul pulsante Analyze Syntax & Create xSignal Classes.
- Fare clic sul pulsante Create Spreadsheet per generare un foglio di calcolo in formato XLS degli xSignals creati dal Wizard.
xSignals e xSignal Classes create
Il Wizard crea automaticamente xSignals e xSignal Classes per:
- gli xSignals di indirizzo descritti nella pagina Address Group.
- gli xSignals di dati descritti nella pagina Data Group.
USB 3.0

Il Wizard può elaborare tutti i canali USB 3.0 tra ciascuna coppia controller-connettore specificata dall'utente. Il Wizard valuta automaticamente le net Differential Pair collegate al controller, rilevando quelle che si estendono fino al connettore. Il percorso può includere componenti passivi e più net. Il Wizard identifica ciascuna di queste coppie tramite una xSignal class, con ogni ramo della coppia identificato da una xSignal controller-connettore.
Una volta selezionato USB 3.0, la pagina includerà un'impostazione per Matched Length Tolerance Within Diff Pair. Immettere un valore appropriato. Questo valore viene utilizzato per la regola di progettazione creata dal Wizard e può essere modificato in qualsiasi momento nel PCB Rules and Constraints Editor. Le impostazioni definite dall'utente come questa vengono salvate per usi futuri.
Per USB 3.0, ogni porta utente USB è indicata come channel. Come mostrato nell'immagine, ogni canale include tre coppie differenziali: Transmit, Receive e Data.
Per USB 3.0, il requisito critico di progettazione del routing è l'abbinamento delle lunghezze di routing all'interno di ciascuna coppia; l'abbinamento delle lunghezze tra coppie non è altrettanto critico. A causa di questo requisito e del fatto che la regola di progettazione Matched Length richiede coppie differenziali per verificare le lunghezze all'interno di una coppia di net, il Wizard controllerà le definizioni di Differential Pair e creerà automaticamente coppie differenziali appropriate se non ne esistono. La regola di progettazione Matched Length creata dal Wizard viene quindi configurata per verificare l'abbinamento delle lunghezze Within Differential Pair Length. Si noti che la regola è configurata per confrontare le lunghezze dei rami all'interno della coppia per l'xSignal complessivo; non confronta le lunghezze dei rami all'interno di ciascuna coppia differenziale.
Selezionare i componenti sorgente e destinazione

In questa pagina, il Wizard identifica tutti i potenziali componenti sorgente e connettori di destinazione in base al prefisso del designatore e al numero di pin.
- Impostare il prefisso di filtro per il designatore Controller, il designatore Connector e i valori Min Pin Count secondo necessità.
- Selezionare un singolo componente sorgente.
- Selezionare il/i componente/i di destinazione.
Se si selezionano più componenti di destinazione, è necessario controllare la sintassi di denominazione di xSignal e net per ciascuno di questi componenti utilizzando il menu a discesa nella pagina successiva del Wizard.
I canali definiscono gruppi di coppie differenziali

In questa pagina, definire una sintassi di denominazione che il Wizard possa utilizzare per identificare le net rilevanti delle coppie Transmitter, Receiver e Data, che vengono quindi incluse negli xSignals. Ogni coppia di xSignals viene quindi raggruppata in una xSignal class e queste classi vengono utilizzate per definire l'ambito della regola di progettazione Matched Length.
La funzionalità di questa pagina è la seguente:
- Il designatore del Controller viene visualizzato accanto all'etichetta Components. Accanto a questo, il menu a discesa include tutti i Connectors selezionati nella pagina precedente del Wizard.
- Le opzioni di sintassi di denominazione mostrate si applicano a ciascuno dei connettori elencati nel menu a discesa. Selezionarli uno alla volta e verificare che la sintassi di denominazione scelta sia completa e appropriata.
- Come detto, per USB 3.0 ogni porta utente USB è indicata come channel. È possibile impostare il numero di canali (Channels Total) da 1 a 32. In genere, ogni connettore ha un solo canale.
- All'interno di ciascun canale USB 3.0 sono presenti tre percorsi di coppie differenziali: Transmit, Receive e Data, che vanno dal Controller al Connettore. Il Wizard creerà una xSignal, che attraversa i componenti in serie secondo necessità, per ogni net positiva, e un'altra xSignal per ogni net negativa, quindi una xSignal class per rappresentare quella coppia Controller-Connettore. Il gruppo Define xSignal Class Name Syntax viene utilizzato per specificare i nomi di queste xSignal Classes. Il Wizard crea anche Differential Pairs appropriate, se non sono già definite.
- Define xSignal Class Name Syntax – le xSignal Classes create verranno denominate come specificato, con a ciascun canale assegnato un valore numerico al posto di
[#]. Immettere la stringa preferita secondo necessità.
- Channel <N> – questi campi definiscono le maschere utilizzate per identificare i nomi delle net rilevanti di Transmitter / Receiver / Data.
- Il Wizard dispone di un ampio modello di schemi di denominazione predefiniti che controlla e di solito compila automaticamente questi campi. Se non lo fa, selezionare il nome corretto dal menu a discesa o digitare una sintassi di nome net appropriata.
- Una volta configurati i campi di denominazione, fare clic sul pulsante Analyze Nets & Create xSignal Classes.
- Il Wizard creerà gli xSignals, le xSignal Classes e le regole Matched Length per tutti i canali. Si noti che questi elementi vengono creati ogni volta che si riesegue il Wizard. Eliminarli se si prevede di eseguire nuovamente il Wizard.
- I nomi risultanti delle xSignal Classes e i relativi xSignals membri sono riportati nella griglia.
- Fare clic sul pulsante Create Spreadsheet per generare un foglio di calcolo in formato XLS degli xSignals creati dal Wizard.
- Fare clic su Finish per completare il Wizard.
Finestra di dialogo Create xSignals Between Components
Se si dispone di un numero elevato di xSignals da definire, è più efficiente utilizzare la finestra di dialogo Create xSignals Between Components. Accessibile tramite il comando Design » xSignals » Create xSignals, la finestra di dialogo presenta i componenti Source e Destination, e consente di creare uno o più xSignals in un'unica operazione.

Utilizzare la finestra di dialogo per identificare e creare rapidamente più xSignals e aggiungerli alla xSignal class richiesta.
L'approccio è il seguente:
- Selezionare un singolo Source Component.
- Selezionare uno o più Destination Components richiesti.Selezionare il Source Net(s) di interesse. Verranno elencate tutte le net attualmente collegate al componente sorgente scelto. Per le net associate a una classe specifica, scegliere quella classe dal menu a discesa Net Class.
- Fare clic sul pulsante Analyze. Il software tenta di identificare i potenziali xSignals esistenti tra i componenti sorgente e destinazione scelti per le net selezionate. Tutti i possibili xSignals che includono le net scelte e si estendono tra i componenti sorgente e destinazione scelti verranno elencati nel campo xSignals. Si noti che l'algoritmo di analisi segue la topologia corrente delle net scelte e questo influenzerà gli xSignals proposti.
Il software può anche cercare attraverso componenti in serie, se necessario, selezionando l'opzione appropriata nel menu a discesa Analyze: Search for direct connections, Through 1 series component, Through 2 series components oppure Multipath coupled nets.
- Dopo aver eseguito l'analisi, i potenziali xSignals verranno elencati nella parte inferiore della finestra di dialogo e saranno tutti abilitati per la creazione. Controlla attentamente l'elenco degli xSignals proposti e abilita solo quelli necessari. Usa i comandi disponibili nel menu contestuale del tasto destro per attivare/disattivare più voci.
- Seleziona il class richiesto nella parte inferiore della finestra di dialogo oppure digita un nome per creare una nuova classe. Se non viene scelta alcuna classe, gli xSignals vengono comunque creati e puoi aggiungerli a qualsiasi classe xSignal nella finestra di dialogo Object Class Explorer (Design » Classes). L'uso delle classi può semplificare notevolmente la creazione e la configurazione delle regole di progettazione.
- Fai clic su OK per creare gli xSignals.
La finestra di dialogo si chiuderà e tornerai nell'area di progettazione. I nuovi xSignals saranno elencati nella modalità xSignals del pannello PCB.
Usa i filtri sopra ogni elenco per individuare rapidamente i componenti o le net di interesse; i caratteri jolly sono supportati.
Finestra di dialogo Create xSignals From Connected Nets
Se stai creando xSignals che includono componenti di terminazione in serie, un buon approccio consiste nell'usare il comando Create xSignals from connected nets. Il comando è disponibile ogni volta che è selezionato un componente, sia tramite il sottomenu Design » xSignals nei menu principali sia tramite il sottomenu xSignals del clic destro.
Questo comando è progettato per costruire xSignals verso l'esterno a partire da un componente di terminazione in serie selezionato, come un resistore o un condensatore. Supporta sia uno o più componenti discreti, sia uno o più componenti multiistanza in stile pack, come le reti di resistori. Dopo aver eseguito questo comando, si aprirà la finestra di dialogo Create xSignals From Connected Nets.

Usa la finestra di dialogo per creare xSignals che si estendono attraverso un componente in serie selezionato. In questo esempio sono stati proposti due possibili xSignals, ma ne verrà creato solo uno.
L'approccio è il seguente:
- Seleziona un singolo Source Component.
- Seleziona il Source Net(s) di interesse. Verranno elencate tutte le net attualmente collegate al componente sorgente scelto. Per le net associate a una classe specifica, scegli quella classe dal menu a discesa Net Class.
- Fai clic sul pulsante Analyze. Il software tenta di identificare i potenziali xSignals esistenti per i componenti sorgente scelti e per le relative net selezionate. Tutti i possibili xSignals verranno elencati nel campo xSignals.
- Dopo aver eseguito l'analisi, i potenziali xSignals verranno elencati nella parte inferiore della finestra di dialogo e saranno tutti abilitati per la creazione. Controlla attentamente l'elenco degli xSignals proposti e abilita solo quelli necessari. Usa i comandi disponibili nel menu contestuale del tasto destro per attivare/disattivare più voci.
- Seleziona il class richiesto nella parte inferiore della finestra di dialogo oppure digita un nome per creare una nuova classe. Se non viene scelta alcuna classe, gli xSignals vengono comunque creati e puoi aggiungerli a qualsiasi classe xSignal nella finestra di dialogo Object Class Explorer (Design » Classes). L'uso delle classi può semplificare notevolmente la creazione e la configurazione delle regole di progettazione.
- Fai clic su OK per creare gli xSignals.
La finestra di dialogo si chiuderà e tornerai nell'area di progettazione. I nuovi xSignals saranno elencati nella modalità xSignals del pannello PCB.
Usa i filtri sopra ogni elenco per individuare rapidamente i componenti o le net di interesse; i caratteri jolly sono supportati.
Il ruolo della topologia della net
Quando definisci un xSignal, esso è compreso tra due nodi o pad. Tuttavia, quando selezioni quell'xSignal nella modalità xSignals del pannello PCB, esso seguirà effettivamente il percorso delle linee di connessione che corre tra quei due pad, indicando che questo è il percorso che il software presume verrà usato per instradare l'xSignal. Il motivo è che sta rispettando la topologia definita per quella net. La topologia della net è definita dalla regola di progettazione Routing Topology applicabile; la topologia predefinita è Shortest.
La semplice animazione mostra una CPU collegata a quattro chip di memoria DDR3, che verrà instradata usando una strategia di instradamento fly-by. La classe xSignal DRAM_A2 contiene quattro xSignals. Prima viene selezionata la classe, poi ogni xSignal viene selezionato a turno. Puoi vedere come il percorso dell'xSignal segue la topologia della net, che attualmente è impostata sul valore predefinito - Shortest.

Poiché la topologia della net è attualmente impostata su Shortest, gli xSignals non stanno seguendo il percorso richiesto dal processore ai chip di memoria.
Se prevedi di usare la finestra di dialogo Create xSignals Between Components, dovrai configurare la topologia della/e net per assicurarti che l'algoritmo di analisi xSignal comprenda il percorso previsto dell'xSignal instradato.
Comandi di creazione xSignal
Oltre al comando Design » xSignals » Create xSignals, nel sottomenu xSignals sono presenti altri comandi di creazione xSignal quando vengono soddisfatte determinate condizioni.
Di seguito è riportato un riepilogo dei comandi e di quando sono disponibili:
| Comando |
Descrizione |
| Create xSignal from selected pins |
Crea immediatamente un singolo xSignal. Questo comando è disponibile quando sono selezionati due o più pad nell'area di progettazione ed è lo stesso comando presentato quando fai clic con il tasto destro su uno dei pad selezionati.
|
| Create xSignals between components |
Questo comando è disponibile quando sono selezionati componenti nell'area di progettazione. Quando viene eseguito, si apre la finestra di dialogo Create xSignals Between Components con il/i componente/i già selezionato/i. Assicurati che siano selezionati i componenti Source e Designation corretti, quindi completa il processo di analisi/creazione.
Dopo aver avviato il comando, si aprirà la finestra di dialogo Create xSignals Between Components dialog. Usa la finestra di dialogo per creare gli xSignals come segue:
- Il componente sorgente scelto apparirà selezionato nell'area Source Component.
- Qualsiasi altro componente selezionato nell'area di lavoro apparirà selezionato nell'area Destination Components. In caso contrario, effettua ora la/le selezione/i.
- Per impostazione predefinita, saranno selezionate tutte le net associate ai pad del componente sorgente (nell'area Source Component Nets). Modifica questa selezione secondo necessità.
-
Fai clic sul pulsante Analyze - il software tenta di identificare i potenziali xSignals esistenti tra i componenti sorgente e destinazione scelti, per le net selezionate.
Tieni presente che l'algoritmo di analisi segue la topologia corrente delle net scelte.
Il software può anche cercare attraverso componenti in serie, se necessario, selezionando la modalità appropriata dal menu a discesa associato al pulsante. Le modalità disponibili sono: Search for direct connections, Through 1 series component, Through 2 series components e Multipath coupled nets.
- Tutti gli xSignals identificati sono elencati nell'area xSignals della finestra di dialogo. Per impostazione predefinita, sono tutti selezionati per la creazione - modifica questa impostazione secondo necessità.
- Facoltativamente, puoi associare gli xSignals creati a una classe xSignal. Scegli una classe xSignal esistente oppure inserisci un nome per una nuova classe. Se lo desideri, puoi lasciare il campo vuoto; gli xSignals possono sempre essere aggiunti come membri alla classe richiesta in una fase successiva.
- Fai clic su OK per creare gli xSignals. La finestra di dialogo si chiuderà e tornerai nell'area di progettazione, che presenterà una vista filtrata che mostra gli xSignals appena creati. Se è stata specificata una classe xSignal, questa verrà creata (se non esiste già) e gli xSignals vi saranno associati.
|
| Create xSignals from connected nets |
Usa questo comando quando sono presenti uno o più componenti di terminazione in serie per i quali creare xSignals. Seleziona il/i componente/i di terminazione, quindi esegui il comando per aprire la finestra di dialogo Create xSignals from Connected Nets, pronta per completare il processo di creazione di un insieme di xSignals. Usa la finestra di dialogo per creare gli xSignals come segue:
- Il/i componente/i sorgente scelto/i apparirà/appariranno selezionato/i nell'area Source Component.
- Per impostazione predefinita, saranno selezionate tutte le net associate ai pad del/dei componente/i sorgente (nell'area Source Component Nets). Modifica questa selezione secondo necessità.
-
Fai clic sul pulsante Analyze - il software tenta di identificare i potenziali xSignals esistenti per le net selezionate che si diramano dal/dai componente/i scelto/i.
Tieni presente che l'algoritmo di analisi segue la topologia corrente delle net scelte.
- Tutti gli xSignals identificati sono elencati nell'area xSignals della finestra di dialogo. Per impostazione predefinita, sono tutti selezionati per la creazione - modifica questa impostazione secondo necessità.
- Facoltativamente, puoi associare gli xSignals creati a una classe xSignal. Scegli una classe xSignal esistente oppure inserisci un nome per una nuova classe. Se lo desideri, puoi lasciare il campo vuoto; gli xSignals possono sempre essere aggiunti come membri alla classe richiesta in una fase successiva.
- Fai clic su OK per creare gli xSignals. La finestra di dialogo si chiuderà e tornerai nell'area di progettazione, che presenterà una vista filtrata che mostra gli xSignals appena creati. Se è stata specificata una classe xSignal, questa verrà creata (se non esiste già) e gli xSignals vi saranno associati.
|
| Create xSignals |
Apre la finestra di dialogo Create xSignals Between Components. Questo comando è sempre disponibile. Usa la finestra di dialogo per creare gli xSignals come segue:
- Scegli un componente sorgente nell'area Source Component.
- Scegli uno o più componenti di destinazione nell'area Destination Components.
- Tutte le net associate ai pad del componente sorgente saranno elencate nell'area Source Component Nets. Seleziona le net di interesse.
-
Fai clic sul pulsante Analyze - il software tenta di identificare i potenziali xSignals esistenti tra i componenti sorgente e destinazione scelti per le net selezionate.
Tieni presente che l'algoritmo di analisi segue la topologia corrente delle net scelte.
Il software può anche cercare tra i componenti in serie, se necessario, selezionando la modalità appropriata dal menu a discesa associato al pulsante. Le modalità disponibili sono: Search for direct connections, Through 1 series component, Through 2 series components e Multipath coupled nets.
- Tutti gli xSignals identificati sono elencati nell’area xSignals della finestra di dialogo. Per impostazione predefinita, sono tutti selezionati per la creazione: modificare questa impostazione secondo necessità.
- Facoltativamente, è possibile associare gli xSignals creati a una classe xSignal. È possibile scegliere una classe xSignal esistente oppure immettere un nome per una nuova classe. Se lo si desidera, il campo può essere lasciato vuoto; gli xSignals potranno sempre essere aggiunti come membri alla classe richiesta in un secondo momento.
- Fare clic su OK per creare gli xSignals. La finestra di dialogo si chiuderà e si tornerà allo spazio di progettazione, che presenterà una vista filtrata che mostra gli xSignals appena creati. Se è stata specificata una classe xSignal, questa verrà creata (se non esiste già) e gli xSignals verranno associati ad essa.
|
Definizione del punto di diramazione in uno schema a T bilanciato
Una delle sfide di una strategia di instradamento a T bilanciato è come equalizzare la lunghezza dei tronchi e dei rami oltre i punti a T. I nodi disponibili nella net sono presenti solo sui pad, quindi non è possibile definire xSignals separati per il tronco e dal punto di diramazione fino alla fine di ciascun ramo. I punti di diramazione sono indicati dai punti rossi nell’immagine seguente.
Un modo per risolvere questo problema consiste nell’aggiungere alla net un componente a pin singolo. Creare un componente con un solo pad delle stesse dimensioni delle via utilizzate nel progetto. Se il pad del componente del punto di diramazione è su singolo layer, può anche essere usato in combinazione con una blind via o una buried via, posizionandolo sul layer iniziale o finale della via, offrendo completa flessibilità su come viene creato l’instradamento. Se si desidera includere il componente del punto di diramazione solo sul PCB, impostare Type del componente del punto di diramazione su Mechanical per escluderlo dalla BOM ed evitare eventuali problemi di sincronizzazione con lo schema. Se si prevede di includere il componente del punto di diramazione nello schema, il Type del componente può essere impostato su Standard (no BOM).

L’instradamento a T bilanciato può richiedere lunghezze abbinate tra punti di diramazione intermedi.
Poiché il punto di diramazione è un nodo nella net, ora è possibile definire xSignals solo per il tronco, per ciascun ramo principale e, se necessario, per ciascun ramo secondario. Questi possono quindi essere usati per definire l’ambito delle regole di progettazione di lunghezza abbinata, offrendo al progettista il pieno controllo sul livello di precisione con cui eseguire l’abbinamento delle lunghezze.
Gestione degli xSignals
Nella modalità xSignals del pannello , le sue tre aree principali cambiano per riflettere la gerarchia xSignal del progetto PCB corrente (in ordine dall’alto):
- xSignal Classes
- Singoli xSignals all’interno di una classe
- Singoli xSignal Primitives che costituiscono uno xSignal (pad, tracce e via)
Area delle classi xSignal
L’area xSignal Classes elenca tutte le raccolte di classi xSignal che sono state definite oppure tutte le classi disponibili (<All xSignals>).
Selezionare una classe per visualizzare il relativo elenco di xSignals nell’area centrale (xSignals) e per mostrarli nello spazio di progettazione PCB.
Per creare una nuova classe xSignal dalla raccolta xSignal esistente, fare clic con il pulsante destro del mouse nell’area, quindi selezionare Add Class dal menu contestuale per aprire la finestra di dialogo Edit xSignal Class dialog. La finestra di dialogo elenca gli xSignals disponibili che possono essere aggiunti o rimossi come membri della nuova classe utilizzando i pulsanti di gestione. Utilizzare il campo Name per definire un nome appropriato per la nuova classe xSignal.

Creare o aggiungere a una classe xSignal aggiungendo/rimuovendo membri xSignal tramite la finestra di dialogo Edit xSignal Class.
Il menu contestuale accessibile con il pulsante destro del mouse nell’area del pannello offre anche la possibilità di rimuovere (Delete) o modificarne la rappresentazione visiva nello spazio di progettazione PCB (ad esempio, Change xSignal Color).
Area xSignals
L’area centrale del pannello visualizza gli xSignals delle classi xSignal selezionate nell’area superiore.

Per impostazione predefinita, con ciascuno xSignal vengono elencate le seguenti informazioni:
-
– questa funzione ha due scopi:
- sfondo colorato – il colore assegnato allo xSignal (la linea sottile che rappresenta lo xSignal nello spazio di progettazione). Fare clic con il pulsante destro del mouse per Change xSignal Color per tutti gli xSignals attualmente selezionati.
- casella di controllo della visibilità – usarla per visualizzare sempre lo xSignal, indipendentemente dal fatto che sia attualmente selezionato o meno.
- Name – nome dello xSignal.
- Node Count – il numero totale di pad in questo xSignal.
- Routed Length – la somma delle lunghezze dei segmenti di traccia e arco posizionati che formano l’instradamento, più la distanza verticale attraversata tramite le via (vedere la nota sotto). Il calcolatore della lunghezza instradata non tenta di risolvere segmenti di traccia sovrapposti o serpentine di instradamento all’interno dei pad.
- Signal Length – calcolo accurato della distanza totale da nodo a nodo. Si applicano le seguenti note ai calcoli della lunghezza del segnale:
- Total Pin/Package Length – la somma di tutti i valori Pin Package Length in tutti i pad di quello xSignal. Questo valore è definito come proprietà del pad PCB e può anche essere specificato nel pin dello schema.
- Unrouted (Manhattan) Length – la distanza verticale più orizzontale (X+Y) di tutte le sezioni non instradate.
- Margin – la differenza tra la lunghezza effettiva del segnale e la lunghezza target del segnale definita dalle regole di progettazione Length/Matched Length applicabili.
Fare clic con il pulsante destro del mouse nell’area, quindi usare il sottomenu Columns per aggiungere la seguente colonna:
- Delay – il tempo necessario affinché un segnale si propaghi lungo quel percorso.
Usare il sottomenu Columns per mostrare/nascondere le colonne.
Vertical distance through a via – la distanza verticale che un segnale percorre attraverso una via è la somma di tutti gli spessori degli strati (rame e dielettrico) tra gli strati di rame di inizio e fine, più metà dello spessore dello strato iniziale e metà dello spessore dello strato finale. Gli spessori degli strati sono definiti nel
Layer Stack.
Area primitive xSignal
La terza area del pannello PCB, xSignal Primitives, elenca tutti gli elementi costitutivi (primitive) dello xSignal attualmente selezionato.
Selezionare la casella di controllo Show nodes only dell’area per limitare l’elenco delle primitive ai pad che sono i nodi di inizio/fine dello xSignal. In questa modalità, lo xSignal selezionato verrà mostrato nello spazio di progettazione PCB come pad nodo uniti da una traccia sottile (anziché da tracce di rame) che rappresenta il percorso dello xSignal.

L’area inferiore xSignal Primitives elenca tutti gli elementi dello xSignal selezionato, come pad, via e tracce, e il relativo ritardo.
Visualizzazione degli xSignals nello spazio di progettazione
Gli xSignals vengono visualizzati nello spazio di progettazione come una linea sottile. La linea indica il percorso seguito dallo xSignal. La lunghezza complessiva della linea rappresenta il contributo X/Y alla lunghezza del segnale di quello xSignal. Il contributo Z, ovvero verticale, alla lunghezza complessiva del segnale è descritto sopra.
Nell’immagine seguente sono mostrati gli xSignals di una coppia differenziale. Lo xSignal del membro non selezionato della coppia rimane visibile perché la casella di controllo di quello xSignal è abilitata nel pannello.

Gli xSignals sono rappresentati nello spazio di progettazione da una linea sottile. Entrambi gli xSignals di questa coppia differenziale rimangono visibili anche se nel pannello ne è selezionato solo uno, perché la casella di controllo della visibilità è abilitata.
Eliminazione di uno xSignal
Selezionare lo xSignal nel pannello, quindi fare clic sul pulsante Delete sotto l’elenco degli xSignals. In alternativa, fare clic con il pulsante destro del mouse e selezionare Delete dal menu contestuale, oppure premere Delete sulla tastiera.
Parole chiave di query xSignal
L’editor PCB include un potente e sofisticato filtering engine. Questo motore viene utilizzato per identificare gli oggetti durante la ricerca di oggetti nello spazio di progettazione, l’applicazione delle regole durante attività di progettazione interattive e automatiche e la verifica della conformità alle regole. Il progettista indica al motore di filtraggio quali oggetti gli interessano scrivendo una query, utilizzando parole chiave di query riconosciute dal motore di filtraggio.
Le seguenti parole chiave di query di tipo xSignal sono state aggiunte per l’uso nelle regole di progettazione e nei filtri dello spazio di progettazione:
Parole chiave di tipo controllo appartenenza
- InxSignal - L’oggetto è nello xSignal specificato, ad esempio,
InxSignal('DRAM_A0_PP1')
- InxSignalClass - L’oggetto è nella classe xSignal specificata, ad esempio,
InxSignalClass('PCIE')
- IsxSignal - L’oggetto è uno xSignal con il nome specificato, ad esempio,
IsxSignal('DRAM_A0_PP1')
Parole chiave di tipo controllo attributo
- InAnyxSignal - L’oggetto è in uno qualsiasi xSignal, ad esempio,
InAnyxSignal
Supporto delle regole di progettazione per xSignals
Le regole di progettazione sono il modo in cui si traducono i requisiti in un insieme di istruzioni che l’editor PCB può comprendere e rispettare. Le regole possono essere controllate durante il posizionamento degli oggetti, definito Online DRC, oppure come post-processo, definito Batch DRC. Gli xSignals possono essere utilizzati per definire gli oggetti ai quali deve essere applicata una regola di progettazione.
► Ulteriori informazioni su Design Rules
► Ulteriori informazioni su Length Tuning
Regola Matched Length
La regola di progettazione Matched Length viene utilizzata per garantire che la lunghezza delle net specificate rientri nell’intervallo definito. Questa regola è essenziale in una progettazione ad alta velocità, dove la sfida non riguarda solo il tempo necessario affinché i segnali arrivino a destinazione (determinato dalla loro lunghezza complessiva), ma anche quanto sia importante che i segnali specificati arrivino contemporaneamente. A seconda della velocità di commutazione dei segnali, della funzione del segnale e dei materiali utilizzati nella scheda, la differenza consentita può essere anche di 500 mil oppure di appena 1 mil.
L’immagine seguente mostra un esempio della regola di progettazione Matched Length configurata per agire sugli xSignals nella classe xSignal PCIE e verificare una differenza di lunghezza all’interno di ciascuna coppia differenziale in quella classe xSignals. Ogni coppia nella classe deve avere lunghezze instradate tali da produrre un Delay Tolerance non superiore a 2ps di ritardo tra le due net di quella coppia.

Si noti che i vincoli della regola di progettazione Matched Length richiedono di scegliere tra l’abbinamento della lunghezza di tutte le net interessate (Group Matched Lengths) oppure l’abbinamento delle due net all’interno di ciascuna coppia differenziale nelle net interessate.
L’immagine seguente mostra la classe xSignal PCIE_TX selezionata nel pannello e i relativi xSignals selezionati nell’area di progettazione.

Oltre alla classe PCIE, sono definite anche classi per le coppie TX e RX. Si noti che uno degli xSignals TX non soddisfa la regola di matched length applicabile. ##
Se si prevede di eseguire il tuning di lunghezza di xSignals che includono net singole e coppie differenziali, creare le seguenti regole:
- Una regola di matched length che definisce i requisiti di abbinamento della lunghezza between nets and differential pairs in xSignals. Per configurare la regola in modo che verifichi la lunghezza di una net/coppia rispetto alla lunghezza di un’altra net/coppia, abilitare l’opzione Group Matched Lengths .
- Una seconda regola di matched length, con priorità più alta, che definisce i requisiti di abbinamento della lunghezza within-pair. Per configurare la regola in modo che verifichi la lunghezza di un membro della coppia rispetto all’altro membro della coppia, abilitare l’opzione Within Differential Pair Length .
Un buon approccio per regolare le lunghezze di tali xSignals è il seguente:
- Instradare le net e le coppie differenziali dello xSignal.
- Eseguire il tuning di lunghezza delle net singole usando il comando Interactive Length Tuning .
- Eseguire il tuning di lunghezza between delle coppie usando il comando Interactive Differential Pair Length Tuning . Il tuning di lunghezza utilizza la lunghezza del segnale più lungo nella coppia più lunga come Target Length e regola la net più lunga della coppia su questa lunghezza.
- Eseguire il tuning di lunghezza della net più corta within di ciascuna coppia rispetto all’altra net della coppia usando il comando Interactive Length Tuning .
- Ora è possibile usare il pannello PCB Rules and Violations per verificare le regole within-pair Matched Net Length. Per farlo, selezionare Matched Net Lengths nella sezione Rule Classes del pannello, quindi fare clic con il pulsante destro sulla regola Matched Length richiesta e selezionare il comando Run DRC Rule <RuleName> dal menu contestuale. Regolare le serpentine di tuning delle net singole, se necessario.
- Quindi usare il pannello PCB Rules and Violations per verificare le regole between-pair Matched Net Length, utilizzando il processo appena descritto. Regolare le serpentine di tuning delle coppie differenziali, se necessario.
Regola Length
La regola di progettazione Length viene utilizzata per garantire che la lunghezza complessiva instradata rientri nell’intervallo specificato. Questa regola viene tipicamente usata per garantire che le net di destinazione non siano più lunghe della lunghezza specificata, ad esempio per assicurare che i requisiti di temporizzazione del circuito siano soddisfatti. La regola Length rispetta le query di tipo xSignal elencate sopra.
Regola Return Path
La regola di progettazione Return Path verifica la presenza di un percorso di ritorno continuo del segnale sul layer di riferimento designato sopra o sotto i segnali interessati dalla regola. Il percorso di ritorno può essere creato da riempimenti, regioni e colate poligonali posizionati su un layer di segnale, oppure può essere un piano.
I layer del percorso di ritorno sono i layer di riferimento definiti nel profilo di impedenza selezionato. Aggiungere una nuova regola di progettazione Return Path nella categoria di regole High Speed.

L’immagine seguente mostra una violazione della regola Return Path, in cui il poligono del percorso di ritorno dello xSignal presenta un foro per consentire il passaggio di una via.
Uso del pannello PCB Rules and Violations per individuare una violazione della regola Return Path. ##
Calcoli accurati della lunghezza
Un requisito fondamentale nella definizione delle regole di progettazione ad alta velocità è il calcolo accurato delle lunghezze di instradamento. L’approccio tradizionale al calcolo della lunghezza del segnale consiste nel sommare la lunghezza della linea centrale di tutti i segmenti utilizzati in un instradamento, nonché la distanza verticale dovuta all’altezza delle via, originariamente determinata dallo spessore della scheda.
Questo approccio non è adeguato per una progettazione ad alta velocità per diversi motivi, tra cui:
- Oggetti impilati e sovrapposti: un algoritmo che somma semplicemente la lunghezza della linea centrale di tutti gli oggetti in una net non tiene conto di oggetti impilati o sovrapposti.
- Percorso di instradamento irregolare all’interno di un oggetto: spesso sono presenti oggetti di instradamento completamente all’interno di un pad o di una via, che possono aggiungere falsamente lunghezza, come mostrato nella prima immagine sotto. La seconda immagine mostra il modo corretto di calcolare la lunghezza quando un oggetto fill fa parte dell’instradamento.
- Lunghezza della via: le via cieche e interrate non attraversano tutti i layer della scheda, quindi lo spessore della scheda non è sufficientemente accurato per determinare la lunghezza verticale. Deve essere utilizzata l’altezza reale della via, tenendo conto degli spessori di rame e di isolamento attraversati dalla via.
Il calcolatore di lunghezza dell’editor PCB restituisce la lunghezza di instradamento più accurata possibile.

Il calcolo della lunghezza viene eseguito con precisione lungo la linea centrale del percorso più corto, come mostrato in queste due immagini.

Per le via vengono calcolate lunghezze accurate, basate sui layer attraversati e sulle dimensioni dello stackup. Immagine dal pannello PCB in modalità Nets.
Ritardo del package del pin
In ogni progettazione ad alta velocità oltre i 500 MHz, il mezzo di connessione, o bond wire verso il die, introduce un ritardo nel segnale. Questo ritardo interno al dispositivo è definito ritardo del package del pin. Anche se due dispositivi sono pienamente compatibili a livello di progettazione e PCB, i tempi di propagazione del package saranno diversi tra dispositivi differenti, quindi dovranno essere presi in considerazione. Le informazioni sul flight time possono essere trovate nel documento IBIS 6 del dispositivo. Le informazioni sui Package Pins devono essere considerate durante la fase di pianificazione I/O oppure dopo la sintesi per un FPGA. Tutti i produttori di dispositivi dovrebbero essere in grado di fornire i ritardi del package, che saranno specificati come ritardo in picosecondi oppure come lunghezza.
Il ritardo può essere incluso nel progetto come Pin Package Length oppure come Propagation Delay, utilizzando i rispettivi campi per il pin nell’editor schematico o per il pad/via nell’editor PCB. I valori inseriti vengono gestiti come segue:
Pin Package Length - tutte le lunghezze del package del pin all’interno di ciascuna net vengono sommate nell’editor PCB per ottenere la Total Pin/Package Length, che è inclusa nella Signal Length complessiva di quella net. Fare riferimento alla modalità Nets del pannello PCB per scoprire di più sulla Signal Length.
Propagation Delay - tutti i valori di ritardo definiti dall’utente per pin/pad e via in ciascuna net vengono sommati al ritardo di instradamento di quella net nell’editor PCB. Il ritardo di instradamento viene calcolato automaticamente dal field solver Simbeor® integrato nel Layer Stack Manager. I ritardi di pad e via non vengono calcolati automaticamente, ma possono essere definiti dall’utente.
- Le regole di progettazione Length e Matched Length possono essere configurate in base alla lunghezza o al ritardo.
- Signal Length, Total Pin/Package Length e Delay possono essere visualizzati in varie modalità del pannello PCB, incluse la modalità Nets, la modalità Differential Pairs Editor e la modalità xSignals. Fare clic con il pulsante destro su un’intestazione di colonna nel pannello PCB per abilitare/disabilitare le colonne.
- Il Simbeor SFS (quasi-static field solver) di Simberian® viene utilizzato per calcolare il ritardo di instradamento, in base alle proprietà fisiche definite nel Layer Stack Manager.
- La Pin Package Length definita dall’utente e i valori di Propagation Delay sono indipendenti tra loro; vengono aggiunti ai valori di Signal Length e Delay come appena descritto. Poiché non interagiscono tra loro, entrambi i valori possono essere specificati, se necessario.
Inclusione del ritardo nello schema
Le lunghezze del package del pin possono essere definite come attributo del pin del componente nello schema nel pannello Properties in modalità Pin. Il software utilizzerà per impostazione predefinita le unità del documento sottostante; inserire le unità insieme al valore, se necessario.

Immettere la lunghezza del pin-package con le unità richieste.
- Le proprietà dei pin del componente possono anche essere modificate nell’editor di libreria o nel foglio schematico nella scheda Pins del pannello Properties in modalità Component. Fare clic su
in quella scheda del pannello per aprire il Component Pin Editor, dove è possibile modificare tutte le proprietà di tutti i pin di quel componente. I valori possono essere modificati direttamente nella griglia (selezionare una cella e digitare un nuovo valore) e i tasti cursore possono essere usati per spostarsi nelle celle adiacenti. Le unità predefinite verranno aggiunte automaticamente se non vengono digitate.
- In alternativa, usa il pannello SCH List panel per copiare/incollare più valori Pin/Pkg Lengths o Propagation Delay da un datasheet in un insieme di pin di componente selezionati nell’editor della libreria schematica (show image
). Oltre a incollare direttamente il contenuto degli appunti nelle celle selezionate, puoi anche fare clic con il pulsante destro nel pannello per accedere alla finestra di dialogo Smart Grid Paste dialog, che offre un maggiore controllo sul processo di importazione di dati aggiuntivi nei pin.
Definizione del ritardo nell’editor PCB
I valori Pin Package Length e Propagation Delay vengono trasferiti al layout PCB come mostrato nella modalità Pad del pannello Properties.

I valori Pin Package Length e Propagation Delay vengono trasferiti dallo schema al PCB, oppure possono anche essere definiti direttamente nel PCB.
Esame della lunghezza Pin/Package e del Propagation Delay nel pannello PCB
Il Pin/Pkg Length viene incluso automaticamente nei calcoli Signal Length, che vengono visualizzati in varie modalità del pannello PCB. Imposta il pannello sulla modalità Nets per esaminare (o modificare) il valore di Pin/Pkg Length per i pin della net scelta. Nota come la colonna Routed Length rifletta la lunghezza del routing e la colonna Signal Length rifletta la lunghezza del routing più eventuali Pin/Pkg Length presenti in quella net.

Il Pin/Pkg Length e il suo impatto sul Signal Length sono mostrati nella modalità Nets del pannello PCB.
Nell’immagine seguente, la colonna propagation Delay mostra che ci sono due coppie di xSignals che non soddisfano una regola di progettazione Matched Length. Poiché l’evidenziazione è nella colonna Delay, ciò indica che la regola è configurata per usare unità di ritardo anziché unità di lunghezza.
La colonna Delay mostra che ci sono due coppie di xSignals che non soddisfano una regola di progettazione Matched Length.
Signal Length, Total Pin/Package Length e Delay possono essere visualizzati in varie modalità del pannello PCB, incluse la modalità Nets mode, la modalità Differential Pairs Editor mode e la modalità xSignals mode. Fai clic con il pulsante destro su un’intestazione di colonna nel pannello PCB per abilitare/disabilitare le colonne.
Come la lunghezza viene inclusa negli xSignals
Il Pin/Pkg Length viene incluso automaticamente nella lunghezza complessiva dell’xSignal quando:
- Quel segnale fa parte di una definizione di xSignal
- Quel pad non è connesso in uno schema di routing fly-by (c’è una sola traccia collegata a quel pad)
I pad che sono connessi in uno schema di routing fly-by (con un punto di ingresso e un punto di uscita) sono esclusi dal calcolo della lunghezza.
Terminologia relativa alle net
Nell’editor PCB viene utilizzata la seguente terminologia:
- Net – una raccolta di pin di componenti (nodi) collegati tra loro. La disposizione di come questi nodi si collegano tra loro è detta topologia; la topologia predefinita è shortest.
- From-To – concettualmente, un From-To corre tra due nodi in una net. I From-Tos possono essere creati per seguire la topologia o disposizione dei nodi in quella net. Per esempio, la topologia della net potrebbe essere da R1-1 a U1-5 a U3-2 a R5-2. Questa net potrebbe avere tre From-Tos: da R1-1 a U1-5; da U1-5 a U3-2; e da U3-2 a R5-2. Se la topologia viene modificata, cambieranno anche i possibili From-Tos. I From-Tos vengono creati nella modalità From-To del pannello PCB facendo clic sul pulsante Generate per crearli in base a una topologia, oppure selezionando due pad in una net e poi facendo clic sul pulsante Add From To.
- xSignal – un insieme di nodi definito dall’utente, tipicamente un sottoinsieme di una net (da questo nodo a quel nodo), oppure una combinazione di due net che includono un componente in serie, come una resistenza di terminazione.