CALCOLATORI ELETTRONICI
Transcript
CALCOLATORI ELETTRONICI
CALCOLATORI ELETTRONICI Introduzione Contenuto – Svolgimento del corso – Oggetto di studio – Programma – Storia dei calcolatori, evoluzione, tendenze attuali Calcolatori Elettronici - Introduzione (23/02/04) 1 Oggetto di studio n Oggetto di studio è l’architettura e l’organizzazione dei calcolatori elettronici. n Archit et t ura: riguarda le caratteristiche del sistema che sono visibili al programmatore. – Numero di bit utilizzato per rappresentare i dati (numerici, e testuali), – Numero di registri di macchina – Modalità di indirizzamento, istruzioni. Calcolatori Elettronici - Introduzione il repertorio delle (23/02/04) 2 ...Oggetto di studio Organizzazione: riguarda le relazioni strutturali tra le unità funzionali e il modo in cui esse realizzano una data architettura. Tendenzialmente non visibile al programmatore: n – la tecnologia impiegata – frequenza di clock – modalità di escuzione di una istruzione. Decidere se l’istruzione di moltiplicazione farà parte del repertorio di istruzioni è una questione architetturale; decidere se per l’esecuzione di questa istruzione è prevista una specifica unità di moltiplicazione o se è ottenuta attraverso l’impiego dell’unità di somma comunque presente nella macchina è una decisione organizzativa. Calcolatori Elettronici - Introduzione (23/02/04) 3 La realtà è un’astrazione! Livello applicativo: programmi utente Livello software di base: sistema operativo, compilatori, file system, interfacce utente /LYHOORDUFKLWHWWXUDOHRUJDQL]]DWLYRUHJLVWUL PHPRULHEXVXQLWjGLFRQWUROORXQLWjGL HODERUD]LRQHOLQJXDJJLRGLPDFFKLQD $VVHPEOHU Livello logico: porte, flip-flop, registri Livello fisico: resistenze, transistori, tensioni, correnti, .. Livello atomico: elettroni, protoni, spin, quanta, ... Calcolatori Elettronici - Introduzione (23/02/04) 4 Ausili didattici Libro di testo: n G. Bucci, “Architetture dei calcolatori elettronici”, McGraw-Hill, 2001, 40,00 Sul sito personale del docente n www.dsi.unifi.it\ ~ bucci – Alcuni esercizi svolti – Errata Corrige (Siete tutti invitati a segnalare qualunque errore rileviate) Calcolatori Elettronici - Introduzione (23/02/04) 5 Altri testi n n n n J.L. Hennessy, D.A. Patterson, “Architettura dei computer: un approccio quantitativo”, Jackson Libri, 2001, 51,50 (Hennessy e Patterson hanno pubblicato una sequela di libri sull’argomento, di cui quello sopra riportato è l’ultimo. I due precedenti in lingua italiana sono stati pubblicati presso Zanichelli) Hamacher, Vranesic e Zaky, "Computer Organization", McGrawHill, 1985. Liu e Gibson, "Microcomputer system: the 8086/88 family architecture programming and design", Prentice-Hall, 1984. Calcolatori Elettronici - Introduzione (23/02/04) 6 Ausili didattici n n Procurarsi un assemblatore per PC (Intel) per poter svolgere qualche esercizio di programmazione ASMB. (si fa l’ipotesi che tutti abbiano accesso a un PC) Preferibilmente il MASM 4.0 microsoft Attenzione: – Per capire l’architettura bisogna fare qualche programma in linguaggio Assembler. – Non basta quello che c’è sul libro. – Bisogna fare pratica (per capire cosa vuol dire uno statement assembler e come viene tradotto dall’assemblatore non c’è che fare la prova = > non basta venire al ricevimento studenti) – ….all’esame viene richiesto Calcolatori Elettronici - Introduzione (23/02/04) 7 Programma n n n n n n n n n n n Richiami: Logica, Organizzazione (CPU, Mem, I/O) Prestazioni Modelli architetturali, indirizzamento, … Architettura 8086 e relativo linguaggio ASMB CPU: progetto Sottosistema di ingresso/uscita (interfacce, interruzioni, DMA..) Memoria cache Memoria virtuale Pipeline Esecuzione fuori ordine Bus Calcolatori Elettronici - Introduzione (23/02/04) 8 Modalità n n n Lezioni e Esercitazioni in forma convenzionale Esame orale Gli esami durante i periodi in cui sono previsti dalla facoltà (interruzioni tra i semiperiodi didattici) – Per i fuori corso anche fuori da tali periodi n Durante le sessioni estiva e autunnale due appelli ufficiali più eventuali altri appelli da concordare Calcolatori Elettronici - Introduzione (23/02/04) 9 Il primo calcolatore ENIAC (Electronic Numerical Integrator And Calculator) Sviluppato presso l’Università della Pennsylvania Finanziato dal Ministero della Difesa USA Divenne operativo durante la II guerra mondiale Costruito tra il 1943 e il 1946 Reso pubblico nel 1946 n I progettisti erano J.P. Eckert e J. Mauchly Calcolatori Elettronici - Introduzione (23/02/04) 10 (1,$& Calcolatori Elettronici - Introduzione (23/02/04) 11 ENIAC n n n n n n n n n n Macchina di uso generale usata per il calcolo delle tabelle di tiro dell’artiglieria Una “U” di 30 metri alta 2m e di 1m di spessore (c.a. 120 mc) 30 tonnellate 18.000 tubi a vuoto 20 registri di 10 cifre (ogni registro lungo oltre mezzo metro) 200 microsec per un’addizione 180 KW di consumo. Quanto venne messo in funzione per la prima volta l’intero quartiere ovest di Filadelfia andò al buio. Programmazione manuale attraverso fili e interruttori Dati introdotti attraverso schede perforate Tediosa da programmare Calcolatori Elettronici - Introduzione (23/02/04) 12 ENIAC n Del gruppo di ENIAC faceva parte -RKQ9RQ 1HXPDQ – Scrisse un memo basandosi su ENIAC proponendo un calcolatore a programma memorizzato detto EDVAC, (Electronic Discrete Variable Automatic Computer) – Passato alla storia, anche se le idee erano di altri n Eckert e Mauchly fondarono una società e costruirono BINAC. In seguito la società acquistata da Remington Rand che nel 1951 produsse UNIVAC I, il primo calcolatore commerciale ($250.000, prodotto in 48 esemplari) n Nel 1973 un giudice federale ha annullato il brevetto di J.P. Eckert e J. Mauchly, stabilendo che ENIAC derivava dal computer di J. Atanassoff e C. Berry, costruito nel 1939 Calcolatori Elettronici - Introduzione (23/02/04) 13 Entra in scena l’IBM n Inizia a costruire nel 1950 n Nel 1951 presenta il mod. 701 di cui vengono costruite 19 unità n Nel 1964 viene annunciato il sistema S/ 360 – A transistori – 5 M$ investiti nel progetto – Concetto di famiglia (architettura) Calcolatori Elettronici - Introduzione (23/02/04) 14 ,%06\VWHP PDLQIUDPHFRPSXWHU Calcolatori Elettronici - Introduzione (23/02/04) 15 Generazioni G Periodo Tecnologia Prodotto Società/ macchine 1 1950-1959 Tubi a vuoto Commerciale IMB 701, Univac I 2 1960-68 Transistor Mainframe IBM S/ 360 ,QWURGXFHLOFRQFHWWR GL$5&+,7(7785$ 3 1969- 1977 Circuiti Integrati Minicalcolatore CDC 6600, Honeywell NCR, ICL, HP, DEC 50 nuove società DEC PDP11 HP 2100 Data General Nova 4 1978- LSI-VLSI Calcolatori Elettronici - Introduzione Personal Comp Apple II, IBM PC Workstation Apollo DN 300, Sun (23/02/04) 16 0,1,&20387(5 3'3 9$; /D'LJLWDO'(&LQWURGXVVHWUDLO HLOVLVWHPLSHUDSSOLFD]LRQLVXOFDPSR EDVDWLVXWHFQRORJLHDPHGLDVFDOD GLLQWHJUD]LRQH Calcolatori Elettronici - Introduzione (23/02/04) 17 I primi microprocessori n Intel 4004 Studio iniziato nel 1969, rilasciato nel 1971 Prodotto per una società di apparati elettronici (Busicom) che voleva costruire una macchina calcolatrice Doveva avere “programmabilità” CPU a 4 bit Clock a 108 KHz n Del gruppo faceva parte Federico Faggin (fonderà la Zilog) Calcolatori Elettronici - Introduzione (23/02/04) 18 …...I primi microprocessori n Intel 8008 Esce nel 1972 CPU a 8 Bit Precursore della famiglia 8080 PI microprocessori sono visti come componenti elettronici programmabili Calcolatori Elettronici - Introduzione (23/02/04) 19 Prima generazione (8 bit) n 1974 Intel 8080 (Toshiba, Nec, Texas, Siemens, AMD,…) n 1974 Motorola 6800 (Hitachi, Fujitsu, Fairchild) n 1975 Rockwell 6502 (Usato nell’Apple II ) n 1976 Zilog Z80 Intel 8085 (Mostek, SGS, tante altre...) È Introdotti con frequenza di clock inferiori a 1 MHz Vengono usati per i primi calcolatori personali Se si esclude l’Apple il sistema operativo è il CP/M (Digital Research) È È Calcolatori Elettronici - Introduzione (23/02/04) 20 812'(,35,0, &$/&2/$725,3(5621$/, 3HUVRQDOFRPSXWHU$SSOH,, Calcolatori Elettronici - Introduzione (23/02/04) 21 Seconda Generazione (16 bit) 1978 Intel 8086/ 88 => PC IBM (1981) 1979 Zilog Z8000 Motorola 68000 => Unix McIntosh n n Lo Z8000 scompare. Il 68000 si afferma con le workstations. Seguono vari modelli (68010, 68020, 68030, …68060). Anche il 68000 è praticamente scomparso nella seconda metà anni ‘90. Calcolatori Elettronici - Introduzione (23/02/04) 22 40 piedini 29.000 transistori Frequenza di clock: 5 MHz 1 Mbyte di spazio di memoria Parallelismo: 16 bit Calcolatori Elettronici - Introduzione (23/02/04) 23 $XWXQQR3HQWLXP Í SLHGLQL Í WUDQVLVWRUL Í I *+] *+] Í 'LPHQVLRQL[PP Í 6SD]LRGLPHPRULDILVLFD *E\WH *E\WH Í 3DUDOOHOLVPR LQWHUQRELW HVWHUQRELW Calcolatori Elettronici - Introduzione (23/02/04) 24 “Primati” Calcolatori Elettronici - Introduzione (23/02/04) 25 Legge di Moore n La capacità elaborativa raddoppia ogni 18 mesi (quadruplica ogni 3 anni) n Enunciata nel 1965. Modificata varie volte – inizi ‘70: – 1975: – metà ‘80: n 2X ogni 12 mesi (per gli anni ‘70) 2x ogni 2 anni (per gli anni ‘70) 2x ogni 18 mesi (da allora in avanti) Si riferiva al numero di transistori Calcolatori Elettronici - Introduzione (23/02/04) 26 .. Legge di Moore Microprocessori Intel Calcolatori Elettronici - Introduzione (all’introduzione) (23/02/04) 27 .. Legge di Moore Microprocessori Intel Calcolatori Elettronici - Introduzione (23/02/04) 28 .. Legge di Moore Memorie Calcolatori Elettronici - Introduzione (23/02/04) 29 .. Legge di Moore Riassunto C’è una forbice che si apre sem pre più t ra le prest azioni della logica e quelle delle DRAM Calcolatori Elettronici - Introduzione (23/02/04) 30 Il gap Calcolatori Elettronici - Introduzione (23/02/04) 31 Architettura INTEL (evoluzione) 1979 8086 1982 80286 5 MHz, 16 Bit, 1Mbyte (0,33 MIPS) 1986 80386 16 MHz, 32 Bit, 32 Gbyte, memoria virtuale segmentata e paginata 6 MHz,16 Bit, 4 Mbyte, memoria virtuale segmentata (0,9 MIPS) 1989 80486 25 MHz, cache integrata, proc. numerico 1893 Pentium 60 MHz, 64 Bit, doppia pipeline (100 MI PS) 1995 Pentium Pro 150 MHz, cache di secondo livello, esecuzione fuori ordine 1997 Pentium II Pentium Pro + MMX 1999 Pentium III 500 MHz, Pentium II + networking 2000 Pentium4 oltre 1,4 GHz, “ Hyper threading” Calcolatori Elettronici - Introduzione (23/02/04) 32 Crescita Prestazioni Archit. x86 Calcolatori Elettronici - Introduzione (23/02/04) 33 Crescita Prestazioni Archit. x86 n n n n n n Fino al 386 l’Intel dà le prestazioni (solo) in MIPS. Con l’ultimo 386 (1989) le dà in MIPS e SPECint92. Dal 486 (1989) al Pentium 66MHz (1993) le prestazioni vengono fornite sia in MIPS che in SPECint92 e SPECfp92. A Partire dal modello a 75 MHz del Pentium (1994), l’Intel non fornisce più le prestazioni in MIPS. Viene anche abbandonato SPEC92 per SPEC95 (SPECint95 e SPECfp95). Per i modelli correnti è stato sostanzialmente abbandonato anche SPEC95: le prestazioni vengono fornite con indici “di marca Intel” Tutti i dati su processori Intel al sito Internet: www.intel.com/ Calcolatori Elettronici - Introduzione (23/02/04) 34 Pentium 4 Vs 8086 (Confronto effettuato solo rispetto alla frequenza) rapporto frequenze 2800/ 5 = 560 Calcolatori Elettronici - Introduzione (23/02/04) 35 n Ipotesi: nel ‘78 ci voleva un’ ora d’auto da Firenze a Bologna. n Se l’auto avesse progredito in velocità allo stesso modo, oggi basterebbero 6,4 s Considerando solo la frequenza!!! Calcolatori Elettronici - Introduzione (23/02/04) 36 Stato dell’arte (2000) Mainframes IBM, Cray, Fujitsu,… SO proprietari Workstations Sun, HP, IBM, DEC CPU proprietarie SO UNIX PC Una pletora di costruttori CPU Intel SO Microsoft (Windows, Windows NT, Windows XP) Calcolatori Elettronici - Introduzione (23/02/04) 37 0DLQIUDPHV ,%0#VHUYHU]6HULHV Calcolatori Elettronici - Introduzione (23/02/04) 38 683(5&$/&2/$725, &UD\[PS &UD\\PS $UFKLWHWWXUHSDUDOOHOHDGHOHYDWLVVLPH SUHVWD]LRQLVYLOXSSDWHFRQWHFQRORJLH VSHFLILFKH &5$<;SURGRWWRGLSXQWD Calcolatori Elettronici - Introduzione (23/02/04) 39 6,67(0,$&/867(5 ,VLVWHPLGLVXSHUFDOFRORVRQRDWWXDOPHQWH UHDOL]]DWLFRQQHWWHQGRLQUHWHQRGLGLFDOFROR DORURYROWDUHDOL]]DWLFRQVLVWHPLDSL&38 &UD\;)LQRDDUPDGLSHUXQWRWDOHGL SURFHVVRULYHWWRULDOL 3UHVWD]LRQLPD[7)/23 ,%0)LQRDSURFHVVRUL,QWHO;HRQD *+] 3UHVWD]LRQLPD[ROWUH7)/23 Calcolatori Elettronici - Introduzione (23/02/04) 40 Stato dell’arte n I calcolatori moderni presentano molti aspetti interessanti riguardo la loro struttura e le tecniche per ottenere prestazioni elevate, a costi accettabili. Tanto per citare – – – – – – elevato parallelismo cache memoria virtuale protezione pipeline ... Calcolatori Elettronici - Introduzione (23/02/04) 41 Lo stato attuale I L VERO FENOMENO E’ STATO MI CROSOFT n n n n n Nel 1981 IBM Dominava il mercato. Per un americano “IBM” e “calcolatori” erano sinonimi Bill Gates ha cominciato con un BASIC per 8085 (CP/ M), a metà anni 70 Nel 1981 IBM gli commissionò il DOS del PC Oggi Microsoft è la maggior industria software PC - I nt el - Micr osof t : l’inf or mat ica anni ‘90 e seguent i Calcolatori Elettronici - Introduzione (23/02/04) 42 Segnali analogici e digitali Un segnale analogico porta un’infinità di valori tt Un segnale digitale assume un numero finito di valori Segnale binario: 2 soli valori (in realtà due fasce) Calcolatori Elettronici - Introduzione t (23/02/04) 43 Segnali analogici e digitali (cont.) n n Disturbi e limiti fisici alla velocità di variazione rendono inaccurato sia il processo di generazione che quello di riconoscimento e misura dei segnali analogici I segnali digitali sono molto meno sensibili al rumore” e ai fenomeni transitori (basta che i disturbi non portino fuori dalla fascia) – nI SSUREDELOLWjGLFRUUHWWRIXQ]LRQDPHQWRGLXQFRPSRQHQWH – QQXPHURGLFRPSRQHQWL – 3URE&KHLOVLVWHPDRSHULFRUUHWWDPHQWH S Q &RQVHJXHQ]DS! sistemi digitali binari sono i più affidabili: si tratta di riconoscere se un segnale è a livello alto o basso facilmente diagnosticabili le condizioni di malfunzionamento Calcolatori Elettronici - Introduzione (23/02/04) 44