CS218257B1 - Zapojení pro provádění operace přerušení - Google Patents

Zapojení pro provádění operace přerušení Download PDF

Info

Publication number
CS218257B1
CS218257B1 CS473680A CS473680A CS218257B1 CS 218257 B1 CS218257 B1 CS 218257B1 CS 473680 A CS473680 A CS 473680A CS 473680 A CS473680 A CS 473680A CS 218257 B1 CS218257 B1 CS 218257B1
Authority
CS
Czechoslovakia
Prior art keywords
output
input
instruction
coupled
register
Prior art date
Application number
CS473680A
Other languages
English (en)
Inventor
Jiri Smisek
Original Assignee
Jiri Smisek
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Jiri Smisek filed Critical Jiri Smisek
Priority to CS473680A priority Critical patent/CS218257B1/cs
Publication of CS218257B1 publication Critical patent/CS218257B1/cs

Links

Landscapes

  • Bus Control (AREA)

Abstract

Vynález se týká oboru samočinné počítače— spojení procesoru s přídavnými zařízeními. Zapojení řeší zrychlení počáteční a konečné fáze operace přerušení v systému se společnou asynchronní* 1 sběrnicí. Řešení se dosahuje spojením přidělovacích obvodů přídavných zařízení přes vysílač s nejvyšší váhovou linkou datové sběrnice, jejíž hladina se snímá při přerušení do instrukčního registru procesoru. Nejvyšší váhový bit výstupu tohoto registru nastavuje podmínky pro přechod z prvního taktu. řadiče procesoru přímo do čtvrtého taktu; Při ukončení operace přerušení ise v časově poslední instrukci obslužného programu dekóduje čtrnáctý bit výstupu instrukčního registru. Na základě jeho jedničkového stavu dojde ke čtení návratové adresy ze zásobníkové paměti a k jejímu uložení do čítače instrukcí. Možnost použití je pouze v uvedeném oboru.

Description

