Yleinen arkkitehtuuri



Samankaltaiset tiedostot
MUISTIPIIRIT H. Honkanen

Mikrokontrollerit. Mikrokontrolleri

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

Tietokoneen rakenne: Harjoitustyö. Motorola MC prosessori

Käyttöjärjestelmän rakenne

6.3. AVR_rauta. EEPROM-muisti pva

Arto Salminen,

Älykännykät ovat pieneen tilaan paketoituja, mutta suuret ominaisuudet omaavia tietokoneita.

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

1. Yleistä. 2. Ominaisuudet. 3. Liitännät

Piirien väliset ohjaus- ja tiedonsiirtoväylät H. Honkanen

Sulautetut järjestelmät

Luento 1 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus

Luento 1 (verkkoluento 1) Tietokonejärjestelmä

BL40A1810 & BL40A1820 Mikroprosessorit A/B. Luento 6: Väylät ja keskeytykset

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

Luento 1 Tietokonejärjestelmän rakenne. Järjestelmän eri tasot Laitteiston nopeus

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

Arduino. Kimmo Silvonen (X)

TIES530 - Sulautettujen järjestelmien arkkitehtuurit. Jukka Ihalainen, Tietoliikennelaboratorio,

Tietojenkäsittelyn perusteet 2. Lisää käyttöjärjestelmistä

ELEC-C5070 Elektroniikkapaja (5 op)

A15 - Inertial Measurement Unit

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?

Ongelma(t): Miten tietokoneen käyttöjärjestelmä toimii sisäisesti, jotta resurssit saadaan tehokkaaseen käyttöön?

Käyttöjärjestelmät: prosessit

2. Sulautettu järjestelmä ja mikro-ohjain , pva

Käyttöjärjestelmät. Tietokoneen rakenne. Stallings, Luku 1. KJ-I S2003 / Auvo Häkkinen, CT50A2602 / Leena Ikonen 1-1

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Jukka Helle

Intel MCS-51 -perhe Liite 1 / 1. Intel MCS-51 -perhe

Tiedon esitysmuodot. Luento 6 (verkkoluento 6) Lukujärjestelmät Kokonaisluvut, liukuluvut Merkit, merkkijonot Äänet, kuvat, muu tieto

Arduino ohjelmistokehitys

AS Servotekniikka Seminaariesityksen kirjallinen versio, mikrokontrollerit

SISÄLLYS sisällys 1 Tietokoneen toimintaperiaate ja käyttö 2 Tietokoneen historia 3 Tietokoneen rakenteen ja toiminnan perusteet

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. FT Ari Viinikainen

Muistipiirit. Digitaalitekniikka (piirit) Luku 20 Sivu 1 (24)

Sisältöä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja TITO-kurssista. Tietokonejärjestelmä

ELEC-C3240 Elektroniikka 2

1. Keskusyksikön rakenne

Arduino. Kimmo Silvonen (X)

Nopeuden mittaaminen

Tietokonejärjestelmä. Tietokoneen rakenne. Ch 1 - Ch 8 [Sta06] Valikoituja paloja. TITO-kurssista. John von Neumann ja EDVAC, 1949.

2 Konekieli, aliohjelmat, keskeytykset

Signaalien datamuunnokset. Näytteenotto ja pito -piirit

Kombinatorisen logiikan laitteet

Arto Salminen,

Ajattelemme tietokonetta yleensä läppärinä tai pöytäkoneena

Arduino. Kimmo Silvonen (X)

Ongelma(t): Mistä loogisista lausekkeista ja niitä käytännössä toteuttavista loogisista piireistä olisi hyötyä tietojenkäsittelyssä ja tietokoneen

kwc Nirni: Nimen selvennys : ELEKTRONIIKAN PERUSTEET 1 Tentti La / Matti Ilmonen / Vastaukset kysymyspapereille. 0pisk.

Muistihierarkia Kiintolevyt I/O:n toteutus

CLPD ja FPGA piirien arkkitehtuuri ja ominaisuudet

Petri Koivulahti. Intel mikrokontrollerit. Opinnäytetyö Kevät 2010 Tekniikan yksikkö Tietotekniikan koulutusohjelma Ohjelmistotekniikka

