La Gerarchia delle Memorie
|
|
- Viviana Di Matteo
- 6 anni fa
- Visualizzazioni
Transcript
1 La Gerarchia delle Memorie Calcolatori Elettronici II Prof. Antonino Mazzeo Valentina Casola 1
2 Connessione memoria processore: schema tipo Processor MAR MDR k-bit address bus n-bit data bus Memory Up to 2 k addressable locations Dimensione massima determinata dai registri di indirizzamento Word length = n bits Control lines ( R / W, MFC, etc.) Linee del bus Prelevo un blocco lungo quanto una word 2
3 Parametri Caratteristici delle memorie (1) tempo di accesso ta il tempo impiegato per eseguire un ciclo completo di lettura/scrittura di un dato di assegnata granularità (da quando richiedo l operazione a quando viene completata); tempo di ciclo tc Tempo minimo che deve intercorrere tra due operazioni consecutive in memoria capacità di memoria s la dimensione in byte (o parole di assegnato parallelismo) della memoria 3
4 Parametri Caratteristici delle memorie (2) costo per byte c serve a definire il costo completo C=c*s della memoria banda di trasferimento b l'ampiezza di banda b caratterizza il volume di dati che una memoria è in grado di trasferire verso il generico processore che la utilizza quanto di trasferimento in multipli di byte (o parole macchina di assegnata lunghezza) p esprime la grana (parallelismo) impiegato nel trasferimento dei dati da e per il processore connesso alla memoria. 4
5 Le Gerarchie di memorie Un sistema di calcolo ideale dovrebbe essere dotato di una memoria caratterizzata da uno spazio di indirizzi grande a piacere tempi di accesso piccoli a piacere costo basso e indipendente dalla tecnologia impiegata. I dispositivi di memoria reali utilizzati nei sistemi di calcolo non godendo di tali proprietà sono caratterizzati da soluzioni legati a specifiche tecnologie ed associati costi classi di memorie caratterizzate principalmente dalla velocità di accesso e dalla capacità. 5
6 Memoria: Aumento di Prestazioni A causa del ruolo critico che la memoria assume quando si cerca un incremento nel throughput del sistema, essa viene detta: The Von Neumann Bottleneck Un modo per incrementare le prestazioni del sistema è quello di aumentare opportunamente la banda della memoria (bps accessibili). Tale incremento di banda è ottenibile in tre modi : 1. Aumentando la frequenza del clock di memoria; 2. Aumentando la larghezza della word e quindi accedendo a più bit per ciclo; 3. Replicando i moduli di memoria in accesso concorrente (simile alla precedente); Soluzione : Aumentare la frequenza => Memorie più costose e di dimensioni ridotte 6
7 Gerarchia di Memorie La memoria Cache rappresenta il livello della gerarchia tra la CPU e la Memoria principale Capacità CPU Cache Primaria Cache Secondaria Velocità Costo per bit Memoria Principale Memoria di massa 7
8 Principio di Località Una delle principali proprietà dei programmi è quella della : Locality of references (90/10 rule) I Programmi tendono a riusare i dati e le istruzioni che hanno usato di recente Una regola empirica largamente verificata asserisce che un programma in media trascorre il 90% del suo tempo di esecuzione in una porzione di codice che rappresenta circa il 10% dell'intero programma (la stessa regola vare per i riferimenti sui dati) Molte istruzioni, quindi, in aree ben localizzate di un programma vengono eseguite ripetutamente in un determinato periodo, e si accede al resto del programma relativamente di rado Basandosi sulle ultime istruzioni eseguite da un programma è possibile predire con ragionevole accuratezza quali istruzioni e quali dati del programma verranno utilizzati nel prossimo futuro 8
9 Principio di Località Località Temporale: Rappresenta la probabilità (alta) che un'istruzione eseguita di recente venga eseguita di nuovo entro breve tempo. Località Spaziale: Rappresenta la probabilità (alta) che istruzioni vicine ad un'istruzione eseguita di recente siano anch'esse eseguite nel prossimo futuro. La vicinanza è espressa in termini di indirizzi delle istruzioni 9
10 Principio di Località Località Temporale Località Spaziale Portare un elemento (istruzioni o dati) nella cache quando viene richiesto per la prima volta, in modo che rimanga a disposizione nel caso di una nuova richiesta. Invece di portare dalla memoria principale alla cache un elemento alla volta, è conveniente portare un insieme (block) di elementi che risiedono in indirizzi adiacenti 10
11 Struttura di una Cache Parametri Caratteristici Funzione di mapping Algoritmo di Sostituzione Gestione della Coerenza 11
12 Parametri Caratteristici Block Size Un Blocco è un insieme di indirizzi contigui di una qualche dimensione. Per la proprietà di località spaziale conviene portare in cache un insieme di elementi facenti riferimento ad indirizzi contigui Hit Time La memoria cache può memorizzare solo un piccolo sottoinsieme di blocchi presenti in memoria principale L HIT time rappresenta il numero di cicli di clock necessari per caricare un elemento che si trova in cache (in genere coincidente con 1 ciclo di clock) 12
13 Miss Penalty Parametri Caratteristici Quando un elemento non viene trovato in cache si ha un miss La Miss Penalty rappresenta il numero di cicli di clock necessari per caricare l'elemento dalla memoria principale nella cache (o eventualmente direttamente nel processore) Access Time Tempo di accesso alla memoria principale ( o a una cache di livello superiore) Transfer Time Tempo di trasferimento del blocco in cui è presente l'elemento referenziato dalla memoria principale alla memoria cache. 13
14 Parametri Caratteristici Miss Rate Percentuale di miss (relativo all'architettura del sistema, alla funzione di mapping, agli algoritmi di gestione della coerenza, all'applicazione in esecuzione... ) Cache size Qualche Mbyte Average Access Time = thit(hit_rate) + (1-hit_rate) tmiss t(miss) in genere è circa 10 volte t(hit) 14
15 Funzione di Mapping Rappresenta un altro parametro identificativo della cache; Specifica la corrispondenza tra i blocchi della memoria principale e quelli della cache. Vengono distinte in questo modo tre categorie di cache: Direct Mapped Fully Associative Set Associative 15
16 Per gli esempi successivi Per gli esempi si farà riferimento ad una memoria principale di 64K word, organizzata in 4k blocchi di 16 word, ognuna (16 bit ) ed una cache di 128 blocchi di 16 word ciascuno (2Kword = 11 bit) 16
17 Direct Mapped Cache Ogni blocco può essere inserito in un solo posto nella cache. La funzione di mapping è di solito una funzione modulo; Funzione di Mapping: Blocco J j 128 Address in memoria principale Label Block Word 5 bit 7 bit Il campo Block identifica il blocco all'interno della cache Il campo word indirizza la word nel blocco La presenza o meno del blocco in cache viene verificata comparando il campo Label nell'address con il campo Label nella cache 4 bit 17
18 memory Block 0 Block 1 tag tag Cache Block 0 Block 1 Block 127 Block 128 Block 129 tag Block 127 Block 255 Block 256 Block 257 Tag Block Word Main memory address Block
19 Fully Associative Cache Ogni blocco può essere inserito ovunque nella cache Address in memoria principale Label Word 12 bit 4 bit La presenza o meno del blocco in cache viene verificata comparando il campo Label nell'address con il campo Label nella cache Il campo word indirizza la word nel blocco (Block Offset) 19
20 Main memory Block 0 Block 1 tag tag Cache Block 0 Block 1 Block i tag Block 127 Block 4095 Tag Word 12 4 Main memory address 20
21 Fully Associative Cache (2) Un blocco nuovo può essere messo ovunque; Devo togliere un blocco dalla cache solo se è piena; inoltre devo prevedere un algoritmo di sostituzione per decidere quale blocco eliminare; La ricerca di un blocco in cache è molto più costosa e lenta (ricerca associativa in parallelo); 21
22 Set Associative Cache Un blocco può essere posizionato in un ristretto insieme (set) di blocchi nella cache. Address in memoria principale Label Block Word 6 bit 6 bit 4 bit Un blocco viene prima mappato in un set e può essere inserito ovunque nel set La funzione di mapping del set in genere è una funzione in modulo Se ci sono n blocchi in ogni set la cache viene detta : n-way set associative 22
23 Main memory Block 0 Block 1 Cache Set 0 Set 1 tag tag tag tag Block 0 Block 1 Block 2 Block 3 Block 63 Block 64 Block 65 Set 63 tag tag Block 126 Block 127 Block 127 Block 128 Block 129 Block 4095 Tag Set Word Main memory address 23
24 Ricerca di un Blocco in una Cache La cache include un campo Label (Tag) per ogni blocco per ricavare l'indirizzo del blockframe Ai fini della ricerca di un blocco in una cache tutte le label che possono contenere informazioni su di esso vengono confrontate (comparate) in parallelo. (Anche il dato viene letto parallelamente al confronto in modo da averlo immediatamente pronto se si ha un hit) Fully associative Direct Mapped Set Associative Data Tag Ricerca 24
25 Considerazioni Bisogna tenere in conto lo spazio (<=> costo) occupato dalle Label (una per ogni blocco) (direct mapped -> set associative -> full associative) Spesso c'è bisogno di etichettare i blocchi in cache che sono stati modificati Viene utilizzato in genere anche un bit per la modifica (dirty bit) per indicare se il blocco in cache è stato modificato in un ciclo di scrittura; Serve solo nei sistemi che non fanno uso del metodo write throught 25
26 Considerazioni (2) Una cache potrebbe contenere informazioni non piu' valide C'è bisogno di un meccanismo per invalidare i blocchi nella cache: il modo più comune per farlo è quello di aggiungere un bit alla label (valid bit) Il bit viene posto a 0 all'accensione e ogni volta che nella memoria principale vengono caricati programmi e dati nuovi da disco (DMA). I dati non passano per la cache per motivi sia di costo che di prestazioni Viene posto a 1 la prima volta che il blocco viene caricato dalla memoria principale Ogni volta che un blocco in memoria principale viene aggiornato con codice e dati che non sono passati per la cache, viene effettuato un controllo per determinare se l'elemento è presente nella cache. Se lo è il suo bit di validità viene azzerato garantendo che non ci siano dati obsoleti in cache 26
27 Considerazioni (3) Quando deve essere inserito un blocco in un set già pieno : Una cache direct mapped possiede un solo blocco disponibile per ogni blocco in memoria principale: Un nuovo blocco che deve essere copiato nella cache in blocco già pieno provoca sempre una copia del vecchio blocco in memoria principale Una cache fully associative ha a disposizione tutta la cache per il caching dei blocchi: Un nuovo blocco che deve essere copiato nella cache fa uscire un altro già residente solo se l'intera cache è già piena Una cache set-associativa ha per ogni blocco in memoria principale uno spazio pari al suo grado di associatività: Un nuovo blocco che deve essere copiato nella cache fa uscire un altro già residente solo se il set ad esso associato è già pieno. 27
28 Algoritmi di Sostituzione Quando si ha un cache miss su un blocco: Se la cache ha blocchi disponibili per inserire un nuovo blocco, si procede al caricamento dalla memoria nel set relativo al blocco In una Direct Mapped Cache se il blocco è occupato, si procede alla sostituzione del blocco (se il dirty bit == 0, non si effettua la copia in memoria principale) Per le cache Set e Fully associative, si cerca nel set un blocco col dirty bit ancora a 0 (non modificato) e se viene trovato si procede alla sostituzione. Nel caso tutti i blocchi nel set siano stati modificati, si deve procedere alla ricerca del migliore blocco da sostituire. Gli approcci piu' utilizzati sono 2 : Random e Least recently Used (LRU) replacement 28
29 Algoritmi di Sostituzione Random LRU Viene usato per distribuire uniformemente l'allocazione dei blocchi. Il blocco candidato viene scelto in modo pseudocasuale. Utilizzare un algoritmo pseudocausale e quindi riproducibile risulta particolarmente indicato per facilitare le operazioni di debugging Riduce la probabilità di sostituire blocchi che verranno acceduti nel prossimo futuro. Il blocco sostituito è quello che non si usa da piu' tempo 29
30 LRU Il controllore ha bisogno di mantenere traccia degli accessi ai blocchi mentre l'elaborazione prosegue; Viene utilizzato un contatore a 2 bit per ogni blocco: CASO A - Quando c'e' un hit : Il contatore del blocco dell'hit viene azzerato, I contatori con valori inferiori a quello dell'hit vengono incrementati, Gli altri rimangono invariati, CASO B - Se c è un miss e c'è un blocco libero: Viene inserito il nuovo blocco con contatore=0 Tutti gli altri contatori vengono incrementati di 1 30
31 LRU CASO C - Se c è un miss e tutti i blocchi nel set sono occupati: Si sposta un blocco con il valore più alto di conteggio, Si inserisce il nuovo blocco con il contatore a 0, Tutti gli altri contatori vengono incrementati di 1, 31
32 LRU - CASO A Libero Occupato HIT HIT
33 LRU - CASO B Libero Occupato MISS HIT MISS
34 LRU - CASO C Libero Occupato HIT MISS MISS 34
35 Considerazioni Risultati sperimentali mostrano che l'algoritmo Random ha prestazioni pressocchè identiche all' LRU quando la cache supera i 64 Kbyte; L'Hardware per implementare l'algoritmo Random è molto più semplice di quello per LRU; Esistono altri algoritmi di sostituzione (come il FIFO) ma in genere hanno performance peggiori dell'algoritmo Random e sono più difficili da implementare... 35
36 Gestione della Coerenza Le operazioni di lettura sono predominanti sulle operazioni di scrittura (tutte le operazioni su istruzioni sono solo operazioni di lettura) Nel caso di una operazione di lettura, la lettura del dato puo' essere fatta parallelamente al confronto delle label. Se c'e' un Miss non ci sono problemi perchè la cache non è stata comunque sporcata Nel caso di una operazione di scrittura, non è possibile cominciare l'operazione finchè non si ha un'hit. Visto che l'operazione di accesso all'area dati della cache, non puo' avvenire in parallelo con il confronto delle label, in genere, un'operazione di scrittura impiega più tempo di una di lettura. 36
37 Operazioni di Write Ci sono due politiche di base per le operazioni di write : Write Through (o store through) L'informazione viene scritta in intrambi i blocchi (cache e memoria principale) Write Back (o copy back) L'informazione viene scritta solo nel blocco della cache. Questi viene scritto nella memoria principale solo quando il blocco deve essere scambiato. Fa uso del dirty bit. 37
38 Vantaggi e Svantaggi Sia Write back che write through hanno i loro pro e contro Write Through PRO: La memoria principale è sempre allineata con la cache (importante per sistemi multiprocessore); PRO: più facilmente implementabile; CONTRO: scritture alla velocità della memoria più lenta; CONTRO: 1 scrittura per ogni modifica del blocco=> occupa più banda (e quindi viene utilizzata per lo piu' tra cache L1 e cache L2); Write Back PRO: scritture alla velocità della memoria cache; PRO: scritture multiple sullo stesso blocco richiedono 1 sola scrittura nella memoria piu' lenta (meno occupazione di banda); CONTRO: memorie non allineate; 38
39 Vantaggi e Svantaggi (2) Write Through Quando una CPU attende il completamento di una scrittura si dice in write stall. Un'ottimizzazione comune per ridurre lo stallo è quello di utilizzare dei write buffers che permettono al processore di continuare l'esecuzione del programma mentre la memoria viene aggiornata 39
40 Write Miss Nel caso in cui si abbia un write miss si hanno due opzioni: Write Allocate : Il blocco viene caricato in memoria cache e si effettua l'operazione di write (che genererà un hit) sulla cache; In genere utilizzata assieme a Write-Back (le future modifiche si faranno sul blocco nella cache); No Write Allocate : Il blocco viene modificato direttamente nella memoria principale e non viene inserito nella cache; In genere utilizzata assieme a Write-Through (le scritture avvengono comunque anche nella memoria principale ed è inutile inserire il blocco nella cache); 40
41 Miglioramento delle Prestazioni Interleaving (indirizzi successivi sono memorizzati in moduli diversi; quando devo caricare un blocco posso caricarlo in un colpo solo da tutti i moduli) Riduzione Hit-Time Rendere le scritture più veloci Riduzione Miss-Penalty Rendere i write miss più veloci Rendere i read miss più veloci (Early restart Out of order fetch) 2 livelli di cache t_ave=h1*t_c1+(1-h1)*h2*t_c2+(1-h1)*(1-h2)m t_ci : tempo accesso cache Li ; M : tempo di accesso Memoria hi : hit rate cache i 41
42 Miglioramento delle Prestazioni Aumento velocità delle hits; Buffer di scrittura (in un operazione di write trough la CPU non ha la necessità di ASPETTARE che la scrittura sia completata si prevede un buffer di scrittura in cui la CPU ripone il blocco che deve essere scritto in memoria e poi prosegue la sua esecuzione senza attendere il completamento della operazione). Prefetch con istruzioni macchina specifiche (evita lo stallo della CPU dovuto ad un miss in lettura nell attesa di caricare un nuovo blocco in cache); Cache senza blocco (gestiscono 2 o più miss in contemporanea, da una parte si caricano i nuovi blocchi dall altro si serve la CPU per altre istruzioni senza bloccarla); 42
43 La Memoria Virtuale 43
44 Data Data Processor Cache Main memory Disk storage MMU DMA transf er Virtual address Phy sical address Phy sical address Figure Virtual memory organization. Organizzazione delle Memoria Virtuale Nei moderni sistemi di elaborazione, il Sistema Operativo sposta i programmi ed i dati dalla memoria secondaria alla memoria principale; le tecniche di spostamento prendono il nome di MEMORIA VIRTUALE. Di conseguenza, il Processore genera degli indirizzi virtuali che verranno poi tradotti negli indirizzi fisici mediante opportuni strumenti hw e sw 44
45 Traduzione dell indirizzo Tutti i programmi ed i dati sono organizzati in unità di lunghezza predefinita: le pagine. Le pagine rappresentano l unità minima di informazioni che viene spostata dalla memoria secondaria alla memoria principale. Le pagine devono essere opportunamente dimensionate. 45
46 Virtual-memory address translation Virtual address from processor Page table base register Page table address Virtual page number Offset + PAGE TABLE Di grandi dimensioni; Risiede in memoria principale; I control bit servono per vailidare La pagina e verificare che non ci Siano state modifiche; Il base register è definito dal S.O Control bits Page frame in memory Page frame Offset Physical address in main memory 46
47 Use of an associative-mapped TLB Virtual address from processor Virtual page number Offset Virtual page number TLB Control bits Page frame in memory Table Lookaside buffer; Memoria associativa Allocata nel MMU Memory Management Unit No Miss Yes =? Hit Page frame Offset 47
48 Organizzazione della virtual memory Processore genera indirizzi virtuali L MMU traduce gli indirizzi virtuali in indirizzi fisici L indirizzo fisico viene usato per accedere alla cache In caso di page miss si accede alla memoria principale In caso di page fault si accede al disco 48
49 Algoritmi di sostituzione I problemi di sostituzione sono analoghi a quelli visti per le memorie Cache; Da notare che le pagine hanno dimensioni di Kb; E assolutamente da evitare la tecnica del Write through!! Il DMA si occupa del trasferimento di blocchi di dati dalla memoria al Disco senza l intervento del processore 49
50 Considerazioni Tecnologiche 50
51 Organizzazione di una RAM statica (16parole x 8bit) b 7 b 7 b 1 b 1 b 0 b 0 W 0 FF FF A 0 W 1 A 1 A 2 A 3 Address decoder W 15 Memory cells Sense / Write circuit Sense / Write circuit Sense / Write circuit R / W CS Data input/output lines: b 7 b 1 b 0 51
52 Organizzazione di una memoria di 1K 1 5-bit row address W 0 5-bit decoder W 1 W memory cell array Sense/ Write circuitry 10-bit address 32-to-1 output multiplexer and input demultiplexer R/ W CS 5-bit column address Data input/output 52
53 Bit cell per memorie statiche e dinamiche (memorie volatili) b b T 1 X Y T 2 Bit line Word line T C Word line Bit lines Cella di RAM statica (SRAM) Cella di ram dinamica 53
54 Utilizzo del memory controller Address Row/Column address Processor R/ W Request Clock Memory controller RA S CA S R/ W CS Clock Memory Data 54
55 Classical DRAM Organization r o w d e c o d e r RAM Cell Array bit (data) lines Each intersection represent a 1-T DRAM Cell Square keeps the wires short: Power and speed advantages Less RC, faster precharge and discharge is faster access time! word (row) select row address Column Selector & I/O Circuits Column Address data Row and Column Address together select 1 bit a time 55
56 DRAM Logical Organization (4 Mbit) 4 Mbit = 22 address bits 11 row address bits 11 col address bits A0 A10 11 R O W D E C O D E R Square root of bits per RAS/CAS 11 Row selects 1 row of 2048 bits from 2048 rows Col selects 1 bit out of 2048 bits in such a row Column Decoder Sense Amps & I/O Memory Array (2,048 x 2,048) Word Line Storage Cell 56 D Q
57 Raw Address Strobe Asynchronous DRAM: Organizzazione di una memoria dinamica da 2M 8 RA S Seleziono una riga e faccio il refresh Row address latch Row decoder 4096 ( 512 8) cell array A 20-9 A 8-0 Sense / Write circuits CS R/ W Coloumn Address Strobe CA S Column address latch Column decoder D 7 D 0 57
58 Utilizzo del memory controller Address Row/Column address Processor R/ W Request Clock Memory controller RA S CA S R/ W CS Clock Memory Data 58
59 Logic Diagram of a Typical DRAM RAS_L CAS_L WE_L OE_L A 256K x 8 9 DRAM 8 D Control Signals (RAS_L, CAS_L, WE_L, OE_L) are all active low Din and Dout are combined (D): WE_L is asserted (Low), OE_L is disasserted (High) D serves as the data input pin WE_L is disasserted (High), OE_L is asserted (Low) D is the data output pin Row and column addresses share the same pins (A) RAS_L goes low: Pins A are latched in as row address CAS_L goes low: Pins A are latched in as column address RAS/CAS edge-sensitive 59
60 Basic DRAM read & write Strobe address in two steps 60
61 DRAM READ Timing Every DRAM access begins at: Assertion of the RAS_L 2 ways to read: early or late v. CAS DRAM Read Cycle Time RAS_L A RAS_L CAS_L WE_L OE_L 256K x 8 9 DRAM 8 D CAS_L A Row Address Col Address Junk Row Address Col Address Junk WE_L OE_L D High Z Junk Data Out High Z Data Out Read Access Time Early Read Cycle: OE_L asserted before CAS_L Output Enable Delay Late Read Cycle: OE_L asserted after CAS_L 61
62 DRAM with Column buffer A0 A10 R O W D E C O D E R 11 Memory Array (2,048 x 2,048) Word Line Sense Amps Storage Cell Column Latches Pull column into fast buffer storage Access sequence of bits from there MUX 62
63 Optimized Access to Cols in Row Often want to access a sequence of bits Page mode After RAS / CAS, can access additional bits in the row by changing column address and strobing CAS Static Column mode Change column address (without repeated CAS) to get different bit Nibble mode Pulsing CAS gives next bit mod 4 Video ram Serial access 63
64 More recent DRAM enhancements EDO - extended data out (similar to fast-page mode) RAS cycle fetched rows of data from cell array blocks (long access time, around 100ns) Subsequent CAS cycles quickly access data from row buffers if within an address page (page is around 256 Bytes) SDRAM - synchronous DRAM clocked interface uses dual banks internally. Start access in one bank then next, then receive data from first then second. DDR - Double data rate SDRAM Uses both rising (positive edge) and falling (negative) edge of clock for data transfer. (typical 100MHz clock with 200 MHz transfer). RDRAM - Rambus DRAM Entire data blocks are access and transferred out on a high-speed bus-like interface (500 MB/s, 1.6 GB/s) Tricky system level design. More expensive memory chips. 64
65 Functional Block Diagram 8 Meg x 16 SDRAM 10/11/2007 EECS150 Fa07 - DRAM 65
66 Multiple banks of cell arrays are used to reduce access time: Each bank is 4K rows by 512 columns by 16 bits (for our part) Read and Write operations as split into RAS (row access) followed by CAS (column access) These operations are controlled by sending commands Commands are sent using the RAS, CAS, CS, & WE pins. Address pins are time multiplexed During RAS operation, address lines select the bank and row During CAS operation, address lines select the column. SDRAM Details ACTIVE command opens a row for operation transfers the contents of the entire to a row buffer Subsequent READ or WRITE commands modify the contents of the row buffer. For burst reads and writes during READ or WRITE the starting address of the block is supplied. Burst length is programmable as 1, 2, 4, 8 or a full page (entire row) with a burst terminate option. Special commands are used for initialization (burst options etc.) A burst operation takes 4 + n cycles (for n words) 66
67 READ burst (with auto precharge) 67
68 WRITE burst (with auto precharge) 68
69 Considerazioni sulla organizzazione ad array Locazioni di memoria consecutive si trovano sulla stessa linea; Se devo prelevare 2 o più byte consecutivi basta decodificare una sola volta l indirizzo di riga e poi caricare gli indirizzi di colonna nei cicli successivi; Conclusione: il trasferimento di byte consecutivi avviene a frequenza doppia rispetto al trasferimento di 2 byte ad indirizzi casuali (aspetto importante nella progettazione delle cache) 69
70 Burst read of length 4 R/ W RA S CA S Address Row Col Data D0 D1 D2 D3 70
71 RAM statiche Vs. RAM dinamiche Le RAM statiche sono molto veloci ma hanno costo e dimensioni elevate > vengono usate per la memoria cache (piccole e veloci) Le RAM dinamiche non sono molto veloci ed hanno bisogno di un circuito di refresh però occupano uno spazio molto limitato, sono adatte per memorie più grandi vengono usate per la memoria principale del calcolatore (più lenta ma molto grande). 71
72 Progetto di sottosistemi di memoria: Organization of a 2M 32 memory module using 16 modules 512K 8 static memory chips A 0 A 1 21-bit addresses 19-bit internal chip address A 19 A 20 2-bit decoder 512 K 8 memory chip D D D 15-8 D K 8 memory chip 19-bit address 8-bit data input/output Chip select 72
73 Riferimenti K. Hamacher, Computer Organization Cap 5: The memory system Hennessy & Patterson: Computer Architecture, a quantitative approach (3 rd Edition) Cap 5 73
La Gerarchia delle Memorie. Calcolatori Elettronici II
La Gerarchia delle Memorie Calcolatori Elettronici II 1 Connessione memoria processore: schema tipo Processor MAR MDR k-bit address bus n-bit data bus Memory Up to 2 k addressable locations Dimensione
DettagliLa memoria cache. Lab di Calcolatori
La memoria cache 1 Gap delle prestazioni DRAM - CPU 1000 CPU- DRAM Gap CPU Proc 60%/yr. (2X/1.5yr) 100 10 ProcessorMemory Performance Gap: (grows 50% / year) D R A M DRAM9%/yr.(2X/10 yrs) 1 1980 1981 1982
DettagliMiglioramento delle prestazioni
Miglioramento delle prestazioni Migliorare sia larghezza di banda sia latenza: uso di cache multiple Introdurre una cache separata per istruzioni e dati (split cache) Beneficio: Le operazioni di lettura/scrittura
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
di Cassino e del Lazio Meridionale Corso di Tecnologie per le Memorie Anno Accademico Francesco Tortorella Gerarchia di memoria: vista complessiva Gerarchia di memoria: tecnologie Accesso casuale (random):
DettagliLa gerarchia di Memoria
La gerarchia di Memoria Calcolatori Elettronici 1 Gap delle prestazioni DRAM - CPU 1000 CPU 100 10 DRAM 1 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998
DettagliIntroduzione alle gerarchie di memoria
Introduzione alle gerarchie di memoria 1 Un ripasso Circuito sequenziale Segnale di clock Circuito sincrono Temporizzazione sensibile ai fronti Latch tipo S-R Latch tipo D Flip-flop tipo D Register file
DettagliIl Sottosistema di Memoria
Il Sottosistema di Memoria Calcolatori Elettronici 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di Dimensione (di solito
DettagliIl Sottosistema di Memoria
Il Sottosistema di Memoria Classificazione delle memorie Funzionalità Memoria di sola lettura (ROM) Memoria di lettura/scrittura Tecnologia Memoria a semiconduttori Memoria magnetica Memoria ottica Modalità
DettagliIntroduzione alle memorie cache. Cristina Silvano, 06/01/2013 versione 2 1
Introduzione alle memorie cache Corso ACSO prof. Cristina SILVANO Politecnico di Milano Cristina Silvano, 06/01/2013 versione 2 1 Obiettivo Sommario Livelli della gerarchia di memoria Memoria cache: concetti
DettagliIl quadro di insieme. Tecnologie per la memoria e gerarchie di memoria. Un ripasso: latch D e flip-flop D. Un ripasso: clock
Il quadro di insieme I cinque componenti di un calcolatore Tecnologie per la memoria e gerarchie di memoria Processore Unità di controllo Memoria Dispositivi di input Architetture dei Calcolatori (lettere
DettagliUniversità degli Studi di Cassino
Corso di Cache Anno Accademico 24/25 Francesco Tortorella Cache livello della gerarchia di memoria Processore Controllo Datapath Registri On chip cache Cache di secondo livello (SRAM) Memoria principale
DettagliCache: 1 livello della gerarchia di memoria
Cache: 1 livello della gerarchia di memoria Processore Controllo Datapath Registri On chip cache Cache di secondo livello (SRAM) Memoria principale (DRAM) Memoria secondaria (Disco) 4 decisioni da prendere
DettagliVon Neumann Bottleneck
Von Neumann Bottleneck Gerarchia di memoria Struttura della Gerarchia Al livello 1 poniamo la memoria più veloce (piccola e costosa) Al livello n poniamo la memoria più lenta (grande ed economica) Scopo
DettagliLa gerarchia di Memoria
La gerarchia di Memoria Metodologie di progettazione Hw-Sw- LS. Ing. Informatica Gap delle prestazioni DRAM - CPU 000 CPU 00 0 DRAM 980 98 982 983 984 985 986 987 988 989 990 99 992 993 994 995 996 997
DettagliLa memoria - tecnologie
Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/25 Struttura
DettagliMemorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella
Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Tipi di memorie Possono essere classificate in base a varie caratteristiche:
DettagliLa memoria - tecnologie
Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/24 Indirizzi
DettagliDIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria:
DIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria: 1 Memoria centrale: è costituita da una sequenza ordinata di registri; ciascun registro è individuato da un indirizzo;
DettagliLa memoria - tecnologie
Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 26 1/24 Indirizzi
DettagliStruttura delle cache a indirizzamento diretto
Struttura delle cache a indirizzamento diretto Ogni posizione della cache include: Valid bit che indica se questa posizione contiene o meno dati validi. 0: posizione di cache non ancora utilizzata 1: posizione
DettagliEsercitazione su Gerarchie di Memoria
Esercitazione su Gerarchie di Memoria Introduzione Memoria o gerarchie di memoria: cache, memoria principale, memoria di massa etc. (con possibilità di fallimenti nell accesso) o organizzazione, dimensionamento,
DettagliStruttura delle memorie cache
Architettura degli Elaboratori e delle Reti Lezione 28 Struttura delle memorie cache Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 28 1/24
DettagliGerarchia di memoria
Gerarchia di memoria Prof. Cristina Silvano Politecnico di Milano Dipartimento di Elettronica e Informazione Nota: Alcune figure incluse in queste lezioni sono tratte dai testi: D.A. Patterson and J.L.
DettagliIl Sottosistema di Memoria
Il Sottosistema di Memoria Maurizio Palesi Maurizio Palesi 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di Dimensione (di
DettagliCircuiti di Indirizzamento della Memoria
Circuiti di Indirizzamento della Memoria Maurizio Palesi Maurizio Palesi 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di
DettagliCriteri di caratterizzazione di una memoria
La memoria Supporto alla CPU: deve fornire alla CPU dati e istruzioni il più rapidamente possibile; Archivio: deve consentire di archiviare dati e programmi garantendone la conservazione e la reperibilità
DettagliLezione 22 La Memoria Interna (1)
Lezione 22 La Memoria Interna (1) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Organizzazione della lezione Dove siamo e dove stiamo andando La gerarchia
DettagliArchitettura degli elaboratori - 2 -
Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori e gerarchie di memoria Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it
DettagliGerarchia di memoria
Gerarchia di memoria 1 Gerarchia di memoria: Terminologia Hit: il dato appare in qualche blocco al livello superiore (Es.: Blocco X) Hit Rate: la frazione degli accessi di memoria trovati nel livello superiore
DettagliGerarchia di memoria
Gerarchia di memoria Politecnico di Milano - Facoltà di Ingegneria Corso di CALCOLATORI ELETTRONICI Prof. M. Sami Ing. C. Silvano Dipartimento di Elettronica e Informazione A. A. 1999/2000 Nota: Alcune
DettagliLa gerarchia di memorie (2)
La gerarchia di memorie (2) Architetture Avanzate dei Calcolatori Valeria Cardellini Migliorare le prestazioni delle cache Consideriamo la formula del tempo medio di accesso in memoria (AMAT) AMAT = hit
DettagliArchitettura degli elaboratori - 2 -
Università degli Studi dell Insubria Dipartimento di Scienze Teoriche e Applicate Architettura degli elaboratori e gerarchie di memoria Marco Tarini Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it
DettagliStruttura delle memorie cache
Architettura degli Elaboratori e delle Reti Lezione 28 Struttura delle memorie cache Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 28 1/30
DettagliEsercitazione su Gerarchie di Memoria
Esercitazione su Gerarchie di Memoria Introduzione Memoria o gerarchie di memoria: cache, memoria principale, memoria di massa etc. (con possibilità di fallimenti nell accesso) o organizzazione, dimensionamento,
DettagliLa memoria - tecnologie
Architettura degli Elaboratori e delle Reti Lezione 26 La memoria - tecnologie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 25 1/21 Sommario!
DettagliCapitolo 5 Le infrastrutture HardWare. La memoria centrale
Capitolo 5 Le infrastrutture HardWare La memoria centrale La memoria La memoria Supporto alla CPU: : deve fornire alla CPU dati e istruzioni il più rapidamente possibile Archivio: : deve consentire di
DettagliCorso di Calcolatori Elettronici I. Memorie. Prof. Roberto Canonico
Corso di Calcolatori Elettronici I Memorie Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle Tecnologie dell Informazione Corso di Laurea
DettagliClocking. Architetture dei Calcolatori (Lettere. di Memoria. Elemento. scritti. Tecnologie per la Memoria e Gerarchie di Memoria
Clocking Architetture dei Calcolatori (Lettere A-I) Tecnologie per la Memoria e Gerarchie di Memoria Ing.. Francesco Lo Presti Il segnale di Clock definisce quando i segnali possono essere letti e quando
DettagliGli attori principali di un architettura
Memoria Architettura degli Elaboratori e delle Reti, Turno I Alberto Borghese Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: borghese@dsi.unimi.it Gli attori principali
DettagliMemorie a semiconduttore
Memoria centrale a semiconduttore (Cap. 5 Stallings) Architettura degli elaboratori -1 Pagina 209 Memorie a semiconduttore RAM Accesso casuale Read/Write Volatile Memorizzazione temporanea Statica o dinamica
DettagliDIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria:
DIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria: Calcolatori Elettronici 2002/2003 - Diagr. temp. e Mem. dinamiche 1 Memoria centrale: è costituita da una sequenza
DettagliSOLUZIONI: Memoria virtuale
SOLUZIONI: Memoria virtuale INTRODUZIONE Memoria Virtuale: Si parla di memoria virtuale quando la memoria principale viene utilizzata come cache per la memoria di massa (dischi, nastri): - I programmi
Dettaglistatic dynamic random access memory
LA MEMORIA SRAM e D R A M static dynamic random access memory SRAM: unità che memorizza un gran numero di parole in un insieme di flip-flop, opportunamente connessi, mediante un sistema di indirizzamento
DettagliLa memoria: tecnologie di memorizzazione
Architettura degli Elaboratori e delle Reti La memoria: tecnologie di memorizzazione Proff. A. Borghese, F. Pedersini Dipartimento di Informatica Università degli Studi di Milano 1 Organizzazione della
DettagliLezione 16 Introduzione al sottosistema di memoria
Lezione 16 Introduzione al sottosistema di memoria http://www.dii.unisi.it/~giorgi/didattica/arcal1 All figures from Computer Organization and Design: The Hardware/Software Approach, Second Edition, by
DettagliTecnologie per la memoria e gerarchie di memoria
Tecnologie per la memoria e gerarchie di memoria Architetture dei alcolatori (lettere A-I) Il quadro di insieme I cinque componenti di un calcolatore Processore Unità di controllo Memoria ispositivi di
DettagliCalcolatori Elettronici
Calcolatori Elettronici La memoria gerarchica La cache: come migliorare le prestazioni Ricapitolando (1) La memoria principale e la cache sono scomposte in blocchi di uguale dimensione L indirizzo del
DettagliArchitettura dei Calcolatori Elettronici
Architettura dei Calcolatori Elettronici Prof. Orazio Mirabella L architettura del Calcolatore: esame delle sue caratteristiche Fondamentali Capacità di eseguire sequenze di istruzioni memorizzate Calcolatore
Dettagli06/05/2009. Caratteristiche desiderabili Ampia capacità Velocità Economicità
Sistema di Memoria Caratteristiche desiderabili Ampia capacità Velocità Economicità 1 Memoria Cache L'idea alla base della memoria cache nasce dalla semplice osservazione che la memoria centrale (dove
DettagliEsercizi sulle prestazioni delle memorie cache
Esercizi sulle prestazioni delle memorie cache Prof. Alberto Borghese Dott. Massimo Marchi Dipartimento discienzedell Informazione dell alberto.borghese@unimi.it Università degli Studi di Milano A.A. 2012
DettagliLa memoria: tecnologie di memorizzazione
Architettura degli Elaboratori e delle Reti La memoria: tecnologie di memorizzazione Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano 1 Organizzazione
DettagliGerarchia di Memorie
Gerarchia di Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Gerarchia di Memorie Obiettivo: creare l illusione di
DettagliLa struttura gerarchica delle memorie
Architettura degli Elaboratori e delle Reti Lezione 27 La struttura gerarchica delle memorie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliMEMORIE AD ACCESSO CASUALE
MEMORIE Le memorie sono circuiti in grado di contenere un elevato numero di informazioni binarie in maniera organizzata e fornirle in uscita mediante una operazione detta LETTURA della memoria. A seconda
DettagliLa struttura gerarchica delle memorie
Architettura degli Elaboratori e delle Reti Lezione 27 La struttura gerarchica delle memorie Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliLivello logico digitale bus e memorie
Livello logico digitale bus e memorie Principali tipi di memoria Memoria RAM Memorie ROM RAM (Random Access Memory) SRAM (Static RAM) Basata su FF (4 o 6 transistor MOS) Veloce, costosa, bassa densità
DettagliREGISTRI MEMORIA CACHE MEMORIA PRINCIPALE DISCO. Figura 1 Gerarchia di memoria.
Memoria Cache 1 Introduzione La velocità di un microprocessore è molto più alta di un qualsiasi sistema di memoria disponibile a costi ragionevoli. Ogni singolo accesso alla memoria principale di un microprocessore
DettagliGerachie di Memorie. Matteo Dominoni a.a. 2002/2003. Gerarchie di Memoria A.A. 2002/2003 1
Gerachie di Memorie Matteo Dominoni a.a. 2002/2003 Gerarchie di Memoria A.A. 2002/2003 1 Dove Studiare? Capitolo 7 Patterson-Hennessy Gerarchie di Memoria A.A. 2002/2003 2 Obbiettivo Creare l illusione
DettagliMemoria Virtuale e I/O
Memoria Virtuale e I/O Paolo Baldan Baldan@dsi.unive.it Introduzione CPU - progettazione - prestazioni ideali Le prestazioni reali sono influenzate (pesantemente) da memoria e I/O. Memoria - gerarchie
DettagliFallimenti nella TLB
Fallimenti nella TLB Un fallimento nella TLB può essere dovuto a due motivi: 1. la pagina fisica non è presente in memoria (page fault); 2. la traduzione non è nella TLB, anche se la pagina fisica è presente
DettagliLa tecnologia delle memorie
La tecnologia delle memorie Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/37 Sommario Gestione delle memorie cache. SRAM. DRAM.
DettagliArchitettura hardware
Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliEsercizi sulla memoria cache - Informatica 2 - L. Breveglieri 1
Esercizio 1 Sia data una memoria cache di tipo a indirizzamento diretto (direct-mapped), con blocchi di dimensioni pari a una sola parola per blocco, e contenente. La parola è lunga 16 bit, e la memoria
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
Università degli Studi di Cassino e del Lazio Meridionale di Calcolatori Elettronici Gerarchia di Anno Accademico 2012/2013 Alessandra Scotto di Freca Si ringrazia il prof.francesco Tortorella per il materiale
DettagliClocking. Architetture dei Calcolatori (Lettere. Elementi di Memoria. Periodo del Ciclo di Clock. scritti
Clocking Architetture dei Calcolatori (Lettere A-I) Tecnologie per la Memoria e Gerarchie di Memoria Prof. Francesco Lo Presti Il segnale di Clock definisce quando i segnali possono essere letti e quando
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 2008/2009 Gerarchia di memorie: memorie cache Massimiliano Giacomin 1 Tipologie e caratteristiche delle memorie (soprattutto dal punto di vista circuitale e fisico) Altezza:
DettagliISA Input / Output (I/O) Data register Controller
ISA Input / Output (I/O) Numerose Periferiche di tanti tipi diversi, collegati alla CPU mediante BUS diversi. Solo Input (tastiera, mouse), producono dati che la CPU deve leggere. Solo Output (Schermo),
Dettagli1.4b: Hardware. (Memoria Centrale)
1.4b: Hardware (Memoria Centrale) Bibliografia Curtin, Foley, Sen, Morin, Informatica di base, Mc Graw Hill Sciuto, Buonanno, Mari, Introduzione ai sistemi informatici, Mc Graw Hill Memoria Centrale Un
DettagliLezione 16 Introduzione al sottosistema di memoria
Lezione 16 Introduzione al sottosistema di memoria http://www.dii.unisi.it/~giorgi/didattica/arcal1 All figures from Computer Organization and Design: The Hardware/Software Approach, Second Edition, by
DettagliCache associativa. Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore:
Cache associativa Possibili alternative per il trasferimento di un blocco dalla memoria inferiore alla memoria superiore: 1. Indirizzamento diretto (già visto). Ogni blocco della memoria inferiore può
DettagliMari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill
Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill // Copyright 7 The McGraw-Hill Companies srl Copyright 7 The McGraw-Hill Companies srl Supporto alla CPU: deve fornire alla CPU
DettagliGerarchia di Memoria e Memorie Cache. ma rallenta R / nw. Qui : modi di aumentare velocità di R / nw. dati e codice non tutti uguali
Gerarchia di Memoria e Memorie Cache Memoria virtuale: comodità + sicurezza ma rallenta R / nw Qui : modi di aumentare velocità di R / nw Osservazione: dati e codice non tutti uguali alcuni si usano poco
DettagliLa memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni
La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso, misurata in base al tempo impiegato dal processore per accedere ad uno specificato indirizzo
DettagliGESTIONE DELLA MEMORIA CENTRALE
GESTIONE DELLA MEMORIA CENTRALE E MEMORIA VIRTUALE 7.1 Gestione della memoria Segmentazione Segmentazione con paginazione Memoria Virtuale Paginazione su richiesta Sostituzione delle pagine Trashing Esempi:
DettagliSOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004
SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (9 punti) Si
DettagliGerarchie di memoria. Gerarchie di memoria
Gerarchie di memoria Salvatore Orlando Arch. Elab. - S. Orlando 1 Gerarchie di memoria I programmatori, per memorizzare i loro programmi e dati, necessiterebbero di memorie molto veloci e capienti La tecnologia
DettagliGerarchie di memoria. Gerarchie di memoria
Gerarchie di memoria Salvatore Orlando Arch. Elab. - S. Orlando 1 Gerarchie di memoria I programmatori hanno l esigenza di avere memorie sempre più veloci e capienti, per poter memorizzare programmi e
DettagliIl modello di Von Neumann
Il modello di Von Neumann Appunti di STA per le classi seconde ind. informatiche Page 1 Il modello architetturale Per modello architetturale, si intende la descrizione delle parti del sistema e la loro
DettagliCorso di Fondamenti di Informatica Elementi di Architettura
di Cassino e del Lazio Meridionale Corso di Informatica Elementi di Architettura Anno Accademico 2016/2017 Francesco Tortorella Modello di von Neumann Bus di sistema CPU Memoria Centrale Interfaccia Periferica
DettagliGerarchia di memorie
Gerarchia di memorie Regole base dell'efficienza: - Rendere di massima velocità il caso comune - Piccolo significa (in generale) veloce Nei programmi vi è una significativa presenza di località spaziale
DettagliStruttura gerarchica delle memorie
Architettura degli Elaboratori e delle Reti Struttura gerarchica delle memorie A. Borghese, F. Pedersini Dipartimento di Informatica Università degli studi di Milano 1 Considerazioni introduttive Tipologie
DettagliMemoria Cache. G. Lettieri. 16 Marzo 2017
Memoria Cache G. Lettieri 16 Marzo 2017 1 Introduzione La memoria centrale è molto più lenta del processore. Possiamo rendercene conto scrivendo un programma che accede ripetutamente agli elementi di un
DettagliInput/Output (Cap. 7, Stallings)
Input/Output (Cap. 7, Stallings) Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi Tutti più lenti della CPU e della RAM Necessità di avere moduli
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
DettagliCom è fatto un computer (seconda puntata) Appunti per le classi 1 A cura del prof. Ing. Mario Catalano
Com è fatto un computer (seconda puntata) Appunti per le classi 1 A cura del prof. Ing. Mario Catalano A che serve una memoria? Ovviamente, nel computer, come nel cervello umano, serve a conservare le
DettagliLa CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2
La CPU e la Memoria Sistemi e Tecnologie Informatiche 1 Struttura del computer Sistemi e Tecnologie Informatiche 2 1 I registri La memoria contiene sia i dati che le istruzioni Il contenuto dei registri
DettagliLa memoria virtuale. La gerarchia di memorie. Indirizzo fisico. Memoria virtuale. Architetture Avanzate dei Calcolatori. Valeria Cardellini
La memoria Architetture Avanzate dei Calcolatori Valeria Cardellini Nelle lezioni precedenti { Memoria La gerarchia di memorie Registri Istruzioni, operandi L Cache Blocchi L2 Cache Blocchi Memoria Pagine
DettagliArchitettura dei calcolatori
Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura
DettagliCalcolatori Elettronici B a.a. 2007/2008
Calcolatori Elettronici B a.a. 27/28 MEMORIA VIRTUALE Massimiliano Giacomin Gerarchia di memorie CPU Cache Memoria CI OCCUPIAMO DI QUESTO 2 Richiami sulla gestione dell I/O Modalità di gestione e sincronizzazione
DettagliArchitettura Single Channel
LA RAM 1 Architettura Single Channel CPU ChipSet NothBridge RAM FSB 64 Bits Memory Bus 64 Bits Il Memory Bus ed il Front Side Bus possono (ma non necessariamente devono) avere la stessa velocità. 2 Architettura
DettagliArchitettura hardware
Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione
DettagliMEMORIA GERARCHIE DI MEMORIA
MEMORIA GERARCHIE DI MEMORIA La memoria è divisa in più livelli che sono dal più vicino al più distante al CPU, per tempi di accesso: memoria cache, SRAM, capienza (MB), più veloce (decimi di ns), costosa
DettagliMemoria Cache. La memoria cache
Testo di rif.to: [Congiu] 6.1 (pg. 193 199) Memoria Cache 06.a Memoria associativa Cache completamente associativa Cache a mappatura diretta Cache set-associativa a n-vien Cache nell Xscale PXA-255 La
DettagliCalcolatori Elettronici B a.a. 2004/2005
Calcolatori Elettronici B a.a. 2004/2005 GERARCHIA DI MEMORIE MEMORIA VIRTUALE Massimiliano Giacomin 1 Accedere alla memoria CPU MAR MDR Bus di indirizzo k Bus di dati n Linee di controllo m Memoria Principale
Dettagli8 bit per la parola nel blocco 10 bit per l insieme (gruppo) nella cache 12 bit di etichetta. Esercizio 3 Memoria Cache
Esercizio 3 Memoria Cache Prima parte - memoria di 1 Giga parole da 16 bit (indirizzata a livello di parola) - cache di 1 Mega parole da 16 bit (indirizzata a livello di parola) - ogni della cache contiene
DettagliArchitettura di un calcolatore: Introduzione parte 2
Corso di Calcolatori Elettronici I Architettura di un calcolatore: Introduzione parte 2 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle
DettagliIl processore Pentium
Caratteristiche principali (I) Architettura interna a 32 bit Address bus a 32 bit: si possono indirizzare fino a 4 GB di memoria fisica Data bus a 64 bit (si tratta in pratica di 2 data bus a 32 bit in
DettagliGESTIONE DELLA MEMORIA CENTRALE 6.1 D. - UNICAL
GESTIONE DELLA MEMORIA CENTRALE 6.1 Gestione della Memoria Background Spazio di indirizzi Swapping Allocazione Contigua Paginazione 6.2 Background Per essere eseguito un programma deve trovarsi (almeno
Dettagli