Tietokoneen toiminta (Computer Organization I)

Samankaltaiset tiedostot
Kurssin esittely Tavoitteet Komponentit

Kurssin esittely Tavoitteet Komponentit

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Luento 0, Hallinto, yleisesittely 1

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I) Aihepiiri. Mitä hyötyä tästä on? (3) Tavoitteet. Kurssien välisiä riippuvuuksia

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Aihepiiri Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Aihepiiri Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I) Mitä hyötyä tästä on? (4) Kurssien välisiä riippuvuuksia. Aihepiiri.

Tietokoneen toiminta (Computer Organization I)

Tietokoneen toiminta (Computer Organization I)

Aihepiiri Tietokoneen toiminta (Computer Organization I) Tavoitteet (4) Mitä hyötyä tästä on? (4) Kurssien välisiä riippuvuuksia

Tietokoneen toiminta (Computer Organization I)

Tietokoneen rakenne (2 ov / 4 op) Syksy 2007 Liisa Marttinen. Helsingin yliopisto Tietojenkäsittelytieteen laitos

Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Luento 0: Kurssihallinto Tietokoneen rakenne (2 ov / 4 op) Syksy 2006

Luento 1 (verkkoluento 1) Tietokonejärjestelmä

LUENTO 0. Tervetuloa! Käyttöjärjestelmät II 2 ov Teemu Kerola. Helsingin yliopisto Tietojenkäsittelytieteen laitos

Jakso 12 Yhteenveto. Keskeiset asiat Teemu Kerola, K2000

Tietokoneen toiminta, K Tavoitteet (4)

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 (verkkoluento 1) Ohjelman sijainti Ohjelman esitysmuoto Laitteiston nopeus

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

Kertausluento luennoista 1-3 1

Tietokoneen toiminta, Kevät Copyright Teemu Kerola Järjestelmän eri tasot Laitteiston nopeus

Kertausluento 1 (lu01, lu02, lu03) Tietokonejärjestelmän rakenne ttk-91 ja sillä ohjelmointi

TVT-kurssimoduulin mitat

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright 2010

Tietokoneen toiminta Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright 2010

Luento 12 Yhteenveto

Luento 3 (verkkoluento 3) Ttk-91 konekielinen ohjelmointi. Ohjelman esitysmuoto Konekielinen ohjelmointi ttk-91:llä (Titokone, TitoTrainer)

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

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat?

Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright Tavoitteet (4)

Tietokoneen toiminta, K Tavoitteet (4)

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, K2000

Teemun juustokakku Rekisterien, välimuistin, muistin, levymuistin ja magneettinauhan nopeudet suhteutettuna juuston hakuaikaan juustokakkua tehdessä?

Tavoitteet (4) Luento 12 Yhteenveto. Keskeisiä asioita. Mitä hyötyä tästä on? (2) Esimerkkikone: TTK-91 laitteisto suoritin - CPU

Teemu Kerola Interaktiivisen verkkomateriaalin tuotantoprosessi TKTL:llä (IVT)

Luento 12 Yhteenveto. Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? 29/01/2001 Teemu Kerola, Copyright 2001

Luento 12 Yhteenveto

Teemu Kerola Interaktiivisen verkkomateriaalin tuotantoprosessi TKTL:llä (IVT)

Ohjelmoinnin perusteet Y Python

Muistihierarkia Kiintolevyt I/O:n toteutus

Luento 12 Yhteenveto

TVT-kurssimoduulin mitat

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

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

Ohjelmointi II. Erkki Pesonen Luennot ja harjoitukset. Itä-Suomen yliopisto Tietojenkäsittelytieteen laitos 2015

Teemu Kerola Orientointi Syksy 2018

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

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

Tieto- ja viestintätekniikan opinnot Jyväskylän yliopistossa

Ohjelmoinnin perusteet Y Python

Käännös, linkitys ja lataus

Opettajatuutorointi-kurssin syksyn 2006 kyselyjen tulokset

Luento 12 Yhteenveto. Tavoitteet. Keskeisiä asioita. Mitä hyötyä tästä on? Esimerkkikone: TTK-91 laitteisto. Tietokoneen toiminta 27.4.

