La tua strategia di instradamento dei segnali ad alta velocità richiede attenzione ai vincoli e una pianificazione creativa del layout. Ecco come instradare correttamente i segnali ad alta velocità.
È molto probabile che il tuo moderno PCB digitale si comporti come un sistema digitale ad alta velocità, indipendentemente dal fatto che tu lo abbia progettato con questo intento. Naturalmente, l’impatto e il livello di valutazione richiesto dipendono dal tempo di salita dei tuoi segnali, e questo spesso limiterà come e dove instradare determinati segnali sul PCB. Questi vincoli possono essere definiti come regole di progettazione PCB nel tuo progetto PCB, e questo articolo esaminerà alcuni dei vincoli più comuni imposti nei progetti ad alta velocità per garantire un instradamento corretto.
Le interfacce standard utilizzate per trasferire dati digitali ad alta velocità sono tutte interfacce a impedenza controllata. Il driver collegato a una traccia si aspetta che la traccia abbia un valore di impedenza specifico, e il tuo software ECAD deve mantenerlo quando inizi l’instradamento. Allo stesso modo, i ricevitori sono terminati con una specifica impedenza di ingresso o capacità di carico e funzionano come previsto solo in base all’impedenza della traccia collegata.
Una volta stabilito un modello di impedenza per il tuo progetto, il vincolo sulla larghezza della traccia e le variazioni consentite devono essere definiti per ogni layer di segnale e quindi applicati alle varie classi di net. Questo richiede il calcolo dell’impedenza della traccia in diverse geometrie.
In Altium Designer, i calcoli dell’impedenza della linea di trasmissione vengono eseguiti nello stesso strumento utilizzato per definire lo stack dei layer del PCB.
Per garantire che l’instradamento mantenga l’impedenza corretta su interfacce specifiche, utilizziamo un semplice processo di raggruppamento delle net e di creazione di regole di progettazione specifiche per net per imporre la larghezza della traccia. Raggruppare in classi di net le net con la stessa impedenza è il modo più rapido per applicare più vincoli a gruppi di net, inclusi i principali vincoli ad alta velocità come la larghezza della traccia e i ritardi di propagazione abbinati in bus paralleli e coppie differenziali.
E per quanto riguarda la variazione di impedenza? Come va considerata se prevedi di modificare la larghezza della traccia? È possibile farlo usando un neck-down, cioè modificando la larghezza della traccia quando entra in un’area, ad esempio in un footprint BGA. Se puoi prevedere queste esigenze di instradamento, pianifica di tenere conto della variazione della larghezza della traccia nelle regole di progettazione del PCB.
I controlli di confinamento del percorso di ritorno verificano che una traccia non attraversi il confine di un piano di riferimento, come il gap tra due rail in un layer di alimentazione. Attraversare questo gap interrompe il percorso di ritorno vicino e costringe la corrente di ritorno a deviare. In Altium Designer, una regola Return Path utilizza il profilo di impedenza assegnato per identificare i layer di riferimento e verificare la continuità del rame sotto l’instradamento.