1 YLEISTÄ. Taitaja2002, Imatra Teollisuuselektroniikkatyö Protorakentelu 1.1 PROJEKTIN TARKOITUS

OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012

ELEC-A4010 Sähköpaja Arduinon väylät tutuiksi

Signaalien datamuunnokset

SATAKUNNAN AMMATTIKORKEAKOULU Sähkötekniikan koulutusohjelma. M-koodit Omron servojen ohjauksessa. Luovutettu. Hyväksytty

Kojemeteorologia. Sami Haapanala syksy Fysiikan laitos, Ilmakehätieteiden osasto

Järjestelmän ulkoinen muisti I/O

Peruspiirejä yhdistelemällä saadaan seuraavat uudet porttipiirit: JA-EI-portti A B. TAI-EI-portti A B = 1

Luentaohjelma M-Bus mittareille Versio 1.77 ja uudemmat

Nopea tiedonkeruulaitteisto radiokanavamittauksiin

1 Muutokset piirilevylle

ltöä rjestelmä Luento 2: LAITTEISTOSTA Tietokonejärjestelm KESKUSYKSIKKÖ Keskusyksikkö Kuva 1.1 KJ-I S2005 / Tiina Niklander & Auvo Häkkinen 2-1

7.3. Oheisrautaa. DS

ROSSI-AVR Versio 1.1, päivitetty

Tietokoneen toiminta, K Tavoitteet (4)

Ohjelmassa muuttujalla on nimi ja arvo. Kääntäjä ja linkkeri varaavat muistilohkon, jonne muuttujan arvo talletetaan.

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Ongelma(t): Mistä loogisista lausekkeista ja niitä käytännössä toteuttavista loogisista piireistä olisi hyötyä tietojenkäsittelyssä ja tietokoneen

TIES530 TIES530 PROSESSORIT/KONTROLLERIT

Käskykannat. Tietokoneen rakenne. Ch [Sta06] Operaatioista Operandeista Osoitustavoista Pentium / PowerPC. Luento 7-1

2. Laitteistorajapinta

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Peter Kronström

Suoritin. Luento 5 Suoritin ja väylä. TTK-91 muistin rakenne. TTK-91 suorittimen rakenne

TIES325 Tietokonejärjestelmä. Jani Kurhinen Jyväskylän yliopisto Tietotekniikan laitos

Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten,

Kontrollerin sisäisten komponenttien käytöstä. Vielä vähän asiaa sisäisten lohkojen käytöstä

Suoritin. Jakso 5 Suoritin ja väylä. TTK-91 muistin rakenne. TTK-91 suorittimen rakenne

Laitteistonläheinen ohjelmointi

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

File: C:\tmp\tmp\mch.txt , 9:37:46. JUKKA LAAKKONEN, OH1NPK ORIKEDONKATU 16 FIN TURKU May 18, 1995

Intel Pentium Pro -prosessori. tietokonearkkitehtuurit, syksy -96 Ari Rantanen

TIES530 TIES530. A/D-muuntimet. Mikrokontrollerit - arkkitehtuuri. Mikrokontrollerit - arkkitehtuuri. A/D- ja D/A-muuntimet

Tietokoneen rakenne Käskysykli CPU suorittaa ohjelmaa konekielinen käsky kerrallaan

Luento 7: Käskykannat Tietokoneen rakenne / 2006 / Teemu Kerola 9/25/2006

Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla

JOHDATUS TIETOKONETEKNIIKKAAN. Tietokoneiden loogisten toimintaperiaatteiden kuvaus kuvitteellisen tietokoneen avulla

6.2. AVR_rauta. Analogia-komparaattori-ohjelmointia , pva

Laitteistonläheinen ohjelmointi

Luento 2 (verkkoluento 2) Ttk-91 järjestelmä

Tietokonearkkitehtuuri 2 TKT-3201 (5 op)

Pikaintro käyttöjärjestelmiin

Muistihierarkia Kiintolevyt I/O:n toteutus

Verilogvs. VHDL. Janne Koljonen University of Vaasa

