Architettura dei calcolatori
Transcript
Architettura dei calcolatori
CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo [email protected] Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Architettura dei calcolatori Corso di Informatica - Prof. Crescenzio Gallo 2 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Architettura di un calcolatore Che cos’è un calcolatore? Come funziona un calcolatore? • • un calcolatore è un sistema; un sistema è un oggetto costituito da molte parti (componenti) che interagiscono, cooperando, al fine di ottenere un certo risultato. Studiare l’architettura di un sistema vuol dire • • individuare ciascun componente del sistema; • comprendere come i vari componenti interagiscono tra di loro. comprendere i principi generali di funzionamento di ciascun componente; Corso di Informatica - Prof. Crescenzio Gallo 3 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Hardware/Software La prima decomposizione di un calcolatore è relativa alle seguenti macro-componenti: Hardware • La struttura fisica del calcolatore, costituita da componenti elettronici ed elettromeccanici Software • L’insieme dei programmi che consentono all’hardware di • svolgere dei compiti utili. Il software comprende il software di base (tra cui il sistema operativo) e il software applicativo. Corso di Informatica - Prof. Crescenzio Gallo 4 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Organizzazione stratificata Hardware e software sono organizzati a livelli (o strati). Ciascun livello corrisponde a una macchina (reale o virtuale) in grado di Organizzazione a livelli eseguire un proprio insieme di operazioni. Ciascun livello fornisce un insieme di operazioni più semplici da utilizzare livello sottostante. dware e software sono organizzati a elli (o strati) rispetto a quelle del Ciascun livello è realizzato in termini dell’insieme di operazioni fornite dal scun livello corrisponde a una macchina livello immediatamente sottostante. ale o virtuale) in grado di eseguire un prio insieme di operazioni scun livello fornisce un insieme di erazioni più semplici da utilizzare rispetto a elle del livello sottostante scun livello è realizzato in termini ’insieme di operazioni fornite dal livello mediatamente sottostante Corso di Informatica - Prof. Crescenzio Gallo Software applicativo Software di base Hardware 5 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Unità centrale/Memoria L’unità centrale di elaborazione (CPU) • Componenti fondamentali • Data path • Il ciclo macchina La memoria • Generalità e caratterizzazione • Gerarchie di memorie e memoria cache Corso di Informatica - Prof. Crescenzio Gallo 6 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Vistafunzionale funzionale diCalcolatore un calcolatore Vista di un Ambiente Trasferimento Controllo Elaborazione Corso di Informatica - Prof. Crescenzio Gallo Memorizzazione Fondamenti di Informatica e laboratorio – Architettura Calcolatori 5 7 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Caratteristiche fondamentali Capacità di eseguire sequenze di istruzioni memorizzate Processore = Unità di Elaborazione + Unità di Controllo ‣ 1. Preleva le istruzioni dalla memoria ‣ 2. Interpreta i codici di istruzione ‣ 3. Effettua le azioni che questi prevedono Programma = Insieme organizzato di istruzioni Corso di Informatica - Prof. Crescenzio Gallo 8 rchitettura di Von Neumann Architettura di von Neumann Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Burks, Goldstein e Von Neumann sono stati i primi a proporre che il codice del programma potesse essere memorizzato nella stessa memoria dei dati Von Neumann fu il primo a proporre che il codice del programma potesse essere memorizzato nella stessa memoria dei dati, a differenza di quanto avveniva prima. Indirizzi CPU Dati Memoria Controllo Memoria• indifferenziata per dati o istruzioni Memoria indifferenziata per dati o istruzioni. Solo l'interpretazione da parte di CPU configurazione di da parte di CPUstabilisce stabilisce sese unauna data data configurazione di bit • Solo l'interpretazione bit è da riguardarsi come unundato come un'istruzione è da riguardarsi come dato oocome un'istruzione. Corso di Informatica - Prof. Crescenzio Gallo 9 unità centrale periferiche Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Componenti unCalcolatore calcolatore Componentidi di un Fondamenti di Informatica laboratorio – Architettura Calcolatori Corso di Informatica - Prof. CrescenzioeGallo 8 10 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Componenti di un calcolatore Una Scheda Madre Corso di Informatica - Prof. Crescenzio Gallo Scheda madre 11 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Componenti di un calcolatore Una Scheda Madre Scheda madre Corso di Informatica - Prof. Crescenzio Gallo Francesco Fontanella, Corso di Sistemi di Elaborazione dell'informazione 12 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Il Bus Bus e soluzione Master-Slave a cui sono contemporaneamente connesse le IlIl bus busèèuna unalinea linea a cui sono contemporaneamente connesse le unitàedel e che consente unità del calcolatore checalcolatore consente il trasferimento di datiiltra tali trasferimento di dati tra tali unità unità. Problema: contesa su un condiviso! mezzo condiviso! Problema: contesa su un mezzo Soluzione: = master, Soluzione: CPU =CPU master, memoriaperiferiche e periferiche= =slave slave CPU Ingresso Corso di Informatica - Prof. Crescenzio Gallo Memoria Uscita Fondamenti di Informatica e laboratorio – Architettura Calcolatori 9 13 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie BuseMaster-slave: pregi Bus soluzione Master-Slave Semplicità: Il bus è una a cuidi sono contemporaneamente unalinea sola linea connessione per tutti i dispositivi. connesse lenuovi unità del calcolatore e cheaggiunti consente il Estendibilità: dispositivi possono essere tramite trasferimento dati tra influenzare tali unità l’hw preesistente. un’interfaccia aldibus senza Standardizzabilità: definizione di normative che consentono a Problema: contesa su un mezzo condiviso! periferiche di CPU costruttori diversi di interagire correttamente. Soluzione: = master, periferiche = slave CPU Ingresso Corso di Informatica - Prof. Crescenzio Gallo Memoria Uscita Fondamenti di Informatica e laboratorio – Architettura Calcolatori 9 14 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie BuseMaster-slave: difetti Bus soluzione Master-Slave Lentezza: l’uso in mutua esclusione del bus inibisce almeno parzialmente la Ilparallelizzazione bus è una delle linea a cui sono contemporaneamente operazioni di trasferimento di dati tra dispositivi. connesse lealunità del e che consente il linea Limitata capacità: crescere delcalcolatore numero di dispositivi la presenza di una sola trasferimento di dati tradi tali unità comporta un limite alla capacità trasferire dati. Problema: su centrale un mezzo Sovraccarico dellacontesa CPU: l’unità vienecondiviso! coinvolta in tutte le operazioni di Soluzione: CPU = master, periferiche = slave trasferimento di dati. CPU Ingresso Corso di Informatica - Prof. Crescenzio Gallo Memoria Uscita Fondamenti di Informatica e laboratorio – Architettura Calcolatori 9 15 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Lo Schema di Riferimento Bus di sistema: schema Interfaccia I/O Interfaccia I/O Interfaccia I/O Memoria centrale CPU Bus dati Bus indirizzi Bus di controllo Corso di Informatica - Prof. Crescenzio Gallo 16 Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Tipi di Bus Il bus di sistema si divide in tre bus minori. Bus dati: utilizzato per trasferire dati (es. fra memoria e CPU, fra CPU e interfacce di I/O). Bus indirizzi: che identifica la posizione delle celle di memoria un cui la CPU va a scrivere o leggere. Bus di controllo: in cui transitano i segnali di controllo che consentono di selezionare le unità coinvolte in un trasferimento dati (sorgente e destinazione), di definire la direzione dello scambio (scrittura o lettura). Corso di Informatica - Prof. Crescenzio Gallo 17 Bus e soluzione Master-Slave Il bus è una linea a cui sono contemporaneamente connesse le unità del calcolatore e che consente il trasferimento di dati tra tali unità Problema: contesa su un mezzo condiviso! Soluzione: CPU = master, periferiche = slave Universitàdegli degliStudi Studidi diFoggia Foggia--Corso CdLSdiinriconversione Odontoiatriacreditizia e Protesi Dentarie Università TSRM Bus CPU Ingresso Memoria Uscita 9 Fondamenti di Informatica e laboratorio – Architettura Calcolatori ‣ Il bus è assimilabile ad un cavo che collega tra loro i vari componenti del computer. In realtà si tratta di un insieme di cavi su cui viaggiano segnali digitali a velocità particolarmente elevate. ‣ L’evoluzione tecnologica ha portato i bus a diversificarsi tra loro e a “specializzarsi”. Troviamo cosi’ i bus di sistema (connettono la CPU con la Memoria) oppure i bus locali, che connettono a più alta velocità differenti tipi di unità periferiche alla CPU. A questo proposito può essere utile definire la differenza tra bus e interfaccia. Si tratta in entrambi i casi di connessioni tra diversi dispositivi, ma si parla di bus quando allo stesso cavo sono collegati più dispositivi (con un sistema a “cascata”). L’interfaccia invece può connettere solo un dispositivo. Corso di Informatica Sistemi di Elaborazione - Prof. delle Crescenzio Informazioni Gallo- Prof. Crescenzio Gallo 18 Universitàdegli degliStudi Studidi diFoggia Foggia--Corso CdLSdiinriconversione Odontoiatriacreditizia e Protesi Dentarie Università TSRM Bus: architettura FSB (Front Side Bus) identifica quella parte di bus di sistema che mette in collegamento la CPU con la memoria e qualunque altra periferica installata nel computer (ad esempio modem interni, scheda video, scheda audio, etc.). Il FSB collega la CPU al resto dell'hardware attraverso un chipset che, di solito, è diviso in Northbridge e Southbridge. A questo, poi, si collegano tutti gli altri bus della scheda madre, come i bus PCI e AGP. Questi bus secondari, di solito, hanno una velocità che dipende dal FSB e non sono necessariamente sincroni ad esso. Infine, l’LPC (Low Pin Count) bus collega le periferiche a bassa velocità e legacy (tradizionali). Corso di Informatica Sistemi di Elaborazione - Prof. delle Crescenzio Informazioni Gallo- Prof. Crescenzio Gallo 19 Universitàdegli degliStudi Studidi diFoggia Foggia--Corso CdLSdiinriconversione Odontoiatriacreditizia e Protesi Dentarie Università TSRM Bus: evoluzione • I primi PC “IBM compatibili” degli anni ’80 erano equipaggiati con il bus ISA a 8 bit, poi evoluto nel bus AT a 16 bit e nell’EISA a 32/16 bit. • L’IBM introdusse alla fine degli anni ’80 il bus proprietario MCA a 32 bit, retrocompatibile 16 bit. • Il bus AGP (Accelerated Graphics Port) è un bus locale (cioè connesso direttamente alla CPU) come il suo predecessore VESA. Fu introdotto nel 1997 per le connessioni video ad alta velocità, e sostituito nel 2004 dal bus PCI. • Standard attuale: PCI (Peripheral Component Interconnect) Express (bus seriale; sino a 8 Gb/s per canale nella versione 3.0). Corso di Informatica Sistemi di Elaborazione - Prof. delle Crescenzio Informazioni Gallo- Prof. Crescenzio Gallo 20