Transcript
Page 1: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

INFORMATICA UMANISTICA B

2: ARCHITETTURA DEI CALCOLATORI

[email protected]

Page 2: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

H ard w are S oftw are

C om p u te r

Le due determinanti del comportamento di un computer

Page 3: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Hardware

Struttura fisica (architettura) del calcolatore formata da parti meccaniche, elettriche, elettroniche

Page 4: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Software

Componente del calcolatore costituita dai: Programmi di base per la gestione del sistema Programmi applicativi per l’uso del sistema

(possono usare i programmi di base)

Page 5: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

H ard w are S oftw are

C om p u te r

Prima parte

Page 6: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

COMPUTER HARDWARE: RAPPRESENTAZIONE SCHEMATICA

INPUT OUTPUT

MEMORIA

CPU

Istruzioni Dati

Page 7: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LA MACCHINA DI TURING

Una descrizione estremamente astratta delle attivita’ del computer che pero’ cattura il suo funzionamento fondamentale

Basata su un’analisi di cosa fa un calcolatore (umano o macchina)

Page 8: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

CPU E MEMORIA NELLA MACCHINA DI TURING

In una macchina di Turing abbiamo: Una ‘CPU’:

Un PROGRAMMA: un insieme di regole che determinano il comportamento della testina a partire dal suo stato e dal simbolo letto (= sistema operativo)

una testina che si trova in ogni momento in uno fra un insieme limitato di stati interni e che si muove sul nastro, leggendo e se del caso modificando il contenuto delle cellette

Una ‘MEMORIA’: un nastro di lunghezza indefinita, suddiviso in cellette

che contengono simboli (ad es. ‘0’e ‘1’);

Page 9: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LA MACCHINA DI TURING

Page 10: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

FUNZIONAMENTO DI UNA MACCHINA DI TURING

Page 11: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

UNA DIMOSTRAZIONE DEL FUNZIONAMENTO DELLA MACCHINA DI TURING

http://www.warthman.com/ex-turing.htm

Page 12: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

PROGRAMMI E DATI

Programmi: Questa lezione: i programmi dal punto di visto

dell’hardware I programmi: sequenze di istruzioni per l’elaborazione delle

informazione Definiscono quale debba essere il comportamento del

processore Dati:

Distinzione tra dato e informazione: Dato: sequenza di bit, può essere interpretato in più modi

diversi Informazione: dato + significato del dato

Page 13: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

MACCHINA DI TURING UNIVERSALE

Nelle macchine di Turing piu’ semplici, si trova una distinzione molto chiara tra PROGRAMMA (= gli stati) e DATI (= contenuto del nastro)

Turing pero’ dimostro’ che era possibile mettere anche il programma sul nastro, ed ottenere una macchina di Turing ‘universale’ – che LEGGEVA sul nastro la prossima istruzione da eseguire prima di leggere i DATI su cui occorreva eseguirla

I computer moderni sono macchine di Turing universali.

Page 14: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

ALCUNI RISULTATI DIMOSTRATI USANDO IL MODELLO DI TURING

Non tutte le funzioni sono CALCOLABILI Ovvero: non e’ possibile scrivere un algoritmo per risolvere

qualunque problema in modo ESATTO ed in tempo FINITO

Il PROBLEMA DELL’ARRESTO (HALTING PROBLEM): non e’ possibile dimostrare che una macchina di Turing universale si fermera’ o no su un programma specifico

Questi risultati valgono per qualunque calcolatore, ammesso che valga la TESI DI CHURCH-TURING

Page 15: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

DALLA MACCHINA DI TURING AI COMPUTER MODERNI

La macchina di Turing aiuta a capire come sia possibile manipolare informazione in base a un programma, leggendo e scrivendo due soli simboli: ‘0’e ‘1’

Da questo punto di vista, pur essendo un dispositivo ideale, la macchina di Turing è strettamente imparentata col computer

Page 16: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Dalla macchina di Turing alla macchina di von Neumann

Un passo ulteriore, volendoci avvicinare al funzionamento di un vero computer, è costituito dalla