Paavo Räisänen. Ohjelmoijan binaarialgebra ja heksaluvut.

Väylät. Tietokoneen rakenne. Stallings: Ch 3 Mitä väylällä liikkuu? Väylän ominaisuuksia PCI-väylä PCI Express. Luento 2-1

Transkriptio:

TIES530 - Sulautettujen järjestelmien arkkitehtuurit Luento 2: Tietokonearkkitehtuurit Jukka Ihalainen, jukka.ihalainen@chydenius.fi Tietoliikennelaboratorio, http://rf.chydenius.fi Yleinen arkkitehtuuri 1

Konsepti Laitteita ja ohjelmistoja lähimpänä rautaa ns. firmware ohjelmisto, joka alustaa laitteiston käynnistyksen yhteydessä tämä on monesti pienen sulautetun järjestelmän itse ohjelmisto bootloader on pieni alkulatausohjelma, joka lataa varsinaisen KJ:n Applications Operating System Firmware Hardware Pöytäkone Application Firmware Hardware Application(s) Operating System Firmware Hardware Iso sulautettu järjestelmä Pieni sulautettu järjestelmä Konsepti kerrosmainen ajattelu firmwaren päällä käyttöjärjestelmä, joka sulautetuissa järjestelmissä on usein reaaliaikainen käyttöjärjestelmä (tehtävien vasteajat oltava pienet tai ainakin niille voitava määritellä vasteaikarajat) KJ tai FW ohjaa laitteen käyttöä (syöttö, tulostus, muisti ) monet sulautetut järjestelmät eivät tarvitse käyttöjärjestelmää, vaan systeemit yksinkertaisesti suorittavat niille ohjelmoitua tehtävää kaukosäädin ei tarvitse käyttöjärjestelmää reititin on sulautettu järjestelmä, jossa usein käyttöjärjestelmä mukana (esim. Cisco IOS) 2

Konsepti Prosessori(t) systeemin ytimenä jokaisella prosessorityypillä oma käskykanta periaate sama: haetaan muistista tieto, tulkitaan se, suoritetaan tieto binäärisenä: 1011 0000 0100 1111 1111 0111 tieto heksana: B0 4F F7 Assemlykielisenä voisi olla: ADD.B #0xFF, W7 ; Add the byte -1 to register W7 Muut laitteet Konsepti prosessorista/kontrollerista/sovelluksesta riippuen erilaisia ympäryslaitteita tarvitaan teholähteitä muistia näyttöjä ja näppäimiä antureita ja toimilaitteita ym. 3

Systeemiarkkitehtuuri Mikrotietokone koostuu mikroprosessori, muistit ja liityntäpiirit osia yhdistää kolme väylää tietoväylä (Data Bus), osoiteväylä (Address Bus) sekä ohjausväylä (Control Bus) lisäksi ulkoisia ohjauksia kuten kello, resetointi ja keskeytykset Yleisiä mikroprosessoreita Intel Pentium Motorola/IBM PowerPC MIPS (SGI Unix, Sony, Nintendo) ARM Ultra SPARC Mikroprosessorit 4

Mikrokontrollerit mikrokontrolleri on prosessorin, muistin ja joidenkin i/o laitteiden integroitu piiri, joka on tarkoitettu käytettäväksi sulautetuissa järjestelmissä valmistajia huomattavasti enemmän kuin mikroprosessoreilla koot vaihtelevat pienistä PIC tai AVR kontrollereista tehokkaisiin 32-bittisiin ARM, PowerPC ym. prosessoreihin Lisäksi SOC prosessorit (System-On-Chip) kuvassa TI/Chipcon CC2430 Von Neumann arkkitehtuuri: 1 muisti (RAM) jossa sekä data että ohjelmakoodi Alkuperäisen Harvard arkkitehtuurin tapauksessa käytettiin kahta muistia joilla omat väylänsä: yksi dataa ja toinen koodia varten. 5

