740 likes | 1.03k Views
Osnove arhitekture računalniških sistemov. Predavatelj:Milan Ojsteršek Asistenta: Aleksander Kvas, Milan Zorman. Vsebina predmeta:. Uvod: Lastnosti računalniških sistemov Zgodovina Klasifikacija računalniških arhitektur Zmogljivost računalniških sistemov Mikroprogramirani nivo
E N D
Osnove arhitekture računalniških sistemov Predavatelj:Milan Ojsteršek Asistenta: Aleksander Kvas, Milan Zorman
Vsebina predmeta: • Uvod: • Lastnosti računalniških sistemov • Zgodovina • Klasifikacija računalniških arhitektur • Zmogljivost računalniških sistemov • Mikroprogramirani nivo • Osnove zbirnega jezika • Horizontalna organizacija • Vertikalna organizacija
Vsebina predmeta - nadaljevanje • Nivo strojnega jezika • Vodila • Von Neumanova in Harvardska arhitektura • Cevljenje • CISC - RISC • Predstavitev podatkov v računalniku • Vrste in format ukazov • Vrste registrov • Vrste naslavljanj
Vsebina predmeta - nadaljevanje • Hierarhija pomnilnikov • Lokalnost dostopov • Verjetnost zadetka in zgrešitve • Predpomnilnik • Navidezni pomnilnik • Vhodno-izhodne enote • Nivo operacijskega sistema • Paralelni računalniški sistemi
Literatura • D. Kodek: Arhitektura računalniških sistemov. BI-TIM, Ljubljana 2000. • D. A. Patterson, J. L. Hennessy: Computer Architecture A Quantitative Approach. Morgan Kaufman Publishers, INC., San Mateo, California 1998. • W. Stallings: Computer Organization and Architecture, Fifth edition, Prentice Hall 2000. • R. J. Baron in L. Higbie: Computer Architecture. Adisson Wesley, Wokingham 1992. • A. S. Tanenbaum: Structured Computer Organization. Third Edition, Prentice-Hall, Inc., Englewood Cliffs 1999.
Pomembno !!! • Obveznosti študentov • Najmanj 80 % udeležba na vajah • Opravljene vaje • Ustni izpit • Materiali na internetu: • http://chp.uni-mb.si/oars
Arhitektura in organizacija 1 • Z računalniško arhitekturo definiramo lastnosti računalniškega sistema, kot jih vidi programer če programira na njegovem strojnemnivoju: • Nabor ukazov, predstavitev podatkovnih tipov na strojnem nivoju, načini naslavljanja ukazov. • Z organizacijo računalniškega sistema definiramo lastnosti, ki so nevidne za programerja na strojnem nivoju računalniškega sistema in so odvisne od tehnologije, ki je uporabljena za implementacijo: • Nadzorni signali, vmesniki, seštevalniki, množilniki, pomnilniki ….
Arhitektura in organizacija 2 • Vsitipi računalnikov Intel x86 iz družine imajo isto računalniško arhitekturo. • Podobno velja za IBM System/370 družino računalnikov. • Kompatibilnost programskega koda ( navzdolna (bacwards), navzgorna (forward) • Organizacija je različna za posamezne tipe računalnikov (npr. med Intel 486 in Pentium ali Pentium II)
Kaj vpliva na uspeh in preživetje računalniške arhitekture? • Veliki proizvajalci • Baza uporabnikov • Obstoječa programska oprema • Enostavnost uporabe • Konkurenčna cena • Arhitektura, ki je neodvisna od tehnologije (razširljivost, prilagodljivost) • Odprtost (proizvajalci publicirajo njene specifikacije) • Zmogljivost
Struktura in funkcija računalniškega sistema • S strukturo računalniškega sistema definiramo način kako so komponente računalniškega sistema med seboj povezane • S funkcijo računalniškega sistema definiramo posamezne operacije, ki jih izvajajo posamezne komponente računalniškega sistema
Funkcije • Poznamo naslednje funkcije komponent računalnikega sistema: • Procesiranje podatkov • Shranjevanje podatkov • Prenos podatkov • Nadzor nad operacijami
Shranje- vanje podatkov Prenos podatkov Nadzorni mehanizem Proces- iranje podatkov Pogled na funkcije računalniškega sistema
Shranje- vanje podatkov Prenos podatkov Nadzorni mehanizem Proces- iranje podatkov Operacije (1) • Prenos podatkov (npr. tipkovnica ali zaslon)
Shranje- vanje podatkov Prenos podatkov Nadzorni mehanizem Proces- iranje podatkov Operacije (2) • Shranjevanje podatkov (npr. prenos podatkov iz interneta na disk)
Shranje- vanje podatkov Prenos podatkov Nadzorni mehanizem Proces- iranje podatkov Operacije (3) • Procesiranje podatkov iz pomnilnika (npr. pripis obresti bančnemu računu)
Shranje- vanje podatkov Prenos podatkov Nadzorni mehanizem Proces- iranje podatkov Operacije (4) • Procesiranje iz pomnilnika v vhodno-izhodne enote (npr. tiskanje podatkov o transakcijah na bančnem računu)
Strukturaračunalniškega sistema – najvišji nivo abstrakcije Vhodno-izhodne enote Računalnik Centralna procesna enota Glavni pomnilnik Računalnik Sistemske komunikacijske povezave Vhod/ izhod Zunanje komunikacije
Struktura računalniškega sistema – centralna procesna enota CPE Aritmetično Logična Enota Računalnik Registri V/I Sistemsko vodilo CPE Povezave Znotraj CPE Pomnilnik Kontrolna Enota
Struktura računalniškega sistema – Kontrolna enota Kontrolna enota CPE Sekvenčna logika ALE Kontrolnal Enota Notranje Vodilo Registri, Multiplekserji in Dekoderji Registri Nadzorni Pomnilnik
Tiskalnik in luknjalnik kartic Podatki Mlin Pomnilnik Podatki Ukazi Podatki Ukazne kartice Podatkovne kartice Zgodovina računskih strojev • Abakus • Antiktere (stara Grčija) • Obdobje mehanike (uporaba zobnikov) • Leibnitz • Babbage • Analitični stroj
Zgodovina računskih strojev - nadaljevanje • Obdobje elektromehanike • Holerith – ustanovitelj IBM 1924 • Zuse – Z3 - 1941 • Numerični prikaz – žarnice • Pomnilnik – 64 22 bitnih besed • Ukazi na luknjanem traku • Binarna in desetiška aritmetika • Plavajoča vejica • 2600 relejev • Mark 1 – Aiken – Harvardska arhitektura 1943 • Ukazi A1,A2 OP
Zgodovina računskih strojev – elektronski računalniki • ENIAC Electronic Numerical Integrator And Computer • Eckert and Mauchly • Univerza v Pensilvaniji • Izračun poti balističnih istrelkov • Začetek 1943 • Konec 1946 • Uporabljal se je do 1955
ENIAC - podrobnosti • Desetiška števila • 20 akomulatorjev za 10 cifer • Programiral se je z nastavljanjem 6000 stikal • 18000 elektronk • 30 ton • 140 kW porabe električne energije • 5000 seštevanj na sekundo Programska enota Ukazi Centralna procesna enota Pomnilnik Podatki Podatki Stikala Čitalec kartic Tiskalnik Luknjalnik kartic
Von Neumannov in Turingov koncept • Glavni pomnilnik hrani program in podatke • ALE izvaja operacije nad binarnimi števili • Nadzorna enota vzame ukaz iz pomnilnika, ga dekodira in izvede • Delovanje vhodno – izhodnih enot nadzoruje kontrolna enota • Prvi računalnik takšnega tipa so naredili na Princeton Institute for Advanced Studies • IAS • Končan je bil 1952
Struktura Von Neumannovega računalnika Aritmetična in logična enota Vhodno – izhodna enota Glavni pomnilnik Kontrolna enota
IAS - podrobnosti • 1000 x 40 bitne besede • Bnarna števila • 2 x 20 bitni ukazi v eni pomnilniški besedi – vsak ukaz ima operacijsko kodo in naslov v pomnilniku • Registri v CPE • Pomnilniški podatkovni register (Memory Buffer Register - MBR) • Pomnilniški naslovni register (Memory Address Register - MAR) • Ukazni register (Instruction Register – IR) • Ukazni vmesni register (Instruction Buffer Register – IBR) • Programski števec (Program Counter – PC) • Akomulator (Accumulator – AC) • Multiplier Quotient
Struktura IAS - podrobnosti Centralna procesna enota Aritmetična in logična enota Akomulator MQ Vezja ALE MBR Vhodno Izhodna enota Ukazi inpodatki Glavni pomnilnik PC IBR MAR IR Vezja KE Naslov Krmilna enota
Poslovni računalniki • 1947 - Eckert-Mauchly Computer Corporation • UNIVAC I (Universal Automatic Computer) • US Bureau of Census 1950 calculations • Konec1950 - UNIVAC II • Hitrejši • Več pomnilnika
IBM • 1953 - model 701 • Prvi IBM-ov računalnik s shranjenim programom • Namenjen znanstvenim izračunom • 1955 - model 702 • Namenjen poslovnim aplikacijam
Tranzistorji • Zamenjajo elektronk • Manjši • Cenejši • Manj se grejejo in porabijo manj energije • Narejeni iz silicija • Iznašli so ga v Bellovih Laboratorijih - William Shockley
Računalniki, ki so uporabili trazistorsko tehnologijo • Druga generacija računalnikov • IBM 7000 • DEC - 1957 • Proizvedli so PDP-1
Generacije računalnikov • Prva generacija - Elektronke - 1946-1957 • Druga generacija - Tranzistorji - 1958-1964 • Tretja generacija - Small scale integration (SSI) - 1965 do 100 tranzistorjev na čip • Tretja genracija - Medium scale integration (MSI)do 1971 • 100-3000 tranzistorjev na čip • Četrta generacija - Large scale integration (LSI) - 1971-1977 • 3000 - 100000 tranzistorjev na čip • Četrta generacija - Very large scale integration (VLSI)- 1978 do danes • 100000 – 100000000 tranzistorjev na ćip • Ultra large scale integration (ULSI) • Več kot 100000000 tranzistorjev na čip
Prva računalniška generacija • 1946-1957 • Primeri ENIAC, EDVAC, IAS • Aritmetika s fiksno vejico • Releji in elektronke • Strojni in zbirni jezik • Čitalci in luknjalci kartic • Magnetni boben
Druga računalniška generacija • 1958-1964 • Tranzistorji • Magnetni diski • Feritni pomnilniki • Visoki programski jeziki (FORTRAN, COBOL) • Primeri IBM 7094, CDC 6600 • Paketna obdelava (batch processing) • Aritmetika s plavajočo vejico • V/I procesorji
Tretja računalniška generacija • 1964 – 1978 • SSI in MSI integracija • Polprevodniški pomnilniki • Predpomnilnik • Navidezni pomnilnik • Mikroprogramiranje • Multiprogramiranje • Multiprocesiranje • Cevljenje • Vektorski računalniki (TI-ASC) • SIMD računalniki (ILIAC 4) • MIMD računalniki (CMMP)
Četrta računalniška generacija • 1979 – • LSI, VLSI, ULSI • RISC • Časovno dodeljevanje (time sharing) • Paralelno procesiranje (podatkovno vodeni računalniki, sistolična polja, rekonfigurabilni • Masovni paralelizem (Connection machine)
Peta računalniška generacija • 1980 – • Procesiranje znanja • Direktno izvajanje logičnih jezikov (npr. PROLOG – strojni jezik) • Inteligentni sistemi • Ekpertni sistemi • Nevronske mreže • Multimedia
Šesta računalniška generacija • 1980 – • Molekularni računalniki • Optični računalniki • Fotonika
Moore – ov Zakon Law • Gordon Moore - soustanovitelj Intel-a • Rekel je, da se bo število tranzistorjev na čip podvojilo vsako drugo leto • Od 1970 naprej se število tranzistorjev na čip podvoji vsakih 18 mesecev • Cena čipov ostaja enaka • Večja gostota na cm2 pomeni krajše električne povezave, kar pomeni večjo zmogljivost. Zmanjševati moramo napajalno napetost, da ne pride do prebojev, povečujemo lahko frekvenco Manj povezav med čipi pomeni večjo zanesljivost
Grosch – ev zakon Zmogljivot = konstanta * cena2 Nakup računalnikov iz zgornjeganižjega razreda je bolj ekonomičen, kot nakup računalnikov iz spodnjega višjega razreda.
IBM 360 družina računalnikov • 1964 • Zamenja serijo 7000 in ni kompatibilna z njenimi izvedenkami • Prva planirana “družina” računalnikov • Enak ali identičen nabor ukazov • Enak ali identičen operacijski sistem • Iz generacije v generacijo se povečuje zmogljivost (možno število priključenih terminalov, večji pomnilnik, večje število izvedenih ukazov na sekundo) in cena • Stikalna povezava med enotami
DEC PDP-8 • 1964 • Prvi miniračunalnik • $16,000 • $100k+ za IBM 360 • Uporaba vodil
DEC - PDP-8 vodilna struktura V/I Modul Glavni pomnilnik V/I Modul Console Controller CPU OMNIBUS
Intel • 1971 - 4004 • Prvi mikroračunalnik • Vse CPE komponente na enem čipu • 4 bitna arhitektura • 1972 8008 • 8 bitna arhitektura • 1974 - 8080 • Prvi splošno namenski mikroračunalnik
Povečevanje zmogljivosti • Cevljenje • Povečanje števila registrov in izravnalnikov • Vektorsko izvajanje • Predpomnilnik (cache) na matični plošči • L1 in L2 predpomilnik na marični plošči • Predvidevanje vejitev (branch prediction) • Data flow analiza • Spekulativno izvajanje ukazov
Zmogljivost • Hitrost procesorjev se povečuje • Kapaciteta pomnilnikov se povečuje • Hitrost dostopov do pomnilnikov se povečuje počasneje, kot se povečuje hitrost procesorjev