Notes
Slide Show
Outline
1
581305-6
Tietokoneen toiminta
(Computer Organization I)
  • Teemu Kerola
  • Helsingin yliopisto
  • Tietojenkäsittelytieteen laitos



  • Kevät 2007
2
Tietokoneen toiminta
  • Kurssin aihepiiri ja tavoitteet
  • Kurssin suoritusmuoto
    • opintopiirityöskentely
    • verkkokurssi
  • Ttk-91 esimerkkitietokone
    • Titokone simulaattori
    • Titotrainer ympäristö
  • Tietokoneen toiminta –kurssi
    vs. Tietokoneen rakenne –kurssi
3
Oppimistavoitteet
  • Ymmärtää tietokonejärjestelmän keskeiset piirteet sillä suoritettavan ohjelman näkökulmasta
  • Ymmärtää, miten tietokonejärjestelmä suorittaa sille annettua ohjelmaa
  • Ymmärtää ohjelmakoodin/datan talletustavan ja sijainnin laitteistossa
  • Ymmärtää ohjelman suoritusaikaisen esitysmuodon
  • Ymmärtää käyttöjärjestelmän roolin ja perustoiminnot
  • Tavoite on oppiminen, ei opintopisteet tai läpipääsy
    • aloittakaa kurssikuulusteluun valmistautuminen nyt!
4
Mitä hyötyä tästä on?
  • Ohjelman suoritusnopeus perustuu suorittimen (CPU) suorittamiin konekäskyihin eikä ohjelman korkean tason kielen (C, Pascal, Java) esitysmuotoon
  • Ylemmän tason asioiden ymmärtäminen on helpompaa/mahdollista, kun ymmärtää alemman tason (ohjelman suoritus konekielen tasolla) asiat
5
Aihepiirien välisiä riippuvuuksia
6
Kurssien välisiä riippuvuuksia
7
TiTo (4 op), suoritusmuodot
  • Opintopiireihin perustuva verkkokurssi
    • aloitusluento, yhteenvetoluento
    • verkkoluennot, oppikirjat, kertauskysymykset
    • Titokone, TitoTrainer
    • opintopiirissä
      • harjoitustehtävät, keskustelutehtävät, projektit
      • ryhmätapaamiset (ohjatut ja muut),
      • verkkokeskustelut, chatit (vertaisopiskelijat, ohjaajat)
    • kurssikuulustelu
    • uusintakuulustelu
      • vain kurssikuulustelusta hyvällä syyllä poissaolleille
  • Erilliskuulustelu
    • oppikirjoista [Stal06 ja Tane06] kurssikuvauksessa mainitut osat
    • ohjelmointi ttk-91 symbolisella konekielellä
      • Titokone, TitoTrainer
8
Opintopiirityöskentely
  • Ryhmätyöskentelyn muoto
    • ryhmässä on parempi opiskella kuin yksin
    • vertaisopiskelijoiden tuki
    • opintopiirit muodostetaan 1. viikon ryhmätapaamisessa
  • Opiskelijakeskeinen oppiminen
    • vastuu oppimisesta on opiskelijalla
    • ohjaajat edistävät opiskelijan oppimista
    • ohjaajat luovat puitteet oppimiselle
  • Neljän tyyppistä ryhmätyötä
    • harjoitustehtävien ratkaisu itsenäisesti ja niistä keskustelu ryhmässä
    • keskustelutehtävien käsittely verkossa
    • projektien työstäminen ryhmätyönä
    • muu vapaamuotoinen yhteistyö
9
Opintopiirien muodostaminen
  • Ehkä suurin ongelma opintopiiriperustaisessa kurssissa
    • ”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 muodostetaan 1. viikon ryhmätapaamisessa
    • opintopiirin tavoitteet (& lähtötaso) saisivat olla samansuuntaisia
      • helppoa työelämässä: ”projekti saatava valmiiksi tai …”
    • miettikää tavoitteitanne valmiiksi ennen ryhmätapaamista
      • haluanko tehdä ylimääräisen projektin?
      • 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”
  • Pitäkää kiinni sovituista asioista
    • ilmoittakaa heti opintopiirille, jos ette jatka työskentelyä siinä
    • irtautukaa nopeasti opiskelijoista, jotka eivät noudata sopimusta
10
Verkkokurssi
  • Merkittävä osa kurssin materiaalista ja toiminnoista verkossa tai verkon avulla
    • verkkoluennot, kertauskysymykset, TitoTrainer tehtävät
    • keskusteluryhmät, chatit (vertaisopiskelijat, ohjaajat)
    • tiedotus, kalvokopiot, tehtävät, tulokset
  • Verkkokurssi ≠ etäopiskelu
    • aloitus- ja yhteenvetoluennot auditoriossa
    • viikoittaiset opintopiirien ryhmätapaamiset TKTL’llä
    • muut opintopiirin tapaamiset TKTL’llä
    • osa kurssin osioista voidaan tehdä verkon avulla etäopiskeluna
