Architettura dei calcolatori/Architettura dei processori: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Diablo (discussione | contributi)
mNessun oggetto della modifica
FrescoBot (discussione | contributi)
m Bot: apostrofo dopo l'articolo indeterminativo
Riga 133:
 
\subsubsection{Branch prediction}
Per migliorare la tecnica del pipeline flushing si considera che spesso i salti condizionati hanno un 'evoluzione più probabile: se il salto è all'indietro è probabile che la condizione sia verificata a causa del modo con cui i compilatori per linguaggi ad alto livello traducono i cicli in linguaggio macchina, se il salto è in avanti è probabile che la condizione non sia verificata.
 
È necessario distinguere in fase di fetch se l'istruzione è di salto condizionato e l'indirizzo di salto, quindi si inserisce in PC l'indirizzo più probabile secondo le considerazioni precedenti, se poi la previsione è errata si cancella la pipeline.
Riga 214:
 
\subsubsection{Istruzioni di accesso alla memoria}
Il campo ALUout specifica l'indirizzo di memoria da accedere, i comandi CME selezionano la memoria e specificano se debba essere eseguita un 'operazione di lettura (per LD) o scrittura (per ST), nel caso dell'istruzione ST il campo B specifica i dati che devono essere scritti e il campo MEMout non è significativo.
 
\subsubsection{Istruzioni di salto}
Riga 263:
 
\subsection{Writebuffer}
Supponendo di utilizzare una cache gestita write-back con bit dirty ed un 'unità di accesso al bus che, quando il bus è libero, aggiorna la memoria, si inserisce tra d-cache e memoria un \emph{write buffer}.
Si tratta di una struttura dati gestita a coda fifo composta da blocchi di memoria che contengono il dato da scrivere e l'indirizzo completo.