Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Struttura base del processore, Appunti di Architettura Dei Calcolatori

Spiegazione della struttura base del processore, come lavora e diverse tipologie di architettura

Tipologia: Appunti

2019/2020

In vendita dal 25/10/2021

alessioEx
alessioEx 🇮🇹

11 documenti

1 / 5

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
La CPU è formata da:
●L’UNITÀ ARITMETICA-LOGICA (ALU) esegue le operazioni aritmetiche e logiche necessarie
ad eseguire le istruzioni
● CIRCUITI DI CONTROLLO generano i bit di controllo per gestire il funzionamento della CPU
● BANCO DI REGISTRI: blocco di memoria contenente i registri generici della CPU
● PC e IR: registri che contengono rispettivamente l’indirizzo della prossima istruzione e
l’istruzione in esecuzione
● GENERATORE DI INDIRIZZI: aggiorna il contenuto di PC
● INTERFACCIA PROCESSORE MEMORIA gestisce il trasferimento di dei dati tra memoria e
CPU
BANCO DI REGISTRI:
Blocco di memoria piccolo e veloce. Consiste in vari registri con un circuito per l’accesso in
scrittura e lettura. Lettura contemporanea di 2 registri (porte di uscita A e B) e scrittura di un singolo
registro (porta di ingresso C) . Due ingressi per gli indirizzi di lettura (Indirizzo A, Indirizzo B) e
uno per l’indirizzo di scrittura (Indirizzo C). Per realizzare la lettura simultanea di due registri
esistono due metodi:
●Singolo banco di registri con percorsi dati e circuiti di accesso duplicati
●Due copie del banco di registri, una per A e l’altra per B
ALU:
Esegue le operazioni aritmetiche e logiche quali somma, sottrazione, AND, OR, XOR, etc. 2 porte
di input (InA e InB) rappresentanti gli operandi i ingresso. 1 uscita contenente il risultato
dell’operazione. Gli ingressi dell’ALU sono collegati ai registri di uscita A e B. Un MUX è usato
per scegliere se passare un valore immediato come secondo operando.
Generatore di indirizzi delle istruzioni:
Circuito usato per generare l’indirizzo della prossima istruzione da inserire nel PC. Un sommatore è
usato sia per incrementare PC di una parola (4 byte) e sia per sommargli uno spiazzamento nel caso
di salto. MuxINC seleziona che tipo di incremento effettuare. MuxPC seleziona se aggiornare PC
con l’incremento calcolato o con un indirizzo specifico (chiamata a sottoprogramma). Il registro
temporaneo PC-Temp è usato per salvare il valore di PC da inserire nel LR durante una chiamata a
sottoprogramma.
Per eseguire un’istruzione, il processore deve eseguire i seguenti 3 passi:
1. Prelievo dell’istruzione dalla memoria puntata da PC: IR ← [[PC]]
2. Incremento di PC di 4 unità (prossima istruzione): PC ← [PC] + 4
3. Esecuzione dell’istruzione prelevata
● I primi due passi vengono chiamati fase di prelievo (FETCH PHASE) ● Il terzo passo è chiamato
fase di esecuzione (EXECUTION PHASE) ● Durante la fase di esecuzione si possono svolgere
diverse azioni: lettura/scrittura da/in una locazione di memoria, lettura da registri, esecuzione di
operazioni aritmetiche e logiche, etc.
pf3
pf4
pf5

Anteprima parziale del testo

Scarica Struttura base del processore e più Appunti in PDF di Architettura Dei Calcolatori solo su Docsity!

