Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Clock Skew

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utentecarloc, Foto Utenteg.schgor, Foto UtenteBrunoValente, Foto UtenteIsidoroKZ

0
voti

[1] Clock Skew

Messaggioda Foto UtenteTeslacoil1992 » 28 gen 2014, 20:11

Salve ragazzi, innanzitutto complimenti a tutti per il forum, mi è stato di aiuto molte volte in passato.
Volevo domandarvi qualche delucidazione sul concetto di clock skew, in particolare quali solo le relazioni matematiche che devono essere rispettate per il corretto funzionamento del circuito. Lo domando perché il mio docente nell'ultimo appello ha inserito una richiesta, "verificare se il circuito funziona oppure se ci sono problemi causati da clock skew". Ora, poiché durante il corso, tenuto da un altro docente, di clock skew non se ne è sentito mai neanche l'eco, tutti abbiamo saltato quella richiesta non sapendo quanto valesse effettivamente a livello di punteggio. Cercando in internet ho più o meno capito che si tratta di un problema dovuto al ritardo di propagazione del clock quando è condiviso tra diversi flip flops. In poche parole il clock non arriva contemporaneamente ad entrambi i flip flop e questo causa problemi alla corretta acquisizione dei dati.
Potreste per favore aiutarmi a tradurre questa cosa in relazioni matematiche, tenendo conto di entrambe le possibili direzioni della propagazione dei dati? Grazie mille, so che probabilmente la domanda è scema, ma non riesco proprio a capire.
Avatar utente
Foto UtenteTeslacoil1992
5 2
 
Messaggi: 2
Iscritto il: 17 gen 2014, 15:00

3
voti

[2] Re: Clock Skew

Messaggioda Foto Utenteasamarco » 28 gen 2014, 20:38

Il clock skew è la differenza tra l'istante atteso di clock e il clock effettivo ed è un problema presente tipicamente quando il segnale di clock deve comandare molti elementi (vedendo quindi un'elevata capacità).

In sede di analisi il clock skew deve essere considerato nella situazione di caso pessimo, per verificare se anche in questo caso non sono violati i vincoli imposti dalla disciplina dinamica. In pratica puoi vedere la cosa come se il nuovo tempo di setup del flip flop diventasse t_{SETUP}+t_{SKEW} e il tempo di hold t_{HOLD}+t_{SKEW}
Electronic devices operate because they contain magic smoke. If the magic smoke is ever let out of the device, it ceases to work.
Avatar utente
Foto Utenteasamarco
790 1 2 4
Expert
Expert
 
Messaggi: 188
Iscritto il: 3 ago 2013, 14:50
Località: /dev/null

1
voti

[3] Re: Clock Skew

Messaggioda Foto UtenteTeslacoil1992 » 28 gen 2014, 21:24

Grazie mille per la risposta.
Ok quindi è come se il tempo di clock dovesse aspettare un ulteriore Tskew per fare si che il circuito funzioni. Ok, e nel caso di propagazione dei dati in verso opposto?
Mi spiego:

Fai conto ho due flip flop e in mezzo una rete combinatoria. Il clock arriva in ritardo sul flip flop più lontano, poniamo quello a destra della rete. Se fosse che adesso il dato si propaga da destra verso sinistra, cos'è che cambia nelle condizioni del clock? E' questa parte che non capisco, quando la propagazione è in verso opposto.
Avatar utente
Foto UtenteTeslacoil1992
5 2
 
Messaggi: 2
Iscritto il: 17 gen 2014, 15:00

4
voti

[4] Re: Clock Skew

Messaggioda Foto Utenteasamarco » 28 gen 2014, 22:41

Non si ragiona per vicino o lontanto, la progettazione robusta richiede di considerare in ogni caso il worst case. Non è detto che il clock skew sia lo stesso ad ogni ciclo può essere sia in ritardo che in anticipo ed è per questo che ti metti sempre nella situazione più sfavorevole. Quando valuti i requisiti del tempo di setup immagini che il clock sia anticipato, quando valuti se è soddisfatto il tempo di hold che sia in ritardo, questo a prescindere dalla posizione del flip flop.
Electronic devices operate because they contain magic smoke. If the magic smoke is ever let out of the device, it ceases to work.
Avatar utente
Foto Utenteasamarco
790 1 2 4
Expert
Expert
 
Messaggi: 188
Iscritto il: 3 ago 2013, 14:50
Località: /dev/null

4
voti

[5] Re: Clock Skew

Messaggioda Foto Utenteboiler » 29 gen 2014, 1:15

Cominciamo da Adamo ed Eva.
Lo skew è la differenza nel tempo d'arrivo dello stesso fianco attivo del clock in due punti diversi dello stesso dominio di clock.
La differenza nel tempo d'arrivo di due fianchi conecutivi allo stesso punto nello stesso dominio si chiama invece jitter.

La causa principale dello skew è il clock distribution delay, ovvero il tempo che deve percorrere il segnale di clock dalla sua sorgente attraverso l'albero di distribuzione fino alla sua destinazione.

Le formule che definiscono le condizioni da soddisfare dipendono dal tipo di clocking usato. Dato che non lo definisci, suppongo tu utilizzi il classico schema a singolo fianco attivo monofase.

Abbiamo il flipflop 1, la cui uscita entra in una logica combinatoria C che va poi ad un flipflop 2.
Definiamo quanto segue:
t_{d*} il ritardo dalla sorgente del clock al FF *
t_{pd*} il propagation delay
T_{clk} il periodo del clock
t_{su*} il setup time
t_{sk} lo skew

Condizione di setup:
t_{d1} + t_{pd1}+t_{pdC} \leq T_{clk} + t_{d2} - t_{su2}
t_{pd1}+t_{pdC} + t_{su2} \leq T_{clk} + \left(t_{d2}-t_{d1}\right)
t_{pd1}+t_{pdC} + t_{su2} \leq T_{clk} + t_{sk}

Come puoi vedere, se i ritardi introdotti dalla distribuzione sono uguali, non c'è skew e la formula si riduce a quella nota. Se c'è skew, e se il clock arriva prima a 1 (trasmettitore) e dopo a 2 (ricevitore), allora è positivo. Lo skew positivo aumenta il tempo a disposizione della logica combinatoria per raggiungere uno stato stabile, è quindi utile.
Se i dati vanno da destra verso sinistra (e qui rispondiamo alla tua seconda domanda) allora il trasmettitore diventa ricevitore e viceversa. Lo skew positivo diventa quindi negativo e sottrae tempo alla logica combinatoria. Il margine di setup si riduce, non è una buona cosa.

È tardi... ti lascio calcolare da solo l'effetto sulla condizione di hold. Perlomeno provaci. Se non ci riesci, racconta dove hai incontrato difficoltà.

Ciao Boiler
Avatar utente
Foto Utenteboiler
26,4k 5 9 13
G.Master EY
G.Master EY
 
Messaggi: 5599
Iscritto il: 9 nov 2011, 12:27


Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Nessuno e 70 ospiti