Architettura dei calcolatori: La gerarchia di memoria Le periferiche di I/O

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Architettura dei calcolatori: La gerarchia di memoria Le periferiche di I/O"

Transcript

1 Architettura dei calcolatori: La gerarchia di memoria Le periferiche di I/O Architettura dei calcolatori Un calcolatore deve essere in grado di svolgere autonomamente i seguenti compiti: Memorizzare i dati sui quali operare Memorizzare sequenze di istruzioni Eseguire le istruzioni sui dati Controllare il flusso di esecuzione Comunicare con gli utenti e con altri dispositivi Sottosistema di elaborazione Sottosistema di memorizzazione Sottosistema di interfaccia Connessione Prof. C. Silvano Politecnico di Milano 2 Prof. Cristina Silvano Politecnico di Milano 1

2 Caratteristiche dell architettura Flessibilità: adatta a svolgere diverse tipologie di compiti Modularità: ogni componente ha una funzionalità specifica Scalabilità: ogni componente può essere sostituito con uno equivalente Standardizzazione: componenti facilmente sostituibili in caso di malfunzionamento Riduzione dei costi: grazie alla produzione su larga scala Prof. C. Silvano Politecnico di Milano 3 Architettura di riferimento dei calcolatori Prof. C. Silvano Politecnico di Milano 4 Prof. Cristina Silvano Politecnico di Milano 2

3 Architettura di riferimento dei calcolatori (Architettura di Von Neumann ) Elementi principali di un calcolatore: Unità centrale di elaborazione (Central Processing Unit - CPU) o processore Memoria centrale o principale (Main Memory - MM) Interfacce per i dispositivi di Input/Output - I/O: memoria di massa o memoria secondaria (di solito dischi magnetici) periferiche (tastiera, monitor, mouse, modem, stampanti, ecc.) Bus di sistema Bus dati, bus indirizzi, bus di controllo Prof. C. Silvano Politecnico di Milano 5 Esempio: scheda madre (mother board) Processore Interfaccia I/O Memoria Prof. C. Silvano Politecnico di Milano 6 Prof. Cristina Silvano Politecnico di Milano 3

4 Unità centrale di elaborazione (Central Processing Unit - CPU) Unità centrale di elaborazione (Central Processing Unit - CPU) La CPU (o processore) provvede ad eseguire le istruzioni che costituiscono i diversi programmi elaborati dal calcolatore. Le istruzioni, insieme ai dati cui fanno riferimento, si trovano nella memoria principale e vengono trasferite alla CPU passando attraverso il bus. La CPU deve quindi prelevare le istruzioni dalla memoria (fase di fetch) per eseguirle. Prof. C. Silvano Politecnico di Milano 8 Prof. Cristina Silvano Politecnico di Milano 4

5 Unità centrale di elaborazione (Central Processing Unit - CPU) La CPU non è in grado di elaborare direttamente i dati contenuti nella memoria principale, opera su dati che si trovano all interno di appositi elementi di memorizzazione (registri) contenuti all interno della CPU. Il tempo di accesso ai registri interni è circa 10 volte più veloce del tempo di accesso alla memoria principale. Prof. C. Silvano Politecnico di Milano 9 Unità centrale di elaborazione (Central Processing Unit - CPU) Per effettuare un operazione su dati contenuti in memoria, è necessario: Trasferire i dati dalla memoria ai registri del processore. Effettuare l operazione utilizzando i registri. Trasferire il risultato in memoria. Prof. C. Silvano Politecnico di Milano 10 Prof. Cristina Silvano Politecnico di Milano 5

6 Banco di Registri Banco di Registri (Register File) ad accesso rapido, per memorizzare temporaneamente gli operandi usati nelle istruzioni. Il banco di registri contiene n registri ad uso generale: R 0, R 1,, R n-1 General-Purpose Registers Prof. C. Silvano Politecnico di Milano 11 Registri e variabili Il numero dei registri ad uso generale (ad esempio 32 registri da 32 bit ciascuno) non è sufficientemente grande da consentire di memorizzare tutte le variabili di un programma. Ad ogni variabile viene assegnata una locazione di memoria nella quale trasferire il contenuto del registro quando questo deve essere utilizzato per contenere un altra variabile. Prof. C. Silvano Politecnico di Milano 12 Prof. Cristina Silvano Politecnico di Milano 6

7 Architetture LOAD/STORE Architetture LOAD/STORE: gli operandi dell ALU possono provenire soltanto dai registri ad uso generale contenuti nella CPU e non possono provenire dalla memoria. Sono necessarie apposite istruzioni di: caricamento (LOAD) dei dati da memoria ai registri; memorizzazione (STORE) dei dati dai registri alla memoria. Prof. C. Silvano Politecnico di Milano 13 La memoria Prof. C. Silvano Politecnico di Milano 14 Prof. Cristina Silvano Politecnico di Milano 7

8 La memoria Compito principale: contenere istruzioni e dati. Supporto alla CPU: deve fornire alla CPU dati e istruzioni dei programmi in esecuzione il più rapidamente possibile. Archivio: deve consentire di memorizzare dati e istruzioni garantendone la conservazione e la reperibilità anche dopo elevati periodi di tempo. Caratteristiche principali: dimensione complessiva e velocità di accesso. Prof. C. Silvano Politecnico di Milano 15 Diverse esigenze: La memoria velocità per il supporto alla CPU non volatilità ed elevate dimensioni per l archivio. Diverse tecnologie: elettronica: veloce, ma costosa e volatile magnetica e ottica: non volatile ed economica, ma molto lenta. Prof. C. Silvano Politecnico di Milano 16 Prof. Cristina Silvano Politecnico di Milano 8

9 Caratteristiche di una memoria Capacità Misurata in numero di byte (e multipli del byte) che possono essere memorizzati. Volatilità Indica la capacità di conservare i valori memorizzati in modo permanente o meno Velocità Tempo di accesso (quanto tempo passa tra una richiesta e la relativa risposta) Velocità di trasferimento (quanti byte al secondo si possono trasferire). Costo (per bit) Prof. C. Silvano Politecnico di Milano 17 Caratteristiche di una memoria 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. Prof. C. Silvano Politecnico di Milano 18 Prof. Cristina Silvano Politecnico di Milano 9

10 La memoria principale o centrale (Main Memory) Prof. C. Silvano Politecnico di Milano 19 Memoria Principale o Centrale (Main Memory) Memorizza al proprio interno i dati e le istruzioni dei programmi in esecuzione. Memoria ad accesso casuale (RAM Random Access Memory) Tecnologia elettronica: veloce ma volatile e costosa Due eccezioni : ROM (Read Only Memory): elettronica ma permanente e di sola lettura. Flash: elettronica ma permanente e riscrivibile. Prof. C. Silvano Politecnico di Milano 20 Prof. Cristina Silvano Politecnico di Milano 10

11 Memoria RAM e Memoria ROM La memoria RAM (Random Access Memory) permette sia la lettura che la scrittura volatile (i dati memorizzati vengono persi allo spegnimento del calcolatore) usata per memorizzare dati e programmi La memoria ROM (Read Only Memory) permette solo la lettura dei dati persistente (mantiene il suo contenuto anche quando non c è alimentazione) usata per memorizzare il software di sistema Prof. C. Silvano Politecnico di Milano 21 Memoria RAM Nelle RAM ogni locazione può essere raggiunta in un breve e prefissato intervallo di tempo misurato a partire dall istante in cui si specifica l indirizzo desiderato. Nelle RAM il tempo di accesso alla memoria (tempo necessario per accedere ad una parola di memoria) è fisso e indipendente dalla posizione della parola alla quale si vuole accedere. Prof. C. Silvano Politecnico di Milano 22 Prof. Cristina Silvano Politecnico di Milano 11

12 Memoria RAM: SRAM e DRAM Due principali tecnologie di memoria RAM: SRAM (Static Random Access Memory) maggiormente utilizzate per le memorie cache veloci maggiore area fisica costose DRAM (Dynamic Read Only Memory) maggiormente utilizzate per la memoria principale richiedono refresh continuo lente minore area fisica economiche Prof. C. Silvano Politecnico di Milano 23 Memoria principale - DRAM Fino all inizio degli anni 90 la memoria veniva prodotta, acquistata e installata su chip singoli densità variabili da 1 Kbit a 1 Mbit le schede avevano zoccoli vuoti dove inserire altri chip Oggi si monta un gruppo di chip, tipicamente 8 o 16, su una 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. Prof. C. Silvano Politecnico di Milano 24 Prof. Cristina Silvano Politecnico di Milano 12

13 Organizzazione della memoria I bit nella memoria principale sono raggruppati in celle. Ogni cella è caratterizzata da: un indirizzo, che è un numero che identifica la cella e ne consente l accesso un valore, che è la sequenza di bit memorizzata dalla cella Prof. C. Silvano Politecnico di Milano 25 Organizzazione della memoria Tutte le celle sono formate dallo stesso numero di bit (k bit). Una cella (composta da k bit) è in grado di contenere una qualunque tra 2 k combinazioni diverse di bit. In quasi tutti i calcolatori la cella è composta da k = 8 bit (un byte) Prof. C. Silvano Politecnico di Milano 26 Prof. Cristina Silvano Politecnico di Milano 13

