MIC-1: razlika između inačica

Izvor: Hrvatska internetska enciklopedija
Prijeđi na navigaciju Prijeđi na pretraživanje
Redak 38: Redak 38:
* adrese sljedeće mikroinstrukcije (sekvenciranje)
* adrese sljedeće mikroinstrukcije (sekvenciranje)


Ovaj format omogućuje studentima da jasno vide kako se složene instrukcije strojnog jezika razlažu na niz mikrooperacija.
Ovaj format omogućuje studentima da jasno vide kako se složene instrukcije strojnog jezika razlažu na niz mikrooperacija. Za mikroinstrukcije Tanenbaum je razvio posebni assemblerski jezik MAL, s kojim se mogao uređivati mikroprogram za MIC-1. U sebi je sadržavao sve osnovne narebe s kojim se moglo upravljati s mikrosekvencerom.<ref>https://docs.racket-lang.org/mic1/index.html#%28part._mal%29</ref>


==Instrukcijski skup==
==Instrukcijski skup==

Inačica od 12. srpanj 2026. u 06:15

MIC‑1 je mikroarhitektura koju je Andrew S. Tanenbaum osmislio i predstavio u svojoj knjizi Structured Computer Organization (prvo izdanje 1976., kasnije brojna proširena izdanja).

Povijest i razvoj

Razvoj mikroarhitekture MIC‑1 usko je povezan s nastankom udžbenika Structured Computer Organization američkog računalnog znanstvenika Andrewa S. Tanenbauma. Tijekom 1970‑ih i ranih 1980‑ih Tanenbaum je uočio da se studenti računalnih znanosti često susreću s velikim jazom između apstraktnih programskih koncepata i stvarnog funkcioniranja procesora na razini mikroinstrukcija. Kako bi premostio taj jaz, osmislio je jednostavan, ali potpuno funkcionalan model mikroprogramiranog procesora — MIC‑1.

Prvo izdanje

Prvo izdanje knjige, objavljeno 1976., predstavilo je MIC‑1 kao temeljni obrazovni alat za razumijevanje mikroprogramiranja. U kasnijim izdanjima Tanenbaum je model dodatno usavršavao, ali je zadržao njegovu izvorno zamišljenu jednostavnost: jedinstvena sabirnica, mali skup registara, osnovni ALU i mikroprogramska upravljačka jedinica. Time je MIC‑1 postao idealan za demonstraciju kako se instrukcije višeg nivoa razlažu u mikrooperacije.

MIC-2

Kako je nastava arhitekture računala evoluirala, MIC‑1 je dobio i svoje proširenje — MIC‑2, model s dvostrukom sabirnicom koji omogućuje paralelniji tok podataka. Paralelno s time Tanenbaum je razvio i IJVM, pojednostavljeni instrukcijski skup inspiriran Java Virtual Machineom, kako bi studenti mogli vidjeti kako se virtualne instrukcije prevode u mikroinstrukcije MIC‑1 procesora.

Tijekom 1990‑ih i 2000‑ih MIC‑1 je postao standardni dio sveučilišnih kolegija diljem svijeta. Brojni simulacijski alati, vizualizatori mikroinstrukcija i studentski projekti dodatno su učvrstili njegov status kao jednog od najuspješnijih didaktičkih modela u povijesti računalne arhitekture. Unatoč jednostavnosti, MIC‑1 i danas služi kao referentni primjer mikroprogramiranog procesora, posebno u kontekstu usporedbe s modernim RISC arhitekturama koje se oslanjaju na hardverski upravljane kontrolne jedinice.


Opis

MIC‑1 je jednostavan, mikroprogramirani procesor čija je glavna svrha didaktička: omogućiti studentima da prate kako se instrukcije višeg nivoa razlažu u mikrooperacije i kako se one izvršavaju nad internim registrima i sabirnicama.

Arhitektura

MIC‑1 se sastoji od nekoliko ključnih komponenti[1]:

  • Sabirnica] (bus) — jedinstvena interna sabirnica preko koje se prenose podaci između registara i ALU‑a.
  • Registri — ukupno 16 x 16 bitnih registara uključuju PC, MAR, MDR, IR, H i skup općih registara.
  • ALU — jednostka za aritmetičko‑logičke operacije, s podrškom za osnovne operacije poput zbrajanja, oduzimanja i logičkih funkcija.
  • Upravljačka jedinica — mikroprogramirana; mikroinstrukcije se čuvaju u kontrolnoj memoriji i određuju tok podataka i aktivaciju kontrolnih signala.
  • Memorija — modelirana kao jednostavna RAM jedinica dostupna preko MAR/MDR sklopova.

Mikroinstrukcije

Svaka mikroinstrukcija MIC‑1 procesora sastoji se od:

  • polja za odabir izvora podataka na sabirnici
  • polja za odabir odredišnog registra
  • ALU kontrolnih bitova
  • kontrolnih signala za memoriju
  • adrese sljedeće mikroinstrukcije (sekvenciranje)

Ovaj format omogućuje studentima da jasno vide kako se složene instrukcije strojnog jezika razlažu na niz mikrooperacija. Za mikroinstrukcije Tanenbaum je razvio posebni assemblerski jezik MAL, s kojim se mogao uređivati mikroprogram za MIC-1. U sebi je sadržavao sve osnovne narebe s kojim se moglo upravljati s mikrosekvencerom.[2]

Instrukcijski skup

MIC‑1 se često koristi zajedno s jednostavnim modelom strojnog jezika nazvanim IJVM (Integer Java Virtual Machine). IJVM je podskup JVM‑a, prilagođen za obrazovne svrhe, a MIC‑1 služi kao njegova hardverska implementacija.

Instrukcije poput IADD, ILOAD, ISTORE, GOTO i INVOKEVIRTUAL demonstriraju kako se visokonivojske operacije prevode u mikroinstrukcije.

Vanjske poveznice

Izvori