11
Verkkoluennot
  • Itseopiskelumateriaalia verkossa, luennot 2-11
    • kuten luennolla, mutta omaan tahtiin
    • kuten kirja, mutta ääniä ja animaatioita
    • materiaalin käytöstä ei pidetä kirjaa
    • materiaalin käytöstä ei saa arvosanaan vaikuttavia pisteitä
  • Materiaalin tuotanto
    • Teemu Kerola 2004-2005
    • Macromedia Authorware -ohjelmistolla
  • Käyttö
    • selaimen liitospalikka Windows-ympäristössä
      • TKTL, koti
    • TKTL’n Linux-ympäristöissä Windows-palvelimella
12
Kertaustehtävät
  • Kertaustehtävät
    • itsearviointia
      • tehdään vasta aihepiiriin perehtymisen jälkeen
      • osaanko jo tämän asian?
      • testaa vain osan aihepiiriä, ei takaa osaamista
    • materiaalin käyttö ei vaikuta suoraan arvosanaan
      • materiaalin käytöstä ei pidetä kirjaa
      • materiaalin käytöstä ei saa arvosanaan vaikuttavia pisteitä
13
Harjoitustehtävät
  • Kuten tavanomaiset laskuharjoitukset
  • 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ä!
  • Harjoitustehtävistä keskustellaan
    • opintopiirin omassa palaverissa ennen ryhmätapaamista
    • ryhmätapaamisessa ohjaajan läsnäollessa
      • sillä tarkkuudella kun tarvitaan
      • opintopiirit esittelevät ratkaisuja läsnäoleville
  • Vaikuttavat arvosanaan
    • tehdyistä tehtävistä saa harjoitustehtäväpisteitä (htp)
    • vain ryhmätapaamisessa läsnäoleville
14
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
15
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än
    • ttk-91 emulaattorin, joka suorittaa käännettyjä ttk-91 konekielisiä ohjelmia
    • Ohjelmistonkehitysympäristö sisäänrakennettuna emulaattorissa
    • animaattorin, joka visualisoi käskyjen suoritusta ttk-91 arkkitehtuurin laitteistossa
    • graafisen käyttöliittymän
16
TitoTrainer
  • Titokoneen “päälle” rakennettu ohjelmisto
  • Toteutetaan Ttk-91 ohjelmia tai niiden osia
    • Samoja ohjelmia voi myös ajaa Titokone’ella
  • Vastauksen oikeellisuus tarkistetaan automaattisesti
  • Vaikuttaa arvosanaan
    • tehdyistä tehtävistä saa ylimääräisiä arvosanaan vaikuttavia pisteitä

17
Keskustelutehtävät
  • Kuten tavanomaiset laskuharjoitustehtävät, mutta ne käsitellään opintopiirin sisäisessä verkkokeskustelussa
  • Tavoitteena on oppiminen, joka saavutetaan keskustelulla
    • oppiminen tapahtuu omia repliikkejä pohtiessa ja kirjoittaessa sekä toisten repliikkejä lukiessa
  • Toteutetaan CSMoodlen opintopiirikohtaisilla keskusteluryhmillä
    • keskusteluilla on ajallinen takaraja
    • keskustelut taltioidaan ja ne ovat näkyvissä koko kurssin ajan
  • Vaikuttavat arvosanaan
    • ohjaaja arvostelee keskustelun
    • käydyistä keskusteluista saa opiskelijakohtaisesti harjoitustehtäväpisteitä (htp)
18
Projektit
  • Suurempia yhteistyötä vaativia projekteja
    • uuden kertaustehtävän laadinta
    • ohjelmiston suunnittelu tai artikkelin kirjoitus
  • Tavoitteena syvällisempi oppiminen projektin aihepiiristä
    • muut kurssin oppimisosiot taustatietoina
      • verkkoluennot, oppikirjat, harjoitus- ja keskustelutehtävät
  • Vaikuttavat arvosanaan
    • ohjaaja arvostelee raportin perusteella
    • projektipisteitä (pp) saa kolmesta eri osasta
      • peruspisteet (3 pp) projektin saattamisesta loppuun (8 pp projektista)
      • arvostelupisteet (1-5 pp) opintopiirin työn laadun mukaan
      • osallistumispisteet (max ±2 pp) opiskelijan osallistumisen mukaan
        • opintopiiri määrittelee jäsenten osallistumisasteen

19
Ylimääräinen projekti
  • Vastaa oppimistavoitteeltaan kurssikokeen palautustilaisuutta
    • palautustilaisuuteen ei ole osallistuttu, joten tenttejä ei ole käytetty oppimismenetelminä
  • Arvioi ja reflektoi (mitä tehtiin, havaittiin, koettiin)
    • kurssikuulustelua
    • koko kurssia
  • Vaikuttaa arvosanaan
    • samalla tavalla kuin muutkin projektit
    • pisteet täysin ylimääräisiä, kurssista voi saada erinomaisen arvosanan (5) myös ilman tätä projektia
