Criteri di caratterizzazione di una memoria

Documenti analoghi
Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill

Capitolo 5 Le infrastrutture HardWare. La memoria centrale

La memoria centrale (RAM)

1.4b: Hardware. (Memoria Centrale)

Dal sistema operativo all' hardware

aumenta il tempo di accesso; aumenta la capacità di memorizzazione; ma diminuisce il costo per bit.

Il sistema di elaborazione. Archite3ura e componen6 principali

SISTEMI INFORMATIVI AZIENDALI

Com è fatto un computer (seconda puntata) Appunti per le classi 1 A cura del prof. Ing. Mario Catalano

Informatica. Lo schema di riferimento. Scheda madre 16/11/2007. Introduzione ai sistemi informatici 1

Il sistema di elaborazione

Elementi di informatica

Lezione 22 La Memoria Interna (1)

Introduzione alle gerarchie di memoria

Esame di INFORMATICA Lezione 4

Architettura dei calcolatori

La memoria-gerarchia. Laboratorio di Informatica - Lezione 3 - parte I La memoria - La rappresentazione delle informazioni

Dal sistema operativo all' hardware

Le Memorie. Si distinguono per: Supporti sui quali le informazioni vengono fisicamente memorizzate.

Architettura del Calcolatore

Architettura hardware

Pipeline. Esempio pipeline lineare a 5 stadi. Tempificazione S1 S2 S3 S4 S5. Istruzioni. Istruzione 4. Istruzione 3. Istruzione 2. tempo.

Von Neumann Bottleneck

La gerarchia di Memoria

Informatica. Le infrastrutture HardWare. Funzionalità di un calcolatore 21/03/2007. Introduzione ai sistemi informatici 1

Corso di Informatica

Corso di Calcolatori Elettronici I. Memorie. Prof. Roberto Canonico

Architettura dei calcolatori II parte Memorie

static dynamic random access memory

Il modello di Von Neumann

La struttura gerarchica delle memorie

MEMORIA CENTRALE MEMORIA CENTRALE INTERAZIONE CPU-MEMORIA CENTRALE

La Memoria Cache. Informatica B. Daniele Loiacono

è è possibile rispondere a queste domande in molti modi, ciascuno relativo a un diverso punto di vista

Architettura dei sistemi di elaborazione: La memoria (parte 1)

Memorie Corso di Calcolatori Elettronici A 2007/2008 Sito Web: Prof. G. Quarella

Architettura degli elaboratori - 2 -

Elementi di informatica

Informatica giuridica

LEZIONE 05 GERARCHIE DI MEMORIA Laboratorio di Informatica per l Educazione A. A. 2015/2016

RIASSUNTO La codifica delle informazioni

Memorie a semiconduttore

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

LA MEMORIA NEL CALCOLATORE

Miglioramento delle prestazioni

Architettura del calcolatore: gerarchia delle memorie, coprocessori, bus (cenni)

Il bus. Bus di sistema: insieme di collegamenti (solitamente in rame) che connette tutti i componenti di un architettura

Calcolatori Elettronici e Sistemi Operativi

Le Memorie. Prof. Maurizio Naldi A.A. 2015/16

Laboratorio di Informatica

Architettura hardware

Com è fatto un computer (terza puntata) Appunti per le classi 1 A cura del prof. Ing. Mario Catalano

La memoria cache. Lab di Calcolatori

continua Informatica Hardware Software insieme dei programmi che consentono al calcolatore di operare e di elaborare dati

Dal sistema operativo all' hardware

Architettura degli elaboratori - 2 -

La struttura gerarchica delle memorie

Blocchi di più parole

4 Architettura del Personal Computer

Il computer P R O F. L O R E N Z O P A R I S I

FONDAMENTI DIINFORMATICA

Struttura di un sistema di elaborazione. SDE: basi. Descrizione dei componenti (2) Descrizione delle componenti

Modulo: Elementi di Informatica

Lez. 5 I dispositivi di I/O. Prof. Pasquale De Michele Gruppo 2

Il Sottosistema di Memoria

Architettura dei calcolatori

La memoria secondaria

DIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria:

Corso di Informatica

Architettura dei computer

Lo scanner. Informatica di Base A e B -- Rossano Gaeta 82

La memoria principale

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

Elementi di informatica

Fondamenti di Informatica Architettura del Calcolatore Alessandra Volpato

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi

Livello logico digitale bus e memorie

Struttura dell elaboratore elettronico

Le infrastrutture Hardware: architettura

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

Elementi di Informatica cont d Chiara Epifanio

Architettura dei calcolatori

Algoritmo: procedimento non ambiguo che in un numero finito di passi risolve un problema (o una classe di problemi)

Gli attori principali di un architettura

Università degli Studi di Cassino e del Lazio Meridionale

Circuiti di Indirizzamento della Memoria

Informatica di Base - 6 c.f.u.

Informatica. Informazione L Informazione è un dato, o un insieme di dati, interpretati in un determinato contesto.

La memoria secondaria

Architettura dei computer

19/11/2013 HARDWARE INTRODUZIONE: COSA E COME COMPRIAMO?

