INFORMATICA INDICE CAP. 3.1 HARDWARE: CPU E RAM. Gianfranco Bentivoglio CAP HARDWARE: CPU E MEMORIA

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "INFORMATICA INDICE CAP. 3.1 HARDWARE: CPU E RAM. Gianfranco Bentivoglio CAP. 3.1 - HARDWARE: CPU E MEMORIA"

Transcript

1 Gianfranco Bentivoglio INFORMATICA INDICE L ELABORATORE 6 IL CALCOLATORE IDEALE : UNO SCHEMA FUNZIONALE 6 PIÙ LIVELLI DI MEMORIA 8 IL COMPUTER REALE 10 IL PERSONAL COMPUTER 12 IL BUS DI SISTEMA 14 ASPETTI CARATTERISTICI DEL BUS DI SISTEMA 16 ASPETTI CARATTERISTICI DEL BUS DI SISTEMA (SEGUE) 18 L UNITÀ DI ELABORAZIONE: LA CPU 20 LA TECNOLOGIA 20 CARATTERISTICHE DELLA CPU 22 L ARCHITETTURA INTERNA DELLA CPU 24 ASPETTI CHE DETERMINANO LE PRESTAZIONI 26 IL CLOCK DI SISTEMA 30 ARCHITETTURA CISC VS. RISC 32 LA FAMIGLIA INTEL 80X86 34 L INDICE ICOMP 36 LA MEMORIA CENTRALE 38 CARATTERISTICHE DELLA MEMORIA CENTRALE 40 LE TECNOLOGIE COSTRUTTIVE DELLA RAM 42 READ ONLY MEMORY 44 SUPERARE I LIMITI DEL BUS: IL BUS LOCALE 46 LA CACHE: OVVERO ACCELERARE L ACCESSO ALLA MEMORIA 48 UN APPROFONDIMENTO SUL FUNZIONAMENTO DI CPU E MEMORIA 50 OPERAZIONE DI LETTURA DEL DATO: READ 50 OPERAZIONE DI SCRITTURA DEL DATO: WRITE 52 UN ESEMPIO DI FUNZIONAMENTO DELLA CPU 54 IL PC ALL INTERNO 56 CAP. 3.1 HARDWARE: CPU E RAM D ISPENSE AD USO DEGLI STUDENTI DEL CORSO DI GESTIONE INFORMATICA DEI DATI AZIENDALI Nome file CAP. 3.1-HW CPU E RAM REV. 2.DOC Agg. al: Totale Pagine 15/01/05 54 PAG. 3.4

2 IL CALCOLATORE IDEALE UNO SCHEMA FUNZIONALE CPU L ELABORATORE Abbiamo già visto nel capitolo introduttivo come l elaboratore sia: "la macchina elettronica su cui si codificano e si elaborano le informazioni". In questo capitolo, pur analizzando in dettaglio l architettura di un particolare tipo di elaboratore, il "personal computer", tratteremo degli aspetti tecnologici e funzionali comuni alla maggior parte dei computer. IL CALCOLATORE IDEALE : UNO SCHEMA FUNZIONALE INGRESSO UNITÀ CENTRALE DI ELABORAZIONE BUS MEMORIA USCITA Lo schema funzionale di un calcolatore si basa ancora oggi su un modello teorizzato da Von Neumann nel lontano 45, definito anche a programma memorizzato. Nello schema a fianco possiamo individuare i 4 blocchi funzionali del modello: MEMORIA indica il componente che ha il compito di memorizzare i dati oggetto dell elaborazione e, aspetto caratterizzante del modello, i programmi che controllano l elaborazione stessa. UNITÀ CENTRALE DI ELABORAZIONE chiamata anche processore o CPU (Central Processing Unit), identifica il componente che, eseguendo le istruzioni contenute nei programmi, effettua una opportuna trasformazione dei dati in ingresso fino ad produrre i risultati attesi. Oltre all elaborazione delle istruzioni, la CPU ha anche il compito di controllare il funzionamento di tutti gli altri componenti del computer in modo che si comportino secondo quanto previsto dalle istruzioni stesse (funzione di controllo ). INGRESSO/ USCITA ( INPUT/OUTPUT ): individua i dispositivi attraverso cui vengono immessi nell elaboratore dati e programmi ( dispositivi input ) e mediante i quali il computer può comunicare all esterno i risultati di una elaborazione ( dispositivi output ). In altre parole questi dispositivi, assumendo le forme più idonee per favorire l interazione uomomacchina, consentono ad un utente di interagire con l elaboratore. BUS: è così chiamato quel componente che connette tutti gli altri e- lementi, consentendo loro di scambiarsi i dati e le istruzioni e permettendo alla CPU la funzione di controllo sui componenti. DATI ISTRUZIONI PAG. 3.6