14 Organizzazione della memoria La cella è la più piccola unità di memoria indirizzabile. Ogni cella ha un indirizzo: serve come accesso all informazione contenuta nella cella in una memoria con N celle gli indirizzi vanno da 0 a N-1. Prof. C. Silvano Politecnico di Milano 27 Organizzazione della memoria Le celle (i byte) sono raggruppati in parole (word) composte da n-bit che possono essere letti o scritti dalla CPU con una singola operazione di lettura/scrittura della memoria. Nei calcolatori più recenti la dimensione della parola (n o lunghezza di parola) va da 32 bit a 64 bit (da 4 a 8 Byte). Prof. C. Silvano Politecnico di Milano 28 Prof. Cristina Silvano Politecnico di Milano 14

15 Organizzazione della memoria In genere, la dimensione della parola di memoria coincide con la dimensione dei registri contenuti nella CPU, in modo da poter caricare una parola di memoria in un registro della CPU. Se anche il bus dati è largo come la parola di memoria, le operazioni di load/store avvengono con una singola operazione. Prof. C. Silvano Politecnico di Milano 29 Organizzazione della memoria Gli indirizzi della memoria sono rappresentati come numeri binari. Ogni indirizzo di memoria composto da M-bit consente di indirizzare 2 M celle di memoria Per esempio con 3 bit di indirizzo è possibile indirizzare fino a 8 celle di memoria. Il numero M di bit nell indirizzo determina il numero massimo di celle indirizzabili nella memoria (ed è indipendente dal numero di bit per cella) Prof. C. Silvano Politecnico di Milano 30 Prof. Cristina Silvano Politecnico di Milano 15

16 Organizzazione della memoria Se il MAR è costituito da M bit i 2 M indirizzi (corrispondenti a 2 M celle di memoria) costituiscono lo spazio di indirizzamento del calcolatore (da 0 a 2 M 1). Per esempio: Indirizzo composto da M = 4 bit genera uno spazio di indirizzamento di 2 4 = 16 celle di memoria. Indirizzo composto da M = 32 bit genera uno spazio di indirizzamento di 2 32 o 4G celle di memoria. Prof. C. Silvano Politecnico di Milano 31 Indirizzi nella memoria principale Indirizzo 0 1 i 2 M -1 k-bit b k-1.. b 1 b 0 Cella Cella 0 Cella 1 Cella i Cella2 M -1 Prof. C. Silvano Politecnico di Milano 32 Prof. Cristina Silvano Politecnico di Milano 16

17 Organizzazione della memoria: Esempio 1 Cella composta da k=8 bit (un byte) Ogni cella è in grado di contenere una qualunque tra 2 8 = 256 combinazioni diverse di bit. Parola di memoria composta da una cella (8 bit) Capacità di memoria = 8 parole = 8 x 8 bit = 64 bit (8 Byte) Indirizzo di memoria composto da M=3 bit consente di indirizzare 2 3 = 8 celle = 8 parole Prof. C. Silvano Politecnico di Milano 33 Organizzazione della memoria: Esempio 1 Indirizzo i bit b 7.. b 1 b 0 Cella = Parola Cella 0 Cella 1 Cella i Cella7 Prof. C. Silvano Politecnico di Milano 34 Prof. Cristina Silvano Politecnico di Milano 17

18 Diversa organizzazione della memoria: Esempio 2 Cella composta da k=8 bit (un byte) Parola di memoria composta da 2 celle (16 bit) 4 parole da 16 bit Capacità di memoria = 4 parole = 4 x 16 bit = 64 bit (8 Byte) Indirizzo di memoria composto da M=2 bit consente di indirizzare 2 2 = 4 parole Prof. C. Silvano Politecnico di Milano 35 Diversa organizzazione della memoria: Esempio Indirizzo bit 8-bit 1 Parola = 2 Celle Parola 0 Parola 1 Parola 2 Parola 3 Prof. C. Silvano Politecnico di Milano 36 Prof. Cristina Silvano Politecnico di Milano 18

19 Organizzazione della memoria: Esempio 3 Cella composta da k=8 bit (un byte) Parola di memoria composta da una cella (8 bit) Capacità di memoria = 16 parole = 16 x 8 bit = 128 bit (16 Byte) Indirizzo di memoria composto da M=4 bit consente di indirizzare 2 4 = 16 celle = 16 parole Prof. C. Silvano Politecnico di Milano 37 Organizzazione della memoria: Esempio 3 Indirizzo i bit b 7.. b 1 b 0 Cella = Parola Cella 0 Cella 1 Cella i Cella15 Prof. C. Silvano Politecnico di Milano 38 Prof. Cristina Silvano Politecnico di Milano 19

20 Struttura della memoria: Es. 3 Parola di 8 bit Bus Indirizzi Decodificatore Parola selezionata 16 celle di memoria leggi / scrivi Bus Controllo Bus Dati Dato (letto o da scrivere in memoria) Prof. C. Silvano Politecnico di Milano 39 Memoria Principale La memoria supporta: Operazione di lettura (load) Copia nel Registro Dati (MDR) il contenuto della cella di memoria indirizzata dal Registro Indirizzi (MAR) Operazione di scrittura (store) Copia il contenuto del Registro Dati (MDR) nella cella di memoria indirizzata dal Registro Indirizzi (MAR) Le operazioni avvengono sotto il controllo della CPU La CPU seleziona una particolare cella di memoria ponendo il suo indirizzo nel Registro Indirizzi (MAR) Prof. C. Silvano Politecnico di Milano 40 Prof. Cristina Silvano Politecnico di Milano 20

21 Memoria vs. CPU Le CPU sono sempre state più veloci delle memorie L aumento di integrazione ha consentito di realizzare CPU pipeline e superscalari, molto efficienti e veloci Nelle memorie è aumentata la capacità più che la velocità. Divario delle prestazioni della CPU rispetto alla memoria Prof. C. Silvano Politecnico di Milano Prestazioni 1000 Problema: divario delle prestazioni CPU-memoria Legge di Moore Tempo µproc 60%/anno (2X/1.5anni) Divario delle prestazioni CPU / Memoria (cresce 50% / anno) DRAM DRAM 9%/anno (2X/10 anni) Prof. C. Silvano Politecnico di Milano 42 CPU Prof. Cristina Silvano Politecnico di Milano 21

22 Memoria vs. CPU 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. Prof. C. Silvano Politecnico di Milano 43 Problema: la CPU accede alla memoria attraverso il bus Prof. C. Silvano Politecnico di Milano 44 Prof. Cristina Silvano Politecnico di Milano 22

23 Memoria cache Idea: integrare una memoria cache nel chip della CPU Memoria cache molto veloce (stessa frequenza della CPU) ma piccola e costosa. CPU Banco Registri Cache Prof. C. Silvano Politecnico di Milano 45 Gerarchia di memoria Gerarchia di memoria formata da memoria principale e memoria cache. Memoria centrale (tecnologia DRAM): memoria grande, relativamente lenta, poco costosa ed accessibile tramite il bus Capacità pari a circa 10 unità Tempo di accesso pari a circa 10 unità Memoria cache (tecnologia SRAM): memoria piccola e veloce (integrata nello stesso chip della CPU) ma costosa Capacità pari a circa 1 unità Tempo di accesso pari a circa 1 unità Prof. C. Silvano Politecnico di Milano 46 Prof. Cristina Silvano Politecnico di Milano 23

24 Memoria cache La cache contiene una copia di alcune celle della memoria principale contenenti istruzioni e dati usati più frequentemente. La minima quantità di informazione che può essere presente o assente nella cache è il blocco o cache line. Prof. C. Silvano Politecnico di Milano 47 Memoria cache Strategia di utilizzo: La prima volta che la CPU richiede dei dati alla memoria principale, tali dati vengono caricati anche nella cache. Le volte successive, quando la CPU richiede l accesso ad una cella di memoria, la richiesta va ad entrambe le memorie: Se il dato si trova nella cache, viene passato direttamente alla CPU. Se il dato si trova nella memoria principale, viene anche caricato nella cache e passato alla CPU. Prof. C. Silvano Politecnico di Milano 48 Prof. Cristina Silvano Politecnico di Milano 24

25 Successo nell'accesso alla cache Se il dato richiesto dalla CPU è presente nella cache, si dice che la richiesta ha successo (hit). Registri Cache Memoria Principale Prof. C. Silvano Politecnico di Milano 49 Fallimento nell'accesso alla cache Se il dato non si trova nella cache, si dice che la richiesta fallisce (miss) per trovare il blocco che contiene i dati richiesti, bisogna accedere alla memoria principale. Registri Cache Memoria Principale Prof. C. Silvano Politecnico di Milano 50 Prof. Cristina Silvano Politecnico di Milano 25

26 Fallimento nell'accesso alla cache In caso di fallimento (miss) nell accesso alla cache: stallo della CPU; richiesta del blocco contenente il dato cercato alla memoria principale; copia del dato in cache; ripetizione dell accesso in cache. Prof. C. Silvano Politecnico di Milano 51 Definizioni Hit (successo): il dato richiesto è presente in un blocco della cache (livello superiore della gerarchia). Hit Rate (frequenza di successo): numero di accessi che trovano il dato in cache sul numero totale di accessi a memoria. Hit rate = num. di hit / num. di accessi a memoria Hit Time (tempo di successo): tempo per accedere al dato in cache, che comprende anche il tempo necessario per stabilire se il tentativo di accesso si risolve in un successo o in un fallimento. Prof. C. Silvano Politecnico di Milano 52 Prof. Cristina Silvano Politecnico di Milano 26

