1 / 21

Vgrajeni sistemi - uvod

Matjaž Colnarič Univerza v Mariboru Fakulteta za elektrotehniko, računalništvo in informatiko. Vgrajeni sistemi - uvod. Vgrajeni sistemi.

wanda-barry
Download Presentation

Vgrajeni sistemi - 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. Matjaž Colnarič Univerza v MariboruFakulteta za elektrotehniko, računalništvo in informatiko Vgrajeni sistemi - uvod

  2. Vgrajeni sistemi Vgrajeni (vgradni, vloženi) sistemi so specializirani računalniki, vgrajeni v večjih sistemih (npr. avtomobilih, domačih in komunikacijskih napravah, industrijskih strojih, medicinskih aparatih itd). • dodajajo oz. povečujejo procesne in komunikacijske zmogljivosti, • izboljšujejo učinkovitost, • zagotavljajo nove in naprednejše funkcionalnosti in inteligenco. Izvajajo samo nabor specifičnih, bolj ali manj kompleksnih opravil. Delujejo brez človeškega posredovanja, senzorji in aktuatorji kot vmesniki z napravami, brez tipkovnic, prikazovalnikov ipd. Povezani so v mreže na različnih nivojih,od nekaj povezanih krmilnikov, senzorjev in aktuatorjev do kompleksnih (ad hoc, rekonfigurabilnih, itd.) sistemov (npr. sistemi industrijske informatike, “internet of things”).

  3. Vgrajeni sistemi – mesto in pomen 90% vseh računalnikov je uporabljenih v vgrajenih sistemih; 2010 se pričakuje okoli 16 milijard vgrajenih sistemov, 2020 pa 40 milijard. Velik delež v vrednosti izdelkov • v avtomobilih (20%), • industrijskih napravah (22%), • telekomunikacijah (37%), • potrošniški elektroniki in inteligentnih hišah (41%), • medicinskih aparatih (33%). Dodana vrednost, ki jo prinašajo vgrajeni sistemi, je pogosto za nekaj velikostnih razredov večja kot delež njihove cene. • Vir: Artemis, Strategic Research Agenda, 2006 http://cordis.europa.eu/ist/embedded/facts_figures.htm, https://www.artemis-ju.eu/

  4. Vgrajeni sistemi in gospodarstvo • Vgrajene tehnologije dodajajo inteligenco proizvodnim industrijskim sistemom in produktom. Ob povečani dodani vrednosti se tem • povečuje njihova produktivnost, • dodajajo nove funkcionalnosti, • povečuje kakovost, energetska učinkovitost, • zmanjšuje čas proizvodnje, • povečuje njihova zanesljivost, razpoložljivost in varnost • Primerni tako za mala in srednja podjetja kot za velika • Priložnost za nova delovnamesta • Primer: evropska avtomobilska industrija zaposluje 2,7 milijarde ljudi • 2008 - 20% delež vrednosti vgrajenih sistemov v ceni avtomobila • 2015 - 35-40% → porast vgrajenih sistemov v avtomobilski industriji pomeni 600.000 novih delovnih mest do 2015 Vir: Artemis SRA

  5. Advanced Research and Technology for EMbedded Intelligence and Systems Artemis Medtem, ko so na področju primarnih informacijskih tehnologij vodilni drugi deli sveta, je na področju vgrajenih sistemov vodilna Evropa in si to vodstvo prizadeva ohraniti: • Razpisi v okvirnih programih • Tehnološka platforma Artemis (javno-privatno partnerstvo), industrijska in projektna združenja (Artemis JU, Artemisia, Joint Technology Initiative) • Problem: razkorak med pričakovanji in idejami ter zmožnostmi v razvoju (podobno kot “SW gap” v 80´). • Cilj TP: financiranje raziskav in razvoja na področju vgrajenih sistemov (samo v okviru skupnega podjetja – Joint Undertaking - 2,5 milijarde evrov v naslednjih 10 letih) • Članice: vsa največja podjetja s področja vgrajenih sistemov in komunikacij razkorak pričakovanja zmožnosti razvoja

  6. Sistemi v realnem času, primer 1 • Voznik, ki vozi avto po mestu: • Cilj: ob predvidenem času pripeljati npr. v službo po vnaprej določeni poti. Čas odhoda se določi ustrezno želenemu času prihoda, dolžini in razmeram na poti itd. • Če potrebuje za vožnjo več časa, kot je planirano, zamudi važen dogodek. • Na poti nepredvidljivi dogodki: drugi udeleženci v prometu, otroci, živali, itd. V primeru pojava nevarnosti mora biti v ustreznem času, da se izogne nesreči, reagirati nanj (npr. ustaviti avto, ko otrok skoči na cesto za žogo). • Če reagira prepočasi, se lahko zgodi nesreča.

  7. Sistemi v realnem času, primer 1 • Voznik, ki vozi avto po mestu: • Če je nevarnost večja, reagira s počasnejšo vožnjo, s čimer skrajša čas ustavljanja, a poveča čas do prihoda. • Na poti srečuje tudi vnaprej znane dogodke, npr. periodično delovanje semaforja. • Veljavnost posameznih podatkov je kratka (medtem, ko gleda v križišču na eno stran, se mu lahko izza ovinka približa drugo vozilo, ki ga prej še ni mogel videti), torej mora vsa opazovanja in akcije napraviti v dovolj kratkem času, da so še veljavni. • V primeru zastojev možna rekonfiguracija poti

  8. Sistemi v realnem času, primer 2 • Gospodinja • v svojem vsakdanjem delu skrbi za otroke, opravlja hišna opravila, nakupuje, kuha, telefonira, sprejema obiskovalce itd. • Vsak od teh “procesov” se dogaja asinhrono. • Nekateri procesi so znani naprej in jih je možno planirati (pošiljanje otrok v šolo, proces kuhanja, itd.), drugi so sporadični (telefonski klici, obiski, nepričakovani dogodki) • Na slednje se mora odzivati dinamično, torej prilagojeno na njihovo naravo, nujnost in trenutno opravilo, ki ga opravlja.

  9. Sistemi v realnem času, primer 2 • Gospodinja • Vnaprej znana (statična) opravila planira vnaprej: da gre otrok na šolski avtobus, mora pravočasno vstati, upoštevaje razvrstitev pri uporabi kopalnice, oblačenje, zajtrk, itd. Pri tem upošteva “paralelno procesiranje” (npr. priprava zajtrka medtem, ko se umiva). Če otrok ni gotov v predvidenem času, zamudi avtobus. • Pri tem planira pravo mere časovne rezerve • Nekateri roki so manj strogi, npr. čas kosila lahko nekoliko variira. • Nekateri dogodki so vezani na absolutni čas (odhod avtobusa), drugi na relativni (čas kuhanja jajca).

  10. Sistemi v realnem času, primer 2 • Gospodinja • Signali iz okolja jo silijo, da preklaplja med opravili in reagira s hitrostjo, ki ustreza tipu signala. • Različni dogodki imajo različno nujnost (če istočasno kipi mleko in zvoni telefon). • Nekateri dogodki imajo absolutno nujnost: kadar je npr. v nevarnosti otrok, reagira takoj. • Opravila razporeja paralelno in prekinjevalno: kuha več stvari in izkorišča zakasnitve, ki so pogojene “tehnološko” (ko se dušije zrezki, pripravi krompir za kuhanje). • Običajna si opravila razporedi racionalno, če je mogoče

  11. Terminologija • Proces (DIN 66201 Part 1, No. 1.2): celota med seboj vplivajočih aktivnosti, ki transformirajo, transportirajo ali hranijo snovi, energijo ali informacije. • Tehniški proces (DIN 66201 Part 1, No. 1.3): proces, čigar veličine lahko opazujemo in nanje vplivamo s tehničnimi sredstvi. (proizvodni, distribucijski in shranjevalni procesi) • sistem v realnem času ::= krmiljen sistem + krmilni sistem

  12. Terminologija • Opravilo (task, DIN 66201, No. 1.2): • programski modul v obliki sekvenčne programske kode, ki ga lahko pokličemo, da izvede določeno funkcijo. • Njegova življenjska doba začne s trenutkom registracije in konča z njegovim preklicom, torej ni omejena le na čas od aktivacije do zaključka izvajanja. • Je osnovna enota paralelnega izvajanja. • Je temelj asinhronega multiprogramiranja. • V večini krmilnih sistemov obstajajo časovno nekritična in kritična opravila (taski). Zadnje imenujemo tudi opravila v realnem času.

  13. Definiciji • Sistem deluje v realnem času, če so programi sposobni sproti obdelovati podatke, ki prihajajo od zunaj, in so rezultati teh obdelav na voljo v vnaprej določenih časovnih intervalih. časi prihodov podatkov so pri tem lahko razporejeni naključno ali pa vnaprej določeni, kar je odvisno od aplikacije. (DIN 44300) • Obdelava opravil, čakajočih na procesiranje, v takšnem zaporedju, da bodo vsa končana pred njihovimi skrajnimi roki. • Obdelava v realnem času je tista, katere pravilnost ni odvisna le od logičnih rezultatov, temveč tudi od časa, ko so bili ti rezultati dobljeni (Stankovic88).

  14. Naslednja primera • Računalniški sistem za rezervacijo letalskih kart: četudi se opravilo ne zaključi v predvidenem času (npr. nekaj minut), bo lahko akcija še vedno uspešna (vozovnice rezervirane); pri predolgem čakanju pa bodo stranke šle drugam; • Potnik gre na potovanje z letalom: če bo zaradi prometa na poti na letališče ali drugih vplivov potreboval več časa, kot je računal, bo letalo odletelo; akcija ni uspešna. • Sisteme v realnem času je potrebno deliti na • tiste, pri katerih je mogoče tolerirati občasne zakasnitve, in • tiste, pri katerih zamuda termina pomeni neuspelo akcijo, ne glede na logično pravilnost rezultatov

  15. skrajni rok Strogi vs. mehki realni čas Strogi realni čas Kazen za zamujen skrajni rok Mehki realni čas čas zaključka opravila Še ena definicija: Čeprav funkcionalno korektni, so rezultati, pridobljeni po vnaprej določenem skrajnem roku napačni in zato neuporabni.

  16. skrajni rok Strogi vs. mehki realni čas Strogi realni čas Kazen za zamujen skrajni rok Mehki realni čas čas zaključka opravila • Medtem ko pri mehkem pri zakasnitvi roka kazen (oz. stroški) začnejorasti, pri strogem v tem trenutku skočijo na neko visoko vrednost. • Nekateri avtorji ločijo obe domeni tudi po resnosti konsekvenc, če zamudimo rok; čeprav sta si delitvi podobni, je prva ustreznejša. • Časovne omejitve pri strogem realnem času so mnogo bolj striktnodefinirane kot pri mehkem realnem času. (kombinirani pristopi, Doug Jensen,H.Rzehak)

  17. Pripombe • Strogi realni čas ne pomeni nujno varnostne kritičnosti: • Primer: mpeg video dekoder • Mehki realni čas lahko pomeni varnostno kritičnost • Primer: diagnostični sistemi • Črno-bela delitev na strogi in mehki realni čas ni realna. (Doug Jensen: ..They (real-time research community) have consensus on a precise technical (and correct) definition of “hard real-time,” but left “soft real-time” to be tautologically defined as “not hard” that is accurate and precise, but no more useful than dichotomizing all colors into “black” and “not black.” [26]..Poleg kazni za zamudo uvaja nagrado za predčasni zaključek in različne časovne funkcije zanje (podobno Rzehak).

  18. Statični vs. dinamični sistemi • Statični sistemi, delujoči v realnem času: preprostejši, vse je vnaprej znano in urejeno, delujejo časovno usklajeno, ne zamujajo, a zahtevajo veliko rezerve v zmogljivostih (čeprav potrebujejo manj administracije) in so manj fleksibilni. Primerni za periodična opravila. • Dinamični sistemi: veliko zahtevnejši, problemi zaradi nepredvidljivosti, nedeterminizma, dogodkov iz okolja, vendar naravnejši stik z okoljem. Fleksibilni, boljša izkoriščenost. Primerni tudi za aperiodična opravila.

  19. Kaj je res pomembno • Zmota: RT sistemi  hitri sistemi Dovolj hitri!! Vprašanje: kajjedovolj hitro? Računalniški sistem je primeren za delo v realnem času, če je mogoče ob času snovanja dokazati, da bodo vse zahteve postrežene v zahtevanem času v vseh primerih.

  20. Hope and Pray ! Jack Stankovic, 1995 Kaj je res pomembno • Realnost:predvsem iz ekonomskih (deloma tudi tehnoloških) razlogov ta zahteva praviloma ni izpolnjena (ali ni dokazana), včasih celo v varnostno kritičnih primerih; State-of-the-Art v verifikaciji performans:

  21. Zaključek uvoda • Čas je, da se v snovanju konsistentnih krmilnih aplikacij začnejo uporabljati splošno znani, a praviloma zanemarjani principi iz raziskav na tem področju. • Glavna smernica pri snovanju vgrajenih sistemov mora biti preprostost: ta je trenutno edini način, kako zagotoviti doslednost funkcionalnega in časovnega obnašanja. • Progress is the road from the primitive via the complicated to the simple (Biedenkopf).

More Related