TlK-6l.l25 TIETOKONEEN ARKKITEHTUURI

Tentti 12.06.1995, laatija Mikko Huttunen

Merkitse jokaiseen tenttipaperiin selvästi

- nimi ja opintokirjan numero

- osasto ja vuosikurssi

- harjoitustöiden suorittamisvuosi (jos tehty)

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

1. Kuvaa lyhyesti ja ytimekkäästi seuraavat käsitteet (Varoitus: Jokin akkronyymi tai sen

englanninkielinen aukikirjoitus Ei yleensä riitä vastaukseksi

a) ylivuoto (overflow)

b) pino

c) DMA

d) väyläprioriteetti

e) osumasuhde (hit ratio)

f) MIMD (pelkkä aukikirjoitus ei todellakaan riitä)

2. Tee R2000-assemblerilla funktioaliohjelma FLIPBITS. Se kääntää sanan bitit toisinpäin (bitti 0 siirtyy bitin 31 paikalle ja päinvastoin). Se saa kutsuvalta ohjelmalla parametrina käännettävien sanojen lukumäärän (rekisterissä 6) sekä ensimmäisen sanan osoitteen (rekisterissä 7). Ohjelman tulee kääntää kaikki taulukossa olevat sanat sekä palauttaa käännettyjen sanojen alkuosoite (rekisterissä 8).

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

3. Tehtävänäsi on suunnitella 4-bittinen laskuri VHDL:llä. Laskurissa on neljä lähtöä (00-03) ja kaksi tuloa (CLOCK, RESET). Laskurin arvoa lisätään yhdellä aina kun kellopulssin nouseva reuna (0->1) havaitaan. Mikäli RESET =1 laskuri nollataan. Esitä suunnitteluyksikön esittely sekä VHDL-arkkitehtuuri.

4. Mitä eri periaatteita voidaan lohkon sijoittamiseksi kätkömuistiin käyttää? Arvioi eri tapojen tehokkuutta ja toteutuksen monimutkaisuutta.

5. Mitä tarkoitetaan moniprosessorijärjestelmissä kätkökoherenssilla (cache coherency): Mitä keinoja on ratkaista kätkökoherenssiin liittyviä ongelmatilanteita.