27 Definizioni Miss (fallimento): il dato deve essere recuperato dal livello inferiore della gerarchia. Miss Rate (frequenza di fallimento): numero di accessi che non hanno trovato il dato in cache sul numero totale di accessi a memoria. Miss rate = num. di miss / num. di accessi a memoria Hit Rate + Miss Rate = 1 Prof. C. Silvano Politecnico di Milano 53 Il principio di località spaziale Località spaziale: quando si accede ad una cella di memoria di indirizzo A, è molto probabile che gli accessi successivi richiedano celle di memoria che hanno indirizzo vicino ad A. Per esempio: La sequenza di istruzioni di un programma sono memorizzate in locazioni consecutive della memoria. Gli accessi a dati organizzati in vettori sono memorizzate in locazioni consecutive della memoria. Prof. C. Silvano Politecnico di Milano 54 Prof. Cristina Silvano Politecnico di Milano 27

28 Il principio di località temporale Località temporale: quando si accede ad una cella di memoria di indirizzo A, è molto probabile che negli accessi successivi si richieda di nuovo la cella di indirizzo A. Per esempio: Nel riutilizzare istruzioni (e dati) contenuti nei cicli si accede ripetutamente alle stesse locazioni di memoria. Istruzioni vicine tendono a utilizzare le stesse variabili. Prof. C. Silvano Politecnico di Milano 55 Soluzione: sfruttare la località dei riferimenti Diversi approcci a seconda del tipo di località: Località temporale: i dati prelevati dalla memoria principale vengono conservati nella cache il più a lungo possibile. Località spaziale: quando si copia un dato dalla memoria principale alla cache, si copiano anche i dati vicini. E necessario che la dimensione del blocco della cache (cache line) sia un multiplo della dimensione della parola di memoria (per esempio: dimensione blocco 128 bit = 4 parole da 32 bit) Sfruttando la località dei riferimenti, la frequenza di successo (hit rate) nell accesso alla cache può arrivare fino al 95%. Prof. C. Silvano Politecnico di Milano 56 Prof. Cristina Silvano Politecnico di Milano 28

29 Frequenza di successo (hit rate) La frequenza di successo dipende da due caratteristiche: la dimensione dei blocchi (o cache line): un blocco grande permette di sfruttare meglio la località spaziale; il numero di blocchi presenti in cache: se c è spazio per tanti blocchi, un dato resta in cache più a lungo e si può sfruttare meglio la località temporale. Prof. C. Silvano Politecnico di Milano 57 Generalizzazione: gerarchia di memoria su più livelli Prof. C. Silvano Politecnico di Milano 58 Prof. Cristina Silvano Politecnico di Milano 29

30 Obiettivo Migliorare le prestazioni di un calcolatore attraverso una gerarchia di memoria su più livelli in modo da: fornire agli utenti l illusione di poter usufruire di una memoria contemporaneamente grande e veloce Capacità pari a circa quelle della memoria grande Velocità pari a circa quella della memoria veloce fornire la processore i dati alla velocità con cui è in grado di elaborarli. Prof. C. Silvano Politecnico di Milano 59 Soluzione: gerarchia di memoria CPU U Livelli della gerarchia di memoria Livello 0 Livello 1 Incremento del tempo di accesso Livello n Dimensioni della memoria ad ogni livello Prof. C. Silvano Politecnico di Milano 60 Prof. Cristina Silvano Politecnico di Milano 30

31 Soluzione: gerarchia di memoria 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. Prof. C. Silvano Politecnico di Milano 61 Concetti base Una gerarchia di memoria è composta da più livelli, ma i dati vengono di volta in volta copiati solo tra due livelli adiacenti: livello n e livello n+1 Per esempio: cache e memoria principale La cache (livello superiore n ) è più piccola, veloce e costosa rispetto alla memoria principale (livello inferiore n+1). Prof. C. Silvano Politecnico di Milano 62 Prof. Cristina Silvano Politecnico di Milano 31

32 Concetti base Livello n: memoria piccola, veloce ma costosa Capacità pari a circa 1 unità Tempo di accesso pari a circa 1 unità Livello n+1: memoria grande, lenta e poco costosa Capacità pari a circa 10 unità Tempo di accesso pari a circa 10 unità Prof. C. Silvano Politecnico di Milano 63 Livelli della gerarchia di memoria Livello superiore CPU Registri + veloce + costoso Cache (SRAM) Memoria Principale (DRAM) Dischi Fissi (Hard Disk) Nastri Magnetici e Dischi Ottici + grande Livello inferiore Prof. C. Silvano Politecnico di Milano 64 Prof. Cristina Silvano Politecnico di Milano 32

33 Livelli della gerarchia di memoria CPU Livello superiore Registri + veloce + costoso Cache L1 (SRAM) Cache L2 (SRAM) Memoria Principale (DRAM) Dischi Fissi (Hard Disk) + grande Nastri Magnetici e Dischi Ottici Livello inferiore Prof. C. Silvano Politecnico di Milano 65 Livelli della gerarchia di memoria Registri interni alla CPU (Banco di Registri) molto veloci e realizzati con la stessa tecnologia della CPU stessa stessa frequenza della CPU Cache L1 (SRAM Static RAM) interna alla CPU stessa frequenza della CPU Cache L2 (SRAM Static RAM) esterna alla CPU Memoria principale (DRAM Dynamic RAM) Dischi fissi (Hard Disk) Nastri magnetici e dischi ottici Prof. C. Silvano Politecnico di Milano 66 Prof. Cristina Silvano Politecnico di Milano 33

34 Caratteristiche dei livelli della gerarchia di memoria Prof. C. Silvano Politecnico di Milano 67 Caratteristiche dei livelli della gerarchia di memoria Man mano che ci si sposta verso il basso nella gerarchia cambiano le tecnologie: aumenta la capacità di memorizzazione (memoria più grande) aumenta il tempo di accesso (memoria più lenta) diminuisce il costo per bit (memoria meno costosa) Prof. C. Silvano Politecnico di Milano 68 Prof. Cristina Silvano Politecnico di Milano 34

35 La memoria di massa o secondaria (magnetica) Prof. C. Silvano Politecnico di Milano 69 Memoria di massa o secondaria Memorizza grandi masse di dati. Consente di memorizzare dati in modo non volatile. Non può essere indirizzata direttamente dalla CPU ma attraverso l interfaccia di I/O. Prof. C. Silvano Politecnico di Milano 70 Prof. Cristina Silvano Politecnico di Milano 35

36 Architettura di riferimento dei calcolatori Prof. C. Silvano Politecnico di Milano 71 Memoria di massa o secondaria Memoria principale vs. memoria di massa: la memoria di massa memorizza in modo permanente i programmi e i dati del calcolatore la memoria principale memorizza i programmi in esecuzione e i dati necessari per la loro esecuzione Prof. C. Silvano Politecnico di Milano 72 Prof. Cristina Silvano Politecnico di Milano 36

37 Caratteristiche della memoria di massa Non volatilità I dati memorizzati non si perdono allo spegnimento del calcolatore (perché memorizzati in forma magnetica o ottica anziché elettronica) Grande capacità Capacità maggiore (anche di diversi ordini di grandezza) rispetto alla memoria principale Bassi costi Il costo per bit di una memoria di massa è minore (di diversi ordini di grandezza) rispetto alla memoria principale Maggiori tempi di accesso Tempi di accesso maggiori (di qualche ordine di grandezza) rispetto a quelli della memoria principale Prof. C. Silvano Politecnico di Milano 73 Dischi magnetici I dischi magnetici sono di due tipi principali: Hard disk Floppy disk Prof. C. Silvano Politecnico di Milano 74 Prof. Cristina Silvano Politecnico di Milano 37

38 Dischi magnetici: hard disk Un hard disk consiste in un insieme (da 1 fino a 25) di piatti d alluminio (o di altro materiale) dotati di due facce (ricoperte di materiale ferromagnetico) I piatti ruotano attorno ad un perno centrale. Prof. C. Silvano Politecnico di Milano 75 Struttura di un hard disk Prof. C. Silvano Politecnico di Milano 76 Prof. Cristina Silvano Politecnico di Milano 38

39 Dischi magnetici: hard disk Ogni faccia dispone di una propria testina di lettura/scrittura sospesa sopra la superficie magnetica. Scrittura: il passaggio di corrente positiva o negativa attraverso la testina magnetizza la superficie. Lettura: il passaggio sopra un area magnetizzata induce una corrente positiva o negativa nella testina. Le testine di facce diverse sono collegate rigidamente tra loro e si muovono contemporaneamente. Prof. C. Silvano Politecnico di Milano 77 Dischi magnetici: hard disk Fattore di forma (diametro) sempre più piccolo (consente maggiore densità di integrazione e maggiore velocità di rotazione) 3,5 pollici per sistemi desktop e fino a 1 pollice per sistemi portatili. Prof. C. Silvano Politecnico di Milano 78 Prof. Cristina Silvano Politecnico di Milano 39

40 Dischi magnetici: hard disk Ogni faccia è organizzata in circonferenze concentriche chiamate tracce ( ). Ogni traccia è suddivisa in spicchi di uguale grandezza settori (64-200). Il settore è la più piccola unità che può essere letta/scritta da/su disco (blocco da 512 Byte o 1024 Byte). Un bit corrisponde ad uno stato di polarizzazione (positiva o negativa) del materiale magnetico che costituisce i dischi Prof. C. Silvano Politecnico di Milano 79 Dischi magnetici: hard disk Prof. C. Silvano Politecnico di Milano 80 Prof. Cristina Silvano Politecnico di Milano 40

