• Non ci sono risultati.

Architettura dei calcolatori

N/A
N/A
Protected

Academic year: 2022

Condividi "Architettura dei calcolatori"

Copied!
69
0
0

Testo completo

(1)

Architettura dei calcolatori

Mentre… ENIAC è dotato di 18.000 tubi a vuoto e pesa 30 tonnellate, i computer del futuro potranno avere 1000 tubi e pesare, forse, solo mezza tonnellata.

Rivista “Popular Mechanisms” 1949

Architettura degli elaboratori Informatica

(2)

Tipi di calcolatori

Computer multiutente (multiuser)

supercomputer: i più potenti, basati su centinaia o migliaia di processori che lavorano in

parallelo

mainframe e server: svolgono

funzioni centralizzate; ad essi sono

collegati altri computer o terminali

(3)

Tipi di calcolatori

Personal computer

desktop e workstation: computer da scrivania

notebook: computer portatili, di potenza confrontabile a quella di un desktop; in casa e ufficio

possono essere inseriti in una docking station

Architettura degli elaboratori Informatica

(4)

Tipi di calcolatori

Personal computer

palmtop: computer tascabili, hanno tastiere di ridotte

dimensioni

PDA (Personal Digital Assistant): i più piccoli, privi di tastiera,

molto semplici, ad esempio

organizer

(5)

Tipi di calcolatori

Smartphone

Tablet

Architettura degli elaboratori Informatica

(6)

Architettura del calcolatore

Esamineremo la struttura dell’elaboratore, analizzando le funzionalità di ogni suo componente

Vedremo come funzionano i dispositivi che costituiscono la

macchina a un livello intermedio di dettaglio

(7)

Il calcolatore: una macchina per eseguire istruzioni

Un calcolatore può:

 eseguire in maniera deterministica operazioni elementari (istruzioni) per elaborare informazioni

eseguire i passi di un algoritmo

Un calcolatore non può:

 avere volontà propria

 avere immaginazione, intuizione o creatività

 avere senso dell’ironia, delle proporzioni, del decoro o dello humor

 essere vendicativo o crudele

 essere propositivo

Architettura degli elaboratori Informatica

(8)

Architettura del calcolatore

 Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione

elaborazione dati

memorizzazione dati

trasferimento dati

 Per ogni funzione di base si possono prendere in

considerazione i componenti in grado di svolgerla

(9)

Architettura del calcolatore

Elaborazione dati

 Processore (Central Processing Unit - CPU)

Memorizzazione dati

 Memoria principale (o RAM)

 Memoria secondaria (o di massa)

Trasferimento dati

 Dispositivi di input/output

 NB. I dispositivi di memoria secondaria, insieme ai dispositivi di input/output, costituiscono le periferiche del calcolatore.

Architettura degli elaboratori Informatica

(10)

Terminale

Periferiche di input/output

Stampante

(secondarie) Memorie di massa

CPU

Memoria

(centrale)

Bus

Unità centrale

principale

Controller In un computer possiamo

distinguere quattro unità funzionali:

il processore o CPU

la memoria principale

la memoria secondaria

i dispositivi di

input/output

Il processore e la

memoria principale

sono le due

componenti che

costituiscono l’unità

centrale,

in un PC si

trovano sulla scheda

madre (motherboard)

(11)

Il calcolatore: component principali

Architettura degli elaboratori Informatica

(12)

Il calcolatore: la memoria principale

 Fornisce la capacità di

“memorizzare” le informazioni

 È costituita da una lunga sequenza di componenti elementari, ognuna delle quali può contenere

un’unità di informazione (un bit)

 Le componenti elementari sono aggregate tra di loro e formano delle strutture

complesse dette PAROLE o CELLE di memoria

(13)

Il calcolatore: la memoria principale

La memoria può essere vista come una sequenza di celle

Ciascuna celle è caratterizzata da un indirizzo

Gli indirizzi corrispondono all’ordinamento delle parole nella sequenza

Gli indirizzi sono numeri interi (partono da 0)

Architettura degli elaboratori Informatica

(14)

Dimensioni e indirizzi della RAM

Le operazioni che un processore può effettuare sulla memoria sono le operazioni di lettura e scrittura di informazioni nelle celle

Un altro nome con cui viene indicata la memoria principale è memoria RAM (Random Access Memory).

Questa definizione indica che il tempo di accesso (tempo necessario per leggere o scrivere un’informazione in una cella) è lo stesso

