JPS634218B2 - - Google Patents
Info
- Publication number
- JPS634218B2 JPS634218B2 JP6117881A JP6117881A JPS634218B2 JP S634218 B2 JPS634218 B2 JP S634218B2 JP 6117881 A JP6117881 A JP 6117881A JP 6117881 A JP6117881 A JP 6117881A JP S634218 B2 JPS634218 B2 JP S634218B2
- Authority
- JP
- Japan
- Prior art keywords
- register
- input
- interrupt
- bits
- contents
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired
Links
- 238000000034 method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Description
【発明の詳細な説明】
本発明は電子計算機の入出力割込みの制御方式
に関する。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a method for controlling input/output interrupts of an electronic computer.
入出力装置の割込み制御の最も簡単な方式は、
予め決めた入出力装置の優先順位にしたがい、割
込み要因を生じた入出力装置のうちで最も優先順
位の高い入出力装置の割込みを発生させるやり方
である。しかしこの方式では、優先順位の高い入
出力装置の割込み要因が連続的に生じると、優先
順位の低い入出力装置が長時間にわたつて割込み
保留状態におかれ、いわゆる沈み込み現象が起き
てしまう。 The simplest method for controlling input/output device interrupts is
This is a method of generating an interrupt for the input/output device with the highest priority among the input/output devices that caused the interrupt, according to predetermined priorities of the input/output devices. However, with this method, when interrupt factors for high-priority input/output devices occur continuously, lower-priority input/output devices are left in an interrupt pending state for a long time, resulting in a so-called sinking phenomenon. .
この現象を避けるための考え方としては、次の
2つがある。1つは、先入れ先出し方法である。
すなわち、割込み保留の入出力装置のアドレスを
テーブルに順次格納し、このテーブルに先に入れ
たアドレスから順番に割込みを発生させる。もう
1つは、優先順位にしたがつて全入出力装置の割
込み保留状態をチエツクしてゆくが、ある入出力
装置の割込みを発生したときは、その入出力装置
を除外してその次以降の入出力装置の割込み保留
状態をチエツクする方法である。 There are two ways of thinking to avoid this phenomenon: One is the first-in, first-out method.
That is, the addresses of input/output devices with pending interrupts are stored in a table sequentially, and interrupts are generated in order from the address entered in the table first. The other method is to check the interrupt pending status of all input/output devices according to the priority order, but when an interrupt occurs for a certain input/output device, that input/output device is excluded and the next and subsequent input/output devices are This is a method of checking the interrupt pending state of an input/output device.
これら2つの考え方は原理的には難かしくはな
いが、具体的な制御は複雑でかなりのハードウエ
アを伴なうという問題があつた。 Although these two ideas are not difficult in principle, there is a problem in that concrete control is complicated and requires a considerable amount of hardware.
したがつて本発明の目的は、簡単な制御機構に
よつて前述の沈み込み現象などを回避できる入出
力割込み制御方式を提供することにある。 SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide an input/output interrupt control method that can avoid the above-mentioned sinking phenomenon using a simple control mechanism.
しかして本発明による入出力割込み制御方式は
第1と第2のレジスタを用いる。第1のレジスタ
は割込み保留状態のフラグとして用いられるもの
で、入出力装置に割込み要因が生ずると、その入
出力装置に対応するビツトが“1”(または
“0”)にセツトされる。第2のレジスタはいわゆ
る割込みレジスタとして作用し、初期設定時およ
び全ビツトが“0”(または“1”)になつたとき
に第1のレジスタの内容が転送される。この第2
のレジスタの“1”(または“0”)のビツトに対
応する入出力装置(割込み保留中装置)の割込み
を優先順位にしたがつて順次発生させる。これと
同時に、割込みを発生させた入出力装置に対応す
る第1と第2のレジスタのビツトをリセツトす
る。 Thus, the input/output interrupt control method according to the present invention uses first and second registers. The first register is used as an interrupt pending state flag, and when an interrupt factor occurs in an input/output device, the bit corresponding to that input/output device is set to "1" (or "0"). The second register acts as a so-called interrupt register, and the contents of the first register are transferred during initialization and when all bits become "0" (or "1"). This second
The interrupts of the input/output devices (interrupt pending devices) corresponding to the "1" (or "0") bit of the register are sequentially generated in accordance with the priority order. At the same time, the bits in the first and second registers corresponding to the input/output device that generated the interrupt are reset.
以上に述べたような特徴を有する本発明による
入出力割込み制御方式の一実施例について、図面
を参照して以下に説明する。 An embodiment of the input/output interrupt control method according to the present invention having the above-mentioned features will be described below with reference to the drawings.
第1図は本発明の一実施例を示すブロツク図で
ある。 FIG. 1 is a block diagram showing one embodiment of the present invention.
1は入出力装置群(図では8台とする)で、各
入出力装置には#0,#1,#2,…,#7のア
ドレスが付けられている。これら入出力装置で終
了または要求の割込み要因が生じると、バスなど
を通じてその入出力装置のアドレスがデコーダ2
に伝達される。デコーダ2は、割込み要因を生じ
た入出力装置アドレスをビツト変換する回路で、
第1のレジスタ3の対応ビツトを“1”にセツト
する。なお、レジスタ3の上位ビツト(図中の左
側)ほど、優先順位の高い入出力装置に対応付け
られるものとする。このようにして、レジスタ3
によつて割込み保留中の入出力装置が表示される
ことになる。 1 is a group of input/output devices (eight in the figure), and each input/output device is assigned an address of #0, #1, #2, . . . , #7. When a termination or request interrupt factor occurs in one of these input/output devices, the address of that input/output device is transferred to the decoder 2 via the bus, etc.
is transmitted to. Decoder 2 is a circuit that converts bits of the input/output device address that caused the interrupt.
The corresponding bit in the first register 3 is set to "1". It is assumed that the higher bits of the register 3 (on the left side in the figure) are associated with input/output devices of higher priority. In this way, register 3
will display the I/O devices with pending interrupts.
第2のレジスタ4は初めに全ビツト“0”にク
リアされ、つぎに第1のレジスタ3の内容が転送
される(第1のレジスタ3の内容は保存されるこ
とは勿論である)。その後は、レジスタ4の全ビ
ツトが“0”になつたときに上記の転送が行なわ
れる。 All bits of the second register 4 are first cleared to "0", and then the contents of the first register 3 are transferred (of course, the contents of the first register 3 are saved). Thereafter, the above transfer is performed when all bits of register 4 become "0".
5はプライオリテイ・エンコーダであり、レジ
スタ4に“1”ビツトがあると、そのうちの最も
上位のビツト(本例ではレジスタ4の上位側ビツ
トほど優先順位が高い)に対応する割込みアドレ
スを割込みアドレス・レジスタ6に登録して割込
みを発生する。プライオリテイ・エンコーダ5に
よつてレジスタ4のある“1”ビツトに対応する
割込みアドレスが登録されると、当該ビツトおよ
び第1レジスタ3の対応ビツトがリセツトされ
る。なお、レジスタ3のあるビツトがリセツトさ
れたのち、そのビツトに対応する入出力装置に改
めて割込み要因が生じれば、当該ビツトが再度セ
ツトされることは勿論である。 5 is a priority encoder, and when register 4 has a "1" bit, the interrupt address corresponding to the most significant bit (in this example, the higher the priority of register 4 is, the higher the priority) is set as the interrupt address. - Register in register 6 and generate an interrupt. When the priority encoder 5 registers an interrupt address corresponding to a certain "1" bit in the register 4, that bit and the corresponding bit in the first register 3 are reset. Note that, after a certain bit in the register 3 has been reset, if an interrupt factor occurs again in the input/output device corresponding to that bit, the bit will of course be set again.
以上のようにして、レジスタ4の全ビツトが
“0”になると、レジスタ3の内容がレジスタ4
へ転送され、前述したように割込み発生が順次行
なわれる。 As described above, when all bits of register 4 become "0", the contents of register 3 are transferred to register 4.
The interrupts are generated sequentially as described above.
第2図は上に述べた割込み制御のルーチンを示
す概略流れ図である。このルーチンは、従来の電
子計算機と同様にアイドル状態または割込みチエ
ツクポイントで実行される。なお、最初にレジス
タ4をクリヤするステツプは図中に示していな
い。 FIG. 2 is a schematic flowchart showing the interrupt control routine described above. This routine runs at idle or interrupt checkpoints, similar to conventional electronic computers. Note that the step of first clearing the register 4 is not shown in the figure.
次に、レジスタ3,4の状態の遷移例を第3図
によつて説明する。 Next, an example of transition of the states of registers 3 and 4 will be explained with reference to FIG.
今、レジスタ3の内容がレジスタ4に転送さ
れ、両レジスタの内容が(1)のような状態になつた
としよう。プライオリテイ・エンコーダ5はレジ
スタ4の上位側(左側)のビツトほど優先順位が
高く設定されているので、この例では最上位ビツ
ト(#0の入出力装置に対応)が“1”であるか
ら、割込みアドレス#0を割込みアドレス・レジ
スタ6に登録し、割込みを発生させる。この時
に、レジスタ3,4の#0のビツトはリセツトさ
れ、レジスタ3,4は(2)に示す状態になる。ただ
し、(2)は#0の割込みを受け付けたのち、#0が
再度割込み保留状態になつた場合を想定して表わ
してある。つまり、レジスタ3の#0のビツトは
一度リセツトされたが、その後に改めてセツトさ
れたのである。 Suppose now that the contents of register 3 are transferred to register 4, and the contents of both registers become as shown in (1). In the priority encoder 5, the higher the bit (on the left side) of the register 4, the higher the priority is set, so in this example, the most significant bit (corresponding to input/output device #0) is "1". , registers interrupt address #0 in the interrupt address register 6, and generates an interrupt. At this time, bit #0 of registers 3 and 4 is reset, and registers 3 and 4 enter the state shown in (2). However, (2) is expressed on the assumption that #0 becomes interrupt pending again after accepting the interrupt of #0. In other words, bit #0 of register 3 was reset once, but then set again.
(2)の状態ではレジスタ4の“1”ビツトのうち
最も上位のビツトは#2のビツトであるから、
#2の割込みが受け付けられ、レジスタ3,4の
#2のビツトがリセツトされ、両レジスタの内容
は(3)に示すように変化する。 In state (2), the most significant bit among the "1" bits in register 4 is bit #2, so
The #2 interrupt is accepted, the #2 bits of registers 3 and 4 are reset, and the contents of both registers change as shown in (3).
(3)の状態では#3の割込みが受け付けられ、レ
ジスタ3,4の#3のビツトがリセツトされる。
これでレジスタ4の全ビツトが“0”になるの
で、レジスタ3の内容がレジスタ4へ転送され、
両レジスタの内容は(4)に示すようになる。 In state (3), interrupt #3 is accepted and bit #3 of registers 3 and 4 is reset.
Now, all bits in register 4 become "0", so the contents of register 3 are transferred to register 4,
The contents of both registers are shown in (4).
(4)の状態では、レジスタ4の最上位ビツトが
“1”であるから、#0の割込みが受け付けられ、
レジスタ3,4の内容は(5)に示すような状態に変
化する。 In state (4), the most significant bit of register 4 is "1", so interrupt #0 is accepted,
The contents of registers 3 and 4 change to the state shown in (5).
(5)の状態では#6の割込みが受け付けられ、レ
ジスタ4の全ビツトが“0”になる。したがつ
て、レジスタ3の内容がレジスタ4へ転送され、
(6)の状態になる。 In state (5), interrupt #6 is accepted and all bits of register 4 become "0". Therefore, the contents of register 3 are transferred to register 4,
(6) is reached.
以下同様にして、(7),(8),…と状態が遷移し、
#2,#3,…と割込みの受付けが行なわれる。 In the same way, the state changes to (7), (8), etc.
Interrupts are accepted as #2, #3, and so on.
ここで(1)の状態で#0が割込んでから#0が再
度割込み保留となつても、レジスタ4の全ビツト
が“0”になつてレジスタ3から再転送されるま
では((4)の状態に遷移するまでは)、#0の割込
み保留状態が続くことは前述した通りである。こ
のように、本発明によれば、前述したような低順
位の入出力装置からの割込みの沈み込み現象を防
止できる。 Here, even if #0 becomes interrupt pending again after #0 interrupts in state (1), until all bits of register 4 become "0" and are retransferred from register 3 ((4 As described above, the #0 interrupt pending state continues until the state changes to ). As described above, according to the present invention, it is possible to prevent the sinking phenomenon of interrupts from low-rank input/output devices as described above.
なお本発明では、割込み制御用のレジスタが1
つ増えるが、最近の集積回路技術の進歩から、レ
ジスタ増加によるコスト上昇は無視できる程度で
ある。またレジスタ間の転送およびリセツト操作
などを含む制御は、マイクロプログラムのレベル
で簡単に実現できる。このようなことから、本発
明は従来と比較してコスト面でも有利である。 Note that in the present invention, there are 1 register for interrupt control.
However, due to recent advances in integrated circuit technology, the cost increase due to the increase in registers is negligible. Furthermore, control including transfers between registers and reset operations can be easily realized at the microprogram level. For this reason, the present invention is advantageous in terms of cost compared to the conventional method.
以上に述べたように、本発明によれば、沈み込
み現象を防止できる割込み制御を低コストで実現
できる効果がある。 As described above, according to the present invention, there is an effect that interrupt control that can prevent the sinking phenomenon can be realized at low cost.
第1図は本発明の一実施例を示すブロツク図、
第2図は割込み制御ルーチンの概略流れ図、第3
図は同上実施例の動作を説明するためのレジスタ
内容の遷移図である。
1……入出力装置群、2……デコーダ、3,4
……割込み制御用レジスタ、5……プライオリテ
イ・エンコーダ、6……割込みアドレス・レジス
タ。
FIG. 1 is a block diagram showing one embodiment of the present invention;
Figure 2 is a schematic flowchart of the interrupt control routine;
The figure is a transition diagram of register contents for explaining the operation of the embodiment. 1... Input/output device group, 2... Decoder, 3, 4
...Interrupt control register, 5...Priority encoder, 6...Interrupt address register.
Claims (1)
のレジスタを備え、入出力装置に割込み要因が生
じるたびにその入出力装置に対応する該第1のレ
ジスタのビツトを“1”(または“0”)にセツト
し、該第1のレジスタの内容が転送された該第2
のレジスタの“1”(または“0”)のビツトに対
応する入出力装置の割込みを優先順位にしたがつ
て順次発生させ、これと同時に、割込みを発生さ
せた入出力装置に対応する該第1と第2のレジス
タのビツトをリセツトし、該第2のレジスタの全
ビツトが“0”(または“1”)になると、該第1
のレジスタの内容を該第2のレジスタに改めて転
送し、該第2のレジスタの内容によつて前述と同
様に割込みを発生させることを特徴とする入出力
制御装置。1 First and second with corresponding input/output devices and bits
Each time an interrupt factor occurs in an input/output device, the bit in the first register corresponding to that input/output device is set to “1” (or “0”), and the contents of the first register are The second transferred
The interrupts of the input/output devices corresponding to the "1" (or "0") bits of the registers are generated sequentially according to the priority order, and at the same time, the interrupts of the input/output devices corresponding to the input/output devices that have generated the interrupt are 1 and the bits of the second register are reset, and when all bits of the second register become "0" (or "1"), the first
An input/output control device characterized in that the contents of the register are transferred again to the second register, and an interrupt is generated in the same manner as described above depending on the contents of the second register.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6117881A JPS57176440A (en) | 1981-04-24 | 1981-04-24 | Input and output interruption control system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6117881A JPS57176440A (en) | 1981-04-24 | 1981-04-24 | Input and output interruption control system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS57176440A JPS57176440A (en) | 1982-10-29 |
JPS634218B2 true JPS634218B2 (en) | 1988-01-28 |
Family
ID=13163636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6117881A Granted JPS57176440A (en) | 1981-04-24 | 1981-04-24 | Input and output interruption control system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS57176440A (en) |
-
1981
- 1981-04-24 JP JP6117881A patent/JPS57176440A/en active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS57176440A (en) | 1982-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5432943A (en) | Data processing apparatus having interruption control unit | |
JPS634218B2 (en) | ||
US5860025A (en) | Precharging an output peripheral for a direct memory access operation | |
JPH01305460A (en) | Inter-processor communication system | |
JP2643931B2 (en) | Information processing device | |
JPH0323940B2 (en) | ||
JPS5927334A (en) | Direct memory access memory device | |
JPS61123244A (en) | Data communication processor | |
JP2574821B2 (en) | Direct memory access controller | |
JP2743685B2 (en) | Fixed-point processor | |
JPH06231032A (en) | Access controller | |
JPS62160560A (en) | Bus control system | |
JPH0148574B2 (en) | ||
JP3139011B2 (en) | Fixed-point processor | |
JPS5994159A (en) | Data transfer control system | |
JPH01276241A (en) | Multiple interrupting device | |
JPS6027058B2 (en) | Interrupt control circuit | |
JP2003345515A (en) | Disk controller, storage system, and method for controlling the same | |
JPH04160458A (en) | Dma controller peripheral circuit | |
JPS63279359A (en) | Data transfer device for multi-cpu | |
JPH0736820A (en) | I/o controller | |
JPH08221356A (en) | Information processing system | |
JPH0330899B2 (en) | ||
JPS6057440A (en) | Information processor | |
JPS61271557A (en) | Interface auxiliary device |