Ero vaaka- ja pystysuoran mikro-ohjelmoinnin välillä

Mikrokoodin kirjoitusprosessia tietokoneen keskusyksikön ohjausmuistiin kutsutaan mikro-ohjelmoinnaksi. Ohjausmuistin mikrokoodi generoidaan tietokoneen konfiguroinnin ja sen mikro-ohjelmoidun ohjausyksikön perustamisen jälkeen. Ohjausmuisti on osa ohjausyksikköä, joka tallentaa kaikki mikro-ohjelmat, joita ei voi muokata usein. Kukin mikro-ohjelman rivi edustaa mikro-käskyä, joka määrittelee yhden tai useamman mikrotoiminnon. Mikro-ohjeet voidaan järjestää kahdella eri tavalla: vaaka- ja pystysuunnassa. Vaakatason mikro-ohjeet edustavat useita mikrotoimintoja, jotka suoritetaan samanaikaisesti. Äärimmäisissä tapauksissa jokainen vaakasuuntainen mikro-ohje ohjaa kuitenkin kaikkia järjestelmän laitteistoresursseja. Päinvastoin, pystysuora mikro-ohje muistuttaa tavanomaista konekielen muotoa, joka käsittää yhden operaation ja muutamat operandit. Päinvastoin kuin vaakasuoria mikro-ohjeita, pystysuora mikro-ohje edustaa yksittäisiä mikrooperaatioita.

Vaakasuora mikro-ohjelmointi

Vaakatason mikro-ohjelmoinnissa jokainen bitti tunnistetaan erityisesti yhdellä ohjauspisteellä, joka osoittaa, että vastaava mikrotoiminto on suoritettava. Koska jokainen mikrokäsky kykenee hallitsemaan useita resursseja samanaikaisesti, sillä on potentiaalinen etu tehokkaampaan laitteiston hyödyntämiseen ja lisäksi se vaatii pienemmän määrän mikro-ohjeita mikro-ohjelmaa kohti. Se sallii suuremman samansuuntaisuuden vähimmäismäärällä koodausta ja erilliset ohjauskentät. Resursseja optimaalisesti tai tehokkaasti käyttävien mikroohjelmien kehittäminen on kuitenkin monimutkainen tehtävä. Vaakasuuntainen mikro-ohjelmointi tarjoaa suuren joustavuuden, koska jokainen ohjausbitti on toisistaan ​​riippumaton. Sen pituus on suurempi, joten se sisältää tyypillisesti enemmän tietoa kuin pystysuorat mikro-ohjeet.

Pystysuora mikro-ohjelmointi

Pystysuorassa mikro-ohjelmoinnissa käytetään muuttuvaa muotoa ja korkeampaa koodausta, toisin kuin vaaka-mikro-ohjelmoinnissa. Se ei vain lyhennä mikrokäskyn pituutta, vaan estää myös kasvavaa muistikapasiteettia vaikuttamasta suoraan mikro-ohjeen pituuteen. Jokainen pystysuora mikro-ohje käsittää yleensä yhden mikro-operaation. Koodia käytetään jokaiselle suoritettavalle mikrooperaatiolle ja dekooderi kääntää koodin yksittäisiksi ohjaussignaaleiksi. Koska määritetään vain suoritettava mikrotoiminto, mikro-ohjekentät hyödynnetään täysin. Lisäksi pystysuoria mikroohjelmia on helpompi kirjoittaa kuin niiden vaakasuoria vastineita. Pystysuuntainen mikro-ohje muistuttaa tavanomaista konekielimuotoa, joka käsittää yhden operaation ja muutamat operandit. Siksi sitä on helppo käyttää mikro-ohjelmointiin. Se koostuu yleensä neljästä kuuteen kenttään, jotka vaativat noin 16 - 32 bittiä per käsky.

Ero vaaka- ja pystysuoran mikro-ohjelmoinnin välillä

koodaus

