Latch di tipo SR

Latch ad un bit
...

Pasted image 20230603115828.png
Il dispositivo sopra, di cui ancora sconosciamo la costruzione logica interna, ha due ingressi () e un'uscita (), al suo interno il latch mantiene uno stato interno (), tale stato, trattandosi di un latch ad un bit, sarà salvato mediante un solo bit.

Costruiamo la tabella di verità per un dispositivo di questo tipo.
Definiamo come lo stato futuro e come lo stato corrente.
Quindi ci comunica in che stato si trova il latch, mentre ci dice in che stato si troverà.
Definiamo inoltre il comportamento di :

  • : hold, ovvero mantenimento dello stato corrente , lo stato futuro non cambierà;
  • : store, ovvero salvare una nuova informazione sarà uguale a qualcosa che viene passato come input da settare ()
0000
0011
0100
0111
1000
1010
1101
1111

Quando , qualunque sia l'input passato, stato corrente e stato futuro rimangono uguali.
Può essere interpretato come: se sono in modalità lettura, qualunque tentativo di scrivere è vano.

0000
0011
0100
0111
1000
1010
1101
1111

Quando , lo stato futuro cambia in funzione dello stato attuale e dell'input passato. Se lo stato attuale è 0 e , praticamente l'informazione che voglio salvare è già presente, quindi lo stato futuro non cambia, tuttavia quando è diverso dallo stato attuale, lo stato futuro cambia.

Possiamo distinguere tre situazioni:

  • : stato attuale e futuro non cambiano (hold)
  • : se stato attuale e futuro non cambiano (hold)
  • : se e allora diventa 0 (reset)
  • : se e allora diventa 1 (set)

Il circuito memorizza quando avviene l'ultimo cambiamento, ovvero quando si verifica un set o un reset.

Latch di tipo SR (set-reset)
...

Stato corrente
...

Quando lo stato è , posso memorizzare 0 (reset)

photo_2023-06-03_12-46-36.jpg

Se lo stato è , se vogliamo far cambiare l'informazione memorizzata, deve essere inviato come input 0, poiché ci troviamo nello stato in . Passando , resettiamo lo stato del latch riportandolo nello stato .

photo_2023-06-03_12-54-45.jpg

Stato corrente
...

Adesso, abbiamo sia che uguali a 1. Il circuito non è stabile. Per stabilizzarlo, dobbiamo fare in modo che i due stati e si alternino sempre a vicenda. Dobbiamo collegare con la porta NOR sopra, set sarà 0, e il latch imposterà lo stato a 0.

photo_2023-06-03_13-02-35.jpg

Quindi abbiamo due stati:
Stato 0
Pasted image 20230603130329.png

Stato 1
Pasted image 20230603130351.png

Dallo stato 0 allo stato 1
...

Se siamo nello stato 0 e vogliamo passare nello stato 1:

  • set deve essere 1
  • reset deve essere 0

Ecco cosa succede:
Pasted image 20230603130649.png
Per la porta NOR sopra diventa 0, tale 0 viene mandato nella porta NOR sotto e diventa 1, poiché R = 0 messa a NOR con 0 fa 1.
Pasted image 20230603130755.png
Pasted image 20230603130840.png
Siamo passati allo stato 1.

Da questo stato, se venissero cambiati set e reset, impostandoli entrambi a 0, lo stato non cambia: è stabile.
Pasted image 20230603131108.png
Si rimane nello stato 1.

Dallo stato 1 allo stato 0
...

Se dallo stato 1 (a cui siamo giunti prima) vogliamo tornare allo stato 0 (e ) è necessario impostare R a 1, per far variare da 1 a 0.
Pasted image 20230603131552.png
La porta NOR in basso fa variare che diventa 0, tale 0 viene mandato nella porta NOR in alto, avendo così (in alto) 0 NOR 0 = 1.
Pasted image 20230603131712.png

Da questo stato, se venissero cambiati set e reset, impostandoli entrambi a 0, il circuito non cambia: è stabile.
Pasted image 20230603131807.png
Si rimane nello stato 0.

Grafo di transizione degli stati discussi finora
...

Se siamo in S0 ed S = 1 e R = 0, si passa allo stato S1.
Pasted image 20230603131853.png

Essendo nello stato S1
...
  • Se S = 1 e R = 0, si rimane nello stato S1.
  • Anche se S = 0 e R = 0, si rimane nello stato S1.
    Pasted image 20230603132247.png
Per passare nuovamente a S0
...

S deve essere 0 e R deve essere 1.
Pasted image 20230603132356.png

Essendo nello stato S0
...
  • Se S = 0 e R = 1, si rimane nello stato S0.
  • Anche se S = 0 e R = 0, si rimane nello stato S0.
    Pasted image 20230603132421.png
Dagli stati S0 e S1
...

Se S = 1 e R = 1 si va nello stato in cui e
Pasted image 20230603132653.png
Da questo stato se S = 0 e R = 1, si passa allo stato S0 e se S = 1 e R = 0 si passa allo stato S1

Ma se in questo stato sia R che S sono 1?
...

Pasted image 20230603132824.png

S = 1 e R = 1
...

Pasted image 20230603132846.png
Pasted image 20230603132913.png
Pasted image 20230603132931.png
Pasted image 20230603132938.png
Il circuito non è stabile e continua a variare in loop, o ad un certo punto si stabilizza su uno stato non previsto, per cui vogliamo che questa situazione non si verifichi mai.

Utilizziamo il clock: Latch di tipo SR sincronizzato