Quando si possiede un orologio analogico, il passaggio all'ora legale può creare scompiglio nella vita personale e professionale. Potresti svegliarti e non renderti nemmeno conto di essere fuori orario di un'ora. Nessuno vuole ammettere di essere caduto vittima dell'ora legale, e tutto il tuo programma deve essere risincronizzato quando ciò accade.
La sincronizzazione del tuo orologio e dei tuoi componenti elettronici è critica nella progettazione di PCB ad alta velocità. Applicazioni come il routing delle tracce del bus, la memoria DDR ad alte prestazioni e qualsiasi circuito ad alta velocità, in generale, richiedono una temporizzazione precisa dei segnali e degli impulsi dell'orologio. Il ritardo di propagazione nei gate logici, come un gate xor o un gate NAND, può corrompere i dati e disallineare componenti critici rispetto all'orologio di sistema. Inoltre, i tempi di preparazione e di attesa richiedono un routing preciso delle tracce di orologio e di segnale. Se una qualsiasi tensione di alimentazione viene ritardata da un ritardo di gate o simili, qualsiasi circuito integrato può riscontrare problemi. Ma cos'è il ritardo di propagazione nell'elettronica digitale?
Il ritardo di propagazione nei gate logici si riferisce tipicamente al tempo di salita o al tempo di discesa nei gate logici. Questo è il tempo necessario affinché un gate logico cambi il suo stato di uscita in base a un cambiamento dello stato di ingresso. Si verifica a causa della capacità intrinseca nel gate logico. In passato, quando le velocità di trasmissione di clock e dati erano più lente, il ritardo di propagazione tipicamente non causava grossi problemi nei circuiti digitali perché i tempi di salita e di discesa erano comparativamente più veloci.
Al giorno d'oggi, la situazione non è altrettanto comoda. I circuiti ad alta velocità possono avere frequenze di clock comparabili al ritardo di propagazione nell'elettronica digitale. Il risultato è che i dati che si muovono nel sistema possono essere fuori sincrono con il clock, come da un ritardo di propagazione di un gate logico, il che può causare gravi problemi al tuo dispositivo. I componenti potrebbero non funzionare come previsto a causa di questa discrepanza. Il ritardo di propagazione di un gate logico, o qualsiasi altro tipo di ritardo di propagazione in qualsiasi circuito, può anche causare corruzione dei dati in applicazioni intensive di dati.
Come esempio, consideriamo un flip-flop a fronte di salita che è configurato per cambiare stato al prossimo impulso di clock. Quando arriva il fronte di salita dell'impulso di clock, lo stato di uscita inizia a cambiare. Tuttavia, lo stato di uscita non cambia immediatamente. Invece, lo stato di uscita impiega del tempo per passare da 0 a 1, o viceversa. Questo significa che l'impulso di uscita e l'impulso di clock a valle del flip-flop sono probabilmente fuori sincrono.
Il ritardo di propagazione può essere misurato con un oscilloscopio
Ovviamente, non puoi accelerare un segnale di clock in un sistema digitale, né puoi accelerare selettivamente gli impulsi di clock in diverse parti del tuo PCB. Ma puoi ritardare l'arrivo di diversi segnali nel tuo dispositivo aggiustando le lunghezze delle tracce. Aggiungere una piccola estensione può ritardare un impulso giusto abbastanza per riportare i tuoi segnali in sincrono. Ritardare leggermente la traccia del clock darà ai tuoi IC il tempo di stabilizzarsi nello stato corretto e rimanere comunque in sincrono.
Una compensazione adeguata richiede anche il calcolo dello skew del clock tra i diversi componenti nel tuo PCB. Molto probabilmente, il tuo PCB funziona grazie a un clock globale che alimenta direttamente diversi componenti. A seconda di come le tracce si diramano verso diversi componenti, lo skew del clock può accumularsi, richiedendo maggiori tempi di setup e di mantenimento per sincronizzare clock e impulsi di segnale.
Un metodo che può dare ai tuoi segnali abbastanza tempo per raggiungere il livello pieno prima del prossimo impulso di clock è quello di meandrare la traccia del clock in certi punti del tuo PCB. Un meandro serpentinato può dare al tuo impulso di clock il ritardo giusto. Le tracce differenziali devono essere meandrate insieme e deve essere mantenuto un accoppiamento stretto.
Dai ai tuoi dispositivi le tracce di cui hanno bisogno per prosperare
Allora, come si sceglie quali tracce meandrare? La compensazione dovrebbe essere applicata alle tracce in ogni rete. Prima, cerca la lunghezza della traccia di segnale più lunga all'interno di una rete, e meandra le tracce rimanenti in modo che i segnali siano sincronizzati su tutte le tracce. Infine, regola la lunghezza della traccia del clock che si collega ai componenti in questa rete. Ritarda l'impulso di clock giusto il tempo necessario affinché gli IC possano salire alla piena tensione.
Il ritardo di linea e il ritardo di propagazione nell'elettronica digitale sono talvolta usati in modo interscambiabile. Il ritardo di linea ha una relazione importante con il ritardo di propagazione e può creare problemi di trasmissione del segnale in determinate condizioni. In particolare, il tempo di salita o discesa del segnale di uscita dovrebbe essere confrontato con il ritardo di linea lungo la traccia di uscita. Quando la lunghezza della traccia è lunga, il segnale di uscita si muove come un impulso viaggiante e può essere riflesso in caso di disadattamento di impedenza.
Le tracce del segnale devono essere trattate come linee di trasmissione in determinate condizioni. Una regola empirica del settore è quella di terminare la traccia del segnale di uscita da un circuito integrato logico quando il ritardo di linea unidirezionale della traccia del PCB è uguale o superiore alla metà del tempo di salita/discesa del segnale (a seconda dell'edge più veloce).
Questo significa che si può tollerare un disadattamento di impedenza purché la traccia del segnale del circuito sia abbastanza corta. Quando la traccia è corta, il segnale sale al suo livello di tensione pieno e la tensione di uscita è applicata su tutta la traccia. Piuttosto che un impulso viaggiante, il segnale esiste come una tensione costante momentanea tra due punti e non c'è riflessione del segnale.
Un ottimo software per la progettazione di layout PCB come Altium Designer® rende facile disporre il tuo prossimo circuito di base o un design complesso ad alta velocità. Le librerie di componenti integrate e lo strumento ActiveRoute® possono aiutarti a evitare problemi dovuti al ritardo di propagazione nei gate logici.
Se sei interessato ad apprendere come Altium Designer possa aiutarti a costruire il tuo prossimo dispositivo ad alta velocità, parla oggi stesso con un esperto di Altium Designer.