La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Calcolatori Elettronici (9 crediti)

Presentazioni simili


Presentazione sul tema: "Calcolatori Elettronici (9 crediti)"— Transcript della presentazione:

1 Calcolatori Elettronici (9 crediti)

2 Informazione generali sul corso
Obiettivo del corso: Conoscenza del funzionamento di un calcolatore elettronico Verifica 2 prove scritte: Progetto di interfaccia processore-periferica e sua programmazione 5-6 domande sul programma Orale discussione compito scritto Sito del corso Testo e Materiale integrativo che si trovano sul sito Trasparenze del corso Riferimenti ai testi consigliati Dispense

3 Obiettivo del corso

4 Architettura pipeline del processore MIPS

5 Architettura di un DMAC (Direct Memory Access Controller) a 4 vie
PD 32 MEMORIA SCO DEV 1 DEV 2 DEV 3 DEV 4 IVN 1 IVN 2 IVN 3 IVN 4 Reg In Reg Out s CB AB DB IACK 2 32 DEV SEL DATO PRONTO DATO LETTO NEXT DATO DATO SCRITTO CAR 1 CAR 2 CAR 3 CAR 4 WC 1 WC 2 WC 3 WC 4 I/O FF 1 I/O FF 2 I/O FF 3 I/O FF 4 4 I/O WR lsb lsb BURST 1 BURST 2 BURST 3 BURST 4 START SELECT r Q IRQ Interrupt Dev Sel START 1 START 2 START 3 START 4 Bcar DECR 30 6 MWR MRD Mbi i=1..4 SCO DMAC 4 MBG MBR IACKout CLEAR 8

6 Gamma dei sistemi di calcolo
Sistemi “ embedded ” : incorporati in altri sistemi automobili, aerei, telefoni cellulari, PDA, frigoriferi ... Personal Computer, PC: diverse potenze di calcolo Server e Mainframe: caratteristiche molto diverse Applicazioni usate da molti utenti, webserver, sistemi per la gestione del sistema informativo di una organizzazione (es:banca) Supercalcolatore ( es. Previsione del tempo) embedded 97%; personal computer: 2-3%; server: < 0.1% Reti di Workstation : Aumento della potenza di calcolo mediante il collegamento di PC o WS mediante rete ad alta velocità

7 Introduzione Esempio d’impiego di calcolatori
Posta elettronica Server Client Server personal computer Applicazione Client di posta

8 Breve Storia dei Sistemi di Elaborazione

9 Preistoria (1600-1900) Pascal (1623-1662) Leibniz (1646-1716)
Pascaline: addizioni e sottrazioni Leibniz ( ) Anche moltiplicazioni e divisioni Charles Babbage ( ) A) Macchina Differenziale Algoritmo fisso Output su piastra di rame B) Macchina Analitica Prima macchina programmabile Memoria: 1000 x 50 cifre decimali I/O su schede perforate Limite: tecnologia meccanica

10 Generazione zero Macchine elettromeccaniche
Konrad Zuse (~1930 Germania) Macchina a relè Distrutta nella guerra John Atanasoff (~1940 USA) Aritmetica binaria Memoria a condensatori Howard Aiken (~1940 USA) MARK 1: versione a relè della macchina di Babbage (~100 anni dopo!) Memoria: 72 x 23 cifre decimali tempo di ciclo: 6 sec. I/O su nastro perforato

11 Generazione zero Tubi termoionici
COLOSSUS (~1940 GB) Gruppo di Alan Turing, Progetto segreto ENIAC (~1946 USA) J. Mauchley, J. Eckert valvole 30 tonnellate 140kw assorbimento Programmabile tramite 6000 interruttori e pannelli cablati 20 registri da 10 cifre

12 La Macchina di Von Neumann
IAS (~ 1950, Princeton USA) Programma in memoria, Aritmetica binaria, Memoria: 4096 x 40 bit Formato istruzioni a 20 bit: OPCODE INDIRIZZO 12 8

13 I Generazione: Sistemi Commerciali
Inizialmente il mercato è dominato dalla UNIVAC L’IBM entra nel mercato nel 1953, e assume una posizione dominante che manterrà fino agli anni ‘80: IBM 701 (1953): Memoria: 2k word di 36 bit 2 istruzioni per word IBM 704 (1956): Memoria: 4k word di 36 bit Istruzioni a 36 bit Floating-point hardware IBM 709 (1958) Praticamente un 704 potenziato Ultima macchina IBM a valvole