MACCHINA DI VON NEUMANN

Page 17: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Le funzioni di un computer

elaborare l’informazione usando il processore (Central Processing Unit -

CPU) memorizzare l’informazione

usando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 18: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

ARCHITETTURA DI VON NEUMANN

I/O MemoriaCPUPreleva istruzione

Esegue

Memorizza risultato

BUS

Page 19: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

IL CICLO DI ESECUZIONE ISTRUZIONI

Il ciclo di esecuzione istruzioni sta al cuore del funzionamento di un computer

Ad ogni ‘ticchettio’ del clock, la CPU: Preleva dalla memoria principale la “prossima” istruzione

da eseguire (specificata dal PROGRAM COUNTER, PC) La mette nel REGISTRO ISTRUZIONI (IR) La DECODIFICA Preleva gli OPERANDI specificati nell’istruzione ESEGUE l’istruzione Ricomincia

Page 20: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

UNITA’ CENTRALE E PERIFERICHE

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitorPeriferiche

Page 21: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 22: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

IL PROCESSORE (CPU)

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitor

Periferichedel calcolatore

Page 23: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LA CPU IN DETTAGLIO

Page 24: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

CODICE PER I PROGRAMMI: Istruzioni macchina

I programmi: sequenze di istruzioni elementari (somma due numeri, confronta due numeri, leggi/scrivi dalla memoria, ecc.)

Per ogni tipo di processore è definito un insieme di istruzioni, chiamate istruzioni macchina Ognuna delle quali corrisponde ad un’operazione elementare Le operazione più complesse possono essere realizzate

mediante sequenze di operazioni elementari

Page 25: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Istruzioni macchina

Le istruzioni possono avere formati diversi - per esempio:

Codice istruzione Argomento 1Argomento 2

Codice istruzione Argomento 1

cosa fare su cosa operareoppure

Page 26: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Istruzioni macchina

Per esempio:

ADD R1 R2 Operazione aritmetica di somma: prevede la somma del

contenuto dei registri R1 e R2 e il caricamento del risultato nel registro R1

(Perché R1 non R2? Non c’è una ragione: la decisione è arbitraria)

Codice istruzione Argomento 1Argomento 2

Page 27: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Istruzioni macchina

Per esempio:

LOAD 3568 R2 Operazione di lettura dalla memoria: richiede la lettura del

valore contenuto nella cella con indirizzo 3568 e il suo caricamento nel registro R2

(Perché usiamo un indirizzo? Che cosa un registro? Vedremo…)

Codice istruzione Argomento 1Argomento 2

Page 28: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Istruzioni macchina

Per esempio:

01000110 1111000 01010111 00001111

11110101 01110110 11001001

cosa fare su cosa operare

Page 29: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Linguaggio macchina

Il linguaggio in cui si scrivono queste istruzioni prende il nome di linguaggio macchina Una sequenza di tali istruzioni prende il nome di

programma in linguaggio macchina Il ruolo del processore:

Eseguire programmi in linguaggio macchina

Page 30: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I programmi e i processori

Ogni tipo di processore è in grado di eseguire un numero limitato di istruzioni

Combinando in modo diverso sequenze anche molto lunghe di istruzioni si possono far svolgere al computer molti compiti diversi

Page 31: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I programmi e i processori

Famiglie di processori: Intel, Motorola, Sun Processori della stessa famiglia possono eseguire

gli stessi programmi scritti in linguaggio macchina (ma non sempre)

Processi di famiglie diverse non possono eseguire gli stessi programmi scritti in linguaggio macchina Le istruzioni che “capiscono” sono diverse

Attenzione! Stiamo considerando il livello delle istruzioni macchina

Page 32: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

COMPONENTI DELLA CPU

La CPU non è un unico componente ma è costituita da componenti diversi che svolgono compiti diversi

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 33: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Componenti del processore (CPU)

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 34: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Registri

I registri sono delle unità di memoria estremamente veloci

Sono usate per mantenere le informazioni di necessità immediata per il processore

