1 / 19

R ačunarske arhitekture Predavanje 1: Uvod

R ačunarske arhitekture Predavanje 1: Uvod. Oktobar 2003 Doc. dr Novica Nosović ETF – Sarajevo, soba 0-22 novica.nosovic@etf.unsa.ba. Pregled. Uvod u strukture računara Organizacija i anatomija računara Brze tehnološke promjene Struktura nastave Važne stvari koje treba zapamtiti.

jamar
Download Presentation

R ačunarske arhitekture Predavanje 1: Uvod

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Računarske arhitekturePredavanje 1: Uvod Oktobar 2003 Doc. dr Novica Nosović ETF – Sarajevo, soba 0-22 novica.nosovic@etf.unsa.ba

  2. Pregled • Uvod u strukture računara • Organizacija i anatomija računara • Brze tehnološke promjene • Struktura nastave • Važne stvari koje treba zapamtiti

  3. Application (Netscape) Operating Compiler System (Windows XP) Software Assembler Hardware Processor Memory I/O system Datapath & Control Digital Design Circuit Design transistors Šta su “Strukture računara”? • Interakcija više nivoa apstrakcije Instruction Set Architecture

  4. Nivoi predstavljanja lw $to, 0($2) lw $t1, 4($2) sw $t1, 0($2) sw $t0, 4($2) temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; High Level Language Program (e.g., C) Compiler Assembler (npr. MIPS) Asembler Mašinski jezik (MIPS) 0000 1001 1100 0110 1010 1111 0101 1000 1010 1111 0101 1000 0000 1001 1100 0110 1100 0110 1010 1111 0101 1000 0000 1001 0101 1000 0000 1001 1100 0110 1010 1111 Mašinskiinterpreter Upravljački signali ° °

  5. Anatomija: 5 komponenti računara Personal Computer Keyboard, Mouse Computer Processor (active) Memory (passive) (where programs, data live when running) Devices Disk(where programs, data live when not running) Input Control (“brain”) Datapath (“brawn”) Output Display, Printer

  6. Tehnološki Trendovi: Kapacitet memorije (1 Chip DRAM) God. (Megabit) 1980 0.0625 1983 0.25 1986 1 1989 4 1992 16 1996 64 1999 256 1.55X/god, ili dvostruko svakih 1.6 godina

  7. Tehnološki trendovi: Mikroprocesori Alpha 21264: 15 million Pentium Pro: 5.5 million PowerPC 620: 6.9 million Alpha 21164: 9.3 million Sparc Ultra: 5.2 million Moore’s Law 2X tranzistora/Chip Svakih 1.5 godina “Moore-ov zakon”:

  8. Tehnološki Trendovi: Procesorske Performanse 1.54X/yr Porast procesorskih performansi /god (Joy-ev zakon) a ne Moore-ov zakon (tranzistora/chip-u)

  9. Računarska Tehnologija => Dramatične promjene • Procesor • 2X brži svake 1.5 godine; 1000X performanse u zadnjih 10 god. • Memorija • DRAM kapacitet: 2x / 1.5 god.; 1000X u zadnjih 10 god. • Cijena po bitu: pada oko 25% godišnje • Disk • Kapacitet: > 2X svakih 1.5 god. • Cijena po bitu : pada oko 60% godišnje • 120X u zadnjih 10 god • Savremeni PC kada vi diplomirate: ??? • Procesor clock: 8000 MegaHertz (8 GigaHertz) • Memorija: 4000 MegaByte (4 GigaBytes) • Disk Kapacitet: 600 GigaBytes (0.15 TeraBytes) • Nove stvari! Mega => Giga, Giga => Tera

  10. Zašto studirati strukture računara? • PROMJENE; Nikada nije bilo uzbudljivije! • Utiču na sve aspekte inženjeringa i računarskih nauka Bionics:Sensors in latex fingers instantly register hot and cold, and an electronic interface in his artificial limb stimulates the nerve endings in his upper arm, which then pass the information to his brain. The $3,000 system allows his hand to feel pressure and weight, so for the first time since losing his arms in a 1986 accident, he can pick up a can of soda without crushing it or having it slip through his fingers. One Digital Day

  11. Šta ćete učiti? • Strukture računara – kako ih vidi programer • Šta piše programer • Kako se to prevodi u nešto što računar razumije • Kako računar interpretira program • Zašto se programi izvršavaju sporo • Naučite osnovne stvari iz računarstva i inženjeringa • 5 klasičnih komponenti računara • kako računar manipuliše onim što predstavlja stvari • računari sa programom u memoriji – instrukcije su podaci • princip lokalnosti – iskorišten u memorijskoj hijerarhiji (keš) • prevođenje i indirektno izvršavanje • više performanse korištenjem paralelizma (protočnost) • principi apstrakcija, predstavljanje sistema po nivoima/slojevima • kompajliranje protiv interpretiranja – smanjuju broj slojeva sistema • principi i greške – zablude pri mjerenju performansi

  12. Šta nećete učiti? • Pisati programe • ako znate jedan (programski) jezik, lako ćete naučiti i drugi ... • ako znate C++ ili Java, lako ćete razumjeri njuhove pretke, C... • Programirati u asembleru • to ćete naučiti učeći osnovne stvari • Projektovati logičke strukture (hardver) • shvatite hardver kao nivo apstrakcije, morate ga razumjeti da bi shvatili više nivoe • Kompajlere i operativne sisteme • ali morate znati njihove uloge i principe C C++ Java

  13. Struktura nastave – zvanično! • 1. Predmet: RAČUNARSKE ARHITEKTURE • 2. Semestar: VII + VIII • 3. Opterećenje: P AV LV • - prosječno sedmično 3 0 3 • - ukupno 90 0 90 4. Sadržaj • Klasifikacije računarskih arhitektura. Paralelizam u jednoprocesorkim računarskim sistemima. Prevazilaženje uskih grla između podsistema računara i balansiranje propusnih opsega podsistema. Pipeline i vektorske arhitekture računarskih sistema. Multiprocesorske računarske arhitekture. Računari vođeni tokom podataka (data-flow računari i VLSI računarske arhitekture). Paralelne računarske arhitekture za specijalizovane primjene. Komparativna analiza različitih tipova arhitektura sistema i ocjena performansi.

  14. Hronologija i sadržaj • RAČUNARSKE ARHITEKTURE - PERFORMANSE I PODJELE VON NEUMANN-OV MODEL, RAZVOJ OD VON NEUMANN-A, OSNOVE DIZAJNA, KVANTITATIVNI PRINCIPI DIZAJNA • ARHITEKTURA SKUPA INSTRUKCIJA • NAČINI ADRESIRANJA MEMORIJE, OPERACIJE U SKUPU INSTRUKCIJA, UPRAVLJAČKE INSTRUKCIJE, TIPOVI I VELIČINE OPERANADA, KODIRANJE INSTRUKCIJA, ULOGA KOMPAJLERA, UTICAJ KOMPAJLERA NA ARHITEKTURU, OGLEDNA LOAD/STORE ARHITEKTURA, FORMAT INSTRUKCIJA, EFEKTIVNOST OGLEDNE ARHITEKTURE • PROTOČNE STRUKTURE OGLEDNA ARHITEKTURA BEZ PROTOČNE STRUKTURE, OSNOVNA PROTOČNA STRUKTURA ZA OGLEDNU ARHITEKTURU HAZARDI STRUKTURNI HAZARDI, HAZARDI PODATAKA, KLASIFIKACIJA HAZARDA PODATAKA, HAZARDI PODATAKA KOJI ZAHTJEVAJU ZASTOJE, KOMPAJLERSKO RASPOREÐIVANJE INSTRUKCIJA, UPRAVLJANJE OGLEDNOM PROTOCNOM STRUKTUROM, UPRAVLJACKI HAZARDI, STATICKO PREDVIÐANJE GRANANJA, PREKIDI/IZUZECI U PROTOCNOJ STRUKTURI, IZUZECI KOD OGLEDNE ARHITEKTURE, KOMPLIKACIJE SKUPA INSTRUKCIJA, OGLEDNA ARHITEKTURA I VIŠECIKLUSNE OPERACIJE

  15. Hronologija i sadržaj (nastavak) • 5 PARALELIZAM NA NIVOU INSTRUKCIJA PARALELIZAM NA NIVOU PETLJE, DINAMICKIO RASPOREÐIVANJE INSTRUKCIJA, DINAMIČKO RASPOREÐIVANJE SA SEMAFOROM, TOMASULOV ALGORITAM, DINAMIČKO PREDVIÐANJE GRANANJA, KORIŠTENJE BAFERA ODREDIŠNIH ADRESA GRANANJA, SUPERSKALARNI I VLIW PROCESORI, SUPERSKALARNA VERZIJA OGLEDNE ARHITEKTURE, VIŠESTRUKO POKRETANJE INSTRUKCIJA SA DINAMIČKIM RASPOREÐIVANJEM, VLIW PRISTUP, OGRANIČENJA PROCESORA SA VIŠESTRUKIM POKRETANJEM INSTRUKCIJA • 6 PODRŠKA KOMPAJLERA U POVECANJU ILP-a OTKRIVANJE I ODKLANJANJE ZAVISNOSTI, SOFTVERSKE PROTOČNE STRUKTURE, TRASIRANJE • 7 PODRŠKA HARDVERA U POVECANJU ILP-a USLOVNE INSTRUKCIJE, KOMPAJLERSKO SPEKULISANJE UZ PODRŠKU HARDVERA, SARADNJA HW-SW U SVRHU SPEKULACIJE, SPEKULISANJE KORIŠTENJEM BITA "OTROVA", SPEKULATIVNE INSTRUKCIJE SA REIMENOVANJEM, HARDVERSKO SPEKULISANJE • 8 PARALELNE RAČUNARSKE ARHITEKTURE PROJEKTOVANJE PARALELNIH RAČUNARA, NAČINI POVEZIVANJA KOMPONENTI SISTEMA, MREŽE ZA POVEZIVANJE, PREKLOPNICI, PERFORMANSE PARALELNIH RAČUNARA

  16. Literatura • Computer Architecture: A Quantitative Approach: 2nd Edition, J. L. Hennessy, D. A. Patterson • Computer Organization & Design: TheHardware/Software Interface , D. A. Patterson, J. L. Hennessy • A. Thanenbaum: Structured Computer Architectures a ako nemate ništa bolje, onda Novica Nosović, RAČUNARSKE ARHITEKTURE– internimaterijal – ETF Sarajevo, 1999

  17. Ocjenjivanje • Zadaće (2 individualno) 20% • Seminarski radovi (2 timski rad) 40% • Završni pismeni ispit 40% • Najuspješnijih 10% završni ispit polažu prije junskog ispitnog roka

  18. Teme za seminarske radove - prijedlozi • Registarski prozori, Cache hierarhije, • Data prefetching,Cache coherency, • Game engine anatomy, Bluetooth, • Pojekat seti@home, IBM Hypersocket, • IBM Chipkill, NAS vs SAN, • Systolic arrays, firewire, • switch/router (ATM), Beowulf, • ARM procesor, Embeded processors, • AMD Opteron, DDR, • Power management, VMware, • UltraSPARC, blade servers ... ili po dogovoru!

  19. Zapamtite... • 30 sedmica da naučite osnove računarskih arhitektura • Preincip apstrakcija služi za predstavljanje sistema u slojevima • Šta su podaci? – Program određuje šta je šta! • Koncept smještanja programa u memoriju – i instrukcije su podaci!!! • Princip lokalnosti diktira memorijsku hijerarhiju (od keša pa naniže) • Povećanje performansi iskorištavanjem paralelizma (protočnosti) • Kompajleri protiv interpretera – smenjuje se broj nivoa u sistemu • Principi i zablude pri mjerenju performansi • Nastavlja se ubrzani razvoj u računarstvu • 2X brže svakih18 mjeseci; brzina procesora, veličina memorije, kapacitet diska; Moore-ov zakon to omogućava (2X tran./chip/1.5 god) • 5 klasičnih komponenti svakog računara 1. Kontrolna jedinica; 2. Put podataka; 3. Memorija; 4. Ulaz; 5. Izlaz } Processor

More Related