Tietokoneen toiminta Keskeiset asiat Mitä hyötyä tästä on? Mitä seuraavaksi? Kurssit? Asiat? Teemu Kerola, Copyright 2003

ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2. Kurssien esittely lukukausi

Oppimistavoitteet kurssilla Tietokoneen toiminta

ELEC-C1210 Automaatio 1 ELEC-C1220 Automaatio 2. Kurssien esittely lukukausi

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

Ohjelmistoprosessit ja ohjelmistojen laatu Ohjelmistoprosessit ja ohjelmistojen laatu (4op)

Hajautettujen sovellusten muodostamistekniikat, TKO_2014 Johdatus kurssiin

Ohjelmoinnin peruskurssi Y1

031010P MATEMATIIKAN PERUSKURSSI I 5,0 op

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

Kasvatustieteiden (yleinen ja aikuiskasvatustiede) 35 op ja käyttäytymistieteellisen tiedekunnan yleisopinnot lukuvuonna

Tervetuloa opiskelemaan DIGITAALI- TEKNIIKKAA! Digitaalitekniikan matematiikka Luku 0 Sivu 1 (9)

Ohjelmoinnin peruskurssi Y1

Miksi konekieltä? Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori. Tietokone TTK-91. Miksi ei oikeaa konekieltä? TTK-91: rekisterit

Jakso 2 TTK-91-tietokone ja sen KOKSI-simulaattori

Tähtitieteen käytännön menetelmiä Kevät 2009

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

4. Lausekielinen ohjelmointi 4.1

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

Kohti ylioppilaskirjoituksia

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

Järjestelmän ulkoinen muisti I/O

LC-8011 Työelämän venäjän perusteet 1. Aalto-yliopisto Kielikeskus Alexandra Belikova

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

031075P MATEMATIIKAN PERUSKURSSI II 5,0 op

Palautekysely tilastollisen signaalinkäsittelyn kurssiin

Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori

Jakso 2 TTK-91 -tietokone ja sen KOKSI -simulaattori

Miten kurssit tehdään Eirassa?

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

Luento 2 TTK-91 tietokone ja sen KOKSI simulaattori

Transkriptio:

Aloitusluento (hallinto, yleiskuva) 581305-6 Tietokoneen toiminta (Computer Organization I) Teemu Kerola Helsingin yliopisto TKTL Kevät 2018 Ohjattu itseopiskelukurssi 1

Tietokoneen toiminta Kurssin aihepiiri ja tavoitteet Kurssin suoritusmuodot Ttk-91 esimerkkitietokone Titokone simulaattori TitoTrainer ympäristö Verkkoluennot Minikokeet ja kurssikuulustelu Lue www-sivut huolella https://courses.helsinki.fi/fi/tkt10005/121540795 2

Kurssin näkökulma: yhden ohjelman suorittaminen Mikä on ohjelman esitysmuoto laitteistossa? Miten laitteisto suorittaa ohjelmaa? Mitkä laitteiston osat osallistuvat tähän ja miten? Tavoitteena: yleiskuva tietokoneen toiminnasta ja sen perusrakenteesta Keskustele 3

Tietokonejärjestelmä Java-ohjelma Ohjelmointiympäristö (esim. Net Beans) Käyttöjärjestelmä (esim. Linux/Windows) Turing Von Neumann Tietokoneen toiminta CPU Muisti Näyttö Levymuisti Näppäimistö Boole Tietokoneen rakenne portit kellopulssi sähköä virtalähde mikrosiru 4

TTK-91 laitteisto suoritin - CPU ALU CU muisti (kirjastorutiinit) rekisterit MMU (käyttöjärjestelmä) (sisältää välimuistin) ohjelma data väylä crt (cathode ray tube) kbd (keyboard) laiteohjaimet 5 Copyright 2018 Teemu Kerola 8.3.2018

Tietokone numeroina Suoritinesimerkkejä: AMD Athlon II X4 645, 3.1 GHz Intel Core i5-52ou, 2.4 GHz ARM Cortex A-8, 600 MHz 1 GHz Keskusmuisti 2 Gt 192 Gt (gigatavu, giga byte, GB) Kt, Mt, Gt Mitä tarkoittaa GHz? Montako bittiä tarvitaan osoitteeseen? 6