ALU periaatteessa 6 perusfunktiota, joita prosessori voi suorittaa kirjoittaa dataa muistiin tai i/o-laitteelle lukea dataa muistista tai i/o-laitteelta lukea käskyn muistista muokata dataa prosessorien rekistereissä aritmeettis-loogisessa yksikössä (ALU, Arithmetic Logic Unit) suoritetaan datan muokkaus lisäys, vähennys, kertominen, jakaminen, NOT, AND, NAND, OR, NOR, XOR, bittisiirrot ja kierrot 6

Rekisterit prosessorin sisäisiä muistipaikkoja välitetään tietoa paikasta toiseen prosessorin sisällä nimet, määrä ja leveys prosessorikohtaisia esim. CC2430 sisältää erikoisrekistereitä 120 kpl CPU:n rekistereitä:akku (A), R-rekisterit (R0 R7), B- rekisteri, ohjelmalaskuri (PC), dataosoitin (DPTR), pino-osoitin (SP), prosessorin tilasana (PSW) 7

prosessorit toteuttavat yhden tai useamman pinon, joka on väliaikainen muistipaikka käyttömuistissa (RAM) prosessori voi viedä pinoon (PUSH) tietoa rekisteristä ja se voi palauttaa pinosta (POP or PULL) tietoa pino voi täyttyä joko ylhäältä alaspäin (intelin 8086) tai alhaalta ylöspäin (cc2430) Pinot Väylät Osoiteväylä väylän leveys määrää sen kuinka paljon muistia voidaan liittää esim 16 bittinen 2 16 = 65536 osoitettavaa muistipaikkaa osoiteväylän liitäntöjä merkitään yleensä A- kirjaimella (A0, A1, A2,, An) osoiteväylän ylimmät bitit kytkeytyvät tavallisesti osoitekooderille 8

Väylät Osoitekooderi jos mikrotietokoneen muisti koostuu useammasta piiristä tai jos siinä on useampia liitäntäpiirejä niin tarvitaan osoitekooderi, joka selvittää mille piirille väylällä oleva osoite kuuluu Väylät Tietoväylä kaksisuuntainen, leveys 4, 8, 16, 32 tai 64 bittiä tietoväylän liitäntöjä merkitään yleensä D-kirjaimella (D0, D1, D2,, Dn) tietoväylälle kytkeytyvien komponenttien lähtöliitännät ovat ns. kolmitilalähtöjä (Tri-State Output) lähtö voi olla kolmessa tilassa: ala-, ylä- tai suurimpedanssisessa tilassa suurimpedanssinen tila vastaa tilannetta, jossa väylä kytketään irti lähtöliitännästä prosessori huolehtii, että vain yksi komponentti kerrallaan voi liittyä tietoväylään 9

Väylät Yhdistetty tieto- ja osoiteväylä osoite ja data vuorottelevat samoissa prosessorin liitännöissä tyypillinen monissa Intelin prosessoreissa ja kontrollereissa väylän liitäntöjä merkitään usein AD kirjainparilla (AD0, AD1, AD2 ADn) tarvitaan ulkoinen väyläerotin prosessori syöttää yhdistetylle väylälle ensin osoitteen, joka lukitaan lukkopiirin lähtöihin lukituksen jälkeen lukkopiiri irrotetaan ja väylä toimii normaalina tietoväylänä Väylät Ohjausväylä tuloja ja lähtöjä näillä prosessori ohjaa laitteita (luku/kirjoitus) näistä prosessori myös saa tietoa laitteilta 10

Big-endian ja Little-endian prosessori voi tallettaa tietoa kahdella eri tavalla (koskee 16 bittisiä tai suurempia sanoja) big-endian tapauksessa prosessori tallettaa sanan eniten merkitsevän tavun vähiten merkitsevään osoitteeseen little-endian tapauksessa sanan eniten merkitsevä tavu eniten merkitsevään osoitteeseen Address Long word Word Byte Address Long word Word Byte 0100h 0101h 0102h 0103h 78 56 34 12 34 12 12 Little endian 0100h 0101h 0102h 0103h 12 34 56 78 12 34 12 Big endian Keskeytykset interrupt, trap, exception sulautettujen ohjelma suoritaa päättymätöntä silmukkaa ohjattavassa prosesissa tulee usein eteen tilanne, johon pitää reagoida mahdollisimman nopeasti (näppäimen painallus, sarjaporttiin tulee merkki, ajastimen tai laskurin ylivuoto jne.) ei ole mielekästä laittaa prosessoria pollaamaan tapahtumia; käytetään keskeytyksiä kun tapahtuu keskeytys (ja keskeytykset ovat sallittuja) niin prosessori suorittaa ensin meneillään olevan käskyn loppuun, tallentaa nykyisen tilansa (rekisterit, ohjelmalaskuri) pinoon (PUSH) ja lataa keskeytysvektorin alkuosoitteen ohjelmalaskuriin kun keskeytysohjelma päättyy niin prosessorin talletettu tila palautetaan ja ohjelma jatkuu normaalisti 11

Keskeytykset laitteistokeskeytykset prosessorilla voi olla yksi tai useampi ulkoinen keskeytyslinja jos yksi linja ja useita laitteita niin keskeytysrutiinissa pollattava mikä laite aiheutti keskeytyksen jos linjoja useampia niin ohjelma voi suoraan hypätä oikeaan keskeytysrutiiniin (ISR) nopea laitteistokeskeytys (fast hardware interrupt) keskeytyksen sattuessa vain ohjelmalaskurin arvo talletetaan, ISR tallettaa muut tarvittaessa Keskeytykset ohjelmistokeskeytys ulkoisten keskeytyslinjojen lisäksi keskeytys voi tulla esim ajastimesta 12

Vahtikoira-ajastin on ajastin, joka asettaa signaalin, jos laskuri saavuttaa jonkin tietyn raja-arvon (tai nollan) ellei laskuria käynnistetä uudelleen. Jos kaikki toimii niin laskuri ei saavuta raja-arvoa koskaan vaan ohjelma ehtii alustamaan ajastimen ennen rajaarvon saavuttamista. Jos raja-arvo saavutetaan niin ohjelmassa on jotain vialla (kaatunut) ja ajastimen asettama signaali resetoi järjestelmän. CISC ja RISC kaksi prosessorien perusarkkitehtuuria CISC (Complex Instruction Set Computer) Intel x86, Motorola 68xxx vähän rekistereitä ja paljon käskyjä (käskyjen dekooderi monimutkainen ja hidas), iso pinta-ala ja kuuma RISC (Reduced Instruction Set Computer) PowerPC, ARM, Atmel AVR, Microchip PIC paljon rekistereitä (jopa 1000), vähän käskyjä esim. kertolasku kokonaisluvuilla voi viedä 80486 CISC prosessorilta 42 kellojaksoa ja RISC prosessorilta vain yhden kellojakson 13

CISC ja RISC clear 0x1000 ; clear memory location 0x1000 load r1, #5 ; load register 1 with the value 5 xor r1, r1 ; clear register 1 store r1, 0x1000 ; clear memory location 0x1000 add r1, #5 ; load register 1 with the value 5 DSP erikoisprosessoreita tarkoitettu reaaliaikaisen signaalin muokkaamiseen GSM, modeemit, äänikortit, mittalaitteet yleensä Harvard-arkkitehtuuri, lisäksi data-alue voitu jakaa vielä kahteen tai useampaan osaan mahdollistaa yhtäaikaisen datan haun nopeuttaa 14

Muistit ohjelmamuistia (yleensä lukumuistia, ROM) käyttömuistia (luku/kirjoitusmuistia, RAM) nimityksiä RAM, ROM, EPROM, EEROM, Flash 65536 rivä Osoite Tieto MSB LSB 0000h 0 1 0 1 0 1 0 1 0001h 1 0 0 0 1 1 1 0 0002h 0 0 0 0 0 0 0 1 0003h 0 0 1 0 0 0 1 0 0 1 1 0 0 0 0 0 FFFEh 0 0 1 0 0 1 0 0 FFFFh 1 1 0 1 0 1 0 0 Bitti Tavu Muistit luku- ja kirjoitusmuistin yksinkertaistettu symboli 8-bittinen datalinja 15-bittinen osoitelinja kapasiteetti 32 KB piirinvalintasignaali (CS, Chip Select) (aktiivinen alatilassa) kirjoituksen sallinta (WE, Write Enable) lähdön sallinta (OE, Output Enable) 15