Le dimensioni dei registri variano da 16, 32, 64 bit Sono una parte fondamentale del processore

Page 35: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Registri

Per esempio: Program Counter L’indirizzo della “prossima” istruzione da eseguire

è memorizzato nel registro Program Counter Per esempio: i Registri Generali

I registri che possono essere utilizzati come memorie temporanee per svolgere le operazioni matematiche

Page 36: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Componenti del processore (CPU)

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 37: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Unità di controllo

L’unità di controllo è la parte più importante del processore Esegue le istruzioni dei programmi Coordina le attività del processore Controlla il flusso delle istruzioni tra il processore

e la memoria

Page 38: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Unità di controllo

Svolge la sua attività in modo ciclico Preleva dalla memoria principale la “prossima”

istruzione da eseguire Preleva gli operandi specificati nell’istruzione Decodifica ed esegue l’istruzione Ricomincia

Page 39: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Unità di controllo

L’esecuzione comporta l’invio di comandi opportuni all’unità relativa Calcoli Unità aritmetico logica Lettura/scrittura dati memoria Acquisizione/stampa dispositivi di I/O

Page 40: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

COMPONENTI DELLA CPU: UNITA’ ARITMETICO-LOGICA

Unità dicontrollo

Unità aritmeticologica

Program CounterREGISTRI

Registro di Stato

Bus Interno

Registro Istruzioni

Registri Generali 8 o 16…

Registro Indirizzi Memoria

Registro Dati Memoria

Registro di Controllo

Page 41: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Unità aritmetico logica

L’Unità aritmetico logica si occupa di eseguire le operazioni di tipo aritmetico/logico Somme, sottrazioni, …, confronti, …

Preleva gli operandi delle operazioni dai Registri Generali

Deposita il risultato delle operazioni nei Registri Generali

Insieme all’unità di controllo collabora al completamento di un ciclo della macchina

Page 42: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Clock

Abbiamo visto che il processore svolga la sua attività in modo ciclico Ad ogni ciclo corrisponde l’esecuzione di un’operazione

elementare (un’istruzione macchina) Il clock fornisce una cadenza temporale per

l’esecuzione delle operazioni elementari La frequenza del clock indica il numero di operazioni

elementari che vengono eseguite nell’unità di tempo

Page 43: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Clock

Consideriamo una ipotesi semplificata in cui ogni battito di clock corrisponde esattamente l’esecuzione di una sola istruzione macchina La frequenza del clock indica il numero di operazioni

elementari che vengono eseguite nell’unità di tempo Per esempio: il clock che ha circa 66 milione battiti per

secondo il computer può eseguire circa 66 milione operazioni per secondo

Page 44: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Clock

In realtà, questa ipotesi non è sempre vero L’esecuzione di una istruzione può richiedere più battiti di

clock Oppure nello stesso ciclo di clock si possono eseguire

(parti) di istruzioni diverse Dipende dal tipo di processore

Per esempio: Il processore Intel 80286 richiede 20 battiti del clock per

calcolare la moltiplicazione di due numeri Il processore Intel 80486 può calcolare la moltiplicazione

di due numeri usando solo un battito del clock

Page 45: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Clock

La frequenza del clock si misura in: MHz (1 MHz corrisponde circa a un milione di istruzioni

elementari/battiti al secondo) GHz (1 GHz corrisponde circa a un miliardo di istruzioni

elementari/battiti al secondo)

Per esempio: se acquistate un calcolatore e vi dicono che ha un processore a 3 GHz Vuol dire che il processore è in grado di eseguire (circa) 3

miliardi di istruzioni al secondo

Page 46: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

MACCHINA DI VON NEUMANN: I BUS

Page 47: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Bus

Permette la comunicazione tra i vari componenti dell’elaboratore

CPU RAM Interfaccia

datiindirizzi

controllo

Page 48: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

IL CICLO DI ESECUZIONE(SEMPLIFICATO!)

Page 49: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 50: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 51: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Componenti principali di un computer

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitor

Periferichedel calcolatore