41 Traccia Traccia (track): sequenza circolare di bit scritta mentre il disco compie una rotazione completa. La larghezza di una traccia dipende dalla dimensione della testina e dall accuratezza con cui la si può posizionare. La densità radiale va da 800 a 2000 tracce per centimetro (5-10 µm per traccia). Tra una traccia e l altra c è un piccolo spazio di separazione (gap). Prof. C. Silvano Politecnico di Milano 81 Settore Settore (sector): parte di una traccia corrispondente a un settore circolare del disco. Un settore contiene 512 Byte di dati, preceduti da un preambolo e seguiti da un codice di correzione degli errori. La densità lineare è di circa Kbit per cm (0,1-0,2 µm per bit). Tra settori consecutivi si trova un piccolo spazio (intersector gap). Prof. C. Silvano Politecnico di Milano 82 Prof. Cristina Silvano Politecnico di Milano 41

42 Formattazione Operazione che predispone tracce e settori per la lettura/scrittura Circa il 15% dello spazio disco si perde in gap, preamboli e codici di correzione degli errori. Prof. C. Silvano Politecnico di Milano 83 Hard disk L insieme delle tracce equidistanti dal centro su piatti diversi è chiamato cilindro. La quantità di dati che possono essere memorizzati per traccia dipende dalla qualità del disco. Solitamente, ogni traccia di un disco contiene la stessa quantità di bit le tracce più esterne memorizzano informazione con densità minore. Prof. C. Silvano Politecnico di Milano 84 Prof. Cristina Silvano Politecnico di Milano 42

43 Hard disk I dati sono letti/scritti mediante la testina. Per leggere/scrivere informazioni sono necessari tre passi: la testina deve essere posizionata sulla traccia corretta; il settore corretto deve passare sotto la testina; i dati devono essere letti/scritti. Prof. C. Silvano Politecnico di Milano 85 Hard disk Tempo di seek: tempo per posizionare la testina sulla traccia corretta. Tempo di rotazione: tempo per raggiungere il settore da trasferire. Tempo di trasferimento: tempo per trasferire l informazione. A questi tempi va aggiunto il tempo per le operazioni dell interfaccia di I/O (controller). Prof. C. Silvano Politecnico di Milano 86 Prof. Cristina Silvano Politecnico di Milano 43

44 Prestazioni dei dischi Tempo di accesso (ms o 10-3 s) Tempo di seek (seek time) tempo necessario alla testina per posizionarsi sulla traccia richiesta; dipende dalla meccanica (tempo medio di seek da 5 a 15 ms, 1 ms per tracce adiacenti) Tempo di rotazione (o latenza) tempo necessario al disco per ruotare fino a portare il dato nella posizione giusta; dipende dalla velocità di rotazione del disco ( RPM tempo medio di rotazione da 2,7 a 5,4 ms). Prof. C. Silvano Politecnico di Milano 87 Prestazioni dei dischi Tempo di trasferimento o Transfer Rate (MBps) Velocità di trasferimento del disco dipende dalla densità di registrazione e dalla velocità di rotazione; un settore di 512 Byte richiede tra 25 e 100 µs (tempo medio di trasferimento da 5 a 20 MBps) Velocità di trasferimento del sistema di controllo (per esempio SCSI vs. EIDE). Prof. C. Silvano Politecnico di Milano 88 Prof. Cristina Silvano Politecnico di Milano 44

45 Dischi magnetici: floppy disk Dischi magnetici di piccola capacità, portatili, usati per trasferire informazioni (file) tra computer diversi Costituiti da un unico disco con due superfici Storicamente ne sono stati creati vari tipi identificati dal loro diametro (3.5, 5.25 e 8 pollici) Oggi sopravvivono solo dischetti da 3.5 (1.44 MByte) Prof. C. Silvano Politecnico di Milano 89 Caratteristiche dei floppy disk Funzioni: distribuzione software; archiviazione dati. Struttura analoga a quella di un disco magnetico: il disco si ferma quando non è operativo; l avvio della rotazione comporta un ritardo di 0.5 sec. Caratteristiche tipiche di un floppy da 3.5 Capacità 1.44 Mbyte Tracce per settori: 80 x 18 RPM = 300 Velocità di trasferimento 500 Kbps Prof. C. Silvano Politecnico di Milano 90 Prof. Cristina Silvano Politecnico di Milano 45

46 Nastri magnetici Nastri di materiale magnetizzabile raccolti su supporti circolari, o in cassette Sul nastro sono tracciate piste orizzontali parallele di solito 9 piste, di cui 8 corrispondono ad un byte e la 9 a è il bit di parità I dati sul nastro sono organizzati in zone contigue dette record, separate da zone prive di informazione (interrecord gap) Prof. C. Silvano Politecnico di Milano 91 Caratteristiche dei nastri magnetici Capacità di diversi GigaByte Accesso sequenziale Molto lenti Basso costo Utili solo per operazioni di salvataggio dei dati (backup) Prof. C. Silvano Politecnico di Milano 92 Prof. Cristina Silvano Politecnico di Milano 46

47 La memoria di massa (ottica) Prof. C. Silvano Politecnico di Milano 93 Dischi ottici Lettura ottica basata sulla riflessione (o sulla mancata riflessione) di un raggio laser. Raggiungono densità di registrazione più alte dei dischi magnetici. Creati in origine per registrare programmi televisivi, usati poi come dispositivi di memoria nei calcolatori. Prof. C. Silvano Politecnico di Milano 94 Prof. Cristina Silvano Politecnico di Milano 47

48 Dischi ottici 1984, CD-ROM (Compact-Disk Read-Only Memory) Capacità di oltre 600 Mbyte e costo inferiore a $1 Velocità di trasferimento: originariamente 150 Kbyte / secondo ( 1X ) OGGI: 12, 16, 24 volte tanto 1984, WORM (Write Once Read Many) Sono dischi ottici scrivibili (una sola volta) Accesso diretto ai settori (capacità Kbyte) 1997, DVD (Digital Video Disk) Evoluzione del CD-ROM Capacità fino a 17 GByte Velocità di trasferimento molto elevata Prof. C. Silvano Politecnico di Milano 95 Dischi ottici La superficie di un disco presenta una successione di tratti disposti secondo un unica traccia a spirale pit: tratto di superficie avvallata land: tratto di superficie liscia riflettono i raggi luminosi in modo diverso Il passaggio pit/land (e land/pit) rappresenta 1, mentre l assenza di variazione rappresenta 0. Prof. C. Silvano Politecnico di Milano 96 Prof. Cristina Silvano Politecnico di Milano 48

49 Dischi ottici Prof. C. Silvano Politecnico di Milano 97 Compact Disk (CD) Proposto nel 1980 (da Philips e Sony) per sostituire i dischi n vinile per la musica. Standard internazionale IS (Libro rosso) Diametro 12 cm, spessore 1.2 mm con un foro di 15 mm in mezzo. Un laser a bassa potenza manda una luce infrarossa (lunghezza d onda di 0.78 µm) sul disco. Velocità lineare costante (120 cm/sec) All interno è di 530 RPM, all esterno deve scendere a 200 RPM Unità diversa da quella a velocità angolare costante usata per gli hard disk 530 RPM sono molto meno dei 7200/15000 RPM degli hard disk Prof. C. Silvano Politecnico di Milano 98 Prof. Cristina Silvano Politecnico di Milano 49

50 CD-ROM Nel 1984 Philips e Sony pubblicano il Libro giallo che definisce lo standard dei CD-ROM (Compact Disc-Read Only Memory). Viene definita la struttura e il formato da utilizzare per memorizzare dati digitali invece che semplice musica. Rispetto ai CD audio i CD-ROM hanno: stesse dimensioni compatibilità dell ottica e della meccanica stesso processo produttivo migliore capacità di correggere errori Il Libro verde (1986) aggiunge grafica e possibilità di mischiare audio, video e dati nello stesso settore. Prof. C. Silvano Politecnico di Milano 99 Caratteristiche dei CD-ROM Velocità base (1X) 75 settori/sec KByte/sec (175.2 in modalità 2) Velocità superiori crescono in proporzione (32X corrisponde a 2400 settori/sec cioè quasi 5MB/sec) Capacità 74 minuti di musica = circa 650 Mbyte 80 minuti di musica = circa 700 Mbyte Tempo di accesso = alcune centinaia di msec Prof. C. Silvano Politecnico di Milano 100 Prof. Cristina Silvano Politecnico di Milano 50