Pystysuora mikro-ohjelmointi käyttää muuttuvaa muotoa ja korkeampaa koodausta, toisin kuin vaakasuora mikro-ohjelmointi. Pystysuorassa mikro-ohjelmoinnissa ohjausbitit koodataan kutakin koodia käytettäessä kullekin suoritettavalle toiminnolle ja käskydekooderi dekoodaa koodin useiksi ohjaussignaaleiksi. Päinvastoin, vaakasuoraan mikro-ohjelmointiin sisältyy vaakasuoria mikro-ohjeita, joissa ei käytetä lainkaan koodausta. Ne edustavat kutakin ohjausbittiä tiepolulla, joka on osoitettu erillisellä bitillä mikrokäskymuodossa. Jokainen ohjauskentän bitti on kiinnitetty ohjauslinjaan.

järjestys

Vaakasuuntainen mikro-ohjelmointi noudattaa yleensä peräkkäistä lähestymistapaa seuraavan mikro-ohjelman määrittämiseksi mikro-ohjelmassa, samanlainen kuin tavanomainen konekieli. Jokainen bitti tunnistetaan erityisesti yhdellä ohjauspisteellä, joka osoittaa, että vastaava mikrotoiminto on suoritettava. Sitten sekvenssin rikkomiseksi vaaditaan erityisiä ehdollisia ja ehdottomia haara-mikro-ohjeita. Pystysuorassa mikro-ohjelmoinnissa voidaan käyttää suhteellisen osoitusmenettelyä, jossa vaaditaan muutama bitti suhteellisen eteen- tai taaksepäin-hypyn määrittämiseksi. Tämä vaatii osoitteen laskemisen jokaisessa vaiheessa.

Design

- Pystysuorilla mikro-ohjelmilla on parempi kooditiheys, mikä on hyödyllistä kontrollivaraston koon kannalta. Pystysuuntainen mikro-ohje muistuttaa tavanomaista konekielimuotoa, joka käsittää yhden operaation ja muutamat operandit. Jokainen pystysuuntainen mikrokäsky edustaa yhtä mikrooperaatiota, kun taas operandit voivat määritellä datan pesualtaan ja lähteen. Horisontaaliset mikro-ohjelmat puolestaan ​​edustavat yleensä useita mikrotoimintoja, jotka suoritetaan samanaikaisesti. Ääritapauksissa kukin vaakasuuntainen mikro-ohje ohjaa useita laitteistoresursseja samanaikaisesti.

Joustavuus

- Vaakatasossa olevat mikroohjelmat tarjoavat paremman joustavuuden, koska jokainen ohjausbitti on toisistaan ​​riippumaton. Sen pituus on suurempi, joten se sisältää tyypillisesti enemmän tietoa kuin pystysuorat mikro-ohjeet. Vaakasuuntaiset mikro-ohjeet, joissa on 48 tai enemmän bittiä, ovat melko yleisiä. Vaakasuorilla mikro-ohjelmilla on potentiaalinen etu, kun laitteistoa käytetään tehokkaammin, ja sen lisäksi se vaatii pienemmän määrän mikro-ohjeita mikro-ohjelmaa kohti. Pystysuorat mikro-ohjeet puolestaan ​​ovat pienempiä, mutta vähemmän joustavia kuin vaakasuuntaiset mikro-ohjeet. Pystysuuntaista lähestymistapaa on siten helppo käyttää mikro-ohjelmointiin.

Vaakasuora vs. pystysuora mikro-ohjelmointi: vertailukaavio

Yhteenveto vaaka- ja pystysuunnassa mikro-ohjelmoinnista

Päinvastoin kuin vaakasuoria mikro-ohjeita, pystysuora mikro-ohje edustaa yksittäisiä mikrooperaatioita. Vaakatasossa olevat mikroohjelmat sallivat suuremman samansuuntaisuuden vähimmäismäärällä koodausta ja erillisiä ohjauskenttiä, kun taas ohjausbitit koodataan pystysuorissa mikroohjelmissa. Valinta näiden kahden lähestymistavan välillä on tehtävä huolellisesti. Käytännössä suunnittelijat kuitenkin käyttävät vaaka- ja pystysuuntaisen mikro-ohjeformaatin yhdistelmää, jotta tuloksena oleva rakenne on kompakti, mutta tehokas.