187964. lajstromszámú szabadalom • Áramköri elrendezés mikroprogram-megszakítás megvalósítására
1 187 964 2 A találmány szerinti megoldás olyan áramköri elrendezés, amely nagysebességű mikroprograminegszakitás megvalósítására szolgál. Ismert módon tartalmaz SEQUENCER áramkört, mikroprogram tárat, PIPE LINE regisztert, címmeghatározó áramkört, feltétel multiplexert, bitenként törölhető regisztert, prioritás áramkört és megszakítás dekódolót. Az áramköri elrendezésre jellemző, hogy tartalmaz továbbá főprogram-megszakítás multiplexert, amelynek első bemenete STACK töltés huzalozott fix kódjára, vezérlő második bemenete ÉS-kapu kimenetére, a SEQUENCER áramkör harmadik bemenetére és inverter bemenetére, kimenete a SEQUENCER áramkör következő ciklust meghatározó vezérlő első bemenetére, harmadik bemenete a címmeghatározó áramkör első kimenetére van kötve. Az ÉS-kapu egyik bemenete a prioritás áramkör közös kimenetére, másik bemenete a PIPE LINE regiszter megszakítás megkezdését engedélyező bit ötödik kimenetére csatlakozik. Az inverter kimenete a megszakítás dekódoló háromállapotú kimenetét vezérlő bemenetére, a megszakítás dekódoló leválasztható háromállapotú kimenete megszakítási címző vezetéken keresztül a SEQUENCER áramkör kimenetére és a mikroprogram tár bemenetére csatlakozik. Az ismert és a találmány szerinti megoldást rajzok alapján ismertetjük, melyek a következők: az 1. ábra az ismert megoldás tömbvázlatát, a 2. ábra a találmány szerinti megoldás tömbvázlatát ábrázolja. A 2. ábrán látható áramköri elrendezés tartalmaz 1 SEQUENCER áramkört, amelynek második 112 bemenete 3 PIPE LINE regiszter ugráscímet tartalmazó b, bitcsoport első 32 kimenetére, 113 kimenete 2 mikroprogram tár 21 bemenetére van kötve. A 3 PIPE LINE regiszter 31 bemenete a 2 mikroprogram tár 22 kimenetére, következő ciklust meghatározó vezérlő b2 bitcsoport második 33 kimenele a 4 címmeghatározó áramkör első 41 bemenetére, feltételt kiválasztó b3 bitcsoport harmadik 34 kimenete 5 feltétel multiplexer 51 bemenetére, megszakítás végét vezérlő b4 bit negyedik 34 kimenete megszakítás kéréseket tároló, 6 bitenként törölhető regiszter törlő 61 bemenetére, a 4 címmeghatározó áramkör második 42 bemenete az 5 feltétel multiplexer 52 kimenetére csatlakozik. Az 5 feltétel multiplexernek feltétel Fl, F2, ... Fm bemenetei, a 6 bitenként törölhető regiszternek interrupt INT RQ1, INT RQ2, ... INT RQ n bemenetei vannak. A 6 bitenként törölhető regiszter a sorbakapcsolódó 7 prioritás áramkörön keresztül a 8 megszakítás dekódolóra van kötve. Az áramköri elrendezésre jellemző, hogy tartalmaz továbbá 9 főprogram-megszakítás multiplexert, amelyek első 91 bemenete STACK töltés huzalozott fix k kódjára, vezérlő második 92 bemenete 10 ÉS-kapu 101 kimenetére, az 1 SEQUENCER áramkör harmadik 114 bemenetére és 11 inverter bemenetére, 93 kimenete az 1 SEQUENCER áramkör következő ciklust meghatározó vezérlő első 111 bemenetére, harmadik 94 bemenete a 4 címmeghatározó áramkör 43 kimenetére van kötve. A 10 ÉS-kapu egyik 102 bemenete a 7 prioritás áramkör közös 71 kimenetére, másik 103 bemenete a 3 PIPE LINE regiszter megszakítás megkezdését engedélyező b5 bit ötödik 36 kimenetére, a 11 inverter kimenete a 8 megszakítás dekódoló háromáliapoti kimenetét vezérlő 82 bemenetére, a 8 megszakítás dekódoló leválasztható háromállapotú 81 kimeneté 1 megszakítási címző vezetéken keresztül az 1 SEQUENCER áramkör 113 kimenetére és a 2 mikroprogram tár 21 bemenetére csatlakozik. A találmány szerinti áramköri elrendezés egy előnyös kiviteli alakjánál az 1 SEQUENCER áramkör AMD 2911 típusú IC-kből, a 2 mikroprogram tár SN 74S472N típusú áramkörökből, a 3 PIF E LINE regiszter SN74LS374N típusú IC-kből, a 4 címmeghatározó áramkör AMD 29811 típusú IC-hől, az 5 feltétel multiplexer SN74LS154N típusú IC-kből, a 6 bitenként törölhető regiszter SN74LS74N típusú D flip-flopokbói és SN 74LS08N, valamint SN74LS00N típusú alapkapui ból, a 7 prioritás áramkör SN74278N típusú IC kből, a 8 megszakítás dekódoló SN74LS04N és SN74LS30 típusú IC-kből, a 9 főprogram-megszakítís multiplexer SN74LS257N típusú IC-kből épíil fel. Az áramköri elrendezés működése a következő: alapállapotban, ha nincs megszakítás-kérés, vagy ne n engedélyezett a megszakítás, a 10 ÉS-kapu 101 khnenete a 9 főprogram-megszakítás multiplexeren keresztül összeköti a 4 címmeghatározó áramkör 43 kimenetét az 1 SEQUENCER áramkör első 111 bemenetével. Ilyenkor a 3 PIPE LINE regiszterben az épp végrehajtás alatt levő mikroutasítás következő ciklust meghatározó vezérlő b2 bitcsoportja a 4 címmeghatározó áramkörön keresztül jutva az ismert megoldásnak megfelelően működteti az 1 SEQUENCER áramkört és a 2 mikroprogram tárat. Ebben az esetben a 8 megszakítás dekódoló 81 kimenete nagyimpedanciás, a következő mikroutasítás címe az 1 SEQUENCER áramkörön keresztül kerül a 2 mikroprogram tár címző 21 bemenetére. Ha beérkezett egy, vagy több megszakítás-kérés a föprogram egy adott mikroutasításának végrehajtása kezdetéig és ez a mikroutasítás b5 = 1 állapotú megszakítás engedélyező b5 bitet tartalmaz, akkor a 7 prioritás áramkör közös 71 kimenete jelzi, hogy történt megszakítás-kérés, s a 8 megszakítás dekódoló felé pedig a legnagyobb prioritású negszakítás-kérés kódja kerül továbbításra, amely ezt a kódot a megszakítási feladat mikroprogramja első utasításának címére kódolja át. Ennek a mikloutasításnak a címe a 8 megszakítás dekódoló 81 kimenetéről jut a 2 mikroprogram tár címző 21 bemenetére. A 10 ÉS-kapu 101 kimenetén megjelelő logikai „1” szint a 11 inverteren keresztül ilyenkor a 8 megszakítás dekódoló 82 bemenetén át iktívvá teszi a leválasztható háromállapotú 81 kimenetét, az 1 SEQUENCER áramkör 113 kimenetét pedig nagyimpedanciás állapotba vezérelve lezárja. Még a főprogram ezen utasításának végrehajtása idején megjelenik a 2 mikroprogram tár 22 kimenetén, azaz a 3 PIPE LINE regiszter 31 bemenetén a következő mikroutasítás kódja, amely már a meg-5 10 15 20 25 30 35 40 45 50 55 60 65 3