Nell’articolo di oggi analizzeremo nel dettaglio il funzionamento del flip-flop D.
Negli articoli precedenti abbiamo visto:
- Come funziona una CPU: progetto di circuiti logici #0
- Come funziona una CPU: Flip-Flop SR asincrono #0.1
- Come funziona una CPU: Flip-Flop sincrono #0.1.1
Facciamo un riepilogo.
Il flip-flop è un circuito sequenziale, che ha le seguenti caratteristiche:
- i valori delle uscite dipendono sia dai valori correnti degli ingressi, sia dalla storia passata del sistema (dai valori applicati in precedenza)
- implementano funzioni dipendenti dal tempo
- sono in grado di memorizzare informazioni
- sfruttano i ritardi delle porte (mediante i flip-flop).
Il flip-flop è un elemento circuitale in grado di memorizzare un bit (funzionalmente non è poi tanto diverso dalle memorie RAM, ROM, Flash, etc.) che opera insieme alle porte logiche all’interno di un circuito. Può essere costruito violando una delle regole dei circuiti combinatori ben formati: quella che prevede l’assenza di cicli all’interno del circuito stesso.
Arriviamo ora al sodo.
Il Flip-Flop D è uno de modelli più utilizzati nella pratica. Esso è realizzabile connettendo un Flip-Flop SR sincrono (rappresentato dallo “scatolotto” nella metà destra dello schema circuitale) con un segnale d’ingresso D che giunge in modo diretto al segnale S ma passa attraverso una porta NOT prima di giungere al segnale R. Ciò comporta l’impossibilità, da parte dei segnali S ed R, di assumere lo stesso valore.
Pertanto, le configurazioni S=0, R=0 ed S=1, R=1 sono ora negate! Ciò non causa alcuna perdita di funzionalità del Flip-Flop in quanto la configurazione S=1, R=1 era vietata a priori, mentre la possibilità di mantenere in Memoria un dato bit (garantita dalla configurazione S=0, R=0) è ora gestita univocamente dal Clock (che assume valore 0 quando si vuole mantenere un bit in Memoria)!
Nel momento in cui il Clock commuta in 1 il proprio valore, il Flip-Flop diventa sensibile al segnale D e cambia valore con esso. In altre parole ad ogni colpo di clock viene memorizzato il valore presente sull’ingresso D.
Tavola degli stati.
Per comprendere bene la tavola degli stati è consigliabile ripassare sull’articolo del flip-flop sincrono. Assumiamo che il segnale di Clock valga 1.
- Quando D è pari a 0 il Flip-Flop produce in uscita il valore 0.
- Quando D è pari ad 1 il Flip-Flop produce in uscita il valore 1
Limiti del flip-flop D
Potrebbero verificarsi problemi se il segnale D commuta quando il Clock vale 1. L’ideale sarebbe quindi far sì che D non cambi valore quando il Clock è ad 1. A questo compito assolve il Flip-Flop Master-Slave. In alternativa si potrebbe provare a ridurre il periodo di Clock (l’intervallo di tempo durante il quale il segnale di Clock vale 1) in modo che sia meno probabile che D commuti proprio in tale arco di tempo, ma non sempre ciò risulta sufficiente o possibile.
Iscriviti ai nostri gruppi Telegram
Link utili