3 PIÙ LIVELLI DI MEMORIA CPU VELOCITÀ MEMORIA VELOCITÀ ECONOMICITÀ NON VOLATILITÀ CAPACITÀ TRASPORTABILITÀ PIÙ LIVELLI DI MEMORIA Se ci si focalizza sugli aspetti essenziali del modello appena visto (trascurando cioè il BUS ed i DISPOSITIVI DI INPUT/OUTPUT), si può dire che il computer teorico (teorico forse oggi, ma magari realizzabile tra non molti anni), è composto da due elementi principali: una CPU che, con una elevata velocità, è in grado di accedere ai dati contenuti nella memoria e di elaborarli sulla base delle istruzioni contenute nei programmi (anch'essi residenti in memoria); una MEMORIA in cui sono memorizzati i dati ed i programmi. In particolare la memoria dovrebbe avere questi cinque requisiti: 1. velocità (nel memorizzare o reperire i dati); 2. capacità dovrebbe poter memorizzare grosse quantità di dati); 3. economicità (dovrebbe costare poco); 4. non volatilità (dovrebbe mantenere in memoria i dati, anche in assenza di alimentazione): 5. trasportabilità (nel senso di permettere il trasferimento dei dati memorizzati tra diversi computer). Tuttavia l attuale tecnologia, mentre ha reso disponibile una CPU con siffatte caratteristiche, non è riuscita a fornire una MEMORIA dotata dei requisiti richiesti (che magari sarà realizzata tra non molti anni). Questo fatto ha costretto i progettisti a realizzare computer, utilizzando una architettura basata su più livelli di memoria: una memoria centrale (RAM), realizzata con una tecnologia elettronica che garantisce una elevata velocità, ma costosa e non in grado di mantenere i dati memorizzati quando il computer viene spento ( volatile ); più tipologie di memorie secondarie o di massa, realizzate con tecnologia magnetica o ottica, poco costose, capaci di mantenere i dati nel tempo anche in assenza di alimentazione, con una capacità centinaia di volte maggiore della RAM; inoltre alcuni tipi di memorie di massa sono anche trasportabili, anche se poi questa caratteristica è a scapito della velocità. PAG. 3.8

4 IL COMPUTER REALE CPU UNITÀ CENTRALE DI ELABORAZIONE MEMORIA CENTRALE (RAM) DATI ISTRUZIONI MEMORIA DI MASSA HARD DISK FLOPPY IL COMPUTER REALE La memoria centrale (RAM), seppure molto veloce, è volatile (ovvero mantiene i dati solo fintantoché è alimentata) e quindi, anche disponendo di una grossa quantità di memoria, ne perderemmo il contenuto nel momento in cui il nostro elaboratore venisse spento. Inoltre tale memoria è anche molto costosa: quindi non si può pensare di utilizzarla per conservare nel tempo grosse quantità di dati e programmi (alcuni dei quali magari poco utilizzati). Le memorie di massa sono enormemente più lente rispetto alla memoria centrale: tale lentezza è dovuta essenzialmente al fatto che mentre la memoria centrale è di tipo elettronico (con tempi di accesso dell ordine dei nanosecondi), le memorie di massa utilizzano dei componenti elettromeccanici (in cui i tempi sono dell ordine dei millisecondi, ovvero un milione di volte più lenti) 1. Se vogliamo garantire una elaborazione efficiente tra la CPU (che utilizzando le più avanzate tecnologie elettroniche, ha una velocità di elaborazione dell ordine nanosecondi) e la memoria, dobbiamo realizzare uno schema di funzionamento in cui: il processore accede solo alla memoria centrale (RAM), l unica ad a- vere una velocità paragonabile alla CPU; il processore non accede mai direttamente ai dati memorizzati sulle le memorie di massa ma, prima di essere elaborati, tali dati devono essere trasferiti dalla memoria di massa alla memoria centrale; viceversa, poiché la memoria centrale è volatile, i dati presenti nella RAM, per la loro conservazione nel tempo, devono essere trasferiti sulle memorie di massa. In altre parole l idea è quella di mantenere dati e programmi nella memoria di massa, fintantoché non devono essere utilizzati. Dopo aver acceso computer, i dati ed i programmi da elaborare saranno caricati nella memoria centrale, l'unica tipologia di memoria a cui il processore può accedere. Al termine dell elaborazione, i dati saranno salvati sulla memoria di massa per la loro conservazione a computer spento. 1 Far convivere sullo stesso sistema due tipi di memoria, con velocità così diverse, creando degli schemi di sincronizzazione ed efficaci meccanismi di trasferimento dei dati, è uno dei più grossi problemi che i progettisti di sistemi hanno dovuto risolvere. PAG. 3.10

5 IL PERSONAL COMPUTER OUTPUT IL PERSONAL COMPUTER Nelle pagine seguenti affronteremo lo studio di un particolare tipo di elaboratore, il personal computer che, grazie al fatto di avere un costo relativamente basso, è diventato di fatto il tipo di elaboratore più diffuso e quindi anche il più usato. Peraltro la scelta di focalizzare il nostro studio su un particolare tipo di computer, non è in nessun modo penalizzante per quello che riguarda la finalità didattica: anzi, la scelta di indirizzare lo studio verso una macchina ormai alla portata di tutti, basata su una architettura tutto sommato semplice (e quindi facile da utilizzare per fini didattici), non può che aiutare il lettore nella comprensione di quanto verrà illustrato. CPU MEMORIA INPUT Nei prossimi paragrafi analizzeremo i singoli componenti che costituiscono la cosiddetta UNITÀ CENTRALE di un generico personal computer: il bus di sistema, la CPU, la memoria centrale, le memoria di massa, e i DISPOSITIVI DI INPUT/OUTPUT (chiamati anche dispositivi periferici ) che ne permettono l utilizzo: il monitor, la tastiera, il mouse, la stampante, lo scanner, il plotter, il digitizer, il lettore di bar code ed il lettore di badge, le schede PCMCIA, il modem. PAG. 3.12

6 ARCHITETTURA A BUS PROCESSORE CPU TASTIERA RAM BUS DI SISTEMA VIDEO MEMORIA HARD DISK PRINTER INPUT/OUTPUT IL BUS DI SISTEMA Uno dei problemi che i progettisti hanno dovuto affrontare nella realizzazione del personal computer, è stato quello di trovare un sistema per interconnettere le varie parti del computer, in modo che potessero comunicare tra di loro. Una prima soluzione ipotizzata è stata quella di realizzare dei singoli collegamenti elettrici per connettere tra loro le diverse componenti. Questa scelta, se da una parte avrebbe semplificato il progetto iniziale, dall altra avrebbe fortemente limitato ogni successiva possibilità di crescita. Infatti la struttura iniziale sarebbe risultata cristallizzata e mal si sarebbe prestata a modifiche come, ad esempio, l inserimento di una nuova scheda hardware. I progettisti, per fare in modo che ogni componente, anche se installato in un secondo tempo potesse parlare con ogni altro, hanno messo a punto una soluzione chiamata: ARCHITETTURA A BUS In questo modello tutte le componenti del computer non sono collegate tra loro come nel primo caso, ma si interfacciano verso il bus di sistema, in base a regole di collegamento ben definite. In questo modo è possibile aggiungere, anche in un momento successivo, una nuova scheda: purché dotata di una opportuna interfaccia fisica che si adatti al bus; e purché rispetti le regole di colloquio utilizzate da tutti di altri sottosistemi connessi al bus. Una volta che la scheda è stata inserita nei connettori del bus stesso, può comunicare con gli altri componenti del personal computer, inclusa la memoria ed il processore. La scelta progettuale di utilizzare sul personal computer una architettura a bus, è stata proposta dall IBM sul suo primo personal computer. L'importanza del costruttore ed il fatto che l IBM abbia rese pubbliche le specifiche tecniche del bus utilizzato, ha fatto sì che in brevissimo tempo questo bus diventasse uno standard di mercato. In un secondo momento,basandosi su questo standard, altre società hanno avuto la possibilità di produrre una miriade di dispositivi aggiuntivi, che si potevano connettere con molta facilità. Tutto questo ha permesso di ampliare il mercato stesso, creando quella situazione di concorrenza che tanto ha contribuito al successivo abbassamento dei prezzi e alla diffusione del personal computer che oggi conosciamo. Nello schema a fianco, vediamo lo schema semplificato di un personal computer, in cui tutti i principali componenti sono collegati al bus, e attraverso questo si scambiano i segnali. PAG. 3.14

7 IL BUS DI SISTEMA B U S DATI (1 N) INDIRIZZI (1 N) CONTROLLO ASPETTI CARATTERISTICI DEL BUS DI SISTEMA Il bus di sistema, che collega tra loro il processore, la memoria e le unità di ingresso/uscita presenti nel personal computer, è sempre sotto il controllo del processore che detta le regole in base alle quali, tutti gli altri dispositivi connessi, possono utilizzare il bus stesso. Si dice che il processore esercita il ruolo di master e le altre unità funzionali (che entrano in funzione solo se sono selezionate dal processore) il ruolo di slave. Fisicamente il bus è costituito da un insieme di connessioni elettriche (o linee) lungo le quali vengono trasferiti i dati o i segnali di controllo. A seconda del tipo di segnale trasportato, le linee del bus vengono suddivise in tre categorie: linee per il trasporto dei dati: sono bidirezionali, nel senso che i dati che passano attraverso queste linee possono andare dal master allo slave e viceversa; inoltre, la presenza di più linee (ciascuna dedicata al trasporto di 1 bit) consente il trasferimento dei dati in parallelo ; linee per il trasporto degli indirizzi: come vedremo meglio parlando della memoria centrale, questo gruppo di linee (unidirezionali) permettono alla CPU di selezionare una specifica locazione di memoria per una operazione di lettura/scrittura; linee per il trasporto de segnali di controllo: permettono di trasferire i segnali di controllo dal master all unità slave e viceversa. Nel valutare le gli aspetti caratteristici di un bus, gli elementi da evidenziare sono: 1. LA VELOCITÀ CON CUI RIESCE A TRASMETTERE I DATI Durante ogni operazione di trasferimento dati, è necessario che il bus sia dedicato a quel collegamento, per tutto il tempo necessario a completare il trasferimento. Tanto minore è questo tempo, tanto maggiore sarà la velocità del bus. E facilmente comprensibile come la velocità con cui riesce a trasmettere i dati sia uno degli aspetti più significativi del bus. Tal parametro assume oggi una maggiore importanza in quanto gli attuali sistemi, basati su interfacce grafiche, scambiano enormi quantità di bit. 2. IL NUMERO DI LINEE UTILIZZATE PER I DATI Sulle linee per i dati transitano in parallelo le informazioni tra il processore e l unità collegata in quel momento; questo significa che il numero di linee utilizzate ci dà una misura della capacità di trasferimento di dati da parte del bus. Paragonando i dati ad un liquido che fluisce attraverso una condotta (il bus), il numero di linee equivarrebbe al diametro della condotta. Maggiore è il numero di linee e maggiore sarà la quantità di dati (a parità di velocità del bus) che potranno fluire verso il processore per essere elaborati. PAG. 3.16

8 ELEMENTI DI VALUTAZIONE DEL BUS LA VELOCITÀ CON CUI RIESCE A TRASMETTERE I DATI IL NUMERO DI LINEE UTILIZZATE PER I DATI IL NUMERO DI LINEE UTILIZZATE PER GLI INDIRIZZI IL FATTO DI ESSERE STANDARD ASPETTI CARATTERISTICI DEL BUS DI SISTEMA (SEGUE) 3. IL NUMERO DI LINEE UTILIZZATE PER GLI INDIRIZZI Un discorso analogo vale per le linee degli indirizzi: in questo caso però, ad un maggiore numero di linee corrisponderà una maggiore capacità di indirizzamento e quindi, in definitiva, la possibilità di poter indirizzare una maggiore quantità di memoria. IL FATTO DI ESSERE STANDARD : I PRO ED I CONTRO L architettura a bus, rappresentando uno standard de facto riconosciuto dal mercato, ha avuto il grosso merito di permettere l'installazione di una scheda aggiuntiva sul nostro computer, in modo semplice anche in tempi successivi all acquisto. Per contro, nel momento in cui l'evoluzione tecnologica ha portato alla necessità di utilizzare nuovi bus in grado di supportare componenti con velocità sempre maggiori, il fatto di avere uno standard accettato e diffuso, ha rischiato di diventare un grosso vincolo per l evoluzione tecnologica stessa (lo vedremo meglio parlando del bus aggiuntivo ). UN PO DI STORIA Di seguito sono indicati i principali bus che negli anni sono stati utilizzati sui personal computer: Tra questi, i bus che hanno rappresentato un effettivo standard di mercato sono stati il bus ISA ed il bus PCI. S100: utilizzato da uno dei primi personal, l Altair; PC XT - 81: è il bus che l IBM progettò per il suo primo Personal Computer PC-AT - 85 (chiamato anche ISA - Industry Standard Architecture): è stato un evoluzione del precedente ed è praticamente il bus che ancora oggi troviamo sui nostri personal computer. MCA - 87 (Micro Channel Architecture) Nell ottica di IBM, questo sarebbe dovuto essere il successore del bus ISA. Benché presentasse notevoli miglioramenti, la non compatibilità con il bus ISA, e soprattutto la richiesta di pagamento di royalties da parte di IBM, ne limitarono moltissimo la diffusione. EISA - 88 (Extended ISA) Proprio per contrastare i progetti egemonici di IBM, alcuni produttori svilupparono un architettura alternativa a MCA, che aveva il grosso vantaggio di essere compatibile con il precedente standard ISA. PCI - 91 Mentre si discuteva su quale dei due, MCA o EISA, avrebbe sostituito il bus ISA, INTEL realizzo il PCI, un bus aggiuntivo su cui collegare i dispositivi che avevano maggiori necessità di scambiarsi dat. PAG. 3.18

9 UNITÀ DI ELABORAZIONE (CPU: CENTRAL PROCESSING UNIT) La CPU è il dispositivo hardware in grado di leggere, decodificare, eseguire le istruzioni prelevate dalla memoria e che governa il funzionamento delle varie parti costituenti il computer Fisicamente la CPU è un particolare CIRCUITO INTEGRATO ad altissima integrazione (VLSI), chiamato anche MICROPROCESSORE L UNITÀ DI ELABORAZIONE: LA CPU La CPU Central Processing Unit (unità centrale di elaborazione) o processore, è il componente che più di tutti gli altri caratterizza meglio il personal computer, sia sotto l aspetto delle prestazioni che della capacità elaborativa. Più precisamente possiamo definire la CPU come La cpu è il dispositivo hardware in grado di: leggere, decodificare, eseguire le istruzioni prelevate dalla memoria (programma) governare il funzionamento delle varie parti costituenti il computer Ogni CPU è strutturata per eseguire un programma sulla base dei seguenti principi: le istruzioni vengono eseguite in modo sequenziale; particolari istruzioni di salto permettono di modificare la sequenzialità dell esecuzione; le istruzioni ed i dati che la CPU elabora vengono prelevati dalla RAM (memoria centrale), l unico livello di memoria a cui può accedere. Inoltre è compito della CPU sincronizzare il funzionamento del bus e di tutti gli altri dispositivi in modo da garantire una corretta esecuzione delle istruzioni. LA TECNOLOGIA Se in passato la CPU era composta da più circuiti integrati, ognuno capace di svolgere una ben determinata funzione, oggi è realizzata con le più sofisticate tecnologie elettroniche ed è costituita da un unico circuito integrato, chiamato anche microprocessore In termini tecnologici, il microprocessore, sia per il progetto dell architettura interna, sia per i livelli di integrazione raggiunti, rappresenta quanto di più avanzato l uomo ha prodotto nel settore della microelettronica. Nelle pagine seguenti descriveremo in dettaglio la struttura della CPU, focalizzando l attenzione sulle caratteristiche più importanti al fine di valutarne le prestazioni. PAG. 3.20

10 CARATTERISTICHE DELLA CPU CARATTERISTICHE DELLA CPU Nella valutazione di una CPU, ci sono due aspetti fondamentali da tener presente. ARCHITETTURA SET DI ISTRUZIONI ( FAMIGLIA 8080 INTEL) PARALLELISMO COOPROCESSORE MATEMATICO PENTIUM Il primo è legato all architettura interna, che caratterizza in maniera precisa ogni CPU e in particolare: definisce il set di istruzioni che è in grado di decodificare ed eseguire, rappresenta il primo parametro da prendere in esame per valutarne la potenza di calcolo. Poiché all'architettura interna è collegato il set di istruzioni, è importante avere un criterio per capire se due CPU, aventi architetture diverse, siano in grado di eseguire lo stesso set di istruzioni. Questo criterio è la compatibilità: date due diverse CPU, la seconda viene definita compatibile con la prima, se la seconda è in grado di eseguire anche il set di istruzioni della prima. 400 MHZ VELOCITÀ FREQUENZA DI FUNZIONAMENTO CPU SCALARI E SUPERSCALARI Il secondo importante elemento di valutazione della potenza elaborativa di una CPU è rappresentato dalla velocità con cui vengono eseguite le istruzioni. L esecuzione delle istruzioni è scandita dagli impulsi di un particolare orologio interno (clock di sistema): maggiore è il numero degli impulsi per secondo, maggiore è il numero di istruzioni eseguite e quindi, in definitiva, la velocità con cui la CPU esegue le istruzioni. Ovviamente un confronto sulla velocità può essere fatto solo tra CPU aventi la stessa architettura. In questo senso (a parità di architettura) una CPU funzionante a 1,6 GHz effettuerà le elaborazioni ad una velocità doppia rispetto ad una CPU operante a 800 MHz. Nelle moderne CPU, la frequenza degli impulsi generati dal clock di sistema è elevatissima, e supera il miliardo di cicli al secondo. Il parametro che misura la velocità (come sarà illustrato più avanti) è la frequenza di funzionamento che si misura in Hertz (Hz) o meglio in: MHz (1 megahertz=1 milione di cicli al secondo) GHz (1 gigahertz= 1 miliardo di cicli al secondo). PAG. 3.22

11 CPU: COME È FATTA CONTROL UNIT CONTROL BUS ALU REGISTRI ADDRESS BUS BUS DI SISTEMA DATA BUS CONTROL UNIT: DECODIFICA LE ISTRUZIONI E GOVERNA LA CPU ALU (UNITÀ ARITMETICA E LOGICA): ESEGUE LE OPERAZIONI ARITMETICHE E LOGICHE REGISTRI: LOCAZIONI DI MEMORIA, SITUATE ALL' INTERNO DELLA CPU, SPECIALIZZATE PER PARTICOLARI FUNZIONI L ARCHITETTURA INTERNA DELLA CPU Quella che ora esaminiamo è l architettura interna di una CPU ideale, in cui sono stati evidenziati i componenti circuitali più significativi, soprattutto dal punto di vista della funzionalità: CONTROL UNIT: è il componente che, governando e coordinando le attività degli altri componenti della CPU stessa, ha il compito di decodificare le istruzioni e garantirne l esecuzione; ALU (Unità Aritmetica e Logica): è il componente della CPU specializzato nell esecuzione di operazioni aritmetiche e logiche. REGISTRI: i registri sono delle speciali locazioni di memoria situate all interno della CPU. Tipicamente i registri hanno una dimensione di pochi byte e vengono usati per mantenere i dati su cui sta operando la CPU e per trasferire i dati attraverso il bus. Alcuni registri particolarmente importanti sono: INSTRUCTION REGISTER (IC): in questo registro viene caricata l istruzione prelevata dalla memoria: qui i circuiti della CONTROL UNIT provvedono a decodificarla, governando poi i singoli componenti affinché venga eseguita correttamente. PROGRAM COUNTER (PC): questo registro contiene l indirizzo della successiva istruzione che deve essere prelevata dalla memoria per essere eseguita. All inizio dell esecuzione di un programma, nel PC viene caricato l indirizzo della prima istruzione; ad ogni ciclo il valore del PC viene modificato in modo da contenere l indirizzo della istruzione successiva. ACCUMULATORE: è un registro di lavoro attraverso cui transitano i dati provenienti dalla memoria. Tutte le operazioni aritmetiche e logiche vengono eseguite con l ausilio di questo registro. LE FASI DEL PROCESSO DI ELABORAZIONE L'esecuzione di una istruzione avviene attraverso i seguenti tre passi: I. RICERCA (FETCHING): in questa prima fase la CPU preleva dalla memoria, all indirizzo specificato dal PROGRAM COUNTER (PC), l'istruzione che deve eseguire e la carica sull INSTRUCTION REGISTER (IR). II. DECODIFICA (DECODING): i circuiti della control unit (instruction decoder) decodificano l'istruzione che trovano sull INSTRUCTION REGISTER (IR) e predispongono la sequenza delle singole operazioni necessarie all'esecuzione III. ESECUZIONE (EXECUTING): l'istruzione viene eseguita; se necessario si utilizza l ALU per l'esecuzione di un eventuale calcolo e si accede nuovamente alla memoria per leggere/scrivere dati mediante il registro AC- CUMULATORE. Nell esecuzione di un programma questi 3 passi vengono ripetuti fino al termine della sua esecuzione. PAG. 3.24

12 LE PRESTAZIONI DELLA CPU IL SET DI ISTRUZIONI CHE È IN GRADO DI ESEGUIRE POTENZA ELABORATIVA DELL ALU NELLA ESECUZIONE DI OPERAZIONI MATEMATICHE (CON NUMERI REALI) CONTROL UNIT CONTROL BUS ALU REGISTRI ADDRESS BUS BUS DI SISTEMA DATA BUS IL NUMERO DI BIT CHE LA CPU "TRATTA" (OVVERO È IN GRADO DI ELABORARE) IN OGNI ISTANTE, INDIVIDUA IVIDUA IL GRADO DI PARALLELISMO DELLA CPU ASPETTI CHE DETERMINANO LE PRESTAZIONI In base all architettura interna (anche se semplificata) di una CPU, esaminiamo ora gli aspetti che ne determinano le maggiori o minori prestazioni. Il primo aspetto da prendere in considerazione, è relativo al set di istruzioni che la CPU è in grado di eseguire. In genere si può dire che maggiore è il numero di istruzioni, maggiore è la potenza elaborativa; ovviamente non conta la numerosità delle istruzioni in quanto tale, ma è importante valutare come eventuali istruzioni aggiuntive possono migliorare le prestazioni della CPU (ad es. nell esecuzione di calcoli complessi). Per contro bisogna dire che, di norma, istruzioni più complesse significano tempi di esecuzione più lunghi: e questo, come vedremo più avanti, ha fatto nascere due filosofie progettuali: una (CISC) che privilegia CPU dotate di istruzioni complesse anche se meno veloci, l'altra (RISC) che privilegia CPU dotate di istruzioni veloci, anche se meno potenti. Il secondo aspetto è il grado di parallelismo della CPU, ovvero la quantità di informazione (=il numero di bit) che è in grado di e- laborare nell'unità di tempo. Più precisamente si parla di: parallelismo interno, per indicare il n. di bit ( ) che i registri interni e l ALU sono in grado di elaborare ad ogni ciclo di clock; parallelismo esterno, per indicare il numero delle linee con cui la CPU si collega al bus ( data bus ), che coincide con il n. di bit che la CPU è in grado di trasferire nell'unità di tempo attraverso il bus di sistema. È abbastanza evidente che, tanto maggiore è il grado di parallelismo, tanto più numerosi sono i bit manipolati nell'unità di tempo e, in definitiva, tanto più potente è la CPU. La situazione ottimale sarebbe poi quella di un sistema in cui il numero di bit che la CPU trasferisce attraverso il bus, sia anche quello PAG. 3.26

13 che poi riesce ad elaborare internamente. Ed in effetti questa è stata la situazione di partenza per molti sistemi; ad esempio il primo processore praticamente utilizzato, l Intel 8080, aveva sia i registri interni che il data bus a 8 bit. L evoluzione rapidissima della tecnologia mise rapidamente a disposizione un nuovo processore, l 8086, con caratteristiche migliorate, ed in particolare, con una capacità di trattamento dei dati doppia (parallelismo interno a 16 bit). Per sfruttare appieno le caratteristiche della nuova CPU i tecnici avrebbero dovuto riprogettare tutta la circuiteria della scheda madre (in particolare il bus di sistema), per farla funzionare a 16 bit (come il nuovo processore). Questo avrebbe significato dei costi di progetto enormi. Per evitare ai costruttori di personal computer di dover riprogettare tutto il sistema, Intel, oltre all 8086 presentò un secondo processore, l 8088, in cui internamente la capacità di trattamento dei dati era effettivamente raddoppiata (parallelismo interno a 16 bit), mentre verso il bus dati manteneva lo stesso numero di linee (parallelismo esterno a 8 bit). Questa situazione, che in seguito si è ripetuta con altre CPU, rappresenta uno dei tanti esempi di compromessi, tra prestazioni ed economicità di progetto, a cui l'informatica ci ha da tempo abituati. che differenziava due CPU, (identiche per tutti gli altri aspetti, come 486 DX e 486 SX), sulle ultime (ad es. Pentium) la FPU è diventata un elemento integrato all interno della CPU stessa. E infine importante sottolineare come questo 3 aspetto è molto rilevante laddove si utilizzino applicazioni che richiedono le esecuzioni di complesse operazioni matematiche come: elaborazione di immagini, CAD, videogame in 3D. Il terzo aspetto è strettamente connesso con la capacità di calcolo dell ALU, ovvero il componente che si occupa dell'esecuzione delle operazioni matematiche e logiche. Nelle CPU di prima generazione il numero di operazioni che l ALU era in grado di eseguire era abbastanza limitato (addirittura, sulle prime CPU, si limitava alla sola addizione); le altre funzioni matematiche (in particolare i calcoli con i numeri reali, detti anche in virgola mobile ), quando servivano, venivano realizzate mediante appositi programmi. Per potenziare questa limitata capacità di calcolo, in passato si usava affiancare all ALU una particolare circuiteria chiamata: floating point unit (FPU) o coprocessore matematico in grado di eseguire numerose e complesse operazioni matematiche, direttamente via hardware e in parallelo rispetto alla CPU stessa. Mentre in passato il coprocessore matematico era un optional che bisognava acquistare a parte (Intel 386) oppure era l'elemento PAG. 3.28

14 CICLO (ad es. 1 nanosec) IL CLOCK DI SISTEMA 1 SECONDO FREQUENZA = 1 GHZ (IL N. DI CICLI IN UN SEC) IL CICLO È IL MINIMO INTERVALLO DI TEMPO SCANDITO DALLO SPECIALE OROLOGIO INTERNO (CLOCK DI SISTEMA) LA FREQUENZA DI FUNZIONAMENTO (SI MISURA IN HZ) INDICA QUANTI CICLI CI SONO IN UN SECONDO A PARITÀ DI ARCHITETTURA LA VELOCITÀ DI UNA CPU DIPENDE DALLA FREQUENZA DI CLOCK DI SISTEMA CON CPU AVENTI ARCHITETTURE DIVERSE BISOGNA TENERE CONTO DI QUANTI CICLI SONO NECESSARI PER L'ESECUZIONE DELL'ISTRUZIONE IL CLOCK DI SISTEMA Uno speciale orologio interno, chiamato clock di sistema, genera impulsi a intervalli di tempo costante (chiamati anche cicli ), che permettono la sincronizzazione di tutte le attività della CPU e quindi del sistema. In prima approssimazione possiamo dire che, in ogni ciclo, la CPU esegue una istruzione. Di conseguenza la velocità di elaborazione di un processore è strettamente collegata con la durata del ciclo: tanto più il ciclo è breve, tante più istruzioni potranno essere eseguite in un secondo e, in definitiva, tanto più veloce sarà la CPU. Ma, per dare un indicazione della velocità della CPU, i costruttori non forniscono la durata del ciclo (che sulle moderne CPU è dell ordine dei nanosecondi) quanto piuttosto il numero cicli eseguiti in un secondo, ovvero la cosiddetta frequenza di funzionamento. La frequenza di funzionamento, che si misura in Hz (hertz), indica quanti cicli vengono scanditi in un secondo. conoscendo la durata del ciclo si può facilmente passare alla frequenza e viceversa, mediante la formula seguente: 1 Sec = Frequenza in Hertz Durata del Ciclo Ad esempio, per un CPU che lavora con un ciclo pari a 1 nanosecondo, avrà una frequenza pari a: 1 / 0, = Hz= 1 GHz. Fin qui si è supposto che la CPU esegua un'istruzione in un ciclo e che pertanto, tanto più breve è il ciclo, tanto più la CPU è veloce. In realtà questo non è sempre vero e, in funzione dell architettura della CPU, possiamo avere una delle tre situazioni seguenti: CPU non scalari: in queste CPU l esecuzione di un istruzione richiede normalmente più di un ciclo (è stata la situazione normale fino al 386 ); inoltre, in funzione della diversa architettura utilizzata, per eseguire la stessa istruzione, una CPU potrebbe impiegare 3 cicli, mentre un altra ne potrebbe impiegare 2. CPU scalari: eseguono un istruzione ogni ciclo di clock (Intel 486 ) CPU superscalari: eseguono più di un istruzione per ogni ciclo di clock (il Pentium esegue mediamente 2 istruzioni). Questo significa che la frequenza del clock è un reale indicatore della velocità di esecuzione delle istruzioni, solo quando si confrontano CPU aventi la stessa architettura (ad esempio, un Pentium III a 800 MHz è sicuramente più veloce di un Pentium III a 500 MHz). Ma il confronto tra CPU a- venti architetture diverse non può essere fatto esclusivamente sulla base della frequenza del clock, in quanto il numero di cicli necessari per eseguire un istruzione potrebbe essere anche molto diverso (ad es., un Pentium (CPU superscalare) a 400 MHz, è più veloce di un Celeron a 500 MHz). PAG. 3.30

15 CISC INFORMATICA CISC VS. RISC CISC (COMPLEX INSTRUCTION ION SET COMPUTER) LA FILOSOFIA PROGETTUALE IL MICROPROCESSORE DEVE DISPORRE DI UN SET DI ISTRUZIONI IL PIÙ AMPIO POSSIBILE, IN MODO DA POTER IMPLEMENTARE UNA FUNZIONE COMPLESSA IN UN COLPO SOLO RICHIEDE: CIRCUITERIA COMPLESSA PIÙ CICLI PER L'ESECUZIONE DI UNA ISTRUZIONE RISC RISC (REDUCED INSTRUCTION SET COMPUTER) LA FILOSOFIA PROGETTUALE IL MICROPROCESSORE È PROGETTATO IN MODO CHE LE ISTRUZIONI NORMALMENTE PIÙ USATE VENGANO ESEGUITE IN UN SOLO CICLO, IMPLEMENTANDO UNA FUNZIONE COMPLESSA CON UNA SEQUENZA DI ISTRUZIONI ELEMENTARI RICHIEDE: SIANO DISPONIBILI MEMORIE DI ELEVATA CAPACITÀ CHE LA CPU POSSA PRELEVARE LE ISTRUZIONI DALLA MEMORIA CON ELEVATA VELOCITÀ (BUS, CACHE) UTILIZZO DI COMPILATORI ALTAMENTE OTTIMIZZANTI ARCHITETTURA CISC VS. RISC Come abbiamo già visto, un processore è caratterizzato dal set di istruzioni che è in grado di eseguire. Alcuni progettisti, nello sviluppo di CPU via via più potenti, hanno scelto di realizzare CPU con un set di istruzioni sempre più ampio, in modo che anche funzioni complesse (come ad esempio le funzioni grafiche), trovassero soluzione con l esecuzione di un unica istruzione. Questa filosofia progettuale, è nota come: ARCHITETTURA CISC (Complex Instruction Set Computer) Il principale problema di questa architettura risiede nella complessità dell architettura e nel maggior tempo richiesto per la decodifica e l'esecuzione delle singole istruzioni (fino ad arrivare al punto che alcune i- struzioni, per essere completate, potrebbero richiedere più cicli di clock). In contrapposizione all architettura CISC, altri progettisti hanno progettato CPU basate su un opposta filosofia progettuale nota come: ARCHITETTURA RISC (Reduced Instruction Set Computer) Questa architettura si basa sull idea di ridurre il numero di istruzioni gestite dal processore, limitandole a quelle usate più di frequente. Questo set ridotto di istruzioni è progettato in modo da essere eseguito nel più breve tempo possibile, di norma in un solo ciclo di clock (o meno). Tutte le altre funzioni sono poi realizzate con una sequenza di istruzioni elementari. Qui invece il problema è nella necessità di dover realizzare compilatori altamente ottimizzati, completamente indipendenti dalle caratteristiche del processore e nella necessità di avere un ampia memoria centrale. In tempi diversi una filosofia ha prevalso sull'altra e viceversa. Aldilà degli aspetti di marketing che oggi spingono i produttori a pubblicizzare la filosofia RISC, quasi fosse un sinonimo di velocità, su un piano tecnico, possono essere fatte queste considerazioni: la filosofia CISC presuppone la capacità di realizzare, su un unico chip, una circuiteria più complessa, con la necessità di superare una serie di problemi tecnologici, non ultimo quello della dissipazione del calore; la semplificazione progettuale della CPU che si ottiene con la filosofia RISC, comporta però un numero maggiore di istruzioni: questo impone memorie di elevata capacità e dotate di ridotti tempi di accesso. Quella che abbiamo delineato è la situazione teorica. In realtà non esistono CPU solamente CISC o solamente RISC: i processori attuali utilizzano il meglio delle due filosofie per raggiungere prestazioni che fino a qualche anno fa erano tipiche dei sistemi mainframe. PAG. 3.32

16 CPU INTEL TIPO MHZ dati adr NOTE / SET ISTRUZIONI ESTESO 386 DX TRANSISTOR ISTRUZIONI A 32 BIT 386 SX / VERSIONE RIDOTTA DEL DX 16 BIT VERSO L ESTERNO 486 DX MILIONE DI TRANSISTOR, 8 KB DI CACHE INTEGRATA, UNITÀ FLOATING POINT ARCHITETTURA SCALARE 486 SX VERSIONE RIDOTTA DEL DX SENZA UNITÀ FLOATING POINT 486 DX2 25/50 33/ CLOCK INTERNO RADDOPPIATO 486 DX4 25/75 25/ CLOCK INTERNO X3 O X4 BASSO CONSUMO (3,3 VOLT) 16 KB DI CACHE INTEGRATA PENTIUM > >3 MILIONI DI TRANSISTOR, BUS DATI A 64 BIT, CACHE SEPARATE PER DATI E ISTRUZIONI, BRANCH PREDICTION, SUPERSCALARE LA FAMIGLIA INTEL 80X86 Da sempre i costruttori, per garantire il funzionamento dei vecchi programmi sui nuovi computer, hanno cercato di mantenere la compatibilità di ogni nuova CPU con le precedenti. In questo senso sono state realizzate le cosiddette famiglie, per indicare un insieme di CPU che, pur avendo architetture interne diverse, mantengono lo stesso set di istruzioni o comunque garantiscono una compatibilità con le precedenti (nel senso che le CPU più recenti, inglobano il set di istruzioni utilizzato nelle CPU precedenti) 2. Tutto questo invece, non è affatto garantito nel caso di CPU realizzate da costruttori diversi, che hanno spesso una architettura interna e un set di istruzioni completamente differenti. Ad esempio in casa INTEL (il maggiore costruttore mondiale di CPU), si parla della famiglia Intel 80x86 per indicare un insieme di CPU hanno mantenuto una compatibilità verso il basso, nel senso che l ultima nata, è in grado di eseguire programmi scritti per le precedenti. Tralasciando la prima nata, l 8080, questa tabella evidenzia le CPU Intel della famiglia 80x e 8088: l 8088 è stata una pietra miliare, in quanto su questa CPU l IBM ha realizzato il suo primo PC XT. L 8088 è praticamente un 8086 con il bus dati a 8 linee invece che a 16. Questo aveva permesso di realizzare una circuiteria meno costosa, pur disponendo di una discreta potenza (e comunque nell 8088 le prestazioni erano inferiori di circa un 30%). 286: è stata usata sempre da IBM per la seconda generazione di personal computer, il PC AT. Rispetto all 8088 l architettura è diversa: maggior numero di istruzioni, bus dati a 16 bit, e bus indirizzi portato a 24 bit. 386 DX e 386 SX: Il 386, con i suoi transistor ed i bus dati e indirizzi a 32 bit segna un grosso passo avanti a livello architetturale; la versione SX era una versione ridotta in quanto utilizzava il bus dei dati a 16 bit invece che a 32 come nel DX: questo peraltro ne aveva permesso l utilizzo, con poche modifiche, sulle vecchie schede progettate per il DX e 486 SX: questa è la prima CPU scalare; integra sul chip 1 milione di transistor e utilizza soluzioni architetturali nuove, come una piccola cache di 8 KB ed il coprocessore integrati all interno della CPU stessa. Un 486 DX, alla stessa velocità di clock, è il doppio più veloce di un 386 completo. La versione SX in questo caso differisce da DX per il fatto di non avere il coprocessore matematico (o meglio ce l ha ma è disattivato). Pentium: è la CPU utilizzata nei personal computer attuali. Integra sul chip 3 milioni di transistor ed è la prima CPU superscalare di questa famiglia. Utilizza 2 cache separate, una per i dati e una per le istruzioni, il bus dati a 64 byte e una sofisticata architettura. Con il Pentium l Intel ha cambiato il modo di dare dei nomi alle proprie CPU, per avere il modo di proteggerlo come marchio. 2 Il fatto di dover garantire una continuità con il passato, realizzando processori compatibili con il set di istruzioni delle precedenti CPU, può entro certi limiti condizionare le prestazioni delle moderne CPU. PAG. 3.34

17 L'INDICE INTEL ICOMP Pentium III 933 PENIUM III PENTIUM III PENTIUM III PENTIUM 120 PENTIUM 100 PENTIOM 90 PENTIUM DX DX DX DX DX DX SX DX SX DX DX SL SX SX L INDICE ICOMP L indice ICOMP rappresenta uno dei tanti tentativi di realizzare degli indicatori in grado di rappresentare in una forma sintetica, ma realistica, la capacità elaborativa di un processore. Come tutti gli indici che nel corso degli anni sono stati definiti3, ICOMP si basa sulla misurazione del tempo di esecuzione di una serie di programmi appositamente creati, con l obiettivo di simulare l uso del computer da parte di un utente medio. La bontà di un indice dipende proprio dalla tipologia di programmi usati per la misurazione, in relazione al tipo di utilizzo del computer: se il programma campione esegue molti calcoli complessi, il test misurerà la capacità elaborativa della CPU; se il programma esegue molte operazioni grafiche, il test misurerà la capacità dl sottosistema grafico e così via. Normalmente i programmi utilizzati rappresentano un mix bilanciato che cerca di simulare l operatività di un normale utente (con tutti i possibili distinguo su cosa sia normale ). Introdotto nel 92 da Intel, l indice icomp nasce con l obiettivo di fornire all utente finale un indice che permettesse di confrontare le prestazioni di differenti processori della famiglia Intel. Di recente Intel ha rilasciato la versione 3.0, in modo da riflettere l uso effettivo delle attuali applicazioni che si basano sempre più su software a 32 bit, sui concetti della multimedialità e su Internet. Il problema della misurazione delle prestazioni di un processore è sempre stato molto dibattuto. Un singolo programma di test (in gergo si chiama benchmark ) potrebbe evidenziare solo alcuni aspetti (ad e- sempio la capacità di effettuare calcoli in virgola mobile) e sottacerne altri. Proprio per questi motivi l indice icomp utilizza un certo numero di benchmark, che analizzano tutti i diversi aspetti del processore, in modo da fornire un valore quanto più significativo delle prestazioni complessive di una CPU. Più specificatamente, l indice misura le prestazioni del processore in queste diverse aree applicative: programmi di produttività personale (Word, Excel,..) multimedialità elaborazione grafica in 3D Internet 3 un altro esempio è il MIPS. che misura il numero di istruzioni eseguite mediamente in un secondo PAG. 3.36

18 LA MEMORIA CENTRALE LA MEMORIA CENTRALE RAM (RANDOM ACCESS MEMORY) È UTILIZZATA PER MEMORIZZARE DATI E PROGRAMMI CHE IL PROCESSORE DEVE ELABORARE RAPPRESENTA UN PASSAGGIO OBBLIGATO, IN QUANTO È L UNICO TIPO DI MEMORIA A CUI ACCEDE LA CPU (IN ALTRE PAROLE, PER ESSERE ELABORATI, I DATI DEVONO ESSERE PRIMA CARICATI IN MEMORIA CENTRALE) INDIRIZZO CONTENUTO LA MEMORIA PUÒ ESSERE PENSATA COME UNA TABELLA, LE CUI RIGHE SONO LE CELLE O LOCAZIONI DI MEMORIA TUTTE LE CELLE O LOCAZIONI HANNO LA STESSA CAPACITÀ (8 BIT) OGNI LOCAZIONE È CARATTERIZZATA DA UN INDIRIZZO UNIVOCO, E DAL DATO CONTENUTO L'ACCESSO AL DATO CONTENUTO IN UNA CERTA CELLA DI MEMORIA AVVIENE TRAMITE L'INDIRIZZO, IN MANIERA INDI- PENDENTE DALLA SUA POSIZIONE ( ACCESSO DIRETTO ) SI MISURA IN BYTE O MEGLIO, NEI SUOI MULTIPLI LA MEMORIA CENTRALE La memoria centrale (definita anche principale ) è utilizzata per memorizzare sia i dati, sia i programmi. La memoria centrale rappresenta anche un "passaggio obbligato", in quanto è l'unico tipo di memoria a cui il processore può accedere; in altre parole questo significa che, per poter essere elaborati, tutti i dati e tutti i programmi debbono prima essere caricati in memoria centrale. In questo senso la RAM rappresenta uno degli elementi più importanti tra quelli che contribuiscono a definire la potenza elaborativa di un computer: infatti essendo il luogo dove vengono immagazzinati dati e programmi per l elaborazione, tanto maggiore è la disponibilità di RAM in un computer tanto più numerosi saranno i dati che potranno essere elaborati direttamente e tanto più complessi i programmi. A livello strutturale la memoria centrale può essere vista come una tabella, le cui righe sono le celle o locazioni di memoria, ognuna delle quali è caratterizzata: da un indirizzo che la identifica in maniera univoca dal dato che ogni locazione è in grado di contenere Tutte le locazioni di memoria hanno la stessa capacità (di norma un byte) e l accesso ai dati contenuti nella locazione avviene in modo diretto, tramite l indirizzo. Gli indirizzi sono espressi mediante numeri interi. La prima cella ha indirizzo 1, la seconda cella ha indirizzo 2 e così via fino all ultima, il cui indirizzo dipende dalla dimensione della memoria installata sull elaboratore. Quindi l indirizzo coincide semplicemente con l ordinamento delle locazioni all interno della memoria stessa. Sarà poi compito della circuiteria di controllo della RAM tradurre l indirizzo passato dal processore nel corrispondente accesso alla locazione fisica. Il fatto di permettere un accesso diretto 4 ai dati tramite l indirizzo è una delle caratteristiche più importanti della memoria centrale; questo significa anche che il tempo di accesso ad un dato è indipendente dalla sua posizione all interno della memoria. 4 Si definisce ad accesso diretto, una memoria che permette di accedere direttamente ad un blocco di dati, senza dover leggere i dati che, sul supporto fisico, li precedono. E in contrapposizione alla memoria ad accesso sequenziale, in cui per poter leggere il blocco di dati, bisogna aver letto tutti i dati che precedono. Per fare un paragone con oggetti più usuali, si potrebbe dire che il CD musicale è un tipo di supporto ad accesso diretto, mentre la cassetta è un tipo di supporto ad accesso sequenziale. PAG. 3.38

19 RAM: LE CARATTERISTICHE CIRCUITI INTEGRATI VELOCITÀ FISICAMENTE LA MEMORIA CENTRALE È COSTITUITA DALL INSIEME DI PIÙ CIRCUITI INTEGRATI ED È ANCHE CHIAMATA: L'ACCESSO ALLE INFORMAZIONI CONTENUTE NELLA RAM È MOLTO RAPIDO (NANOSECONDI), ED QUINDI PARAGONABILE AI TEMPI DEL PROCESSORE VOLATILITÀ COSTO ELEVATO MANTIENE I DATI SOLO FINTANTOCHÉ È ALIMENTATA PER CUI È DISPONIBILE IN DIMENSIONI RIDOTTE E CONTIENE SOLO INFORMAZIONI A BREVE TERMINE": DA QUI DISCENDE LA NECESSITÀ DI UTILIZZARE LA "MEMORIA DI MASSA" PER INFORMAZIONI "A LUNGO "TERMINE" CARATTERISTICHE DELLA MEMORIA CENTRALE Dal punto di vista fisico la memoria centrale o RAM (Random Access Memory) è attualmente realizzata mediante circuiti integrati, ovvero componenti elettronici ad altissima integrazione al cui interno sono riprodotti gli schemi circuitali in grado assumere due diversi stati di funzionamento a cui vengono poi associati i due valori (o e1) che il bit può assumere. Un aspetto rilevante della memoria centrale è la sua elevata velocità che, come ordine di grandezza, può essere paragonabile alla velocità del processore. Per velocità di una memoria si intende il tempo necessario affinché il processore, noto l indirizzo, possa accedere al dato contenuto nella corrispondente locazione: Nella RAM attualmente installata sui personal computer questo tempo è dell ordine dei 70 nanosecondi (1 nanosecondo = 10-9 secondi). Una seconda caratteristica della RAM (che dipende dall'attuale tecnologia costruttiva) è che deve essere mantenuta alimentata elettricamente, affinché le informazioni vengano conservate all interno della memoria stessa. In altre parole si dice che la memoria RAM è volatile, ovvero perde tutti i dati contenuti quando si toglie l alimentazione all elaboratore (o quando, per qualche motivo esterno, viene a mancare l energia elettrica!). Le memorie RAM sono anche costose e questo impedisce l utilizzo, sul personal computer, di memorie RAM di grandi dimensioni. La RAM viene quindi utilizzata per la memorizzazione dei dati a breve termine, quelli cioè necessari al processore per l elaborazione in corso. Per tutti questi motivi, i dati non in uso da parte del processore andranno memorizzati su altri tipi di memoria (le cosiddette memorie di massa ), che hanno un costo per byte memorizzato molto più basso e che mantengono i dati anche quando non sono alimentate. La dimensione della memoria centrale si misura in byte o meglio utilizzando i suoi multipli: 1 KB 1 Kilobyte corrisponde a 1024 byte 1 MB 1 Megabyte corrisponde a 1024 KB (~ 1 milione di byte) 1 GB 1 Gigabyte corrisponde a 1024 MB (~ 1 miliardo di byte) 1 TB 1 Terabyte corrisponde a 1024 GB (~ mille miliardi di byte) Le dimensioni tipiche della memoria di un personal computer, vanno dai 256 ai 512 MB, ma questi valori crescono di anno in anno. PAG. 3.40