Muistit Aikakaaviot 1. osoite muistipiirille 2. piiri valitaan 3. piirin lähtö sallitaan 4. muistipaikan tieto asettuu lähtöihin 5. lähdön sallinta ylätilaan 6. lähdöt suurimpedanssiseen tilaan 7. piirinvalinta ylätilaan 8. seuraava jakso alkaa Osoite CS OE Tieto Osoite CS WE Tieto 1 2 3 4 5 6 7 8 Muistipiirin lukujakso Muistipiirin kirjoitusjakso I/O Liitäntäpiirien avulla mikrotietokone yhteydessä ympäröivään elektroniikkaan (näppäimet, näytöt, releet, muuntimet, ) näkyvät prosessorille yhtenä tai muutamana muistiosoitteena (rekisterinä) tiedonsuuntarekisteri, jonka biteillä valitaan onko liitäntä tulo (0) tai lähtö (1) liitäntöjen tilat voidaan lukea tietorekisteristä samoin kun lähtöjen tieto kirjoitetaan tietorekisteriin 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 Tiedonsuuntarekisteri Tietorekisteri IO7 IO6 IO5 IO4 IO3 IO2 IO1 IO0 16

I/O Liitäntäpiirissä voi olla useita I/O portteja (A, B,..) kuvan piirissä kaksi porttia, jolloin tarvitaan 4 rekisteriä rekisterit voidaan osoittaa kahdella rekisterinvalintalinjalla Sulautettujen arkkitehtuuri Pöytäkoneessa tehokas CPU, paljon keskusmuistia, käyttöjärjestelmä, sovelluksia, paljon massamuisteja, erilaisia I/O laitteita ja verkko- ym. liitynnät suuret sulautetut järjestelmät vastaavanlaisia reitittimet, puhelinkeskukset, automaatiojärjestelmät, lentokoneet, laivat, 17

Sulautettujen arkkitehtuuri pienemmät sulautetut järjestelmät käyttävät mikrokontrollereita, jotka sisältävät yhdellä piirillä samoja toimintoja mitä koko tietokonejärjestelmätkin mikrokontrollerissa on minimissään CPU, pieni määrä muistia (RAM ja/tai ROM) 18

Digitaalinen signaali bitit esitetään jännitetasoina loogista nollaa vastaa maapotentiaali eli 0V loogista ykköstä vastaa yleensä käyttöjännite, joka voi olla esim. 1.8V, 2.7V, 3.3V, 5V, 12V loogiset tasot ovat jotain maapotentiaalin ja käyttöjännitteen välillä 19

esim AtMega128 Kynnysjännittet 20

Skeman lukeminen esimerkkinä IR-valolla toimiva kauko-ohjain järjestelmän yleiskuvaus Laitteistolla voidaan vastaanottaa IR-signaaleja toisesta kaukoohjaimesta, dekoodata ne binäärisiksi ohjauskoodeiksi, tallettaa niitä laitteiston EEPROM muistiin ja lähettää vastaanotettu koodi PC:lle sarjayhteyttä pitkin. Laite voi toimia myös ns. välittävänä laitteena, jolloin se PC:ltä saamansa ohjauskoodin ensin koodaa IR-signaaliksi ja sitten lähettää vastaanotinlaitteelle. Laite voi toimia myös itsenäisenä kauko-ohjaimena, jolloin sillä voidaan valita jokin EEPROM-muistiin tallennettu koodi ja lähettää se vastaanottimelle. Skeman lukeminen laitteistoarkkitehtuuri mikrokontrollerina käytetään Atmelin ATMega32, joka käyttää 7.2837 MHz:n ulkoista kidettä ohjelmointiin ja debuggaukseen laitteistosta löytyy JTAG- ja ISP-liittimet näyttönä käytetään 4x16 merkin LCD-näyttöä yhteys PC:hen on toteutettu standardin RS-232 liitynnän kautta laitetta voidaan ohjata kolmella näppäimellä. Näppäimet toimivat keskeytysperiaatteella. IR-led ja IR-vastaanotin on kytketty kuvan osoittamiin I/O-liityntöihin 21

