1 / 41

Riistvarapõhine programmeerimine

Riistvarapõhine programmeerimine. Loeng 9 Protsessorite arhitektuurid CISC vs RISC. Arhitektuur. Arvuti arhitektuur CISC RISC Konveier http://www.inf.fh-dortmund.de/personen/professoren/swik/risc/intro_to_risc/irt0_index.html. Arvuti arhitektuur. Käsustik Mikroarhitektuur

Download Presentation

Riistvarapõhine programmeerimine

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. Riistvarapõhine programmeerimine Loeng 9 Protsessorite arhitektuurid CISC vs RISC

  2. Arhitektuur • Arvuti arhitektuur • CISC • RISC • Konveier http://www.inf.fh-dortmund.de/personen/professoren/swik/risc/intro_to_risc/irt0_index.html ID218 Riistvaralähedane programmeerimine

  3. Arvuti arhitektuur • Käsustik • Mikroarhitektuur • Süsteemi arhitektuur ID218 Riistvaralähedane programmeerimine

  4. Käsustik • Tarkvara / Riistvara liides • Käsud ja nende täpne esitamine • Seos protsessori sisemise mäluga • Pinu arhitektuur • Üldregistrite arhitektuur • Akumulaatori arhitektuur ID218 Riistvaralähedane programmeerimine

  5. Mikroarhitektuur • Sisemine protsessori arhitektuur • Käsusüsteemi teostus • Kasutuse mugavused • Paralleelne täitmine • Konveier • Harude ennustamine ID218 Riistvaralähedane programmeerimine

  6. Süsteemi arhitektuur • Protsessori, mälu jne ühendused • Paigutus, vorming, juhtmed • Elektrilised omadused • Pingenivoo • Võimsus • Signaalide kiirus ID218 Riistvaralähedane programmeerimine

  7. Harvardi arhitektuur I ID218 Riistvaralähedane programmeerimine

  8. Harvardi arhitektuur II • Andmed ja käsud paiknevad eraldi • Ei saa kasutada isemodifitseeruvat koodi • Kaks aadressisiini, kaks andmesiini jne. ID218 Riistvaralähedane programmeerimine

  9. von Neumanni arhitektuur I ID218 Riistvaralähedane programmeerimine

  10. von Neumanni arhitektuur II • Andmed ja käsud paiknevad mälus • Kesktöötlusseade (CPU) laeb käske mälust • Käsuloendur (PC) , käsuregister (IR) ja üldregistrid abistavad käskude täitmisprotsessi kesktöötlusseadmes ID218 Riistvaralähedane programmeerimine

  11. v Neumann vs Harvard I • Efektiivne mälu kasutamine • Käskude ja andmete käsitlemine on ühtemoodi lihtsad • Lihtne laadida programmid mällu ID218 Riistvaralähedane programmeerimine

  12. v Neumann vs Harvard II • Andmed võivad käsud üle kirjutada • Kogemata • Viirus • Piiratud läbilaskevõime • - suur hulk andmeid sekundis • - palju käske sekundis ID218 Riistvaralähedane programmeerimine

  13. Arvuti kiirus ID218 Riistvaralähedane programmeerimine

  14. CISC I • CISC – Complex Instruction Set Computers • Kerge programmeerida • Efektiivne mälu kasutamine Näided: • Intel(R) 80x86 • Motorola 68K ID218 Riistvaralähedane programmeerimine

  15. CISC II • Keeruline käsu dekodeerimise loogika • Väike number üldregistreid • Mõned eriotstarbelised registrid • Tingimuskoodide register ID218 Riistvaralähedane programmeerimine

  16. CISC filosoofia • Mikrokoodi kasutamine • Rikas käsustik • Kõrg-taseme käsustik ID218 Riistvaralähedane programmeerimine

  17. Mikrokood ID218 Riistvaralähedane programmeerimine

  18. Mikrokood II • Mikrokood – ROM, 10 korda kiirem, kui RAM • Mikrokoodi kiirus võrdne riistvara kiirusele • Mikrokoodi on lihtne muuta ja kohandada ID218 Riistvaralähedane programmeerimine

  19. Rikas käsustik I • 2-operandi formaat • Reg-reg, reg-mem, mem-reg adresseerimine • Erinevad adresseerimisviisid • Muutuv käsupikkus • Mitu protsessoritsükli käsu kohta ID218 Riistvaralähedane programmeerimine

  20. Rikas käsustik • Liitmine: • ADD • ADC • INC • Rotatsioon • RHL • RCL • RHR • RCR ID218 Riistvaralähedane programmeerimine

  21. Kõrg-taseme käsustik • movs • rep • loop • mul • aaa • daa • aas • das • . . . ID218 Riistvaralähedane programmeerimine

  22. Ideaalne vs reaalne CISC • F - käsu toomine • D - käsu dekodeerimine • X - käsu täitmine • W - tulemuse salvestamine ID218 Riistvaralähedane programmeerimine

  23. CISC kiirus N x CPI x Clock time CISC: N -> min ID218 Riistvaralähedane programmeerimine

  24. CISC eelised • Mikrokoodi on kerge kirjutada • Kerge teha alla ühilduvaks • Programm vajab vähe käsku • Kompilaatorid on lihtsad ID218 Riistvaralähedane programmeerimine

  25. CISC puudused • Käsustik ja riistvara lähevad keerulisemaks • Erinevad käsud vajavad täitmiseks erinevad ajaintervallid • Palju spetsiifilisi käske, neid kasutatakse harva. • Käsud mõjutavad tingimuskoode erinevalt, raske meeles pidada ID218 Riistvaralähedane programmeerimine

  26. RISC I • RISC - Reduced Instruction Set Computers • Lihtne käsustik • Käsu täitmine toimub ühe masinatsükli jooksul • Kõik käsud on ühe pikkusega ID218 Riistvaralähedane programmeerimine

  27. RISC II • Andmetöötluskäsud opereerivad ainult üldregistritega. Mälupöördus toimub laadimis- ja salvestamiskäskude abil. • Üldregistrite pank on suur ja väga universaalne • Kasutatakse käskude konveiertöötlust ID218 Riistvaralähedane programmeerimine

  28. Konveier • Korraga täidetakse mitu käsku • Järgmise käsu täitmist alustatakse enne, kui eelmine lõppes • Ühe käsu täitmise aeg jääb samaks ID218 Riistvaralähedane programmeerimine

  29. Reaalne konveier • Tegelikult täitmiseajad ei ole võrdsed • Mälupöördumine vajab alati rohkem aega • Reaalselt on olemas ooteajad ID218 Riistvaralähedane programmeerimine

  30. Sõltuvused • Tähtis käskude järjekord • Halb järjekord tekitab ooteajad • Õige järjestus parandab kiirust ID218 Riistvaralähedane programmeerimine

  31. Sõltuvused ID218 Riistvaralähedane programmeerimine

  32. Käsustiku probleemid • Keerulised käsud, raske dekodeerida • Muutuva pikkusega käsud, mitu mälupöördumist • Mälupöördumise käsud, aeglased • Mitme tsükliga käsud, ooteajad • Sama registri lugemine ja kirjutamine, register kinni • Sama ressurssi kasutamine, ressurss kinni ID218 Riistvaralähedane programmeerimine

  33. RISC kiirus N x CPI x Clock time RISC: CPI -> 1 ID218 Riistvaralähedane programmeerimine

  34. RISC eelised • Kiirus • Lihtne riistvara • Kiirem väljatöötus ID218 Riistvaralähedane programmeerimine

  35. RISC-i riskid, koodi kvaliteet • Keeruline kompilaator • Lihtne käsustik • Käskude järjestamine ID218 Riistvaralähedane programmeerimine

  36. RISC-i riskid, silumine • Silumine raskendatud • Kõigepealt silumine • Seejärel järjestamine ID218 Riistvaralähedane programmeerimine

  37. RISC-i riskid, koodi suurus • RISC masinakood on ~30 – 50 % suurem, kui CISC oma ID218 Riistvaralähedane programmeerimine

  38. Kokkuvõte I • Arvuti arhitektuurid • Harvardi arhitektuur • v Neumanni arhitektuur ID218 Riistvaralähedane programmeerimine

  39. Kokkuvõte II Arvuti kiirus: N x CPI x Clock time ID218 Riistvaralähedane programmeerimine

  40. Kokkuvõte III CISC: + Programm vajab vähe käsku + Kompilaatorid on lihtsad – Keeruline käsustik – Erinevad käsupikkused – Mitu protsessoritsükli käsu kohta ID218 Riistvaralähedane programmeerimine

  41. Kokkuvõte IV RISC + Kiirus + Lihtne riistvara – Keeruline kompilaator – Suur kood – Kõrgendatud süsteemi ja disaini nõuded ID218 Riistvaralähedane programmeerimine

More Related