Nell’articolo di oggi analizzeremo quali sono le operazioni fondamentali che una CPU effettua.
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
- Come funziona una CPU: Flip-Flop D #0.1.2
- Come funziona una CPU: Flip-Flop Master-Slave #0.1.3
- Come funziona una CPU: Modello di Huffman #0.2
- Come funziona una CPU: progetto di circuiti sequenziali sincroni #0.2.1
- Come funziona una CPU: progetto dei circuiti logici #0.3
- Come funziona una CPU: porte logiche operanti su parole #0.3.1
- Come funziona una CPU: multiplexer #0.3.2
- Come funziona una CPU: decodificatore #0.3.3
- Come funziona una CPU: codificatore (encoder) #0.3.4
- Come funziona una CPU: codificatore prioritario (priority encoder) #0.3.4.1
- Come funziona una CPU: sommatore full-adder #0.3.5
- Come funziona una CPU: sommatore Ripple Carry Adder #0.3.5.1
- Come funziona una CPU: sommatore seriale #0.3.5.2
- Come funziona una CPU: Sommatore con carry-lookahead #0.3.5.3
- Come funziona una CPU: ALU spiegata in modo semplice #0.3.5.4
- Come funziona una CPU: comparatore #0.3.5.5
- Come funziona una CPU: registro a m-bit #0.3.6
- Come funziona una CPU: registro a scalamento (Shift Register) #0.3.6.1
- Come funziona una CPU: contatore semplice #0.3.7
- Come funziona una CPU: contatore asincrono (ripple counter) #0.3.7.1
- Come funziona una CPU: contatore sincrono #0.3.7.2
- Come funziona una CPU: bus spiegato in modo semplice #0.3.8
- Come funziona una CPU: introduzione alla cpu #0.4
Tutte le operazioni svolte dalla CPU possono essere ricondotte a 4 tipologie:
- prelievo di un dato o di una istruzione dalla Memoria e caricamento in un registro;
- scrittura in Memoria di un dato contenuto in un registro;
- trasferimento di un dato da un registro ad un altro;
- esecuzione di un’operazione aritmetica o logica e memorizzazione del risultato in un registro;
Le 4 operazioni verranno descritte con riferimento al modello della CPU del precedente paragrafo, semplificato rispetto a quello reale.
Vediamo come è realizzata una interfaccia per effettuare le operazioni elementari.
Si consideri un registro Ri interfacciato con un Bus e dotato di un segnale di Load, attivando il quale acquisisce gli n bit ricevuti dal Bus stesso. All’interno di una CPU, gli ingressi di ciascun registro sono connessi ad un Bus interno. Il registro i-esimo scrive al proprio interno i valori ricevuti in ingresso dal Bus quando viene attivato il segnale Riin. Le uscite di ciascun registro sono connesse anch’esse al Bus, mediante però un Buffer tri-state. Il Buffer tri-state è dotato di un segnale di Enable che, se attivo, consente alle uscite del registro Ri di pilotare il Bus. Se invece Riout è disattivo le uscite del registro sono elettricamente sconnesse dal Bus.
Iscriviti ai nostri gruppi Telegram
Link utili