1 / 25

Računarstvo i informatika III

Računarstvo i informatika III. Le kcija 1 – Uvod u mikrora č unarske sisteme. Sadržaj predmeta Računarstvo i informatika III. Mikroračunarski sistemi. Arhitektura i organizacija RS. Operativni sistemi. Apstrakcije. Kompjuterski sistemi su primer veoma složenih sistema

didier
Download Presentation

Računarstvo i informatika III

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čunarstvo i informatika III Lekcija 1 – Uvod u mikroračunarske sisteme

  2. Sadržaj predmetaRačunarstvo i informatika III Mikroračunarski sistemi Arhitektura i organizacija RS Operativni sistemi

  3. Apstrakcije • Kompjuterski sistemi su primer veoma složenih sistema • Uvek kada radimo sa složenim sistemima pribegavamo apstrakciji -ignorišemo detaljei koncentrišemo se na osnovne sastavne blokove kompjutera •  Kompjuter = kolekcija funkcionalnihblokova ili podsistema • Svaki podsistem mora da obezbedi: • Obradu instrukcija • Pamćenje informacija • Prenos podataka • Ulaz/Izlaz •  Organizacija računara: deocomputer sciencekoji proučava računare na ovom nivou apstrakcije

  4. Komponente računarskog sistema 1.Hardver – osnovni kompjuterski resursi (CPU, memorija, I/O uređaji). • Operativni sistem – kontroliše i usklađuje korišćenje hardvera. Hardver mogu da koriste razni aplikativni programii različiti korisnici. • Aplikativni programi – definišu kako se sistemski resursi koriste zarešavanjezadataka korisnika. • Korisnici (ljudi, mašine, drugikompjuteri).

  5. Ljudi Programskiinterfejs Korisnički programi Interfejs OS Operativni sistem Hardverskiinterfejs/ Privilegovane Instrukcije Disk/Trake /Memorija Apstrakcija računarskog sistema - Slojevi

  6. Apstrakcije Nivoi i hijerarhija apstrakcija • Svi podsistemi koje ćemo proučavati sagrađeni su od logičkih elemenata • Ali za nas će logički elementi biti nevidljivi •  pri proučavanju računarskih sistema koriste se različiti nivoi apstrakcije • Metodički pristupza rad sa apstrakcijom: • Sistem S (kompjuter) sastoji se od više primitivnihkomponenti S = {c1…..cN} • Grupisanjekomponenti baziranona njihovoj funkcionalnosti proizvodi sistem S = {A, B, C, …} sa manjimbrojemkomponenti • Na najvišem nivou apstrakcije tretiramo sistem kao crnu kutiju •  Hijerarhija apstrakcija

  7. Apstrakcije Apstrakcije na low-level hardverskom nivou • Tako imamo sledeće apstrakcije • logički element (gate) AND = 2 redno povezana tranzistora • Jednobitni sabirač (1-ADD Circuit) = Logička mreža koja se sastoji od 25 NOT, AND i OR logičkih elementa • Tranzistori: primitivne komponente od kojih se grade logički elementi • Logički elementi (Gates): sledeći nivo apstrakcije • Logičke mreže (Circuits): viši nivo apstrakcije

  8. Application Operating System Compiler Firmware Instruction Set Architecture Instr. Set Proc. I/O system Datapath & Control Digital Design Circuit Design Layout Apstrakcije Hijerarhija slojevaarhitekturekompjutera Viši programski jezici Programina simboličkom (asemblerskom) jeziku Softver Programina mašinskom jeziku Softversko/hardverska granica Hardver Mikroprogrami Jezik registarskog prenosa -Register TransferNotation (RTN) Logički dijagrami Circuit Diagrams

  9. lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) Program u VPJ Programu asembleru Mašinskiprogram Specifikacija kontrolnih signala Apstrakcije Nivoiprogramskereprezentacije temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; Compiler Assembler 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šinska interpretacija ALUOP[0:3] <= InstReg[9:11] & MASK Jezik registrarskog prenosa

  10. Nivo NazivModuliPrimitiviDeskriptivni medijumi 1ElektronikaGejtovi, Flip-flopovi…Tranzistori, Otpornici ... Jezik za digitalno projektovanje 2 Logika Registri, ALU-ovi ... Gejtovi, Flip-flopovi … Logičkidijagrami 3 Organizacija Procesori, Memorije Registri, ALU-ovi … Jezik registarskog prenosa 4 Mikroprogramiranje Asemblerski jezikMikroinstrukcijeMikroprogramski jezik 5 Asemblersko programiranje OS rutine ASM instrukcije Asemblerski jezik 6 Proceduralno programiranje Aplikacije OS rutine Viši programski jezikDrajveri .. Viši programski jezici 7 AplikacijeSistemi Proceduralne Problem-Orijentisani konstrukcije jezik Low Level - Hardware High Level - Software Apstrakcije Hijerarhijaprojektovanja kompjutera Firmware

  11. Organizacija

  12. Opis hardvera • Vizualizacija hardvera: • Blok dijagrami (prostorna vizualizacija): • Dvodimenzionalna reprezentacija funkcionalnih blokova i njihove veze. • Vremenski dijagrami (vremenska vizualizacija): • Sinusoidakoja prikazuje događaje u zavisnosti od vremena. • Jezik registarskog prenosa (Register Transfer Notation -RTN): • “Skraćena” notacijaza mikrooperacije. Opisuje kompjuterske operacije u terminima registara i transfera podataka među njima. • Takođe opisuje uslovne informacije u sistemukoje uzrokuju da se neka operacija izvrši. • Jezici za opis hardvera: • Jezici koji se koriste za lakše opisivanje i rukovanje digitalnim sistemima i za njihovo povezivanje. • Primeri: VHDL: VHSIC (Very High Speed Integrated Circuits) Hardware Description Language, Verilog.

  13. Arhitektura kompjutera: Organizacija kompjutera • TerminArhitektura kompjutera seponekad pogrešno sužavanaprojektovanje skupa instrukcija, dok se drugi aspektiprojektovanja kompjutera nazivaju implementacija. • Preciznija definicija: • Arhitektura skupa instrukcija: Skup instrukcija vidljiv programeru koji služi kao granica između softvera i hardvera. • Implementacija mašine imadve komponente: • Organizacija: uključuje aspektevišeg nivoa projektovanja kompjuterakao što su: memorijski sistem, struktura magistrala (bus-ova), interni CPU blokkoji uključuje implementaciju aritmetičkih i logičkih operacija, kao i operacija grananja i prenošenja podataka. • Hardver: ukazuje na specifičnosti mašine kao što su npr. detalji logičkogprojektovanjai tehnologije pakovanja. • U širem smislu, pod arhitekturom kompjuterapodrazumevamo: 1- Arhitekturu skupa instrukcija 2- Organizaciju 3- Hardver

  14. Arhitektura skupa instrukcija(Instruction Set Architecture - ISA) • “... the attributes of a [computing] system as seen by the programmer, i.e. the conceptual structure and functional behavior, as distinct from the organization of the data flows and controls the logic design, and the physical implementation.” – Amdahl, Blaaw, and Brooks, 1964. • Arhitekturaskupa instrukcija: • Organizacija programabilnih memorija (memorijai procesorski registri): • Količina adresive memorije • Broj raspoloživih registara • Tipovi podatakaistrukture podataka: kodiranjei registrovanje. • Skup instrukcija: sve raspoložive instrukcije. • Formati i dekodiranje instrukcija. • Načini adresiranja i pristupanja podacima i instrukcijama. • Uslovi za izuzetke.

  15. Skup instrukcija • Nezavisno od tipa kompjutera, strukture centralnog procesa i hardverske organizacije, svaka mašinska instrukcija mora da specifikuje sledeće: • Opcod: Koju operaciju treba izvršiti. Primer: add, load,... • Gde se nalazi operand (argument) ili operandi ako ih je više: u CPU registrima,operativnoj memoriji, na I/O (ulazno/izlaznim) portovima. • Gde treba smestiti rezultat, ako operacija proizvodi rezultat: može se eksplicitno navesti ili se implicitnopodrazumeva iz opcoda. • Gde se nalazi sledeća instrukcija: Ako nije u pitanju instrukcija predaje upravljanja (grananja, bezuslovni skokovi,...) sledeća se izvršava instrukcija smeštena neposredno iza tekuće u OM, inače adresu sledeće instrukcije specifikuje instrukcija predaje upravljanja.

  16. U ovojlekciji... Šta ćemo učiti • Algoritmi • se izvršavaju na kompjuterima • opisuju logičku struktururešenja datog problema • problem-orijentisani su • Do sada (u prva dva razreda) nismo učili kako kompjuteri izvršavaju algoritme. To je zadatak predmeta Računarstvo i informatika u trećem razredu! • Treba da upoznamo sastav kompjuterskih sistema • Mikroračunarski sistemi • Zatim ćemo se upoznati sa načinom izvršavanja programa • Arhitektura i organizacija računarskih sistema • Operativni sistemi

  17. Implementacija algoritama Postoje tri metode za implementaciju algoritama • Programska (software) • Mikroprogramska (firmware) • Hardverska (hardware)

  18. Implementacijaalgoritama Programska ADD X,YSaberi dva broja sa memorijskih lokacija na adresamaX i Y, i upiši rezultat u AC. MBR + AC Memorija Load X Prenesi sadržaj memorijske lokacije X u MBR i zatim u AC ADD Y Prenesi sadržaj memorijske lokacije Y u MBR, saberi ga sa sadržajem AC i upiši rezultat u AC

  19. Logička kola za Kontrolne signale Implementacija algoritama Mikroprogramska A C G D MAR MBR AC + F E Memorija B Prenesi sadržaj mem. lokacije X u MBR F,G Prenesi je u ALU A Provedi kroz ALU(bez sabiranja) D Prenesi rezultat u AC B Prenesi sadržaj mem. lokacijeYu MBR F,G Pošaljisadržaje MBR i AC u ALU i + A, C, E Upiši rezultat u AC B

  20. Implementacija algoritama Hardverska A C D MBR + AC F E Memorija B t0 Pošalji kontrolni signal read memoriji sa adresom X i otvori gejtF da je upamtiš u MBR t1 Pošaljikontrolne signaledo D da preneseš podatak kroz ALU, i do B da ga upamtiš u AC t2 Pošalji kontrolni signal read memoriji sa adresomY i otvori gejt F da je upamtiš u MBR t3 Pošalji kontrolne signaledo A i C. Takođe pošalji kontrolni signal do E za sabiranje i do B za memorisanje rezultata.

  21. SoftverskaFirmverskaHardverska Implementacija algoritama Poređenje metoda implementacije Brzinasporasrednja velika Cenamalasrednja velika Modifikacijajeftinasrednja skupa Proširivostlakasrednja teška

  22. Karakteristike procedura • Procedure koje se nikad ne menjaju jednom se implementiraju • Aplikativneprocedure za većinu mašina • Hardverska implementacijaje superiorna, specijalno za jednostavne procedure • Prednost je brzina izvršavanja • Procedure koje se često menjaju • Aplikativneprocedure za kompjutere • Softverski, često je firmverska implementacijabolja • Prednosti su fleksibilnost i manja cena implementacije • Operativneprocedure • Kompjuter ima operativnu proceduru koja obično upravlja raznim mašinskim resursima i nadgleda rad kompjutera • Ona se naziva OPERATIVNI SISTEM ili jednostavno OS

  23. Pitanja i zadaci • Na koje se načine mogu implementirati alogoritmi? • Uporedite metode imlementacije algoritama. • Koje su dve osnovne vrste procedura koje se realizuju na kompjuterima i kako se obično implementiraju? • Kako se princip apstrakcije koristi u proučavanju kompjutera? • Navedite nivoe apstrakcije u projektovanju kompjutera? • Kako se opisuje hardver računara na najnižem nivou? • Koji su nivoi programske reprezentacije? • Kakav odnos postoji između arhitekture i organizacije kompjutera? • Šta podrazmevamo pod arhitekturom skupa instrukcija? • Na šta treba sa ukazuje mašinska instrukcija?

More Related