14 Tecnologia a transistor
II Generazione ( ) Tecnologia a transistor TXO e TX2 macchine sperimentali costruite al MIT Uno dei progettisti del TX2 fonda una propria società la Digital Equipment Corporation (DEC) La DEC produce il PDP-1 (1961): Memoria: 4k parole di 18 bit Tempo di ciclo di 4sec Prestazioni simili all’IBM 7090 Prezzo meno di un decimo Schermo grafico 512  512 pixel (primi videogiochi) Comincia la produzione di massa

15 II Generazione: Minicomputer
DEC PDP-8 (1965) Successore diretto del PDP-1 Interconnessione a bus, molto flessibile Architettura incentrata sull’I/O Possibilità di connettere qualsiasi periferica Prodotto in oltre esemplari

16 II Generazione: Supercomputer
Macchine molto potenti dedicate al number crunching 10 volte più veloci del 7090 Architettura molto sofisticata Parallelismo all’interno della CPU Nicchia di mercato molto specifica (resta vero anche oggi) CDC 6600 (1964) Progettista del CDC 6600 è Seymour Cray, poi fondatore della CRAY

17 III Generazione (1965-1980) Tecnologia LSI e VLSI
Evoluzione dell’architettura HW Microprogrammazione Unità veloci floating-point Processori ausiliari dedicati alla gestione dell’I/O Evoluzione dei Sistemi Operativi Virtualizzazione delle risorse Multiprogrammazione: esecuzione concorrente di più programmi Memoria Virtuale: rimuove le limitazioni dovute alle dimensioni della memoria fisica

18 III Generazione IBM: Serie IBM System/360 (famiglia elab.)
Macchine con lo stesso linguaggio Range di prestazioni (e prezzo) 1-20 Completa compatibilità Portabilità totale delle applicazioni OS comune OS/360 Digital PDP 11 Architettura a bus (Unibus) Prodotto in milioni di esemplari Sistema operativo UNIX, indipendente dalla piattaforma

19 …. nacque il Personal Computer
fine anni 70: Apple I, progettato in un garage nel tempo libero, venduto in scatola di montaggio 1981 PC IBM con Intel 8088 e MS DOS (Disk Operating System) della minuscola Microsoft 1981 PC M-20, della Olivetti processore Z8001 a 16 bit, OS proprietario, PCOS 1983 PC M-24, della Olivetti processore 8086, MS DOS Informatica diffusa non solo per specialisti (importanza dei videogames) Duopolio Intel/Microsoft Apple: “prestazioni migliori” , “costi elevati”, come vedremo dovuta a migliore organizzazione dei bus

20 La legge di Moore (1965) La capacità delle memorie DRAM quadruplica ogni tre anni (60% anno) Analogo aumento del numero di transistor sul chip Aumento della capacità di memorizzazione dei chip di memoria statica (SRAM) Aumento della capacità di calcolo delle CPU

21 Legge di Moore per le CPU
Più transistor: parallelismo interno Maggiore frequenza di funzionamento Rapp.prestazioni/costo 1951 valvola 1 1965 transistor 36 1975 circuito integrato 900 1995 circuito VLSI 2005 circuito ULSI

22 Legge di Nathan Il software è come un gas: riempie sempre completamente qualsiasi contenitore in cui lo si metta Al calare dei costi e all’aumentare della memoria disponibile, le dimensioni del software sono sempre cresciute in proporzione Il Circolo Virtuoso Costi più bassi e prodotti migliori Aumento dei volumi di mercato Fattori di scala nella produzione Costi più bassi …...

23 Calcolatore elettronico oggi…
Sistema elettronico digitale programmabile Elettronico digitale Sfrutta componenti elettronici digitali (porte logiche) che operano su grandezze binarie (bit) che possono assumere due soli valori (0 e 1) Sistema: Parti (o componenti) che interagiscono in modo organico fra loro (architettura di von Neumann) Programmabile Il comportamento del sistema è flessibile e specificato mediante un programma, ossia un insieme di ordini

24 Intel Computer Family

