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

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

Käyttöjärjestelmän rakenne

1. Keskusyksikön rakenne

Tietokoneen muisti nyt ja tulevaisuudessa. Ryhmä: Mikko Haavisto Ilari Pihlajisto Marko Vesala Joona Hasu

Python-koodaus: Muuttujat

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

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

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

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

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

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

Tietokoneen rakenne: Harjoitustyö. Motorola MC prosessori

Laiteläheinen C-kieli, yleistä

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

MUISTIPIIRIT H. Honkanen

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

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

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

Sulautettujen järjestelmien skaala on niin laaja, että on erittäin vaikea antaa yleispätevää kuvausta siitä millainen on sulautettu järjestelmä.

OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012

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

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

3. Luento: Muistin hallinta. Tommi Mikkonen,

TIES530 TIES530. Kontrollereiden Muistit. Mikrokontrollerit - arkkitehtuuri. Mikrokontrollerin sisäinen arkkitehtuuri

Mikro-ohjain µc harjoitukset - yleisohje

Arto Salminen,

CT50A2602 Käyttöjärjestelmät Seminaarityö. Tietokoneen muisti nyt ja tulevaisuudessa

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

BL40A1810 Mikroprosessorit, harjoitus 1

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

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

Sulautetut järjestelmät

11/20: Konepelti auki

3. C-kieli sulautetun järjestelmän ohjelmointikielenä , pva

Luento 1 (verkkoluento 1) Tietokonejärjestelmä

Luento 5 (verkkoluento 5) Suoritin ja väylä

6.3. AVR_rauta. EEPROM-muisti pva

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

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

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

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

Mikrokontrollerit. Mikrokontrolleri

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

Väylät. Prosessorin tie ulkomaailmaan Pienissä järjestelmissä vain yksi väylä. Osoite, data ja ohjaussignaalit Prosessori ainoa herra (master)

Työasema- ja palvelinarkkitehtuurit (IC130301) Apumuistit. Kiintolevyt. 5 opintopistettä. Petri Nuutinen

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

Raspberry Pi. Yhden piirilevyn tietokone. Tässä dokumentissa kerrotaan yleistä tietoa Rasberry Pi- tietokoneesta ja. sen toiminnoista.

Apuohjelmat-valikko. Paperinkäsittely. Huolto. Vianmääritys. Ylläpito. Hakemisto

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

811120P Diskreetit rakenteet

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

2.2. Tietokoneohjelman tekeminen pva, kuvat jma

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

Yleinen arkkitehtuuri

Algoritmit. Ohjelman tekemisen hahmottamisessa käytetään

Kombinatorisen logiikan laitteet

AS Servotekniikka Seminaariesityksen kirjallinen versio, mikrokontrollerit

Luento 5 (verkkoluento 5) Suoritin ja väylä

Luento 2: LAITTEISTOSTA

Ala-Härmän atk-sanomat

Tietokonetekniikka Edita, Seppo Haltsonen, Esko T. Rautanen

Käyttöjärjestelmät: poissulkeminen ja synkronointi

ELEC-C3240 Elektroniikka 2

Muistimoduulit. Käyttöopas

C++ Kuva 1-1. C- ja C++ kielien perustana olevat kielet.

DIPLOMITYÖ MIKROPROSESSORIN SUUNNITTELU JA TOTEUTUS FPGA:LLE

Ulkoiset mediakortit. Käyttöopas

Ohjelmointiharjoituksia Arduino-ympäristössä

Käyttöjärjestelmät: prosessit

Tulostimen muisti. Muistinhallinta. Tulostaminen. Värien käyttäminen. Paperinkäsittely. Huolto. Vianmääritys. Ylläpito. Hakemisto

OHJ-1010 Tietotekniikan perusteet 4 op Syksy 2012

2 Konekieli, aliohjelmat, keskeytykset

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

ELEC-C5070 Elektroniikkapaja (5 op)

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

Muistimoduulit. Oppaan osanumero: Tässä oppaassa kerrotaan tietokoneen muistin vaihtamisesta ja laajentamisesta.

Laitteistonläheinen ohjelmointi

LUKUJA, DATAA KÄSITTELEVÄT FUNKTIOT JA NIIDEN KÄYTTÖ LOGIIKKAOHJAUKSESSA

Mikro-ohjaimen ohjelmoinnin perusteet Flowcode ympäristössä

