Se stai lavorando con un dispositivo ad alta velocità, probabilmente avrai bisogno di instradare coppie differenziali tra i componenti. Molte PCB ad alta velocità includono interfacce differenziali che richiedono specifici valori di impedenza in modalità dispari/differenziale, e il progettista del layout PCB dovrà specificare queste restrizioni geometriche nel loro Editor PCB per assicurarsi che le tracce abbiano i giusti valori di impedenza.
Il modo più veloce e accurato per fare ciò è fondere il calcolo dell'impedenza e la configurazione delle regole di progettazione in un unico flusso di lavoro. Altium Designer ti aiuta a fare questo con la funzionalità Layer Stack Manager, che passerà il risultato del suo calcolo all'Editor delle Regole e dei Vincoli PCB. Altre funzionalità come il limite di lunghezza di decoupling, il limite di lunghezza totale della traccia e i limiti di disallineamento di lunghezza/ritardo.
Quando hai bisogno di utilizzare coppie differenziali nel tuo dispositivo, dovrai definire quali reti utilizzeranno la segnalazione differenziale per interfacciarsi con i tuoi componenti. Semplicemente posizionare una rete non è sufficiente, una rete deve essere specificamente indicata come parte di un segnale differenziale. L'editor di schemi e layout in Altium Designer® include funzioni di definizione delle reti, e puoi definire coppie differenziali all'interno di una rete di segnale. Prima di tutto, dovrai selezionare alcuni componenti che comunicheranno tra loro, posizionarli nel tuo schema e definire quali porte utilizzeranno la segnalazione differenziale.
Qui, abbiamo tre obiettivi:
Per iniziare, esamineremo lo schema sottostante e definiremo le coppie differenziali di cui abbiamo bisogno per creare il nostro segnale differenziale. Questo schema contiene un Controller USB/Ethernet Microchip LAN9514I-JZX, un connettore di bordo e alcuni connettori USB schermati. Questi componenti possono essere trovati nel Pannello di Ricerca Parti del Produttore all'interno di Altium Designer. Per brevità, esamineremo solo la "Parte A" di questa lista di pin, etichettata con il designatore "U1A" sullo schema. Alcune delle uscite saranno collegate al connettore di bordo, e altre reti saranno instradate ai connettori USB.
Controller USB/Ethernet e alcune connessioni in Altium Designer
Nota che, in questo schema, ho definito le uscite USB come coppie differenziali con un simbolo di direttiva speciale. Puoi specificare quali connessioni sono coppie differenziali cliccando sul menu "Posiziona". Evidenzia l'opzione "Direttive" e seleziona "Coppia Differenziale". Sarai in grado di posizionare il simbolo della direttiva sulle connessioni che desideri funzionino come coppie differenziali. Semplicemente seleziona tutte le reti che faranno parte di una coppia differenziale.
Successivamente, ciascuna metà di una coppia differenziale è definita come positiva o negativa utilizzando il nome della sua rete. L'estremità positiva deve essere nominata usando “_P” alla fine dell'etichetta della rete, e l'estremità negativa deve essere nominata usando “_N”. Ho fatto ciò per le linee USB1-USB3 nello schema sopra. Possiamo fare lo stesso per le linee RX nella parte inferiore sinistra di U1A. Si noti che normalmente queste sarebbero collegate a un circuito di terminazione magnetica e Bob Smith prima di essere instradate a un connettore RJ45, ma useremo semplicemente la situazione semplice sopra per illustrare l'instradamento della coppia differenziale.
L'instradamento delle tue coppie differenziali con successo richiede l'impostazione delle Classi di Coppia Differenziale e delle Classi di Rete. L'obiettivo qui è raggruppare più coppie insieme in modo che le stesse regole di progettazione possano essere applicate a tutte le coppie nel gruppo. Questo gruppo è una Classe di Coppia Differenziale, e applicherai requisiti geometrici e requisiti di abbinamento della lunghezza nell'editor delle Regole di Progettazione.
Poiché dobbiamo definire una Classe per Coppia Differenziale, aggiungeremo ciò a ogni direttiva. Ho definito classi USB1 o USB 3 per ciascuna delle connessioni mostrate nello schema. Se fai doppio clic sul simbolo della direttiva, sarai in grado di definire classi e regole di progettazione per una connessione in una coppia differenziale. Puoi anche fare clic destro sul simbolo della direttiva e cliccare su "Proprietà". Questo aprirà una finestra di dialogo che ti permette di specificare un'etichetta, classi e regole per una coppia differenziale. Qui, aggiungeremo la "Classe di Rete per Coppia Diff." a ogni coppia e assegneremo un nome di classe per questa rete. Questo è mostrato di seguito per USB1_P.
Definizione di una classe di rete per coppia differenziale
Dovrai anche aggiungere regole di progettazione a questa direttiva. Questo può essere fatto all'interno del dialogo mostrato sopra per applicare una regola di progettazione a una singola rete. Se vuoi fare qualcosa come l'adeguamento della lunghezza per una coppia differenziale, o per un gruppo di coppie differenziali, è meglio farlo nell'Editor PCB. Se crei una regola dal dialogo sopra, verrà creata una nuova regola di progettazione che si applica solo a questa rete. Poiché vogliamo applicare l'adeguamento della lunghezza alle singole connessioni da USB1 a USB3, possiamo semplicemente definire le Classi di Coppia Differenziale mostrate sopra e attendere fino alla cattura dello schema per impostare una regola di progettazione per queste reti.
Prima di catturare lo schema e iniziare il routing, è necessario creare un nuovo PcbDoc che includa un profilo di impedenza per le coppie differenziali. Per questo semplice esempio, ho creato un PCB a 4 strati con un profilo di impedenza single-ended (50 Ohm, denominato S50) e un profilo di impedenza per coppia differenziale (90 Ohm, denominato D90). Il profilo di impedenza per coppia differenziale sarà utilizzato per le linee USB poiché queste necessitano di avere un'impedenza differenziale definita. Puoi farlo attraverso il Layer Stack Manager all'interno dell'Editor PCB. Il mio stackup e il profilo di impedenza sono mostrati di seguito.
Nota che ho definito la distanza tra le tracce nella coppia differenziale per essere il valore predefinito di 5 mil. Tuttavia, potresti considerare di cambiare questo, leggi questo articolo per una guida sulla definizione della distanza tra le tracce della tua coppia differenziale.
Definire un profilo di impedenza per il routing di coppia differenziale
A questo punto, possiamo catturare lo schema come un layout e instradare le coppie differenziali che abbiamo definito. Ho definito coppie differenziali per il resto delle connessioni tra l'FPGA e il connettore. Prima, aggiungi un nuovo PCB al tuo progetto e cattura il tuo schema. Puoi farlo aprendo il tuo PCB vuoto e cliccando sul menu "Design", seguito da "Importa modifiche da...". Nota che verrà creato un Room per default a meno che tu non deselezioni l'opzione nel dialogo dell'Ordine di Modifica Ingegneristica.
Prima di instradare, dobbiamo definire le regole di progettazione per le reti di coppie differenziali nel nostro schema. Questo si fa aprendo il dialogo Regole di Progettazione -> Regole nel PCB Editor. Qui, dobbiamo definire le seguenti regole affinché queste reti siano conformi alla specifica USB:
Quando definisci le regole di progettazione per queste coppie, puoi creare una regola per ogni rete e selezionare il profilo di impedenza che desideri utilizzare. Questo è mostrato di seguito.
Definizione delle regole di progettazione per reti individuali
Dato che stiamo lavorando con molteplici coppie differenziali che necessitano tutte delle stesse regole di progetto, un'opzione migliore è creare una singola regola di progetto che si applichi alla nostra Classe di Coppie Differenziali. Per controllare e creare classi, apri il dialogo Progetto -> Classi nel PCB Editor. Scendi fino alla voce Classi di Coppie Differenziali, clicca con il tasto destro e crea una nuova classe. Finché hai definito correttamente le tue coppie differenziali nello schema, ora puoi aggiungere queste coppie alla tua nuova classe. Questo è mostrato nell'immagine qui sotto.
Definizione di una classe per un gruppo di coppie differenziali USB
Ora, puoi andare all'editor delle regole di progetto e selezionare la classe di rete che hai appena creato per la tolleranza di lunghezza e i vincoli di routing, proprio come è stato fatto per le reti individuali. Nella voce "Dove L'oggetto Corrisponde" nella finestra della regola di progetto, seleziona la Classe di Coppie Differenziali che hai definito nella finestra sopra. La regola di progetto si applicherà ora a tutte le reti nella classe (USB1, USB2 e USB3). Questo applicherà il profilo di impedenza che hai definito nel Gestore dello Stack dei Strati a patto che selezioni l'opzione nella finestra della regola di progetto.
Regole di progettazione aggiuntive che potrebbero essere necessarie per garantire un'impedenza coerente e mantenere l'integrità del segnale includono:
La maggior parte di queste impostazioni delle regole può essere trovata nella sezione Alta Velocità dell'Editor delle Regole di Progettazione e dei Vincoli del PCB.
Ora è il momento di importare le modifiche dallo schema e iniziare il layout del PCB. Abbiamo lavorato molto sulla parte iniziale per impostare i vincoli prima di creare il layout del PCB, ma ora le regole di progettazione che abbiamo impostato garantiranno che le tracce instradate avranno l'impedenza richiesta, lo spazio e le regole di corrispondenza della lunghezza mentre le coppie vengono instradate. Una volta disposti i componenti nel modo desiderato, seleziona l'opzione di Routing Differenziale Interattivo in alto nella finestra dell'Editor PCB.
L'immagine qui sotto mostra il componente con cui vogliamo lavorare a metà del percorso. Quando utilizzi il router interattivo, devi solo fare clic su un'estremità della rete, e entrambe le tracce verranno instradate in tandem mentre ti muovi sulla scheda.
Sebbene non sia ideale permettere che ostacoli si frappongano tra le tracce in una coppia differenziale, il router può automaticamente spostare le tracce attorno all'ostacolo durante il routing. Per illustrare, è stato posizionato un resistore nel percorso di routing come mostrato di seguito. Man mano che le tracce si avvicinano al componente, verranno automaticamente spostate attorno al componente con la minima distanza possibile. Puoi quindi fare clic sul lato opposto del componente per impostare il tuo routing attorno al componente, e puoi continuare il routing verso la destinazione.
Nota che ciò può innescare un errore di regola di progettazione per la lunghezza massima non accoppiata, ma in generale l'evitamento degli ostacoli sarà seguito qui mentre ti muovi attorno al componente.
Per componenti più complessi, come BGA con un alto numero di sfere o un connettore SMD con passo pin stretto, sarà necessario utilizzare una strategia di fanout per creare connessioni per le tue tracce. Le impostazioni di routing aggiuntive per questi componenti possono essere controllate creando un oggetto Room intorno al componente. Puoi quindi specificare vincoli, come le distanze di sicurezza, all'interno di questa regione utilizzando la query personalizzata "Within Room" quando definisci le regole di progettazione. Questo ti permette di controllare il restringimento tra i pin, le lunghezze di decoupling, i segmenti paralleli e le distanze di sicurezza solo all'interno della regione della stanza, minimizzando qualsiasi disadattamento di impedenza guardando nei pinout dei componenti.
L'immagine qui sotto mostra due coppie differenziali cablate. Questo è un processo rapido e semplice grazie agli strumenti di routing interattivo in Altium Designer. A questo punto, puoi applicare la sintonizzazione della lunghezza a ciascuna coppia, o su più coppie. Dai un'occhiata a questo articolo per vedere come applicare la sintonizzazione della lunghezza alle coppie differenziali.
Routing di coppia differenziale completato in Altium Designer
Potresti anche utilizzare il pacchetto xSignals per esaminare l'integrità del segnale per queste reti, o per un gruppo di reti. Esaminare un gruppo di reti richiede la definizione di una classe xSignals dal dialogo Design -> Classi, proprio come è stato fatto per creare una Classe di Coppia Differenziale. Questo ti permette di esaminare i bordi di salita e discesa dei segnali, e qualsiasi overshoot/undershoot. Altre regole di progettazione ad alta velocità possono essere applicate a questo layout nello stesso modo in cui è stato fatto per la tolleranza di lunghezza e l'impedenza differenziale. Le regole di progettazione mostrate qui sono la chiave per un routing rapido e facile delle coppie differenziali.
Altium Designer unifica le informazioni nel tuo progetto con i tuoi strumenti di routing, assicurando che il tuo prossimo dispositivo funzioni come previsto. L'ambiente integrato in Altium Designer permette a tutti i tuoi strumenti di comunicare utilizzando lo stesso motore di progettazione basato su regole. I migliori strumenti di schematica, CAD, simulazione e routing sono esattamente ciò di cui hai bisogno per creare i migliori PCB.
Parla oggi con un esperto di Altium Designer se vuoi saperne di più su Altium Designer.