179288. lajstromszámú szabadalom • Nagyssebességű mikroprogramozott processzor elrendezés
5 179288 6 A találmány szerinti processzor elrendezés a külső perifériákkal való kapcsolatát is jellegzetesen valósítja meg két demultiplexer megfelelő alkalmazása és célszerű buszrendszer kialakítása révén, amivel a perifériák I/O regisztereinek belső regiszterként való kezelését lehetővé teszi, és az adatmozgató I/O utasítások hatékonyságát nagymértékben megnöveli. Az a felismerés, hogy a későbbiekben leírt ötödik multiplexer megfelelő alkalmazásával külső hardware jelek logikai szintjét programelágazási feltételként használhatjuk, illetve ezáltal beavatkozhatunk az egyes utasítások mikrociklusainak végrehajtási szekvenciájába, további sebességnövelési lehetőségeket teremt. A kitűzött feladatot olyan nagysebességű mikroprogramozott processzor elrendezés létrehozásával oldottuk meg, amelynek program memóriája, ennek kimenetéhez csatlakoztatott mikroprogramozott vezérlőegysége, véletlen hozzáférésű regisztertömbből képezett operatív memóriája, ehhez tartozó címregisztere, kimeneti adatbusza, bemeneti adatbusza, és a mikroprogramozott vezérlőegységet ütemező óragenerátora van és külső perifériák felé és felől adatokat és vezérlő jeleket külső és fogadó ki- és bemenetéi vannak, ahol a program memória kimenete programcím számlálóhoz csatlakozik, ennek kimenete pedig a program memória címvonalaival van összekötve, továbbá a mikroprogramozott vezérlőegységben mikroprogram tároló, ennek kimenetéről vezérelt pipeline regiszter és kombinációs hálózat van, és a kombinációs hálózat kimenetei az elrendezés egységeinek vezérlő, működtető és engedélyező bemenetéivel vannak összekötve, és a találmány szerint a program memória kimeneti vonalai első, illetve második regiszterrel vannak összekötve, az első regiszter kimeneti busza aritmetikai és logikai egységgel, a külső kimeneti regiszterek vezérlését biztosító első demultiplexer bemenetéivel, a külső bemeneti regiszterek vezérlését biztosító második demultiplexer bemenetéivel, külső feltételeket továbbító ötödik multiplexer bemenetéivel, továbbá közvetlenül vagy negyedik multiplexeren át a mikroprogram tároló címbemeneteivel van összekapcsolva, a második regiszter kimeneti busza első multiplexer első bemeneti csoportjához csatlakozik, ennek második bemeneti csoportja a memória kimeneti buszával van összekötve, az első multiplexer kimeneti busza egyrészt az aritmetikai és logikai egység második aritmetikai bemenetéihez, másrészt második multiplexer második bemenetéihez csatlakozik, az aritmetikai és logikai egység kimeneti busza akkumulátor regiszter bemenetéihez és a második multiplexer első bemenetéihez csatlakozik, ez utóbbi kimenete a bemeneti adatbusszal van összekötve, ide csatlakozik a címregiszter bemenete, buszmeghajtó bemenete, a külső regiszterek kimenete, az akkumulátor regiszter kimenete, flag tároló kimenete és első bemeneti csoportja, stack regiszter bemenete, harmadik multiplexer kimenete, általános rendeltetésű regiszterek ki- és bemenete és az aritmetikai és logikai egység első aritmetikai bemenetei, a harmadik multiplexer első bemeneti csoportja a stack regiszter kimenetével, második bemeneti csoportja a programcím számláló kimenetével van összekötve, az aritmetikai és logikai egység flag kimenetei a flag tároló bemenetelhez csatlakoznak, és az operatív memória adatbemenete a kimeneti adatbuszhoz csatlakozik, amely a külső regiszterek bemenetéivel és buszmeghajtó kimenetével van összekötve. A találmány szerinti processzor elrendezés egy előnyös kiviteli alakjánál az első regiszter kimeneti busza negyedik multiplexeren keresztül csatlakozik a mikroprogram tároló címbemeneteihez, a negyedik multiplexer további bemenetei kódoló kimeneteivel vannak összekötve, ennek bemenete puffer regiszter kimenetével van összekötve, a puffer regiszter bemenete pedig az első regiszter kimeneti buszához kapcsolódik. A találmány szerinti processzor elrendezés egy további kiviteli alakjára az jellemző, hogy az első regiszter kimeneti buszával utasítás ciklus számláló van összekötve, amelynek kimenete ÉS kapun és VAGY kapun keresztül a negyedik multiplexer vezérlő bemenetével van összekötve, a VAGY kapu másik bemenete első flip flop kimenetével és a kódoló egyik vezérlő bemenetével van összekötve, az első flip flop jelbemenete kizáró VAGY kapu kimenetéhez kapcsolódik, ennek egyik bemenete az első regiszter kimeneti buszának meghatározott bitvonalával, másik bemenete pedig az ötödik multiplexer kimenetével van összekötve, továbbá az ÉS kapu másik bemenete második flip flop negált kimenetéhez van kapcsolva. Az így kialakított processzor elrendezés speciális hardware felépítése, elsősorban a különleges stack kezelés révén lehetővé teszi a multiprocesszoros üzem időveszteség nélküli szimulálását, továbbá a műveletek gyorsabb végrehajtását, ugyanakkor a szolgáltatási lehetőségek elsősorban a periféria csoport vezérlésénél és illesztésénél felmerülő feladatok esetén az eddigiekhez képest jelentősen kibővülnek. A találmány szerinti nagysebességű mikroprogramozott processzor elrendezést a továbbiakban ábrák kapcsán, a rajz alapján ismertetjük részletesebben. A rajzon az 1. ábra a találmány szerinti processzor elrendezés általános tömbvázlata, a 2. ábra adatblokk programvezéreit perifériára való kivitelére alkalmas ismert megoldás egyszerűsített tömbvázlata, a 3. ábra a fenti feladat ellátására alkalmas találmány szerinti elrendezés vázlata, a 4. ábra a 3. ábra szerinti elrendezésnél a fenti feladat elvégzéséhez tartozó algoritmus folyamatábrája, és az 5. ábra a többprocesszoros funkciót szemléltető algoritmus folyamatábrája. Most az 1. ábrára hivatkozunk, amelyen a találmány szerinti nagysebességű mikroprogramozott processzor elrendezés általános tömbvázlatát tüntetjük fel. A processzor elrendezés fő egységeit a PM program memória, a regisztertömböt képező véletlen hozzáférésű tárakból kiképzett RAM memória, és az MV mikroprogramozott vezérlőegység képezi. A PM program memória előnyösen 4096.24 bites felépítésű, a RAM memória 4096.12 bites, természetesen szükség esetén ennél kisebb vagy nagyobb kapacitá3 5 10 15 20 25 30 35 40 45 50 55 60 (5