20 RAM: DIVERSI TIPI DI TECNOLOGIA RAM DINAMICHE (DRAM) NECESSITÀ DEL REFRESH TEMPI DI RISPOSTA: 70 NANOSEC ECONOMICHE RAM STATICHE (SRAM) NESSUN REFRESH TEMPI DI RISPOSTA : NANOSEC MAGGIOR INGOMBRO (CIRCA 4 VOLTE) COSTOSE SIMM / DIMM CHE COS È? UNA PICCOLA SCHEDA PROGETTATA PER CONTENERE I SINGOLI CHIP DI MEMORIA RAM. PERCHÉ SI USANO? RICHIEDONO MENO SPAZIO E SONO PIÙ FACILI DA MONTARE QUANTI TIPI NE ESISTONO? DIVERSE CAPACITÀ DIVERSE PIEDINATURE DIVERSO TIMING LE TECNOLOGIE COSTRUTTIVE DELLA RAM Sotto l aspetto più puramente tecnologico, la RAM può essere realizzata utilizzando due schemi circuitali, ognuno dei quali presenta pro e contro: RAM dinamiche (DRAM): in genere è realizzata mediante uno schema circuitale che prevede l utilizzo due transistor e 1 condensatore per ciascun bit di dati; l informazione è legata alla carica del condensatore e per questo motivo una RAM dinamica perde l informazione memorizzata in un tempo brevissimo. Com è possibile allora utilizzare praticamente questo tipo di RAM? La soluzione adottata dai progettisti consiste in un circuiteria completamente autonoma, che continuamente legge la memoria e la riscrive, effettuando quello che viene chiamato rinfresco dei dati ( refresh ). L operazione di refresh (necessaria per il mantenimento del dato nella memoria), benché eseguita da una circuiteria specializzata, introduce un minimo fattore di rallentamento: se in passato era un fatto trascurabile, oggi, stante la cresciuta velocità delle CPU, è invece un e- lemento di criticità. RAM statiche (SRAM): sono composte da 4 transistor connessi in modo da non richiede il condensatore. Con questo diverso schema circuitale la RAM conserva i propri dati senza bisogno del refresh dei dati (ma deve essere sempre alimentata, anche se il consumo è molto più basso). Le SRAM, a parità di dati memorizzati richiedono molto più silicio e quindi sono molto più costose e ingombranti delle DRAM, rispetto alle quali hanno però il grosso vantaggio di essere molto più veloci (circa nanosecondi contro i 70 delle DRAM). La memoria RAM, costituita da singoli chip già montati su piccole schede, appositamente progettate, chiamate: SIMM (Single In line Memory Module) oppure DIMM (Double In line Memory Module). Queste schede, dotate di contatti a slitta, si inseriscono perpendicolarmente negli appositi slot previsti sulla scheda madre. Le SIMM/DIMM richiedono meno spazio rispetto al tradizionale montaggio dei chip direttamente sulla scheda e sono più facili da mantenere (montaggio/smontaggio). In fase di acquisto bisogna comunque fare attenzione ai diversi tipi di SIMM/DIMM attualmente in commercio, che si differenziano, oltre che per la capacità, anche per i diversi tipi di piedinatura e per i differenti tempi di accesso. PAG. 3.42

