170527. lajstromszámú szabadalom • Csoportvezérlő CA-MAC mérő, adatgyűjtő és vezérlő rendszernek több megszakításszintű számítógéphez kapcsolására
7 170527 8 csoportvezérlő a BD kérés fennállásáig ciklikusan végrehajt, ha magasabb prioritási műveleti kérelem nem érkezik az üzemmód kiválasztóhoz. Ha a csoportvezérlő nincs foglalt állapotban, vagyis az üzemkiválasztó egységhez sem számítógépes sem autonóm kérés nem érkezik, a BD kérés jelentkezésére a csoportvezérlő egy GLl-es megszakítás visszakeresési műveletet kezdeményez, majd mindaddig további GL2-es műveleti ciklusokban feldolgozza és továbbítja a számítógép megszakítási vonalaira a CAMAC felől érkező BD megszakítási kérelmet, amíg vagy a BD kérés meg nem szűnik, vagy valamilyen magasabb prioritású műveleti kérés nem érkezik a csoportvezérlő felé. Tehát ebben az esetben a BD kérés hatására a csoportvezérlő egy folyamatos visszakeresést hajt végre, ezáltal biztosítottuk, hogy a számítógép felé továbbított megszakítási kérés mindig a pillanatnyi állapotnak megfelelő prioritás szinten jelentkezhessen. Az így felépített megszakítási rendszer előnyeit az alábbiakban foglalhatjuk össze: — A CAMAC rendszerből érkező közös BD kérést a csoportvezérlő felbontja, és több különböző prioritású kérésként továbbítja a számítógép felé. — A. csoportvezérlő a beérkező BD kérésre — ha az software úton nem tiltott - válaszul egy azonnali, a konkurrens műveleti kérelmeknél magasabb prioritású GLl-es visszakeresési műveletet kezdeményez. — A csoportvezérlő aktív állapotában (számítógépes átvitel vagy autonóm blokkátvitel esetén) nem szükséges a futó program prioritási szintjét a CAMAC rendszer GL szavának maszkolásával beállítani, ugyanis a csoportvezérlő a GLl-es művelet végrehajtása után, ha a számítógép nem fogadta el a n^gszakításkérést, folytatja a megkezdett műveletsort, s a számítógép foglaltsági állapotából vagy egyéb tevékenységéből eredő szünetekben GL2-es üzemmódban újabb megszakítás visszakereső műveletet kezdeményez, amely során ellenőrzi, hogy a fennálló BD kérés nem egy magasabb prioritású kérelem eredménye-e. A GL szó maszkolásával az átviteli idő lerövidíthető a felesleges GL2-es ciklusok eliminálásával. — A csoportvezérlő szabad állapotában, vagy abban az esetben, ha a csoportvezérlőben megkezdett számítógépes műveletsort egy, a csoportvezérlőt nem érintő programrész szakította meg, a módszer kiküszöböli a futó program és a periféria rendszer viszonyának a GL szó maszkolásával történő beállítását, ugyanis a csoportvezérlő GL2-es műveleti ciklusok során mindaddig feldolgozza a CAMAC rendszer felől érkező közös BD kérést, amíg az meg nem szűnik, vagy valamilyen magasabb prioritású kérelem nem érkezik be a művelet kiválasztó egységhez. A csoportvezérlő funkció dekodolója — adat-pufferregiszterben a számítógép felőli beírást és/vagy kiolvasást vezérlő — funciójeleinek kimenetei a címregiszter CNA címmódosító bemeneteire vannak kapcsolva (az ábián nincs feltüntetve). Ez az intézkedés a CAMAC címek kidolgozására ad egy hatékony módszert, s ezáltal jelentősen lerövidíti a számítógép és a CAMAC periféria rendszer közötti átvitelt. Folyamat ellenőrző vagy irányító real-time periféria rendszerrel ellátott számítógépek egyik fontos feladata digitális jelcsoportok ciklikus kezelése. Ha a jelkezelés és az alkalmazott periféria modul bonyolultsági foka ekvivalens egymással, vagyis amikor minden jelcsoporthoz egy perifériamodult rendelünk, célszerű a rendszert úgy kialakítani, hogy a feldolgozásra kerülő jelcsoportok egymás utáni modul-esetleg alcímű egységekhez csatlakozzanak. Ha NON—CAMAC utasításrendszer kihasználatlan utasításait a CAMAC címek módosításával kombinált adatpufferregisztert feltöltő, illetve kiolvasó műveletek kijelölésére foglaljuk le, lehetőség nyílik software úton végrehajtott blokkátvitel esetén a CAMAC átvitelt leíró gépi utasítások számának csökkentésére. Ugyanis ebben az esetben egy CAMAC írási vagy olvasási művelet 2 gépi utasítással definiálható: — Az adatpufferregiszterek kiolvasása, illetve feltöltése, valamint a pufferregiszterben tárolt CAMAC címek módosítása (keret-, vagy modul-, vagy alcím inkrementálása, illetve alaphelyzetbe állítása) - A CAMAC funkciókód és adatjelek átvitele a CAMAC művelet végrehajtására. Az általunk kifejlesztett csoportvezérlőben e célra rendelkezésre álló utasításkészlet a következő: Pufferregiszter kiolvasása (feltöltése, keretcím inkrementálása) Pufferregiszter kiolvasása (feltöltése, keretcím inkrementálása, N=l modulszám beállítása) Pufferregiszter kiolvasása (feltöltése, keretcím inkrementálása, N=l modulszám beállítása az A alcím nullázása) Pufferregiszter kiolvasása (feltöltése, N modulszám dekremen tálasa) Pufferregiszter kiolvasása (feltöltése, N modulszám inkrementálása) Pufferregiszter kiolvasása (feltöltése, N modulszám inkrementálása az A alcím nullázása) Pufferregiszter kiolvasása (feltöltése, A alcím dekrementálása) Pufferregiszter kiolvasása (feltöltése, A alcím inkrementálása) Pufferregiszter kiolvasása (feltöltése). E módszer segítségével software úton végrehajtott blokkátvitelnél egy CAMAC írási vagy olvasási művelet az eddigi 3-mal szemben két gépi utasítással határozható meg, s ha figyelembe vesszük a számítógép átvitelt előkészítő utasításait is, az átvitelhez szükséges utasítások száma, s végrehajtási ideje jelentősen csökkenthető. A módszer nem feltételezi, hogy az egymás után kiadott CAMAC címeken elhelyezkedő egységekben azonos funkciókóddal meghatározott műveletet kell végrehajtani. A NON-CAMAC utasításrendszer ily módon történő kibővítése viszonylag egyszerű eszközökkél megvalósítható, realizálásához a számítógép átviteli csatornáj ának jelkészlet-kialakításától függően körülbelül 3-4 LSJ integrált áramköri tok szükséges. 10 15 20 25 30 35 40 45 50 55 60 A