1. domača naloga - MiMo model CPE

Na predavanjih in vajah smo predstavili zgradbo in delovanje mikroprogramirane CPE - poimenovali smo jo MiMo CPE (Mikroprogramiran Model CPE). Celotna distribucija in vsi spremljajoči dokumenti so objavljeni v poglavju s predavanji.


Rešite naslednje naloge oziroma probleme :

  1. Zapišite zaporedje mikroukazov, ki se izvedejo pri izvedbi strojnega ukaza "SW Rd,immed" (npr. "SW   r4, 120"):
    • ta ukaz je že implementiran v datoteki z definicijami mikroprogramskih realizacij
    • ob vsakem mikroukazu krajše opišite njegovo delovanje (stanje podatkovne enote, kaj se pravzaprav takrat zgodi, itd....)
  2. Iz seznama strojnih ukazov, ki jih podpira zbirnik izberite vsaj tri in zanje podajte ustrezna zaporedja mikroukazov za njihovo realizacijo. Izbrani ukazi naj bodo bolj zahtevni oz. netrivijalni - sestavljeni naj bodo iz vsaj 4 ali še bolje več mikroukazov (vaša uspešnost se bo merila tudi po tem kriteriju). Kratko opišite realizacijo in predvsem mikroprogramske zapise dodanih strojnih ukazov v mikro-zbirniku:
    • potrebno je določiti realizacijo strojnega ukaza s pomočjo mikroukazov
    • zaporedje mikroukazov je potrebno dodati v datoteko "basic_microcode.def" in jo vnesti in  uporabiti v MiMo modelu.
  3. Nove strojne ukaze iz 2. naloge uporabite v lastnem testnem programu v zbirniku in preizkusite njegovo delovanje. Napišite tak program, da se bodo dodani ukazi temeljito preizkusili. Razložite vsebino ustreznih strojnih ukazov. Opišite dogajanje ob vsakem strojnem ukazu in določite, koliko urinih period traja vsak od njih in program v celoti (zapišite trajanja za vsak ukaz v posebni tabeli).
  4. Pravilno umestite v pomnilniški prostor izhodni napravi FB 16x16 in TTY po načelu "pomnilniško preslikanega vhoda/izhoda"- lahko uporabite nepopolno naslovno dekodiranje. Poskrbite, da se bo testni program za IO napravi po tej spremembi pravilno izvajal - torej se bosta izhodni napravi pojavili za pisanje res samo na njima dodeljenih naslovih. Dodatno gradivo "OR_Naslovno_dekodiranje_gradivo.pdf" je vključeno v distribuciji za MiMo model.
  5. Opišite dogajanje v podatkovni enoti po vseh elementarnih korakih, ki bi bili potrebni za pravilno realizacijo klicev podprogramov in pravilnih vrnitev iz podprogramov. Elementarne korake lahko opišete vsaj tekstovno - podajte čimveč podrobnosti. Lahko dodate tudi še dejanski mikroprogram. Napišite tudi, kaj bi še potrebovali, da bi lahko klici podprogramov bili vgnezdeni ? Podajte vse potrebne podrobnosti.

Rešitve nalog oddajte v obliki poročil v PDF formatu. Vsebine vseh pomembnejših datotek naj bodo v prilogi poročila in dodane v skupni arhiv, ki ga oddate v eni datoteki zip.

Dodatno delo oziroma izvrstnost rešitev izven osnovnih okvirjev naloge bo nagrajeno in upoštevano pri končni oceni (dodatno delo lahko oddate tudi v okviru 1. neobvezne domače naloge.

Z oddajo domače naloge jamčite vaše izvirno avtorstvo. Vso zunanjo pomoč (viri,...) navedite v poročilu.