Originariamente inviato da Mattew86_NX
Ciao a tutti,colgo il mio primo topic anche per presentarmi:mi chiamo Matteo,ho (oramai)24 anni e studio ingegneria informatica da 4 anni,lavorando nel contempo.
Si fa fatica si ma almeno faccio anche esperienza e la cosa non mi dispiace
Ora vengo al punto base sul perchè apro la discussione:tra gli esami che mi sono rimasti da fare all'università vi è quello di calcolatori elettronici,in sostanza il MIPS con il suo compilatore e capitoli vari di teoria su software e hardware.Ciò contro cui sono andato a sbattere il muso studiando è il capitolo che riguarda il calcolo e le misure delle prestazioni di un calcolatore.
Un esercizio in particolare mi fa tribolare,in cui viene chiesto di calcolare il tempo di esecuzione per un set di istruzioni su una macchina a singolo ciclo;la formula per il calcolo del T.esecuzione sarebbe:
Tesecuzione=CicliClockCPU*PeriodoClock oppure CicliClockCPU/FrequenzaClock
I cicli di clock della CPU per il programma si trovano con:
CIcliclockCPU=N.istruzioni del programma*CPI(clock per istruzione)
Il testo dell'esercizio è:
Assumendo che i tempi di calcolo per le unità funzionali
che costituiscono una unità di elaborazione a singolo ciclo
siano i seguenti:
Unità di memoria e ALU: 2 ns, Register file: 1 ns,
sommatore per PC e sommatore per il calcolo
dell’indirizzo di salto: 3ns
si calcoli il tempo di esecuzione della CPU di un set di
istruzioni che sono al 24% load, al 12% store, al 44% Rformat,
al 18% branch e al 2% jump.
Ecco il mio problema è che non so come trovare il numero di istruzioni che compongo il programma;il CPI lo trovo dalla considerazione del testo,ossia che essendo una macchina a singolo ciclo il CPI sarà pari a 1 e con gli altri dati trovo la durata del periodo di clock medio per le istruzioni...ma poi per il numero di istruzioni come proseguo??
RIngrazio subito chi vorrà darmi un parere e chiedo scusa se il mio primo post in questo forum ha un carattere così noioso