indipendentemente dalla posizione della cella

La dimensione di una cella di memoria è, a seconda del tipo di computer, di due, quattro o addirittura otto byte

Per eseguire le operazioni sulla memoria, si deve specificare l’indirizzo della cella su cui si vuole operare

L’indirizzo di una parola è un numero intero positivo e quindi lo si può codificare in binario

(15)

Dimensioni e indirizzi della RAM

Se un calcolatore ha n celle allora gli indirizzi vanno da 0 a n-1

indipendentemente dalla

dimensione della cella Il numero di bit

nell'indirizzo determina il numero massimo di celle indirizzabili

e viceversa

Il numero di parole di memoria determina il numero di bit necessari a rappresentare l’indirizzo:

spazio di indirizzamento

(16)

Dimensioni e indirizzi della RAM

Nei computer attuali le dimensioni tipiche della memoria principale vanno dai 4 ai 16 GB

E’ possibile modificare le dimensioni della memoria perché nella motherboard esistono slot in cui si possono inserire nuove schede di memoria

Le memorie principali dei computer attuali sono molto veloci e i loro tempi di accesso sono di pochi nanosecondi (un miliardesimo di secondo)

La memoria principale perde ogni suo contenuto quando si interrompe l’alimentazione elettrica. Questa caratteristica viene chiamata volatilità

È quindi necessario per conservare le informazioni (programmi e dati) avere altri tipi di memoria che conservano il contenuto anche senza alimentazione elettrica

(17)

Il processore (CPU)

Il processore è la componente dell’unità centrale che fornisce la

capacità di elaborazione delle informazioni contenute nella memoria principale

Le CPU dei PC di oggi sono confezionate in piccole schede quadrate di circa 5 cm x 5 cm (circuito integrato o chip, formato da migliaia di transistor) i cui connettori vengono inseriti in appositi spazi sulla

motherboard.

L’elaborazione avviene in accordo a sequenze di istruzioni (istruzioni macchina)

Il linguaggio in cui si scrivono queste istruzioni viene chiamato linguaggio macchina

Il ruolo del processore è quello di eseguire programmi in linguaggio macchina

Architettura degli elaboratori Informatica

(18)

Il processore (CPU)

(19)

Il processore (CPU)

Le principali componenti del processore sono:

Unità Aritmetico-Logica (ALU)

Unità di Controllo (UC)

I Registri

Generali

Speciali

(20)

L’unità aritmetico-logica (ALU)

L'Unità Aritmetico-Logica (ALU) è costituita da un insieme di circuiti in grado di svolgere le operazioni di tipo

aritmetico e logico (somma di due numeri binari

contenuti in due registri, deposito di un risultato in un registro, confronto tra due numeri…)

La ALU legge i dati contenuti nei registri generali, esegue le operazioni e memorizza il risultato in uno dei registri

generali

 In alcuni elaboratori oltre alla ALU si può avere un

processore specializzato per effettuare operazioni

matematiche particolari, il coprocessore matematico

(21)

Esecuzione di un programma

Architettura degli elaboratori Informatica

Un programma in esecuzione è codificato in binario ed è memorizzato nella memoria principale.

Il processore estrae le istruzioni dalla memoria e le esegue.

 La memoria contiene almeno due tipi di informazioni:

la sequenza di istruzioni che devono essere eseguite dal processore;

l’insieme di dati su cui tali istruzioni operano

Istruzione macchina: un’istruzione codificata in binario (sequenza di bit) riconoscibile ed eseguibile dalla CPU

Linguaggio macchina: l’insieme di tutte le istruzioni macchina eseguibili dalla CPU

(22)

Tipi di istruzioni macchina

Trasferimento di dati:

copiare un dato da una locazione di memoria in un registro o viceversa

Aritmetico/Logico:

usare sequenze di bit per calcolarne delle nuove

Controllo:

dirigere il flusso di esecuzione di un programma

(23)

Eseguire una somma

Per eseguire la somma di due valori memorizzati nella

memoria principale il processore deve eseguire i seguenti passi:

1. Prendi dalla memoria il primo valore e mettilo in un registro 2. Prendi dalla memoria il secondo valore e mettilo in altro

registro

3. Attiva l’ALU facendo eseguire l’addizione tra i valori dei due registri e metti il risultato in un altro registro

4. Trasferisci il risultato in memoria 5. Fine

 Quindi oltre all’attività dell’ALU è necessario anche