SI-järjestelmän kerrannaisyksiköt Valon nopeus n. 30cm / nanosekunti 4 Ghz suoritimelta voi valmistua konekäskyjä 0.25 nanosek. välein Large Hardon Collider: dataa 500 Exa-tavua / päivä (2012) 7

Aihepiirien välisiä riippuvuuksia Ohjelmointikielet Sovellukset Ohjelmointi Laskennan teoria Tietokoneen toiminta Samanaikaisuuden hallinta Käyttöjärjestelmät Tietoliikenne Tietokonearkkitehtuuri 8

Kurssien välisiä riippuvuuksia Pakolliset perus- ja aineopinnot Internetprotokollat Käyttöjärjestelmät Tietokoneen toiminta Tietoliikenteen perusteet Valinnaiset aineopinnot ja syventävät opinnot (Haj. järj. ja tietoliikenne) Tietokoneen rakenne Hajautetut järjestelmät Spes. & verif perusteet 9

TiTo (5 op), suoritusmuodot Luentokurssi Aloitusluento Verkkoluennot, oppikirjat (+edellisen luentokurssin luennot) Titokone/TitoTrainer pajassa ja itsenäisesti Harjoitustehtävät, harjoitukset Minikokeet (4) ja kurssikuulustelu Itseopiskelu Viimeksi pidetyllä luentokurssilla esitetyt asiat Oppikirjoista [Stal16 ja Tane13] kurssin kotisivulla mainitut luvut Titokone/TitoTrainer itsenäisesti Erilliskoe Ohjattu itseopiskelukurssi Kuten itseopiskelu erilliskoetta varten Verkkoluennot, oppikirjat Titokone/TitoTrainer itsenäisesti Harjoitustehtävät, harjoitukset (+ pajaohjaus) Minikokeet (4) ja kurssikuulustelu Tavallinen kurssi Itseopiskelu Ohjattu itseopiskelu 10

Kokeet (52/60 p) Kurssin voi suorittaa minikokeilla (4 koetta á 13 p) tai kurssikokeella (kurssikuulustelu, välikoe) (52 p) Max {minikokeet, kurssikoetehtävät} ratkaisee Minikokeet Minikokeet 1-3 keskiviikkoisin 9:15-10 (B123), 45 min Minikoe 4 kurssikokeen yhteydessä Aihepiiri: edeltävät verkkoluennot ja harjoitukset (ks. aikataulu) Uusintakokeet Minikokeet 1-3 voi uusia kurssikokeessa Minikokeen 4 voi uusia kurssia seuraavassa erilliskokeessa Koko kurssikokeen voi uusia uusintakokeella (kurssia seuraava erilliskoe) 11

Opintopiirityöskentely (niille, jotka haluavat) Ryhmätyötä Ryhmässä on parempi opiskella kuin yksin Vertaisopiskelijoiden tuki Opiskelijat muodostavat ryhmiä itse halutessaan Opiskelijakeskeinen oppiminen Vastuu oppimisesta on opiskelijalla Ohjaajat edistävät opiskelijan oppimista Ohjaajat luovat puitteet oppimiselle Eri tyyppistä ryhmätyötä Harjoitustehtävien ratkaisu itsenäisesti ja niistä keskustelu ryhmässä Ttk-91 ohjelmien tekeminen yhdessä 12

Opintopiirien muodostaminen Opintopiirien keskeinen ongelma Jaska lupasi, mutta ei tehnyt eikä häneen saanut yhteyttä. Ja sitten Maija teki pääosan työstä. Tämä ei ole oikein! Vääryys! Opintopiirit muodostaminen Opintopiirin jäsenille samansuuntaiset tavoitteet (& lähtötaso?) Työelämässä selkeää: projekti saatava valmiiksi tai Miettikää omat tavoitteenne valmiiksi ennen ryhmätapaamista Onko tavoitteenani hyvä asioiden oppiminen vai läpipääsy? Keskustelkaa ja sopikaa yhteisistä tavoitteista opintopiirin jäsenten kanssa ennen ryhmän muodostamista Allekirjoittakaa lopulta Opintopiirisopimus Sähköpostilla luennoijalle opintopiirin jäsenten nimet Pitäkää kiinni sovituista asioista Ilmoittakaa heti opintopiirille, jos ette jatka työskentelyä siinä Irtautukaa nopeasti opiskelijoista, jotka eivät noudata sopimusta http://www.cs.helsinki.fi/u/kerola/tito/k2010/opintopiiri_sopimus.html 13

