Strumenti Utente

Strumenti Sito


sezione_5b

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Entrambe le parti precedenti la revisioneRevisione precedente
Prossima revisione
Revisione precedente
Prossima revisioneEntrambe le parti successive la revisione
sezione_5b [2018/03/11 15:18] – [Navigazione] adminsezione_5b [2019/03/08 09:41] – [2 Contatori asincroni] admin
Linea 12: Linea 12:
 ===== 2 Contatori asincroni ===== ===== 2 Contatori asincroni =====
  
-La figura 2 mostra un contatore asincrono in avanti modulo 8. E' realizzato con tre flip-flop JK collegati in modo da flip-flop toggle con l'ingresso T sempre alto. Il segnale `bar(RESET)` permette di azzerare il contatore applicando un livello basso di tensione agli ingressi asincroni //clear// (`bar(CL)` attivo basso) dei tre TFF. Osservando il diagramma temporale si comprende il funzionamento del contatore:+La figura 2 mostra un contatore asincrono in avanti modulo 8. E' realizzato con tre flip-flop JK collegati come flip-flop toggle con l'ingresso T sempre alto. Il segnale `bar(RESET)` permette di azzerare il contatore applicando un livello basso di tensione agli ingressi asincroni //clear// (`bar(CL)` attivo basso) dei tre TFF. Osservando il diagramma temporale si comprende il funzionamento del contatore:
   * il clock è applicato solo al primo FF che commuta ad ogni impulso (fronte di discesa)   * il clock è applicato solo al primo FF che commuta ad ogni impulso (fronte di discesa)
   * l'uscita Q<sub>0</sub> del primo contatore è usata come clock del secondo FF e così via per i FF successivi   * l'uscita Q<sub>0</sub> del primo contatore è usata come clock del secondo FF e così via per i FF successivi
Linea 18: Linea 18:
   * osservando le tre uscite - con Q<sub>0</sub> come bit meno significativo - si vede come la sequenza di combinazioni prodotta corrisponde al conteggio in binario da 000 a 111   * osservando le tre uscite - con Q<sub>0</sub> come bit meno significativo - si vede come la sequenza di combinazioni prodotta corrisponde al conteggio in binario da 000 a 111
  
-Nel caso in figura, con tre FF, si ottiene un contatore modulo 8; generalizzando con //n// FF si può realizzare un contatore di modulo `2^n -1`. Osserviamo inoltre che:+Nel caso in figura, con tre FF, si ottiene un contatore modulo 8; generalizzando con un numero //n// di flip-flop si può realizzare un contatore di modulo `2^n -1`. Osserviamo inoltre che:
   * tutte le uscite hanno un duty-cycle del 50%   * tutte le uscite hanno un duty-cycle del 50%
   * è possibile ottenere un contatore anche con FF attivi sul fronte di salita collegando il clock alle uscite complementate (`bar Q`) dei FF precedenti   * è possibile ottenere un contatore anche con FF attivi sul fronte di salita collegando il clock alle uscite complementate (`bar Q`) dei FF precedenti
Linea 53: Linea 53:
   * lezione multimediale 5B.1 e 5B.2: contatori asincroni in avanti e all'indietro   * lezione multimediale 5B.1 e 5B.2: contatori asincroni in avanti e all'indietro
   * scheda di laboratorio 5B.1: analisi sperimentale di contatori elementari asincroni   * scheda di laboratorio 5B.1: analisi sperimentale di contatori elementari asincroni
 +  * esercizi svolti: 1 (contatore in avanti con flip-flop D), 2 e 3 (contatore avanti e indietro modulo 12), 6 (reset all'accensione con gruppo RC), 7 (contatore modulo 10 con ingressi //preset// invece che //clear//)
  
  
Linea 58: Linea 59:
 ===== 3 Contatori sincroni ===== ===== 3 Contatori sincroni =====
  
-I contatori sincroni sono realizzati con flip-flop comandati dallo stesso segnale di clock. Hanno prestazioni migliori di quelli asincroni, in particolare:+I contatori sincroni sono realizzati con flip-flop comandati da un unico stesso segnale di clock. Hanno prestazioni migliori di quelli asincroni, in particolare:
   * possono lavorare a frequenze più elevate   * possono lavorare a frequenze più elevate
   * non producono combinazioni errate dovute ai tempi di propagazione (come avviene per i contatori asincroni dove ogni FF viene attivato dall'uscita del precedente)   * non producono combinazioni errate dovute ai tempi di propagazione (come avviene per i contatori asincroni dove ogni FF viene attivato dall'uscita del precedente)
  
 Per comprendere il funzionamento di un contatore sincrono conviene partire dalla tavola della verità (in figura 10 quella di un generico contatore modulo 16). Si nota che: Per comprendere il funzionamento di un contatore sincrono conviene partire dalla tavola della verità (in figura 10 quella di un generico contatore modulo 16). Si nota che:
-  * il FF `Q_0` che contiene il LSB deve commutare a ogni fronte del clock +  * il FF con `Q_0`che contiene il LSB, commuta ad ogni fronte del clock 
-  * il FF successivo, `Q_1`, commuta quando `Q_0` vale 1 +  * il FF successivo, con `Q_1`, commuta quando `Q_0` vale 1 
-  * quello successivo ancora, `Q_2` quando `Q_0` e `Q_1` valgono 1 +  * quello successivo ancora, con `Q_2`quando `Q_0` e `Q_1` valgono 1 
-  * e così via +  * ... e così via 
  
-Per ottenere questo comportamento con un circuito logico si possono utilizzare dei flip-flop T (dei JK con gli ingressi J e K collegati insieme) attivati dallo stesso segnale di clock e pilotati opportunamentecioè+Per ottenere questo comportamento con un circuito logico si possono utilizzare dei flip-flop T (dei JK con gli ingressi J e K collegati insieme) attivati da un unico segnale di clock e pilotati con l'ingresso T: 
-  * +  * sempre alto per il FF con uscita `Q_0` 
 +  * collegato a `Q_0` per il FF con uscita `Q_1` 
 +  * pilotato da una AND con `Q_0` e `Q_1` in ingressoper il FF con uscita `Q_2` 
 +  * ... e così via 
 + 
 +Il circuito risultante è quello mostrato in figura 10. Per realizzare contatori sincroni di modulo diverso si procede in maniera simile, utilizzando FF T e porte AND((per realizzare contatori all'indietro si utilizzerà l'uscita `bar Q` al posto di `Q`; [[http://www.elemania.altervista.org/digitale/immagini/contatore13.png|qui]] un'immagine che mostra un contatore modulo 10)).  
 + 
 +Le figure 12 e 13 mostrano come le prestazioni dei contatori sincroni sono superiori a quelle degli asincroni
 +  * nella prima figura si vede come un contatore asincrono che funziona correttamente a 1 kHz produce risultati errati a 10 MHz a causa del tempo di propagazione dei FF (il segnale in alto è il clock, gli altri i quattro bit da `Q_0` a `Q_3`) 
 +  * alla stessa frequenza di 10 MHz un contatore sincrono continua a funzionare correttamente
  
 ===== Navigazione ===== ===== Navigazione =====
sezione_5b.txt · Ultima modifica: 2021/04/20 15:57 da admin