coordinare il trasferimento delle informazioni: questo è compito dell’Unità di Controllo.

Architettura degli elaboratori Informatica

(24)

L’unità di controllo

L’Unità di Controllo (UC) si occupa di coordinare le diverse attività del processore

 Il processore svolge la sua attività in modo ciclico: ad ogni ciclo corrisponde l’esecuzione di una istruzione macchina

 Ad ogni ciclo le attività controllate e coordinate dalla UC sono:

lettura dalla memoria principale della prossima istruzione da eseguire;

decodifica dell’istruzione;

esecuzione dell’istruzione.

(25)

I registri

Il processore contiene un certo numero di registri (unità di memoria estremamente veloci)

 Le dimensioni di un registro sono di pochi byte (2, 4, 8)

 I registri contengono delle informazioni di necessità immediata per il processore

Esistono due tipi di registri: speciali, utilizzati dalla UC per scopi particolari e registri di uso generale

 Alcuni registri speciali:

Program Counter: indirizzo della prossima istruzione

Instruction Register: istruzione corrente

Memory Address Register: indirizzo della locazione di memoria interessata alla lettura/scrittura

Memory Data Register: dato letto o da scrivere in una locazione di memoria

Architettura degli elaboratori Informatica

(26)

I registri

 Il processore esegue ad ogni ciclo un’istruzione prelevata dalla RAM, l’indirizzo della parola da cui prelevare la

prossima istruzione è mantenuto nel registro Program Counter (PC)

La dimensione del PC deve essere uguale alla dimensione di un indirizzo di RAM

Il registro Registro delle Istruzioni (IR) contiene l’istruzione attualmente in esecuzione

La dimensione del RI deve essere uguale alla dimensione di

una istruzione (solitamente una o due parole di memoria)

(27)

Il ciclo d’esecuzione

Architettura degli elaboratori Informatica

(28)

MAR MDR

Memory

address register Memory data register

PC

IR

(29)

Una semplice architettura

16 registri generici numerati da 0000 a 1111 di 1 byte

RAM di 256 celle, ciascuna formata da 1 byte

Istruzioni macchina lunghe 2 byte :

Op-code: specifica l’operazione da eseguire

Operandi: argomenti dell’operazione(il numero e l’interpretazione degli operandi dipende dal tipo di operazione)

Operandi e op-code sono codificati in binario

op-code operandi

4 bit 12 bit

(30)

Esempio di istruzione:

ADD R3,R8,R13: Somma il contenuto del registro R8 con il contenuto del registro R13 e mette il risultato nel registro R3.

 In linguaggio macchina:

Si associano all’operazione ADD 4 bit

Si associano 4 bit ad ogni indice di registro

Codice operativo Operandi

0101 0011 1000 1101

Config. in bit

(31)

Architettura degli elaboratori Informatica

Store R5 address A7

Il linguaggio macchina

(32)

bus A0 A1

A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

6C 01

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A0

MAR

MDR

(33)

Esecuzione: fetch - 1ciclo

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A2 156C

6C 01

MAR

MDR

(34)

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A2 156C

6C 01

MAR

MDR

6C

(35)

Esecuzione: execute - 1ciclo

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A2 156C

6C 01

MAR

MDR

6C

01 01

(36)

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A4 166D

MAR

MDR

6C

01 01

(37)

Esecuzione: decode – 2 ciclo

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A4 166D

6D 03

MAR

MDR

6D

01 01

(38)

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A4 166D

6D 03

MAR

MDR

6D 01 03

03

(39)

Esecuzione: fetch – 3 ciclo

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A6 5056

6D 03

MAR

MDR

6D 01 03

03

(40)

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A6 5056

6D 03

MAR

MDR

6D 01 03

03

01 ALU

03

(41)

Esecuzione: execute – 3 ciclo

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A6 5056

6D 03

MAR

MDR

6D 01 03

03

01 ALU

03 04

04

(42)

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A8 306E

6D 03

MAR

MDR

6D 01 03

03

01 ALU

03 04

04

(43)

Esecuzione: decode – 4 ciclo

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A8 306E

6E

MAR

MDR

6E 01 04

03

01 ALU

03 04

04

(44)

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

A8 306E

6E 04

MAR

MDR

6E 01 04

03

01 ALU

03 04

04

(45)

Esecuzione: fetch – 5 ciclo

