G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro •...

50
G. Bucci - Calcolatori Elettronici Memoria e altro Contenuto della lezione – Richiami – Evoluzione – Gerarchia – Organizzazione – Allineamento – Indirizzamento – Ecc

Transcript of G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro •...

Page 1: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Memoria e altro

• Contenuto della lezione– Richiami– Evoluzione– Gerarchia – Organizzazione– Allineamento– Indirizzamento– Ecc

Page 2: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Prima di tutto un ripasso di elettronica….Logica TTL ¼ di 7400

Page 3: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Soglia di rumore

Page 4: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

Registro

Page 5: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Open collector

Page 6: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Logica Tristate

Page 7: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

Trasferimento info

Page 8: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

BUS

Page 9: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

Bus

Page 10: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Memoria

• Funzionalità– Memoria di sola lettura (ROM) – Memoria di lettura/scrittura (RAM)

• Tecnologia– Memoria elettronica– Memoria magnetica– Memoria ottica

• Modalità di accesso – Memoria ad accesso casuale– Memoria ad eccesso sequenziale– Memoria ad eccesso per contenuto (CAM)

Page 11: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Memoria

• Parametri di valutazione – Dimensione (bit o byte)– Velocità– Potenza– Integrazione– Costo

Page 12: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Memoria ROM

Page 13: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

PROM

Page 14: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Memoria RAM

– Statiche (uno (o più) FF per bit)• Alto Consumo• Bassa Integrazione• Alto Costo• Alta velocità

– Dinamiche (1 transistore Cmos per cella; un condensatore fa da elemento di mem)

• Basso Consumo• Alta integrazione• Basso costo• Bassa velocità

Page 15: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

SRAM (AS7C34096 512K per 8)

• 18 linee indirizzo– 1024 righe– 512 colonne

• 8 linee dati• WE• OE• CE

Page 16: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

…SRAM (AS7C34096)

NB:

tRC=tACC

(10ns)

Page 17: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

DRAM (AS4C1M16E5 1M di 1 bit)

NB:

tRC=75 ns

tRAC= 45 ns

Page 18: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Dischi magnetici

• Memorie di massa• Piatti, settori, tracce, cilindri, testine,….• Tecnologie raffinatissime

– l’altezza di volo delle testine è 0,5 micron (una particella di fumo è 6 micron)

Page 19: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Dischi magnetici

• Piatti: da 1 a 20• Diametro: da 1 a 5,25 pollici (portatili 2”)• Giri/min: da 3600 a 7200 (e più)• Tracce: da 1000 a 5000 per faccia• Settori: da 64 a 200• Dim settore: 512 (tipica), 1024, 2048 byte

• Tseek: da 8 a 12 ms (è un tempo medio: sfavorevole!! )• Tlat = 0,5 (60/g) s• Ttrasf = Dimsett/Vtrasf (Vtrasf: da 2 a 15 Mbyte/s)

• Tacc= Tseek+Tlat+Ttrasf (+Tcontr+Tq)

Page 20: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Crescita livello integrazione DRAM

Page 21: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Costi DRAM

Page 22: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Evoluzione tecnologica (DRAM)

Page 23: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

La forbice

Negli anni è cresciuta, e continua a crescere,la differenza di velocità tra CPU e memoria.

Page 24: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

“Legge” di Moore

• Enunciata nel 1965, aggiustata più volte:– Inizialmente: Raddoppio della “capacità elaborativa”

(numero di transistori) ogni 12 mesi (anni 70)– A media via: Raddoppio ogni 2 anni (anni 80)– Correntemente: Raddoppio ogni 18 mesi (dai 90)

• Vuol dire che nei prossimi 18 mesi l’elettronica avràun aumento quantitativo pari a quello complessivo dall’inizio (della storia) ad oggi !!!!!!!!!!!!!!– Non è una legge fisica– Prima o poi non andrà più bene– Per ora tiene!!!!!!!!!!!!!!!!

Page 25: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Processori Intel

Page 26: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Processori Intel

Page 27: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Cicli di wait

• f: frequenza del clock• N: numero di cicli previsti dalla CPU per l’accesso

alla memoria• Tempo di memoria: t = N/f deve essere > tACC

E se non è verificata?• Una soluzione è inserire cicli di wait

t = (N + Nw)/f > tACC

Quanto più la macchina è veloce, tanto più si paga.

Page 28: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Il caso Intel …..

Page 29: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

... Il caso Intel

• A partire dal 486 frequenza interna (f) ed esterna (fbus)sono diverse.

• I cicli di Wait sono improponibili (già dal 386)• La soluzione sono le CACHE