Muistimoduulit. Oppaan osanumero: Tässä oppaassa kerrotaan tietokoneen muistin vaihtamisesta ja laajentamisesta.

Laiteläheinen C-kieli osa 1 pva

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

Asetusvalikossa voidaan määrittää erilaisia tulostimen ominaisuuksia. Lisätietoja saat valitsemalla valikon vaihtoehdon:

Muistimoduulit. Oppaan osanumero: Tässä oppaassa kerrotaan tietokoneen muistin vaihtamisesta ja laajentamisesta.

Selkosanakirja sdfghjklöäzxcvbnmqwertyuiopåasdfghjklöäzxcvbnmq. Tietokoneet. wertyuiopåasdfghjklöäzxcvbnmqwertyuiopåasdfghjk 1.4.

TIES530 TIES530 PROSESSORIT/KONTROLLERIT

Concurrency - Rinnakkaisuus. Group: 9 Joni Laine Juho Vähätalo

Johdanto käyttöjärjestelmään penttivahtera

Asetusvalikossa voidaan määrittää erilaisia tulostimen ominaisuuksia. Lisätietoja saat valitsemalla valikon vaihtoehdon:

AU Automaatiotekniikka. Toimilohko FB

ELEC-C5070 Elektroniikkapaja (5 op)

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

Tietokoneohjelman anatomia Mikä on tietokoneohjelma ja tietokonekieli

TKT224 KOODIN KOON OPTIMOINTI

ECIO käyttöohje. Matrix Multimedia Limited. JJJ-Automaatio Oy. Keijo Salonen Jyväskylän ammattiopisto

Ohjelmoijan binaarialgebra ja heksaluvut

Linuxissa uusi elämä 1

Johdanto kurssin sisältöön

Transkriptio:

Mikä on tietokone PUNOMO NETWORKS OY 22.7.2016 pva, piirroskuvat J. Mansikkaviita Henkilökohtaisesti olen aina valmis oppimaan, vaikka en välitäkään tulla opetetuksi. - Winston Churchill Tietokone on elektroninen laite, joka suorittaa sille annettua tehtävää eli ohjelmaa. Tietokone tosin ei tiedä yhtään mitään. Se osaa vain laskea. Ja kun se ei tunne muita numeroita kuin 1 ja 0, ei sen laskentataitokaan kovin kaksinen ole. Mutta kun se tekee laskentaa hyvin, hyvin nopeasti, lopputulos on ihmeellistä. Tietokone voi olla yleiskäyttöinen, - moneen erilaiseen tehtävään soveltuva, kuten PC, tai johonkin tiettyyn erityistarkoitukseen valmistettu, - jollaisia kaikki sulautetut järjestelmät ovat. Älykännykät ovat pieneen tilaan paketoituja, mutta suuret ominaisuudet omaavia tietokoneita. Raspberry Pi tietokone Pankkikortin kokoinen ohjelmoinnin opiskeluun tehty tietokone, RaspberryPi. hinta 35 $. Käyttöjärjestelmä ja muut ohjelmat on asennettu SD-muistikortille. Liittimet: nettiyhteyttä varten, näytölle, kameralle, kuulokkeille, USB-laitteille ja input/outputpiikkirima. 1

Mistä tietokone koostuu ja mitä se tekee? Tietokoneen tärkeimmät komponentit: mikroprosessori (CPU, Central Prosessing Unit) ohjelmamuisti - lukumuisti datamuisti - luku/kirjoitus-muisti 1. Tietokone käsittelee tietoa. Tiedon käsittely - työstäminen ja siis ohjelmien ajo tapahtuu ohjelmakoodin ohjaamana tietokoneen keskusyksikössä, mikroprosessorissa, CPU, Central Prosessing Unit, apuna se käyttää erilaisia muisteja ja muita oheislaitteita. 2. Miten tietoa käsitellään? Jossain on oltava ohjeet tiedonkäsittelyyn. Ohjeet, käskyjono, ovat ohjelmassa, jonka ohjelmoija, koodari, on kirjoittanut. Ohjelma määrää miten tietoa käsitellään oli se sitten tekstiä, kuvaa, ääntä tai muuta. Sitä säilytetään ohjelmamuistissa, joka on flash tai kiintolevy, tai joku muu paikka, kuitenkin sellainen, ettei koodi katoa bittiavaruuteen sähkönsyötön katkettua. 3. Mistä ohjeet ja työstettävä tieto haetaan ja minne käsitelty tieto viedään? CPU osoittaa osoiteväylän (nippu rinnakkaisia johtoja) avulla ohjelmamuistia kun sieltä haetaan ko. osoitteesta käsky CPU:n käskynkäsittely-yksikköön. Osoitetta tarvitaan myös, kun haetaan työstettävä tieto datamuistista tai ulkoisesta laitteesta (kiintolevyltä, tai antureilta, tai näppäimistöltä, tai netistä...), tai kun käsitelty tieto tallennetaan jonnekin tai viedään ohjaamaan ulkoista laitetta. Elektronikko näkee prosessorin, joka - sisältää tuhansittain (miljoonittain) MOSFET-transistoreita, - joista on tehty o portteja, kiikkuja, laskureita, multipleksereitä, koodereita... Ohjelmoija näkee prosessorin, joka - sisältää rekistereitä (esim 8-bitin muistipaikka) ja - käskyt, joilla rekistereitä manipuloidaan 2