A0 A1 A2 A3 A4 A5 A6 A7 A8 A9 AA

15 6C 16 6D 50 56 30 6E C0 00

bus

registri CPU R0

R1 R2 R3 R5 R4 R6

PC IR

AA C000

6E 04

MAR

MDR

6E 01 04

03

01 ALU

03 04

04

(46)

Il clock

La frequenza con cui vengono eseguiti i cicli di

esecuzione è scandita da una componente detta clock

 Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di istruzioni macchina

 La velocità di elaborazione di un processore dipende dalla frequenza del suo clock

 I processori attuali hanno valori di frequenza di clock che variano tra i 2.4GHz ai 3.6GHz (miliardi di impulsi al

secondo)

(47)

La memoria cache

Per evitare che il processore debba eseguire frequentemente accessi in RAM è stato introdotto un livello intermedio di memoria tra i registri e la RAM: la memoria cache

 La memoria cache ha dimensioni ridotte (qualche centinaio di KB) ed è più veloce della RAM

 Si distinguono due tipi di cache:

Cache interna: realizzata all’interno dell’UC

Cache esterna: situata sulla scheda madre

Architettura degli elaboratori Informatica

(48)

I dispositivi periferici

I dispositivi periferici (periferiche) permettono di realizzare l'interazione tra l'uomo e la macchina

 La loro funzione primaria è quella di consentire

l'immissione dei dati all'interno dell'elaboratore (input), o l'uscita dei dati dall'elaboratore (output)

 Hanno limitata autonomia rispetto al processore centrale

(sono gestiti, controllati e coordinati dal processore)

(49)

I dispositivi periferici

 Una caratteristica comune a tutti i dispositivi è quella di operare in modo asincrono rispetto al processore:

Consideriamo una tastiera che produce dei dati di input. Il processore non è in grado di prevedere e di controllare il momento in cui un dato di input sarà a disposizione

Allo stesso modo, il processore non può prevedere il momento in cui un dispositivo in output avrà terminato di produrre i dati in uscita

Sono pertanto necessarie delle forme di sincronizzazione tra i dispositivi e il processore

Architettura degli elaboratori Informatica

(50)

I dispositivi periferici

 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

 Le operazioni di sincronizzazione delle attività sono fondamentali nell'interazione tra il processore e i dispositivi

 I dispositivi che hanno terminato un'operazione inviano al

processore un segnale, detto interrupt, per richiedere l'attenzione del processore stesso

(51)

I dispositivi periferici

Ad ogni ciclo di clock, l'unità di controllo, prima di iniziare l'esecuzione della prossima istruzione del programma in corso, verifica se è arrivato un segnale di interrupt da parte di qualche dispositivo

Se non c'è nessun segnale di interrupt il processore prosegue normalmente, altrimenti sospende per un attimo l'esecuzione del programma in esecuzione ed esegue le operazioni richieste dal dispositivo

I vari dispositivi di input/output sono collegati al processore attraverso un bus (un fascio di collegamenti elettrici, solitamente in rame); per ognuno di essi viene inserito un componente hardware, il controller, che gestisce la comunicazione con il dispositivo

Architettura degli elaboratori Informatica

(52)

I dispositivi periferici: comunicazione

Controller: un dispositivo per gestire la comunicazione tra il processore e i dispositivi periferici

Controllori specifici per un particolare tipo di periferico

Controllori “general purpose” (USB)

Porta: punto di connessione tra periferica e computer

Direct memory access (DMA): i periferici in DMA

accedono alla RAM senza dover passare dalla CPU

(53)

I dispositivi periferici: comunicazione

Comunicazione parallela: trasferimento simultaneo di una sequenza di bit

Comunicazione seriale : i bit sono trasferiti in sequenza

Unità di misura

bps: bit per secondo

Kbps: Kilo-bps (1.000 bps)

Mbps: Mega-bps (1.000.000 bps)

Gbps: Giga-bps (1.000.000.000 bps)

Larghezza di banda: massima velocità disponibile

Architettura degli elaboratori Informatica

(54)

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à)

Pertanto, oltre alla memoria principale veloce, volatile, di dimensioni relativamente piccole, i computer hanno una memoria secondaria, più lenta e meno costosa, con

capacità di memorizzazione maggiore ed in grado di

memorizzare i dati in modo permanente

(55)

La memoria secondaria

 La memoria secondaria viene utilizzata per mantenere tutti i programmi e tutti i dati che possono essere utilizzati dal