Introduzione alle memorie cache. Cristina Silvano, 06/01/2013 versione 2 1

Università degli Studi di Cassino e del Lazio Meridionale

Architettura dei calcolatori. Architettura dei calcolatori. Cos'è un computer?

Architettura dei calcolatori

Il Sottosistema di Memoria

Informatica 10. appunti dalla lezione del 16/11/2010

Corso di Informatica modulo Informatica di Base 6 CFU. Architettura dei calcolatori

Sistemi di Elaborazione delle Informazioni 6 CFU. Architettura dei calcolatori

I dischi ottici. Istituzioni di Informatica -- Rossano Gaeta 43

Transcript:

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à anche dopo elevati periodi di tempo Diverse esigenze: Velocità: per il supporto alla CPU Non volatilità ed elevate dimesioni per l archivio Diverse tecnologie Elettronica: veloce ma costosa e volatile Magnetica e ottica non volatile ed economica, ma molto lenta Criteri di caratterizzazione di una memoria Velocità Tempo di accesso (quanto passa tra una richiesta e la relativa risposta) Velocità di trasferimento (quanti byte al secondo si possono trasferire) Volatilità Cosa succede quando la memoria non è alimentata? Per quanto tempo i dati vi rimangono memorizzati? Capacità Quanti Byte può contenere? Qual è la dimensione massima? Costo (per bit) Modalità di accesso Diretta (o casuale): il tempo di accesso è indipendente dalla posizione Sequenziale: il tempo di accesso dipende dalla posizione Mista: combinazione dei due casi precedenti 1

La memoria centrale (RAM) Mantiene al proprio interno i dati e le istruzioni dei programmi in esecuzione Memoria ad accesso casuale Tecnologia elettronica: Veloce ma volatile e costosa Due eccezioni R.O.M. elettronica ma permanente e di sola lettura Flash: elettronica ma permanente e riscrivibile Indirizzi di memoria I bit nelle memorie sono raggruppati in celle: Tutte le celle sono formate dallo stesso numero di bit; Una cella composta da K bit, è in grado di contenere una qualunque tra 2 k combinazioni diverse di bit; Ogni cella ha un indirizzo: Serve come accesso all informazione; In una memoria con N celle gli indirizzi vanno da a N-1; La cella è l unità indirizzabile più piccola. In quasi tutti i calcolatori è di 8 bit (un byte). I byte vengono raggruppati in parole (che oggi sono di 32/64 bit), su cui la CPU esegue le operazioni. 2

Organizzazione della memoria Anche gli indirizzi della memoria sono rappresentati come numeri binari. Un indirizzo di M bit consente di indirizzare 2 M celle; Per 6 o 8 celle bastano 3 bit, per 12 celle ne servono 4; Il numero di bit nell indirizzo determina il numero massimo di celle indirizzabili nella memoria ed è indipendente dal numero di bit per cella (una memoria con 2 12 celle richiede sempre 12 bit di indirizzo, quale che sia la dimensione di una cella). La memoria può essere organizzata in diversi modi; Con 96 bit possiamo avere 6 celle di 16 bit (6*16=96), o 8 celle di 12 bit (8*12=96) o 12 celle di 8 bit (12*8=96). 3

Memoria e collegamenti con bus linee di selezione parola 16 celle di memoria di 8 bit ciascuna Viene selezionata la parola di indirizzo 11 linea linea 1 linea 2 linea 3 linea 4 il contenuto è 1111; l operazione è di lettura (load) o di scrittura (store) a seconda dei comandi presenti sul bus di controllo 11 Bus indirizzi DECODIFICATORE linea 5 linea 6 linea 7 linea 8 linea 9 linea 1 linea 11 linea 12 linea 13 linea 14 linea 15 Bus di controllo 1 leggi/scrivi 1 1 1 1 1 1 1 1 parola selezionata Dato (letto o da scrivere) Bus dati Memoria vs. CPU Le CPU sono sempre state più veloci delle memorie l aumento di integrazione ha consentito di realizzare CPU pipeline e super scalari, molto efficienti e veloci; nelle memorie è aumentata la capacità più che la velocità. L accesso alla memoria passa attraverso il bus la frequenza di funzionamento del bus è molto più bassa di quella della CPU; il bus può essere impegnato ad effettuare trasferimenti controllati da dispositivi di I/O autonomi (e.g. DMA). È difficile riordinare le istruzioni in modo da poter sfruttare i tempi di attesa della memoria. È possibile fare memorie molto veloci se stanno nel chip della CPU, ma sono piccole e costose. 4

