165729. lajstromszámú szabadalom • Mikroprogram vezérlésű adatfeldolgozó kisegység
13 ä megadott sorrendben a következőket tartalmazzák : 1. a mikroutasítások folytatódó számozását; 2. ugrás címeket szimbolikus ábrázolásban; 3. az Um programmegszakítási-feltétel állapotát a mikroutasításban; 4. a mikroutasítás fajtájának szimbolikus ábrázolását ; 5. A mindenkori mikroutasítás változatainak szimbolikus ábrázolását; 6. a mikroutasítás információs részét szimbolikus ábrázolásban. A 6. ábra szerinti példa alapján ismertetjük az utasítás mikroprogramvezérelt lefolyását. Feltételezzük, hogy egy gépi szó a KSP főtároló 1—15 helyén három gépi utasítást tartalmaz, öt-öt hellyel (húsz bit). Az utasítás végrehajtása során a mindenkori utasítás a harmadik főtárolószó 1—5 helyén van, amely a kiviteli példában a BR utasításregisztert tartalmazza. A gépi program utasításszámlálója ugyancsak a KSP főtárolóban van elhelyezve, éspedig a főtároló-szó 1—3 helyén. Ezen főtároló-szó 0-ik helye információt (0, 1 vagy 2) tartalmaz, annak jellemzésére, hogy az első, a második vagy a harmadik utasítás kerül végrehajtásra egy gépi szónál. Ezen hely tartalmát minden gépi utasítás végrehajtása után meg kell változtatni. Ha például éppen egy gépi szó harmadik gépi utasítása kerül végrehajtásra, úgy a gépi program utasításszámlálójának tartalmát 1-gyel kell növelni. Ezt követően új gépi utasítást kell a harmadik főtároló-szó 1—5 helyére bevinni. Az MB1 első mikroutasítással az ARW2 és ARW1 szócímregiszterekbe a harmadik és hatodik főtároló-szó címei, valamint az ARS2 helycímregiszterbe a 0-ik hely címe kerül beállításra. A következő MB2 mikroutasítás Le kiolvasóutasítás, amely egy főtároló helyet ARWl-gyel, vagy ARS2-vel címezi. Ebben az esetben a hatodik főtárolószó 0-ik helye és ezen hely tartalma a HR' főregiszterbe kerül átvitelre. Egyidejűleg ezzel az ARS2 helycímregiszter tartalma 1-gyel növekszik. Az MB3 mikroutasítás I ugrási utasítás. Ha a második HR,2 főregiszter-bit értéke 1, azaz ha a második MB2 mikroutasítással címzett főtárolóhely tartalma 2 volt a B3 szimbolikus címre történő ugrás következik be. Ha az ugrási feltétel nem teljesül, 0-ik főtárolóhely tartalma 0 vagy 1 volt, úgy az MB4 mikroutasításra történik átmenet. Az MB4 mikroutasítás a főregiszter tartalmát 1-gyel növeli, az ARS2 második helycímregiszter tartalma pedig 1-gyel csökken. A HR főregiszter megváltozott tartalma az MB5 mikroutasítással a főtároló 6. szavának 0-ik helyére íródik be. Az MB1—MB5 mikroutasítások által a főtároló hatodik szavának 0-ik helyének tartalma 1-gyel növekszik, illetve ha az MB3 mikroutasításhoz az ugrási utasítás teljesül, a tartalom 0 lesz, mert az MB2 mikroutasítás az Le olvasási utasítás Lel változatát ábrázolja, amelynél az olvasott információ visszaírása nem történik meg. Az MB6— MBU mikroutasítás által a mindenkori gépi szó második, ill. harmadik utasítása, amely a BR uta-14 sításregiszter 6—10, ill. 11—15 helyein van, az 1—5 helyekre kerül átvitelre. Az MB6—MB8 mikroutasítások az ARS1 és ARS2 helycímregiszterek alkalmas beállítására vannak. A második ARW2 5 szócímregisztert már az MB1 mikroutasítás beállította a harmadik főtároló-szóra, amelyben a BR utasításregiszter van. Az MB9—MBU mikroutasítások hurkot alkotnak. Az AR81 és AR82 helycímregiszterek tar-10 talma ezen hurok minden átfutásánál 1-gyel csökken, míg az ARS1 első címregiszter tartalma 0 lesz, azaz az MBU mikroutasítás, amely I ugróutasítás, végrehajtásra kerül, ameddig az ARS1 első helycímregiszter nem egyenlő 0-val. 15 Az MB 12 mikroutasítás feltétel nélküli ugrási utasítás a B2 szimbolikus címre. Az MB13 mikroutasítást az MB3 mikroutasítás hozza létre, ha a HR,2 = 1 feltétel teljesül. Ebben az esetben az utasításszámláló tartalmát 20 1-gyel növelni kell, és azon gépi szót, amelynek címe az utasításszámláló új értékének megfelel a BR utasításregiszterbe kell átvinni. Az MB13—MB16 mikroutasítások hurkot képeznek. Az első átfutásnál az utasításszámláló 25 legalacsonyabb helyértékű helyét, amely például a magtároló 6. szavának első helye, az MB13 kiolvassa, az MB 14 1-gyel növeli, és az MB 14 ismét ugyanarra a helyre írja be. Ehhez csatlakozóan az ARS2 helycímregiszter tartalma 1-gyel 30 növekszik, utasításszámláló mindenkori legnagyobb helyórtékű helyére megy át. Az MB 16 mikroutasítás, amely ugrás a B3 szimbolikus címre, akkor kerül végrehajtásra, ha az éppen műveletben részt vevő utasításszámláló hely tar-35 talma 0-lává vált. Az MB 18—MB20 mikroutasításokkal az utasításszámláló tartalma helyenként az ARW2 második szócímregiszterbe kerül átvitelre, miután az MB 17 mikroutasítással az utasításszámláló legnagyobb helye az ARS1 helycím-40 regiszterrel címezve lett. Az MB21—MB24 mikroutasításokkal az új gépi szó, amelynek címe éppen az ARW2 második szócímregiszterébe került átvitelre, a BR regiszteibe jut, az 1-helyen kezdődik az MB21 mikroutasítása és a 15 helyen vég-45 ződik. A hurok addig fut, amíg az ARS2 második helycímregiszter tartalma, amely minden átfutás után 1-gyel növekszik, ismét 0 lesz, azaz a gépi szó összes helye a 15. hellyel bezárólag a BR utasí-50 tásregiszterbe kerül átvitelre. Az MB25—MB30 mikroutasítások felvilágosítást adnak az utasítás-dekódolás elvéről, amely ugyancsak a mikroprogrammal valósul meg. Ehhez az MB25 mikroutasítás által, amely Ei beállítóutasí-55 tás, az ARW1 és ARW2 szó- és helycímregiszterbe a harmadik főtárolószó 5. helyének címe, tehát a BR utasításregiszter kerül beállításra, amely ezen helyen a végrehajtandó utasítás műveleti részét kódolva tárolja. Az MB26 mikro-60 utasítással ezen hely olvasásra kerül. Ha a hely 0-lát tartalmaz, úgy ezzel üres utasítás van jelölve, és a következő MB27 mikroutasítás kerül végrehajtásra, azaz visszaállás az utasítás-hurok kezdetére. Ha ez a feltétel nem teljesül, a következő 65 MB28—MB30-ra történik átmenet, amelyekben 7