in English Other side in English

581365-8 Tietokoneen rakenne, kurssikuulustelu 16.10.2006  

Kirjoita jokaiseen vastauspaperiin: oma nimi, henkilötunnus, kurssin nimi, nimikirjoitus ja sivunumero.

  1. [12 p] Yhdistelmäpiiri kontrolloi 7-segmenttinäyttöä (ks. kuva alla). Piirillä on neljä sisäänmenoa (X1, X2, X3, X4) ja seitsemän ulostuloa (Z1, ..., Z7). Piirille annettava desimaalinumero on koodattu pakattua desimaaliesitystä (BCD) käyttäen, ts. numerot 0, 1, ..., 9 koodataan biteiksi 0000, 0001, ..., 1001. Piiri valitsee sisäänmenojen perusteella mitkä näyttösegmenteistä se kulloinkin aktivoi (valaisee). Kun ulostulon arvo on 1, sitä vastaava segmentti on valaistu. Esimerkiksi, kun sisäänmeno arvo on luku 5 (X1 X2 X3 X4 = 0101), niin segmentit Z1, Z2, Z4, Z6, ja Z7 on valaistu (arvo 1) ja muut segmentit ovat pimeänä (arvo 0).

    1. Muodosta ulostulon Z7 totuustaulukko.
    2. Muodosta ulostulon Z7 SOP-muodossa oleva Boolen lauseke
    3. Muodosta ulostulon Z7 POS-muodossa oleva Boolen lauseke
    4. Muodosta SOP-muodon ulostulon Z7 Karnaugh kartta ja anna sen perusteella ulostulon Z7 mahdollisimman yksinkertainen SOP-lauseke. Näytä kuinka yksinkertaistaminen tapahtui Karnaugh-kartan avulla.

  2. [12 p] Virtuaalimuisti
    1. Minkä perusongelman virtuaalimuisti ratkaisee?
    2. Miten TLB liittyy perusongelman ratkaisuun? Minkä ongelman TLB ratkaisee? Miksi TLB:stä on hyötyä?
    3. Mihin paikallisuuteen TLB perustuu? Miksi ei siihen toiseen?
    4. Mikä on käänteinen sivutaulu (inverted page table) ja mitä hyötyä/haittaa siitä on tavanomaiseen sivutauluun verrattuna?

     
  3. [12 p] Riippuvuudet.
    1. Minkä tyyppisiä käskyjen välisiä riippuvuuksia esiintyy normaalin (ei superskalaarin) suorittimen liukuhihnalla? Anna konkreettinen (konekielitason) esimerkki kustakin riippuvuustyypistä.
    2. Miten (a-kohdan) riippuvuuksien aiheuttamat mahdolliset ongelmat torjutaan? Kuinka niiden aiheuttamia suorituskykyä heikentäviä vaikutuksia voidaan vähentää?
    3. Mitä uusia käskyjen välisiä rippuvuusongelmia esiintyy superskalaarin suorittimen liukuhihnalla (siis sellaisia, joita ei mainittu edellisessä kohdassa)? Anna konkreettinen (konekielitason) esimerkki kustakin riippuvuustyypistä.
    4. Miten (c-kohdan) riippuvuuksien aiheuttamat mahdolliset ongelmat torjutaan? Kuinka niiden aiheuttamia suorituskykyä heikentäviä vaikutuksia voidaan vähentää?

     
  4. [12 p] IA-64 ja Itanium. Selitä seuraavat käsitteet. Anna kullekin (konekielitason) esimerkki.
    1. Predikoitu suoritus (predicated execution)
    2. Spekulatiivinen lataus tai kontrollispekulointi (speculative loading or control speculation).
    3. Data spekulointi (data speculation)
    4. Ohjelmisto liukuhihnoitus (software pipelining)