25 Grandezze elettriche (1)
Analogiche Il più possibile analoghe a ciò che rappresentano (all’originale) Ex: forma corrispondente alla voce Tensione elettrica Pressione aria tempo tempo

26 Grandezze elettriche (2)
Rappresentazioni digitali Le grandezze analogiche vengono approssimate con valori discreti (di numero finito) Valori digitalizzati della Tensione elettrica tempo

27 Grandezze elettriche (3)
Binarie Grandezze digitali che possono assumere due soli valori, comunemente indicati con 0 ed 1 La grandezza fisica può essere una tensione (alta, bassa), una corrente (presente, non presente), suono (alto, basso), luce (presente, non presente), etc.. Andamento ideale 0-> V1, 1-> V2 oppure 0-> V2, 1-> V1 … V2 V1 tempo

28 Grandezze elettriche (4)
Binarie In realtà… i valori 0 ed 1 sono rappresentati mediante valori di un intervallo Il cambiamento da 0->1, 1->0 non è istantaneo rumore Andamento reale 3.3 2.8 0.5 0.0 tempo

29 Mapping from physical world to binary world
Technology State 0 State 1 Relay logic Circuit Open Circuit Closed CMOS logic volts volts Transistor transistor logic (TTL) volts volts Fiber Optics Light off Light on Dynamic RAM Discharged capacitor Charged capacitor Programmable ROM Fuse blown Fuse intact Magnetic disk No flux reversal Flux reversal Compact disc No pit Pit

30 Vantaggi dei sistemi digitali
Riproducibilità del segnale analogico a meno dell’errore di rappresentazione Facilità di progetto Flessibilità Programmabilità Velocità di funzionamento (ns, 10-9 s) Economia

31 La nozione di macchina …
Per studiare l’architettura di un calcolatore è conveniente introdurre la nozione di macchina Macchina: entità in grado di eseguire istruzioni appartenenti ad un linguaggio una macchina può essere fisica o virtuale Una macchina è composta da un insieme di risorse che sono controllare e gestite dalle istruzioni Il significato di ogni istruzione è dato facendo riferimento all’utilizzo delle risorse

32 Architettura a livelli di un sistema di elaborazione
Un sistema di elaborazione è costituito da varie macchine virtuali L’architettura di un sistema di elaborazione è la descrizione delle caratteristiche delle varie macchine virtuali (livelli) Macchina fisica MF e linguaggio macchina LF Macchina virtuale Mv1 e linguaggio macchina Lv1 Macchina virtuale Mvn e linguaggio macchina Lvn

33 Livello applicativo E’ il livello usato da chi scrive applicazioni per uno specifico problema (es programmi in java) int i; i=i+2; bytecode Program in Java Compilat. Programma eseguibile JVM ISA: Instruction Set Architecture (Macchina di von Neumann) eseguita da Macchina ISA

34 Macchina di von Neumann
Unità di Ingresso Memoria di lavoro Unità di Uscita Unità di Calcolo Unità di Controllo

35 Macchina di von Neumann
Unità di Ingresso Memoria di lavoro Unità di Uscita Unità di Calcolo Unità di Controllo CPU

36 Caratteristiche distintive..
Singola memoria “monodimensionale” acceduta sequenzialmente Memorizzazione sia di dati che del programma Il tipo di dato non è memorizzato La macchina di von Neumann esegue le istruzioni del programma (nel linguaggio macchina)

37 Livelli di astrazione Software Hardware INSIEME DELLE ISTRUZIONI
(linguaggio macchina) Livello firmware Hardware Livello porte logiche Livello fisico (transistor..)

38 Il livello firmware (microarchitettura)
Interpreta le istruzioni del linguaggio macchina Le componenti principali di tale livello sono Registri (in grado di memorizzare gruppi di bit, ex: bit) ALU (Unità Aritmetica Logica) Data-path (connessioni per il trasferimento dei dati) Utilizza le porte logiche (livello 1)

39 Implementazione Istruzione macchina Istruzione L2 m1 Sequenza
A una istruzione macchina corrisponde una sequenza di comandi del livello 1 che la realizzano Istruzione macchina Istruzione L2 m1 Sequenza equivalente s m2 m3 mkI


Scaricare ppt "Calcolatori Elettronici (9 crediti)"

Presentazioni simili


Annunci Google