Verkkokurssi Merkittävä osa kurssin materiaalista ja toiminnoista verkossa Verkkoluennot, Titokone, TitoTrainer, TitoTrainer-tehtävät Tiedotus, kalvokopiot, tehtävät, vastaukset, tulokset Verkkokurssi etäopiskelu Viikoittaiset harjoitustilaisuudet TKTL llä Minikokeet ja kurssikuulustelu TKTL llä Ison osan kurssista voi tehdä verkon avulla etäopiskeluna 14

Verkkoluennot Itseopiskelumateriaalia verkossa, luennot 1-11 Varatkaa noin kaksi tuntia kunkin luennon läpikäyntiin Materiaalia noin 60-90 min per kerta Materiaalin käytöstä ei pidetä kirjaa Materiaalin tuotanto Teemu Kerola 2004-2005 Macromedia Authorware ohjelmistolla https://www.cs.helsinki.fi/group/nodes/kurssit/tito/verkkoluennot/ Käyttö Selaimen Authorware liitospalikka Windows-ympäristössä Ilmeisesti vain Firefox? ja Chrome? Flash-versiot, useissa ympäristöissä Mp4- versiot, useimmissa ympäristöissä (aika isot tiedostot) Pdf-versiot (vain teksti, ei puhetta) 15

Harjoitustehtävät Tavanomaiset laskuharjoitustehtävät Oppiminen tapahtuu tehtäviä ratkaistaessa ja niistä keskusteltaessa Opiskele aihepiirin asiat ennen tehtävien työstämistä itsenäisesti Työstä tehtäviä itsenäisesti ennen niistä käytävää keskustelua Valmiin vastauksen lukeminen tai toiselle antaminen on hyvän oppimistilaisuuden hukkaan heittämistä! Vaikuttavat arvosanaan Tehdyistä tehtävistä saa harjoitustehtäväpisteitä (htp, yht n. 27 htp) Vain ryhmätapaamisessa läsnäoleville 8/60 p, eli noin 1.5 arvosanaa Kotitehtävien vastauksia ei voi mailata mihinkään arvioitavaksi! https://www.cs.helsinki.fi/group/nodes/kurssit/tito/2018k/aikataulu.html (kevät 2018) 16

Harjoitustilaisuudet Opiskelijat jaetaan pöytiin Joka pöydässä kuhunkin tehtävään ainakin yksi sen tehtävän ratkaissut opiskelija? Harjoitustehtävien läpikäynti opiskelijavetoisesti pienryhmissä Ei valmiiden ratkaisujen esityksiä kaikille Voi otaksua, että kaikki ovat tutustuneet tehtäviin etukäteen ja ainakin yrittäneet ratkaista ne Ohjaaja auttaa tarvittaessa Valmiit ratkaisut käytettävissä tilaisuuden loppupuolella Loppupuolella käydään yhdessä läpi ainakin 1-2 tehtävää Kaikki ovat paikalla loppuun asti 17

Ttk-91 esimerkkitietokone Auvo Häkkinen, 1991 Tietokoneen toiminta kurssi 1991 Yksinkertainen tietokonearkkitehtuuri Määrittelytaso juuri tälle kurssille sopiva Yksinkertainen (symbolinen) konekieli Helppo oppia, ei liikaa konekäskyjä Sopiva tämän kurssin tavoitteisiin Tavoitteet Ymmärtää, minkälaista koodia suoritin käyttää Ymmärtää, miten järjestelmä suorittaa ohjelmaa 18

Titokone Java-ohjelma, joka simuloi Auvo Häkkisen suunnittelemaa ttk-91 tietokonetta ja sen käyttöjärjestelmää Toimii siis samalla tavalla kuin laitteistolla toteutettu ttk-91 kone ja sen käyttöjärjestelmä Alkuperäinen suunnittelu ja toteutus Ohjelmistotuotantoprojekti Koski, kevät 2004 Sisältö Ttk-91 symbolisen konekielen kääntäjä Ttk-91 emulaattori, joka suorittaa käännettyjä ttk-91 konekielisiä ohjelmia Ohjelmistonkehitysympäristö sisäänrakennettuna emulaattorissa Animaattori, joka visualisoi käskyjen suoritusta ttk-91 arkkitehtuurin laitteistossa Graafinen käyttöliittymä http://www.cs.helsinki.fi/group/nodes/kurssit/tito/esimerkit/ http://www.cs.helsinki.fi/group/titokone/distr/titokone-1.203.jar Keskustele 19