C. P. U. MEMORIA CENTRALE

C. P. U. MEMORIA CENTRALE C. P. U. INGRESSO MEMORIA CENTRALE USCITA UNITA DI MEMORIA DI MASSA La macchina di Von Neumann Negli anni 40 lo scienziato ungherese Von Neumann realizzò il primo calcolatore digitale con programma memorizzato

Dettagli

Architettura hardware

Architettura hardware Architettura dell elaboratore Architettura hardware la parte che si può prendere a calci Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Esame di INFORMATICA

Esame di INFORMATICA Università di L Aquila Facoltà di Biotecnologie Esame di INFORMATICA Lezione 4 MACCHINA DI VON NEUMANN Anni 40 i dati e i programmi che descrivono come elaborare i dati possono essere codificati nello

Dettagli

Informatica - A.A. 2010/11

Informatica - A.A. 2010/11 Ripasso lezione precedente Facoltà di Medicina Veterinaria Corso di laurea in Tutela e benessere animale Corso Integrato: Matematica, Statistica e Informatica Modulo: Informatica Esercizio: Convertire

Dettagli

Architettura dei computer

Architettura dei computer Architettura dei computer In un computer possiamo distinguere quattro unità funzionali: il processore (CPU) la memoria principale (RAM) la memoria secondaria i dispositivi di input/output Il processore

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 4 La CPU e l esecuzione dei programmi 1 Nelle lezioni precedenti abbiamo detto che Un computer è costituito da 3 principali componenti:

