Personal computer: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Pizeta (discussione | contributi)
Pizeta (discussione | contributi)
Riga 1 041:
 
 
{| cellpadding='8'
!'''Istruzione'''
!'''Numero minimo
di clock'''
!'''Accessi alla
memoria'''
|-
|Caricamento
|<center> 6 </center>
|<center> 2 </center>
|-
|Memorizzazione
|<center> 5 </center>
|<center> 2 </center>
|-
| ALU
|<center> 5 </center>
|<center> 1 </center>
|-
| Inizializzazione
|<center> 6 </center>
|<center> 1 </center>
|-
| Jump
|<center> 3 </center>
|<center> 1 </center>
|-
| Jump and link
|<center> 5 </center>
|<center> 1 </center>
|-
| Branch taken
(eseguito)
|<center> 4 </center>
|<center> 1 </center>
|-
| Branch not taken
|<center> 3 </center>
|<center> 1 </center>
|}
Qualora l'accesso alla memoria duri più cicli di clock, questi andrebbero moltiplicati al numero di accessi alla memoria e sommati al numero minimo di cicli di clock, in questo caso si parla di ''cicli di stallo della memoria'' o ''stati di attesa'' o '''wait'''. In macchine dotate di cache i cicli di wait valgono zero ( l'accesso alla memoria cache richiede quindi un solo clock )
 
==== Calcolo del CPI ====
 
Supponiamo di avere un programma che esegue le seguenti operazioni con frequenza relativa: