Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Sulautetut järjestelmät

Samankaltaiset esitykset


Esitys aiheesta: "Sulautetut järjestelmät"— Esityksen transkriptio:

1 Sulautetut järjestelmät
Johdatus sulautettuihin järjestelmiin (JSU) Pekka Toivanen GSM: Kevät 2017

2 Opintojakso Luennot Seminaari

3 Opintojakso Seminaariesitelmä: 1-2 hengen ryhmissä
Seminaariesitelmä arvostellaan Opponenttiryhmä kommentoi esityksen Viikkoharjoitukset

4 Kurssin arvostelu Harjoitukset
Tehtävät ja tehtävien palautus Moodlessa ennen harjoituksia Paikallaolosta saa yhden pisteen Hyväksytysti suoritetusta tehtävästä yhden pisteen Yhteensä max p. 40% tenttioikeus Tentti ja Uusintatentti (Joensuussa yleinen) Arvosana 1 - 5, harjoituspisteet voivat nostaa hyväksyttyä arvosanaa yhdellä rajatapauksissa

5 Opintojakson tavoitteet
Kokonaiskuva sulautetuista järjestelmistä Erilaisten sulautettujen järjestelmien toiminnan ymmärtäminen Sulautettuihin järjestelmiin liittyvän termistön hallinta Työllisyystilanne Ympäristövaikutukset

6 Kurssin sisältö Määritelmiä, piirteitä ja esimerkkejä
Laitemarkkinat ja työllistävä vaikutus Sulautetun järjestelmän suunnitteluprosessi Termejä ja käsitteitä Ohjelmistot ja ohjelmointi Reaaliaikajärjestelmät Testaus Ympäristönäkökulmat

7 Johdanto Sulautettu järjestelmä (ohj. termi)
Ohjelmisto ja laitteisto ovat kiinni toisissaan niin saumattomasti ettei kumpikaan ole käyttökelpoinen ilman toista Sekä ohjelmisto että laitteisto saattavat hyödyntää standardikomponentteja Käyttäjä ei yleensä näe työnjakoa ohjelmiston ja laitteiston välillä Vastaavia termejä myös muilla aloilla (esim. mekatroniikka (mekaniikka + elektroniikka))

8 Ohjelmistoteknisiä ongelmakenttiä
Ohjelmistotuotanto Käytettävyys ja käyttöliittymät Laitteistonläheinen ohjelmointi Reaaliaikaiset järjestelmät Reaktiiviset järjestelmät Vikasietoisuus Hajautetut järjestelmät

9 Joitakin Ominaispiirteitä
Pienet vs. suuret (fyysinen koko vs. ohjelmiston koko) Tietokone oikeastaan sivuosassa Muuten jopa väärin suunniteltu? Yleensä suljettuja Ei uusia sovelluksia asennettavissa; tilanne muuttumassa nopeasti, vähintään selain useasti käytettävissä Laitevalmistaja voi kuitenkin yleensä tehdä mitä haluaa (uudet ohjelmistoversiot, patchaus, jne) Toiminnalliset vaatimukset yleensä aikaan sidottuja Turvallisuus ja vikasietoisuus keskeisiä ominaisuuksia Toteutuksessa usein tarjolla halvin, hitain ja pienimuistisin laitteisto, joka pitää virittää äärirajoilleen … jolloin suljettuus on merkittävä etu Ohjelmoinnissa hyödynnetään usein laitteiston ominaispiirteitä (esim. Nintendo Wii)

10 Kokonaisjärjestelmän määrittelystä…
Usean eri osa-alueen summa; vaatii eri alojen asiantuntijoiden yhteistyötä Ohjelmistotekniikka Tietokonetekniikka Tietoliikennetekniikka Elektroniikka Automaatio Mekaniikka Varsinaisen sovellusalueen asiantuntijat Jokainen tyypillisesti projisoi ratkaistavan ongelman oman alansa erityisongelmaksi Kokonaiskuvan muodostaminen vaikeaa

11 Kehitys tyypillisestí iteratiivista
Ensin toimiva perusratkaisu Kun tuote vanhenee, lisä- ja täydentäviä toimintoja tarpeen mukaan Esim. Matkapuhelin 1. GSM-puhelin pystyi juuri ja juuri soittamaan Soittajan tietojen näyttö Ladattavat soittoäänet Värikuoret WAP Musiikkisoitin ja kamera Facebook & Youtube client Jne. Vaikka laite voi vaikuttaa samalta, ohjelmistoteknisesti muutokset voivat olla massiivisia! Joskus kyseessä jopa kokonaan uusi toteutus (esim. Nokia kommunikaattorissa GEOS -> Symbian OS)

12 Suunnitteluprosessista
Suunnittelun jakaminen osiin Ohjelmiston ja laitteiston rajapinta Ohjelmiston ja laitteiston yhteissuunnittelu (Mahdollisuuksien mukaan myös yhteisvarmennus) Integrointi Eri alan asiantuntijoiden keskinäinen vuoropuhelu eri vaiheissa

13 Kokonaismäärittely Ohjelmiston määrittely Laitteiston määrittely Kokonaissuunnittelu Ohjelmiston suunnittelu Laitteiston suunnittelu Työn jako osiin Ohjelmiston toteutus Laitteiston toteutus Ohjelmiston testaus Laitteiston testaus Integrointi ja testaus

14 Sulautetun järjestelmän
suunnitteluprosessi Sulautetun järjestelmän Vaatimusmäärittely IDEA! Toimintokuvaus (looginen toiminta) Lohkokaaviotasoinen logiikka- ja ohjelmistosuunnittelu Elektroniikan valinta: kontrolleri, muistit ja I/O Ohjelman lohkojen toteutus ja simulointi Elektroniikan hankinta, prototyypin suunnittelu, teko ja kalustus Ohjelman yhdistäminen laitteeseen Testaus Ylläpito ja edelleen kehitys Tapio Grönfors 2005

15 Sulautetun järjestelmän suunnitteluprosessi
Vaatimusten määrittely Välttämättömät (pakolliset) ominaisuudet Toivottavat lisäominaisuudet Käyttöliittymä Ympäristön asettamat vaatimukset Tilaajalle tai tulevalle käyttäjälle esitettäviä kysymyksiä: Mitä laitteella halutaan tehdä? Mitä ominaisuuksia laitteella tulee olla? Miten sitä halutaan käyttää? Miten laite saa käyttövoimansa? Millaiset liitännät siihen halutaan?

16 Sulautetun järjestelmän suunnitteluprosessi
Vaatimusmäärittelyvaiheen tuotokset kuvaavat järjestelmää käyttäjän näkökulmasta riippumatta siitä, miten tarvittavat toiminnot toteutetaan! Vaatimusmäärittely lähtee liikkeelle toimintaympäristön kuvaamisesta Välttämättömät ominaisuudet - Sulautetun järjestelmän ne ominaisuudet, jotka sen tulee vähintään toteuttaa, jotta projektia voidaan pitää onnistuneena.

17 Sulautetun järjestelmän suunnitteluprosessi

18 Sulautetun järjestelmän suunnitteluprosessi

19 Sulautetun järjestelmän suunnitteluprosessi

20 Sulautetun järjestelmän suunnitteluprosessi

21

22 Vaatimusmäärittelyn perusteet

23

24

25

26

27 von Neumann John von Neumann, First Draft of a Report on the EDVAC, In W. Aspray and A. Burks, editors, Papers of John von Neumann on Computing and Computer Theory, vol 12 in the Charles Babbage Institute Reprint Series for the History of Computing. MIT Press, 1987.

28 Yksinkertainen kone Suoritin Kontrolliyksikkö ALU Rekisterit Muisti

29 von Neumann vs. Harvard arkkitektuuri

30 von Neumann vs. Harvard arkkitektuuri

31 Load-Store arkkitehtuuri

32 Akku

33 Keskeytysjärjestelmä
Ohjelmavirhekeskeytys Ohjelmoitu keskeytys Ulkoinen keskeytys Käynnistys

34 Toiminta keskeytyksen tullessa
1. Tallennetaan tila 2. Selvitetään keskeytyksen syy 3. Palvellaan keskeytys 4. Palautetaan tila ja jatketaan suoritusta

35 Keskeytyksen havaitseminen
1

36 Keskeytyksen palveleminen
Keskeytysvektori

