172377. lajstromszámú szabadalom • Mikroprogramzott adatfeldolgozó rendszer

g 172377 10 processzor fő utasításkészletével összhangban lévő feldolgozási célok vezérlésénél van szükség. A 113 tár minden egyes mikroprogram szinthez egy-egy regisz­terrel rendelkezik, tehát összesen tizenhattal. A fentiekben leírtuk, hogy egy magasabb elsőbb­ségű mikroprogram szintnek megfelelő periférikus csatoló ilyen módon képes bármely alacsonyabb elsőbbségű mikroprogram szint tevékenységének meg­szakításba. Azt is leírtuk, hogy egy mikroprogram szintre történő visszatérés során egy érvénytelenítő módosítást képes biztosítani, hogy az ugrások vagy a tárhozháférések semmilyen információveszteséget se okozzanak, még akkor sem, ha bekövetkezésük a megszakítás által érintett mikroprogram szint futása során történik. Az is lehetséges, hogy egy ilyen megszakítás során egy másik periférikus csatolótól szolgáltatásiránti kérés érkezik, amikor ezen második csatoló mikroprogram elsőbbségi szintje a megszakító csatolónál alacsonyabb, de a megszakított szintnél magasabb. Ezt a második periférikus csatolót még a megszakított szintre tortáiő visszatérés előtt kell kiszolgálni. Amíg azonban egy megszakított szintre történő normál visszatérés egyszerűen a megfelelő mikroprogram és üzemi regiszterek újrakiválasztását váltja ki, egy közbenső elsőbbségű új kérés kiszolgálá­sához az információ által érintett mikroprogramtár kezdeti cinének és a 49 többszörös vonalon és 50 többvonalas úton lévő üzemi tármódosító felvételére van szükség. Egy kiválasztott mikroprogram szintre való belépés egy további regiszter megfelelő jelölőbit­jének beállításával van társítva, amikor ezen regiszter­nek tizenhat bitállapota van, tehát egy álapot minden mikroprogram szinthez. Ezt kényelmes módon a nullázó 74 tár egyes rekeszeinek járulékos bit-pozició­­jaként lehet kivitelezni, ahol a 74 tár beírása minden szintváltozáskor ML vonalon keresztül, vizsgálata pedig egy megszakításra adott válaszul M vonalon történik. A megszakítás befejeződésekor a legmaga­sabb elsőbbségű mikroprogram szinttel rendelkező ké­rés, amelyet a 31 vezérlőrendszer elsőbbség meghatá­rozó tevékenysége állapít meg, egy megfelelő mikro­program szintjelzést hoz létre. Ennek a szintnek megfelelő jelölőbitet vizsgáljuk meg. Ha ez egyezik a mikroprogram szint megfelelő értékével, akkor a C és K regisztereket, stb. használjuk. Ha ez a megegyezés nem áll fenn, ez azt jelenti, hogy az adott szintre első belépés történik, és a 49 többszörös vonalon és 50 többvonalas úton lévő jeleket éppen úgy gyűjtjük össze, mint megszakítás esetében. A megszakításos jelleg egy további jellemzője abban áll, hogy a csatolók által kezdeményezett és processzorhozzáférést igénylő kéréseket a processzor­ból érkező óraimpulzusok statikussá teszik, és a processzor ezeket az óraimpulzusokat mindig letilt­hatja, amennyiben a processzor megszakítást nem képes fogadni. Ez a megoldás biztosítja, hogy a periférikus kérések a processzor időzítéséhez vannak szinkronizálva. A csatoló kérések egészen addig rögzí­tetten haladnak, ameddig a processzor egy EXIT impulzust solgáltat egy kiválasztást vezérlő jellel együtt (97 dekódertől). Ez a megoldás gondoskodik arról, hogy a megszakításról vagy a megszakításokról való visszatérés előtt ezen megszakítási szintről nem feledkezünk meg. A leírt processzor a periférikus csatolók kéréseit a 0001-0111 mikroprogram szintek közül a megfelelő szinten szolgálja ki. Megszervezhetünk természetesen a megfelelő mikroprogram szintet használó periféri­kus tevékenységet is. Ezen a 0000-0111 szinten folyó műveleteket egy magasabb rangú szint megsza­kíthatja, és az ilyen megszakítást követően az üze­melés következő legmagasabb szolgáltatást igénylő szinten folytatódik, & ez az első megszakított szintre való visszatérést tovább késlelteti. Amint már az előzőekben említettük, a legmagasabb elsőbbségi szintet, a ’0000”mikroprogram szintet kritikus megszakítások számára, például paritáshibák vagy hardware meghibásodások számára tartjuk fenn. Mi­kor periférikus tevékenységre nincs szükség és ilyen kérés tincs függőben, a normál adatfeldolgozás az 1000-1111 mikroprogram szinteken történik. Az 1000-1111 mikroprogram szinteken történő üzemelés meglehetősen eltér a 0000-0111 szinteken megismert működéstől, amennyiben a szintről-szintre átmenetek a lerakott rutinok felrakás-típusú vezérlésé­vel összhangban lévő normál sorrendben történik. Egy másik rutinhoz történő ugrásnál, amelyről visszatérés szükséges, az érintett és LINK mikroprogram utasítás dekódolásakor a mikroprogram szint 55 reverzibilis számlálóhoz vezetendő számlálóimpulzust hoz létre, hogy ezáltal biztosítsa a következő magasabb elsőbb­ségi szintet, amely kiválasztja a megfelelő mikroprog­ram címet és üzemi számíálóregisztereket ahhoz a beíráshoz, amelynek az indulási címét a LINK utasítás íja elő. Egy ugrásról való visszatérés esetében az érintett EXIT mikroprogram utasítás egy ellentétes irányú számimpulzust hoz létre, amelyet az 55 reverzibilis számlálóhoz vezetünk, hogy ezáltal a következő alacsonyabb elsőbbségű mikroprogram dmregiszter kiválasztásával a feldolgozást ezen szin­ten felújítsuk. Minden átmenetná a feldolgozási folyamat úgy folytatódhat, hogy megfeleljen a C és K üzemi regiszterek változásainak, és az összehasonlítás, a rutin és indikátor 113 tár a fentiekben vázolt átmenet kezdetétől számított két processzorciklus eltelte után következik be. Világos, hogy legfeljebb nyolc lerakott ugrást helyezhetünk el ezen rendszer felhasználásával, ha az időráfordításra, a tárolásra és az áttárazásra követelményt nem támasztunk. Az ugrási utasításokat olyan módon szimulálhat­juk, hogy a mindenkori pillanatnyi szint mikroprog­ram címregiszterét egy kiszámított címmel túlírjuk. Ez magában foglalja a mikroprogram címregisztemek operandus rendeltetéseként történő kinyüvánítását, és az utasítást feltétel nélküliként fogjuk kezelni, amikor a folyó sorozatban érvénytelenítést nem végzünk, és így a processzorciklusban veszteséget okozunk. Annak oka, hogy a főtár hozzáférése érvénytelení­tést igényelhet, ha a hozzáférés a fővezetéknek 0000-0111 szintű megszakítása során következik be, abban rejlik, hogy a főtár bemeneti és kimeneti regisztereit a különböző mikroprogram szinteken nem ismételjük meg, és kihasználjuk a tárvezérlés szervezé­sének közösítéséből származó előnyöket. A 4. ábrán a 12 főtár alapvető elrendezését tüntettük fel, amelyben a tárhoz beírandó szavak részére 114 regisztert, a tárból kiolvasandó szavak részére 115 regisztert alkalmazunk és jelöltük a 66 multiplexer kimenetéről származó tár 17 cimutat, (lásd 2. ábra) és a 66 multiplexer kimenete akkor kerül ilyen áÚapotba, amikor 70 bemenete a 12 főtár címének 71 számlálójához kapcsolódik. Annak biztosítása céljából, hogy a 114, 115 regiszterek valamint a 71 számláló tartalma az éppen folyó szinten végzett mikroprogram művelet során történő 5 10 15 20 25 30 35 40 45 50 55 60 65

Next

/
Oldalképek
Tartalom