581365 Tietokoneen rakenne

Erilliskuulustelu 16.9.2008

1. YHDISTELMÄPIIRI JA DIGITAALILOGIIKKAA [15p]
BCD-esityksessä (Binary Coded Decimal) numerot koodataan 4-bitin yhdistelminä. Numeroita 0, 1, 2, ..., 9 vastaavat bittiesitykset ovat siten 0000, 0001, 0010, ..., 1001. Yhdistelmäpiiriä (combinatorial circuit) käytetään kasvattamaan BCD-numeron arvoa yhdellä (modulo 10). Piirillä on siis 4 sisäänmenoa (A, B, C ja D) sekä 4 ulostuloa (W, X, Y, Z).

  1. Anna totuustaulukko, josta käy ilmi kutakin sisääntuloa vastaava ulostulo. (2p)
  2. Anna ulostulon X Boolen lauseke SOP-muodossa (sum of products). (3p)
  3. Anna ulostulon X Boolen lauseke POS-muodossa (product of sums). (4p)
  4. Anna ulostuloa X vastaava Karnaugh-kartta ja sen avulla muodostettu mahdollisimman yksinkertainen X:n Boolen lauseke.

2. RISC JA REKISTERI-IKKUNA [15p]

  1. Selvitä kolme RISC-arkkitehtuurin keskeistä piirrettä ja kerro lyhyesti saatavat hyödyt. (6 p)
  2. SPARC-prosessori käyttää 136 fyysistä rekisteriä, mutta ohjelma voi käyttää vain 32 rekisterinumeroa (r0-r31), joilla se voi viitata rekisteri-ikkunaan. Rekisteri-ikkunoita käytetään aliohjelmakutsujen yhteydessä. Prosessorissa on rekisteri-ikkunoiden hallintaa varten lisäksi rekisterit CWP (current window pointer) ja WIM (window invalid mask).
  3. Olisiko sittenkin parempi suuren rekisterimäärän sijaan käyttää vain pientä määrää rekistereitä ja välimuistia? (2 p)

3. IA-64 JA ITANIUM [15p]

Selitä seuraavat käsitteet. Anna kullekin (konekielitason) esimerkki.
  1. Predikoitu suoritus (predicated execution) (3 p)
  2. Spekulatiivinen lataus tai kontrollispekulointi (speculative loading or control speculation)(4 p)
  3. Dataspekulointi (data speculation) (4 p)
  4. Ohjelmistoliukuhihnoitus (software pipelining) (4 p)

4. MIKR0-OHJELMOITU KONTROLLI [15 p]

  1. Mitkä ovat kontrolliyksikön tehtävät? (2 p)
  2. Miten mikro-ohjelmoitu (microprogrammed) ja langoitettu (hardwired) kontrolli eroavat toisistaan? Mitkä ovat kummankin edut ja haitat? (4 p)
  3. Mikä on mikrokäsky? Miten horisontaalinen (horizontal) mikrokäsky eroaa vertikaalisesta (vertical) mikrokäskystä? Mitkä ovat kummankin edut ja haitat? (4 p)
  4. Mitä tapahtuu mikrokäskyn suorituksessa? Miten tiedetään seuraavan mikrokäskyn osoite? (5 p)