Dettagli

DIMENSIONI E PRESTAZIONI

DIMENSIONI E PRESTAZIONI DIMENSIONI E PRESTAZIONI Prof. Enrico Terrone A. S: 2008/09 Le unità di misura Le due unità di misura fondamentali dell hardware sono: i Byte per le dimensioni della memoria gli Hertz (Hz) per le prestazioni

Dettagli

Organizzazione della memoria

Organizzazione della memoria Memorizzazione dati La fase di codifica permette di esprimere qualsiasi informazione (numeri, testo, immagini, ecc) come stringhe di bit: Es: di immagine 00001001100110010010001100110010011001010010100010

Dettagli

Dispensa di Informatica I.1

Dispensa di Informatica I.1 IL COMPUTER: CONCETTI GENERALI Il Computer (o elaboratore) è un insieme di dispositivi di diversa natura in grado di acquisire dall'esterno dati e algoritmi e produrre in uscita i risultati dell'elaborazione.

Dettagli

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore

Il processore. Il processore. Il processore. Il processore. Architettura dell elaboratore Il processore Architettura dell elaboratore Il processore La esegue istruzioni in linguaggio macchina In modo sequenziale e ciclico (ciclo macchina o ciclo ) Effettuando operazioni di lettura delle istruzioni

Dettagli