Lo skew tra segnali in bus paralleli o all’interno di una coppia differenziale deve essere ridotto al minimo quando i requisiti di matching dei ritardi sono molto severi. Esistono tre categorie di skew temporale che devono essere vincolate in un layout PCB:
Ecco perché preferiamo definire classi di net: rende molto più semplici i vincoli temporali, poiché possono essere implementati per tutte le net in quella classe di net.
Per interfacce come PCIe e DDR, i vincoli temporali sono così stretti che il ritardo di propagazione pin-package è necessario per garantire con precisione che i segnali raggiungano la destinazione entro la finestra temporale richiesta. Le informazioni possono essere fornite dal produttore del componente per modellare l’interfaccia ad alta velocità in questione. Quando crei un simbolo schematico per il componente di libreria, le informazioni sul ritardo dei pin possono essere incorporate nelle definizioni dei pin a ciascuna estremità del collegamento, e questi valori di ritardo verranno inclusi nello strumento di delay tuning durante l’instradamento.
Per includere i ritardi pin-package nel calcolo del delay tuning durante l’instradamento in Altium Designer, le net dell’interfaccia in questione devono essere incluse negli xSignals. Questo strumento tiene conto di tutti i ritardi point-to-point tra due circuiti integrati, e questi vengono utilizzati nel calcolo del delay tuning.
Nei circuiti con un numero elevato di layer, accade spesso che determinate classi di net o classi di coppie differenziali siano assegnate solo a layer specifici. Ci sono due ragioni principali per farlo:
Ad esempio, è comune separare diverse interfacce come DDR, coppie differenziali da 90 Ohm (ad esempio USB), coppie differenziali da 100 Ohm e altri bus a impedenza controllata sui propri layer con un design di coppia uniforme. Questa separazione può essere effettuata anche in base ai valori di larghezza/spaziatura delle tracce, poiché aiuta i produttori a sostituire più facilmente materiali equivalenti quando necessario.
Una regola Routing Layers specifica quali layer di segnale possono essere utilizzati dalla classe di net o dalla classe di coppie differenziali di destinazione. Le regole specifiche per classe consentono a ciascuna interfaccia di utilizzare i layer assegnati, mantenendo al contempo una regola più ampia per gli altri instradamenti.
I valori di clearance sono normalmente diversi per i layer interni rispetto a quelli esterni a causa del processo di placcatura dei layer esterni. Tuttavia, poiché molti progetti ad alta velocità tendono anche a essere ad alta densità, è comune che diversi layer interni richiedano valori di clearance differenti. Questo accade a causa dell’uso di sub-laminazioni, che richiedono un ulteriore processo di placcatura e portano a uno spessore di rame placcato maggiore rispetto al peso del foil di base.
In Altium Designer, le clearance per layer possono essere definite utilizzando il sistema di query:
Assicurati di ottenere i requisiti di clearance in base al peso del rame (interno ed esterno) dal tuo fornitore di servizi di fabbricazione PCB.
È anche possibile definire le clearance per layer usando il nuovo Constraint Manager. Questo offre un approccio basato su matrice per le definizioni delle clearance, che i progettisti che utilizzano altri software ECAD troveranno molto più familiare. Scopri di più sul Constraint Manager nel video qui sotto:
Ho discusso altrove sul blog di Altium di come funziona l’impedenza delle via e a quali frequenze le via devono essere progettate con una specifica impedenza di ingresso. Queste dimensioni delle via e degli anti-pad saranno specifiche per net per un determinato stackup e intervallo di layer, e la limitazione su dimensioni di via/pad può essere definita usando le regole di progettazione PCB.
Le dimensioni delle via possono essere vincolate in due modi:
Determinare la dimensione corretta delle via non è semplice come usare un calcolatore online per definirne le dimensioni. Richiede una simulazione 3D del campo elettromagnetico, o almeno un modello empirico sviluppato a partire da dati di simulazione. Una volta determinate le dimensioni delle via e degli anti-pad, applicale come regole di progettazione per garantire che le reti ad alta velocità più importanti siano vincolate alle dimensioni corrette delle via.
L’anti-pad della via è un’altra parte della progettazione dell’impedenza della via, poiché la distanza di isolamento dal piano regola la capacità lungo il barrel della via. In tutti i progetti esisterà già un requisito minimo di distanza tra i pad delle via e il rame vicino sulle rail di piano o sulle grandi rail di alimentazione. Il valore di distanza tra via e rame può essere regolato su reti specifiche usando una regola di progettazione PCB basata su net o classe di net.
Per le reti differenziali, la forma dell’anti-pad può essere oblunga o ellittica, anziché circolare attorno alle singole via. Questo anti-pad condiviso si definisce al meglio disegnandone la forma, come cutout di piano oppure cutout poligonale. Un esempio è mostrato di seguito.
Una caratteristica dei moderni PCB ad alta velocità è che tendono anche a essere PCB ad alta densità. Questo perché la maggior parte dei processori oggi è fornita in package BGA e, con pitch ridotto, sarà necessario usare il via-in-pad per completare il fanout routing. Anche con package BGA a pitch più ampio che usano fanout dog-bone, il posizionamento ottimale dei condensatori di bypass è sul lato posteriore del BGA usando via-in-pad.
Per impostazione predefinita, il software ECAD controlla la presenza di via-in-pad e la segnala come violazione DRC se presente. Tuttavia, il via-in-pad può essere consentito all’interno delle regole di progettazione per supportare il fanout routing del BGA.
Apri Design » Rules e crea una regola High Speed » Via Under SMD. Abilita Allow Vias under SMD Pads e applica la regola ai pad desiderati, usando IsPad AND WithinRoom('BGA_Fanout') per una room di fanout definita. Assegna a questa regola una priorità più alta rispetto alla regola generale. Configura anche una regola Same Net Only Clearance corrispondente con distanza zero tra pad SMD e via e tra pad e foro della via per le via approvate.
Assicurati di specificare le via pertinenti come riempite e cappate usando l’opzione dei tipi di via IPC-4761 nel pannello Properties. Questo può anche essere fatto selezionando manualmente il gruppo specifico di via da metallizzare e cappare, oppure aggiungendo una nota di fabbricazione al disegno principale se tutte le via devono essere riempite e cappate.
La lunghezza disaccoppiata di una coppia differenziale contribuisce alla return loss in un canale differenziale, quindi in alcune applicazioni è importante determinarne un valore appropriato. La regione disaccoppiata si presenta più spesso durante il routing in uscita da un’area densa di pin in un BGA, dove le tracce devono separarsi tra loro per poter instradare attorno alle via.
Il calcolo della lunghezza disaccoppiata non è semplice, poiché dipende da un corretto calcolo della lunghezza critica basato sulla larghezza di banda del canale. Una buona strategia è, se sai che le tue coppie differenziali avranno una regione disaccoppiata nel fanout routing, iniziare progettando la coppia con accoppiamento lasco, perché questo ridurrà il disadattamento di impedenza nella regione disaccoppiata e ridurrà la conversione di modo.
Per saperne di più sul sistema di regole di progettazione PCB in Altium Designer, guarda il video qui sotto.
Che tu debba realizzare elettronica di potenza affidabile o sistemi digitali avanzati, utilizza il set completo di funzionalità per la progettazione PCB e gli strumenti CAD di livello mondiale di Altium. Altium offre la principale piattaforma al mondo per lo sviluppo di prodotti elettronici, completa dei migliori strumenti di progettazione PCB del settore e di funzionalità di collaborazione interdisciplinare per team di progettazione avanzati. Contatta oggi stesso un esperto di Altium!
In Altium Designer, crea una regola High Speed » Return Path applicata alle net o alla classe di net pertinenti. Seleziona il profilo di impedenza che definisce i loro layer di riferimento, configura la distanza minima tra la traccia e i bordi del rame di riferimento, quindi esegui un controllo batch delle regole di progettazione. Il controllo identifica l’instradamento sopra discontinuità del rame di riferimento, comprese le interruzioni tra rail di alimentazione.
Crea una regola Routing » Routing Layers in Design » Rules e applicala usando InNetClass('ClassName') oppure InDifferentialPairClass('PairClass'). Abilita Allow Routing solo per i layer di segnale consentiti, quindi assegna alla regola una priorità più alta rispetto a regole Routing Layers più generali. Queste impostazioni vincolano il routing e permettono ai controlli delle regole di progettazione di identificare eventuali tracce esistenti su layer non consentiti.
Crea una regola Routing » Routing Via Style e applicala alla net o classe di net di destinazione usando InNet('NetName') oppure InNetClass('ClassName'). Definisci diametro minimo, preferito e massimo della via e dimensione del foro, oppure configura la regola per usare template di via approvati. Assegna alla regola una priorità più alta rispetto alla regola generale sulle via. Gli span di layer delle via sono definiti separatamente nel Layer Stack Manager.
Le classi di net possono essere create con direttive Net Class nello schematico oppure direttamente tramite Design » Classes nell’editor PCB. Per le classi definite nello schematico, abilita la generazione di classi di net definite dall’utente in Project Options e trasferisci le modifiche al PCB. In Design » Rules, applica ogni regola di routing o timing pertinente con InNetClass('ClassName'), configurane i vincoli e assegnale priorità superiore rispetto a regole più generali dello stesso tipo.