I LATCH
I circuiti combinatori sono caratterizzati dal fatto che l’uscita è il risultato logico dei segnali presenti in ingresso allo stesso istante senza considerare ritardi di propagazione. Un circuito sequenziale invece memorizza anche gli stati precedentemente assunti oltre a quelli attualmente presenti in ingresso. Esiste una retroazione che invia il segnale di uscita verso l’ingresso. Esiste in questo tipo di circuiti un meccanismo di memorizzazione degli stati precedenti che condizionano quelli successivi. Questi stati memorizzati vengono definiti variabili interne, e la capacità di un circuito sequenziale di produrre i suoi effetti adoperando le variabili interne, è dovuta al ritardo dei circuiti combinatori nel cambiare gli stati in uscita quando in ingresso è applicato un nuovo livello.
Il ritardo della propagazione del segnale dall’ingresso verso l’uscita è indicato con ∆t. Nel momento in cui sull’ingresso arriva un segnale questo viene memorizzato insieme a quello precedente (ancora in memoria) e riportato in ingresso. Il dato attuale e quello riportato in ingresso operano simultaneamente producendo una nuova condizione nella memoria.
LATCH DEFINIZIONE
Un latch dall’inglese “afferrare, mantenere” è sostanzialmente un multivibratore bistabile, un circuito cioè in grado di avere due stati stabili, questi stati sono 0 e 1. Un latch è quindi capace di mantenere un bit di informazione, viene realizzato con porte NAND e NOR, fondamentalmente possiamo dire che la RAM di un PC ma in genere quando si parla di spazi di archiviazione dei dispositivi digitali, le celle di memoria che sono una componente fondamentale di tali dispositivi sono proprio dei latch in quanto hanno la capacità di bloccare uno stato logico e mantenerlo nel tempo.
LATCH SR
Un Latch SR è l’elemento base della logica sequenziale dal quale nascono i flip-flop ossia dispositivi sincronizzabili mediante un segnale esterno detto clock.
FUNZIONAMENTO
- SET=1, RESET = 0 L’USCITA Q ASSUME IL VALORE 1 IL LATCH SI DICE SETTATO.
- SET=0, RESET=1 L’USCITA Q ASSUME IL LIVELLO LOGICO 0 IL LATCH SI DICE RESETTATO.
- SET=0, RESET=0 LO STATO LOGICO DI Q E Q̅ NON SUBISCE VARIAZIONI IL LATCH MEMORIZZA GLI STATI PRECEDENTI DELLE USCITE.
- SET=1, RESET=1 VALORI NON AMMESSI IN QUANTO L’USCITA PUO’ ASSUMERE INDIFFERENTEMENTE I VALORI 0 E 1.
LATCH SR CON PORTE NOR
FUNZIONAMENTO DEL CIRCUITO
I pulsanti SET e RESET inizialmente sono inattivi e a un potenziale di 0v grazie alle resistenze R1 e R2 mantenendo così in memoria l’ultimo stato acquisito. Ipotizziamo che il latch riceva un impulso di reset spegnendo il led sull’uscita della porta logica A poiché viene a trovarsi a livello logico 1. Infatti l’impulso R manda l’ingresso della seconda porta logica B a 1, quindi l’uscita sarà 0 che tramite la retroazione porta un ingresso della NOR A lo 0 logico, l’altro ingresso è tenuto a 0V dalla resistenza R1 quindi l’uscita di A si trova ad 1 spegnendo il led. (Primo stato stabile). Quando viene premuto il pulsante di SET avvengono simultaneamente le seguenti cose.
- L’ingresso della NOR A va a livello logico 1 portando la sua uscita a 0 e il led si accende.
- L’uscita bassa della NOR A tramite retroazione si riporta su un ingresso di B il quale ha l’altra uscita a massa, quindi il livello logico sulla sua uscita è 1 (secondo stato stabile).
GATING
Il gating è una tecnica che permette il passaggio dei dati da un punto di un circuito logico ad un altro, ad esempio tra un ingresso dati ed un’uscita. Vediamo il funzionamento di un circuito basato su una porta AND.
I dati transiteranno in uscita solo quando sul gate è presente un livello logico 1. L’ingresso di gate è detto anche Enable, o più semplicemente viene indicato negli integrati con la lettera E. Il treno di impulsi passerà in uscita solo quando il gate è attivo.
LATCH CON ENABLE
Realizzeremo un Latch SR con porte NAND, il funzionamento è del tutto simile a quello visto per le porte NOR, quindi prenderemo in considerazione solo il nuovo ingresso di Enable E.
Le NAND 1 e 2 abilitano la transizione dei dati verso il Latch quando l’ingresso E è posto ad 1. Quando E è posto a 0 l’uscita non invia dati all’ingresso del Latch, conservando dunque l’ultimo valore rimasto in memoria ed indicato con x. Il funzionamento è analogo al Latch SR con porte NOR.
D-LATCH
Scopo del D-Latch è eliminare la condizione di indeterminazione che si verifica quando SET e RESET sono entrambi ad 1. Per far ciò è necessario che uno dei due ingressi piloti l’altro.
Con D è indicato l’ingresso dati, è chiaro che la porta NOT posta tra SET e RESET elimina la condizione di indeterminazione (se SET=1 RESET=0 e viceversa). Gli ingressi SET e RESET sono stati uniti in D. Il D-Latch è particolarmente adatto alla memorizzazione dei dati, infatti dalla tabella si vede che D transita nell’uscita Q solo quando il piedino di Enable E vale 1, altrimenti il dato di Q è quello presente in una precedente abilitazione. Quando è necessario leggere il dato in ingresso si abilita la lettura con E, altrimenti l’ultimo dato rimane in memoria. Il D-Latch viene usato nei sistemi a microprocessore e in generale nella gestione dei dati in transito tra dispositivi.
IL REGISTRO
Unendo in cascata n D-Latch si possono formare dei veri e propri circuiti di memorizzazione, i Registri usati soprattutto nei sistemi a microprocessore dove prima di essere elaborati i dati di un programma vengono messi temporaneamente nei registri. Normalmente i programmi si scrivono con linguaggi di alto livello, Java, C++, C# etc. Tuttavia quando vengono mandati in esecuzione le keyword e i dati del programma vengono tradotti in linguaggio macchina, ossia sequenze di bit perché solo i bit la circuiteria dei computer e dispositivi elettronici sanno riconoscere.
LA MEMORIA
Un registro è l’elemento base di una memoria. In base al numero di registri utilizzati e alla loro ampiezza in bit viene definita la grandezza della memoria. Ad esempio con 8 D-Latch in grado di memorizzare un Byte e 16 registri si realizza una memoria da 16 Byte. Per accedere ai singoli registri per leggere o scrivere l’informazione si usa generalmente un demultiplexer che prende in input dal bus indirizzi il valore esadecimale del registro chiesto ad esempio da una CPU e indirizza l’uscita ad uno degli n registri presenti. Il bus dati e indirizzi sono bidirezionali, questo per leggere o scrivere nei vari registri.
Per quanto riguarda il bus indirizzi e dati la grandezza di quest’ultimi dipende dall’architettura hardware, ad esempio in un sistema a 32 bit si possono indirizzare 232 locazioni di memoria che sono più di 4GB. Nei sistemi più moderni aventi architettura a 64 bit se ne possono indirizzare 264 che è una quantità enorme. Qualora in un sistema multitasking come windows, MacOS e Linux il numero di programmi in esecuzione è tale da esaurire la RAM a disposizione allora si ricorre ad un’area del disco chiamata file di swapping o memoria virtuale. Qualora si usi un disco SSD e si ha a disposizione 16-32GB di RAM o oltre è meglio disabilitare la memoria virtuale per ridurre il numero di scritture su disco ed allungare il ciclo di vita dell’SSD.
APPROFONDIMENTO AI
LATCH SR
L’immagine caricata rappresenta il funzionamento di un Latch Set-Reset (SR), un tipo di circuito bi-stabile che fa parte dei circuiti di memoria elementari utilizzati in elettronica digitale. Ecco una spiegazione dettagliata basata sulla tua immagine:
Componenti del Latch SR
•S (Set): Questo ingresso, quando attivato (logicamente alto), imposta l’uscita Q a 1.
•R (Reset): Questo ingresso, quando attivato, azzera l’uscita Q (la imposta a 0).
•Q: Uscita principale del latch.
•Q̅ (Q negato): Uscita complementare di Q.
Funzionamento Base
1. Settare Q: Quando S è alto (1) e R è basso (0), l’uscita Q diventa alta (1) e Q̅ diventa bassa (0).
2. Resettare Q: Quando R è alto (1) e S è basso (0), l’uscita Q diventa bassa (0) e Q̅ diventa alta (1).
3. Memorizzazione: Se entrambi gli ingressi S e R sono bassi (0), il latch mantiene lo stato precedente di Q e Q̅.
4. Stato non ammesso: Se entrambi gli ingressi S e R sono alti (1), si trova in uno stato non ammesso o indefinito, che può portare a comportamenti imprevedibili.
Tavola di Verità
•S = 1, R = 0 -> Q = 1 (Set)
•S = 0, R = 1 -> Q = 0 (Reset)
•S = 0, R = 0 -> Q = valore precedente (Memorizza)
•S = 1, R = 1 -> Stato non ammesso
LATCH SR CON PORTE NOR
Il circuito mostrato nell’immagine è un latch SR (Set-Reset) basato su porte NOR. Ecco come funziona:
1. Componenti principali:
•Porte NOR: Due porte NOR sono al centro del funzionamento del latch. Ogni porta NOR restituisce 0 se almeno uno degli ingressi è 1; altrimenti restituisce 1.
•Resistenze: R1 e R2 sono resistenze di pull-down che assicurano che gli ingressi delle porte NOR siano normalmente a 0 (livello basso) quando gli interruttori S (Set) e R (Reset) non sono premuti.
•Interruttori S e R: S serve per “impostare” il latch (portarlo in uno stato in cui l’uscita è 1), e R serve per “resettare” il latch (portarlo in uno stato in cui l’uscita è 0).
•LED e R3: Il LED è connesso tramite una resistenza R3 e mostra lo stato dell’uscita del latch. Si accende quando l’uscita è alta.
2. Funzionamento del Latch:
•Condizione di Reset (R attivato): Premendo l’interruttore R, il suo ingresso alla porta NOR diventa 1. Poiché almeno uno degli ingressi della porta NOR è 1, l’uscita della porta NOR dove fluisce il segnale R diventa 0. Questo 0 viene inviato all’altra porta NOR come uno degli ingressi, forzando l’uscita di quella porta NOR a 1 (perché entrambi gli ingressi di quella porta NOR sono 0). Questo output 1 è lo stato del latch che indica “set”.
•Condizione di Set (S attivato): Premendo l’interruttore S, il suo ingresso alla porta NOR diventa 1. L’uscita di questa porta NOR diventa quindi 0, indipendentemente dall’altro ingresso. Questo 0 viene inviato all’altra porta NOR, facendo in modo che l’uscita di questa seconda porta NOR rimanga 0, perché uno degli ingressi è ora 1. Quindi, l’uscita globale del latch e del LED rimangono a 0 (reset).
3. Stato di Memoria: Quando entrambi gli interruttori sono rilasciati, il latch mantiene il suo stato precedente a causa della natura retroalimentata del circuito. Ogni porta NOR riceve l’uscita dell’altra come uno dei suoi ingressi, creando un ciclo di feedback che mantiene lo stato corrente finché uno degli interruttori non viene premuto per cambiare lo stato.
4. Protezione contro stati illegali: Importante notare che non si dovrebbero premere entrambi gli interruttori contemporaneamente. In teoria, questo potrebbe portare a un’uscita indefinita poiché entrambe le porte NOR avrebbero ingressi alti, risultando in uscite basse, che contraddirebbe il comportamento atteso del latch.
In conclusione, il latch SR con porte NOR è un componente fondamentale nei circuiti digitali per mantenere uno stato stabile fino a che non viene cambiato esplicitamente tramite i suoi ingressi di set o reset.
Lascia un commento