Page 52: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

UNITA’ CENTRALE: LA MEMORIA PRINCIPALE

Page 53: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Componenti principali di un computer

Unità centraleProcessore

Memoria principale

012345

N

Sequenza di celle

– Ad ogni cella è associato un indirizzo (un numero progressivo a partire da 0)

Insieme al processoreforma l’Unità Centraledi un elaboratore

Conserva i programmi e i dati usati dal processore

Page 54: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria principale (RAM)

Perchè si chiama RAM (Random Access Memory)?– Si può accedere direttamente alle varie celle, una volta

noto il loro indirizzo– Il tempo necessario per accedere ad una cella è lo stesso,

indipendentemente dalla posizione della cella nella sequenza

– Il termine “random” (casuale) indica proprio il fatto che non vi sono differenze nell’accesso alle varie celle della memoria

Page 55: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria principale (RAM)

Alcune proprietà della memoria principale Veloce: per leggere/scrivere una cella ci vuole un

tempo di accesso dell’ordine di poche decine di nanosecondi (millesimi di milionesimi di secondo = 10-9 sec.)

Volatile: è fatta di componenti elettronici, togliendo l’alimentazione si perde tutto

(Relativamente) costosa

Page 56: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria principale (RAM)

Tutte le celle hanno la stessa dimensione: 8, 16, 32, o 64 bit

Le operazioni che si eseguono sulla memoria sono operazioni di lettura e scrittura

Una cella può contenere un dato o un’istruzione

012345

N

34513.200.9853.890

ADD R1 R2LOAD 56 R1LOAD 3568 R1

Indirizzi Contenuto

Page 57: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Un po’ di terminologia ...

bit 1 cifra binaria memorizza 0 oppure 1

byte 8 bit memorizza un carattere

parola da 16 a 64 bit numeri e indirizzi di memoria

Kilobyte (KB) 1024 byte circa mezza pagina di testo

Megabyte (MB) 1024 KB un libro di 200 pagine

Gigabyte (GB) 1024 MB alcuni volumi

Terabyte (TB) 1024 GB una biblioteca

Petabyte (PB) 1024 TB molte biblioteche

Page 58: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria principale (RAM)

Ogni calcolatore usa un numero di bit costante per rappresentare gli indirizzi

Maggiore è il numero di bit usati, maggiore sarà il numero di celle indirizzabili: spazio di indirizzamento Se si usano 16 bit per codificare gli indirizzi, si potranno

indirizzare fino a 65.536 celle (circa 64 KB di memoria, nell’ipotesi di celle di memoria di 1 byte)

Con 32 bit si potranno indirizzare fino a 4.294.967.296 celle (circa 4 GB di memoria)

Page 59: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria principale (RAM)

Se acquistate un computer e vi dicono che ha una RAM di 128 MB, vi stanno specificando le dimensioni della memoria principale

All’aumentare delle dimensioni della memoria principale aumenta il numero di programmi che possono essere “contemporaneamente” attivi

Page 60: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria principale (RAM)

Le unità di misura della memoria RAM variano a seconda del tipo di calcolatore e vengono espresse in MB

Nei PC generalmente si va dai 128MB ai 512MB

Alcune “server” hanno 1-2 GB di RAM La RAM, fino ad un certo limite, è espandibile

(slot di espansione)

Page 61: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

ALTRI TIPI DI MEMORIA NELL’UNITA CENTRALE

Memoria di sola lettura (ROM) Memoria cache Buffer

Page 62: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria di sola lettura (ROM)

Non può essere modificata A differenza della RAM non è volatile Veloce quasi come la RAM Contiene le informazioni di inizializzazione

usate ogni volta che si accende l’elaboratore (bootstrap)

Page 63: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria cache

Livello di memoria intermedio tra i registri e la RAM Memorizza i dati usati più spesso senza doverli

recuperare tutte le volte dalla RAM (che è più lenta)

Influisce moltissimo sulle prestazioni e sul costo della CPU (e quindi del computer)

È molto più costosa della RAM

