Descrizione dei moduli RTL
I moduli RTL possono essere suddivisi in due categorie principali: moduli combinatori e moduli sequenziali.
Moduli combinatori
Nei moduli combinatori, l'uscita dipende esclusivamente dall'ingresso. Esempi di questi moduli includono:
- Porte generalizzate, che svolgono operazioni su parole.
- Multiplexer, utilizzati per instradare i dati in funzione delle varie situazioni.
- Codificatori e decodificatori, utilizzati per la conversione dei codici nelle memorie.
Le matrici logiche rappresentano un modo ordinato di costruire funzioni booleane complesse, anche a più uscite.
Moduli aritmetici
Questi moduli sono fondamentali per i calcoli aritmetici nelle CPU.
Moduli sequenziali
Nei moduli sequenziali, l'uscita dipende sia dagli ingressi sia dallo stato interno, che viene in qualche modo memorizzato. Gli stati interni vengono mantenuti all'interno dei flip-flop, l'elemento base dei registri. I registri a scorrimento sono molto importanti per funzioni come la conversione parallelo-serie.
Analisi dei moduli e della loro interconnessione
L'analisi comprende anche le strutture di interconnessione. Si inizia con i moduli di tipo combinatorio, in particolare quelli che servono a svolgere funzioni booleane su parole.
Esempio del NAND
Esempio: due variabili sono dei vettori, vettore x e y. I componenti dei vettori vengono "nandati" a due a due. In uscita c'è il vettore z. Il numero degli elementi che compongono il vettore, uscita z1, è dato da x1 NAND y1.
Invece di disegnare o considerare un insieme di porte logiche, consideriamo l'elemento con cui abbiamo la barretta per far capire che sono vettori. Quindi, questo modulo che effettua l'operazione può essere espanso e rappresentare in modo sintetico l'insieme di porte logiche. Le operazioni possono essere svolte tra scalari, quindi somma tra vettori e moltiplicazione di uno scalare per un vettore.
Multiplexer
Tra più dati presenti in ingresso, n vettori di m bit presenti sull'ingresso, in uscita solo uno di questi vettori viene selezionato istante per istante. Solo uno di questi ingressi sarà selezionato all'uscita. La selezione avviene attraverso un codice che viene reso disponibile a un modulo con m bit.
Gli ingressi di selezione sono codificati, e quindi useremo un numero degli ingressi pari al log in base 2 di m. Si vede un'espansione a livello logico di un multiplexer a 2 ingressi e 4 bit. Con 1 bit di selezione, 2 vettori, uno formato dai termini x0m e uno formato dai termini x1m, a seconda del valore assunto dal bit di selezione, in uscita è presente uno dei due vettori considerati.
Decoder
Il decoder è un circuito combinatorio che ha alcune uscite, es. 2 alla n. Di queste uscite, solo una assume il valore 1, mentre le altre sono a 0. L'1 dipende dal codice impostato negli ingressi.
TODO: realizzare il disegno del decoder e realizzare un decoder con 3 bit.
-
Appunti lezione Calcolatori elettronici
-
Appunti lezione Calcolatori elettronici
-
Appunti Calcolatori Elettronici
-
Appunti di Calcolatori elettronici