TIK-61.123 TIETOKONEEN ARKKITEHTUURI

Tentti 12.1.2000, laatija Mikko Huttunen

Merkitse jokaiseen tenttipaperiin selvästi :

Kuuma vihje malttamattomille: Lue tehtävä loppuun ja ymmärrä se ennenkuin vastaat !!

  1. Kuvaa lyhyesti ja ytimekkäästi seuraavat käsitteet (Varoitus: Jokin akkronyymi tai sen englanninkielinen aukikirjoitus EI yleensä riitä vastaukseksi !) :
      a) keskeytyskäsittelijä
      b) kernel-moodi
      c) LRU
      d) PC-suhteellinen osoitus (PC-relative addressing)
      e) SRAM
      f) superskalaari
  2. Tee R2000-assemblerilla funktioaliohjelma UNSETBITS. Ohjelma saa kutsuvalta pääohjelmalta datavektorin A (A:n alkuosoite rekisterissä 4 ja pituus rekisterissä 5) sekä kaksi arvoa B1 (rekisterissä 6) ja B2 (rekisterissä 7). Vektorin A alkiot ovat 32-bittisiä. B1 ja B2 voivat saada arvon välillä 0-31. Ohjelman tehtävänä on asettaa bitit B1 ja B2 kustakin A:n alkiosta nollaksi. Tulos palautetaan vektorissa C. C:n alkuosoitteen aliohjelma saa rekisterissä 8.

    Käytä SYMBOLISIA muisti- ja hyppyosoitteita (siirtymiä ei tarvitse laskea). Virhetilanteista ei tarvitse huolehtia mutta keskeytykset oletetaan sallituiksi.

  3. Selvitä yksityiskohtaisesti kuvien ja tekstin avulla virtuaaliosoitteeseen perustuvan muistihaun proseduuri (MMU, Cache jne.). Huom! Proseduurin lähtökohtana on prosessorin muistille tarjoama virtuaaliosoite ja päätepisteenä prosesessorin saadessa muistista haluamansa datan .
  4. a) Mitkä ovat liukuhihnan hasardityypit?
    b) Selosta lyhyesti miten kunkin luokan hasardit voidaan ratkaista?
  5. Mitä tarkoitetaan termillä arbitrointi? Mitkä ovat arbitroinnin neljä pääluokkaa ja niiden perusperiaate?
Liitteenä jaettiin tiivistelmä R2000-assemblerin käskyistä.