Page 64: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria cache

In genere è interna al processore (cache L1) Esiste anche una cache secondaria (L2)

esterna al processore Le sue dimensione tipiche vanno dai 256KB

a 1MB

Page 65: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LA MEMORIA SECONDARIA

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitor

Periferichedel calcolatore

Page 66: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 67: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria secondaria

La memoria principale non basta (è volatile, costosa) In grado di memorizzare i programmi e i dati in modo

permanente È meno costosa che la memoria principale: le dimensioni

della memoria secondaria sono di solito molto maggiori di quelle della memoria principale

I supporti di memoria secondaria sono più lenti rispetto alla memoria principale (presenza di dispositivi meccanici)

Non tutti i supporti di memoria secondaria permettono l’accesso diretto ai dati Alcuni permettono solo un accesso sequenziale (per

esempio, nastri magnetici)

Page 68: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LA DIVISIONE DEI RUOLI TRA MEMORIA PRINCIPALE E MEMORIA SECONDARIA

I programmi e i dati risiedono nella memoria secondaria

Processore

Stampante Memoria secondaria

Memoria principale

Page 69: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LA DIVISIONE DEI RUOLI TRA MEMORIA PRINCIPALE E MEMORIA SECONDARIA

I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati (i dati) vengono

copiati nella memoria principale

Processore

Stampante Memoria secondaria

Memoria principale

Page 70: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LA DIVISIONE DEI RUOLI TRA MEMORIA PRINCIPALE E MEMORIA SECONDARIA

I programmi e i dati risiedono nella memoria secondaria Per essere eseguiti (i programmi) e usati (i dati) vengono

copiati nella memoria principale Il processore è in grado di eseguire le istruzioni di cui sono

composti i programmi

Processore

Stampante Memoria secondaria

Memoria principale

Page 71: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memoria secondaria

La memoria secondaria deve avere capacità di memorizzazione permanente e quindi per la sua si utilizzano tecnologie basate: sul magnetismo (tecnologia magnetica)

dischi magnetici (hard disk e floppy disk)nastri magnetici

sull’uso dei raggi laser (tecnologia ottica)dischi ottici (CD-ROM, DVD)

Page 72: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Caratteristiche della memoria secondaria

La memoria principale permette di indirizzare ogni singola cella (8, 16, 32 o 64 bit)

Mentre nel caso della memoria secondaria le informazioni sono organizzate in blocchi di dimensioni più grandi (512 byte, 1 KB, 2 KB) Si riducono le dimensioni degli indirizzi Si velocizzano le operazioni di lettura e scrittura

Page 73: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

La memoria magnetica

Sfrutta il fenomeno fisico della polarizzazione Sul supporto ci sono delle particelle magnetiche I due diversi tipi di magnetizzazione (positiva e

negativa) corrispondono alle unità elementari di informazione (0 e 1)

La testina di lettura/scrittura cambia la polarizzazione

Page 74: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi magnetici

I dischi magnetici: sono i supporti di memoria più diffusi

Nel corso delle operazioni i dischi vengono mantenuti in rotazione a velocità costante e le informazioni vengono lette e scritte da testine del tutto simili a quelle utilizzate nelle cassette audio/video

Page 75: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi magnetici

I dischi sono suddivisi in tracce concentriche e settori, ogni settore è una fetta di disco I settori suddividono ogni traccia in porzioni dette blocchi

Testina

Traccia Blocco

Settore

Page 76: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi magnetici

La suddivisione della superificie di un disco in tracce e settori viene detta formattazione

Il blocco è dunque la minima unità indirizzabile Il suo indirizzo è dato da una coppia di numeri

che rappresentano il numero della traccia e il numero del settore

Page 77: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi magnetici

I dischi magnetici consentono l’accesso diretto È possibile posizionare direttamente la testina su un qualunque

blocco (noto il numero della traccia e il numero del settore) Per effettuare un’operazione di lettura/scrittura la testina deve

“raggiungere” il blocco desiderato Il disco gira; la testina sposta solo in senso radiale

