Circuiti sequenziali

Note

Un circuito digitale è di tipo sequenziale se le sue uscite dipendono non solo dai valori correnti degli ingressi, ma anche da quelli passati. Un circuito digitale sequenziale è pertanto dotato, in ogni istante di tempo, di uno stato che, insieme ai valori degli ingressi, ne determina il comportamento futuro.

L'elemento funzionale elementare per la realizzazione di circuiti sequenziali è il bistabile, che è in grado di memorizzare un bit di informazione.

Il circuito sequenziale ha, in ogni istante, uno stato: il valore dei bit memorizzati nei bistabili facenti parte del circuito.

I bistabili mantengono lo stato memorizzato finché uno o più segnali di ingresso forzano il cambiamento di stato. Vengono classificati in base al numero di ingressi previsti per comandare il bistabile, o in base al modo in cui tali ingressi determinano il cambiamento di stato.

Tutti i bistabili, presentano un ritardo di commutazione dell'uscita, che dipende dalla tecnologia usata.

Bistabili asincroni

Note

I bistabili asincroni sono privi di un segnale di sincronizzazione e modificano lo stato rispondendo direttamente a eventi sui segnali di ingresso.

Un bistabile SR è dotato di ingressi (Set) e (Reset) e di uscite e , dove l'uscita rappresenta lo stato memorizzato. Di seguito mostriamo lo schema circuitale e il blocco funzionale.

center

Se e , qualunque sia il valore dello stato precedente, viene portata a e a .

Se e , qualunque sia il valore dello stato precedente viene portata a e a .

Se , l'uscita mantiene lo stesso stato. Nel caso di configurazione di ingresso il comportamento del bistabile è indefinito.

Diagramma temporale

Il diagramma temporale è un sistema di assi cartesiani con ascissa in tempo (discreta) e in ordinata i vari segnali i cui valori logici si succedono al trascorrere del tempo.

Il diagramma temporale di questo bistabile è il seguente:

center

Si supponga di avere una periferica che deve mandare un segnale di richiesta a un processore. La periferica genera solo un breve impulso di richiesta e il processore potrebbe essere occupato e non in grado di rispondere subito alla richiesta, onorandola. È dunque necessario interporre tra periferica e processore un circuito digitale adattatore che riceva l'impulso, lo memorizzi e lo stabilizzi per poi mandarlo al processore.

Questo adattatore mantiene la richiesta pendente fino a quando il processore non sia disponibile a onorarla. La cancellerà quando il processore segnalerà di averla acquisita ed essere pronto ad onorarla.

center

Segnale di sincronizzazione

Note

Il segnale di clock è un segnale binario con andamento periodico nel tempo, ed è una successione di impulsi con ogni impulso a larghezza costante, e con due impulsi consecutivi a distanza costante. Serve a scandire gli istanti di tempo in cui le transizioni possono avvenire.

Il ciclo di clock mantiene intervalli, l'intervallo iniziale, il fronte di salita e il fronte di discesa.

Bistabili sincroni

Note

A differenza dei bistabili asincroni, nei bistabili sincroni ci sono due aspetti differenti: la relazione ingresso-stato e la relazione stato-uscita.

La relazione ingresso-stato definisce quando gli ingressi modificano lo stato interno del bistabili (temporizzazione basata sul livello o temporizzazione basata sul fronte del segnale di controllo)

La relazione stato-uscita definisce quando lo stato aggiorna le uscite (commutazione basata sul livello o commutazione basata sul fronte del segnale di controllo).

In caso di commutazione basata sul livello del segnale di controllo si parla di Latch, mentre in caso di commutazione basata sul fronte del segnale di controllo si parla di flip-flop.

Bistabile SR sincronizzato (SR-Latch)

Note

Un bistabile SR sincronizzato ha ingressi e , un ingresso di sincronizzazione , e uscite e .

Nel bistabile SR sincronizzato se il clock vale , gli ingressi e non hanno alcun effetto, mentre se il clock vale gli ingressi e sono efficaci.

center

Bistabile D sincronizzato (D-Latch)

Note

Un bistabile D ha un ingresso , un ingresso di sincronizzazione e uscite e .

Se il clock vale , l'ingresso non ha alcun effetto e il bistabile mantiene memorizzato il suo stato corrente. Se il clock vale , l'ingresso è efficace e il bistabile memorizza il valore logico presente sull'ingresso .

center

Il diagramma temporale è il seguente, notiamo che le variazioni di uscita sono sincronizzate con il clock.

center

Comando di ripristino e precarica

Tutti i bistabili dispongono di varianti dotate di un comando di ripristino che forza lo stato del bistabile a , mentre alcuni bistabili dispongono del comando di precarica che forza lo stato del bistabile a .

Fenomeno di trasparenza

I latch sincroni (SR o D) presentano, durante l'intervallo di tempo in cui il clock è attivo, il fenomeno di trasparenza delle uscite. In questo intervallo, se gli ingressi si modificano le uscite seguono questa modifica.

Per evitare il fenomeno di trasparenza si utilizzano i flip-flop (D o SR) che sono costituiti da due latch in cascata in modo che lo stato possa modificare le uscite solo in corrispondenza di un evento di fronte del segnale di controllo.

Flip-flop D master-slave

Note

In un flip-flop master slave la relazione ingresso-stato è a livello, mentre la relazione stato uscita è sul fronte.

center

Il bistabile principale campiona l'ingresso durante l'intervallo alto del clock, lo emette sull'uscita e lo manda all'ingresso del bistabile ausiliario. Il bistabile ausiliario campiona l'ingresso durante l'intervallo basso del clock e lo emette sull'uscita .

L'uscita generale può variare solo nell'istante del fronte di discesa del clock.

I flip-flop master-slave e edge-triggered sono esternamente identici. Entrambi leggono i segnali in ingresso sul fronte di discesa e lo rendono disponibile in uscita.