51 CD-R e CD-RW CD Recordable (CD-R) che vengono scritti una sola volta (WORM) Utilizzati per backup, per generazione di master, per distribuzioni in piccole serie, ecc. CD ReWriteable (CD-RW) sono dischi ottici riscrivibili Prof. C. Silvano Politecnico di Milano 101 Digital Versatile Disk (DVD) Rappresentano un evoluzione tecnologica con maggiore densità dei dati: pit più piccoli (0.4 vs. 0.8 µm); spirale più serrata (0.74 vs. 1.6 µm); laser rosso (0.65 vs µm). Caratteristiche dei DVD: Capacità 4.7 GByte (133 minuti di video fullscreen MPEG-2 ad alta risoluzione 720 X 480 con colonna sonora in 8 lingue e sottotitoli in altre 32 lingue. 1X indica 1.4 MB/sec (vs. 150 KB/sec). Prof. C. Silvano Politecnico di Milano 102 Prof. Cristina Silvano Politecnico di Milano 51

52 Diversi formati di DVD Esistono situazioni in cui servono più di 4.7 GByte. Pertanto sono stati definiti quattro formati: Lato unico, strato unico (4.7 GB) Lato unico, strato doppio (8.5 GB) Due lati, strato unico (9.4 GB) Due lati, strato doppio (17 GB) Prof. C. Silvano Politecnico di Milano 103 Gestione dell Input/Output Prof. C. Silvano Politecnico di Milano 104 Prof. Cristina Silvano Politecnico di Milano 52

53 Dispositivi di I/O Un dispositivo di ingresso e/o uscita (periferica) è costituito da due componenti: il dispositivo (device) fisico effettivo (stampante, mouse, video, tastiera, ecc.); un interfaccia di I/O (device controller) che gestisce tutte le operazioni che il dispositivo è in grado di svolgere. L interfaccia di I/O è collegata attraverso il bus di sistema con CPU e memoria principale. L interfaccia di I/O ha il compito di tradurre i segnali interni del calcolatore in un formato comprensibile alla periferica stessa, e viceversa Prof. C. Silvano Politecnico di Milano 105 Dispositivi di I/O Prof. C. Silvano Politecnico di Milano 106 Prof. Cristina Silvano Politecnico di Milano 53

54 Dispositivi di I/O I dispositivi di I/O hanno caratteristiche molto diverse tra loro. Possono essere classificati in base a tre dimensioni: il comportamento: dispositivi di input/output o per la memorizzazione di dati; il modo di interazione: interazione con l uomo o con la macchina; il tasso di trasferimento dati: a che velocità i dati possono essere trasferiti dal dispositivo alla memoria centrale e viceversa (KB/sec.). Anche le memorie di massa (es. unità disco e lettore di CD-ROM) sono considerate periferiche. Prof. C. Silvano Politecnico di Milano 107 Dispositivi di Input Tastiera Mouse Trackball Touch pad Microfono Tavoletta grafica Webcam Penna ottica Scanner Fotocamera digitale Touch Screen Joystick Prof. C. Silvano Politecnico di Milano 108 Prof. Cristina Silvano Politecnico di Milano 54

55 Dispositivi di Output Monitor Stampante Plotter Casse acustiche Cuffie Videoproiettore Prof. C. Silvano Politecnico di Milano 109 Bus di sistema Il bus di sistema costituisce il canale di comunicazione tra le varie componenti di un elaboratore (CPU, memorie ed interfacce di I/O compresa la memoria di massa). Può diventare un collo di bottiglia in quanto le sue prestazioni sono limitate da: lunghezza; numero di dispositivi connessi. Prof. C. Silvano Politecnico di Milano 110 Prof. Cristina Silvano Politecnico di Milano 55

56 Bus di sistema Il bus di sistema è composto da: Bus dati Bus indirizzi Bus di controllo Prof. C. Silvano Politecnico di Milano 111 Bus dati Comprende le linee per trasferire dati e istruzioni da/verso la memoria. Serve per trasferire dati tra Memoria Principale e Registro Dati (MDR) della CPU oppure tra periferiche e CPU/Memoria Principale In generale, la dimensione del bus dati è tale da garantire il trasferimento contemporaneo di una o più parole di memoria. Bus bidirezionale. Prof. C. Silvano Politecnico di Milano 112 Prof. Cristina Silvano Politecnico di Milano 56

57 Bus indirizzi La CPU provvede a trasmettere sul bus indirizzi l indirizzo della parola di memoria da cui prelevare il dato nel caso di lettura dalla memoria, oppure in cui depositarlo nel caso di scrittura nella memoria. Serve per trasmettere il contenuto del Registro Indirizzi (MAR) alla memoria (o ad una periferica) per selezionare l indirizzo da cui prelevare il dato, nel caso di lettura dalla memoria, oppure in cui depositarlo, nel caso di scrittura. Bus unidirezionale Prof. C. Silvano Politecnico di Milano 113 Bus di controllo Comprende le linee dove transitano le informazioni ausiliarie per la corretta definizione delle operazioni da compiere (per esempio lettura oppure scrittura da/verso la memoria) e per la sincronizzazione tra CPU e memoria. Serve anche per inviare i comandi verso una periferica (es. stampa verso l interfaccia della stampante). Prof. C. Silvano Politecnico di Milano 114 Prof. Cristina Silvano Politecnico di Milano 57

58 Bus di sistema Esempio: Operazione di lettura dalla memoria. La CPU fornisce l indirizzo della parola desiderata sul bus indirizzi, quindi viene richiesta l operazione di lettura attivando il bus di controllo. Quando la memoria ha completato la lettura della parola richiesta, il dato viene trasferito sul bus dati e la CPU può prelevarlo ed utilizzarlo nelle sue elaborazioni. Prof. C. Silvano Politecnico di Milano 115 Operazioni di input Un operazione di input è un trasferimento dati dal device alla memoria: Un segnale del bus di controllo indica che in memoria deve essere eseguita una write. Il bus indirizzi contiene l indirizzo di memoria in cui il dato deve essere trasferito. Quando la memoria è pronta, manda un segnale sul bus di controllo al device controller che trasferisce i dati attraverso il bus dati. Prof. C. Silvano Politecnico di Milano 116 Prof. Cristina Silvano Politecnico di Milano 58

59 Operazioni di output Un operazione di output è un trasferimento dati dalla memoria al device: Un segnale del bus di controllo indica che in memoria deve essere eseguita una read. Il bus indirizzi contiene l indirizzo da cui i dati devono essere letti. La memoria accede ai dati da trasferire. La memoria trasferisce i dati al device mediante il bus dati, e segnala al device l avvenuto trasferimento mediante il bus di controllo. Prof. C. Silvano Politecnico di Milano 117 Tipologie di bus Esistono due schemi principali di comunicazione su di un bus: sincrono: dotato di un segnale di sincronizzazione (clock) ed esiste un protocollo di comunicazione scandito dai cicli di clock. Questo tipo di protocollo permette di ottenere bus molto veloci asincrono: non è dotato di segnale di clock. La comunicazione tra due parti avviene mediante un protocollo di handshaking. Prof. C. Silvano Politecnico di Milano 118 Prof. Cristina Silvano Politecnico di Milano 59

60 Utilizzo del bus La comunicazione su un bus deve essere regolata attraverso un protocollo di comunicazione. Vengono introdotti uno o più bus master il cui scopo è quello di controllare l accesso al bus. L architettura più semplice è quella con un unico bus master (la CPU) in cui tutte le comunicazioni vengono mediate dalla CPU stessa. Il principale svantaggio dell architettura con un singolo master è che il master può diventare un collo di bottiglia L alternativa è quella di avere più master e rispettare un protocollo per il loro coordinamento Prof. C. Silvano Politecnico di Milano 119 Arbitraggio del bus Occorre stabilire quale master autorizzare all utilizzo del bus. Ad ogni dispositivo è assegnata una priorità. Il dispositivo che fa richiesta di accesso al bus e che possiede priorità maggiore può accedere al bus. Problema: assicurare la fairness. Prof. C. Silvano Politecnico di Milano 120 Prof. Cristina Silvano Politecnico di Milano 60

61 Come inviare comandi ad un dispositivo di I/O I comandi devono essere inviati al corrispondente device controller Un istruzione di I/O (read,write) in un linguaggio ad alto livello viene trasformata in una serie di comandi per il controller. La trasformazione avviene ad opera del compilatore che traduce l istruzione in una syscall (chiamata al sistema operativo) Prof. C. Silvano Politecnico di Milano 121 Come inviare comandi ad un dispositivo di I/O La comunicazione tra CPU e controller avviene tramite il bus di sistema L interfaccia di I/O (controller) è dotata di registri in cui memorizza: stato della periferica (ad es.: idle, busy, down, ); comando in esecuzione; dati da/verso periferica. Prof. C. Silvano Politecnico di Milano 122 Prof. Cristina Silvano Politecnico di Milano 61

62 Interfaccia di I/O e bus Prof. C. Silvano Politecnico di Milano 123 Device controller Un device controller può quindi essere visto come un processore con ridotte potenzialità Ogni operazione eseguita dal device controller deve essere esplicitamente richiesta dalla CPU Prof. C. Silvano Politecnico di Milano 124 Prof. Cristina Silvano Politecnico di Milano 62

63 Come inviare comandi ad un dispositivo di I/O Per richiedere un operazione di I/O la CPU deve: predisporre il contenuto dei registri del controller a valori predeterminati; avviare il controller stesso. L operazione di predisposizione del controller può avvenire in due modalità: memory-mapped I/O; istruzioni di I/O dedicate. Prof. C. Silvano Politecnico di Milano 125 Memory-mapped I/O I registri dei vari controller sono considerati logicamente come locazioni di memoria centrale, pur essendo fisicamente localizzati all interno del device controller A tali registri vengono assegnati indirizzi a 32 bit Per caricare valori nei registri del controller : sw $rt, indirizzo Per leggere il contenuto dei registri del controller: lw $rt, indirizzo Prof. C. Silvano Politecnico di Milano 126 Prof. Cristina Silvano Politecnico di Milano 63

64 Memory-mapped I/O Sul bus possono quindi transitare sia operazioni indirizzate a memoria centrale che ai controller delle periferiche I controller devono quindi essere dotati di un meccanismo che permetta loro di riconoscere le transazioni ad essi indirizzate Prof. C. Silvano Politecnico di Milano 127 Memory-mapped I/O I controller ascoltano tutti i segnali in transito sul bus (bus snooping) e si attivano solo quando riconoscono sul bus indirizzi un indirizzo corrispondente ad una propria locazione di memoria. Gli indirizzi riservati ai registri dei controller fanno di solito riferimento alla porzione di memoria riservata al sistema operativo e non accessibile quindi ai programmi utente. I programmi utente devono usare il sistema operativo come tramite per accedere a tali indirizzi riservati. Prof. C. Silvano Politecnico di Milano 128 Prof. Cristina Silvano Politecnico di Milano 64

65 Istruzione dedicate Per consentire alla CPU di accedere ai registri dei controller delle periferiche vengono inserite nell insieme delle istruzioni (instruction set) delle istruzioni dedicate alla gestione dell I/O. Queste istruzioni dedicate fanno riferimento esplicitamente al dispositivo interessato all operazione di I/O. Prof. C. Silvano Politecnico di Milano 129 Input/Output (I/O) L I/O può essere gestito in tre modalità: Controllo da programma; Interruzione (interrupt driven); DMA (Direct Memory Access) Prof. C. Silvano Politecnico di Milano 130 Prof. Cristina Silvano Politecnico di Milano 65

66 I/O a controllo da programma Tale tecnica prevede il completo coinvolgimento della CPU nella gestione dell operazione di I/O richiesta. La CPU dopo aver predisposto il controller all esecuzione dell operazione di I/O interroga continuamente il controller per verificare l esito dell operazione. Ad operazione ultimata, la CPU provvede a trasferire il dato (nel caso di operazione di input) o ad eseguire una nuova istruzione. Prof. C. Silvano Politecnico di Milano 131 I/O a controllo da programma La CPU è coinvolta durante tutta l operazione di I/O per svolgere il ruolo di controllore. Il ciclo svolto dalla CPU in attesa che il ready bit assuma un determinato valore è detto busy waiting. Prof. C. Silvano Politecnico di Milano 132 Prof. Cristina Silvano Politecnico di Milano 66

67 I/O a controllo da programma L I/O a controllo da programma è molto semplice ma dispendioso in quanto la CPU spreca tempo nel ciclo di busy-waiting. Tale tecnica non deve essere usata per la gestione di periferiche lente poiché forza la CPU ad operare alla stessa velocità delle periferiche e di conseguenza la potenza di calcolo della CPU viene sprecata. Una miglioramento della tecnica a controllo di programma è la tecnica di polling. Prof. C. Silvano Politecnico di Milano 133 Polling Durante un ciclo di busy-waiting vengono controllate dalla CPU tutte o parte delle periferiche di I/O gestite a controllo da programma. Quando una periferica necessita di un qualche intervento, si soddisfa la richiesta e si prosegue il ciclo di polling. Prof. C. Silvano Politecnico di Milano 134 Prof. Cristina Silvano Politecnico di Milano 67

68 Polling I miglioramenti di prestazioni rispetto al controllo da programma sono limitati. I problemi principali del polling sono: con periferiche lente, un eccessivo spreco di tempo di CPU che per la maggior parte del tempo è occupata nel ciclo di busy waiting. con periferiche veloci, il lavoro svolto dalla CPU è quasi esclusivamente dovuto al trasferimento dati. Prof. C. Silvano Politecnico di Milano 135 I/O interrupt driven Per evitare il busy waiting è necessario introdurre un metodo basato sulla gestione degli interrupt. La CPU predispone il controller ad eseguire l operazione di I/O richiesta da un programma utente (es. read/write) e prosegue la sua computazione disinteressandosi dello svolgimento dell operazione da parte del controller stesso. Il controller esegue il comando inviatogli dalla CPU e quando termina invia un segnale di interrupt alla CPU. La CPU, attraverso una routine di gestione dell interrupt, provvederà a richiamare il driver per gestire l evento di I/O comunicatole. Prof. C. Silvano Politecnico di Milano 136 Prof. Cristina Silvano Politecnico di Milano 68

69 I/O interrupt driven Un interrupt (interruzione) è un meccanismo che consente di interrompere l esecuzione di un programma utente al fine di eseguire una routine di SO. L interrupt (a differenza di eccezioni e trap) non viene causato dall istruzione correntemente in esecuzione ma da un evento esterno generalmente scorrelato rispetto all istruzione stessa. Un segnale di interrupt è un evento asincrono rispetto alle attività correnti della CPU (a differenza di eccezioni e trap che sono eventi sincroni). Prof. C. Silvano Politecnico di Milano 137 I/O interrupt driven Tra il momento in cui termina l invio del comando l controller e la ricezione dell interrupt inviatole dal controller stesso, la CPU è completamente svincolata dall operazione di I/O e può dedicarsi ad altre attività (tipicamente all esecuzione di un altro programma). Il meccanismo interrupt driven però non svincola la CPU dal dover eseguire l operazione di trasferimento dati. Per periferiche veloci, l attività di trasferimento dati è preponderante rispetto al tempo speso in busy waiting Per evitare l intervento della CPU anche durante questa fase, è stato introdotto il DMA. Prof. C. Silvano Politecnico di Milano 138 Prof. Cristina Silvano Politecnico di Milano 69

Criteri di caratterizzazione di una memoria

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à

Dettagli

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

aumenta il tempo di accesso; aumenta la capacità di memorizzazione; ma diminuisce il costo per bit. Capitolo 6 Le infrastrutture HardWare La memoria di massa La memoria di massa (magnetica) Una gerarchia di memoria 1. registri contenuti nella CPU (qualche KB) 2. cache (da circa 32KB a circa 1024KB) 3.

Dettagli

Elementi di informatica

Elementi di informatica Sia dato una memoria della capacità di 1 GB, avente tempo di accesso di 50ms e velocità di trasferimento di 20 MB/sec. Si vuole ricopiare l intero contenuto su un altra memoria identica, montata sullo

Dettagli

Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill 3/1/2010

Mari, Buonanno, Sciuto Informatica e cultura dell informazione McGraw-Hill 3/1/2010 Che cosa serve per acquisire dati e fornire risultati dispositivo che si trova alla periferia del calcolatore, dedicato a svolgere le operazioni di raccolta dei dati o di presentazione dei risultati, collegato

Dettagli

Architettura dei calcolatori. Lezione 16. Architettura dei calcolatori: Il processore La gerarchia di memoria Le periferiche di I/O

Architettura dei calcolatori. Lezione 16. Architettura dei calcolatori: Il processore La gerarchia di memoria Le periferiche di I/O Architettura dei calcolatori Lezione 16 Architettura dei calcolatori: Il processore La gerarchia di memoria Le periferiche di I/O Un calcolatore deve essere in grado di svolgere autonomamente i seguenti

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica La memoria di massa La gestione dell I/O Una gerarchia di memoria Ottenuta per generalizzazione dell applicazione del principio di località e tipicamente costituita da 1. registri

Dettagli

DISCHI MAGNETICI: HARD DISK

DISCHI MAGNETICI: HARD DISK DISCHI MAGNETICI: HARD DISK Un hard disk consiste di un insieme di piatti con due superfici magnetizzabili bl ogni superficie ha una propria testina di lettura/scrittura i dischi ruotano attorno ad un

Dettagli

La memoria secondaria

La memoria secondaria La memoria secondaria La memoria principale non può essere troppo grande a causa del suo costo elevato Non consente la memorizzazione permanente dei dati (volatilità) Per questi motivi sono stati introdotti

Dettagli

o studiare l architettura del calcolatore significa:

o studiare l architettura del calcolatore significa: Architettura del calcolatore o studiare l architettura del calcolatore significa: individuare ciascun componente del sistema comprendere i principi generali di funzionamento di ciascun componente comprendere

Dettagli

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

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

Dettagli

Programma del corso. Architettura del calcolatore. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Elementi di Programmazione

Programma del corso. Architettura del calcolatore. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Elementi di Programmazione Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Elementi di Programmazione Cos è un Calcolatore? Un computer (calcolatore) è una macchina

Dettagli

Esame di INFORMATICA ARCHITETTURA DI VON NEUMANN. Lezione 4 ARCHITETTURA DI VON NEUMANN

Esame di INFORMATICA ARCHITETTURA DI VON NEUMANN. Lezione 4 ARCHITETTURA DI VON NEUMANN Università degli Studi di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA A.A. 2008/09 Lezione 4 ARCHITETTURA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono

Dettagli

RIASSUNTO La codifica delle informazioni

RIASSUNTO La codifica delle informazioni RIASSUNTO La codifica delle informazioni u Rappresentazione dell informazione all interno di un calcolatore codifica caratteri (codice ASCII) codifica numeri interi (rappresentazione in base 2) codifica

Dettagli

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

Il bus. Bus di sistema: insieme di collegamenti (solitamente in rame) che connette tutti i componenti di un architettura Il bus Problema: collegare le varie componenti (fisicamente separate) di un calcolatore, ad esempio, processore e memoria centrale Problema: come fa il processore a trasmettere alla RAM i bit che codificano

Dettagli

La memoria secondaria

La memoria secondaria La memoria secondaria La memoria principale non può essere troppo grande a causa del suo costo elevato Non consente la memorizzazione permanente dei dati (volatilità) Per questi motivi sono stati introdotti

Dettagli

Dispositivi di I/O. Dispositivi di I/O

Dispositivi di I/O. Dispositivi di I/O Dispositivi di I/O Architetture dei Calcolatori (lettere A-I) Dispositivi di I/O Un dispositivo di I/O è costituito da due componenti: Il dispositivo fisico effettivo (disco, stampante, mouse, video, )

Dettagli

Elementi di informatica

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

Dettagli

Architettura dei calcolatori

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

Dettagli

Sistemi di Elaborazione delle Informazioni 6 CFU. Architettura dei calcolatori

Sistemi di Elaborazione delle Informazioni 6 CFU. Architettura dei calcolatori Università degli Studi di Palermo Dipartimento dell Innovazione Industriale e Digitale Sistemi di Elaborazione delle Informazioni 6 CFU Anno Accademico 2016/2017 Docente: ing. Salvatore Sorce Architettura

Dettagli

Architettura dei calcolatori II parte Memorie

Architettura dei calcolatori II parte Memorie Università degli Studi di Palermo Dipartimento di Ingegneria Informatica C.I. 1 Informatica ed Elementi di Statistica 2 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore Sorce Architettura dei calcolatori

Dettagli

Esame di INFORMATICA Lezione 4

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

Dettagli

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

Corso di Informatica modulo Informatica di Base 6 CFU. Architettura dei calcolatori DIPARTIMENTO DELL INNOVAZIONE INDUSTRIALE E DIGITALE Corso di Informatica modulo Informatica di Base 6 CFU Anno Accademico 2016/2017 Docente: ing. Salvatore Sorce Architettura dei calcolatori Struttura

Dettagli

Architettura del Calcolatore

Architettura del Calcolatore Alfredo Cuzzocrea FUNZIONI DI UN CALCOLATORE Elaborazione Memorizzazione Trasferimento Controllo MACCHINA DI VON NEUMANN TRASFERIMENTO Obiettivo: permettere lo scambio di informazioni tra le varie componenti

Dettagli

verso espandibili eterogenei tempo di accesso tempo di risposta throughput

verso espandibili eterogenei tempo di accesso tempo di risposta throughput I/O Un calcolatore è completamente inutile senza la possibile di caricare/ salvare dati e di comunicare con l esterno Input / Output (I/O): insieme di architetture e dispositivi per il trasferimento di

Dettagli

Dispositivi di I/O. Dispositivi di I/O. Prestazioni degli hard disk. Dispositivi di I/O (2) Architetture dei Calcolatori (lettere A-I)

Dispositivi di I/O. Dispositivi di I/O. Prestazioni degli hard disk. Dispositivi di I/O (2) Architetture dei Calcolatori (lettere A-I) Dispositivi di I/O Architetture dei Calcolatori (lettere A-I) Dispositivi di I/O Un dispositivo di I/O è costituito da due componenti: Il dispositivo fisico effettivo (disco, stampante, mouse, video, )

Dettagli

La memoria principale

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

Dettagli

Abilità Informatiche e Telematiche

Abilità Informatiche e Telematiche Abilità Informatiche e Telematiche (Laurea Triennale + Laurea Magistrale) Marco Pedicini mailto:marco.pedicini@uniroma3.it Corso di Laurea in Scienze della Comunicazione, Università Roma Tre 12 Dicembre

Dettagli

La memoria secondaria

La memoria secondaria La memoria secondaria La memoria principale non può essere troppo grande a causa del suo costo elevato Non consente la memorizzazione permanente dei dati (volatilità) Per questi motivi sono stati introdotti

Dettagli

La memoria secondaria

La memoria secondaria La memoria secondaria La memoria principale non può essere troppo grande a causa del suo costo elevato Non consente la memorizzazione permanente dei dati (volatilità) Per questi motivi sono stati introdotti

Dettagli

Introduzione alle memorie cache. Sommario

Introduzione alle memorie cache. Sommario Introduzione alle memorie cache Corso ACSO prof. Cristina SILVANO Politecnico di Milano Cristina Silvano, 0/0/200 Sommario Obiettivo Livelli della gerarchia di memoria Memoria cache: concetti base Architettura

Dettagli

Abilità Informatiche e Telematiche

Abilità Informatiche e Telematiche Abilità Informatiche e Telematiche (Laurea Triennale + Laurea Magistrale) Marco Pedicini mailto:marco.pedicini@uniroma3.it Corso di Laurea Magistrale in Informazione, Editoria e Giornalismo, Università

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore la memoria principale la memoria secondaria i dispositivi di input/output 1 Fornisce la capacità di

Dettagli

Architettura hardware

Architettura hardware Architettura hardware la parte che si può prendere a calci continua Ricapitolando Il funzionamento di un elaboratore dipende da due fattori principali 1) dalla capacità di memorizzare i programmi e i dati