Page 78: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi magnetici

piattotestina

briaccio

piattitestine

Page 79: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi magnetici

Hard disk: sono dei dischi che vengono utilizzati come supporto di memoria secondaria fisso all’interno del computer vari GB di memoria

Floppy disk: sono supporti rimovibili Oggi sono comuni floppy

disk da 3,5 pollici di diametro, capacità 1,44 MB

Page 80: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi magnetici

Se acquistate un computer e vi dicono che ha un hard disk di 20 GB vi stanno specificando le dimensioni della sua memoria di massa

All’aumentare della capacità di memoria di massa, aumenterà il numero di programmi e documenti che potete conservare nel vostro computer

Page 81: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

La memoria ottica

Usa il raggio laser e sfrutta la riflessione della luce Il raggio laser viene riflesso in modo diverso da

superfici diverse, e si può pensare di utilizzare delle superfici con dei piccolissimi forellini

Ogni unità di superficie può essere forata o non forata

L’informazione viene letta guardando la riflessione del raggio laser

Page 82: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

La memoria ottica

0 1 0 0 10101

Page 83: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

La memoria ottica

0 101

Page 84: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi ottici

CD-ROM (CD-ROM ovvero Compact Disk Read Only Memory): consentono solamente operazioni di lettura Poiché la scrittura è un’operazione che richiede delle

modifiche fisiche del disco Vengono usati solitamente per la distribuzione dei

programmi e come archivi di informazioni che non devono essere modificate

CD-R: possono essere scrivibile una sola volta CD-RW: riscrivibili; basati su più strati di materiale

Page 85: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dischi ottici

Hanno un capacità di memorizzazione superiore rispetto ai dischi magnetici estraibile Normalmente 650 MB - 700 MB

Hanno costo inferiore rispetto ai dischi magnetici, sono più affidabili e difficili da rovinare

Page 86: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Memory card/USB flash drive Diffusi in vari formati e con vari nomi

(memory card, compact flash, memory pen, memory stick, USB flash drive, USB stick, …)

Nati del mondo delle immagini digitali (per fotocamere e telecamere) come supporto interno estraibile

Medie dimensioni: normalmente 64 MB – 1 GB

USB flash drive, USB stick: utilizzabile sulle porte USB di un personal computer

Più veloce dei floppy disk, e facilmente trasportabili

Page 87: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Unità di misura

Floppy disk da 3,5 pollici di diametro, capacità 1.44 MB

Dischetti ad alta capacità, Iomega Zip (100 – 750 MB), LS-120 (120 MB)

Memory card/USB flash drive: 64 MB – 1 GB Hard disk, vari GB di memoria CD-ROM, 650 MB - 700 MB DVD, da 4.7 fino a 17 GB di memoria Nastri magnetici, usati solo per funzioni di backup

Page 88: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Registri

Mem. cache

Mem. centrale

Dischi magneticie/o ottici

Nastri magnetici

byte

Aumenta la capacità memorizzazione

KB

10*millisecondi

microsecondo/millisecondi

10*nanosecondi

nanosecondi

100*picosecondi

MB

GB

>10 GB

Aumenta la velocità di accesso

Page 89: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Architettura dei computer

Un computer deve: elaborare l’informazione

usando il processore (Central Processing Unit - CPU)

memorizzare l’informazioneusando la memoria principale (RAM)usando la memoria secondaria

fare l’input/output dell’informazioneusando i dispositivi di input/output

Page 90: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Componenti principali di un computer

Unità centraleProcessore

Stampante

Periferiche di input/outputMemoria secondaria

Memoria principale

Tasteria e monitor

Periferichedel calcolatore

Page 91: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dispositivi di input/output

Per realizzare l’interazione uomo-macchina, sono necessari i dispositivi di input/output

La loro funzione primaria è quella di consentire … l’immissione dei dati all’interno

del computer (input) o l’uscita dei dati dal computer

(output)

Page 92: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dispositivi di input/output

Solitamente hanno limitato autonomia rispetto al processore centrale