computer

La memoria secondaria viene anche detta memoria di massa

 Il processore non può utilizzare direttamente la memoria di massa per l'elaborazione dei dati

 Quando si vuole eseguire un programma, questo dovrà essere copiato dalla memoria di massa a quella principale (caricamento)

Architettura degli elaboratori Informatica

(56)

La memoria secondaria

 La memoria secondaria deve avere capacità di memorizzazione permanente e quindi per la sua realizzazione si utilizzano tecnologie basate sul magnetismo (dischi e nastri magnetici), tecnologie basate sull'uso dei raggi laser (dischi ottici) o “memorie a stato solido”

 Le memorie magnetiche sfruttano l’esistenza di sostanze che possono essere magnetizzate. La magnetizzazione può essere di due tipi (positiva e negativa)

 I dischi ottici si basano sull'uso del laser, un particolare tipo di raggio luminoso estremamente focalizzato, che può essere emesso in fasci di dimensioni molto ridotte

 Le memorie a stato solido sono costituite da transistor di una particolare tecnologia, in grado di mantenere la carica elettrica a lungo

(57)

La memoria secondaria

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

Le memorie di massa hanno capacità di memorizzazione (dimensioni) molto maggiori di quelle delle tipiche memorie principali

 Il processore non può utilizzare direttamente la memoria di massa per l'elaborazione dei dati

 Il programma in esecuzione deve essere in memoria principale e quindi le informazioni devono essere trasferite dalla memoria secondaria a quella principale ogni volta che servono

 La memoria principale consente di indirizzare la singola parola (dell’ordine di qualche byte), nelle memorie di massa invece la quantità minima indirizzabile è il blocco dell’ordine di qualche KB.

Architettura degli elaboratori Informatica

(58)

Una classificazione dei dischi magnetici è quella che distingue tra hard disk e floppy disk

Gli hard disk sono dei dischi utilizzati come supporto di memoria secondaria fisso all'interno dell'elaboratore. Hanno capacità di

memorizzazione elevata, si va da circa 250GB per i personal computer più semplici, fino a dischi da 1TB con tempi d’accesso dell’ordine di 10 msec.)

I floppy disk sono di materiale plastico ricoperti da un piccolo strato di sostanza magnetizzabile; sono nati in IBM per registrare le informazioni di manutenzione dei mainframe per il personale e poi usati per distribuire il software. Sono rimovibili. I tempi di accesso sono più alti di quelli dei dischi rigidi. I più comuni sono i floppy disk da 3.5” , con capacità di memorizzazione di 1440 KB.

Oggi sono quasi scomparsi, sostituiti dalle memorie a stato solido.

(59)

La memoria secondaria: dischi magnetici

 Gli hard disk sono dei supporti di plastica o vinile, su cui è depositato del materiale magnetizzabile

 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

Entrambi i lati di un disco possono essere sfruttati per memorizzare le informazioni

Architettura degli elaboratori Informatica

(60)
(61)

La memoria secondaria: dischi magnetici

I dischi sono suddivisi in tracce concentriche e settori, ogni

settore è uno spicchio di disco. I settori suddividono ogni

traccia in porzioni di circonferenza dette blocchi (o record

fisici)

(62)

La memoria secondaria: dischi magnetici

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

Il blocco è la minima unità indirizzabile in un disco magnetico e il suo indirizzo è dato da una coppia di numeri che rappresentano il numero della traccia e il numero del settore; se i piatti sono più di uno, serve un terzo numero per individuare la superficie.

I dischi magnetici consentono l'accesso diretto in quanto

è possibile posizionare direttamente la testina su un

qualunque blocco senza dover leggere quelli precedenti

(63)

La memoria secondaria: dischi magnetici

 Per effettuare un'operazione di lettura (scrittura) su un blocco è necessario che la testina raggiunga l'indirizzo desiderato (la testina è ferma ed è il disco che si muove)

Il tempo di accesso alle informazioni sul disco è dato dalla somma di tre tempi dovuti a:

 spostamento della testina in senso radiale fino a raggiungere la traccia desiderata (seek time);

 attesa che il blocco desiderato si trovi a passare sotto la testina;

tale tempo dipende dalla velocità di rotazione del disco (latency time);

 tempo di lettura vero e proprio dell'informazione

Architettura degli elaboratori Informatica

(64)

La memoria secondaria: dischi ottici