Dettagli

Sistemi di Elaborazione delle Informazioni 6 CFU. Architettura dei calcolatori

Sistemi di Elaborazione delle Informazioni 6 CFU. Architettura dei calcolatori Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Sistemi di Elaborazione delle Informazioni 6 CFU Anno Accademico 2015/2016 Docente: ing. Salvatore

Dettagli

Informatica giuridica

Informatica giuridica Informatica giuridica Corso di laurea in Scienze dei Servizi giuridici Corso di laurea magistrale in Giurisprudenza A.A. 2015/16 L architettura hardware degli elaboratori La scheda madre Memoria principale

Dettagli

HARDWARE. Hardware. Vista di insieme

HARDWARE. Hardware. Vista di insieme HARDWARE Vista di insieme 1 Hardware Hardware LA PARTE FISICA DEL SISTEMA Insieme di tutti i circuiti, dei componenti elettronici, elettrici e meccanici di un sistema di elaborazione 2 1 3 4 2 6 3 7 8

Dettagli

Memoria Centrale. Memoria Centrale. Memoria Centrale. Interazione CPU-memoria centrale 16/04/2008. Indirizzamento

Memoria Centrale. Memoria Centrale. Memoria Centrale. Interazione CPU-memoria centrale 16/04/2008. Indirizzamento Spazio di lavoro del calcolatore: contiene i dati da elaborare e i risultati delle elaborazioni durante il funzionamento del calcolatore. Insieme di celle di dimensione 1 byte, ciascuna delle quali è individuata