Si collegano alle porte (o interfacce) del computer Ad alto livello le porte sono le “prese” cui si

connettono i dispositivi Ne esistono di tipi diversi a seconda del tipo di

collegamento e della velocità di trasmissione (esempio: porta USB)

Page 93: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dispositivi di input/output Input:

Tastiera Mouse (e altri strumenti di

puntamento) Scanner Microfono Macchine fotografia e

telecamera digitale Lettori di codici a barre

Output: Videoterminale Stampante Casse acustiche

Input/output: Touchscreen Modem

Page 94: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dispositivi di input/output

Operano in modo asincrono rispetto al processore (ne sono “schiavi”) Si parla di gestione master-slave: è il processore che deve

coordinare le attività di tutti i dispositivi (Input) Il processore non è in grado di prevedere e di

controllare il momento in cui un dato di input sarà a disposizione

(Output) Il processore non può prevedere il momento in cui un dispositivo in output avrà terminato di produrre i dati in uscita

Page 95: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dispositivi di input/output

Un dispositivo di input deve avvertire il processore quando un dato di input è disponibile

Un dispositivo di output deve avvertire il processore quando ha terminato di produrre dati in uscita

Al termine di ogni operazione i dispositivi inviano al processore un segnale, detto interrupt, che indica che il dispositivo ha bisogno di attenzione

Page 96: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

I dispositivi di input/output

Ad ogni ciclo di clock, il processore verifica se sono arrivati dei segnali di interrupt da parte dei dispositivi Se sono arrivati dei segnali, il processore va ad eseguire

le operazioni di gestione dei dispositivi che hanno richiesto l’attenzione

Se non sono arrivati dei segnali, il processore continua ad eseguire il programma corrente

Page 97: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

REALIZZAZIONE FISICA DELL’ARCHITETTURA DI VON NEUMANN

Nei computer odierni, le funzioni logiche dell’unita’ centrale sono svolte da un MICROPROCESSORE

Il microprocessore è il vero cuore del computer

Page 98: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

MICROPROCESSORI MODERNI

Page 99: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

MICROPROCESSORE E PIASTRA MADRE Il microprocessore è incastonato

nella piastra madre

La piastra madre raccoglie in maniera efficiente e compatta altre componenti fondamentali di ogni computer, come la memoria, le porte di comunicazione, ecc.

Page 100: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

La struttura interna della piastra madre

Page 101: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Microprocessore e piastra madre

La memoria RAM è una memoria di lavoro, volatile: il suo contenuto sparisce quando si spegne il computer

La memoria ROM è una memoria non volatile, che di norma non viene modificata dall’utente

La memoria ROM contiene di norma il BIOS (Basic Input Output System): una serie di informazioni di base delle quali il sistema ha bisogno per funzionare

Page 102: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Attorno alla piastra madre

Come abbiamo detto, la RAM è una memoria volatile, che non è in grado di conservare in maniera permanente dati e programmi

Per quest’ultimo scopo, è bene disporre di depositi di memoria ancor più grandi; vogliamo infatti conservarvi tutti i programmi e tutti i dati che desideriamo avere a nostra disposizione, e non solo quelli che utilizziamo in un dato momento

Page 103: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Attorno alla piastra madre

È questo lo scopo dei DISPOSITIVI DI MEMORIA DI MASSA

Fra i dispositivi di memoria di massa, ricordiamo disco rigido (hard disk), dischetti (floppy), nastri e cartucce magnetiche, magneto-ottiche e ottiche, CD-ROM, DVD

Page 104: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

Attorno alla piastra madre

Attraverso appositi alloggiamenti o slot, alla piastra madre possono essere collegate anche schede di espansione

Le schede di espansione permettono in genere di potenziare le capacità del computer in settori specifici (ad es. la grafica), o di collegarvi dispositivi esterni

Al corpo centrale (cabinet) del computer sono di norma connessi diversi dispositivi esterni, utilizzati in genere per l’input e l’output dei dati

Page 105: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

STORIA DEI CALCOLATORI

Page 106: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

L’ABACO

