191616. lajstromszámú szabadalom • Berendezés frissítésre alkalmas mikroprocesszorok időkihasználtságának növelésére
3 191 616 4 cesszor kiadja „OUT” utasítás segítségével a (1)B adatot a 24 regiszternek. Az „OUT” utasítás nyomán aktiválódik a 23 dekódoló 30 kimenete és mint következmény a 24 regiszter Q0 kimenete 26, 27 ÉS kapukon keresztül engedélyezi a 6 adatkérést jelző vezetéken található jelnek áthaladását a 29 tároló bemenetére. A 29 tároló bebillenése a 4 nem maszkoiható megszakítást kérő vezetéket aktiválja. A nem maszkoiható megszakítást kezelő program most kiadja „OUT” utasítással a 24 regiszterre a (0)b adatot, ezáltal a 25 ÉS kapu engedélyezi a 7 adatérvényesítő vezetéket minden frissítési olvasás alkalmával. Ha a 2 CRT vezérlőnek az adat igénye megszűnik, akkor a 33 inverteren és 32 ÉS kapun keresztül a 24 regiszter 00 kimenete automatikusan törtlődik, így a 7 adatévényesítő vezeték aktív állapota megszűnik. Újabb, nem maszkoiható megszakítás elfogadására a program kiad egy olyan „OUT” utasítást, ami a 23 dekódolón keresztül aktiválja a 31 tároló törlő vezetéket. A 31 tároló törlő vezeték megszünteti a 4 nem maszkoiható megszakítást kérő vezeték aktív állapotát. A 2 CRT működéséből adódik a 20 ms enként egy 2 ms-es idő, amikor a 2 CRT vezérlő nem kér adatokat (kép visszafutási idő). Ezt az időt használja fel a rendszer a 16 klaviatúra lekérdezésére. A 16 klaviatúra max. 256 billentyűt tartalmaz, minden billentyű külön-külön megcímezhető és az állapotát (lenyomva, felengedve) a 19 billentyű állapotát jelző vezetéken közli. Az állapotjelzés csak akkor következik be, ha a 2 klaviatúra engedélyező vezeték aktív. Egyezményesen a 12 operatív tárban miden 16 klaviatúrán található billentyűhöz egy-egy opartív tár rekeszt rendelünk (pl. 8 bitet). A rekeszen belül a bitek egy része (pl. az alsó 4 bit) úgynevezett definíciós bitek. A definíciós bitek segítségével meglehet határozni különböző billentyű üzemmódot (pl. billentyű lenyomás, felengedés, normál, control stb ). A fennmaradó bitekre (pl. a felső 4 bit) a 18 adatmódosító egység segítségével „beléptetjük” a 19 billentyű állapotát jelző vezetéken található információt az egyezményesen megállapított 12 operatív tár rekeszében. Ez nem jelent külön műszaki problémát, ugyanis a legtöbb operatív tár végre tudja hajtani az olvasás, módosítás, visszaírás műveletet. A 18 adatmódosító egység úgy van megvalósítva, hogy a 12 operatív tár adott rekeszében található információnak a felső négy bitjét érintetlenül vissza adja a 12 operatív tárnak, az alsó négy bittel léptetést végez, mégpedig úgy, hogy a legalacsonyabb súlyú bit a 19 billentyű állapotát jelző vezetéken található logikai értéket fogja felvenni. A 20 kódoló egységnek az a szerepe, hogy fogadja a definíciós biteket, a 19 billentyű állapotát jelző vezetéken található információt, annak kialakulását (az adatbitek egy része ezen a vezetéken közvetített információ átvitelt tükrözi, mivel egy léptetési folyamat segítségével íródnak be) és a fenti paraméterek ismeretében jelezzen a kívánt eseményre a 3 helyi vezérlőnek a 22 megszakítást kérő vezetéken keresztül. A 20 kódoló egység úgy van megvalósítva, hogy felismerje a 8 adatsínen, adott időpontban található egyezményes információt együtt a 19 billentyű állapotát jelző vezetéken található információval és megfelelő egyezés esetén aktiválja a 22 megszakítást kérő vezetéket. Ezek után a rendszer úgy kell programozni, hogy pl. a kép visszafutási idő alatt (ezt a 2 CRT vezérlő állapotából kiindulva dönti el az 1 mikroprocesszor) a frissítési cím a 16 klaviatúrához rendelt 12 operatív tár területre mutasson. Ezt követően az 1 mikroprocesszor úgy készíti lel a 3 helyi vezérlőt, hogy a továbbiakban a 3 helyi vezérlő engedélyezze a 21 klaviatúra engedélyező vezetékkel a 16 klaviatúrát és fogadja a 20 kódoló egység jelzését, a 22 megszakítást kérő vezetékkel és továbbítsa ezt a jelet a 4 nem maszkoiható megszakítást jelző vezetéken keresztül az I mikroprocesszorhoz. A 3. ábra szerinti 3 helyi vezérlő példa kapcsolási vázlaton ez úgy történik, hogy a program feltölti a (2)b adatot a 24 regiszterbe „OUT” utasítással, amit a 23 dekódoló regisztrál és mint következmény aktiválja a 30 regiszter töltő vezetéket. A művelet után aktiválódik a 21 klaviatúra engedélyező vezeték és a 28, 27 ÉS kapukon keresztül, ha a 22 megszakítást kérő vezeték aktív, bebillen a 29 tároló, amelynek negált kimenete a 4 nem maszkoiható megszakítást kérő vezetéknek a forráspontja. A 28 ÉS kapu kimenetén található jel automatikusan törli a 24 legiszter Q1 kimenetét. A 4 nem maszkoiható megszakítást kérő vezeték aktiv állapotát „OUT” utasítással a 23 dekódoló és 31 tároló törlő vezetéken keresztül lehet megszüntetni. A billentyű állapota 19 billentyű állapotát jelző vezetéken és 18 adatmódosító egységen keresztül eltárolódik a megfelelő 12 operatív tár rekeszbe. A 20 kódoló egység 16 klaviatúra esemény (pl.: leütés, felengedés) alkalmával megszakítást okoz az 1 mikroprocesszornak a 3 helyi vezérlő és a 22 megszakítást kérő vezetéken keresztül. A nem maszkoiható megszakítás pillantában érvényben levő frissítési olvasási cím egyértelműen meghatároz egy billentyűt a Î6 klaviatúra billentyűi közül. Az 1 mikroproceszszor miután kiolvassa a frissítési címet tartalmazó regisztert, meg tudja állapítani, mely billentyű generálta a megszakítást, valamint ki tudja elemezni a hozzákapcsolt 12 operatív tár rekesz kiolvasásával a billentyűhöz kapcsoló rekeszben található információt. A felhasznált mikroprocesszor függvényében (hét vagy nyolc bites frissítési címszámláló) kettőszázötvehat billentyű lekérdezéséhez egy vagy két software beavatkozás szükséges (frissítési címregiszter feiprogramozás). A lekérdezés befejezhető a 3 helyi vezérlő leiprogramozásával, ami letiltja a 21 klaviatúra engedé-5 10 15 20 25 30 35 40 45 50 55 60 65 3