La gerarchia delle memorie. Sommario
|
|
|
- Berto Rizzi
- 9 anni fa
- Просмотров:
Транскрипт
1 La gerarchia delle memorie Prof. Alberto Borghese Dipartimento di Scienze dell Informazione Università degli Studi di Milano Riferimento Patterson: Sezioni 5.1, 5.2 1/37 borghese Sommario Caratteristiche di un sistema di memoria Scrittura di una memoria Principio di funzionamento di una memoria cache Cache a mappatura diretta Il campo tag di una cache 2/37 borghese 1
2 Gli attori principali di un architettura Memoria Register File UC PC IR ALU CPU C D A bus 3/37 borghese Caratteristiche della memoria Posizione della memoria: Processore Interna (cache) Esterna (cache + Memoria Principale) Disco Metodo di accesso: Sequenziale (e.g. Nastri). Diretto (posizionamento + attesa, e.g. Dischi). Random Access (circuito di lettura / scrittura HW,tempo indipendente dalla posizione e dalla storia, e.g. Cache e Memoria principale). Associativa (Random Access, il contenuto viene recuperato a partire da un sottoinsieme incompleto dello stesso). Caratteristiche fisiche: Nelle memorie volatili (E.g. Cache), l informazione sparisce quando si toglie l alimentatore (memorie a semiconduttore). Nelle memorie non-volatili, l informazione è duratura (un emepio di memoria volatile è la memoria magnetica dei dischi e dei nastri). Esistono memorie a semiconduttore non-volatili (ROM). 4/37 borghese 2
3 Capacità della memoria Indirizzo n-bit Parola 0 Parola 0 1 Parola 1 Altezza della memoria (numero di parole o numero di byte) i b n-1.. b 1 b 0 Parola i 2 k -1 Parola 2 k -1 Ampiezza della memoria (dimensione della parola) Capacità della memoria C = #_parole x dim_parola 5/37 borghese Misura della capacità di una memoria Ampiezza della memoria. Minimo numero di bit consecutivi che possono essere indirizzati. Altezza della memoria. Numero di elementi base della memoria. Parola di memoria. E l unità naturale in cui la memoria viene organizzata (e.g. 32 bit in MIPS). Unità indirizzabile. E il minimo numero di unità contigue indirizzabili. In quasi tutti i sistemi si tratta del byte. Spazio dell indirizzamento di i della memoria è: N = log 2 Capacità Unità di trasferimento: Blocco Parola 1 blocco 1 byte 1 parola 6/37 borghese 3
4 Sommario Caratteristiche di un sistema di memoria Struttura di una memoria Principio di funzionamento di una memoria cache Cache a mappatura diretta Il campo tag di una cache 7/37 borghese Prestazioni processore vs memoria 8/37 borghese 4
5 Principio di progettazione di una memoria Quanta memoria? Quanto deve essere veloce? Quanto deve costare? Maggiore è la velocità di accesso, maggiore il costo per bit. Maggiore è la capacità, minore il costo per bit. Maggiore è la capacità, maggiore è il tempo di accesso. Memorie piccole e veloci. Memorie grandi e lente. 9/37 borghese Principi di località I programmi riutilizzano dati e istruzioni che hanno usato di recente. Regola pratica: un programma spende circa il 90% del suo tempo di esecuzione per solo il 10% del suo codice. Basandosi sul passato recente del programma, è possibile predire con ragionevole accuratezza quali dati e istruzioni userà nel prossimo futuro. Località temporale: elementi ai quali si è fatto riferimento di recente saranno utilizzati ancora nel prossimo futuro. Località spaziale: elementi i cui indirizzi sono vicini, tendono ad essere referenziati in tempi molto ravvicinati. Si possono organizzare programmi e dati in modo da sfruttare al massimo il principio di località (e.g. scrittura di blocchi di dati nei dischi, salti locali.). 10/37 borghese 5
6 Gerarchia di memorie Livelli multipli di memorie con diverse dimensioni e velocità. Nel livello superiore troviamo un sottoinsieme dei dati del livello inferiore. Ciascun livello vede il livello inferiore e viceversa. Costo per bit & Velocità Capacità Pentium 11/37 borghese Livello Gerarchia di memorie - caratteristiche Dimensioni indicative Tempo di Accesso Velocità di Trasferimento (Mbyte/s) Registri < 1 Kbyte < 0,01 ns 400,000 (32 byte) Cache Primaria 8kbyte 0.16ns 192,000 (32/64 byte) (Pentium 4, 3Ghz) ExecTrace cache 12kbyte Cache Secondaria (Pentium 4, 3Ghz) Memoria centrale (RAM, DRAM) Bus PCI Bus PCI kbyte 0.3ns < 4 Gbyte < 3-5 ns (233Mhz / 320Mhz) 8 byte 64 byte 133 Mhz 100 Mhz 96,000 (32 byte in parallelo) 1,600 3,000 di picco (DDSRAM doppia lettura) 133 (8 byte) 1064 (64 byte) Dischi > 100 Gbyte < 10ms < 200 (Seagate Cheetah SCSI) Nastri > 1 Tbyte > 100ms 1 12/37 borghese 6
7 Principio di località in pratica Operazione di prodotto su 2 matrici 500x500, risultato sommato a x. Le matrici sono memorizzate in memoria principale per colonne. for (i=0; i<500; i++) for (k=0; k<500; k++) { for (j=0; j<500; j++) { for (j=0; j<500; j++) { for (k=0; k<500; k++) { for (i=0; i<500; i++) x[i][j]=x[i][j]+y[i][k]*z[k][j]; x[i][j]=x[i][j]+y[i][k]*z[k][j]; } } } } Devo continuare a caricare i nuovi valori di y[i][k] dalla memoria principale. Raddoppio la velocità di esecuzione. Percorro x e y per colonne, z[.], cambia ogni 500 valori, assieme a y e x, ho tempo di caricare i nuovi blocchi. 13/37 borghese Prestazione di una memoria Tempo di accesso. Per una memoria a random-access, è il tempo richiesto per eseguire un operazione di lettura / scrittura. Più precisamente è il tempo che intercorre dall istante in cui l indirizzo si presenta alla porta di lettura della memoria all istante in cui il dato diventa disponibile. Per una memoria non random-access, è il tempo richiesto per posizionare il dispositivo di lettura / scrittura in corrispondenza dell informazione da leggere / scrivere. Memory cycle time: si applica ad una memoria random-access. E il tempo di accesso più il tempo necessario perchè possa avvenire un secondo accesso a memoria. Transfer rate: quantità di informazione trasferita nell unità di tempo si misura in: Random-access memory = 1 / Memory_cycle_time (unità di misura Hertz) Not random-access memory = 1 / [T A + N / R] con R trasfer rate (tempo di 1 ciclo di memoria in cui si trasferiscono N byte). Numero_dati (in byte) / s. 14/37 borghese 7
8 Tassonomia del funzionamento HIT MISS Successo nel tentativo di accesso ad un dato: è presente al livello superiore della gerarchia. Fallimento del tentativo di accesso al livello superiore della gerarchia => il dato o l indirizzo devono essere cercati al livello inferiore. HIT_RATE MISS_RATE Percentuale dei tentativi di accesso ai livelli superiori della gerarchia che hanno avuto successo. HIT_RATE = Numero_successi / Numero_accessi_memoria Percentuale dei tentativi di accesso ai livelli superiori della gerarchia che sono falliti MISS_RATE = Numero_fall. / Numero_accessi_memoria HIT_RATE + MISS_RATE = 1 HIT TIME Tempo richiesto per verificare se il blocco è presente al livello attuale della memoria. MISS_PENALTY Tempo richiesto per sostituire il blocco di memoria mancante al livello superiore + tempo necessario per inviarlo al processore. 15/37 borghese Sommario Caratteristiche di un sistema di memoria Struttura di una memoria Principio di funzionamento di una memoria cache Cache a mappatura diretta Il campo tag di una cache 16/37 borghese 8
9 Principio di funzionamento di una cache Scopo: fornire alla CPU una velocità di trasferimento pari a quella della memoria più veloce con una capacità pari a quella della memoria più grande. Una cache disaccoppia i dati utilizzati dal processore da quelli memorizzati nella Memoria Principale. Word transfer: Data transfer or Instruction transfer. In MIPS = 1 parola. La cache contiene una copia di parte del contenuto della memoria principale. Di che cosa? 17/37 borghese Sottosistema di memoria Porta nella cache primaria i dati richiesti mentre il binomio processore-memoria sta lavorando. 1) Controlla se una parola è in cache (Hit). 2) Porta una parola (e quelle vicine) in cache, prelevandole dal livello inferiore (Miss): 18/37 borghese 9
10 Contenuto della cache Memory address (in #words) Altezza della memoria cache: # di linee Ampiezza della memoria cache: K_parole => K * 4 byte in MIPS. La cache può contenere solamente una parte della memoria principale. Ogni parola di cache contiene K parole della memoria principale (blocco di parole). Il campo Tag indica quale blocco di RAM è scritto nella corrispondente linea di cache. Le parole di cache sono indipendenti tra loro. 19/37 borghese Sommario Caratteristiche di un sistema di memoria Struttura di una memoria Principio di funzionamento di una memoria cache Cache a mappatura diretta Il campo tag di una cache 20/37 borghese 10
11 Corrispondenza diretta (direct mapped) Ad ogni indirizzo di Memoria Principale corrisponde un indirizzo di cache. Cache Memoria Principale Indirizzi diversi di Memoria Principale corrispondono allo stesso indirizzo di cache. Quali indirizzi della memoria principale si considerano? 21/37 borghese 3 unità di misura: Blocco di cache. Parola. Byte. Determinazione della legge di corrispondenza Le linee di una cache indicano blocchi costituiti da k parole. Ciascuna parola è costituita da mbyte(mips: 4 byte). Posso mettere in corrisponza un blocco di Memoria Principale di n = k * m byte con una linea di cache. Come ottengo l indirizzo di cache corrispondente ad un indirizzo di memoria principale? 22/37 borghese 11
12 Corrispondenza diretta lw $t0, 14($t1) Supponiamo di avere una cache con 4 linee di un byte. Sappiamo che il dato sulla linea 2 della cache abbia tag associato 3, quale sarà l indirizzo della memoria principale associato? Indirizzo = TAG * Capacità_Cache + offset_linea = 3 * = 14 23/37 borghese Come si ottiene l indirizzo di cache? (Metodo delle divisioni successive) lw $t0, 14($t1) - carico in cache tutto il blocco associato all indirizzo $t Identifico ilblocco dimemoria principale i a cui appartiene ilbyte da leggere / scrivere. Associo il blocco di Memoria principale ad una linea di cache mediante operazione di modulo. Posizione_byte_cache = indirizzo_memoria principale (in #byte) modulo #byte_cache. Utilizzo come range di conteggio in RAM, il blocco di cache. Note: L operazione di modulo se la dimensione del blocco è multiplo della base di conteggio si ottiene scartando alcune delle cifre meno significative. La divisione per un multiplo di 2 si ottiene come shift a sx, le cifre che escono rappresentano il resto. 24/37 borghese 12
13 Esempio La cache con linee di ampiezza pari a 4 parole (blocco = 4 parole) ed altezza di 8 linee: Il blocco di dati della memoria principale che può essere contenuto in ogni linea di cache, ha dimensioni: n = 4 parole * 4 byte = 16 byte. La capacità della cache sarà C = 8 linee * n = 8 * 16 = 128 byte. lw $t0, 72($zero) 72 è il 9 o byte della 5 a linea (72 / 16) = 4, 5 a linea della cache. Indirizzo_cache = Indirizzo_Memoria principale modulo blocco_cache Indirizzo_cache = 72 / 16 = 4 resto 8. {Il resto indica la posizione del primo byte della parola all interno della linea di cache (blocco) 9 o byte = 1 o byte della 3 a parola.} La word letta è costituita dal byte 72, e dai byte 73, 74, 75, contenuti nella 3 a parola della 5 a linea della cache. lw $t0, 204($zero) 204 / 128 byte = 1 (resto = 76) => mappiamo il 2 o blocco di RAM sulla cache. 204 è il 13 o byte della 13 a linea (204 / 16) = 12, 13 a linea (8 + 5). La memoria cache ha solo 8 linee. Indirizzo_cache = Indirizzo_memoria principale (relativo all inizio del blocco) modulo capacità_blocco 76 / 16 = 4 resto 12.{Il resto indica la posizione del primo byte della parola all interno della linea di cache 13 o byte.} Il dato viene letto (trasferito nella CPU) assieme ai byte 205, 206, 207) nella stessa linea 5 a della cache. Il dato viene recuperato (dalla RAM) assieme alle word di indirizzo 200, 196, 192) nella stessa linea 5 a della cache. 25/37 borghese Indirizzamento scartando i bit più significativi Indirizzo cache Indirizzo decimale RAM , , ,... Indirizzo binario RAM , 224, , 208, , , , , , 176, , 160, , 144, , 128, 256, 384, NB: La capacità della cache è di: 8 * 16 byte = 128 byte = x x /37 borghese 13
14 Indirizzamento scartando i bit più significativi (2 blocco di RAM) Indirizzo cache Indirizzo decimale RAM , , ,... Indirizzo binario RAM , 224, , 208, , , , , , 176, , 160, , 144, , 128, 256, 384, NB: La capacità della cache è di: 8 * 16 byte = 128 byte = x x /37 borghese Indirizzamento scartando i bit più significativi (3 blocco di RAM) Indirizzo cache Indirizzo decimale RAM , , ,... Indirizzo binario RAM , 224, , 208, , , , , , 176, , 160, , 144, , 128, 256, 384, NB: La capacità della cache è di: 8 * 16 byte = 128 byte = x x /37 borghese 14
15 Parsing dell indirizzo (00) (11) 128 indirizzi diversi di RAM (32 parole sequenziali di 4 byte) Questi 128 byte vengono messi in corrispondeza con i 128 byte di una cache che è organizzata come 8 x 16: 4 parole per linea. Gli ultimi 2 bit a destra indicano i byte interni alla parola. Non vengono considerati nei trasferimenti da / per la memoria. Viene considerata la Word. I 2 bit seguenti indicano la posizione della parola ricercata all interno della linea della cache. I 3 bit seguenti indicano la linea della cache nella / dalla quale si scrive / legge. I bit seguenti indicano il numero del blocco della memoria principale messo in corrispondenza con la cache. 29/37 borghese Metodo di parsing dell indirizzo (00) (11) Questo vale per: Cache di 8 linee. Linee di 4 parole. Parole di 4 byte. 128 indirizzi diversi di RAM (32 parole sequenziali di 4 byte) Prendiamo un indirizzo ed operiamo per divisioni successive nel caso più generale: Capacità della cache M / [ (#byte / parola) * (#parole / linea) * #linee] = Numero_blocco di RAM. Il resto, R 1, rappresenta l offset in byte all interno della cache a partire dal byte 0 di cache. R 1 / [ (#byte / parola) * (#parole / linea) ] = Numero di linea (di blocco) di cache. Il resto, R 2, rappresenta l offset in byte all interno della linea di cache. R 2 / [ (#byte / parola) ] = Numero di parola all interno della linea di cache. Il resto, R 3, rappresenta l offset in byte all interno della parola. 30/37 borghese 15
16 Esempio di parsing dell indirizzo (00) (11) 128 indirizzi diversi (32 parole di 4 byte) La cache con linee di 4 parole (ampiezza) ed altezza di 8 linee: Il blocco di dati contenuto in ogni linea di cache è di dimensioni: n = 4 * 4 byte = 16 byte. La capacità della cache è di 8 * 16 byte = 128 byte. lw $t0, 196($zero) 196 / [4 * 4 * 8] = 1 (2 o blocco di RAM) con resto R 1 = * 128 = 68. Il resto, R 1, rappresenta l offset in byte all interno della cache. 68/ [4 * 4] = 4 (5 a linea della cache) con resto R 2 = 68 4 * 16 = 4. Il resto, R 2, rappresenta l offset in byte all interno della linea di cache. 4/ 4 = 1 (2 a parola della cache) con resto R 3 = 4 1*4 = 0. Il resto, R 3, rappresenta l offset in byte all interno della parola. 31/37 borghese Esempio di parsing dell indirizzo (00) (11) 512 indirizzi diversi (128 parole, 4 byte) La cache con linee di 8 parole (ampiezza) ed altezza di 16 linee: Il blocco di dati contenuto in ogni linea di cache è di dimensioni: n = 8 * 4 byte = 32 byte. La capacità della cache è di 16 * 32 byte = 512 byte. lw $t0, 600($zero) 600 / [16 * 8 * 4] = 1 (2 o blocco di RAM) con resto R 1 = * 512 = 88. Il resto, R 1, rappresenta l offset in byte all interno della cache. 88 / [8 * 4] = 2 (3 a linea della cache) con resto R 2 = 88 2 * 32 = 24. Il resto, R 2, rappresenta l offset in byte all interno della linea di cache. 24/ 4 = 6 (7 a parola della linea di cache) con resto R 3 = 24 6*4 = 0. Il resto, R 3, rappresenta l offset in byte all interno della parola. 32/37 borghese 16
17 Sommario Caratteristiche di un sistema di memoria Struttura di una memoria Principio di funzionamento di una memoria cache Cache a mappatura diretta Il campo tag di una cache 33/37 borghese Come si può sapere se un dato è presente in cache? Aggiungiamo a ciascuna delle linee della cache un campo tag. Il tag contiene i bit che costituiscono i la parte più significativa ifi i dell indirizzo di i e rappresenta il numero di blocco di RAM in cui il dato di cache è contenuto. Esso è costituito da K bit: K = M sup (log 2 Capacità_cache (byte)) Nell esempio precedente: K = 32 sup(log 2 512) = 23 bit. Occorre inoltre l informazione data_valid / data_not_valid: bit di validità. 34/37 borghese 17
18 Struttura di un blocco di cache TAG Dati (n parole, m byte) Bit di validità Quanti blocchi di RAM avremo delle dimensioni della cache? Nel caso precedente, avremo linee di cache di lunghezza: 25 (lunghezza_campo_tag) (parole) * 4 (byte/parola) * 8(bit/byte) = 154bit. 35/37 borghese Come leggere / scrivere su cache Individuare la linea della cache dalla quale leggere / scrivere (operazione analoga all indirizzamento del register file). Confrontare il campo tag con il blocco RAM in cui risiede il dato. Controllare il bit di validità. Leggere (scrivere) il dato. Per blocchi più ampi di una parola, occorre individuare una parola tra le k presenti nella linea di cache. 36/37 borghese 18
19 Sommario Caratteristiche di un sistema di memoria Struttura di una memoria Principio di funzionamento di una memoria cache Cache a mappatura diretta Il campo tag di una cache 37/37 borghese 19
Esercizi sulle prestazioni delle memorie cache
Esercizi sulle prestazioni delle memorie cache Prof. Alberto Borghese Dott. Massimo Marchi Dipartimento discienzedell Informazione dell [email protected] Università degli Studi di Milano A.A. 2012
Criteri 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à
Lezione 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
Architettura 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
Von 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
Architettura dei computer
Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale (memoria centrale, RAM) la memoria secondaria i dispositivi di input/output La
Mari, 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
Esercizi 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
Struttura di un elaboratore
Struttura di un elaboratore Fondamenti di Informatica 1 Modello architetturale di un computer Ogni computer è costituito da un insieme di blocchi funzionali tra loro interconnessi da sistemi di comunicazioni,
Il 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à
G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi
G L O S S A R I O BIT: acronimo di Binary Digit. E l unità elementare di informazione. Può assumere solo il valore 0 o 1. CALCOLATORE: macchina che opera la trasformazione dei dati (informazioni) HARDWARE:
La 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!
Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini
Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
Cache 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ò
La 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
Esercizi 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
ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!
ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).! MACCHINA DI VON NEUMANN! UNITÀ FUNZIONALI fondamentali! Processore
Cache: 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
Architettura dei calcolatori
Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore
La memoria principale
La memoria principale DRAM (Dynamic RAM) il contenuto viene memorizzato per pochissimo tempo per cui deve essere aggiornato centinaia di volte al secondo (FPM, EDO, SDRAM, RDRAM) SRAM (Static RAM) veloce
La 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
Architettura 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
Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore
Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni
Struttura 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
Esercitazione 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,
La 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
Corso 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
Elementi di informatica
Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come
Sintesi Calcolatori Elettronici
Sintesi Calcolatori Elettronici Unità di misura Byte 1 2 KiloByte 1024 2 MegaByte 1048576 2 GigaByte 1073741824 2 TeraByte 1099511627776 2 1 Byte = 8 bit Complemento a 1 I numeri positivi vengono rappresentati
Circuiti 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
Esame di INFORMATICA Lezione 4
Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Il sottosistema di memorizzazione (memoria) contiene dati + istruzioni, inseriti inizialmente tramite
Architettura 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
Laboratorio di Architettura degli Elaboratori
Laboratorio di Architettura degli Elaboratori Dott. Massimo Tivoli Set di istruzioni del MIPS32: istruzioni aritmetiche e di trasferimento Istruzioni (Alcune) Categorie di istruzioni in MIPS Istruzioni
Architettura degli Elaboratori. Classe 3 Prof.ssa Anselmo. Appello del 18 Febbraio Attenzione:
Cognome.. Nome.... Architettura degli Elaboratori Classe 3 Prof.ssa Anselmo Appello del 18 Febbraio 2015 Attenzione: Inserire i propri dati nell apposito spazio sottostante e in testa a questa pagina.
Memoria Virtuale e I/O
Memoria Virtuale e I/O Paolo Baldan [email protected] Introduzione CPU - progettazione - prestazioni ideali Le prestazioni reali sono influenzate (pesantemente) da memoria e I/O. Memoria - gerarchie
Struttura di un sistema di elaborazione. SDE: basi. Descrizione dei componenti (2) Descrizione delle componenti
Struttura di un sistema di elaborazione Architettura di Von Neumann Componenti Hardware di un SDE Processo e Processore CPU Memoria Centrale SDE: basi Un SDE è formato da elementi di natura diversa (elettrica,
Il Processore: l unità di controllo
Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di
Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori
Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Cos è un Calcolatore? Un computer (calcolatore) è una macchina
LA MEMORIA NEL CALCOLATORE
Tipi di memorie (1) Rappresenta il supporto fisico, il dispositivo su cui sono immagazzinate le informazioni (dati e programmi) ROM (Read Only Memory) 1-2 MByte Cache 1 MByte di sola lettura contiene programmi
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock Prof. Andrea Sterbini [email protected] Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità
Architettura 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
Processore. 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
