Cos'è il Ritardo di Propagazione del Carry nella Lavorazione di Dati ad Alta Velocità?

Creato: febbraio 11, 2019
Aggiornato: settembre 25, 2020

Synchronized swimmers

A volte mi capita di avere conversazioni via messaggio con amici che diventano completamente caotiche. È troppo facile fare cinque domande in un unico messaggio e cercare di rispondere a tutto fa sì che la nostra catena di messaggi vada completamente fuori sincrono. Non è fino a tre messaggi dopo che riesco effettivamente a rispondere a tutto ciò che il mio amico ha chiesto, e a quel punto siamo già passati a un argomento completamente nuovo.

Il ritardo di segnale tra circuiti logici in un PCB o in un IC non è qualcosa a cui normalmente bisogna pensare fino a quando non si lavora con un sistema ad alta velocità. Man mano che le velocità di trasmissione dati e la capacità nei PCB continuano ad aumentare, tenere conto del ritardo è fondamentale per garantire che i dati digitali rimangano sincronizzati in tutto il sistema.

 

Rassegna del Ritardo di Propagazione

Se non sei familiare con il ritardo di propagazione (più appropriatamente chiamato ritardo di trasmissione) nei PCB, lo spiegherò qui. Un segnale digitale richiede un certo lasso di tempo per spostarsi tra due punti in un PCB. Se stai cercando di mantenere sincronizzati più segnali in una rete o in un intero sistema, allora devi assicurarti che i segnali arrivino simultaneamente in vari punti sulla tua scheda.

Si noti che il ritardo di propagazione, in questo senso, si riferisce al ritardo di trasmissione per i segnali che viaggiano tra due punti su un PCB. Questo non deve essere confuso con la definizione di ritardo di propagazione che si trova nei libri di testo di elettronica digitale.

Se i segnali non sono sincronizzati, il tasso di errore di bit nel tuo sistema può aumentare. Quando si elaborano dati digitali in parallelo, i segnali nella tua rete devono essere sincronizzati, quindi dovresti abbinare la lunghezza di tutte le tracce nella tua rete alla lunghezza della traccia più lunga. Compensare lo skew è anche critico nel routing di coppie differenziali. Meandering è il modo migliore per applicare leggeri ritardi alle linee di segnale mantenendo l'impedenza.

I segnali in geometrie di traccia diverse sperimenteranno leggermente diversi ritardi di propagazione. Se stai lavorando con una scheda a controllo di impedenza, la formula per il ritardo di propagazione sarà relativamente semplice e dipenderà dalla costante dielettrica relativa del substrato della scheda. Quando si lavora con sistemi da ~100 Mbps o superiori, sarà necessario considerare il ritardo di propagazione in tutta la scheda, ed è una buona idea utilizzare un design controllato per l'impedenza.

Large ICs and traces on a green PCB

Assicurati che il tuo software di progettazione PCB abbia gli strumenti di analisi di cui hai bisogno

 

Ritardo di Propagazione e Skew nell'Elaborazione di Dati Paralleli

Quando si elaborano dati in parallelo, possono accumularsi ulteriori errori nei dati se il ritardo di propagazione tra i bit non viene compensato adeguatamente. Alcuni paralleli all'interno di una rete possono richiedere un maggiore ritardo se l'output dei bit meno significativi determina le fasi di elaborazione applicate ai bit più significativi.

Questa considerazione generalizzata può sembrare strana, ma prendiamo il seguente esempio. Supponiamo che tu stia progettando un sommatore a trasporto per l'uso in un PCB o in un circuito integrato (IC). Questo dispositivo è fondamentalmente una serie di sommatori a 1 bit che elaborano i bit di input in parallelo. I bit che compongono i due numeri digitali da sommare devono essere inseriti in ciascun sommatore in parallelo, e ogni sommatore può generare un bit di trasporto.

Il sommatore per il bit meno significativo (LSB) produrrà un bit di trasporto per il bit immediatamente più significativo, e così via fino al bit più significativo (MSB). L'output dal LSB al bit successivo più alto sperimenterà un certo ritardo di propagazione. Dovrai anche tenere conto dello skew totale dovuto al tempo di salita dei cancelli logici in ciascun sommatore. Il bit di trasporto e i bit di input in ciascun sommatore devono rimanere sincronizzati, e il ritardo di propagazione e lo skew accumulato nel bit di trasporto richiedono che i bit di input nei numeri più alti debbano essere leggermente ritardati.

Il ritardo totale tra ogni cifra è uguale al ritardo di propagazione per il segnale che viaggia tra gli addizionatori, più il doppio del tempo di salita dell'intero circuito logico negli addizionatori (assumendo che entrambi gli addizionatori appartengano alla stessa famiglia logica). Quando si lavora solo con pochi bit a bassa velocità, ciò non desincronizzerà i segnali tra i bit. Ma quando si lavora, ad esempio, con numeri a 32 bit a 1 Gbps o superiore, il ritardo sul bit di trasporto che raggiunge il MSB sarà 32 volte maggiore del ritardo di propagazione del trasporto tra addizionatori adiacenti.

Questo è un ritardo molto significativo che può desincronizzare i dati attraverso l'addizionatore. Per compensare il ritardo sull'input dei dati agli addizionatori per le cifre più alte, sarà effettivamente necessario aggiungere del ritardo ai bit di input che raggiungono ciascun addizionatore. I bit successivamente più alti richiederanno più ritardo.

Il modo più semplice per fare ciò è far serpeggiare le tracce che conducono agli addizionatori per le cifre più alte. Questo compenserà il ritardo di propagazione e lo skew accumulato nel bit di trasporto. Le cifre più alte richiedono un ritardo maggiore, ma la coppia di bit in ingresso all'addizionatore deve comunque essere sincronizzata. Il modo più semplice per applicare questo ritardo è far serpeggiare coppie di tracce che conducono a ciascun addizionatore. Assicurati di lasciare un po' di spazio extra tra le coppie di tracce per ogni addizionatore quando applichi il serpeggiamento.

Several ICs in parallel on a PCB

Assicurati di poter fidarti dei risultati della tua simulazione

Nota che questi problemi con il ritardo dell'arrivo dei bit successivi non si applicano solo agli addizionatori. Si applicano veramente a qualsiasi circuito logico per l'elaborazione parallela dove l'output dall'elaborazione di un bit viene utilizzato come input per l'elaborazione del bit successivo.

I componenti (ad es., FPGA) che possono essere utilizzati per l'elaborazione parallela possono avere una struttura di linea di ritardo che accumula ritardo di trasporto tra i bit successivi. Questi valori possono raggiungere decine di picosecondi per bit. Quando lavori con numeri grandi ad alta velocità, i bit nelle cifre più alte possono desincronizzarsi dal LSB. Se stai progettando secondo specifici standard che richiedono un basso tasso di errore dei bit, compensare il ritardo sulle linee di segnale in ingresso è una soluzione semplice per prevenire errori di bit.

Quindi, come puoi garantire l'integrità dei dati nel tuo prossimo sistema digitale ad alta velocità? Hai bisogno di strumenti di routing che rendano facile compensare il ritardo tra gli elementi nel tuo PCB. Gli strumenti avanzati di routing e simulazione in Altium Designer® possono aiutarti a evitare problemi di integrità del segnale e mantenere bassi i tassi di errore sui bit.

Ora puoi scaricare una prova gratuita e scoprire se Altium fa al caso tuo. Parla oggi stesso con un esperto Altium per saperne di più.

Risorse correlate

Documentazione Tecnica Correlata

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.