I CONTATORI SINCRONI Premessa I contatori sincroni sono temporizzati in modo tale che tutti i Flip-Flop sono commutato ( triggerati ) nello stesso istante. Ciò si realizza collegando la linea del clock a ciascuno stadio del contatore. Ciò significa che tutti i FF del contatore commuteranno o memorizzeranno lo stato secondo il valore che ha la propria entrata quando arriva il clock. Se un FF commuta la sua uscita influenzerà il FF dello stadio successivo solo all'arrivo del prossimo impulso di clock. Contatore sincrono a 2 bit Il circuito di un contatore sincrono binario a 2 bit è mostrato in figura 1: FIGURA 1 - Schema elettrico di un contatore binario a 2 bit. Si supponga che inizialmente il contatore sincrono sia resettato ( Q 0 = 0 e Q 1 = 0 ). Quando arriva il fronte di salita del primo impulso di clock, FF0 commuta, perché la sua entrata è ALTA e la sua uscita passa da 0 a 1. Nello stesso istante che il clock arriva su FF0 arriva anche su FF1, la cui entrata è collegata a Q 0, e quindi BASSA, perché non ha effettuato ancora la commutazione da 0 a 1: quindi non commuta, ma rimane nello stato in cui si trova. L'arrivo del secondo impulso clock fa commutare ancora FF0, la cui uscita passa da 1 a 0. Anche FF1 commuterà, perché la sua entrata a T collegata a Q 0 vale ancora 1, cioè è ALTA e quindi toggla, facendo passare la sua uscita, Q 1, da 0 a 1. In modo analogo, quando arriva il terzo impulso di clock, FF0, commuta sempre e la sua uscita passa da 0 a 1, mentre FF1 non cambia di stato e la sua uscita resta 1. All'arrivo del quarto impulso di clock, entrambi i FF commutano, avendo le proprie entrate T ALTE, e portano le rispettive uscite allo stato basso. Il contatore, con il quarto impulso, si è riclicato e il conteggio riparte dall'inizio, come mostra figura 2, degli andamenti temporali delle uscite Q 0 e Q 1. 137
FIGURA 2 - Andamento temporale delle uscite di un contatore binario a 2 bit. In figura 2 nel tracciare gli andamenti temporali, non si è tenuto conto dei ritardi di propagazione dei segnali attraverso i FF. Per questo motivo tutte le commutazioni appaiono coincidenti, mentre in realtà sono sfasati di leggero ritardo. Contatore sincrono a 3 bit In figura 3 è mostrato lo schema elettrico di un contatore binario sincrono a 3 bit. Ovviamente servono 3 FF e tutti clockati contemporaneamente col segnale di clock. A differenza del contatore a 2 bit viene usata una porta logica per evitare commutazioni inopportune di FF2. FIGURA 3 - Schema elettrico di un contatore binario a 3 bit. La sequenza degli stati di un contatore binario a 3 bit è mostrata nella tabella di figura 4. Si noti come dopo l ottavo clock il contatore si ricicli e riprenda il conteggio dallo 0. 138
FIGURA 4 - Tabella con lo stato delle uscite del contatore binario sincrono a 3 bit. La presenza della porta AND sull'ingresso T di FF2 serve ad evitare che il Flip-Flop commuti ogni volta che l'uscita di Q 1 è alta quando arriva un impulso di clock ( vedi impulsi 2 e 6 ). Infatti, FF2 deve cambiare di stato solo quando Q 0 e Q 1 sono entrambe alte. L'andamento temporale delle uscite del contatore sono mostrate in figura. FIGURA 5 - Andamento temporale delle uscite di un contatore binario a 3 bit. Contatore sincrono a 4 bit Questo contatore viene realizzato con FF di tipo T attivi sul fronte di discesa del clock. Anche in questo caso si ricorrerà all uso di porte logiche, per evitare che FF2 e FF3 commutino anche quando non dovrebbero farlo. L ingresso T di FF0 viene sempre mantenuto alto e quindi ad ogni impulso di clock FF0 commuta. FF1, invece commuta solo quando l uscita Q0 passa dallo stato ALTO allo stato BASSO. FF2 e FF3 commutano ogni qualvolta l uscita del FF che lo precede passa da 1 a 0 e questo non va bene, perché altrimenti il conteggio non seguirebbe la sequenza di conteggio binario. Per quanto riguarda FF2, questo deve commutare, come visto per il contatore a 3 bit, solo quando Q0 = Q1 = 1 Il flip flop FF3 deve commutare solo quando Q0 = Q1 = Q2 = 1 139
La tabella seguente, mostra quanto indicato : I rettangoli azzurri indicano i valori di Q0 e Q1 per i quali la prima porta AND consente ad FF2 di commutare; infatti il clock successivo il valore di Q2 ha cambiato di stato. Questa situazione si verifica al clock T3, al clock T7, al clock T11 e al clock T15. In realtà i clock T7 e T15 sono gialli perché indicano contemporaneamente anche il cambiamento di stato di Q3. I rettangoli gialli indicano i valori di Q0, Q1, Q2 per i quali deve commutare l uscita Q3 di FF3. In corrispondenza di quei clock, il T7 e il T15, la seconda porta AND consentirà a FF3 di cambiare di stato. Si veda lo schema elettrico di figura 7. FIGURA 6 - Tabella con lo stato delle uscite del contatore binario sincrono a 4 bit. FIGURA 7 - Schema elettrico di un contatore binario sincrono a 4 bit. 140
FIGURA 8 - Andamento temporale delle uscite di un contatore binario sincrono a 4 bit. Contatore sincrono a decade. E un contatore il cui conteggio è del tutto uguale a quello presentato con i contatori asincroni. UN contatore a decade è essenzialmente un contatore BCD, cioè un contatore che conta da 0 a 9 binario. Una volta raggiunto lo stato 1001 corrispondente al 9, invece di proseguire con lo stato 1010, ritorna allo stato iniziale 0000. Si è voluto usare una tecnica diversa da quella vista per il contatore asincrono a decade, senza ricorrere al reset dei 4 FF mediante un impulso inviato all ingresso asincrono Clear. La tabella seguente, figura 9, mostra la sequenza dello stato delle uscite durante la sequenza di conteggio e analizzando proprio questi stati è possibile comprendere il funzionamento di questo tipo di contatore. FIGURA 9 - Sequenza dello stato delle uscite nel conteggio BCD. 141
FIGURA 10 - Schema elettrico di un contatore binario sincrono a decade. La colonna relativa all uscita Q0 del FF0 mostra che questa commuta ogni volta che arriva un impulso di clock. Quindi l ingresso T1 deve essere collegato a Vcc per consentire la funzione Toggle di FF0. 142