Mitä CPU sisältää? Mikroprosessori on mikrotietokoneen keskusyksikkö, joka suorittaa sille ohjelmakoodina annettua tehtävää. CPU koostuu kolmesta toimintalohkosta. 1. Datan käsittely-yksikkö 2. Käskyn käsittely-yksikkö 3. Osoitteen käsittely-yksikkö 1. Datan eli tiedonkäsittely-yksikkö jossa tiedon työstäminen tapahtuu.tiedon käsittely: hoituu ACCUrekisterin ja ALUn, Aritmeettis-Looginen yksikkö, yhteistyönä. Tiedon käsittely voi olla: - tiedon siirtoa jostain rekisteristä toiseen tai varsinaiseen muistiin - tai päinvastoin, - jonkin rekisterin alustus (arvon asettaminen) (rekisterissä tallennetaan on 8/16/32/64 rinnakkaista bittiä) Parhaimmillaan se on varsinaista tiedon manipulointia, kuten yhteenlaskua, vähennyslaskua, inkrementointia, dekrementointia, vertailua, AND-operaation tekoa, jne. 2. Käskyn käsittely-yksikkö Tiedonkäsittelyn ohjeet ovat ohjelmassa, jonka ohjelmoija on kirjoittanut. Siis prosessorissa on oltava osa joka hakee, tunnistaa ja toimii noiden ohjeiden mukaan. Ohjeiden tulee olla yksinkertaisia, joten niitä tarvitaan paljon. Ohjeet ovat pieniä, peräkkäisiä käskyjä, joita tietokone käsittelee hirmuisella nopeudella. Koodin tulkinta ja toteutus tapahtuu käskyn käsittely-yksikkössä, Instruction Decoder. Sen kaverina toimii ohjaus- ja valvontaosa, Control Unit, joka tahdittaa CPU:n sisäisiä toimintoja ja valitsee liitäntäpiirit ja ohjaa niiden kautta kytkettyjen toimilaitteiden työskentelyä. 3. Osoitteen käsittely-yksikkö CPU osoittaa osoiteväylän (nippu rinnakkaisia johtoja) avulla ohjelmamuistia kun sieltä haetaan ko. osoitteesta käsky käskyrekisteriin. Osoitetta tarvitaan myös, kun haetaan käsiteltävä tieto muistista tai ulkoisesta piiristä, tai kun käsitelty tieto tallennetaan tai viedään ohjaamaan ulkoista laitetta. Tämän hoitaa Ohjelmalaskuri, Program Counter. Osoiterekisteri pitää kirjaa ohjelmasta ja osoittaa seuraavaksi noudettavan käskyn osoitteeseen, tai manipuloitavan tietoaihion, tavun, osoitteeseen. Ohjelmalaskuri nollautuu tietokoneen käynnistyessä, joten osoitteessa 0x0000 tulee olla (tietokoneen käynnistys-) ohjelman ensimmäinen käsky. Toinen tärkeä osoiterekisteri on pinomuistin osoitusrekisteri, Stack Pointer. Pinomuisti on data-muistista varattu muistialue, johon keskeytyksen tullessa pääohjelman paluuosoite ja muuttujat tallennetaan. Kun keskeytysohjelma on suoritettu, pääohjelman paluuosoite palautetaan pinosta CPU:n ohjelmalaskurin arvoksi ja pääohjelma jatkuu siitä mihin jäätiin. Näin ajatellen monimutkaisen CPU:n toiminta on helppo ymmärtää. Ja mikä parasta, kaikki prosessorit toimivat samalla periaatteella pienimmästä AVR Tinysta suurimpaan PC:n Pentiumiin, ARMista puhumattakaan. Idea on sama, vain tehokkuus vaihtelee. 3