Page 30: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Gerarchia

• Località spaziale• Località temporale

• Non serve una memoria “piatta”. Meglio una gerarchia

Cache

M centr.

Page 31: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Gerarchia

Page 32: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Esempio di Gerarchia (Pentium II)

Page 33: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Organizzazione Memoria

• Elemento indirizzato– E’ convenzione assegnare gli indirizzi ai byte

• Grado di parallelismo– Numero di bit del bus dati

• Selezione degli integrati componenti

M

Indirizzi An-1 - A0

Dati: 8, 16, 32, 64 bit

Comandi

Page 34: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Organizzazione Memoria

• Memoria a 8 bit

Linee Ind: Alog(C)-1…..A0

Page 35: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

• Parole di 32 bit

Organizzazione Memoria

Page 36: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Ordinamento

• Intel: Little Endian• Motorola: Big Endian• PowerPC: a scelta

6 34 3 1 05

21 3 40 65

Page 37: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Allineamento in memoria

• Esempio: parole di 32 bit, formate da quattro banchi di 8 byte• La parola tratteggiata è non allineata; ha il byte meno

significativo in i+6 (Little Endian) il più significativo in i+9• Occorrerebbero due accessi alla memoria

Page 38: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Indirizzamento

• L’interpretazione del campo IND può essere differente da macchina a macchina

• Indirizzo effettivo (EA): Il valore che risulta dal calcolo dell’indirizzo attraverso i componenti espliciti contenuti nell’istruzione

LD RA, VAR

ST VET(R28), R12

MOV AX, VAR

MOV VET(IS), BX

Page 39: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Rilocazione Modello lineare

Costruito dal compilatore

Dopo la rilocazione

Deve contenere l’indicazione di

“rilocabile”

Page 40: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Rilocazione Modello segmentato

• Non c’è bisogno di modifiche

Page 41: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Modalità di indirizzamento (dati)

Indirizzamento direttoLD R1, var ; EA= IND R1:= M[EA]

Indirizzamento relativo ai registriST var(R3),R6 ; EA= IND + R3 M[EA]:= R6

Indirizzamento indiretto rispetto ai registriLD R1, (R2) ; EA= R2

Indirizzamento relativo ai registri indiciato e scalatoLD R1, var (R2) (Rx) ; EA= IND + R2 + RX*d

d è la dimensione dell’elemento

Page 42: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Modalità di indirizzamento (dati)

Indirizzamento indiretto rispetto ai registri con autoincr.LD R1, (R2)+ ; EA= R2; R2:= R2 + d

Indirizzamento immediatoLD R1, 2346 ; R1:= 2346

Indirizzamento tra registriLD R16,R8 ; R16:= R8

Indirizzamento porte di I/OIN R5,Porta ; R5:= porta (di ingresso)

Page 43: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Modalità di indirizzamento (controllo)

• Salto, salto condizionato, chiamata e ritorno da sottoprogrammi– Diretto– Relativo al PC o ad altro registro

• EsempiJMP DEST ; Diretto o relativo a PCJZ wait ; Di solito relativo a PCcall sub ; PUSH(PC); PC<=Indirizzo sub

BR R30 ; EA destinazione = R30BAL sub ; R30<-PC; PC<=Indirizzo sub; RET ; PC<=POP

Page 44: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Memoria Istruzioni

Page 45: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Istruzioni e architettura

a= b+c• Soluzione 1 (macchina a 3 indirizzi)

– ADD A, B, C

• Soluzione 2 (stile RISC)– LD R1,B– LD R2,C– ADD R3,R1,R2– ST A,R3

• Soluzione 3 (un indirizzo)– LD R1,B– ADD R1,C– ST A,R1

Page 46: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Istruzioni e architettura

a= b+c• Soluzione 4 (Stack - 0 indirizzi)

– PUSH B– PUSH C– ADD– POP A

Page 47: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Programma in memoria

Page 48: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Controllo del flusso

• JMP DEST

• JE Ra,Rb,DEST

• PSW: Z, S, O, CCMP R1,R2JZ DEST

Page 49: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Verso il repertorio

int s, i;int v[10];s= 0; i=0;while (i<10){s= s+v[i]; i= i+1;}

• Il precedente formato dell’istruzione LD non ci basta. Vogliamo scrivere

LD R3,V(R2)

Page 50: G. Bucci - Calcolatori Elettronici · G. Bucci - Calcolatori Elettronici Memoria e altro • Contenuto della lezione – Richiami –Evoluzione – Gerarchia – Organizzazione –

G. Bucci - Calcolatori Elettronici

Traduzione