37 Ohjelmisto tunnistaa keskeyttäjän
Oheislaitteilla yhteinen IRQ-linja Ohjelmisto käy lukemassa oheislaitteiden tilarekisterit

38 Esimerkki keskeytyspalvelusta
/***************************************************************************** * uart.c: UART API file for NXP LPC23xx/24xx Family Microprocessors ******************************************************************************/ void UART0Handler (void) irq { BYTE IIRValue, LSRValue; volatile BYTE Dummy = Dummy; IIRValue = U0IIR; IIRValue >>= 1; IIRValue &= 0x07; if ( IIRValue == IIR_RLS ) { /* skip pending bit in IIR */ /* check bit 1~3, interrupt identification */ /* Receive Line Status */ /* Handle received data here */ Dummy = U0RBR; /* Dummy read on RX to clear interrupt, then bail out */ IDISABLE; VICVectAddr = 0; return; /* Acknowledge Interrupt */ } if ( LSRValue & LSR_RDR ) { /* Another situation */ /* Receive Data Ready */

39 Termejä ja käsitteitä Datalehdet (Data sheets)
esim. Data sheet catalog.com 7408 Sisältää komponentin tarkan kuvauksen

40 Termejä ja käsitteitä Kytkentäkaavio (Schematic diagram)

41 Termejä ja käsitteitä Johdotuskaavio (Wiring diagram)

42 Termejä ja käsitteitä Lohkokaavio (block diagram)
Yleiskuva laitteistosta Toteutuksen yksityiskohdat abstrahoitu pois

43 Termejä ja käsitteitä Logiikkakaavio (logic diagram)

44 Termejä ja käsitteitä Ajoituskaavio (Timing diagram)

45 Termejä ja käsitteitä Vuokaavio (flow chart)

46 Termejä ja käsitteitä Digitaalista tietoa ja loogisia muuttujia kuvataan tiloilla 0 ja 1 - 0 V on maa (ground) - low ja syöttöjännite (Vcc tai Ucc) – high - Käytännössä useasti 0 V ja 3,3 V tai 5 V - Joskus 0 V ja 24 V - Esim. TTL loogiikassa 0 (0V – 0.8V), looginen 1 (2V – Vcc) - Voimassa on positiivinen logiikka sopimus eli ylempi jännite on 1 - Muut välissä olevat jännitetilat on kielletty - Signaali on kelluva (floating) kun sitä ei ole viety loogiseen 0 tai loogiseen 1 tilaan

47 Termejä ja käsitteitä Siirtotie ei ole ideaalinen!
Häiriövara (noise margin): siirtotiellä ulostulosta sisäänmenoon voi summautua häiriöjännitteitä. Kielletty alue erottaa loogiset tilat riittävän selvästi loogisia tiloja vastaavilla jännitealueilla eri kriteerit ulostuloissa ja sisäänmenoissa Järjestelmissä esiintyy eri jännitetasoja, joiden välillä täytyy tehdä jännitemuunnoksia. Lisäksi usein mielivaltaisia jännitetasoja täytyy muuntaa loogisiksi tasoiksi järjestelmän ymmärtämään muotoon, esim. A/D-muunnos

48 Termejä ja käsitteitä Käyttöjännite, vastus ja kondensaattori
Kytkennän käyttöjännite on yleensä n. 2V – 7V ja järjestelmään syötettävä jännite 5V – 15V Käyttöjännite voidaan tehdä muuntajalla, generaattorilla, dynamolla, paristoilla, akulla, aurinkopaneelilla, USB-portilla Hyvin tyypillinen piirien käyttöjännite on 5V ja se voidaan tuottaa jänniteregulaattorilla 9–12 V:n tasajännitteestä Järjestelmän sisällä jännitevaihteluja voidaan tasata pienillä kondensaattoreilla, jotka sijoitetaan mikropiirien läheisyyteen käyttöjännitteen ja maan väliin Järjestelmää suunnitellessa tulee laatia yleensä teho- ja hukkatehobudjetti (hukkateho=lämpö)

49 Termejä ja käsitteitä Lukujärjestelmät
Digitaalitekniikassa ja logisissa piireissä ihanteellinen lukujärjestelmä on binaarijärjestelmä Ihmiselle pelkät ykköset ja nollat ovat hankalia hahmottaa Olemme tottuneet kymmen- eli desimaalijärjestelmään Oktaalijärjestelmän ja heksadesimaalijärjestelmän luvut on helppo muuttaa binäärijärjestelmän luvuiksi Kaikkien lukujärjestelmien välillä voidaan tehdä lukumuunnokset

50 Termejä ja käsitteitä Lukumuunnokset Desimaali-binäärimuunnos
- desimaaliluku jaetaan kahdella ja merkitään jakojäännös muistiin, kunnes osamääräksi saadaan yksi, esim = Jakojäännös 0,5 * 2 = 1 Jakolasku Jakojäännös 187 : 2 = 93,5 1 93 : 2 = 46,5 46 : 2 = 23 23 : 2 = 11,5 11 : 2 = 5,5 5 : 2 = 2,5 2 : 2 = 1 1 : 2 = 0

51 Termejä ja käsitteitä Desimaali-heksadesimaalimuunnos
desimaaliluku jaetaan kuudellatoista ja merkitään jakojäännös muistiin, kunnes osamääräksi saadaan alle 16, esim = BC16 Jakojäännös 0,75 * 16 = 12 0,6875 * 16 = 11 Ylhäällä vähiten merkitsevä luku ja alhaalla eniten merkitsevä luku  Heksa - desimaali vastaavuus: 1=1, 2=2, 3=3, 4=4, 5=5, 6=6, 7=7, 8=8, 9=9, A=10, B=11, C=12, D=13, E=14, F=15 Jakolasku Jakojäännös 188 : 16 = 11,75 1210 = C16 11 : 16 = 0,6875 1110 = B16

52 Termejä ja käsitteitä Binääri-desimaalimuunnos
Binääriluvun bitit kerrotaan painoarvollaan, esim. = 1 * * * * * * * * 1 = = 18910 Heksadesimaali-desimaalimuunnos Heksadesimaaliluvun numerot kerrotaan painoarvollaan, esim. ABC16 = 10 * * * 1 = =

53 Termejä ja käsitteitä Binääri-heksadesimaalimuunnos
Jaetaan binääriluku neljän bitin ryhmiin lopusta alkaen ja muunnetaan ryhmät yksitellen vastaaviksi heksadesimaaliluvuiksi, esim = 7E16 Heksadesimaali- binäärimuunnos Heksadesimaaliluvun numerot muutetaan yksi kerrallaan vastaaviksi binäärijärjestelmän luvuiksi, esim. 37A16 =

54 Termejä ja käsitteitä Binääri- heksa- desimaali- vastaavuus Binääri
0000 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 1010 A 10 1011 B 11 1100 C 12 1101 D 13 1110 E 14 1111 F 15 Binääri- heksa- desimaali- vastaavuus

55 Termejä ja käsitteitä Boolen algebra (Boolean algebra)
Kaksi arvoa tosi (True, T) ja epätosi (False, F), joita kuvataan myös ykkösellä (1) ja nollalla (0) NOT = looginen negaatio (EI) OR = looginen yhteenlasku (TAI) AND = looginen kertolasku (JA)

56 Termejä ja käsitteitä Porttipiirit TAI- eli OR-portti (A + B)
JA- eli AND-portti (A * B)

57 Termejä ja käsitteitä EI- eli NOT-portti (A)
JA-EI- eli NAND-portti (A*B)

58 Termejä ja käsitteitä TAI-EI- eli NOR-portti
 (A+B) Poissulkeva-TAI- eli XOR-portti (A⊕B)

59 Termejä ja käsitteitä Poissulkeva TAI-EI- eli XNOR-portti (A⊕B)
Totuustaulukooste

60 Termejä ja käsitteitä Mikä tahansa portti voidaan rakentaa NAND- ja NOR-porteista, esim. Tällä ratkaisulla voidaan hyödyntää mikropiirin ylimääräisiä portteja

61 Termejä ja käsitteitä Yhdistelmät

62 Termejä ja käsitteitä Useampi sisäänmeno (Multiple Input)


Lataa ppt "Sulautetut järjestelmät"

Samankaltaiset esitykset


Iklan oleh Google