La CPU è formata da: ●L’UNITÀ ARITMETICA-LOGICA (ALU) esegue le operazioni aritmetiche e logiche necessarie ad eseguire le istruzioni ● CIRCUITI DI CONTROLLO generano i bit di controllo per gestire il funzionamento della CPU ● BANCO DI REGISTRI: blocco di memoria contenente i registri generici della CPU ● PC e IR: registri che contengono rispettivamente l’indirizzo della prossima istruzione e l’istruzione in esecuzione ● GENERATORE DI INDIRIZZI: aggiorna il contenuto di PC ● INTERFACCIA PROCESSORE MEMORIA gestisce il trasferimento di dei dati tra memoria e CPU BANCO DI REGISTRI: Blocco di memoria piccolo e veloce. Consiste in vari registri con un circuito per l’accesso in scrittura e lettura. Lettura contemporanea di 2 registri (porte di uscita A e B) e scrittura di un singolo registro (porta di ingresso C). Due ingressi per gli indirizzi di lettura (Indirizzo A, Indirizzo B) e uno per l’indirizzo di scrittura (Indirizzo C). Per realizzare la lettura simultanea di due registri esistono due metodi: ●Singolo banco di registri con percorsi dati e circuiti di accesso duplicati ●Due copie del banco di registri, una per A e l’altra per B ALU: Esegue le operazioni aritmetiche e logiche quali somma, sottrazione, AND, OR, XOR, etc. 2 porte di input (InA e InB) rappresentanti gli operandi i ingresso. 1 uscita contenente il risultato dell’operazione. Gli ingressi dell’ALU sono collegati ai registri di uscita A e B. Un MUX è usato per scegliere se passare un valore immediato come secondo operando. Generatore di indirizzi delle istruzioni: Circuito usato per generare l’indirizzo della prossima istruzione da inserire nel PC. Un sommatore è usato sia per incrementare PC di una parola (4 byte) e sia per sommargli uno spiazzamento nel caso di salto. MuxINC seleziona che tipo di incremento effettuare. MuxPC seleziona se aggiornare PC con l’incremento calcolato o con un indirizzo specifico (chiamata a sottoprogramma). Il registro temporaneo PC-Temp è usato per salvare il valore di PC da inserire nel LR durante una chiamata a sottoprogramma. Per eseguire un’istruzione, il processore deve eseguire i seguenti 3 passi:

  1. Prelievo dell’istruzione dalla memoria puntata da PC: IR ← [[PC]]
  2. Incremento di PC di 4 unità (prossima istruzione): PC ← [PC] + 4
  3. Esecuzione dell’istruzione prelevata ● I primi due passi vengono chiamati fase di prelievo (FETCH PHASE) ● Il terzo passo è chiamato fase di esecuzione (EXECUTION PHASE) ● Durante la fase di esecuzione si possono svolgere diverse azioni: lettura/scrittura da/in una locazione di memoria, lettura da registri, esecuzione di operazioni aritmetiche e logiche, etc.

Datapath (percorso dati)

Prelievo delle istruzioni (Stadio 1)

Per prelevare un’istruzione dalla memoria, MuxMA sceglie se mandare l’indirizzo in RZ o quello in PC all’interfaccia processore/memoria. L’istruzione da caricare è salvata nel registro IR. L’istruzione viene decodificata dai circuiti di controllo e i bit corrispondenti al valore immediato vengono passati a MuxB. Stadio 2: Le porte di uscita A e B del banco di registri vengono copiate nei registri temporanei RA e RB Stadio 3: RA viene usato come primo ingresso dell’ALU. MuxB sceglie RB o un valore immediato come secondo ingresso. Il risultato dell’ALU viene copiato in RZ. RB viene copiato in RM Stadio 4: Se necessario l’indirizzo in RZ viene mandato all’interfaccia processore memoria. Se necessario I dati in RM vengono salvati in memoria. MuxY sceglie se salvare su RY il risultato di un’operazione, dei dati della memoria o l’indirizzo di rientro da sottoprogramma Stadio 5: Il contenuto di RY viene salvato nel Banco dei registri Non sempre gli accessi alla memoria possono essere eseguiti in un ciclo di clock ● Se il dato o l’istruzione da prelevare non si trovano nella cache, l’esecuzione deve bloccarsi al passo corrente fintanto che l’operazione di memoria richiesta non è stata eseguita. Ad operazione di memoria eseguita viene generato il segnare MFC (memory function completed). Il circuito di controllo interrompe l’esecuzione dell’istruzione finché MFC non diventa uguale a 1. L’attesa di MFC avviene nel primo passo di ogni istruzione (prelievo istruzione dalla memoria) e nel passo 4 delle istruzioni di load e store. Gurdare segnali di controllo nelle slide

CISC

Le istruzioni CISC possono occupare più di una parola, non è possibile un approccio a stadi come in RISC. Il blocco di interconnessione permette il trasferimento dati tra una qualsiasi coppia di componenti. Non esistono registri interstadio, ma esistono registri temporanei per memorizzare risultati intermedi. Il blocco di interconnessione è realizzato tramite BUS. Un BUS è formato da un insieme di linee a cui sono connessi vari dispositivi. Un solo dispositivo alla volta può trasferire dati. La porta logica che invia un segnale su una linea di BUS è chiamata BUS DRIVER. I dispositivi sono collegati al BUS tramite porte tri-state, tutte disattivate ad eccezione del bus driver. Una soluzione comune è quella di usare 3 BUS per la connessione. Bus A e B per i sorgenti delle operazioni e Bus C per i risultati. Tutte le componenti sono connesse ai 3 BUS. Il generatore di indirizzo di istruzione è collegato direttamente al PC. Il blocco di Controllo legge direttamente dall’IR.