Mikrokodo estas la nomo por kelkaj instrukcioj aŭ datumstrukturoj kiuj estas implikitaj en efektivigado de pli altnivela maŝinkodo en multaj procesoroj, precipe mikroprogramitaj. Mikrokodo estas en memoro, kiu estas tre rapide alirebla. Kiam maŝinnivela instrukcio devas esti efektivigita, mikrokodo diras al la procesoro kiuj elektronikaj cirkvitoj devas esti uzitaj. Kiam nova procesoro estas dezajnita, inĝeniero ankaŭ skribas la mikrokodon por la instrukcioj de maŝinkodo. Ĉi tio nomiĝas mikroprogramado, la rezulta kodo nomiĝas mikroprogramo.

En fruaj procesoroj, ĉiu instrukcio estis fikse kablita. Ĉi tio havis plurajn malavantaĝojn, la plej evidenta estas, ke korekti eraron en la dezajno de procesoro signifas, ke la procesoro devas esti anstataŭigita.[1] [2]

Ekzemplo

redakti

Procesoro devas adicii du valorojn, kiuj estas en registroj A kaj B.

  1. Agordu la ALU-n por adicio
  2. Metu la valoron de registro A sur unu enigon de la ALU
  3. Metu la valoron de registro B sur unu enigon de la ALU
  4. Post mallonga tempo, por ebligi la adicion, la rezulto devas esti kopiita en registron, kiu ankoraŭ ne estis uzata
  5. La valoro de tiu registro devas esti kopiita al registro A
  6. La sekva instrukcio devas esti prenita el memoro

Eroj 1-3, same kiel 5-6, povas esti kodigitaj kiel unu instrukcio. Eblas ankaŭ fikse kabligi la logikon necesan por ĉi tiu operacio. Ĉi tio havas la avantaĝon esti pli rapida, sed la malavantaĝon, ke ĝi ne plu permesas ŝanĝojn, kiuj eble estos bezonataj poste.

La koncepto de mikroprogramado estis evoluigita fare de Maurice Wilkes en 1951, uzante diodo-matricojn por la memorelemento.

Referencoj

redakti

Vidu ankaŭ

redakti

En tiu ĉi artikolo estas uzita traduko de teksto el la artikolo Microcode en la baza angla Vikipedio.