191616. lajstromszámú szabadalom • Berendezés frissítésre alkalmas mikroprocesszorok időkihasználtságának növelésére
1 191 616 2 Berendezés frissítésre alkalmas mikroprocesszorok időkihasználtságának növelésére, mely mikroproceszorok, adat, cím és parancssínen keresztül operatív tárra, más tárra, CRT vezérlőre és/vagy klaviatúrára, valamint más perifériális berendezés illesztő egységre vannak kötve. A mikroprocesszorok megjelenésével nyílt meg az út az olcsó mikroszámítógépek építéséhez. Ez teremtette meg a szükségességét speciális periféria vezérlők kifejlesztésének is. Igen nagy jelentőséggel bír a dinamikus memóriák megjelenése és fejlődése, melynek viszont a frissítési igénye bizonyos akadályokat jelentett az egyszerű rendszerek kialakításában. E hátrány kiküszöbölésére — speciális memóriavezérlő áramkörök megjelenésén kívül — megterveztek olyan mikroprocesszorokat, melyek maguk végzik a frissítést (Z80, Z8000, slb.). Az eddigiek tükrében az integrált áramköröket fejlesztő-gyártó cégek által elképzelt és valóban legelterjedtebb mikroszámítógép struktúrák, központi egységet, memóriát, periféria illesztőket, közvetlen memória hozzáférés vezérlőt és képernyővezérlöt tartalmaznak. E struktúrának hátránya az, hogy a memória és a képernyő frissítése (ez utóbbit a viszonylag drága DMA vezérlő egység végzi) egyaránt a CPU programfutási idejének rovására megy és így a rendszer hatékonysága csökken. Ugyanakkor a legtöbb mikroprocesszornál az utasítás felhozatal ideje alatt (M( szokványos jelölési ciklus) többletidő áll rendelkezésre, ami a felhozott operációkód elemzéséből és belső műveletek elvégzésének szükségességéből adódik. Ezt a többlet időt az egyes mikroprocesszorok — mint pl. a már említett Z80, Z8000 — felhasználják memória frissítésre oly módon, hogy növekvő memória címmel frissítési célzatú olvasási parancsot adnak a memóriának. A találmány azon a felismerésen alapszik, hogy a frissítésre alkalmas mikroprocesszorok frissítési ciklusa felhasználható további műveletek végzésére is, pl. a CRT vezérlő adatellátására, a klaviatúra lekérdezésére és ez által a rendszer hatásfokát számottevően fel lehet javítani. A találmány lényege az, hogy olyan helyi vezérlője van, mely helyi vezérlő az adatsínre, a címsínre, a parancssínre kapcsolódik egyfelől, illetve másfelől a nem maszkolható megszakítást jelző vezetéken és frissítést jelző vezetéken keresztül a mikroproceszorra csatlakozik. A találmányt részletesebben az ábrákon bemutatott kiviteli példák segítségével ismertetjük, az 1. ábra a találmány szerinti berendezés tömbvázlatát mutatja, míg a 2. ábrán a helyi vezérlő működését bemutató folyamatábrát szemléltetjük és a 3. ábra a helyivezérlő egy kiviteli példáját ábrázolja. Az 1. ábrán látható 1 mikroprocesszor 15 sínrendszeren keresztül, mely 15 sínrendszer 8 adatsínt, 9 címsínt, 10 parancssínt tartalmaz, 2 CRT vezérlőre, 3 helyi vezérlőre, 11 más perifériális berendezés illesztő egységre, 12 operatívtárra, 13 más tárra kapcsolódik. Az I mikroprocesszor a 8 adatsínen keresztül 18 adatmódosító egységhez és 20 kódoló egységhez csatlakozik. A 9 címsín kapcsolódik 16 klaviatúrához. A 18 adatmódosító egység kapcsolatát a 12 operatív tárral 17 visszaíró adatsín biztosítja. A 2 CRT vezérlő kapcsolódik a 14 CRT-re. A 3 helyi vezérlő, 5 frissítést jelző vezetékkel, az 1 mikroprocesszorral, és a 12 operatív tárral, 6 adatkérést jelző vezetékkel és 7 adatérvényesítő vezetékkel, a 2 CRT vezérlővel, 22 megszakítást kérő vezetékkel, a 20 kódoló egységgel, illetve 21 klaviatúra engedélyező vezetéken keresztül, a 16 klaviatúrával kapcsolódik. A 16 klaviatúra, 19 billentyű állapotát jelző vezetéken keresztül, a 18 adatmódosító egységhez kapcsolódik. A frissítést elvégző mikroprocesszorok általában az utasítás felhozatali idő alatt (M2) miközben a felhozott operációs kód feldolgozása folyik, kiadnak egy frissítési célzatú memória olvasási parancsot. A frissítési olvasásnál, a hozzárendelt cím, részben (alsó 7, 8 bit) automatikusan növekszik eggyel, a felső bitek pedig programozás útján állíthatók. A cím alsó bitjei úgyszintén felülírhatok program segítségével. Ezeket a lehetőségeket megfelelő 3 helyi vezérlő közbeiktatásával ki lehet aknázni olyan irányban, hogy megfelelően kezelve a frissítés alkalmával kiadott címen párhuzamosan adatokat küldjünk ki a 2 CRT vezérlőre, illetve a 16 klaviatúrát lekérdezzük. Amikor a 2 CRT vezérlő adatokat kér a 3 helyi vezérlőtől a 6 adatkérést jelző vezetéken keresztül, akkor a 3 helyi vezérlő ezt a kérést jelzi az 1 mikroprocesszor felé a 4 nem maszkolható megszakítást jelző vezetéken keresztül. Megfelelő program gondoskodik arról, hogy az 1 mikroprocesszor kérdezze le a 3 helyi vezérlő státuszát, (a példaként szemléltetett 3. ábrán „IN” utasítással 23 dekódolón, illetve 35 státusz olvasó vezetéken keresztül a 34 státuszmeghajtó beadja a 8 adatsínre a 24 regiszter állapotát) megállapítsa, hogy a nem maszkolható megszakítás a 2 CRT vezérlőtől származik és ennek megfelelően először beállítsa a frissítési címet annak a 12 operatív tár területnek a kezdetére, ahol a 2 CRT vezérlőnek szánt adatok találhatók, azután engedélyezze a 3 helyi vezérlőt, hogy minden frissítési olvasás alkalmával szolgáltatott adatot a 7 adatérvényesítő vezeték segítségével beírjon a 2 CRT vezérlőbe (2. ábra). Ez a folyamat addig tart, ameddig a 2 CRT vezérlő nem szünteti meg az adatigény jelzését az 6 adat kérést jelző vezetéken keresztül. Ha a 2 CRT vezérlő adatigénye megszűnt, a 3 helyi vezérlő automatikusan leállítja az új adatok küldését (33 inverter, 32 ÉS kapu). A 3 helyi vezérlő megvalósítására mérvadó a 2-es ábrán szemléltetett folyamatábra. A 3. ábrán szemléltetett helyi vezérlő példa kapcsolási vázlaton ez úgy történik, hogy az 1 mikropro5 10 15 20 25 30 35 40 45 50 55 60 65 2