Architektura systemów komputerowych Grzegorz Mazur Zak lad Metod Obliczeniowych Chemii Uniwersytet Jagielloński 19 kwietnia 2011 Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 1 / 23
Wyk lad 1 Architektura von Neumanna i jej fizyczna realizacja Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 2 / 23
Plan Prehistoria 1 Prehistoria 2 Architektura von Neumanna 3 Historia 4 Ewolucja 5 Komputery wspó lczesne Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 3 / 23
Prehistoria Maszyna analityczna Zaprojektowana przez Charlesa Babbage a w 1837 Zupe lna w sensie Turinga Nigdy nie zrealizowana w praktyce Ada Byron hrabina Lovelace opracowa la program do obliczania liczb Bernoulliego Inspirowa la von Neumanna Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 4 / 23
Prehistoria ENIAC Konstrukcja: J. P. Eckert i J. W. Mauchly (Uniwersytet Pensylwanii) na zamówienie US Army Ballistic Research Laboratory rozpocz eta 1943, ukończona 1946 Pierwszy komputer ogólnego przeznaczenia Zupe lny w sensie Turinga Ustalony program (przeprogramowanie przez zmiane po l aczeń) 18000 lamp próżniowych, 27 ton, 167 m 2, 150 kw Wykorzystany do obliczeń bomby wodorowej Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 5 / 23
Prehistoria Kontrowersje Z3 (Konrad Zuse, 1941) Colossus (Tommy Flowers, Post Office Research Station, 1943) Harvard Mark I (Howard Aiken, IBM, 1944) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 6 / 23
Prehistoria Pierwsza generacja Komputery lampowe Zupe lne w sensie Turinga Architektura von Neumanna (First Draft of a Report on the EDVAC, 1945) SSEM, 1948; Manchester Mark 1, 1949; EDVAC, 1949 Pierwsze komputery komercyjne (Ferranti Mark 1, Uniwersytet w Manchesterze) Pami eć rt eciowa, lampa Wiliamsa, pami eć ferrytowa (1953 koniec lat 70) Pami eć b ebnowa (lata 50, 60) UMC (Elwro, 1962) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 7 / 23
Architektura von Neumanna Architektura von Neumanna pamięć procesor jednostka sterująca jednostka arytmetycznologiczna wejście wyjście Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 8 / 23
Architektura von Neumanna Architektura von Neumanna pami eć: przechowuje program (rozkazy) i dane jednostka arytmetyczno-logiczna: wykonuje dzia lania na danych binarnych jednostka sterujaca: pobiera rozkazy z pamieci i je wykonuje urzadzenia wejścia-wyjścia: umożliwiaja wprowadzanie danych i prezentacje wyników obliczeń Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 9 / 23
Architektura von Neumanna Architektura harwardzka pamięć instrukcji pamięć danych procesor jednostka sterująca jednostka arytmetycznologiczna wejście wyjście Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 10 / 23
Architektura von Neumanna Architektura rzeczywista Pierwsze komputery w architekturze harwardzkiej Obecnie architerktura harwardzka praktycznie tylko w DSP i mikrokontrolerach Wiele procesorów wykazuje cechy pomi edzy skrajnymi modelami architektury (x86, AMD64, ARM) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 11 / 23
Historia Druga generacja Tranzystor W lasności germanu: John Bardeen, Walter Brattain, AT&T Bell Labs 1947 Tranzystor krzemowy: Texas Instruments, 1954 Mniejsze od lamp Mniejsze zużycie mocy Transistor Computer, Uniwersytet w Manchesterze 1953 Harwell CADET, 1955 / IBM 608, 1955 (1957?) IBM 1401: ponad 10 tysi ecy sztuk (1960 1964) Pami eć dyskowa, IBM 350 1956 Pami ec taśmowa Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 12 / 23
Historia Trzecia generacja Uk lady scalone, Jack Kilby, Texas Instruments 1958 Zastosowane w komputerach w latach 60 Mainframe (IBM System/360, 1964 1978) Minikomputery (PDP, VAX) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 13 / 23
Historia IBM System/360 bajt adresowanie z rozdzielczościa bajtowa 32-bitowe s lowo mikrokod Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 14 / 23
Historia Czwarta generacja Mikroprocesor: 4004, Ted Hoff, Federico Faggin, Stanley Mazor, Intel 1971 Pami eć RAM Intel: 8008, 8080, potem 8086 Micral N z procesorem 8008, 1972 Mikrokomputery (IBM 5100 1975, IBM PC 1980) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 15 / 23
Ewolucja Prawo Moore a Liczba tranzystorów w uk ladzie scalonym podwaja si e co rok (Gordon E. Moore, 1965) Liczba tranzystorów w uk ladzie scalonym podwaja si e co dwa lata (Gordon E. Moore, 1975) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 16 / 23
Prawo Moore a Ewolucja 1,000,000,000 100,000,000 Itanium 2 Pentium 4 Itanium 10,000,000 Pentium III Pentium II Pentium 1,000,000 486 386 100,000 286 8086 10,000 8080 2,300 4004 8008 1971 1980 1990 2000 2004 Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 17 / 23
Prawo Moore a Ewolucja Liczba tranzystorów nie przek lada si e bezpośrednio na wydajność architektury równoleg le szybkość magistral szybkość dost epu do pami eci Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 18 / 23
Ewolucja Rozmiar danych 4 bity: Intel 4004 (1971) 8 bitów: Intel 8008 (1972), Intel 8080 (1974), Zilog Z80 (1976) 16 bitów: HP BPC (1975), Intel 8086 (1978), Intel 80286 (1982) 16/32 bity: Motorola 68000 (1979), Intel 80386SX (1986) 32 bity: Intel 80386 (1986) 64 bity: DEC Alpha (1992), HP/Intel Itanium (1998), AMD Opteron (2003) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 19 / 23
Komputery wspó lczesne Wynik ewolucji duża (i ciagle rosnaca) gestość upakowania podzespo lów hierarchiczna struktura pamieci wielopoziomowe zrównoleglenie architektury 32 i 64-bitowe dominuje architektura AMD64 i ARM (systemy wbudowane) Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 20 / 23
Zestaw instrukcji Komputery wspó lczesne Complex Instruction Set Computer (CISC) z lożone instrukcje wiele trybów adresowania rozkazy moga operować bezpośrednio na pamieci System/360, VAX, PDP, 8008, 8086, x86, AMD64 Reduced Instruction Set Computer (RISC) niewiele prostych instrukcji ograniczone tryby adresowania rozkazy moga operować na rejestrach i sta lych IBM 801, DEC Alpha, MIPS, ARM, Oracle SPARC Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 21 / 23
Prawo Amdahla Komputery wspó lczesne Przyspieszenie dzia lania programu wynikajace z jego zrównoleglenia wynosi co najwyżej ( I = f + 1 f ) 1 n gdzie f to szeregowa cz eść obliczeń a n to liczba procesorów. Grzegorz Mazur (ZMOCh UJ) Architektura systemów komputerowych 19 kwietnia 2011 22 / 23