ISP ohjelmointiliitin RESET (SS) PB4) (MOSI) PB5 (MISO) PB6 (SCK) PB7 RESET PA0 PA1 PA2 PA4 PA5 PA6 PA7 LCDnäyttö 7.2837 MHz kide XTAL2 XTAL1 ATMega 32 K1 RS-232 (RX) PD0 (TX) PD1 (INT0) PD2 PD3 PD4 PD5 (TDI) PC5 (TDO) PC4 (TMS) PC3 (TCK) PC2 JTAGliitin K2 K3 Näppäinohjaus, suodatus (ICP1) PD6 PD7 IR-TX IR-RX mikrokontrolleri Skeman lukeminen VCC PB[5:8] ISP LCD control PA[0:2] SW1 RESET R1 100k C2 22p C3 22p PB8 Y1 7.3728MHz Serial PD[0:1] Keyboard PD[2:5] PB5 PB6 PB7 PB8 VCC PD0 PD1 PD2 PD3 PD4 PD5 PD6 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 U1 PB0 PB1 PB2 PB3 PB4 PB5 PB6 PB7 /RESET VCC GND XTAL2 XTAL1 PD0 PD1 PD2 PD3 PD4 PD5 PD6 ATmega32 40 PA0 39 PA1 38 PA2 37 PA3 36 PA4 35 PA5 34 PA6 33 PA7 32 AREF AGND 31 AVCC 30 29 PC7 28 PC6 27 PC5 26 PC4 25 PC3 24 PC2 23 PC1 22 PC0 21 PD7 PA0 PA1 PA2 PA4 PA5 PA6 PA7 VCC PC5 PC4 PC3 PC2 LCD data JTAG IR-tx PA[4:7] PC[2:5] PD7 PD6 IR-rx 22

sarjaliityntä Skeman lukeminen VCC U3 U7 1u C6 + 1u C7 + 1 2 3 4 5 6 7 8 C1+ VCC 16 V+ GND 15 14 C1- T1OUT C2+ R1IN 13 12 C2- R1OUT V- T1IN 11 T2OUT T2IN 10 9 R2IN R2OUT PD0 PD1 1 2 3 4 5 DCD Rx Tx DTR GND 9 RI CTS 8 RTS 7 DSR 6 D9_FEMAL MAX232CPE C8+ 1u + C9 1u PD[0:1] Mikrokontrolleri IR-led JTAG -liitin IR-vastaanotin Reset-painike LCD-näyttö UP-, DOWN- ja SELECTpainikkeet Kontrastin säätö ISP ohjelmointiliitin RS-232 liitin 23

Tietokonelogiikka Lukujärjestelmistä tietokonepuolella yleisimpiä binääri- ja heksajärjestelmät bittejä (bits, b), tavuja (bytes, B), sanoja (words) binääriluvun desimaaliarvo voidaan laskea 2 i b i i b = bitin i arvo(0 tai1) n = luvun pituus bitteinä vaadittavien bittien määrä saadaan n 1 = i= 0 ln( n) bits = log 2 ( n) = n = kymmenjärjestelmän luku ln(2) 24

Lukujärjestelmistä muunnokset lukujärjestelmien välillä esim. IPv4-osoite on 32-bittinen, jolloin oktetteina esitetty osoite 192.168.137.77 on binäärisenä 11000000 10101000 10001001 01001101 heksalukuna se olisi C0 A8 89 4D ja desimaalisena 3 232 270 669 kannattaa muistaa: 10 bitillä voi esittää 1024 vaihtoehtoa 11 bitillä kaksinkertaisen määrän, 12 bitillä taas kaksinkertaisen määrän eli 4096. Porttipiirit aiemmin oli hyvin yleistä, että ohjauslogiikka tehtiin erillislogiikalla piirilevylle nykyään logiikan tehtäviä hoitaa useimmiten yksi tai useampi mikrokontrolleri 25

Porttipiirit 26