Struttura del calcolatore

Struttura del calcolatore Struttura del calcolatore Proprietà: Flessibilità: la stessa macchina può essere utilizzata per compiti differenti, nessuno dei quali è predefinito al momento della costruzione Velocità di elaborazione

Dettagli

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6 Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...

Dettagli

Lezione 3: Architettura del calcolatore

Lezione 3: Architettura del calcolatore Lezione 3: Architettura del calcolatore Architettura di Von Neumann BUS, CPU e Memoria centrale Ciclo di esecuzione delle istruzioni Architettura del calcolatore Il calcolatore è: uno strumento programmabile

Dettagli

Architettura di un calcolatore

Architettura di un calcolatore 2009-2010 Ingegneria Aerospaziale Prof. A. Palomba - Elementi di Informatica (E-Z) 7 Architettura di un calcolatore Lez. 7 1 Modello di Von Neumann Il termine modello di Von Neumann (o macchina di Von

Dettagli

Architettura dei calcolatori I parte Introduzione, CPU

Architettura dei calcolatori I parte Introduzione, CPU 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

Architettura del calcolatore

Architettura del calcolatore Architettura del calcolatore La prima decomposizione di un calcolatore è relativa a due macro-componenti: Hardware Software Architettura del calcolatore L architettura dell hardware di un calcolatore reale

Dettagli

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai

Informatica di base. Hardware: CPU SCHEDA MADRE. Informatica Hardware di un PC Prof. Corrado Lai Informatica di base Hardware: CPU SCHEDA MADRE HARDWARE DI UN PC 2 Hardware (parti fisiche) Sono le parti fisiche di un Personal Computer (processore, scheda madre, tastiera, mouse, monitor, memorie,..).

Dettagli

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: martedì, 12.00-13.00. Dip. Di Matematica Modalità esame: scritto + tesina facoltativa 1

Dettagli

ARCHITETTURA DEL CALCOLATORE

ARCHITETTURA DEL CALCOLATORE Orologio di sistema (Clock) UNITÀ UNITÀ DI DI INGRESSO Schema a blocchi di un calcolatore REGISTRI CONTROLLO BUS DEL SISTEMA MEMORIA DI DI MASSA Hard Hard Disk Disk MEMORIA CENTRALE Ram Ram ALU CPU UNITÀ

Dettagli

- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN

- Algoritmi ed esecutori di algoritmi - ALGORITMI MACCHINA DI VON NEUMANN ALGORITMI E MACCHINA DI VON NEUMANN 1 COMPUTER= ELABORATORE NON CERVELLO ELETTRONICO CERVELLO: Capacità decisionali ELABORATORE: Incapacità di effettuare scelte autonome di fronte a situazioni impreviste

Dettagli

La memoria centrale (RAM)

La memoria centrale (RAM) La memoria centrale (RAM) Mantiene al proprio interno i dati e le istruzioni dei programmi in esecuzione Memoria ad accesso casuale Tecnologia elettronica: Veloce ma volatile e costosa Due eccezioni R.O.M.

Dettagli

Memoria Secondaria o di Massa

Memoria Secondaria o di Massa .. Pacman ha una velocità che dipende dal processore...quindi cambiando computer va più velocemente..sarà poi vero? Memoria Secondaria o di Massa dischi fissi (hard disk), floppy disk, nastri magnetici,

Dettagli

Vari tipi di computer

Vari tipi di computer Hardware Cos è un computer? Un computer è un elaboratore di informazione. Un computer: riceve informazione in ingresso (input) elabora questa informazione Può memorizzare (in modo temporaneo o permanente)

Dettagli

1.4a: Hardware (Processore)

1.4a: Hardware (Processore) 1.4a: Hardware (Processore) 2 23 nov 2011 Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Ediz. Fino alla III : cap. 3.8, 3.9 IV ediz.: cap. 2.6, 2.7 Questi lucidi 23 nov 2011

Dettagli

Introduzione all'architettura dei Calcolatori

Introduzione all'architettura dei Calcolatori Introduzione all'architettura dei Calcolatori Introduzione Che cos è un calcolatore? Come funziona un calcolatore? è possibile rispondere a queste domande in molti modi, ciascuno relativo a un diverso

Dettagli

COME È FATTO IL COMPUTER

COME È FATTO IL COMPUTER 1 di 8 15/07/2013 17:07 COME È FATTO IL COMPUTER Le componenti fondamentali Un computer, o elaboratore di dati, è composto da una scheda madre alla quale sono collegate periferiche di input e output, RAM

Dettagli

Organizzazione della memoria principale Il bus

Organizzazione della memoria principale Il bus Corso di Alfabetizzazione Informatica 2001/2002 Organizzazione della memoria principale Il bus Organizzazione della memoria principale La memoria principale è organizzata come un insieme di registri di

Dettagli

Corso di Informatica

Corso di Informatica CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo crescenzio.gallo@unifg.it La memoria principale 2 izzazione della memoria principale ria principale è organizzata come

Dettagli

ARCHITETTURA DELL ELABORATORE

ARCHITETTURA DELL ELABORATORE 1 ISTITUTO DI ISTRUZIONE SUPERIORE ANGIOY ARCHITETTURA DELL ELABORATORE Prof. G. Ciaschetti 1. Tipi di computer Nella vita di tutti giorni, abbiamo a che fare con tanti tipi di computer, da piccoli o piccolissimi

Dettagli

Contenuti. Visione macroscopica Hardware Software. 1 Introduzione. 2 Rappresentazione dell informazione. 3 Architettura del calcolatore

Contenuti. Visione macroscopica Hardware Software. 1 Introduzione. 2 Rappresentazione dell informazione. 3 Architettura del calcolatore Contenuti Introduzione 1 Introduzione 2 3 4 5 71/104 Il Calcolatore Introduzione Un computer...... è una macchina in grado di 1 acquisire informazioni (input) dall esterno 2 manipolare tali informazioni

Dettagli

CPU. Maurizio Palesi

CPU. Maurizio Palesi CPU Central Processing Unit 1 Organizzazione Tipica CPU Dispositivi di I/O Unità di controllo Unità aritmetico logica (ALU) Terminale Stampante Registri CPU Memoria centrale Unità disco Bus 2 L'Esecutore

Dettagli

Materiali per il modulo 1 ECDL. Autore: M. Lanino

Materiali per il modulo 1 ECDL. Autore: M. Lanino Materiali per il modulo 1 ECDL Autore: M. Lanino RAM, l'acronimo per "random access memory", ovvero "memoria ad acceso casuale", è la memoria in cui vengono caricati i dati che devono essere utilizzati

Dettagli

INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO

INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO INFORMATICA CORSO DI INFORMATICA DI BASE ANNO ACCADEMICO 2015/2016 DOCENTE: SARRANTONIO ARTURO PROGRAMMA Descrizione funzionale di un calcolatore elementare, COS'E' UN ELETTRONICO HARDWARE SOFTWARE HARDWARE

Dettagli

Laboratorio di Informatica

Laboratorio di Informatica per chimica industriale e chimica applicata e ambientale LEZIONE 4 - parte II La memoria 1 La memoriaparametri di caratterizzazione Un dato dispositivo di memoria è caratterizzato da : velocità di accesso,

Dettagli

Concetti fondamentali della Tecnologia Dell informazione Parte prima

Concetti fondamentali della Tecnologia Dell informazione Parte prima Concetti fondamentali della Tecnologia Dell informazione Parte prima 1 Concetti di base della tecnologia dell Informazione Nel corso degli ultimi anni la diffusione dell Information and Communication Technology

Dettagli

Calcolo numerico e programmazione Architettura dei calcolatori

Calcolo numerico e programmazione Architettura dei calcolatori Calcolo numerico e programmazione Architettura dei calcolatori Tullio Facchinetti 30 marzo 2012 08:57 http://robot.unipv.it/toolleeo Il calcolatore tre funzionalità essenziali:

Dettagli

Centro Iniziative Sociali Municipio III

Centro Iniziative Sociali Municipio III Centro Iniziative Sociali Municipio III C.I.S Municipio III Corso di informatca Roberto Borgheresi C ORSO BASE DI I NFORMATICA Centro Iniziative Sociali Municipio III Coordinatore: Roberto Borgheresi Insegnanti:

Dettagli

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014

Corso: Informatica+ Andrea Cremonini. Lezione del 20/10/2014 Corso: Informatica+ Andrea Cremonini Lezione del 20/10/2014 1 Cosa è un computer? Un elaboratore di dati e immagini Uno smartphone Il decoder di Sky Una console di gioco siamo circondati! andrea.cremon

Dettagli

Il calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi

Il calcolatore elettronico. Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Il calcolatore elettronico Parte dei lucidi sono stati gentilmente forniti dal Prof. Beraldi Introduzione Un calcolatore elettronico è un sistema elettronico digitale programmabile Sistema: composto da

Dettagli

La memoria - generalità

La memoria - generalità Calcolatori Elettronici La memoria gerarchica Introduzione La memoria - generalità n Funzioni: Supporto alla CPU: deve fornire dati ed istruzioni il più rapidamente possibile Archiviazione: deve consentire

Dettagli

Componenti di base di un computer

Componenti di base di un computer Componenti di base di un computer Architettura Von Neumann, 1952 Unità di INPUT UNITA CENTRALE DI ELABORAZIONE (CPU) MEMORIA CENTRALE Unità di OUTPUT MEMORIE DI MASSA PERIFERICHE DI INPUT/OUTPUT (I/O)

Dettagli

Parte II.2 Elaboratore

Parte II.2 Elaboratore Parte II.2 Elaboratore Elisabetta Ronchieri Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Dicembre 1, 2015 Elisabetta Elisabetta Ronchieri II Software Argomenti

Dettagli

CONCETTI BASE dell'informatica Cose che non si possono non sapere!

CONCETTI BASE dell'informatica Cose che non si possono non sapere! CONCETTI BASE dell'informatica Cose che non si possono non sapere! Pablo Genova I. I. S. Angelo Omodeo Mortara A. S. 2015 2016 COS'E' UN COMPUTER? È una macchina elettronica programmabile costituita da

Dettagli

Tecnologia dell Informazione

Tecnologia dell Informazione Tecnologia dell Informazione Concetti di base della tecnologia dell informazione Materiale Didattico a cura di Marco Musolesi Università degli Studi di Bologna Sede di Ravenna Facoltà di Giurisprudenza

Dettagli

Architettura dei calcolatori II parte Memorie

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

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 programmi e i dati 2) dalla