Mikroprosessori versus mikro-ohjain Mikro-ohjain on yhdelle piipalalle integroitu tietokone. Siinä on mikroprosessorin ympärille rakennettu kaikki tietokoneen tarvitsemat oheislaitteet, kuten muistit ja input/output-piirit. Tässä on lohkokaaviokuva 8-bittisestä AVR-mikro-ohjaimesta. RaspberryPi-3:ssa on 64-bittinen ARM-ohjain. Ero tehokkuudessa on valtava: AVR käsittelee dataa 8-bitin paketeissa, ARM 64-bitin paketeissa. 4

Puolijohdemuistit Valmis tietokoneohjelma pitää tallentaa johonkin, josta se on saatavissa käyttöön aina, kun sitä tarvitaan. Myös käsiteltävä, tai käsitelty, tieto pitää tallentaa johonkin. Koodin ja datan tallennukseen käytetään puolijohdemuisteja. Puolijohdemuisti on elektroninen piiri, joka tallentaa numeroita sähköisessä muodossa. Muistiin tallennetaan binäärilukuja, jotka ovat joko käskyjä tai tietoa (dataa). Jokaisella muistipaikalla on oma osoite ja kussakin muistipaikassa on tallessa yksi binääriluku, tavu, joka puolestaan koostuu kahdeksasta bitistä. Bitit tallennetaan muistikennoihin. Muistien toiminta ja käyttö eroaa tuon tallennustavan perusteella. Tänä päivänä sulautetuissa järjestelmissä on käytössä kolmea muistityyppiä: Datamuisti, Data Memory Datamuisti on käyttömuistia jota pitää voida lukea ja kirjoittaa tavu kerrallaan. SRAM-muistikenno (Static Random Access Memory), siis se mihin yksittäinen bitti tallennetaan, koostuu MOSFETtransistoreista rakennetuista kiikuista (flip-flop). Tieto häviää käyttösähkön katkettua. SRAM-muisti. 5

Ohjelmamuisti, Program Memory Ohjelmamuistin tulee olla haihtumatonta ROM-tyyppistä muistia (Read Only Memory), eli se säilyttää tietonsa sähkökatkoksen yli. Ohjelmointi, bittien tallentaminen muistikennoon, tapahtuu ennen muistin käyttöönottoa. Flash-muisti on tämänpäivän ohjelmamuistia. Siinä bitti talletetaan FET-transistorin gate-kapasitanssiin (kondensaattoriin). Flash-muistia ei voi käsitellä RAM-muistin tapaan bitti bitiltä, vaan kokonainen muistilohko pitää alustaa ja ohjelmoida kerrallaan. Alustettuna eli tyhjennettynä flash-muistin kaikki bitit ovat loogiselta tilaltaan ylhäällä, siis '1'. Lukeminen kyllä onnistuu tavu (8 bittiä) kerralla. Ohjelmamuisti. 6

Mikrotietokone on laite, - joka suorittaa ohjelmamuistiin tallennettujen käskyjen ( =ohjelma) avulla mikroprosessorin (=CPU) ohjauksessa tiedonsiirtoa työmuistin (RAM) ja syöttö/tulostuslaitteiden (input/output) välillä - ja ennenkaikkea tiedonkäsittelyä. Mikroprosessori, suoritin, CPU on komponentti, - jonka toiminta on ohjattavissa muistiin tallennetuilla käskyillä (=ohjelma) se voi käskyjen mukaan: - siirrellä tietoa - suorittaa aritmetiikka (+, -, inkrementointi, dekrementointi...) ja loogisia operaatioita (AND, OR...) - tehdä päätöksiä (if-else) Mikro-ohjain, mikrokontrolleri on komponentti, jossa samaan piiriin on integroitu * mikroprosessori, * ohjelma- ja työmuistit * ja Input/Output-piirit. Se on siis yhdelle piirille (=chip) integroitu tietokone. 7