Page 107: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

STORIA DEI CALCOLATORI, II: ELABORAZIONE MECCANICA

Cenni storici: IX – XIII sec. macchine complesse per automazione industriale,

in particolare industria tessile. Telaio di Jacquard, controllato da schede perforate di cartone, che rendevano automatica la lavorazione della stoffa e i disegni realizzati nello stabilimento di tessitura

Macchina per il calcolo inventata dal filosofo Pascal Macchina analitica di Charles Babbage, modello teorico, venne

costruita di recente al museo della scienza e della tecnica di Milano.

Page 108: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

IL TELAIO A SCHEDE DI JACQUARD

Page 109: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LE MACCHINE DI BABBAGE

Page 110: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

III: ELETTRONICA E CALCOLATORI

Cio’ che ha permesso il passaggio a calcolatori basati sull’elettronica e’ lo sviluppo di INTERRUTTORI ELETTRONICI: Prima il TUBO A VALVOLE Poi il TRANSISTOR

Un interruttore permette di rappresentare i due stati: 1 (= passa la corrente), 0 (= non passa)

Page 111: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

TUBI A VALVOLE

Page 112: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

TRANSISTOR E CIRCUITI INTEGRATI

Page 113: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

III: CALCOLATORI ELETTRONICI Ispirati alla macchina di Turing

1936 Konrad Zuse costruì in casa lo Z1 usando i relè; 1941 c/o politecnico di Berlino Z3; 1942 macchina per il computo elettronico (Satanasso-Berry-

Computer). La memoria erano condensatori fissati ad un grande tamburo cilindrico di 1500 bit;

1944 Howard Aiken di Harvard termina MARK1, una macchina elettromeccanica relativamente veloce, lunga 15m e altra 2,5m. Realizzata in soli 5 anni nel progetto Manhattan.

Page 114: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

SVILUPPO DEI CALCOLATORI ELETTRONICI 1943 costruito e rimasto segreto fino al 1970 Colossus voluto da W.

Churchill. Memorizzazione di dati in aritmetica binaria basati sulla ionizzazione termica di un gas

1946 ENIAC (Electronic Numerical Integrator and Computer) che fino al 1973 ritenuto il primo calcolatore elettronico programmabile

30 armadi x 3m, 30t per una superficie di 180mq 300 moltiplicazioni al secondo

La nascita dei transistor: dispositivi elettronici basati sui semiconduttori e sul silicio.

Page 115: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

DA VON NEUMANN AI CALCOLATORI MODERNI

Il modello teorico costituito dalla Macchina di Von Neumann influenzò direttamente la realizzazione di due fra i primi computer: l’ENIAC (Electronic Numerical Integrator and Computer) e l’EDVAC (Electronic Discrete Variable Automatic Computer)

Page 116: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

DA ZUSE A ENIAC

Page 117: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

DOPO ENIAC

EDVAC: primo computer con programmi in memoria 1948: primo computer commerciale (UNIVAC) 1954: primo computer a transistors (Bell Labs) ~1960: valvole sostituite da transistors 1971: primo microprocessore (Intel 4004) 1975: primo microcomputer (Altair) 1975: fondazione di Microsoft 1976: Apple I e Apple II 1979: primo Spreadsheet (VisiCalc)

Page 118: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

LETTURE

Ciotti e Roncaglia, Capitolo 2 Macchina di Turing applets

http://www.warthman.com/ex-turing.htm http://wap03.informatik.fh-wiesbaden.de/weber1/t

uring/tm.html Storia dell’Informatica

http://www.dimi.uniud.it/~cicloinf/mostra/index.html Wikipedia

Page 119: INFORMATICA UMANISTICA B 2: ARCHITETTURA DEI CALCOLATORI massimo.poesio@unitn.it

RINGRAZIAMENTI

Parte del materiale proviene da: Corso di Informatica Umanistica 2004/05 (Cuel /

Ferrario) Corso di IU di Fabio Ciotti (Roma) Corso di Informatica di Jeremy Sproston (Torino)


Top Related