Architettura dei Calcolatori 12 Storia

14
Dispense del corso di Architettura dei Calcolatori Architettura dei Calcolatori Dall’8086 all’IA-64

description

 

Transcript of Architettura dei Calcolatori 12 Storia

Page 1: Architettura dei Calcolatori 12 Storia

Dispense del corso diArchitettura dei CalcolatoriArchitettura dei Calcolatori

Dall’8086 all’IA-64

Page 2: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

La storia dei calcolatori elettronici (microprocessori)1978 Intel 8086 – primo processore di seconda generazione in grado di indirizzare oltre a 64kB – seguito da

MC68000 e Z8000

1979 Intel 8088 – processore a 8 bit con architettura int. a 16 bit

1979 IBM 801 – primo processore RISC (32 bit)

1982 RISC I – University of Berkley

1983 MIPS – University of Standford

1984 MC68020 – prima CPU con cache istruzioni integrata

1985 Intel 80386 – prima CPU a 32 bit con MMU integrata

1987 MC68030 prima CPU con cache separate e MMU (32 bit)1987 MC68030 – prima CPU con cache separate e MMU (32 bit)

1989 MC68040 – prima CPU con anche FPU

1989 Intel 80486

inizi ’90 PowerPC – da unione IBM, Apple e Motorola

1993 Pentium – nuova architettura superscalare e ILP

1994…Pentium II, Pentium III,

2000-2003Pentium IV, 180 milioni di transistors Pentium M (Centrino),

2004 Itanium IA64…..

2005 Itanium2 (Montecito) dual core 1 7 miliardi di transistors2005 Itanium2 (Montecito) dual core 1.7 miliardi di transistors

Page 3: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Intel Pentium

Architettura a 32 bit IA-32

Page 4: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Intel Pentium

Page 5: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

ISA 8086-Pentium

ISA 8086• Spazio di indrizzamento a 20 bit (1MBYTE), indirizzabile in modo segmentato con registri di segmento,

piu’ i vari modi di indirizzamento• Spazio di I/O a 16 bit 64Kbyte indirizzabile con DX• Spazio di I/O a 16 bit 64Kbyte indirizzabile con DX• permette il non allineamento con parole a 8 o 16 bit, ordinamento little endian• registri non ortogonali a 8 e 16 bit permette l’indirizzamento di una memoria a stack di tipo Last in First

out tramite le istruzioni push e pop ed i registri (impliciti) SS:SP

ISA Pentium• Spazio di indrizzamento a 32 bit ( 4 GBYTE), indirizzabile in modo segmentato con registri di segmento

che sono puntatori a locazioni di memoria in cui e’ contenuto il vero indirizzo di segmento ed il limite del segmento stesso ( se si supera il limite fissato si genera una eccezione Spesso pero’ si usa il modellosegmento stesso ( se si supera il limite fissato si genera una eccezione. Spesso pero si usa il modello lineare mettendo tutti i registri a 0

• Spazio di I/O a 16 bit 64Kbyte indirizzabile con DX• permette il non allineamento con parole a 8 o 16 o 32 bit

O di t littl di• Ordinamento little endian• registri non ortogonali a 8 16 e 32 bit• permette l’indirizzamento di una memoria a stack di tipo Last in First out tramite le istruzioni push e pop

ed i registri (impliciti) SS:SP• ha registri per la gestione di SO multitask (ad es GSR global status register)

Page 6: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Confronti tra CPU intel

Page 7: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Confronti tra CPU intel

Page 8: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Crescita frequenza CPU IntelCrescita frequenza CPU Intel36004000 3600

30003500

200025003000

1300

100015002000

5 8 16 25 60 150 233 450500

1000

0(1979)8086

(1985)386DX

(1993)PENTIUM

(1997)PENTIUM

(2000)PENTIUM8086 386DX PENTIUM PENTIUM

IIPENTIUM

4

Page 9: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Architettura IA-32

• Inizialmente di tipo CISC• Registri a 32 bit (Limite 4GB)• Compatibilità codice x86• Compatibilità codice x86• 80386, 80486,Pentium, …

Page 10: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Micro-architettura NetBurst

• Architettura superscalare (RISC)

• Out-of-order execution• Branch predictionp• Register renaming• Data prefetch

SIMD• SIMD

• Maggiori prestazioni, ma anche maggiore gg p ggcomplessità

Page 11: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Page 12: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Architettura IA-64

• Registri a 64 bit • RAM indirizzabile = 18 milioni di TByte• Incompatibile con il codice x86• Nuova filosofia di progetto EPIC

Page 13: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Test effettuati

• Decoder Mpeg v2• Compilatore C a 32 bit: SuSE gcc v3.3.1• Cross-compilatore a 64 bit: gcc v2.96• Cross-compilatore a 64 bit ottimizzato per Itanium 2: gcc ORC v2.1

Page 14: Architettura dei Calcolatori 12 Storia

Architettura dei calcolatori a.a. 2007/2008

Risultato dei test effettuati

IA-32 IA-64IA 32 IA 64

N di istruzioni 1 758 000 0002.310.134.138

(+31%)N. di istruzioni 1.758.000.000 (+31%)

727.303.163 Cicli di clock 1.371.971.750 (-47%)

CPI 0 78 0 31 (-60%)CPI 0,78 0,31 ( 60%)

N. di nop di DCT -118

(25% di 471)