I dischi ottici sono basati sull’uso di un raggio laser per operazioni di lettura

Molte unità per dischi ottici consentono solamente

operazioni di lettura poiché la scrittura è un'operazione

complicata, che richiede delle modifiche fisiche del disco.

Le dimensioni tipiche per i dischi ottici utilizzati oggi vanno dai 500 MB fino a uno o più GB

0 1 1 1 0

FONTE LUMINOSA

(65)

La memoria secondaria: memoria flash

La memoria flash, è una tipologia di memoria a stato solido, quindi non volatile.

 In una memoria flash le informazioni vengono registrate in transistor ad effetto di campo, transistor di una particolare

tecnologia, in grado di mantenere la carica elettrica a lungo.

Ogni transistor costituisce una "cella di memoria" che conserva il valore di un bit.

 Le nuove flash utilizzano delle celle multilivello che permettono di registrare il valore di più bit attraverso un solo transistor.

È usata frequentemente nelle fotocamere digitali, nei lettori di musica portatili, nei cellulari, nei pendrive (chiavette), nei

palmari, nei moderni computer portatili e in molti altri dispositivi che richiedono un'elevata portabilità e una buona capacità di memoria per il salvataggio dei dati.

Architettura degli elaboratori Informatica

(66)

velocità Capacità

registri cache

memoria principale dischi magnetici

~ 1KB

~ 6MB

~ 4GB

~ 500GB

<1ns

~ns

~10ns

~10ms

dischi ottici, nastri, …

~s

Tempi di accesso costi

~ 4.7GB

(67)

Altri dispositivi di input/output

 I più comuni strumenti di interazione tra l'uomo e la macchina sono la tastiera per l’input e il monitor per l’output: due dispositivi

indipendenti

 La tastiera non ha capacità di elaborazione, l'unica cosa che è in grado di fare è di avvertire il processore ogni volta che un

carattere è disponibile in ingresso. Si tratta quindi di un dispositivo di ingresso a carattere

 È compito del sistema operativo quello di prelevare il carattere, depositarlo in una memoria temporanea ed infine, al termine dell'immissione, passare i dati di input raccolti nella memoria temporanea al programma cui erano destinati

Architettura degli elaboratori Informatica

(68)

I dispositivi di input/output

 La tastiera è un dispositivo di input cieco, nel senso che l'utente non può vedere i dati immessi nel calcolatore

 Per questa ragione la tastiera è utilizzata insieme ad un dispositivo di output su cui vengono visualizzate le informazioni fornite tramite tastiera

 La tastiera e il video non sono direttamente collegati tra

loro: è compito del sistema operativo fare in modo che

tutte le informazioni fornite in input tramite la tastiera

siano riprodotte sul video

(69)

Parametri di un’architettura

Frequenza del clock (velocità del processore, influenza tempo di esecuzione delle istruzioni elementari) 2.4-3.6 GHz

Numero dei registri: 8-64

Dimensione del bus: 32/64 bit

Quantità di RAM: 4-8-16 GByte

Quantità di memoria cache: 2-6 MByte

Spazio di indirizzamento (espandibilità della RAM): 32/64 bit

Capacità dell’hard disk: 250:500 GByte

Velocità del bus: 66:133 MHz

Architettura degli elaboratori Informatica

Riferimenti

Documenti correlati

A partire dalla data di stipula del contratto, è previsto un periodo di presa in carico dei servizi oggetto della fornitura della durata massima di due mesi effettuato in

Livello descrittivo: gli allievi sono in grado di riconoscere le figure e di caratterizzarle in base alle loro proprietà geometriche, le sanno denominare. Livello razionale:

Chiamata di sistema open Marco Lapegna – Laboratorio di Programmazione 2 memoria secondaria e f.s. oflag può assumere diversi valori (definiti

sua divisione in due cellule, tempo caratteristico della specie e delle condizioni colturali..

Si aggiunga alla classe ArrayStack (implementa l’interfaccia Stack usando un array) il metodo Stack clone() che restituisce un nuovo stack avente lo stesso contenuto dello stack...

• hanno periodo molto lungo e scarse corre- lazioni;. • pi` u successioni indipendenti con la

Nel caso di dispositivi magnetici (nastri o dischi) l’informazione è presente in memoria come stato di magnetizzazione, che può essere positivo o negativo

• I dati in memoria secondaria possono essere utilizzati solo se prima trasferiti in memoria principale... Memoria principale e