Come funziona una CPU: architettura base di una CPU #0.4.1

Nell’articolo di oggi analizzeremo l’architettura base di una CPU.

Negli articoli precedenti abbiamo visto:

Da cosa è composta questa architettura?

Contiene dei registri che non appartengono né alla categoria dei registri utenti né a quella dei registri speciali, sono più che altro dei registri di supporto. L’UC pilota tutti questi moduli (i registri, la ALU e l’unità di elaborazione) facendo in modo che la singola istruzione venga eseguita correttamente. L’unità di controllo deve attivare i registri in modo da eseguire l’istruzione che in tal momento è stata caricata, quindi riceve in ingresso alcune informazioni, ad esempio dall’Instruction Register, per sapere qual è l’istruzione in corso di esecuzione.

L’UC è quindi in grado di generare dei segnali all’esterno che vanno verso vari componenti (anche al di fuori della CPU), per consentire agli altri moduli di riconoscere il tipo d’istruzione da eseguire. Il segnale Zero, prodotto in output dalla ALU, fornisce informazioni circa il risultato di un’operazione di sottrazione tra 2 registri. Esso è pari ad 1 se tale risultato è nullo, il ché corrisponde ad aver operato con 2 registri uguali.

Qui in basso vi è uno schema di una architettura base per la CPU:

architettura

Questo segnale risulta particolarmente utile a seguito della richiesta di esecuzione di un’istruzione di salto condizionato come la ”bne”(branch on not equal) e la ”beq” (branch on equal). Infatti, questo genere di istruzioni richiede che venga effettuato un confronto tra i due registri operandi e che si salti ad un dato indirizzo in Memoria solo se tali registri risultano diversi (bne) o uguali (beq).

Pertanto il segnale Zero, una volta prodotto, giunge agli ingressi dell’UC la quale valuta se occorre aggiornare il Program Counter (PC) per saltare ad un nuovo indirizzo o meno. Nel caso in cui l’istruzione di salto possa essere eseguita, l’UC deve anche reperire dall’Instruction Register (IR) il valore dell’immediato (della costante) che, sommato al corrente valore del PC, consente di saltare all’indirizzo richiesto.

N.B. Il Program Counter è un registro contenente l’indirizzo in Memoria dell’istruzione in attuale corso d’esecuzione. Prima di poter eseguire una qualsiasi istruzione, bisogna reperirne l’indirizzo aggiornando il contenuto del PC.

Iscriviti ai nostri gruppi Telegram

Link utili

Seguici per non perdere le prossime novità!

Simone Candido è un ragazzo appassionato del mondo tech nella sua totalità. Simone ama immedesimarsi in nuove esperienze, la sua filosofia si basa sulla irrefrenabile voglia di ampliare a 360° le sue conoscenze abbracciando tutti i campi del sapere, in quanto ritiene che il sapere umano sia il connubio perfetto tra cultura umanistica e scientifica.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.