20
Opintopiiriin perustuvan verkkokurssin suoritus
  • Opiskele viikon asiat
    • verkkoluennot itseopiskeluna
      • opi perusasiat kunnolla luennolla
    • lue oppikirjasta samat asiat vähän eri tavalla esitettynä
  • Tarkista osaamisesi itsearvioinnilla
    • tee kertaustehtäviä, harjoitustehtäviä, TitoTrainer-tehtäviä
  • Osallistu opintopiirin toimintaan
    • keskustele harjoitustehtävistä opintopiirin kanssa
    • osallistu keskustelutehtävän keskusteluun verkossa
    • osallistu ryhmätapaamiseen
    • jatka projektityöskentelyä
    • opintopiirikeskustelu kasvokkain tai verkossa
  • Osallistu kurssikokeeseen
    • tee ylimääräinen projekti opintopiirissäsi
21
Arviointi
  • Itsearviointi
    • kertaustehtävät joka luennon jälkeen
      • eivät vaikuta arvosanaan
    • Harjoitus-, keskustelu- ja TitoTrainer-tehtävien tekeminen viikoittain
      • osaanko vai enkö?
      • mitä vielä opittavaa ja miten sen opin?
      • vaikuttavat arvosanaan
  • Kurssikuulustelu
    • tahdistaa oppimista
    • kattaa kaikki kurssin tavoitteissa mainitut asiat
      • asiat opittu itsenäisen työskentelyn ja opintopiirityöskentelyn avulla moninaisia oppimismenetelmiä käyttäen
    • arvioi oppimista
      • pääosa arvosanasta perustuu tähän
      • läpipääsyleikkuri (50%) – ei uusintamahdollisuutta!
22
Arvostelu
  • Hyvästä työstä palkitaan
  • Ahkeruu-desta ja osaamisesta palkitaan
  • Kurssin osioiden maksimi-pistemäärät
23
Oppimateriaali
  • Luennot 0 ja 12
    • luentokalvojen pdf’t (verkossa)
    • Luennot Torrent VCG –taltioina yliopiston palvelimella (verkossa)
  • Authorware verkkoluennot 1-11 (verkossa)
  • Oppikirjat
    • Stallings: Computer Organization and Architecture, 7th Ed., 2006
    • Tanenbaum: Structured Computer Organization, 5th Ed, 2006
  • Kertaustehtävät (verkossa)
  • Titokone simulaattori & TitoTrainer ympäristö (verkossa)
  • Harjoitukset (verkossa)
  • Keskustelutehtävät (verkossa)
  • Projektit (verkossa)
  • Aikataulusivu ja opintopiirityöskentelyn ohjeet (verkossa)
  • CSMoodle
    • keskusteluryhmät, chatit, projektien palautukset
  • Kurssikuulustelu (tulokset verkkoon)
24
WWW Informaatio
  • Kurssin kotisivu     http://www.cs.helsinki.fi/Teemu.Kerola/tito/
  • Tämän kurssin aikataulu    .../tito/k2007/aikataulu.html
    • täältä löytyy kaikki tiedotus linkitettynä
  • CSMoodle                                   http://moodle.cs.helsinki.fi/
    • täältäkin löytyy kaikki tiedotus (aikataulusivu) linkitettynä
    • TKTL-tunnus toimii myös CSMoodle-tunnuksena
  • Osa materiaalista on TKTL Intranetissä
    • verkkoluennot (Authorware)
    • kertauskysymykset
    • kurssin suoritustilastot (htp, pp, koepisteet)
    • kaikki tarvitsevat TKTL tunnuksen
      • sivuaineopiskelijoille tulee olla ensin Tietotekniikkaosaston
        UNIX-tunnus (eli cc-tunnus), haettuna oman pääainelaitoksen kautta
25
Kurssin sisältö
  • Luento 0: Kurssin sisältö, rakenne ja suoritustapa
  • 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ä
  • Verkkoluento 6: Tiedon esitysmuodot
  • Verkkoluento 7: Tiedon muuttumattomuus ja muisti
  • Verkkoluento 8: Ohjelman ja käyttöjärjestelmän toteutus
  • Verkkoluento 9: Ulkoinen muisti ja I/O:n toteutus
  • Verkkoluento 10: Käännös, linkitys ja lataus
  • Verkkoluento 11: Tulkinta ja emulointi
  • Luento 12: Yhteenveto
26
 
27
Suorittimen toteutushierarkia (2)
  • Konekieliarkkitehtuuri
    • ADD  R1, R2
  • Moduulit
    • adder, register, ALU
  • Loogiset portit
    • and, or
  • Piirisuunnittelu
    • virrankulutus, ajoitus,
      piuhojen sijoitus
  • Toteutuslaitteisto
    • elektroniputki, transistori,
      mikropiiri
28
Ohjelman suorituksen taso
29
Motto
  • “Kunto ei nouse, jos ei tule hiki”
      (“It is not good exercise, if you do not sweat”)
  • Ei tämä silti mikään maratoni ole!
  • yhteensä n. 12 t / viikko (?) +
    kokeeseen valmistautuminen + koe
    • yht. n. 80 t / 2 ov kurssi eli 2 työviikkoa
    • yht. n. 107 t / 4 op kurssi