Clock tree: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 25:
=== Implementazione ===
La realizzazione del clock tree è una materia molto critica dal punto di vista industriale. Il cosiddetto '''inserimento del clock tree''' detto anche '''CTS''' (ossia clock tree synthesis) può determinare variazioni grandi nelle prestazioni di un circuito digitale.
[[File:clock tree with buffers.png|thumb|right|300px|Descrizione qualitativa di come un albero di clock tree possa essere realizzato. In questa figura i rettangoli rappresentano gli elementi sequenziali, mentre i triangolini rappresentano i buffer non invertenti]]
Vengono utilizzati a questo scopo strumenti di progettazione assistita dal computer (CAD) che si avvalgono di algoritmi complessi per la realizzazione di ''alberi bilanciati'', ossia alberi costituiti da interconnessioni metalliche a da [[buffer non invertente|buffer]] mediante i quali le ''foglie'' risultino essere sincronizzate.
 
Nel risolvere questo tipo di problemi si devono sviluppare [[algoritmo|algoritmi]] che permettano di massimizzare in velocità e contemporaneamente equalizzare tutti i rami.
 
==== Varianti ====
* Clock tree realizzati tramite [[invertitore|invertitori]]: dal punto di vista logico, se il numero delle inversioni è pari allora il segnale non cambia; si tratta quindi di alberi realizzati tramite coppie di invertitori.
* clock mesh: variante nella CTS che non si basa più su un albero di propagazione, ma sfrutta una rete di distribuzione uniforme dalla quale viene estratto localmente il segnale del clock.
 
==== Strutture avanzate ====
* domini di clock multipli: si hanno nel caso di circuiti che ricevono più segnali di clock contemporaneamente: ogni singolo clock viene bilanciato separatamente dagli altri
* clock gating: struttura che permette lo spegnimento del clock quando il circuito a valle non viene utilizzato
 
== Bibliografia ==