Dettagli

Capitolo 5 Le infrastrutture HardWare. La memoria centrale

Capitolo 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

Dettagli

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus

Architettura del. Calcolatori (1) Calcolatori (2) L architettura di Von Neumann. CPU RAM Memoria I/O. secondaria. bus Architettura del calcolatore Calcolatori (1) Introdotti all'inizio degli anni 1940 Costruiti assemblano componenti elettronici elementari per memorizzare informazioni ed eseguire programmi informazioni

Dettagli

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo.

Corso integrato di Sistemi di Elaborazione. Modulo I. Prof. Crescenzio Gallo. Corso integrato di Sistemi di Elaborazione Modulo I Prof. Crescenzio Gallo crescenzio.gallo@unifg.it La memoria principale 2 Organizzazione della memoria La memoria principale è organizzata come un insieme

Dettagli

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

Il computer P R O F. L O R E N Z O P A R I S I Il computer P R O F. L O R E N Z O P A R I S I Un po di storia Le prime macchine per il calcolo automatico risalgono al 1940. Il calcolatore più potente di quel periodo era l ENIAC, in grado di svolgere

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T2 4 Input e output 1 Prerequisiti Il modello di Von Neumann Utilizzo elementare del computer. 2 1 Introduzione In questa Unità studiamo la parte del computer detta sottosistema

Dettagli

Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche

Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche ELABORAZIONE Le istruzioni del linguaggio gg macchina corrispondono ad operazioni elementari di elaborazione operazioni aritmetiche operazioni relazionali (confronto tra dati) operazioni booleane altre

Dettagli

Programma del corso. Architettura del calcolatore. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Elementi di Programmazione

Programma del corso. Architettura del calcolatore. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Elementi di Programmazione Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Elementi di Programmazione Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet) Cos è un Calcolatore?

Dettagli

Strutture dei sistemi di calcolo

Strutture dei sistemi di calcolo Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di protezione Architettura di un sistema di calcolo

Dettagli

Architettura dei calcolatori

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

Dettagli

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

Le Memorie. Si distinguono per: Supporti sui quali le informazioni vengono fisicamente memorizzate. Le Memorie Supporti sui quali le informazioni vengono fisicamente memorizzate. Si distinguono per: Velocità Costo per bit Tipo di accesso Accesso a byte o blocchi di byte Volatilità Parte I 15 Due Tipi

Dettagli

Le periferiche. dispositivo che si trova alla periferia del calcolatore

Le periferiche. dispositivo che si trova alla periferia del calcolatore Le periferiche dispositivo che si trova alla periferia del calcolatore dedicato a svolgere le operazioni di raccolta dei dati o di presentazione dei risultati collegato al calcolatore attraverso un interfaccia

Dettagli

Sommario. Memorie di massa: tecnologie. Memorie di massa: memorie atte a memorizzare dati in modo non volatile. Tecnologie:

Sommario. Memorie di massa: tecnologie. Memorie di massa: memorie atte a memorizzare dati in modo non volatile. Tecnologie: Sommario!! Tecniche di controllo I/O "! A controllo di programma diretto "! A controllo di programma con polling "! Ad interruzione (interrupt) "! Ad accesso diretto alla memoria (DMA)!! Memorie di massa:

Dettagli

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann

Architettura. Argomenti. Modello di Von Neumann. Corso di Laurea in Ingegneria Biomedica aa 2003/2004. Ing. Antonio Coronato. Modello di Von Neumann Architettura Corso di Laurea in Ingegneria Biomedica aa 2003/2004 Ing. Antonio Coronato 1 Argomenti Modello di Von Neumann, Bus, Memoria centrale e dispositivi Data Path delle architetture di Von Neumann

Dettagli

Architettura del Calcolatore

