Laskuharjoitus   [Suomeksi Page in English]

Tietokoneen rakenne, S2003, LH 2

Käsitellään laskuharjoituksissa viikolla 40 (30.9-1.10.2003)
  1. Tehtävät A.4 ja A.6 kirjasta (s. 731) (tai s. 707 [Stal99])

     

  2. [2 HTP] Tehtävä A.8 kirjasta (kokonaiskuva ja Z1:n detaljit)
    Osa (d): Anna SOP-muotoa vastaava Z1:n Karnaugh-kartta ja sen avulla muodostettu mahdollisimman yksinkertainen Z1:n SOP-muotoinen Boolean lauseke.

  3. Tehtävä 4.8 kirjasta (s. 127)   (teht. 4.14 s. 144 [Stal99], ks. myös uuden kirjan Fig 4.15.pdf)
    Anna esimerkki tilanteesta, jolloin approksimaatio ei toimi (esim. korvataan välimuistin rivi A, vaikka riviin B viittauksesta on kulunut pidempi aika). Miksi se ei toimi?

     

  4. Prosessorilla on yhdistetty lopuksi kirjoittava välimuisti (unified write back cache). Siitä löytyy 98% kaikista muistiviitteistä (hit ratio). Keskimäärin joka käskyä kohden on 1.4 muistiviitettä (siis käsky itse plus 0.4 dataviitettä). Välimuistin rivin pituus on 4 sanaa. Systeemiväylällä on tapahtumatyyppi, jonka avulla koko välimuistin rivi voidaan lukea muistista tai kirjoittaa muistiin 50 kellopulssin aikana (CPU cycles). Yhden sanan lukemiseen tai kirjoittamiseen menee 30 kellopulssia. Välimuistin lohkoista noin 20% ovat sellaisia datalohkoja, johin on kirjoitettu. Käskyn suoritukseen kuluu keskimäärin 5 kellopulssia plus aika niiden muistiviitteiden käsittelyyn, jotka eivät löydy välimuistista. Muistiviitteen käsittelyn aikana prosessori odottaa. Prosessori suorittaa yhden käskyn kerrallaan.
    1. Montako kellopulssia menee käskyn suorittamiseen keskimäärin tällä prosessorilla?
    2. Montako kellopulssia menisi käskyn suorittamiseen keskimäärin, jos prosessorissa ei olisi välimuistia?

     


Teemu Kerola