Architettura di un calcolatore e principali caratteristiche tecniche e tecnologiche Sommario Il modello di Von Neumann Principali componenti di un personal computer: Unità centrale di elaborazione (CPU) Gerarchia e tipi di memoria Dispositivi comuni di input/output Fattori che influenzano le prestazioni di un computer: Velocità della CPU Dimensione della RAM Il processore e la memoria della scheda grafica Varie tipologie di calcolatori Università degli Studi di Salerno Modello di Von Neumann [1] Verso la metà del secolo scorso, sotto l’impulso dello sforzo bellico dovuto alla II guerra mondiale, gli sviluppi dell’elettronica hanno reso possibile costruire dispositivi che sono particolarmente adatti ed efficienti per la memorizzazione e la successiva elaborazione di stringhe di bit. La disponibilità di una macchina in grado di elaborare l’informazione in formato binario e di farlo in maniera “programmata” sono la base dell’architettura dei moderni calcolatori elettronici. I computer che utilizziamo oggi hanno tutti una struttura che può essere descritta mediante un modello che ha preso il nome da un matematico ungherese, John Von Neumann. Università degli Studi di Salerno Modello di Von Neumann [2] Durante gli anni della II guerra mondiale ed in quelli immediatamente successivi, Von Neumann fece parte del team che progettò questo nuovo tipo di macchina che avrebbe avuto la larghissima diffusione che oggi conosciamo. Utilizzando la codifica universale fornita dal codice binario, l’idea fu quella di memorizzare nella macchina non solo i dati, ma anche le istruzioni che le occorrevano per svolgere determinate operazioni. Ciò rendeva la macchina “programmabile”, cioè non era più necessario reinserire le istruzioni a ogni esecuzione ottenendo un minor spreco di tempo ed una maggiore velocità di operazione Lo scopo originale di queste macchine era quello di calcolare a grandissima velocità le complesse tabelle numeriche che occorrevano per i calcoli balistici relativi alle traiettorie dei proiettili (da qui il nome di “calcolatori”). Università degli Studi di Salerno Modello di Von Neumann [3] La struttura descritta dal Modello di Von Neumann comprende sei unità fondamentali: Memoria CU BUS L’Unità di controllo si occupa di controllare tutte le operazioni del calcolatore, interpretare le istruzioni prelevate dalla memoria e inviare alle altre unità i segnali per l'esecuzione delle operazioni. L’Unità aritmetico-logica, detta ALU (Arithmetic & Logic Unit), fornisce la capacità di effettuare operazioni aritmetiche di base .Queste due unità sono spesso integrate in una CPU, Central Processing Unit – Unità di Elaborazione Centrale Input ALU CPU Le componenti fondamentali di un moderno calcolatore elettronico Università degli Studi di Salerno Output Modello di Von Neumann [4] Memoria CU BUS La Memoria che ha lo scopo di conservare le istruzioni e i dati da elaborare e i risultati ottenuti dalle elaborazioni; L’Unità di ingresso (Input) che immette le informazioni nel calcolatore per farle elaborare; L’Unità di uscita (Output) che riceve le informazioni dalla memoria del calcolatore per renderle pronte all’uso; le unità di ingresso e uscita sono anche dette periferiche. Il Bus, vero e proprio canale di comunicazione che consente ai dati di transitare fra diversi componenti del calcolatore. Input ALU CPU Le componenti fondamentali di un moderno calcolatore elettronico Università degli Studi di Salerno Output modello di Von Neumann [5] Come lavora un Calcolatore Elettronico basato sul Modello di Von Neumann? Cerchiamo di rispondere in maniera semplificata ma corretta a questa domanda. Come abbiamo detto l’ipotesi di partenza è che sia le istruzioni che i dati sono disponibili in memoria (ad esempio sono state opportunamente “caricate” nella memoria usando l’unità di input). Università degli Studi di Salerno modello di Von Neumann [6] In queste ipotesi, per ogni istruzione del programma: la CPU, tramite la sua parte Controllo, ordina il prelevamento di una istruzione dalla Memoria; la esegue utilizzando le opportune unità coinvolte durante l’esecuzione può, di volta in volta: •usare la ALU •effettuare altri accessi in Memoria per leggere o scrivere dati •effettuare operazioni di ingresso (per es. leggi un dato dalla tastiera) o di uscita (per es. visualizza il risultato sul video). BUS la decodifica, cioè la interpreta capendo quali azioni comporta; Memoria CU Input ALU CPU Le componenti fondamentali di un moderno calcolatore elettronico Università degli Studi di Salerno Output Principali componenti di un personal computer [1] Ci occuperemo ora di descrivere in maggior dettaglio l’architettura di un Personal Computer. Una nota di colore: è interessante notare che mentre inizialmente gli elaboratori elettronici erano degli “scatoloni” dal design poco accattivante che custodivano dei circuiti elettrici per l’elaborazione di dati, con il passare del tempo si è sviluppato un vero e proprio culto per il computer, tanto che le case produttrici sono in continua competizione nella realizzazione di macchine dal design futuristico tale da renderle anche oggetti di arredo. Università degli Studi di Salerno Principali componenti di un personal computer [2] Come abbiamo già detto, tutti i moderni calcolatori, anche se con design e funzioni diverse, hanno la stessa architettura di base, che riprende quella del modello di Von Neumann. Ricapitolando questo Modello prevede: un’unità centrale di elaborazione (CPU) che effettua e controlla le operazioni, elabora e smista i dati di ingresso e di uscita; una memoria centrale che registra le istruzioni di un programma e i dati; le unità periferiche di input/output che svolgono funzioni di comunicazione tra l’utente ed il calcolatore; I bus necessari per scambiare dati tra le varie componenti. Università degli Studi di Salerno Principali componenti di un personal computer [3] Nei PC contemporanei possiamo sempre ritrovare alcune componenti fisiche. Ad esempio: La CPU ovvero il processore; Le Memorie - Rom, Ram, hardisk; I dispositivi di input/output Il Modello di Von Neumann deve essere realizzato nella pratica con opportune componenti. Proviamo a capire la corrispondenza tra le componenti fisiche ed il Modello. Università degli Studi di Salerno La CPU [1] Il vero e proprio cuore del PC è il microprocessore. Esso corrisponde a quella che nel Modello di Von Neumann veniva chiamata CPU la CPU, acronimo di Central Processing Unit, è l’unità centrale di elaborazione. Prende il nome di processore poiché svolge sistematicamente precise operazioni, elabora dunque un “processo”. Infatti, legge le istruzioni e i dati dalla memoria ed esegue le istruzioni. Tra le più famose industri costruttrici si annoverano: Intel, Motorola, IBM, AMD Università degli Studi di Salerno La CPU [2] Un moderno microprocessore è realizzato come un unico componente elettronico integrato (anche detto microchip o, più semplicemente, chip) ed è composto da: •un’unità di controllo che interpreta le istruzioni da eseguire e coordina le azioni delle altre componenti del calcolatorie; •Un unità aritmetico-logica che esegue le operazioni matematiche; •zone di immagazzinamento (cioè piccole memorie) dove vengono custoditi i dati in fase di elaborazione; •Un bus “interno” tra le componenti della CPU salti cache dati cache istruzioni unità di controllo bus unità di unità di elabo razion elaborazione a virgola mobile e interna Università degli Studi di Salerno La CPU [3] Tra le zone di immagazzinamento della CPU ve ne sono alcune dette registri che possono contenere: i dati che si stanno elaborando; le istruzioni che il processore deve eseguire. Uno speciale registro contatore, spesso detto Program Counter o Prossima Istruzione, si occuperà di controllare l’ordine con il quale vengono eseguite le istruzioni del programma, tenendo presente quale istruzione il processore sta eseguendo in quel determinato momento. Registro Prossima istruzione 3 Posizione Istruzione 1 Somma 2 Stampa 3 Sottrai … … … … … Memoria Università degli Studi di Salerno La CPU [4] Una caratteristica fondamentale del processore è la sua velocità, cioè la capacità di eseguire uno o più operazioni al secondo. Questa velocità viene regolata da un orologio, detto “clock”. La cosiddetta velocità di clock viene espressa in Hertz o cicli al secondo. Il legame tra la velocità di clock e la capacità elaborativa del processore è molto complesso. Molto spesso, tuttavia, si può affermare che maggiore è la velocità di esecuzione delle singole operazioni maggiore è la potenza del processore. Università degli Studi di Salerno La CPU [5] A livello fisico i processori sono realizzati (con un processo detto di “integrazione”) su chip contenenti milioni di transistor. Ogni transistor può essere visto come un interruttore che con il suo stato di “aperto” o “chiuso” può elaborare un bit di informazione. Il processore si connette alla scheda madre mediante opportuni “piedini” (ovvero piccoli connettori elettrici). Università degli Studi di Salerno La CPU [6] Il processore viene realizzato mediante una tecnologia detta a circuito integrato che produce un componente detto chip. Un chip si può descrivere come un insieme di cristalli di silicio lavorati e assemblati. Non conducendo elettricità per natura, il silicio deve essere “drogato”, cioè trattato con elementi chimici. I cristalli allo stato puro vengono sviluppati in speciali forni sottovuoto. Le piastrine di silicio vengono successivamente esposte a sostanze chimiche, per rendere possibile il passaggio di corrente elettrica. Il silicio così trattato diventa semiconduttore. Le barre di silicio vengono poi tagliate in sottili lamine dette wafer che contengono molti chip (vedi figura a lato). chip wafer I singoli chip vengono testati e quelli non idonei scartati mentre quelli validi verranno estratti dal wafer con un laser o con una lama di diamante. Università degli Studi di Salerno La CPU [7] Per poterli maneggiare facilmente i chip vengono messi all'interno di un supporto di plastica mediante un procedimento detto packaging (impacchettamento). Il packaging del 486 Dato l’elevato livello di integrazione raggiunto (in un chip di lato 1 cm x 1 cm sono oggi presenti milioni di transistor) uno dei grandi problemi da affrontare è il surriscaldamento provocato dal passaggio della corrente. Per evitare che il processore si surriscaldi e lavori male, o che addirittura si guasti completamente, viene coperto da una sostanza morbida refrigerante e sopra di esso viene montata una ventola a motore. Vista ingrandita del chip Università degli Studi di Salerno