TitoTrainer Tentitään minikokeessa 4 Nykyinen versio: TitoTrainer2 Titokoneen päälle rakennettu ohjelmisto Toteutetaan Ttk-91 ohjelmia tai niiden osia Samoja ohjelmia voi myös ajaa Titokoneella Vastauksen oikeellisuus tarkistetaan automaattisesti Tee käyttäjätunnus tälle kurssille!! ( Kevät 2018 ) http://titotrainer2.users.cs.helsinki.fi 20

Arvostelu Harjoitustehtävät 4 minikoetta (tai kurssikuulustelu), á 13 p minimitaso 26 p Yhteensä minimitaso 30 p 8 p 52 p 60 p 21

Oppimateriaali Verkkoluennot 1-11 (Luentokalvot syksyn 2017 kurssilta https://www.cs.helsinki.fi/group/nodes/kurssit/tito/2017s/aikataulu.html ) Oppikirjat Stallings: Computer Org. and Architecture, 10th ed. 2016 (9th ed. 2013, 8th ed. 2010) Tanenbaum: Structured Computer Organization, 6th ed. 2013 (5th ed. OK) Titokone ja TitoTrainer harjoitteluympäristöt (verkossa) Harjoitukset (ja omat opintopiirit) 22

WWW Informaatio Kurssin kotisivu https://courses.helsinki.fi/fi/tkt10005/121540795 Kurssin aikataulu https://www.cs.helsinki.fi/group/nodes/kurssit/tito/2018k/aikataulu.html Tiedotteet kurssin aikana Viestit osio kurssin kotisivulla 23

Kurssin sisältö Aloitusluento Verkkoluento 1 Tietokonejärjestelmän rakenne Verkkoluento 2 TTK-91 -tietokone ja sen simulaattori Verkkoluento 3 Konekielinen ohjelmointi Verkkoluento 4 Aliohjelmien toteutus Verkkoluento 5 Suoritin ja väylä -- mk1 (luennot 1-5) -- Verkkoluento 6 Tiedon esitysmuodot Verkkoluento 7 Tiedon muuttumattomuus ja muisti -- mk2 (luennot 6-7) -- Verkkoluento 8 Ohjelman ja käyttöjärjestelmän toteutus Verkkoluento 9 Ulkoinen muisti ja I/O:n toteutus -- mk3 (luennot 8-9) -- Verkkoluento 10 Käännös, linkitys ja lataus Verkkoluento 11 Tulkinta ja emulointi -- mk4 (luennot 10-11, ttk-91 -ohjelmointi) ja kurssikuulustelu -- 24

Tito vs. Tikra Muisti Ohjain Väylä Suoritin Levy Tietokoneen toiminta (Tito) Tietokoneen rakenne (Tikra) Tito: Tikra: Mitä systeemissä tapahtuu? Mitä käyttöjärjestelmä tekee? Miten CPU ja muisti on toteutettu? Miten kellopulssi saa käskyt suoritetuksi? 25

Tikra Tito Suorittimen toteutushierarkia (2) Konekieliarkkitehtuuri ADD R1, R2 Moduulit Adder, register, ALU Loogiset portit AND, OR, NOR Piirisuunnittelu Virrankulutus, ajoitus, piuhojen sijoitus Toteutuslaitteisto Elektroniputki, transistori, mikropiiri AND 1 0 0 26

Motto Kunto ei nouse, jos ei tule hiki ( It is not good exercise, if you do not sweat ) Ei tämä silti mikään maraton ole! Käytä kurssiin n. 12 t / viikko + kokeeseen valmistautuminen + koe = n. 100 t vanha nyrkkisääntö 5 v / 300 op = 1 v / 60 op = 1600 t / 60 op = 26.67 t / 1 op = 133 t / 5 op Keskustele 27