Le memorie gerarchiche Memorie di gran capacità, relativamente lente, economiche ed accessibili tramite il bus: MGL ovvero Memoria Grossa e Lenta; dimensioni pari a circa 1 unità; tempo di accesso (TA) di circa 1 unità. Memorie veloci, integrate nello stesso chip della CPU, ma costose: MPV ovvero Memoria Piccola e Veloce; dimensioni pari a circa 1 unità; tempo di accesso pari a circa 1 unità. Obiettivo: realizzare una memoria grossa e veloce dimensioni pari a circa quelle della memoria grossa; prestazioni pari a circa quelle della memoria veloce. Una gerarchia di memoria Memoria formata da una MPV e una MGL: la MPV contiene una copia di alcune celle della MGL; quando la CPU chiede una particolare cella di memoria la richiesta va ad entrambe le memorie: se il dato si trova nella MPV, viene passato direttamente alla CPU; se il dato si trova nella MGL, viene anche caricato nella MPV. Ipotesi: distribuzione uniforme delle richieste la frequenza con cui si trova il dato cercato nella MPV (hit ratio) sarà in media il 1% (1/1), in questi casi il tempo di accesso (hit time) sarà pari a 1 unità; la frequenza con cui è necessario accedere alla MGL (miss ratio) sarà in media il 9% (9/1), in questi casi il tempo di accesso (miss penalty) sarà pari a 1 unità; il tempo medio di accesso sarà.1*1+.9*1=9.1 unità! 5

Gerarchia di memoria Sistema di memoria Memoria piccola e veloce CPU Livello 1 Livello 2 Trasferimento di dati Memoria grande e lenta Il principio di località Località spaziale: quando si accede all indirizzo A, è molto probabile che gli accessi successivi richiedano celle vicine ad A. le istruzioni del codice vengono in genere lette da locazioni consecutive della memoria; gli accessi ad array o a strutture dati sono vicini. Località temporale: quando si accede all indirizzo A, è molto probabile negli accessi successivi si richieda di nuovo la cella A. cicli di istruzioni accedono ripetutamente alle stesse locazioni di memoria; istruzioni vicine tendono ad utilizzare le stesse variabili. 6

Come si sfrutta la località Diversi approcci a seconda del tipo di località: località temporale: i dati prelevati dalla MGL vengono conservati nella MPV il più a lungo possibile; località spaziale: quando si copia un dato dalla MGL alla MPV, si copiano anche i dati vicini (cache line o blocco). La frequenza di successo (hit ratio h) cresce fino a superare il 99%: in effetti h dipende da due caratteristiche contrastanti: - la dimensione dei blocchi un blocco grande sfrutta meglio la località spaziale; - quanti sono i blocchi in memoria se c è spazio per tanti blocchi un dato resta in memoria più a lungo e può sfruttare più a lungo la località temporale; c è anche il problema del costo della cache! L effetto della località Effetto del principio di località sull esempio di prima: tempo di accesso alla cache pari a 1 unità (TA C = 1); 1 tempo di accesso alla memoria (detto anche miss penalty, ovvero penalità di fallimento) pari a 1 unità (TA M = 1); frequenza di successo (hit ratio, h =.99); frequenza di fallimento (miss ratio, m = 1 h =.1); tempo di accesso medio pari a: TA = h * TA C + m * TA M TA =.99 * 1 +.1 * 1 = 1.9 7

Packaging Fino all inizio degli anni 9 la memoria veniva prodotta, acquistata e installata su chip singoli densità variabili da 1 Kbit a 1 Mbit; i PC avevano zoccoli vuoti dove inserire altri chip. Oggi si monta un gruppo di chip, tipicamente 8 o 16, su un piccola scheda stampata che si vende come unità minima installabile nei PC SIMM (Single Inline Memory Module) se la fila di connettori si trova da un solo lato della scheda; DIMM (Dual Inline Memory Module) se i connettori si trovano su ambedue i lati della scheda Sia SIMM che DIMM sono a volte dotate di un codice di rilevazione o di correzione dell errore. Una gerarchia di memoria Ottenuta per generalizzazione dell applicazione del principio di località e tipicamente costituita da 1. registri contenuti nella CPU (qualche KB) 2. cache (da circa 32KB a circa 124KB) 3. memoria principale (da circa 64MB a qualche GB) 4. dischi fissi (da qualche GB a qualche TB) 5. nastri magnetici e dischi ottici (da qualche GB a qualche TB per ogni supporto) Man mano che ci si sposta verso il basso nella gerarchia aumenta il valore dei parametri fondamentali: aumenta il tempo di accesso; aumenta la capacità di memorizzazione; ma diminuisce il costo per bit. 8

Una gerarchia di memoria tecnologia magnetica (HD esterni) Supporti esterni tecnologia ottica (CD, DVD) tecnologia elettronica (flash disk) Registri Cache I liv Cache II liv RAM CPU Disco fisso (hard disk) tecnologia magnetica Circuito Integrato (chip) Scheda madre (motherboard) Involucro esterno del calcolatore (case) Caratteristiche dei diversi livelli Livello Capacità Tempo di accesso Transfer rate (GB/s) Registri ~ 1 KB ~.2ns (1 ciclo di clock) Cache I livello ~ 32 KB ~.4ns (2/4 cicli di clock) Cache II livello ~ 1/2 MB ~1/2ns (5/1 cicli di clock) ~ 1 Cache III livello Memoria centrale Dischi interni ~ 2/8 MB ~ 2/8 GB > 3 GB ~5ns ~5ns(1ªparola richiesta) ~1ns(parole successive) ~1ms ~ 5 ~ 5/1.15/.6 Dischi esterni > 3 GB ~1ms ~.5 9