Architettura del Calcolatore Giuseppe Manco Lezione 3 17 Ottobre 2003 Architettura del calcolatore Il calcolatore è uno strumento programmabile per la rappresentazione, la memorizzazione e l elaborazione delle informazioni un calcolatore

Dettagli

Dal sistema operativo all' hardware

Dal sistema operativo all' hardware Dal sistema operativo all' hardware Di cosa parleremo? Il computer (processore e memoria principale) Cosa avviene all'avvio del computer? Scheda madre Alimentatore Memorie Secondarie (floppy disk, hard

Dettagli

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

Il computer P R O F. L O R E N Z O P A R I S I Il computer P R O F. L O R E N Z O P A R I S I Un po di storia Le prime macchine per il calcolo automatico risalgono al 1940. Il calcolatore più potente di quel periodo era l ENIAC, in grado di svolgere

Dettagli

Input/Output. bus, interfacce, periferiche

Input/Output. bus, interfacce, periferiche Architettura degli Elaboratori e delle Reti Lezione 29 Input/Output: bus, interfacce, periferiche Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Informatica di Base - 6 c.f.u.

Informatica di Base - 6 c.f.u. Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Informatica di Base - 6 c.f.u. Anno Accademico 2007/2008 Docente: ing. Salvatore Sorce Architettura dei calcolatori II parte Memorie

Dettagli

Lezione 22 La Memoria Interna (1)

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

Dettagli

Architettura dei calcolatori

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 2008/2009 Docente: ing. Salvatore

Dettagli

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O L ARCHITETTURA DEI CALCOLATORI Il processore La memoria centrale La memoria di massa Le periferiche di I/O Caratteristiche dell architettura 2 Flessibilità adatta a svolgere diverse tipologie di compiti

Dettagli

Introduzione alle gerarchie di memoria

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

Dettagli

Input/Output. bus, interfacce, periferiche

Input/Output. bus, interfacce, periferiche Architettura degli Elaboratori e delle Reti Lezione 29 Input/Output: bus, interfacce, periferiche Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Cenni sull architettura del calcolatore

Cenni sull architettura del calcolatore Programmazione M-Z Ingegneria e Scienze Informatiche - Cesena A.A. 2016-2017 Cenni sull architettura del calcolatore Pietro Di Lena - pietro.dilena@unibo.it hard-ware /h :dwe9 r / n. The part of the computer

Dettagli

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica Il calcolatore È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica ogni livello di descrizione è caratterizzato da una struttura rappresentante l organizzazione

Dettagli

La memoria secondaria

La memoria secondaria La memoria secondaria La memoria principale non può essere troppo grande a causa del suo costo elevato Non consente la memorizzazione permanente dei dati (volatilità) Per questi motivi sono stati introdotti

Dettagli

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 Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Cos è un Calcolatore? Un computer (calcolatore) è una macchina

Dettagli

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

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

Dettagli

Struttura dei Sistemi di Calcolo

Struttura dei Sistemi di Calcolo Struttura dei Sistemi di Calcolo Operazioni dei sistemi di calcolo Struttura dell I/O Struttura della memoria Gerarchia delle memorie Protezione hardware Invocazione del Sistema Operativo 1 Architettura

Dettagli

Architettura dei calcolatori

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

Dettagli

Il modello di Von Neumann

Il 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

Dettagli

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

Il computer P R O F. L O R E N Z O P A R I S I Il computer U T I L I Z Z O D E L P C E D O F F I C E A U T O M A T I O N P R O F. L O R E N Z O P A R I S I Un po di storia Le prime macchine per il calcolo automatico risalgono al 1940. Il calcolatore

Dettagli

MEMORIA CENTRALE MEMORIA CENTRALE INTERAZIONE CPU-MEMORIA CENTRALE

MEMORIA CENTRALE MEMORIA CENTRALE INTERAZIONE CPU-MEMORIA CENTRALE MEMORIA CENTRALE Spazio di lavoro del calcolatore: contiene i dati da elaborare e i risultati delle elaborazioni svolte durante il funzionamento del calcolatore. Insieme di celle di dimensione 1 byte,

Dettagli

LA MEMORIA NEL CALCOLATORE

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

Dettagli

Memoria Secondaria o di Massa

Memoria Secondaria o di Massa Memoria Secondaria o di Massa dischi fissi (hard disk), floppy disk, nastri magnetici, CD, DVD, USB memory, etc deve essere permanente (mentre la RAM e`volatile) accesso sequenziale, cioe il tempo di accesso

Dettagli

I bus. Sommario. Prof. Alberto Borghese Dipartimento di Scienze dell Informazione Università degli Studi di Milano

I bus. Sommario. Prof. Alberto Borghese Dipartimento di Scienze dell Informazione Università degli Studi di Milano I bus Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/38 Sommario Il bus ed il protocollo di trasferimento Tipologie di bus La

Dettagli

Modulo: Elementi di Informatica

Modulo: Elementi di Informatica ARCHITETTURA DI VON NEUMANN Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Fisica medica e statistica Modulo: Elementi di Informatica A.A. 2009/10 Lezione

Dettagli

Capitolo 2: Strutture dei sistemi di calcolo

Capitolo 2: Strutture dei sistemi di calcolo Capitolo 2: Strutture dei sistemi di calcolo Funzionamento di un sistema di calcolo Struttura di I/O Struttura della memoria Gerarchia delle memorie Architetture di protezione Struttura delle reti di calcolatori

Dettagli

Elementi di informatica

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

Dettagli

Struttura dell elaboratore elettronico

Struttura dell elaboratore elettronico Struttura dell elaboratore elettronico Concetti di base della tecnologia dell Informazione e della Comunicazione Qual è il significato del termine informatica? E' la scienza che si propone di raccogliere,

Dettagli

Architettura hardware

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

Dettagli

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 Programma del corso Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori Architettura di Von Neumann Memorie secondarie Dette anche Memoria

Dettagli

Architettura dei computer

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

Dettagli

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

LEZIONE 05 GERARCHIE DI MEMORIA Laboratorio di Informatica per l Educazione A. A. 2015/2016 1 LEZIONE 05 GERARCHIE DI MEMORIA A. A. 2015/2016 LA MEMORIA CENTRALE (1/2) La Memoria Centrale (comunemente detta RAM - Random Access Memory) è il dispositivo di memorizzazione con cui la CPU interagisce

Dettagli

LABORATORIO DI INFORMATICA

LABORATORIO DI INFORMATICA LABORATORIO DI INFORMATICA Corso di laurea in Scienze della Formazione Primaria a.a.2014/2015 A cura del Prof. Sergio Miranda LEZIONE N.3 Architettura di Von Neumann PREMESSA Caratteristica fondamentale

Dettagli

I dischi ottici. Fondamenti di Informatica -- Rossano Gaeta

I dischi ottici. Fondamenti di Informatica -- Rossano Gaeta I dischi ottici Le tecnologie dei dischi ottici sono completamente differenti e sono basate sull'uso di raggi laser Il raggio laser è un particolare tipo di raggio luminoso estremamente focalizzato che

Dettagli

Architettura hardware

Architettura hardware Ricapitolando Architettura hardware la parte che si può prendere a calci Il funzionamento di un elaboratore dipende da due fattori principali 1) dalla capacità di memorizzare i programmie i dati 2) dalla

Dettagli

Architettura di von Neumann

Architettura di von Neumann Fondamenti di Informatica per la Sicurezza a.a. 2008/09 Architettura di von Neumann Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università

Dettagli

Architettura di von Neumann

Architettura di von Neumann Fondamenti di Informatica per la Sicurezza a.a. 2007/08 Architettura di von Neumann Stefano Ferrari UNIVERSITÀ DEGLI STUDI DI MILANO DIPARTIMENTO DI TECNOLOGIE DELL INFORMAZIONE Stefano Ferrari Università

Dettagli

Com è 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 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

Dettagli

Architettura di von Neumann

Architettura di von Neumann Fondamenti di Informatica per la Sicurezza a.a. 2003/04 Architettura di von Neumann Stefano Ferrari Università degli Studi di Milano Dipartimento di Tecnologie dell Informazione Stefano Ferrari Università

Dettagli

VERIFICA DI SISTEMI. 5 Domanda [1 punto] Calcolare la velocità di trasferimento dei seguenti hard disk:

VERIFICA DI SISTEMI. 5 Domanda [1 punto] Calcolare la velocità di trasferimento dei seguenti hard disk: VERIFICA DI SISTEMI 1 Domanda [2 punti] Illustra la funzione della CPU e degli eventuali elementi che la costituiscono, specificando quali sono i parametri che ne caratterizzano il funzionamento. Spiega

Dettagli

Input/Output. bus, interfacce, periferiche

Input/Output. bus, interfacce, periferiche Architettura degli Elaboratori e delle Reti Lezione 29 Input/Output: bus, interfacce, periferiche Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

I dispositivi di input/output: il mouse

I dispositivi di input/output: il mouse I dispositivi di input/output: il mouse Oggi quasi tutti i computer hanno un dispositivo di puntamento detto mouse Una freccia indica la posizione del mouse sul video e lo spostamento del mouse sul tavolo

Dettagli

Elementi di informatica

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

Dettagli

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

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

Dettagli

SISTEMI INFORMATIVI AZIENDALI

SISTEMI INFORMATIVI AZIENDALI SISTEMI INFORMATIVI AZIENDALI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: Alla fine di ogni lezione Modalità esame: scritto 1 Visione d insieme Foto disaggregata di un computer

Dettagli

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).! 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

Dettagli