(54) Zapojení pro provádění operace přerušení
Vynález se týká oboru samočinné počítače— spojení procesoru s přídavnými zařízeními.
Zapojení řeší zrychlení počáteční a konečné fáze operace přerušení v systému se společnou asynchronní* 1 sběrnicí.
Řešení se dosahuje spojením přidělovacích obvodů přídavných zařízení přes vysílač s nejvyšší váhovou linkou datové sběrnice, jejíž hladina se snímá při přerušení do instrukčního registru procesoru. Nejvyšší váhový bit výstupu tohoto registru nastavuje podmínky pro přechod z prvního taktu. řadiče procesoru přímo do čtvrtého taktu; Při ukončení operace přerušení ise v časově poslední instrukci obslužného programu dekóduje čtrnáctý bit výstupu instrukčního registru. Na základě jeho jedničkového stavu dojde ke čtení návratové adresy ze zásobníkové paměti a k jejímu uložení do čítače instrukcí. Možnost použití je pouze v uvedeném oboru.
Předmětem vynálezu je zapojení pro provádění operace přerušení činnosti procesoru přídavným zařízením v systému mialého počítače, pracujícím se společnou asynchronní sběrnicí. Přitom řeší zrychlení zejména počáteční a závěrečné fáze.
Režim přerušení je jednou z nejpoužívanějších forem spolupráce přídavného zařízení a procesoru. Procesor provádí sled instrukcí, který předepisuje program a přídavné zařízení žádá o obsluhu prostřednictvím signálu na lince žádostí. V případě kladného vyřízení žádolsti procesor vysílá prioritní signál pro přídavné zařízení, na jehož základě proběhne sekvence obsazení sběrnice žádajícím přídavným zařízením. U minipočítačů, které pracují s popsaným spojovacím Systémem', je proces přerušení řešen tak, že přídavné zařízení po obsazení sběrnice vysílá adresu vektoru přerušení, která se v procesoru ukládá do adresního registru. Tento registr islouží k adresaci jak istrukcí, tak i dat v operační paměti. Na táto adrese je uložený mimo jiné nový podmínkový kód a na následující adrese je uložena počáteční adresa obslužného programu pro příslušné přídavné zařízení. Tento program je pak ukončen instrukcí návratu do přerušeného programu. Procesor lze však řešit také tak, že čítač instrukcí je realizován jinými obvody než adresní registr dat. Toto řešení má tu výhodu, že je možné dříve spustit výběr další instrukce. Adresu vektoru přerušení posílá přídavné zařízení přes instrukční registr procesoru do· čítače instrukcí na základě inicializace instrukce skok do podprogramu. V dosud známých zapojeních popsaného typu je prováděna počáteční fáze přerušení v sedmi taktech řadiče procesoru.
(Obvodové operace přerušení, s ohledem na zmenšení počtu taktů řadiče v počáteční fázi, poskytuje zapojení pro provádění operace přerušení podle vynálezu, jehož podstatou je, že nejvyšší váhový bit výstupu instrukčního registru je spojen s prvním vstupem generátoru ovládacích signálů a výstup prvního vysílače přídavného zařízení je přeš jeho druhý výstup spojen s nejvyšší váhovou linkou datové sběrnice.
Výhodou 'tohoto zapojení je možno pomocí nejvyššího váhového bitu, vyslaného z přídavného zařízení, řídit generátor ovládacích signálů tak, že během pěti popřípadě i čtyřech taktů řadiče procesoru se cílová adresa vyslaná na datovou sběrnici zapíše do čítače instrukcí, včetně uložení návratové adresy do zásobníkové paměti.
Na připojených výkresech, obr. 1 a 2, je zapojení podle vynálezu, kde je uvedené vzájemné propojení jednotlivých bloků společně s jejich označením,.
Nultá až třináctá linka 1 datové sběrnice 28 je spojena s odpovídajícími váhovými bity prvního vstupu 80 instrukčního registru 8 a prvního vstupu 180 datového přijímače 16, přičemž linky datové sběrnice 1, odpovídající adrese vektoru přerušení přídavného zařízení 7, jsou spojeny s prvním výstupem 73 přídavného zařízení 7. Například, jestliže adresa vektoru přerušení je 130 vyjádřeno v osmičkovém kódu, potom je první výstup 70 spojen s váhovými linkami 5, 6, 8 datové sběrnice 28. Je to dáno umístěním pole adresy v instrukci skok do podprogramu a definicí provedení této instrukce, viz popis funkce zapojení. Čtrnáctá linka 2 datové sběrnice 28 je spojena s druhým vstupem 161 datového přijímače 16 a s druhým vstupem 81 instrukčního registru 8. Nejvyšší váhová linka 3 datové sběrnice 28 je spojena se třetím vstupem 82 instrukčního registru 8, se třetím vstupem 162 datového přijímače 16 a s druhým výstupem 71 přídavného zařízení 7. Linka 4 žádostí je spojena se třetím výstupem 72 přídavného zařízení 7 a s prvním vstupem 120 prioritního bloku 12. Synchronizační linka 5 je spojena se čtvrtým výstupem 73 přídavného zařízení 7 a s prvním vstupem 270 prvního hradla 27. Blokovací linka 6 je spojena s pátým výstupem 74 přídavného zařízení 7 a sdruhým vstupem! 121 prioritního bloku 12. Výstup 84 instrukčního registru 8 je spojen se vstupem 150 druhého hradla 15, se vstupem 103 prvního dekodéru 10 a jeho nejvyšší váhový bit je zapojen na první vstup 110 generátoru 11 ovládacích signálů. První výstup 102 prvního dekodéru 10 je spojen s druhým vstupem 111 generátoru 11 ovládacích signálů a s prvním· vstupem 240 druhého dekodéru 24. Druhý výstup 101 prvního dekodéru 10 je spojen s nulovacím vstupem 250 nejnižšího váhového bitu čítače 25 instrukcí, jehož nastavovací vstup 251 je zapojen na výstup 242 druhého dekodéru 24. První výstup 112 generátoru 11 ovládacích signálů je spojen s hradlovacím vstupem 164 datového přijímače 16. Druhý výstup 113 generátoru 11 ovládacích signálů je spojen s řídicím vstupem 151 druhého hradla 15. Třetí výstup 115 generátoru 11 ovládacích signálů je spojen s hladinovým hodinovým vstupem 83 instrukčního registru 8. Třetí vstup 114 generátoru 11 ovládacích signálů je spojen s výstupem 142 prvního klopného obvodu 14, jehož nastavovací Vstup 140 je spojen s výstupem 231 zpožďovacího členu 23 a nulovací vstup 141 je spojen se čtvrtým výstupem 116 generátoru 11 ovládacích signálů. Vstup 230 zpožďovacího členu 23 je zapojen na výstup 262 třetího hradla 26, jehož první vstup 260 je spojen s výstupem 131 druhého klopného obvodu 13 a druhý vstup 261 je zapojen na výstup 292 čtvrtého hradla 29. Druhý vstup 291 čtvrtého hradla 29 je spojen s prvním výstupem 122 prioritního bloku 12, jehož druhý výstup 123 je spojen s prioritním výstupem 90 procesoru 9 a s nulovacím vstupem klopného obvodu 13. První vstup 290 čtvrtého hradla 29 je spojen s výstupem 272 prvního· hradla 27. Výstup 152 druhého hradla 15 je spojen s výstupem 163 datového přijímače 16, s výstupem! 171 zápisníkové paměti 17, se vstupem 190 adresního registru 19 a s prvním vstupem 180 centrálního přepínače 18. Výstup 191 adresního· registru 19 je spojen s druhým vstupem 181 centrálního přepínače 18, jehož třetí vstup 182 je svým· nejvyšším váhovým hitem spojen s výstupem 252 nejňižšího váhového bitu čítače 25 instrukcí, a jehož výstup 183 je zapojen nejvyšším váhovým bitem na druhý vstup 241 druhého dekodérů 24 a dalšími bity je spojen se vstupem 200 odpovídajících bitů čítače 20 instrukcí, tj. nultý bit výstupu 183 je spojen s prvním bitem čítače 20 instrukcí atd. Dále je výstup 183 spojen se vstupem 210 operačního modulu 21, jehož výstup 211 je spojen se vstupem 170 zápisníkové paměti 17 a se vstupem 222 datového vysílače 22. Prioritní výstup 90 je spojen s prioritním vstupem 75 přídavného' zařízení 7. Výstup 201 čítače 20 instrukcí je spojen s odpovídajícími bity třetího vstupu 182 centrálního· přepínače 18, tj. první bit čítače 20 instrukcí je spojen s nultým bitem třetího vstupu 182 atd. Výstup 223 datového vysílače 22 je spojen se čtrnáctou linkou 2 a výstup 224 je spojen s linkami 1.
Popis obr. 2: Prioritní vstup 75 přídavného zařízení 7 je spojen se vstupem 310 přijímače 31, jehož první výstup 311 je spojen se vstupem 300 prioritního bloku 30 a se vstupem 320 integračního členu 32, a jehož druhý výstup 312 je spojen s druhým vstupem 361 pátého hradla 36. Výstup 321 integračního členu 32 je spojen s prvním vstupem 330 šestého hradla 33, jehož druhý vstup 331 je zapojen na výstup 301 prioritního· bloku 30, a jehož výstup 332 je spojen s nulovacím vstupem 340 třetího· klopného obvodu 34. Výstup 342 třetího obvodu 34 je spojen se vstupem 350 druhého vysílače 35 a s prvním vstupem 360 pátého hradla 36, jehož výstup 362 je zapojen na nulovací vstup 370 čtvrtého klopného obvodu 37. Výstup 372 čtvrtého klopného obvodu 37 je spojen se vstupem 380 třetího vysílače 38, se vstupem 390 čtvrtého vysílače 39 a se vstupem 400 prvního vysílače 40. Výstup 351 druhého· vysílače 35 je spojen s pátým výstupem 74 přídavného zařízení 7, jehož čtvrtý výstup 73 je zapojen na výstup 381 třetího vysílače 38, druhý výstup 71 je spojen s výstupem 401 prvního vysílače 40 ,a první výstup 70 je spojen s výstupem 391 čtvrtého vysílače 39.
Funkce zapojení podle obr. 1 a 2 je následující: Instrukce skoku je šestnáctibitová a má pro cílovou adresu vyhrazeny určité bity, a ,to nultý až třetí bit pro adresu stránky v operační paměti a čtvrtý až jedenáctý bit pro adresu uvnitř stránky. Čítače 20, 25 instrukcí jsou připojeny na adresní sběrnici •tak, že nejnižší váhový bit čítače 25 je spojen s první linkou adresní sběrnice afid. Z toho vyplývá, že adresuje každou sudou slabiku, tj. adresuje instrukční slova, narozdíl cd adresního registru 19, jehož nultý bit je spojen s nultou linkou adresní sběrnice, tj. adresuje datové slabiky. Přídavné zařízení 7 žádá o obsluhu aktivním signálem z třetího výstupu 72 na lince 4 žádostí. Signály na této lince se asynchronně snímají do prvního vstupu 120 prioritního bloku 12, kde se rozhoduje, zda procesor 9 bude plnit další instrukci v hlavním programu, nebo zda dojde k přerušení. V případě, že dojde k přerušení, vysílá procesor 9 z výstupu 90 prioritní signál, který se šíří na prioritní vstup 75 přídavného zařízení 7. Odtud projde přes přijímač 31 na vstup 300 prioritního bloku 30. Zde se rozhoduje, zda na prioritní signál reflektuje přídavné zařízení 7, nebo zda se propustí k dalšímu v pořadí přídavnému zařízení. V uvažovaném případě žádá přídavné zařízení 7, tudíž prioritní signál přeruší svoje další šíření na šestý výstup 76, který je spojen s prioritním výstupem 303 prioritního· bloku 30. Na výstupu 301 se objeví aktivní signál, který se dostane na druhý vstup 331 šestého hradla 33, na jehož prvním vstupu 330 se objeví se zpožděním časové konstanty integračního členu 32 rovněž aktivní signál. Spodní hladina na nulovacím1 vstupu 340 třetího klopného obvodu 34 způsobí horní hladinu signálu ná vstupu 350 druhého vysílače 35. Z jeho výstupu 351 se pak šíří aktivní hladina po blokovací lince 0 na druhý vstup 121 prioritního bloku 12. Na jeho základě se přestane vysílat signál z prioritního výstupu 90 procesoru 9 a jeho nepřítomnost způsobí na druhém výstupu 312 přijímače 31 aktivní signál. Na prvním vstupu 300 i na druhém vstupu 361 jsou nyní aktivní hladiny a na nulovacím vstupu 370 čtvrtého klopného obvodu 37 se objeví spodní úroveň. Na výstupu 372 je následkem toho· horní hladina, která se šíří přes třetí vysílač 38 po synchronizační lince 5, přes první vysílač 40 po největší váhové lince 3 datové sběrnice 28 a přes čtvrtý vysílač 39 po příslušných linkách 1 datové sběrnice 28. Aktivním signálem na nastavovacím vstupu 341 se stává výstup 342 třetího klopného obvodu 34 neaktivním. Oscilátor v generátoru ovládacích signálů 11 je zastaven, stanový registr řadiče procesoru 9 je v prvním taktu a aktivním signálem na hladinovém hodinovém vstupu 83 je instrukční registr 8 ve stavu snímání. Nejvyšší váhový bit výstupu 84 instrukčního registru 8 má aktivní úroveň, která na prvním vstupu 110 generátoru 11 ovládacích signálů nastaví takové podmínky, že z prvního taktu přejde řadič přímo do čtvrtého taktu. Děje se tak aktivním signálem na třetím vstupu 114 z výstupu 142 prvního klopného obvodu 14. Signál na synchronizační lince 5 se přes první hradlo 27 dostane na první vstup 290 čtvrtého hradla 29. Na hradlovacím vstupu 271 je nastavena propustná funkce. Na druhém vstupu 291 čtvrtého hradla 29 je aktivní signál od okamžiku, kdy se prioritní blok 12 rozhodl pro proces přerušení. Během vysílání prio218257 řitního signálu z druhého výstupu 123 prioritního bloku 12 se výstup 131 druhého klopného obvodu 13 nastaví na takovou hladinu, aby aktivní signál na druhém vstupu 281 prošel na vstup 230 zpožďovacího členu 23 a odtud na nastavovací vstup 140 prvního klopného obvodu 14. Přechodem řadiče do čtvrtého taktu se nuluje signálem na nulovacím vstupu 132 druhý klopný obvod 13, signálem na nulovacím vstupu 141 první klopný obvod 14, instrukční registr 8 se uzavře a procesor 9 vyšle povel do přídavného zařízení 7 pro shození čtvrtého klopného obvodu 37 přes nastavovací vstup 371. V tomto taktu se obsah registru ukazovátka zásobníku v zápisníkové paměti 17 přesune přes první vstup 180 centrálního přepínače 18 na vstup 210 operačního modulu 21, kde je nastavena operace odčítání dvojky. Takto zmenšený obsah se opět zapíše do registru ukazovátka zásobníku. Pak přejde řadič do pátého taktu, v němž se tento obsah uloží do adresního registru 19. Struktura procesoru 9 dovoluje i přechod ze čtvrtého taktu přímo do šestého taktu. V něm dojde k přesunu obsahů čítačů 20, 25 instrukcí přes třetí vstup 182 centrálního přepínače 18 do datového registru operačního modulu 21. Do tohoto taktu lze přesunout činnost z pátého taktu. Ze šestého taktu pak přejde řadič do sedmého taktu, ve kterém se nuluje druhý klopný obvod 13 signálem na vstupu 132, návratová adresa se vysílá přes datový vysílač 22 aktivním signálem na vstupu 221 na datovou sběrnici 28, odkud se ukládá do zásobníkové paměti na adresu, danou obsahem adresního registru 19. Zároveň se signálem na řídicím vstupu 151 druhého hradla 15 toto hradlo otevře a příslušné bity instrukce, odpovídající cílové adrese, se přes první vstup 180 centrálního přepínače 18 přesunou na vstup 200 čítače instrukcí 20, kam se uloží jako adresa vektoru přerušení. Současně spodní hladinou na nulovacím vstupu 250 se nuluje nejnižší váhový bit čítače 25 instrukcí. V případě, že další žádost o obsluhu není, v tomto taktu se z výstupu 122 prioritního bloku 12 zablokuje neaktivním signálem druhý vstup 291 čtvrtého hradla 29. Na konci obslužného programu se nachází instrukce s jedničkovým příznakem ve čtrnáctém bitu. Stav tohoto bitu se sejme v prvním taktu ze čtrnácté linky 2 datové sběrnice 28 do instrukčního registru 8, dále účastní dekódování v prvním dekodéru 10 a aktivní signál z prvního výstupu 102 se šíří na první vstup 240 druhého dekodéru 24. Ve druhém až čtvrtém taktu se provádí příslušná instrukce a v pátém taktu se obsah registru ukazovátka zásobníku v zápisníkové paměti 17 uloží do adresního registru 19. V šestém taktu se tento obsah uloží přes první vstup 180 centrálního přepínače 18 do datového registru operačního modulu 21. V sedmém taktu se signálem na hradlovacím vstupu 184 otevře datový přijímač 16 a návratová adresa se říší ze zásobníkové paměti adresované obsahem adresního registru 19 po datové sběrnici 28, přes první vstup 180, na vstupy 29B a 241. Současně se obsah datového registru v operačním modulu 21, kde se nastaví operace přičtení dvojky, uloží zpět zvětšený o dva do registru ukazovátka zásobníku. Příslušné bity návratové adresy se zapíší do čítače 20 instrukcí a hladina nejvyššího váhového bitu na druhém vstupu 241 se na základě aktivního signálu na ovládacím vstupu 243 projeví spodní hladinou bud na výstupu 242 nebo na výstupu 244, který je spojen s nulovacím vstupem 250. V případě horní hladiny na druhém vstupu 241 se nejnižší váhový bit čítače 25 instrukcí nastaví do jedničkového stavu. V opačném případě se nuluje.
Možnost použití uvedeného zapojení je v systému, který využívá popsaný způsob spojení procesoru s přídavnými zařízeními.

Claims (4)

  1. PŘEDMET
    1. Zapojení pro provádění operace přerušení vyznačující se tím, že nejvyšší váhový bit výstupu (84) instrukčního registru (8) je spojen s prvním vstupem (110) generátoru (11) ovládacích signálů a výstup (401) prvního vysílače (40) přídavného zařízení (7) je přes jeho druhý výstup (71) spojen s nejvyšší váhovou linkou (3) datové sběrnice (28 j.
  2. 2. Zapojení podle bodu 1 vyznačující se tím, že vstup (400) prvního vysílače (40] je spojen s výstupem (372) čtvrtého klopného obvodu (37), na jehož nulovací vstup (370) je připojen výstup (362) pátého hradla (36), přičemž jeho první vstup (360) je spojen s výstupem (342) třetího klopného obvodu (34) a jeho druhý vstup (361) je zapojen na druhý výstup (312) přijímače (31), jehož výstup (311) je spojen se vstupem
    VYNÁLEZU (320) integračního členu (32) a výstup (321) integračního členu (32) je spojen s prvním vstupem (330) šestého hradla (33), jehož výstup (332) je spojen s nulovacím vstupem (340) třetího klopného obvodu (34).
  3. 3. Zapojení podle bodu 1 vyznačující se tím, že druhý vstup (111) generátoru (11) ovládacích signálů je spojen s prvním výstupem (102) prvního dekodéru (10) a s prvním vstupem (240) druhého dekodéru (24), druhý výstup (101) prvního dekodéru (10) je spojen s výstupem (244) druhého dekodéru (24) a s nulovacím vstupem (250) nejnlžšího váhového bitu čítače (25) instrukcí, jehož nastavovací vstup (251) je spojen s výstupem (242) druhého dekodéru (24), na jehož druhý vstup (241) je za218257 pojen nejvyšší váhový bit výstupu (183) centrálního přepínače (18).
  4. 4. Zapojení podle bodu 1 vyznačující se tím, že čtvrtý výstup (116) generátoru (11) ovládacích signálů je spojen s nulovacím vstupem (141) prvního klopného obvodu (14), jehóž nastavovací vstup (140) je spojen s výstupem (231) zpožďovacího členu (23) a vstup (230) zpožďovacího členu (23) je spojen s výstupem (262) třetího hradla (26), jehož druhý vstup (261) je zapojen na výstup (292) Čtvrtého hradla (29).
CS473680A 1980-07-03 1980-07-03 Zapojení pro provádění operace přerušení CS218257B1 (cs)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CS473680A CS218257B1 (cs) 1980-07-03 1980-07-03 Zapojení pro provádění operace přerušení

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CS473680A CS218257B1 (cs) 1980-07-03 1980-07-03 Zapojení pro provádění operace přerušení

Publications (1)

Publication Number Publication Date
CS218257B1 true CS218257B1 (cs) 1983-02-25

Family

ID=5390775

Family Applications (1)

Application Number Title Priority Date Filing Date
CS473680A CS218257B1 (cs) 1980-07-03 1980-07-03 Zapojení pro provádění operace přerušení

Country Status (1)

Country Link
CS (1) CS218257B1 (cs)

Similar Documents

Publication Publication Date Title
US4181934A (en) Microprocessor architecture with integrated interrupts and cycle steals prioritized channel
CA1081857A (en) Apparatus for processing interrupts in microprocessing systems
EP0166272B1 (en) Processor bus access
US4275440A (en) I/O Interrupt sequencing for real time and burst mode devices
US4378589A (en) Undirectional looped bus microcomputer architecture
EP0203304B1 (en) Data processor controller
EP0180476B1 (en) Microprogramme sequence controller
EP0172038B1 (en) Information processor
CN1570907B (zh) 多处理器系统
US4268908A (en) Modular macroprocessing system comprising a microprocessor and an extendable number of programmed logic arrays
US4339793A (en) Function integrated, shared ALU processor apparatus and method
US4764865A (en) Circuit for allocating memory cycles to two processors that share memory
EP0253970A2 (en) Multi-channel shared resource processor
US5455918A (en) Data transfer accelerating apparatus and method
US4451882A (en) Data processing system
CS218257B1 (cs) Zapojení pro provádění operace přerušení
JPS6242306B2 (cs)
JPH0227696B2 (ja) Johoshorisochi
JP3077807B2 (ja) マイクロコンピュータシステム
JPS6315628B2 (cs)
US3247492A (en) Automatic memory start circuit for asynchronous data processing system
CA1091359A (en) Unidirectional looped busses microprocessor
SU1341636A1 (ru) Устройство дл прерывани программ
SU1116432A1 (ru) Микропрограммный процессор со средствами быстрого прерывани
KR950010947B1 (ko) 버스 프로토콜 맵핑 회로