290 likes | 523 Views
Cilj predmeta. Spoznati osnove delovanja in uporabe mikrokrmilniških vgradnih sistemov na primeru HCS12 in deloma AVR Spoznati nekatera osnovna načela naprednejših mikroprocesorskih sistemov z arhitekturnega stališča. Vgradni sistemi. Vgradni sistemi
E N D
Cilj predmeta • Spoznati osnove delovanja in uporabe mikrokrmilniških vgradnih sistemov na primeru HCS12 in deloma AVR • Spoznati nekatera osnovna načela naprednejših mikroprocesorskih sistemov z arhitekturnega stališča
Vgradni sistemi Vgradni sistemi (pogosto: vgrajeni sistemi), (angl. Embedded Systems) Sistemi (deli sistemov, naprav, komponent) temelječi na računalniških tehnologijah, ki navzven niso videti kot računalnik. Stanley, Stanford University zmagovalec DARPA Grand Challenge 2005 Predelan Volkswagen (drive by wire), Opremljen z raznimi senzorji: GPS, pospeškometer, giroskop, odometer, LIDAR, kamere 6 Intel 1,6 GHz Pentium, Linux Vir: Wikipedia
Mikrokrmilniki Mikrokrmilniki: vse zmogljivejši visoko integrirani, samostojno delujoči mikroračunalniški sistemi: (mikro)procesor, pomnilnik, v/i vmesniki in krmilniki.
Mikroprocesorji Napredni mikroprocesorji ali kar procesorji, vse hitrejše, zmoglivejše CPE računalnikov.
Primeri Inteligentne kamere, hišna, industrijska avtomatizacija, avtomobilska elektronika, medicinska elektronika, robotika, komunikacije, …
Iz vsebine • Uvod • Zgradba in delovanje računalnika • Mikrokrmilnik HCS12: zgradba, CPE • Mikrokrmilnik HCS12: zbirni jezik • HCS12: Sklad, podprogrami, prekinitve, V/I • HCS12: SCI - serijski komunikacijski vmesnik • HCS12: Časovnik, A/D pretvornik, CAN • HCS12: Programski jezik C • Mikrokrmilnik AT90S8515 AVR RISC procesor • AT90S8515
Iz vsebine • Navidezni pomnilnik • Predpomnilnik • Cevovodi • Prekinitveni sistemi, obdelava izjem • Realni čas, OS, ... • Izpit: pisni (“praksa”) + ustni (“teorija”) • Predpogoj: opravljene lab. vaje (HCS12) • Ali namesto pisnega izpita: • doma Atmel AVR (STK, ICE, AvrStudio) • ali poljuben mikrokrmilnik
Literatura • Študijsko gradivo, na domači strani predmeta http://vision.fe.uni-lj/classes/GSPV • Knjige: veliko tujih in nekaj domačih (bomo navedli ob primernem času) • Dokumentacija proizvajalcev http://www.freescale.com http://www.atmel.com • Drugi viri na spletu
Uvod – nekaj iz zgodovine • Obdobje mehanike 17. – 18. Stoletje • Obdobje elektromehanike Konec 19., začetek 20. Stoletja • Obdobje elektronike 20. stoletje ->
Uvod – obdobje mehanike Stroji, ki znajo nekatere osnovne računske operacije, z malo ali nič možnosti za “programiranje”, t.i. “kalkulatorji” • Wilchelm Schickard (1592-1635): (+,-,*) • Blaise Pascal (1623 – 1662): (+,-) • Gotfried Leibniz (1646-1716): (+,-,*,/) • Charles Babbage (1792-1871) • Diferenčni stroj (1823): avtomatsko izvajanje zaporedja operacij • Analitični stroj (1834): možnost krmiljenja zaporedja operacij
Tiskalnik luknjalnik Mlin Pomnilnik Podatki Ukazi Podatkovne kartice Ukazne kartice “Program” Uvod – obdobje mehanike Analitični stroj: delovanje vodi program, predviden za reševanje splošnih problemov, krmiljenje zaporedja operacij
Uvod–obdobje elektromehanike To je obdobje relejev in motorjev • Herman Hollerith (1860 – 1929): števne, sortirne in tabelirne naprave na osnovi luknjanih kartic 1924: IBM • Konrad Zuse (1910 – 1995): Z1, Z2, Z3, Prvi uporabi binarno predstavitev in aritmetiko s plavajočo vejico Z3 – 1941: prvi programljiv računalnik za splošne namene
Pomnilnik (64 x 22) Trak (ukazi) CPE Ukazi “Program” Žarnice prikaz Tipkovnica (podatki) Podatki Uvod–obdobje elektromehanike Z3:~ 2600 telefonskih relejev Ni obvladal programskih “skokov”
Trak (ukazi) Pomnilnik (72 x 23) MARK I Ukazi “Program” Tiskalnik Luknjalnik Kartice (podatki) Podatki Uvod–obdobje elektromehanike Howard Aiken (1900 – 1973) na Harvardu MARK I, 1939-43: podpora IBM (Thomas Watson) 15 m dolg, 2 m visok in širok, desetiški sistem, ni poznal pogojnih skokov, v uporabi do 1959
Stikala Povezave Pomnilnik (20 x 10) CPE Ukazi Program Tiskalnik Luknjalnik Kartice (podatki) Podatki Uvod – obdobje elektronike ENIAC 1946: John Mauchly, Presper Eckert, John von Neumann - svetovalec, Moore School of EE, Penn Prvi elektronski računalnik za splošne namene, 18000 elektronk, 200 kW, 300 t, 5000 +-/s, 6000 stikal za programiranje. Prvič se uporabi izraz programiranje.
Uvod – obdobje elektronike EDVAC 1951, John von Neumann, Princeton University računalnik s shranjenim programom 1024 x 16 bitnih besed ni imel programskega števca ni imel programsko dostopnih registrov dostop do ukazov in podatkov je hiter možnost krmiljenja programa (skoki) enotno obravnavanje programov in podatkov EDSAC 1949, Maurice Wilkes
Uvod – obdobje elektronike IAS računalnik 1952, John von Neumann Institute for Advanced Study, Princeton University 4096 x 40 bitnih besed ena beseda – dva ukaza prvič je uporabljen programski števec procesna enota več hitrih registrov, od tega dva programsko dostopna registra EDVAC, EDSAC, IAS: predhodniki vseh današnjih računalnikov za splošne namene
Pom. CPE V/I Uvod–von Neumannov računalnik Računalniki zgrajeni po zamisli von Neumanna CPE: centralna procesna enota, procesor Kontrolna enota (KE) Aritmetično logična enota (ALE) Registri Pomnilnik: za ukaze in podatke (operande) V/I enote Sistem povezav oziroma vodil
Uvod-von Neumannov računalnik • Danes je izraz von Neumannov tip računalnika (von Neumannova arhitektura) sinonim za sekvenčni računalnik (SISD): • delovanje vodi (popolnoma določa) program • zaporedno izvajanje ukazov (ali pa je vsaj videti tako) • glavni pomnilnik vsebuje ukaze in podatke • obstaja ena pot med CPE in pomnilnikom (ali pa je vsaj videti tako) • SISD: Single Instruction Single Data stream
I I I I ... ... P P P P P P D D D D D D ... ... M M M M M M Uvod–sekvenčni/vzporedni rač. • SISD: Single Instruction Single Data stream • SIMD: Single Instruction Multiple Data stream • MISD: Multiple instruction Single Data stream • MIMD: Multiple Instruction Multiple Data stream SISD SIMD MISD MIMD I I I I ... P P P P D D M M Sekvenčni računalnik Vzporedni računalniki
Uvod-Harvardski/Princetonski • Harvardski tip računalnika (Harvardska arhitektura) Ločena pomnilnika za ukaze in podatke Ukazi CPE Podatki • Princetonski tip računalnika (Princetonska arhitektura) Skupen pomnilnik za ukaze in podatke Ukazi in podatki CPE
Ukazi in podatki CPE Uvod-Harvardski/Princetonski • Današnji harvardski računalnik največkrat nima ločenega pomnilnika, ločene so samo prenosne poti (vodila) U U – ukazi P - podatki P • Zmogljivejši računalniki (procesorji) so “navznoter” harvardski, “navzven” pa princetonski U – ukazi P - podatki U Ukazi in podatki CPE P
Pom. CPE V/I Pom. CPE V/I Uvod - skupno/ločeno vodilo • Računalnik z ločenim V/I vodilom • Računalniki s skupnim vodilom
Pom. Pom. CPE CPE V/I V/I Uvod-Skupno/ločeno vodilo • Pomnilniško preslikan V/I: CPE obravnava V/I enote enako kot pomnilnik • Ločen V/I: skupne prenosne poti (naslovno, podatkovno vodilo), ločeni kontrolni signali (beri/piši)
Uvod - arhitektura • Arhitektura računalnikov: zgradba in delovanje računalnika, neodvisno od njegove izvedbe Enostavno rečeno: izgled računalnika, kot ga vidi programer v zbrinem jeziku: programski model procesorja, ukazi, načini naslavljanja, sistem prekinitev, V/I prenosi, ... • Organizacija računalnikov: komponente in sestavi, s katerimi je ralizirana arhitektura • Izraz organizacija se opušča. Danes se pretežno uporablja izraz arhitektura sestavnih delov, na primer: arhitektura mikroprocesorjev, arhitektura mikrokrmilnikov, pomnilnikov, ipd.
Uvod – tehnološki razvoj Dve smeri tehnološkega razvoja zadnjih 50 let • Snovanje vse zmogljivejših arhitektur • Večanje hitrosti procesorja • Večanje velikosti pomnilnika • Večanje pretočnosti računalnika • Večanje stopnje integriranosti • Združitev procesorja in različnih tipov pomnilnika • Dodajanje različnih V/I vmesnikov in V/I krmilnikov • CPE + pomnilnik + V/I = mikrokrmilnik • Mikrokrmilnik -> vgradni (vgrajeni) sistemi • Računalnik v napravi, ki ni videti tako
Uvod - mikroprocesor Pojav mikroprocesorja • 1971: Marcian E. (Ted) Hoff, Intel, 4004: 4-bitni mikroprocesor - Microcontroller on a chip • 1973: Masatoshi Šima, Intel 8080, 8-bitni mikroprocesor, prvi v Intelovi 8-bitni družini in predhodnik (skoraj) vseh Intelovih večbitnih družin • 1974: Motorola MC6800, 8-bitni mikroprocesor, prvi v Motorolini 8-bitni družini in predhodnik (skoraj) vseh Motorolinih večbitnih družin • 1976: Intel 8048, prvi mikrokrmilnik • 1981: osebni računalnik •
Uvod - povzetek • Arhitektura računalnikov • Von Neumannova tip računalnika (arhitektura) • Princetonski tip računalnika • Harvardski tip računalnika • Mikrokrmilnik • Vgradni (vgrajeni) sistemi