195015. lajstromszámú szabadalom • Processzor elrendezés primitív és összetett eljárásokat meghatározó utasítások végrehajtására
195015 kezik be. Ekkor a 32 ÉS kapu kimenetén !ORG=l állapot áll elő, majd a következő órajelciklusban a 29 flip-flopon és a 35 VAGY kapun keresztül FETCH = 1 állapot keletkezik. A !ORG = l állapot az IP interpretation pointert a rendszer kezdőcímére állítja be. Ennek kapcsolása a 7. ábrán látható. Az IP interpretation pointer adatvonalai 36 multiplexer közös vonalaival kapcsolódnak. A 36 multiplexer három irányú csatlakozást tesz lehetővé, egyik csatlakozása 38 fix tárral van összekötve, amely a rendszer kezdő címét fixen tartalmazza. Az IPR vezérlő jel vonala 37 VAGY kapun át egyrészt az IP interpretation pointer írásvezérlő bemenetéhez, másrészt a 36 multiplexer egyik vezérlő bemenetéhez csatlakozik. A 36 multiplexer egy további vezérlő bemenete az IPW vezérlő jel vonalával és harmadik vezérlő bemenete a !ORG vezérlő jel vonalával kapcsolódik. Ha a rendszert a kezdőcímre akarjuk vinni, akkor a lORG vonala a 36 multiplexert úgy állítja be, hogy a 38 fix tár vonalai kapcsolódnak az IP interpretation pointer adatvonalaira, ezzel egyidejűleg a 37 VAGY kapun keresztül az IP interpretation pointer beírási parancsot is kap, a kezdőcím így rendben beíródik. Attól függően, hogy az IP interpretation pointerbe írni vagy abból kiolvasni akarunk, az IPR, illetve IPW vezérlő jelek egyike érvényes, és ennek megfelelően a 36 multiplexer a megfelelő irányú kapcsolatot engedélyezi az IP interpretation pointer adatvonalaihoz. Könnyen érthető, hogy a fix kezdőcím beírása nemcsak a bemutatott egyszerű kapcsolásban, hanem számos egyéb módon is megoldható. A »;« terminátor utasítás tehát a találmány szerinti elrendezést a megfelelő állapotba vezérli egy összetett utasítás teljes befejeződése után, illetve annak egy alciklusa után visszaviszi az eltárolt címre, ahonnan újabb alciklusok indulhatnak. Az eddigi leírásból érthető, hogy a 18 lokális vezérlő modulok egy-egy primitív eljárást hajtanak végre és néhány órajelciklus alatt, egy-egy D típusú flip-flop vezérlésével előállítják a vonatkozó primitív eljárások végrehajtásához szükséges állapotokat, esetenként a szükséges feltételeket is vizsgálják. Bár a primitív eljárások típusa és száma a különböző kivitelek és igények esetén különböző lehet, a gyakorlatban legfontosabb 28 eljárást érdemes definiálni. Az eljárások megnevezésénél a FORTH programozási nyelvvel nagyfokú rokonság miatt a hasonló FORTH primitív eljárások megnevezését használjuk, mint ahogy az eddigi megnevezések is a FORTH analóg megnevezésekkel voltak azonosak. A 8. ábrán a DUP utasítás végrehajtásához tartozó vezérlő áramkör látható. A DUP utasítás feladata a PAR paraméter verem 11 tetején lévő érték kettőzése. A vezérlő áramkör a 17 eljárás dekóder tizenharmadik ki menetéről származtatja a DUP állapotot, és ez 39, 40, 41 flip-flopokból és 42, 43 VÁGY kapukból kialakított sorrendi vezérlő áramkör kapcsolásban a bemutatott módon van elrendezve. Az első órajelre: POPPAR = AR = 1, aminek következtében a PAR paraméter verem tartalmát kihozzuk a buszra és az A regiszterbe ezt beírjuk. A második órajelre: AW = PUSHPAR= 1, azaz az A regiszter tartalmát a buszra íratjuk és a busz ezen tartalmát bevisszük a PAR paraméter verembe. A harmadik órajelre: AW = PUSHPAR = =FETCH= 1. Az előző ciklus szerint az A regiszter tartalmát bevisszük a PAR paraméter verembe, azaz már a második rekeszébe is, és FETCH állapottal új ciklust indítunk. Látható, hogy a DUP primitív eljárás valóban megkétszerezte a PAR paraméter veremben az annak tetején lévő értéket. A 9. ábrán egy újabb primitív eljárás végrehajtásához tartozó vezérlő áramkört tüntettünk fel. Ez a vezérlő áramkör a felépítését tekintve legbonyolultabb a 18 lokális vezérlő modulban megvalósítottak közül. A primitív utasítás neve: 0BRANCH, jelentése feltételes ugrás. A vezérlő áramkör a 17 eljárás dekóder huszonötödik kimenetéről kapja vezérlését és 44, 45, 46, 47 és 48 flip-flopból, 49 inverterből, 50, 51 ÉS kapuból, továbbá 52 VAGY kapuból áll. Az áramkörhöz felhasználjuk a FLAG állapotjelet, amely az 1. ábrán vázolt 21 VAGY kapu kimeneti jele, és értéke akkor 0, ha az A regiszter kimeneti vonalán egyetlen bit értéke sem 0. A 9. ábrán az 51 ÉS kapu vezérlésére a 49 inverteren keresztül a FLAG állapot inverzét használjuk. A működés első órajelére az A regiszterbe bevisszük a PAR paraméter verem értékét, egyúttal az IP interpretation pointert eggyel megnöveljük. A második órajelre a FLAG értékétől, azaz attól függően lépünk, hogy az A regiszterbe beírt érték 0 vagy attól különböző. Nullától különböző FLAG esetén a következő órajelre a 45 flip-flop kimenetéről következő FETCH ciklust indítunk. Ha FLAG=1, akkor a 46 flip-flop kimenetéről az IP interpretation pointer tartalmát az IPW utasítással a IADB buszra visz-12 5 10 15 20 25 30 35 40 45 50 55 60 65 8