Introduzione alle memorie cache. Cristina Silvano, 06/01/2013 versione 2 1
|
|
- Alessandra Lupi
- 7 anni fa
- Visualizzazioni
Transcript
1 Introduzione alle memorie cache Corso ACSO prof. Cristina SILVANO Politecnico di Milano Cristina Silvano, 06/01/2013 versione 2 1
2 Obiettivo Sommario Livelli della gerarchia di memoria Memoria cache: concetti base Architettura di una memoria cache: Cache a indirizzamento diretto Cache completamente associativa Cache set-associativa a n vie Sostituzione di un blocco (o cache line) Cristina Silvano, 06/01/2013 2
3 Obiettivo Migliorare le prestazioni di un calcolatore attraverso il sistema di memoria in modo da: fornire agli utenti l illusione di poter usufruire di una memoria contemporaneamente grande e veloce fornire al processore i dati alla velocità con cui è in grado di elaborarli Cristina Silvano, 06/01/2013 3
4 Pr restazio oni Problema: divario delle prestazioni processore-memoria 1 Legge di Moore Tempo CPU µproc 60%/anno (2X/1.5anni) Divario delle prestazioni Processore-Memoria (cresce 50% / anno) DRAM DRAM 9%/anno (2X/10 anni) Cristina Silvano, 06/01/2013 4
5 Soluzione: gerarchia di memoria Livelli della gerarchia di memoria CPU Livello 1 Livello 2 Livello n Dimensioni della memoria ad ogni livello Incremento del tempo di accesso da parte della CPU Utilizzare diversi livelli di memoria, ciascuno di diversa velocità e dimensione, realizzati con tecnologie diverse in modo da ottenere un buon compromesso costo/prestazioni. Obiettivo: fornire all utente una quantità di memoria pari a quella disponibile nella tecnologia più economica, consentendo allo stesso tempo una velocità di accesso pari a quella garantita dalla tecnologia più veloce Cristina Silvano, 06/01/2013 5
6 Livelli della gerarchia di memoria Capacità Tempo di accesso Livello superiore + veloce + costoso Registri CPU < 1 KByte ns Cache (SRAM) < 8 MByte ns Registri Cache Memoria principale (DRAM) < 4 GByte ns Memoria principale Disco GByte Byte, 10 ms Disco + grande Livello inferiore Cristina Silvano, 06/01/2013 6
7 Soluzione: sfruttare la località dei riferimenti Località temporale: quando si fa riferimento a un elemento di memoria, c è la tendenza a far riferimento allo stesso elemento entro breve (ad esempio: riutilizzo di istruzioni e dati contenuti nei cicli). Località spaziale: quando si fa riferimento a un elemento di memoria, c è la tendenza a far riferimento entro breve tempo ad altri elementi che hanno indirizzo vicino a quello dell elementoelemento corrente (ad esempio: sequenzialità istruzioni e accesso a dati organizzati in vettori o matrici). Cristina Silvano, 06/01/2013 7
8 Concetti base Una gerarchia di memoria è composta da più livelli, ma i dati vengono di volta in volta copiati solo tra due livelli adiacenti. Consideriamo i due livelli: cache e memoria principale La cache (livello superiore) ) è più piccola, veloce e costosa rispetto alla memoria principale (livello inferiore). La minima quantità di informazione che può essere presente o assente nella cache è il blocco o cache line. Per sfruttare la località spaziale è necessario che la dimensione del blocco della cache sia un multiplo della dimensione della parola di memoria Es.: dimensione i blocco 128 bit = 4 parole da 32 bit Il numero di blocchi presenti in cache è dato da: Num. blocchi in cache = Dim Cache / Dim. Blocco Es.: Una cache da 64 K Byte e blocco da 128 bit (16 Byte) contiene 4 K blocchi Cristina Silvano, 06/01/2013 8
9 Successo nell'accesso alla cache Se il dato richiesto dal processore compare in uno dei blocchi presenti nel livello superiore, si dice che la richiesta ha successo (hit). Processore Cache Memoria principale i Cristina Silvano, 06/01/2013 9
10 Fallimento nell'accesso alla cache Se il dato non si trova nel livello superiore, si dice che la richiesta fallisce (miss) per trovare il blocco che contiene i dati richiesti, bisogna accedere al livello inferiore della gerarchia. In caso di fallimento nell accesso ad un dato: stallo della CPU; richiesta del blocco contenente il dato cercato alla memoria; copia in cache; ripetizione dell accesso in cache. Processore Cache Memoria principale Cristina Silvano, 06/01/
11 Gerarchia di memoria: definizioni Hit (successo): dati presenti in un blocco del livello superiore. Hit Rate (frequenza dei successi): numero di accessi a memoria che trovano il dato nel livello superiore rispetto al numero totale di accessi a memoria Hit Rate = # successi # accessi a memoria Hit Time (tempo di successo): tempo per accedere al dato nel livello superiore della gerarchia, che comprende anche il tempo necessario per stabilire se il tentativo di accesso si risolve in un successo o in un fallimento. Cristina Silvano, 06/01/
12 Gerarchia di memoria : definizioni Miss (fallimento): i dati devono essere recuperati dal livello inferiore. Miss Rate (frequenza di fallimento) : numero di accessi a memoria che non trovano il dato nel livello ll superiore rispetto al numero totale di accessi a memoria Miss Rate = # fallimenti # accessi a memoria Hit Rate + Miss Rate = 1 Miss Penalty (penalizzazione a ione di fallimento): tempo necessario a sostituire un blocco nel livello superiore. Miss Time (tempo di fallimento) : Miss Time = Hit Time + Miss Penalty Notare che: Hit Time << Miss Penalty Cristina Silvano, 06/01/
13 Tempo medio di accesso alla memoria Tm = Hit Rate * Hit Time + Miss Rate * Miss Time Dove: Miss Time = Hit Time + Miss Penalty Hit Rate + Miss Rate = 1 Tm = Hit Time + Miss Rate * Miss Penalty Cristina Silvano, 06/01/
14 Struttura di una cache Ogni posizione (entry) della cache include: 1. Valid bit che indica se questa posizione contiene o meno dati validi. Quando il calcolatore viene acceso tutte le posizioni della cache sono segnalate come NON valide 2. Campo etichetta (tag) che contiene il valore che identifica univocamente l indirizzo di memoria corrispondente ai dati memorizzati 3. Campo dati che contiene una copia dei dati (blocco o cache line) V TAG DATI Cristina Silvano, 06/01/
15 Problema del piazzamento di un blocco Problema: dato un indirizzo di un blocco nella memoria principale, determinare la sua posizione nella cache. Occorre stabilire una corrispondenza tra l indirizzo in memoria del blocco e l indirizzo i nella cache. Questa corrispondenza dipende dall architettura della cache: Cache a indirizzamento diretto Cache completamente associativa Cache set-associativa a n vie Cristina Silvano, 06/01/
16 Cache a indirizzamento diretto (direct mapped) Numero di blocchi = Dim. Cache / Dim. Blocco Ogni locazione di memoria corrisponde a una e una sola locazione della cache: (Ind. Bl.) cache = (Ind. Blocco) mem modulo (Num. blocchi in cache) Una memoria cache ha la struttura di una normale memoria: il blocco al suo interno è direttamente accessibile tramite indirizzamento Cristina Silvano, 06/01/
17 Esempio: Cache Direct Mapped di 4 parole e memoria di 16 parole. La posizione 00 della cache può essere occupata da dati provenienti dagli indirizzi di memoria --00 INDIRIZZO TAG INDEX DATO S O L E M A R E C A S A IND V TAG DATO L U C E A B C D A B C D C O M O R O M A CASA A BARI S A R A A N N A S A L E COMO O P A R I P E P E M A N O B I R O D U C A S A R A Cristina Silvano, 06/01/
18 Cache a indirizzamento diretto di 4 parole e memoria di 16 parole Block Address: 0100 Cache Tag Cache Index 2 bit, example: 01 2 bit, ex: 00 Block Offset Byte Select 5 bit, ex: 00 Valid Bit Cache Tag Cache Data 0x01 Byte3 : Byte 1 Byte 0 0 Byte 3 : Byte 1 Byte
19 Indirizzamento nelle cache a indirizzamento diretto Etichetta Indice Sp. parola Sp. byte Indirizzo di memoria di N bit diviso in 4 campi: Campo spiazzamento (offset) del byte nella parola individua id il byte desiderato all interno della parola: B bit Se la parola non è indirizzabile al byte B = 0. Campo spiazzamento (offset) della parola nel blocco individua la parola desiderata all interno del blocco: K bit. Se il blocco contiene un sola parola K = 0. Campo indice (index) serve a identificare il blocco: M bit Campo etichetta (tag), da confrontare con il contenuto del campo etichetta della cache, viene utilizzata per controllare il blocco selezionato dall indice: N (M+K+B)bit + Cristina Silvano, 06/01/
20 Esempio: Indirizzo di memoria: N = 32 bit Cache a indirizzamento diretto da 64 K Byte e blocco da 128 bit (4 parole da 32 bit = 16 Byte) Numero di blocchi = Dim. Cache / Dim. Blocco = 64 K Byte / 16 Byte = 4 K blocchi Struttura dell indirizzo di memoria: Spiazzamento del byte: B=2bit Spiazzamento della parola: K = 2 bit Indice: M = 12 bit Etichetta : 16 bit Cristina Silvano, 06/01/
21 Cache a indirizzamento diretto da 64KByte e blocco da 128 bit Offset byte Indirizzo 2 Etichetta 16 Indice 12 2 Offset parola V 16 bit Etichetta 128 bit Dati 4 K blocchi = Multiplexer Successo 32 Dato Cristina Silvano, 06/01/
22 Cache completamente associativa a In una cache completamente associativa (fully associative) un blocco di memoria può essere messo in una qualsiasi posizione della memoria cache. Poiché il blocco può essere messo in un posto qualsiasi i della cache tutti i blocchi della cache debbono essere esaminati durante la ricerca. Nell indirizzo non esiste il campo indice Numero di blocchi = Dim. Cache / Dim. Blocco Cristina Silvano, 06/01/
23 Esempio: Cache Fully Associative di 4 parole e memoria di 16 parole. La posizione 00 della cache può essere occupata da dati provenienti da una qualunque posizione di memoria INDIRIZZO TAG DATO S O L E M A R E C A S A IND V TAG DATO L U C E A B C D A B C D P E P E R O M A PARI BARI M A R E A N N A S A L E COMO O P A R I P E P E M A N O B I R O D U C A S A R A Cristina Silvano, 06/01/
24 Cache compl. associativa di 4 parole e memoria di 16 parole Etichetta Indirizzo i 4 B0 B3 V Etichetta Dato V Etichetta Dato V Etichetta Dato = = = Multiplexer 4: 1 Successo Dato Cristina Silvano, 06/01/
25 Cache compl. associativa da 256 Byte e blocco da 128 bit Indirizzo Etichetta 28 V Etichetta B0 Dato V 2 2 Sp. Byte Sp. Parola Etichetta Dato V Etichetta B15 Dato = = = Multiplexer 16: 1 Successo Dato Cristina Silvano, 06/01/
26 Cache set-associativa a n vie Suddivisa in n vie parallele (Way) Numero di blocchi = Dim. Cache / Dim. Blocco Numero di blocchi in una via = Num. Blocchi/n Il blocco può essere messo in una qualsiasi delle n vie, ma sempre nello stesso indirizzo la ricerca nelle vie deve essere effettuata contemporaneamente, accedendo contemporaneamente allo stesso indirizzo i in ogni via. Gli n blocchi letti formano un set (insieme) i Numero di insiemi = Dim. Cache / (Dim. Blocco x n) Ogni via ha la struttura di una normale memoria indirizzabile in modo diretto, l associatività sta nel fatto che le vie possono essere usate alternativamente senza vincolo (ogni set è associativo al proprio interno). Ogni blocco della memoria corrisponde ad un unico posto in ogni via (è l indirizzo del suo set nella cache): (indir in ogni via) cache = (ind. blocco) mem modulo (num. blocchi in via) Cristina Silvano, 06/01/
27 Esempio: Cache Set Associative a 2-vie di 4 parole e memoria di 16 parole. Il set 0 della cache può essere occupato da dati provenienti dagli indirizzi di memoria Il blocco può essere messo in uno qualsiasi dei 2 elementi del set (insieme) 0 SET via V TAG DATO index A B C D S A L E CASA A A N N A INDIRIZZO TAG INDEX DATO S O L E M A R E C A S A L U C E A B C D R O M A BARI A N N A S A L E COMO O P A R I P E P E M A N O B I R O D U C A S A R A Cristina Silvano, 06/01/
28 Esempio: cache set-associativa a 2 vie INDEX via 0 via 1 Valido Etichetta Indice del set Dati cache Blocco 1 Dati cache Etichetta Valido Blocco 2 : : : : : : Etich. ind. =? Sel1 1 Mux 0 Sel0 =? Etich. ind. SET ATTUALMENTE LETTO Hit OR Blocco cache Entrambe le vie sono lette contemporaneamente, usando l index come indirizzo. La coincidenza id tra etichetta (generata dll dalla CPU) ed etichetta ih memorizzata in uno dei due blocchi del set garantisce lo hit. -28-
29 Indirizzamento nelle cache set associative a n vie Etichetta Indice Sp. parola Sp. byte Indirizzo di memoria di N bit diviso in 4 campi: Campo spiazzamento (offset) del byte nella parola individua il byte desiderato d all interno della parola: B bit Campo spiazzamento (offset) della parola nel blocco individua la parola desiderata all interno del blocco: K bit Campo indice (index) serve a identificare la posizione unica e fissa corrispondente a ogni insieme: M bit (indirizzamento diretto dentro le vie, in parallelo) Campo etichetta (tag): N (M + K + B) bit (individuazione del blocco associativamente dentro l insieme set- indirizzato) Cristina Silvano, 06/01/
30 Indirizzo di memoria: N = 32 bit Esempio: Cache set associativa a n = 4 vie da 4KByte e blocco da 32 bit (1 parola = 4 Byte) Numero di blocchi= Dim. Cache / Dim. Blocco = 4 K Byte / 4 Byte = 1 K blocchi Numero di insiemi: Dim. Cache / (Dim. Blocco x n)= 4 K Byte / (4 Byte x4)=2 2 8 insiemi Struttura dell indirizzo di memoria: Spiazzamento del byte: B=2bit Spiazzamento della parola: K = 0 bit Indice: M = 8 bit Etichetta : 22 bit Cristina Silvano, 06/01/
31 Cache set-associativa a 4 vie da 4 KB e blocco da 32 bit Etichetta 22 8 Indice Indirizzo i WAY3 WAY2 WAY1 WAY0 V Etichetta Dato V Etichetta Dato V Etichetta Dato V Etichetta Dato = = = = Ogni via (WAY) è strutturata come una normale memoria a indirizzamento diretto Multiplexer 4 : 1 Successo Dato Cristina Silvano, 06/01/
32 Sommario: Identificazione del blocco Indirizzamento diretto Completamente associativa A 2 VIE Set-associativa Num. blocco Num. Ins Dati Dati Dati Etichetta 1 2 Etichetta 1 2 Etichetta 1 2 Ricerca Ricerca Ricerca Indirizzamento diretto: Calcolo posizione, verifica etichetta e verifica bit valido Indirizzamento completamente associativo: Confronta etichetta in ogni blocco e verifica bit valido Indirizzamento set-associativo Identifica insieme, confronta etichette dell insieme e verifica bit valido Cristina Silvano, 06/01/
33 Incremento dell associatività Principale vantaggio: Riduzione del miss rate Principali svantaggi: Maggiore costo implementativo Incremento di hit time. La scelta tra cache a indirizzamento i diretto, completamente t associative e set associative dipende dal costo di implementazione dell associatività (sia in tempo sia in hardware addizionale) rispetto alla riduzione del miss rate. Cristina Silvano, 06/01/
34 Problema della sostituzione di un blocco In una cache a indirizzamento diretto c è cè un solo candidato alla sostituzione. Quando si verifica un fallimento in una cache completamente associativa, bisogna decidere quale blocco sostituire: ogni blocco è un potenziale candidato per la sostituzione. Se la cache è set-associativa, bisogna scegliere tra i blocchi compresi nell insieme insieme. Principali strategie utilizzate per la scelta del blocco da sostituire nelle cache associative: Casuale LRU (Least Recently Used) si sostituisce il blocco usato meno recentemente FIFO (First In First Out) Cristina Silvano, 06/01/
35 Problema della strategia di scrittura Possibili strategie per la gestione delle scritture: Write-through: l informazione viene scritta nel blocco della cache e nel blocco della memoria principale. Write-back: l informazione viene scritta solo nel blocco della cache. Il blocco modificato è scritto nella memoria principale solo quando viene sostituito a causa di un miss. Al termine della scrittura nella cache il blocco di cache diventa dirty (modified) d) e la memoria principale i conterrà un valore diverso da quello presente nella cache: la memoria principale e la cache non sono coerenti (consistenti). Cristina Silvano, 06/01/
36 Problema della strategia di scrittura Vantaggi write-back: I singoli blocchi possono essere scritti dal processore alla frequenza a cui la cache, e non la memoria principale, è in grado di accettarle. Scritture multiple all interno dello stesso blocco richiedono una sola scrittura nella memoria principale. p Vantaggi write-through: Più semplice da realizzare, anche se per essere efficace in un sistema it veloce, una cache write-through th h deve essere dotata t di un buffer di scrittura (write buffer) in modo da non dove attendere il livello inferiore di memoria. I fallimenti in lettura sono meno costosi, infatti non richiedono mai la scrittura nel livello inferiore. Cristina Silvano, 06/01/
37 Buffer di scrittura (Write buffer) Processore Cache Memoria Write Buffer Cristina Silvano, 06/01/
38 Hit e Miss in lettura e scrittura Hit in lettura Hit in scrittura: il dato è presente in cache Scrittura del dato sia in cache sia in memoria (write-through) Scrittura del dato solo nella cache (write-back): la copia in memoria avviene in un secondo momento quando il blocco viene sostituito Miss in lettura stallo della CPU, richiesta del blocco contenente t il dato cercato alla memoria, copia in cache (scrittura in cache), ripetizione dell operazione di lettura in cache Miss in scrittura: stallo della CPU, richiesta del blocco contenente il dato cercato alla memoria, copia in cache (scrittura in cache), ripetizione dell operazione di scrittura -38-
39 Progetto di una memoria cache Metodo di indirizzamento come scegliere il blocco della cache in cui copiare un blocco di memoria centrale (mapping o piazzamento del blocco) Metodo di identificazione come localizzare un blocco di memoria centrale all interno della cache Metodo di scrittura (write back o write through) come comportarsi quando si deve scrivere una parola contenuta in un blocco della memoria cache Metodo di sostituzione come si sostituiscono blocchi della cache per liberare spazio nel caso di miss -39-
40 Conclusioni Analizzati i vantaggi legati all introduzione di una gerarchia di memoria in un calcolatore. Analizzati i concetti base e le architetture delle memorie cache. Cristina Silvano, 06/01/
Introduzione 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
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
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 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.
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
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
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
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
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
DettagliLa Memoria Cache. Informatica B. Daniele Loiacono
La Memoria Cache Informatica B Il problema della memoria q Obiettivo: fornire agli utenti una memoria grande e veloce fornire al processore i dati alla velocità con cui è in grado di elaborarli q Problema:
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,
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 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
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
DettagliLe memorie Cache n-associative
Le memorie Cache n-associative Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento Patterson: 5.2, 5.3 1/30 Sommario
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ò
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
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
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/30
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
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
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
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 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
DettagliBlocchi di più parole
Blocchi di più parole Per trarre vantaggio dalla località spaziale non conviene avere blocchi di una sola parola ma blocchi di più parole che occupano nella memoria principale posizioni vicine. Esempio:
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
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
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
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 2008/2009 Memoria cache: Esercizi Massimiliano Giacomin 1 Esercizio: miss della cache e collocazione dei blocchi nella cache Sia data la seguente sequenza di indirizzi a
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
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
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
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
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à
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:
DettagliGerarchie di memoria Politiche di rimpiazzo dei blocchi
Politiche di rimpiazzo dei blocchi Quale blocco conviene sostituire in cache per effettuare uno swap? (Penalità di miss) Casuale, per occupazione omogenea dello spazio First-In-First-Out (FIFO), per sostituire
DettagliGerarchia di memoria Introduzione. Prof. William Fornaciari William Fornaciari
Politecnico di Milano Gerarchia di memoria Introduzione Prof. William Fornaciari Politecnico di Milano fornacia@elet.polimi.it www.elet.polimi.it/~fornacia Sommario Le esigenze di memoria Il principio
DettagliLa 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
DettagliLe gerarchie di memoria: memoria cache
Le gerarchie di memoria: memoria cache Fino ad ora, si sono considerate le tecniche che consentono di migliorare le prestazioni di un calcolatore modificando le caratteristiche e il modo di funzionamento
DettagliGerarchie di memoria Divide et impera. Gerarchie di memoria La congettura 90/10. Gerarchie di memoria Schema concettuale
Memorie Caratteristiche principali Tecnologie di memoria Locazione: processore, interna (principale), esterna (secondaria) Capacità: dimensione parola, numero di parole Unità di trasferimento: parola,
DettagliLezione n.14. La memoria cache
Lezione n. La memoria cache Sommario: Politiche di sostituzione Memoria cache Mapping degli indirizzi (modo in cui i dati sono memorizzati nella cache) Capacità e prestazioni Questa lezione conclude la
DettagliArchitetture degli elaboratori
Architetture degli elaboratori Memoria cache: Esercizi tratti da Massimiliano Giacomin 1 Esercizio: miss della cache e collocazione dei blocchi nella cache Sia data la seguente sequenza di indirizzi a
DettagliORGANIZZAZIONE DEI CALCOLATORI LE GERARCHIE DI MEMORIA
ORGANIZZAZIONE DEI CALCOLATORI LE GERARCHIE DI MEMORIA Mariagiovanna Sami 1 IL PROBLEMA DELLA MEMORIA Da sempre, il programmatore desidera una memoria veloce e grande (illimitata ) Il problema: le memorie
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
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
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
DettagliCorso di laurea in ingegneria informatica Esame di sistemi operativi 21 gennaio 2009 SOLUZIONI
Corso di laurea in ingegneria informatica Esame di sistemi operativi 21 gennaio 2009 SOLUZIONI 1. Si consideri il programma C seguente (gli #include necessari sono omessi): / programma principale / 1.
DettagliMemorie Caratteristiche principali
Memorie Caratteristiche principali Locazione: processore, interna (principale), esterna (secondaria) Capacità: dimensione parola, numero di parole Unità di trasferimento: parola, blocco Metodo di accesso:
DettagliStrutture di Memoria 1
Architettura degli Elaboratori e Laboratorio 17 Maggio 2013 Classificazione delle memorie Funzionalitá: Sola lettura ROM, Read Only Memory, generalmente usata per contenere le routine di configurazione
DettagliMatlab/Octave - Esercitazione 13
Facoltà di Ingegneria Industriale Dipartimento di Elettronica e Informazione MATLAB/Octave Laurea in Ingegneria - Esercitazione Energetica, 13 Meccanica e dei Trasporti Matlab/Octave - Esercitazione 13
DettagliPrestazioni & Co: CPU, Memoria, I/O
Prestazioni & Co: CPU, Memoria, I/O CPU - progettazione - prestazioni ideali Panoramica Memoria - gerarchie di memoria: cache, memoria principale, etc. - organizzazione, dimensionamento, indirizzamento,
DettagliSIMULAZIONE DELLA PROVA INTERMEDIA DEL CORSO DI CALCOLATORI ELETTRONICI
SIMULAZIONE DELLA PROVA INTERMEDIA DEL CORSO DI CALCOLATORI ELETTRONICI ESERCIZIO 1 (10 Punti) Si implementi una rete sequenziale la cui uscita valga Z=1 solo quando viene riconosciuta la sequenza in ingresso
DettagliArchitetture Avanzate dei Calcolatori. Valeria Cardellini. Divario delle prestazioni processore- memoria
La gerarchig erarchia di memorie e (1) Architetture Avanzate dei Calcolatori Valeria Cardellini Divario delle prestazioni processore- memoria 100.000 Soluzione: memorie cache più piccole e veloci tra processore
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
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
DettagliArchitettura del calcolatore: gerarchia delle memorie, coprocessori, bus (cenni)
Architettura del calcolatore: gerarchia delle memorie, coprocessori, bus (cenni) Percorso di Preparazione agli Studi di Ingegneria Università degli Studi di Brescia Docente: Massimiliano Giacomin Migliorare
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
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
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
DettagliArchitettura degli elaboratori Tema d esame del 20/01/2016
Architettura degli elaboratori - Luigi Lavazza A.A. 5/6 Università degli Studi dell Insubria Dipartimento di Informatica e Comunicazione Architettura degli elaboratori Tema d esame del //6 Luigi Lavazza
DettagliCapitolo 11 La memoria cache
Capitolo 11 La memoria cache Gerarchie di Memoria Dati sperimentali mostrano che i riferimenti alla memoria godono della proprietà di località spaziale e temporale. Località spaziale: tendenza a generare
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
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
DettagliEsercizi svolti sulle cache - Soluzioni
Esercizi svolti sulle cache - Soluzioni 1. Si progetti una cache di 16K a 8 vie per un sistema con indirizzamento al byte di 32bit, bus dati a 32 bit, bus indirizzi a 30bit, e word di 4 byte. In quale
DettagliLa gerarchia delle memorie. Sommario
La gerarchia delle memorie Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento Patterson: Sezioni 5.1, 5.2 1/37 http:\\homes.dsi.unimi.it\
DettagliGerarchie di Memoria
Gerarchie di Memoria Sistemi Operativi AA. 2008-09 09 Prof. O Mejri Sommario Le esigenze di memoria Il principio di località dei programmi La gerarchia di memoria Principio di funzionamento della memoria
DettagliSOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 27 Febbraio 2003
SOLUZIONI DELLA PROVA SCRIA DEL CORSO DI NUOVO E VECCHIO ORDINAMENO DIDAICO 27 Febbraio 2003 MOIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSE A CIASCUNO DEGLI ESERCIZI SVOLI ESERCIZIO 1 (10 punti) Dall analisi
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
DettagliPROVA SCRITTA DEL MODULO/CORSO DI. 24 novembre 2016
PROVA SCRITTA DEL MODULO/CORSO DI 24 novembre 206 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI NOME: COGNOME: MATRICOLA: ESERCIZIO (6 punti) Progettare un riconoscitore
DettagliCalcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti
Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti Compito Num. 1 COGNOME:...NOME:... 1) (20%) Si vuole realizzare una CPU
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
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
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:
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
DettagliRichiami sull architettura del processore MIPS a 32 bit
Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC
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
DettagliLa memoria. I sistemi di memoria di un elaboratore possono essere suddivisi in: Memoria interna al processore Memoria principale Memoria secondaria
La memoria I sistemi di memoria di un elaboratore possono essere suddivisi in: Memoria interna al processore Memoria principale Memoria secondaria La memoria interna Registri interni alla CPU Visibili
DettagliSommario. Indirizzamento della memoria cache. Indirizzamento della memoria cache. Esercitazione di Calcolatori Elettronici Prof. Gian Luca Marcialis
Esercitazione di Calcolatori Elettronici Prof. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Esercitazione 2 (Capitolo 3) Memoria Cache Memoria Disco Codice di Hamming Sommario Memoria
DettagliIL PROBLEMA DELLA MEMORIA
Principi di architetture dei calcolatori: la memoria cache Mariagiovanna Sami IL PROBLEMA DELLA MEMORIA Da sempre, il programmatore desidera una memoria veloce e grande (illimitata ) Il problema: le memorie
DettagliGerarchie di Memoria Andrea Gasparetto andrea.gasparetto@unive.it
Tutorato di architettura degli elaboratori Gerarchie di Memoria Andrea Gasparetto andrea.gasparetto@unive.it Esercizio 1 Considerare un sistema di memoria virtuale paginata, con dimensione dell indirizzo
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.
DettagliL'architettura del processore MIPS
L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento
DettagliMemoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliArchitettura dei sistemi di elaborazione: La memoria (parte 1)
Architettura dei sistemi di elaborazione: La memoria (parte 1) CPU e Memoria La tecnologia consente di realizzare CPU sempre più veloci. A partire dal 2006 sono stati messi sul mercato processori con frequenza
DettagliCaching Andrea Gasparetto
Tutorato di architettura degli elaboratori Caching Andrea Gasparetto andrea.gasparetto@unive.it Esercizio 1 Dati una cache con 4096 blocchi, e con dimensione dell INDEX di 10 b, determinare il grado di
DettagliRichiami sull architettura del processore MIPS a 32 bit
Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC
DettagliESERCIZIO 1 Si consideri la seguente funzione f (A, B, C, D) non completamente specificata definita attraverso il suo ON-SET e DC-SET:
Università degli Studi di Milano Corso Architettura degli elaboratori e delle reti Prof. Cristina Silvano A.A. 2004/2005 Esame scritto del 15 luglio 2005 Cognome: Matricola: Nome: Istruzioni Scrivere solo
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
DettagliSommario. Indirizzamento della memoria cache. Indirizzamento della memoria cache. Esercitazione di Calcolatori Elettronici Prof. Gian Luca Marcialis
Esercitazione di Calcolatori Elettronici Prof. Gian Luca Marcialis Corso di Laurea in Ingegneria Elettronica Esercitazione 2 (Capitolo 3) Memoria Cache Memoria Disco Codice di Hamming Sommario Memoria
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
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
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):
DettagliGestione della Memoria
Gestione della Memoria Informatica B Il modello della memoria 2 E un modello lineare La memoria è una sequenza di celle numerate da 0 fino a un valore massimo M Il numero che identifica ogni cella è detto
DettagliEsercitazione di Calcolatori Elettronici Ing. Battista Biggio. Corso di Laurea in Ingegneria Elettronica
Esercitazione di Calcolatori Elettronici Ing. Battista Biggio Corso di Laurea in Ingegneria Elettronica Esercitazione 2 (Capitolo 3) Memoria Cache Memoria Disco Codice di Hamming Sommario Memoria cache
DettagliUSO DELLA GERARCHIA. FONDAMENTI DI INFORMATICA Lezione n. 14 POLITICHE DI SOSTITUZIONE DIMENSIONE DEL BLOCCO THRASHING POLITICA DI ALLOCAZIONE
FONDAMENTI DI INFORMATICA Lezione n. 14 GESTIONE DELLA GERARCHIA CONCETTO DI MEMORIA VIRTUALE RAGIONI PER L'USO DELLA MEMORIA VIRTUALE MECCANISMO DI GENERAZIONE DEGLI INDIRIZZI FISICI SEGMENTI, PAGINE
DettagliLa Memoria Cache. Informatica B. Daniele Loiacono
La Memoria Cache Informatica B Il problema della memoria 2 Obiettivo: fornire agli utenti una memoria grande e veloce fornire al processore i dati alla velocità con cui è in grado di elaborarli Problema:
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
Dettagli