Dettagli

Più processori uguale più velocità?

Più processori uguale più velocità? Più processori uguale più velocità? e un processore impiega per eseguire un programma un tempo T, un sistema formato da P processori dello stesso tipo esegue lo stesso programma in un tempo TP T / P? In

Dettagli

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput

Valutazione delle Prestazioni. Valutazione delle Prestazioni. Architetture dei Calcolatori (Lettere. Tempo di risposta e throughput Valutazione delle Prestazioni Architetture dei Calcolatori (Lettere A-I) Valutazione delle Prestazioni Prof. Francesco Lo Presti Misura/valutazione di un insieme di parametri quantitativi per caratterizzare

Dettagli

Gerarchia delle memorie

Gerarchia delle memorie Memorie Gerarchia delle memorie Cache CPU Centrale Massa Distanza Capacità Tempi di accesso Costo 2 1 Le memorie centrali Nella macchina di Von Neumann, le istruzioni e i dati sono contenute in una memoria

Dettagli

Introduzione all uso del Personal Computer

Introduzione all uso del Personal Computer Introduzione all uso del Personal Computer Cenni di storia dei calcolatori Il Personal Computer: Processo di avvio del computer Sistemi Operativi Il computer, invece, è composto da piccoli rettangoli

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 PRESTAZIONI DEL CALCOLATORE Massimiliano Giacomin Due dimensioni Tempo di risposta (o tempo di esecuzione): il tempo totale impiegato per eseguire un task (include

Dettagli

Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA

Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA Scuola Secondaria di Primo Grado Anna Frank Nome Cognome classe anno sc. 2008/09 INFORMATICA Il termine informatica riassume due parole, informazione automatica, e si occupa dei sistemi per l elaborazione

Dettagli

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM

All interno del computer si possono individuare 5 componenti principali: SCHEDA MADRE. MICROPROCESSORE che contiene la CPU MEMORIA RAM MEMORIA ROM Il computer è un apparecchio elettronico che riceve dati di ingresso (input), li memorizza e gli elabora e fornisce in uscita i risultati (output). Il computer è quindi un sistema per elaborare informazioni

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

RETI E SISTEMI INFORMATIVI

RETI E SISTEMI INFORMATIVI RETI E SISTEMI INFORMATIVI Prof. Andrea Borghesan venus.unive.it/borg borg@unive.it Ricevimento: mercoledì, 10.00-11.00. Studio 34, primo piano. Dip. Statistica 1 Modalità esame: scritto + tesina facoltativa

Dettagli

Modulo 1 Le memorie. Si possono raggruppare i sistemi di elaborazione nelle seguenti categorie in base alle possibilità di utilizzazione:

Modulo 1 Le memorie. Si possono raggruppare i sistemi di elaborazione nelle seguenti categorie in base alle possibilità di utilizzazione: Modulo 1 Le memorie Le Memorie 4 ETA Capitolo 1 Struttura di un elaboratore Un elaboratore elettronico è un sistema capace di elaborare dei dati in ingresso seguendo opportune istruzioni e li elabora fornendo

Dettagli

Architettura di un computer

Architettura di un computer Architettura di un computer Modulo di Informatica Dott.sa Sara Zuppiroli A.A. 2012-2013 Modulo di Informatica () Architettura A.A. 2012-2013 1 / 36 La tecnologia Cerchiamo di capire alcuni concetti su

Dettagli

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.

Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella. Prestazioni CPU Corso di Calcolatori Elettronici A 2007/2008 Sito Web:http://prometeo.ing.unibs.it/quarella Prof. G. Quarella prof@quarella.net Prestazioni Si valutano in maniera diversa a seconda dell

Dettagli

Unità Periferiche. Rete Di Controllo

Unità Periferiche. Rete Di Controllo MODELLO LOGICO-FUNZIONALE DI UN ELABORATORE Centrale di canale Periferiche CPU Memoria centrale ALU CU Memoria Locale ALU = Aritmetic Logic Unit CU = Registri CU ISTRUZIONE Decodificatore Rete Di Controllo

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

1.4b: Hardware. (Memoria Centrale)

1.4b: Hardware. (Memoria Centrale) 1.4b: Hardware (Memoria Centrale) Bibliografia Curtin, Foley, Sen, Morin Informatica di base, Mc Graw Hill Ediz. Fino alla III : cap. 3.11, 3.13 IV ediz.: cap. 2.8, 2.9 Questi lucidi Memoria Centrale Un

Dettagli

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 :

In un modello a strati il SO si pone come un guscio (shell) tra la macchina reale (HW) e le applicazioni 1 : Un Sistema Operativo è un insieme complesso di programmi che, interagendo tra loro, devono svolgere una serie di funzioni per gestire il comportamento del computer e per agire come intermediario consentendo

Dettagli

I componenti di un Sistema di elaborazione. CPU (central process unit)

I componenti di un Sistema di elaborazione. CPU (central process unit) I componenti di un Sistema di elaborazione. CPU (central process unit) I componenti di un Sistema di elaborazione. CPU (central process unit) La C.P.U. è il dispositivo che esegue materialmente gli ALGORITMI.

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù

CALCOLATORI ELETTRONICI A cura di Luca Orrù Lezione 1 Obiettivi del corso Il corso si propone di descrivere i principi generali delle architetture di calcolo (collegamento tra l hardware e il software). Sommario 1. Tecniche di descrizione (necessarie

Dettagli

1.1.3.1. Conoscere i diversi tipi di memoria centrale presenti nel computer, quali: RAM (randomaccess memory), ROM (read-only memory)

1.1.3.1. Conoscere i diversi tipi di memoria centrale presenti nel computer, quali: RAM (randomaccess memory), ROM (read-only memory) 1.1.3.1 Conoscere i diversi tipi di memoria centrale presenti nel computer, quali: RAM (randomaccess memory), ROM (read-only memory) Se non fosse in grado di ricordare l uomo non sarebbe capace di eseguire

Dettagli

I L C O M P U T E R COM E FATTO DENTRO (Unità 2)

I L C O M P U T E R COM E FATTO DENTRO (Unità 2) I L C O M P U T E R COM E FATTO DENTRO (Unità 2) 1. Premessa Lo scopo di questo capitolo non è quello di spiegare come si assembla un computer, bensì più semplicemente di mostrare le parti che lo compongono.

Dettagli

Strutture di Memoria 1

Strutture di Memoria 1 Architettura degli Elaboratori e Laboratorio 17 Maggio 2013 Classificazione delle memorie Funzionalitá: Sola lettura ROM, Read Only Memory, generalmente usata per contenere le routine di configurazione

Dettagli

Fondamenti di informatica: un po di storia

Fondamenti di informatica: un po di storia Fondamenti di informatica: un po di storia L idea di utilizzare dispositivi meccanici per effettuare in modo automatico calcoli risale al 600 (Pascal, Leibniz) Nell ottocento vengono realizzati i primi

Dettagli

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.7. Il moltiplicatore binario e il ciclo di base di una CPU Lezione n.7 Il moltiplicatore binario e il ciclo di base di una CPU 1 SOMMARIO Architettura del moltiplicatore Architettura di base di una CPU Ciclo principale di base di una CPU Riprendiamo l analisi

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino

Il Sistema Operativo. C. Marrocco. Università degli Studi di Cassino Il Sistema Operativo Il Sistema Operativo è uno strato software che: opera direttamente sull hardware; isola dai dettagli dell architettura hardware; fornisce un insieme di funzionalità di alto livello.

Dettagli

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.

Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell

Dettagli

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica

I componenti di un Sistema di elaborazione. Memoria centrale. È costituita da una serie di CHIP disposti su una scheda elettronica I componenti di un Sistema di elaborazione. Memoria centrale Memorizza : istruzioni dati In forma BINARIA : 10001010101000110101... È costituita da una serie di CHIP disposti su una scheda elettronica

Dettagli

PLC Programmable Logic Controller

PLC Programmable Logic Controller PLC Programmable Logic Controller Sistema elettronico, a funzionamento digitale, destinato all uso in ambito industriale, che utilizza una memoria programmabile per l archiviazione di istruzioni orientate

Dettagli

Corsi Speciali Abilitanti Indirizzo 2: Fisico-Matematico Modulo Didattico: Elementi di Informatica Classi: 48/A TEST D INGRESSO

Corsi Speciali Abilitanti Indirizzo 2: Fisico-Matematico Modulo Didattico: Elementi di Informatica Classi: 48/A TEST D INGRESSO Corsi Speciali Abilitanti Indirizzo 2: Fisico-Matematico Modulo Didattico: Elementi di Informatica Classi: 48/A TEST D INGRESSO NOME: COGNOME: LAUREA IN: ABILITAZIONI CONSEGUITE: ESPERIENZE DIDATTICHE

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni LEZIONE 2 (HARDWARE) a.a. 2011/2012 Francesco Fontanella Tre concetti Fondamentali Algoritmo; Automa (o anche macchina); Calcolo; 2 Calcolatore MACCHINA

Dettagli

La macchina programmata Instruction Set Architecture (1)

La macchina programmata Instruction Set Architecture (1) Corso di Laurea in Informatica Architettura degli elaboratori a.a. 2014-15 La macchina programmata Instruction Set Architecture (1) Schema base di esecuzione Istruzioni macchina Outline Componenti di un

Dettagli

Corso di Sistemi di Elaborazione delle informazioni

Corso di Sistemi di Elaborazione delle informazioni Corso di Sistemi di Elaborazione delle informazioni Sistemi Operativi Francesco Fontanella Complessità del Software Software applicativo Software di sistema Sistema Operativo Hardware 2 La struttura del

Dettagli

COME E COMPOSTO IL PC - WWW.DADEPC.IT

COME E COMPOSTO IL PC - WWW.DADEPC.IT Il computer è composto essenzialmente da due componenti L' HARDWARE ed il SOFTWARE COME E COMPOSTO IL PC - WWW.DADEPC.IT FACCIAMO UN PARAGONE Se vogliamo fare una paragone, L' HARDWARE è una stanza o un

Dettagli

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre

Hardware, software e periferiche. Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre Hardware, software e periferiche Facoltà di Lettere e Filosofia anno accademico 2008/2009 secondo semestre Riepilogo - Concetti di base dell informatica L'informatica è quel settore scientifico disciplinare

Dettagli

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore

Dispensa di Fondamenti di Informatica. Architettura di un calcolatore Dispensa di Fondamenti di Informatica Architettura di un calcolatore Hardware e software La prima decomposizione di un calcolatore è relativa ai seguenti macro-componenti hardware la struttura fisica del

Dettagli

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche

Input/Output. Moduli di Input/ Output. gestiscono quantità di dati differenti a velocità diverse in formati diversi. n Grande varietà di periferiche Input/Output n Grande varietà di periferiche gestiscono quantità di dati differenti a velocità diverse in formati diversi n Tutti più lenti della CPU e della RAM n Necessità di avere moduli di I/O Moduli

Dettagli

23/02/2014. Dalla scorsa lezione. La Macchina di Von Neumann. Uomo come esecutore di algoritmi

23/02/2014. Dalla scorsa lezione. La Macchina di Von Neumann. Uomo come esecutore di algoritmi Dalla scorsa lezione LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica LA MACCHINA DI VON NEUMANN Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico

Dettagli

Lezione n.19 Processori RISC e CISC

Lezione n.19 Processori RISC e CISC Lezione n.19 Processori RISC e CISC 1 Processori RISC e Superscalari Motivazioni che hanno portato alla realizzazione di queste architetture Sommario: Confronto tra le architetture CISC e RISC Prestazioni

Dettagli

Lezione 5 Architettura degli elaboratori. Mauro Piccolo piccolo@di.unito.it

Lezione 5 Architettura degli elaboratori. Mauro Piccolo piccolo@di.unito.it Lezione5 Architetturadeglielaboratori MauroPiccolo piccolo@di.unito.it Esecutore Unelaboratoreelettronico`eunaesecutore generalpurpose (ossia confinalitagenericheenonpredeterminate). Lecomponentiprincipali,cheanalizzeremonelseguito,sono:

Dettagli

Il microprocessore 8086

Il microprocessore 8086 1 Il microprocessore 8086 LA CPU 8086 Il microprocessore 8086 fa parte della famiglia 80xxx della INTEL. Il capostipite di questa famiglia è stato l 8080, un microprocessore ad 8 bit che ha riscosso un

Dettagli

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo

I Thread. I Thread. I due processi dovrebbero lavorare sullo stesso testo I Thread 1 Consideriamo due processi che devono lavorare sugli stessi dati. Come possono fare, se ogni processo ha la propria area dati (ossia, gli spazi di indirizzamento dei due processi sono separati)?

Dettagli

Ferrante Patrizia Ghezzi Nuccia Pagano Salvatore Previtali Ferruccio Russo Francesco. Computer

Ferrante Patrizia Ghezzi Nuccia Pagano Salvatore Previtali Ferruccio Russo Francesco. Computer Computer Il computer, o elaboratore elettronico, è la macchina per la gestione automatica delle informazioni Componenti: Hardware (la parte fisica del computer) Software (la parte intangibile, insieme

Dettagli

LABORATORIO DI SISTEMI

LABORATORIO DI SISTEMI ALUNNO: Fratto Claudio CLASSE: IV B Informatico ESERCITAZIONE N : 1 LABORATORIO DI SISTEMI OGGETTO: Progettare e collaudare un circuito digitale capace di copiare le informazioni di una memoria PROM in

Dettagli

La Memoria d Uso. La Memoria d Uso

La Memoria d Uso. La Memoria d Uso Fondamenti dell Informatica A.A. 2000-2001 La Memoria d Uso Prof. Vincenzo Auletta 1 Fondamenti dell Informatica A.A. 2000-2001 Memorie di Massa Processore CU e ALU Memorie di massa esterne La Memoria

Dettagli

Il processore - CPU (CENTRAL PROCESSING UNIT)

Il processore - CPU (CENTRAL PROCESSING UNIT) Il processore - CPU (CENTRAL PROCESSING UNIT) Funzionamento Programmi e dati risiedono in file memorizzati in memoria secondaria. Per essere eseguiti (i programmi) e usati (i dati) vengono copiati nella

Dettagli

Informatica per la Storia dell Arte. Anno Accademico 2014/2015

Informatica per la Storia dell Arte. Anno Accademico 2014/2015 Università degli Studi di Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica, Meccanica Informatica per la Storia dell Arte Anno Accademico 2014/2015 Docente: ing. Salvatore Sorce Architettura

Dettagli

ECDL MODULO 1 Concetti di base della tecnologia dell informazione. Prof. Michele Barcellona

ECDL MODULO 1 Concetti di base della tecnologia dell informazione. Prof. Michele Barcellona ECDL MODULO 1 Concetti di base della tecnologia dell informazione Prof. Michele Barcellona Hardware Software e Information Technology Informatica INFOrmazione automatica La scienza che si propone di raccogliere,

Dettagli

DMA Accesso Diretto alla Memoria

DMA Accesso Diretto alla Memoria Testo di rif.to: [Congiu] - 8.1-8.3 (pg. 241 250) 08.a DMA Accesso Diretto alla Memoria Motivazioni Organizzazione dei trasferimenti DMA Arbitraggio del bus di memoria Trasferimento di un blocco di dati

Dettagli

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi

Software relazione. Software di base Software applicativo. Hardware. Bios. Sistema operativo. Programmi applicativi Software relazione Hardware Software di base Software applicativo Bios Sistema operativo Programmi applicativi Software di base Sistema operativo Bios Utility di sistema software Software applicativo Programmi

Dettagli

Struttura del Calcolatore Corso di Abilità Informatiche Laurea in Fisica. prof. Corrado Santoro

Struttura del Calcolatore Corso di Abilità Informatiche Laurea in Fisica. prof. Corrado Santoro Struttura del Calcolatore Corso di Abilità Informatiche Laurea in Fisica prof. Corrado Santoro La prima macchina programmabile Conoscete queste macchine? Telai Jacquard (primi anni del 1800) Macchina per

Dettagli

L HARDWARE parte 1 ICTECFOP@GMAIL.COM

L HARDWARE parte 1 ICTECFOP@GMAIL.COM L HARDWARE parte 1 COMPUTER E CORPO UMANO INPUT E OUTPUT, PERIFERICHE UNITA DI SISTEMA: ELENCO COMPONENTI COMPONENTI NEL DETTAGLIO: SCHEDA MADRE (SOCKET, SLOT) CPU MEMORIA RAM MEMORIE DI MASSA USB E FIREWIRE

Dettagli

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale

Calcolatori Elettronici. La memoria gerarchica La memoria virtuale Calcolatori Elettronici La memoria gerarchica La memoria virtuale Come usare la memoria secondaria oltre che per conservare permanentemente dati e programmi Idea Tenere parte del codice in mem princ e

Dettagli

L Unità Centrale di Elaborazione

L Unità Centrale di Elaborazione L Unità Centrale di Elaborazione ed il Microprocessore Prof. Vincenzo Auletta 1 L Unità Centrale di Elaborazione L Unità Centrale di Elaborazione (Central Processing Unit) è il cuore di computer e notebook

Dettagli