581365 Tietokoneen rakenne
Erilliskuulustelu 11.11.2008
TOTUUSTAULU, SOP- JA
POS- ESITYKSET SEKÄ KARNAUGH-KARTTA [15 p]
Binääri
koodi muutetaan Gray-koodiksi seuraavan taulukon mukaisesti:
Binäärikoodi Gray-koodi
000 000
001 001
010 011
011 010
100 110
101 111
110 101
111 100
- Laadi
totuustaulu piirille, joka muuntaa taulukon binäärikoodina
esitetyt luvut Gray-koodin mukaisiksi. (2 p)
- Esitä
totuustaulu SOP- ja POS-muodossa. (5p)
- Yksinkertaista
Gray-koodin ulostulomuuttujien esitykset Karnaugh-karttoja
käyttäen. (8 p)
VÄLIMUISTI
JA TLB [15p]
- Miksi
tarvitaan välimuistia (cache) ja miksi välimuisti toimii?
(2 p)
- Miksi
käytetään TLB:tä ja miksi TLB toimii? (2 p)
- Mitä
yhteistä/eroa on välimuistilla ja TLB:llä? Miten
niiden toiminta liittyy toisiinsa? (3p)
- Oleta, että
(epärealistisen pienessä) välimuistiratkaisussa
viitatun 4-tavuisen sanan 16-bittinen tavuosoite on 0xA0B4.
Välimuistin rivin pituus (cache line size) on 16 tavua ja
välimuistin koko (cache size) on 256 tavua.
Piirrä
kuva, josta käy ilmi välimuistin rakenne. Selitä
miten mainittu muistipaikka löytyy välimuistista, kun
toteutus perustuu joukkoassosiatiiviseen kuvaukseen, jossa joukon
koko on 2 (2-way set associative). Huolehdi, että
vastauksestasi käy selkeästi ilmi, kuinka annettu
tavuosoite jakautuu osiin (bittitasolla). Voit olettaa, että
viitattu muistipaikka löytyy välimuistista.(8 p)
RISC
JA REKISTERI-IKKUNA [15p]
- Selvitä
kolme RISC-arkkitehtuurin keskeistä piirrettä ja kerro
lyhyesti saatavat hyödyt. (6 p)
- 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).
- Miten
ohjelman käyttämä rekisterinumero muutetaan
fyysiseksi rekisterinumeroksi? (2p)
- Miten
kutsuttu aliohjelma viittaa globaaleihin muuttujiin, parametreihin
ja paikallisiin muuttujiinsa? Entä kuinka kutsuja pääsee
käsiksi aliohjelman palauttamiin arvoihin? (3 p)
- Miten
käsitellään tilanne, jossa kaikki rekisteri-ikkunat
ovat jo käytössä ja tulee vielä uusi
aliohjelmakutsu? (2 p)
- Olisiko sittenkin
parempi suuren rekisterimäärän sijaan käyttää
vain pientä määrää rekistereitä ja
välimuistia? (2 p)
MIKR0-OHJELMOITU
KONTROLLI [15 p]
- Mitkä
ovat kontrolliyksikön tehtävät? (2 p)
- Miten
mikro-ohjelmoitu (microprogrammed) ja langoitettu (hardwired)
kontrolli eroavat toisistaan? Mitkä ovat kummankin edut ja
haitat? (4 p)
- Mikä
on mikrokäsky? Miten horisontaalinen (horizontal) mikrokäsky
eroaa vertikaalisesta (vertical) mikrokäskystä? Mitkä
ovat kummankin edut ja haitat? (4 p)
- Mitä tapahtuu
mikrokäskyn suorituksessa? Miten tiedetään seuraavan
mikrokäskyn osoite? (5 p)