JPH04318654A - マイクロプロセッサへの割り込みのリダイレクションシステム - Google Patents
マイクロプロセッサへの割り込みのリダイレクションシステムInfo
- Publication number
- JPH04318654A JPH04318654A JP4026575A JP2657592A JPH04318654A JP H04318654 A JPH04318654 A JP H04318654A JP 4026575 A JP4026575 A JP 4026575A JP 2657592 A JP2657592 A JP 2657592A JP H04318654 A JPH04318654 A JP H04318654A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- interrupts
- cpu
- bus
- hardware
- 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.)
- Pending
Links
- 230000004044 response Effects 0.000 abstract description 3
- 239000013598 vector Substances 0.000 description 38
- 238000000034 method Methods 0.000 description 15
- 238000006243 chemical reaction Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 8
- 238000007726 management method Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 238000013519 translation Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 239000013256 coordination polymer Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 101100082138 Citrus limon PAL6 gene Proteins 0.000 description 1
- 101150081344 PAL3 gene Proteins 0.000 description 1
- 101150080283 RIM8 gene Proteins 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000005465 channeling Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、コンピュータシステム
に関するものであり、より詳細には多重バス上の多重プ
ロセッサに指示される割り込みの効率の良い制御及び伝
達を提供するためのコンピュータ・アーキテクチャに関
する。
に関するものであり、より詳細には多重バス上の多重プ
ロセッサに指示される割り込みの効率の良い制御及び伝
達を提供するためのコンピュータ・アーキテクチャに関
する。
【0002】
【従来の技術及び発明が解決しようとする課題】パーソ
ナルコンピュータ(以下、PCと称す)産業が急速に発
展した結果として、ミニコンピュータ又はメインフレー
ムコンピュータで伝統的に処理されていた高性能用途に
ハイエンドPCが移行してきた。これらの高性能用途で
は、多数の周辺装置と高速度で対話する必要がある他、
莫大な量のデータを操作してユーザにより認識されるも
のとしてリアルタイム動作を行う必要がある。
ナルコンピュータ(以下、PCと称す)産業が急速に発
展した結果として、ミニコンピュータ又はメインフレー
ムコンピュータで伝統的に処理されていた高性能用途に
ハイエンドPCが移行してきた。これらの高性能用途で
は、多数の周辺装置と高速度で対話する必要がある他、
莫大な量のデータを操作してユーザにより認識されるも
のとしてリアルタイム動作を行う必要がある。
【0003】その結果として、多重プロセッサをPCの
アーキテクチャ内に実施して、並列実行可能なタスクや
責務(responsibilities)を割り当て
ることにより、速度を最大化している。換言すれば、多
重プロセッサ(以下、MPと称す)システムの独立した
プロセッサが、トランザクションを同時に処理するよう
設定された多重ライン命令を介し、同時に命令を実行す
る。
アーキテクチャ内に実施して、並列実行可能なタスクや
責務(responsibilities)を割り当て
ることにより、速度を最大化している。換言すれば、多
重プロセッサ(以下、MPと称す)システムの独立した
プロセッサが、トランザクションを同時に処理するよう
設定された多重ライン命令を介し、同時に命令を実行す
る。
【0004】より多数のプロセッサがMPシステムに付
加されるにつれて、割り込みの伝達及び制御は一層複雑
になり、MPシステムには耐え難い負担となる。割り込
みは、中央処理装置(CPU)に、コンピュータシステ
ム内の必要な特定のルーチンを自動的に且つ即座に実行
させる信号である。
加されるにつれて、割り込みの伝達及び制御は一層複雑
になり、MPシステムには耐え難い負担となる。割り込
みは、中央処理装置(CPU)に、コンピュータシステ
ム内の必要な特定のルーチンを自動的に且つ即座に実行
させる信号である。
【0005】割り込みを受信すると、CPUは割り込み
シーケンスに従う。割り込みシーケンスの間、CPUは
先ず現在実行中の命令を完了させる。次に、CPUは、
主記憶装置内部のスタック、あるいはCPU又はその他
の場所にある特殊目的のレジスタに入っている次の命令
に転じるために必要な全てのレジスタ値(例えば、命令
ポインタ(IP)、命令セグメント(CS)、プロセッ
サ状態語(PSW)、その他)を退避させる。次いで割
り込みルーチンが始まる。割り込みが実行された後、C
PUは、レジスタ値をスタック又は特殊目的のレジスタ
からCPUに入れ戻す割り込みルーチンの最後に、命令
により当初実行していたプログラムに戻る。
シーケンスに従う。割り込みシーケンスの間、CPUは
先ず現在実行中の命令を完了させる。次に、CPUは、
主記憶装置内部のスタック、あるいはCPU又はその他
の場所にある特殊目的のレジスタに入っている次の命令
に転じるために必要な全てのレジスタ値(例えば、命令
ポインタ(IP)、命令セグメント(CS)、プロセッ
サ状態語(PSW)、その他)を退避させる。次いで割
り込みルーチンが始まる。割り込みが実行された後、C
PUは、レジスタ値をスタック又は特殊目的のレジスタ
からCPUに入れ戻す割り込みルーチンの最後に、命令
により当初実行していたプログラムに戻る。
【0006】MPシステムでは、割り込みは幾つかの異
なる場所からしばしば発生するものであり、したがって
特別な名称が与えられている。割り込みのあるものは「
内部」割り込みである。内部割り込みは、CPUの状態
、又は命令によって開始される。例えば、典型的な内部
割り込みは、0による除算で生じるものである。
なる場所からしばしば発生するものであり、したがって
特別な名称が与えられている。割り込みのあるものは「
内部」割り込みである。内部割り込みは、CPUの状態
、又は命令によって開始される。例えば、典型的な内部
割り込みは、0による除算で生じるものである。
【0007】他の割り込みは「外部」割り込みである。
外部割り込みは、コンピュータシステム内のどこかから
CPUに送られる信号により生じる。外部割り込みの一
例として、CPUにより使用されるべき入出力(以下、
I/Oと称す)装置の必要性により生じるものがある。
CPUに送られる信号により生じる。外部割り込みの一
例として、CPUにより使用されるべき入出力(以下、
I/Oと称す)装置の必要性により生じるものがある。
【0008】更に、外部割り込みは、複雑な割り込みネ
ットワークを備えたMPシステムにおいて、二つの形式
、即ち(1)「局所」割り込み、(2) 「大域」割り
込み、という形式に分類されることが時々ある。局所割
り込みは、行先CPUに関して局所的に発生する割り込
みであり、即ち換言すれば、同じサブシステム内で発生
した割り込みである。局所割り込みの一例として、数学
的双対プロセッサからの割り込みがある。これに対し、
大域割り込みは、行先CPU以外のサブシステムで発生
する。大域割り込みの例として、ユーザキーボード、シ
ステムタイマ、ディスクドライブコントローラ、ビデオ
コントローラ、直列又は並列ポート等から発生するもの
がある。
ットワークを備えたMPシステムにおいて、二つの形式
、即ち(1)「局所」割り込み、(2) 「大域」割り
込み、という形式に分類されることが時々ある。局所割
り込みは、行先CPUに関して局所的に発生する割り込
みであり、即ち換言すれば、同じサブシステム内で発生
した割り込みである。局所割り込みの一例として、数学
的双対プロセッサからの割り込みがある。これに対し、
大域割り込みは、行先CPU以外のサブシステムで発生
する。大域割り込みの例として、ユーザキーボード、シ
ステムタイマ、ディスクドライブコントローラ、ビデオ
コントローラ、直列又は並列ポート等から発生するもの
がある。
【0009】割り込みの効率的な伝達及び制御は、高性
能MPシステムにとって重要である。特に、大域割り込
みは、プロセッサが幾つかの異なるバスに渡って広がっ
ているMPシステムの全てのプロセッサの間で容易に管
理されなければならない。
能MPシステムにとって重要である。特に、大域割り込
みは、プロセッサが幾つかの異なるバスに渡って広がっ
ているMPシステムの全てのプロセッサの間で容易に管
理されなければならない。
【0010】従来技術では、大域割り込みは普通は「シ
ステム」割り込みコントローラにより制御される。この
コントローラは、単一ユニット又は協同動作する複数ユ
ニットという形態を取ることができる。独立して又は組
み合わせて動作することができる典型的なシステム割り
込みコントローラは、例えば、「INTEL」8259
プログラム可能割り込みコントローラ(PIC)であ
る。この「INTEL」8259 プログラム可能割り
込みコントローラは市場入手可能であり、アメリカ合衆
国カリフォルニア州のインテル・コーポレーションによ
り製造されている。
ステム」割り込みコントローラにより制御される。この
コントローラは、単一ユニット又は協同動作する複数ユ
ニットという形態を取ることができる。独立して又は組
み合わせて動作することができる典型的なシステム割り
込みコントローラは、例えば、「INTEL」8259
プログラム可能割り込みコントローラ(PIC)であ
る。この「INTEL」8259 プログラム可能割り
込みコントローラは市場入手可能であり、アメリカ合衆
国カリフォルニア州のインテル・コーポレーションによ
り製造されている。
【0011】通常の割り込みプロトコルでは、システム
割り込みコントローラは全ての割り込みを任意の「省略
時」CPUに伝える。省略時CPUは、識別可能なデー
タセグメント(命令を含む)を共用主記憶装置に入れて
、割り込み、行先CPU、及び行先CPUにより実行さ
れるべき割り込みルーチンを指定する。MPシステムの
他のプロセッサは、データセグメントの待ち行列又は識
別子を監視するように、共用主記憶装置に絶えずアクセ
スする。次いで行先CPUが割り込みを認識し、指定さ
れた割り込みルーチンに従って処理を行う。
割り込みコントローラは全ての割り込みを任意の「省略
時」CPUに伝える。省略時CPUは、識別可能なデー
タセグメント(命令を含む)を共用主記憶装置に入れて
、割り込み、行先CPU、及び行先CPUにより実行さ
れるべき割り込みルーチンを指定する。MPシステムの
他のプロセッサは、データセグメントの待ち行列又は識
別子を監視するように、共用主記憶装置に絶えずアクセ
スする。次いで行先CPUが割り込みを認識し、指定さ
れた割り込みルーチンに従って処理を行う。
【0012】しかし、前述の従来の大域割り込管理の手
法は、多重バスを有する高性能MPシステムにおいては
問題がある。省略時CPUが、主記憶装置に対して割り
込みの伝達(channelling)に関するコード
を実行するため、それ自身のプログラムの実行を一時的
に停止しなければならない、ということがしばしばある
。
法は、多重バスを有する高性能MPシステムにおいては
問題がある。省略時CPUが、主記憶装置に対して割り
込みの伝達(channelling)に関するコード
を実行するため、それ自身のプログラムの実行を一時的
に停止しなければならない、ということがしばしばある
。
【0013】更に、全てのCPUと共用主記憶装置との
間のバスに過大な通信量が存在する。CPUと主記憶装
置との間で行われなければならない莫大なトランザクシ
ョンのため、全体としてのMPシステムの速度は最適と
まではいかない。更に、その性能が低下した結果として
、MPシステムに接続可能なプロセッサの数が更に限ら
れてしまう。
間のバスに過大な通信量が存在する。CPUと主記憶装
置との間で行われなければならない莫大なトランザクシ
ョンのため、全体としてのMPシステムの速度は最適と
まではいかない。更に、その性能が低下した結果として
、MPシステムに接続可能なプロセッサの数が更に限ら
れてしまう。
【0014】従来知られている他の方法は「割り込みせ
んさく(snooping)」と呼ばれている。割り込
みせんさくは、CPUが伝統的な拡張工業標準アーキテ
クチャ(EISA)バス又は従来のマイクロチャネル(
MCA)バスのような専用バスを有するI/Oカード上
にCPUが設置されているMPシステムのために提案さ
れたものである。I/Oカードは、例えばコンピュータ
システムの高速システムバスに差し込まれ、これにより
多重バスシステムが形成される。
んさく(snooping)」と呼ばれている。割り込
みせんさくは、CPUが伝統的な拡張工業標準アーキテ
クチャ(EISA)バス又は従来のマイクロチャネル(
MCA)バスのような専用バスを有するI/Oカード上
にCPUが設置されているMPシステムのために提案さ
れたものである。I/Oカードは、例えばコンピュータ
システムの高速システムバスに差し込まれ、これにより
多重バスシステムが形成される。
【0015】割り込みせんさくは、割り込みの生成及び
その伝達を行う為に、省略時CPUという概念、又は中
央ロケーションという概念を全く用いていない。割り込
みは、各I/Oカードで生成され、受信される。
その伝達を行う為に、省略時CPUという概念、又は中
央ロケーションという概念を全く用いていない。割り込
みは、各I/Oカードで生成され、受信される。
【0016】割り込みせんさく処理を実行するには、各
I/Oカードのバスマスタにインテル8259割り込み
コントローラ又はその等価回路を設ける。その割り込み
コントローラからの割り込みは、割り込みを受信させる
意図のないコンピュータシステムの構成要素からマスク
される。全てのバスマスタは、各々に対応する割り込み
についてシステムバスを監視し、次いでそのそれぞれの
I/Oカード上にある局所CPUに割り込みを指示する
。実質的に、大域割り込みについての全責務は、コンピ
ュータシステムからI/Oカードに転送される。
I/Oカードのバスマスタにインテル8259割り込み
コントローラ又はその等価回路を設ける。その割り込み
コントローラからの割り込みは、割り込みを受信させる
意図のないコンピュータシステムの構成要素からマスク
される。全てのバスマスタは、各々に対応する割り込み
についてシステムバスを監視し、次いでそのそれぞれの
I/Oカード上にある局所CPUに割り込みを指示する
。実質的に、大域割り込みについての全責務は、コンピ
ュータシステムからI/Oカードに転送される。
【0017】しかし、前述の割り込み管理機構は、多重
バスを備えた高性能MPシステムにとっては理想的でな
い。この機構では、割り込みがバス基準によりバス上で
管理されること、及び、各バスが少なくとも1つの割り
込み送受信機構を有することが必要である。更に詳しく
述べれば、I/Oカードが接続されているシステムバス
にCPUが付加される場合に、その付加されたCPUは
、I/Oカード上のCPUに割り込みを送受信するため
に、ハードウェア又はソフトウェアのいずれかにおいて
割り込み論理の複製を行わなければならない。更に、例
えば、割り込み回路を付加しないと、システムタイマ及
び/又はユーザキーボードからの標準割り込みをシステ
ムバスにインターフェイスすることができない。
バスを備えた高性能MPシステムにとっては理想的でな
い。この機構では、割り込みがバス基準によりバス上で
管理されること、及び、各バスが少なくとも1つの割り
込み送受信機構を有することが必要である。更に詳しく
述べれば、I/Oカードが接続されているシステムバス
にCPUが付加される場合に、その付加されたCPUは
、I/Oカード上のCPUに割り込みを送受信するため
に、ハードウェア又はソフトウェアのいずれかにおいて
割り込み論理の複製を行わなければならない。更に、例
えば、割り込み回路を付加しないと、システムタイマ及
び/又はユーザキーボードからの標準割り込みをシステ
ムバスにインターフェイスすることができない。
【0018】
【課題を解決するための手段】本発明は、共用記憶装置
を有し、且つアーキテクチャ的に分離された多重バスを
備えることができる多重プロセッサ(MP)システムに
おいて大域割り込みを高性能に管理するシステム及び方
法である。
を有し、且つアーキテクチャ的に分離された多重バスを
備えることができる多重プロセッサ(MP)システムに
おいて大域割り込みを高性能に管理するシステム及び方
法である。
【0019】本発明は、システム割り込みコントローラ
からの大域割り込みを受信するリダイレクタの実施を構
想するものである。このリダイレクタは、省略時プロセ
ッサにおけるソフトウェアという形態、又はプログラム
可能論理アレイのように、ハードウェアの別個の構成要
素という形態のいずれでもよい。
からの大域割り込みを受信するリダイレクタの実施を構
想するものである。このリダイレクタは、省略時プロセ
ッサにおけるソフトウェアという形態、又はプログラム
可能論理アレイのように、ハードウェアの別個の構成要
素という形態のいずれでもよい。
【0020】大域割り込みの受信後、リダイレクタは、
MPシステム内の個々のプロセッサに大域割り込みを直
接知らせる。個々のプロセッサの幾つかは、恐らくは入
出力(I/O)カード上の、遠隔の、アーキテクチャ的
に分離されているバス上に存在することができる。
MPシステム内の個々のプロセッサに大域割り込みを直
接知らせる。個々のプロセッサの幾つかは、恐らくは入
出力(I/O)カード上の、遠隔の、アーキテクチャ的
に分離されているバス上に存在することができる。
【0021】更に、本発明は、割り込みせんさくの概念
を用いて協同動作するように実施可能であるということ
を構想するものである。割り込みせんさくは、従来、幾
つかの市販のI/Oカードのために企図されている。
を用いて協同動作するように実施可能であるということ
を構想するものである。割り込みせんさくは、従来、幾
つかの市販のI/Oカードのために企図されている。
【0022】本発明は、上記のような従来の欠点を克服
し、更に下記の別の特徴及び長所を提供する。
し、更に下記の別の特徴及び長所を提供する。
【0023】第1に、本発明は、MPシステムのプロセ
ッサにより主記憶装置に不必要に繰り返される問い合わ
せを排除することにより、コンピュータシステムのバス
上の通信量を減少させる。その結果として、MPシステ
ムの全体としての速度が向上し、MPシステムに接続可
能なプロセッサの数が増大する。
ッサにより主記憶装置に不必要に繰り返される問い合わ
せを排除することにより、コンピュータシステムのバス
上の通信量を減少させる。その結果として、MPシステ
ムの全体としての速度が向上し、MPシステムに接続可
能なプロセッサの数が増大する。
【0024】第2に、本発明は、MPシステムの様々な
バスのプロトコル及び/又はコンパチブルモデルを再規
定せずに実施することができる。
バスのプロトコル及び/又はコンパチブルモデルを再規
定せずに実施することができる。
【0025】第3に、本発明は、ソフトウェアとハード
ウェアとのいずれでも実施することができるという柔軟
性を有するものである。
ウェアとのいずれでも実施することができるという柔軟
性を有するものである。
【0026】第4に、本発明は、多様なプロセッサ構成
を考慮している。換言すれば、本発明は、同種又は非同
種のMPUを用いて実施可能である。例えば、「INT
EL」ファミリーのMPU(アメリカ合衆国のインテル
・コーポレーション製)を「MOTOROLA」ファミ
リーのMPU(アメリカ合衆国のモトローラ・インコー
ポレーテッド製)と混種させることができる。
を考慮している。換言すれば、本発明は、同種又は非同
種のMPUを用いて実施可能である。例えば、「INT
EL」ファミリーのMPU(アメリカ合衆国のインテル
・コーポレーション製)を「MOTOROLA」ファミ
リーのMPU(アメリカ合衆国のモトローラ・インコー
ポレーテッド製)と混種させることができる。
【0027】本発明の他の特徴及び長所は、以下の図面
及び詳細な説明を検討することにより当業者に明らかと
なるであろう。更なる特徴及び長所を全てここに織り込
むことを意図している。
及び詳細な説明を検討することにより当業者に明らかと
なるであろう。更なる特徴及び長所を全てここに織り込
むことを意図している。
【0028】特許請求の範囲に記載されたものとしての
本発明もまた、本書及び図面を参照することによって、
より良く理解されよう。
本発明もまた、本書及び図面を参照することによって、
より良く理解されよう。
【0029】
【実施例】図1は、n個の中央処理装置(CPU) 1
10〜116 をそれぞれ有するn個のマイクロプロセ
シングユニット(MPU) 102〜108 を備えて
いる従来のパーソナルコンピュータ(PC)アーキテク
チャを示す。MPU102 〜108 は主記憶装置1
18を共用する。
10〜116 をそれぞれ有するn個のマイクロプロセ
シングユニット(MPU) 102〜108 を備えて
いる従来のパーソナルコンピュータ(PC)アーキテク
チャを示す。MPU102 〜108 は主記憶装置1
18を共用する。
【0030】MPU102〜108 はアーキテクチャ
的に分離された幾つかのバス上に存在する。MPU10
2及びMPU108は 主記憶装置118 と共にシス
テムバス120上に存在するが、MPU 104はバス
122 上に存在し、MPU 106はバス124上に
存在する。バスインターフェイスは簡素化のため図示し
ていない。n個のMPU 102〜108のいずれもシ
ステムバス120 に差し込まれる従来の入出力(I/
O)カード上に存在することができる。図示するように
、MPU104,106 の他、そのそれぞれのバス1
22,124 もI/Oカード126,128 上に存
在することが出来る。
的に分離された幾つかのバス上に存在する。MPU10
2及びMPU108は 主記憶装置118 と共にシス
テムバス120上に存在するが、MPU 104はバス
122 上に存在し、MPU 106はバス124上に
存在する。バスインターフェイスは簡素化のため図示し
ていない。n個のMPU 102〜108のいずれもシ
ステムバス120 に差し込まれる従来の入出力(I/
O)カード上に存在することができる。図示するように
、MPU104,106 の他、そのそれぞれのバス1
22,124 もI/Oカード126,128 上に存
在することが出来る。
【0031】図1のMPシステムにおいて、システム割
り込みコントローラ130 はMPシステム内の大域割
り込みに備えている。このシステム割り込みコントロー
ラ130 はシステムバス120 に直接接続されてい
る。
り込みコントローラ130 はMPシステム内の大域割
り込みに備えている。このシステム割り込みコントロー
ラ130 はシステムバス120 に直接接続されてい
る。
【0032】図2は、図1のアーキテクチャを用いた一
般の割り込みプロトコルを示すものである。システム割
り込みコントローラは、任意の「省略時」CPUに全て
の割り込みを送信する。図示するように、MPU 10
2のCPU 110が省略時CPUとして任意に選択さ
れている。
般の割り込みプロトコルを示すものである。システム割
り込みコントローラは、任意の「省略時」CPUに全て
の割り込みを送信する。図示するように、MPU 10
2のCPU 110が省略時CPUとして任意に選択さ
れている。
【0033】省略時CPU 110は、矢印 202で
示すように、システム割り込みコントローラ130 か
らの大域割り込みを受信する。CPU 110により割
り込みが受信された場合、これに続いてCPU 110
からシステム割り込みコントローラ130 に肯定応答
(ACK)信号が送信される。
示すように、システム割り込みコントローラ130 か
らの大域割り込みを受信する。CPU 110により割
り込みが受信された場合、これに続いてCPU 110
からシステム割り込みコントローラ130 に肯定応答
(ACK)信号が送信される。
【0034】矢印 204で示すように、省略時CPU
110は、システム割り込みコントローラ130 か
らの大域割り込み信号を受信した後、識別可能なデータ
セグメントを共用主記憶装置118 に入れる。この共
用主記憶装置118 に格納されているデータには、割
り込みと、目的とする行先CPU(図2の例では、CP
U112,114 ,又は116)と、目的とする行先
CPUにより実行されるべき割り込みルーチンとを指定
する命令が含まれている。
110は、システム割り込みコントローラ130 か
らの大域割り込み信号を受信した後、識別可能なデータ
セグメントを共用主記憶装置118 に入れる。この共
用主記憶装置118 に格納されているデータには、割
り込みと、目的とする行先CPU(図2の例では、CP
U112,114 ,又は116)と、目的とする行先
CPUにより実行されるべき割り込みルーチンとを指定
する命令が含まれている。
【0035】各MPU 104〜108 上のMPシス
テムにおける他のCPU112 〜116 は、データ
セグメントの待行列又は識別子を監視するように、対応
する矢印 206,208,210で示されるように共
用主記憶装置118 に絶えずアクセスする。
テムにおける他のCPU112 〜116 は、データ
セグメントの待行列又は識別子を監視するように、対応
する矢印 206,208,210で示されるように共
用主記憶装置118 に絶えずアクセスする。
【0036】最終的に、行先CPU(112 ,114
,、又は116)は、共用主記憶装置118 をサンプ
リングした後に割り込みを認識する。次いでデータが共
用主記憶装置118 から読み出され、行先CPUが、
指定された割り込みルーチンに従って動作する。
,、又は116)は、共用主記憶装置118 をサンプ
リングした後に割り込みを認識する。次いでデータが共
用主記憶装置118 から読み出され、行先CPUが、
指定された割り込みルーチンに従って動作する。
【0037】しかし、前述の従来の大域割り込み管理方
法には問題がある。省略時CPU110 は、共用主記
憶装置118 への割り込みの伝達に関するコードを実
行するため、常にそれ自身のプログラムの実行を一時的
に停止しなければならない。
法には問題がある。省略時CPU110 は、共用主記
憶装置118 への割り込みの伝達に関するコードを実
行するため、常にそれ自身のプログラムの実行を一時的
に停止しなければならない。
【0038】更に、全CPU110 〜116 と共用
主記憶装置118 との間のバスに過大な通信量が存在
する。図1において、バス122,124 の他に、シ
ステムバス120 も、割り込みプロトコルによる過大
な通信量を特徴とするものである。
主記憶装置118 との間のバスに過大な通信量が存在
する。図1において、バス122,124 の他に、シ
ステムバス120 も、割り込みプロトコルによる過大
な通信量を特徴とするものである。
【0039】図2に矢印 204〜210 で示したよ
うに、CPU110 〜116と共用主記憶装置118
との間で行われなければならない莫大なトランザクショ
ンのため、MPUシステム全体としての速度は最適とま
ではいかない。更に、性能低下の結果として、MPシス
テムに接続可能なMPUの数が一層限られてしまう。
うに、CPU110 〜116と共用主記憶装置118
との間で行われなければならない莫大なトランザクショ
ンのため、MPUシステム全体としての速度は最適とま
ではいかない。更に、性能低下の結果として、MPシス
テムに接続可能なMPUの数が一層限られてしまう。
【0040】図3は、「割り込みせんさく」の概念、及
び割り込みせんさくを省略時CPU方法と組み合わせて
用いた管理機構を示している。
び割り込みせんさくを省略時CPU方法と組み合わせて
用いた管理機構を示している。
【0041】割り込みせんさくは、従来の拡張工業標準
(EISA)バス又は従来のマイクロチャネル(MCA
)バスのような、専用の、アーキテクチャ的に分離され
たバスを有するI/Oカード上にCPUが設置されてい
るMPシステムのために提案されてきた。図1及び図3
に示すように、MPU104,106 は別々のそれぞ
れのI/Oカード126,128 上に存在し、これら
のカードはシステムバス120 に差し込まれる。
(EISA)バス又は従来のマイクロチャネル(MCA
)バスのような、専用の、アーキテクチャ的に分離され
たバスを有するI/Oカード上にCPUが設置されてい
るMPシステムのために提案されてきた。図1及び図3
に示すように、MPU104,106 は別々のそれぞ
れのI/Oカード126,128 上に存在し、これら
のカードはシステムバス120 に差し込まれる。
【0042】割り込みせんさくに従って、割り込みは、
矢印302 で示すように、異なるI/Oカードに載っ
ているMPU104,106 との間で直接伝達が行わ
れる。構成上の見地から言うと、この矢印302 で示
す伝達は、図1のバス120,122,124 を介し
て行われる。実行中の対話のみがこの形式である場合に
、純粋な割り込みせんさくが生じることになる。
矢印302 で示すように、異なるI/Oカードに載っ
ているMPU104,106 との間で直接伝達が行わ
れる。構成上の見地から言うと、この矢印302 で示
す伝達は、図1のバス120,122,124 を介し
て行われる。実行中の対話のみがこの形式である場合に
、純粋な割り込みせんさくが生じることになる。
【0043】しかし、1つ以上の他のCPU102,1
08 が直接システムバス120 に接続される図1の
MPシステムでは、省略時CPUの概念、又は何か他の
手法を実施して、これらのCPUへ割り込みを指示しな
ければならない。よって、本MPシステムは、省略時C
PUの概念及び割り込みせんさくの概念の双方を含む割
り込み管理の混種形態を組み込んでいる。
08 が直接システムバス120 に接続される図1の
MPシステムでは、省略時CPUの概念、又は何か他の
手法を実施して、これらのCPUへ割り込みを指示しな
ければならない。よって、本MPシステムは、省略時C
PUの概念及び割り込みせんさくの概念の双方を含む割
り込み管理の混種形態を組み込んでいる。
【0044】特に、割り込みせんさくは、全てのI/O
カードの間で、例えば、I/Oカード126 とI/O
カード128 との間で生じる。これと同時に、CPU
110 が省略時CPUとして動作する。このCPU1
10 は、システムバス120 上の全てのCPU、即
ちCPU116 に割り込みを導く。更に、I/Oカー
ド126,128 のバスマスタ(図示せず)は、仮想
線304 で示すように、システム割り込みコントロー
ラ130からの割り込みに聞き耳を立てる。
カードの間で、例えば、I/Oカード126 とI/O
カード128 との間で生じる。これと同時に、CPU
110 が省略時CPUとして動作する。このCPU1
10 は、システムバス120 上の全てのCPU、即
ちCPU116 に割り込みを導く。更に、I/Oカー
ド126,128 のバスマスタ(図示せず)は、仮想
線304 で示すように、システム割り込みコントロー
ラ130からの割り込みに聞き耳を立てる。
【0045】二つ以上のCPUがI/Oカードの各々に
存在することができることに注目すべきである。更に、
システム割り込みコントローラ130 からの割り込み
は全て、I/O上の特定のCPUにではなく、特定のI
/Oカードに指示される。
存在することができることに注目すべきである。更に、
システム割り込みコントローラ130 からの割り込み
は全て、I/O上の特定のCPUにではなく、特定のI
/Oカードに指示される。
【0046】しかし、前述の混種形態の割り込み管理機
構は、幾つかの理由のため、多重バスを有する高性能M
Pアーキテクチャには望ましくない。その1つの理由は
、MPシステムに冗長な割り込みマネージャが不必要に
存在することである。実際に、各I/Oカード126,
128 は、割り込みマネージャである他、システム割
り込みコントローラ130 でもある。
構は、幾つかの理由のため、多重バスを有する高性能M
Pアーキテクチャには望ましくない。その1つの理由は
、MPシステムに冗長な割り込みマネージャが不必要に
存在することである。実際に、各I/Oカード126,
128 は、割り込みマネージャである他、システム割
り込みコントローラ130 でもある。
【0047】更に、多くの不必要な通信量がバス上に、
特にシステムバス120 上に依然として存在する。そ
の結果として、速度が落ち、MPシステムに接続可能な
プロセッサの数が制限されてしまう。
特にシステムバス120 上に依然として存在する。そ
の結果として、速度が落ち、MPシステムに接続可能な
プロセッサの数が制限されてしまう。
【0048】図4は本発明の好適な実施例を示す。リダ
イレクタ402 は、I/Oカード、例えば、I/Oカ
ード126 又はI/Oカード128 上の個々のCP
Uを含む、あらゆるバス上の個々のCPUに、システム
割り込みコントローラ130 からの割り込みを指示す
るように実施されている。
イレクタ402 は、I/Oカード、例えば、I/Oカ
ード126 又はI/Oカード128 上の個々のCP
Uを含む、あらゆるバス上の個々のCPUに、システム
割り込みコントローラ130 からの割り込みを指示す
るように実施されている。
【0049】図示するように、リダイレクタ402 は
、バス404を介してシステム割り込みコントローラ1
30 と交信する。更に、リダイレクタ402 は、n
個の個々のMPU102 〜108 と交信する。
、バス404を介してシステム割り込みコントローラ1
30 と交信する。更に、リダイレクタ402 は、n
個の個々のMPU102 〜108 と交信する。
【0050】リダイレクタ402 は、ソフトウェア優
勢、ハードウェア優勢、又はソフトウェアとハードウェ
アとの組み合わせにより最適に実施することができる。 ソフトウェア優勢を実施した場合、リダイレクタ402
の機能性は、「省略時CPU」の類ではあるが、後に
図5で説明するように異なる機能を備えている、任意の
CPUにより実行されるプログラムコードによって実施
される。
勢、ハードウェア優勢、又はソフトウェアとハードウェ
アとの組み合わせにより最適に実施することができる。 ソフトウェア優勢を実施した場合、リダイレクタ402
の機能性は、「省略時CPU」の類ではあるが、後に
図5で説明するように異なる機能を備えている、任意の
CPUにより実行されるプログラムコードによって実施
される。
【0051】ハードウェア優勢を実施した場合、リダイ
レクタ402 の機能性は、物理的論理回路で達成され
る。 この論理回路は、用途特定集積回路(ASIC) のよ
うな外部マイクロチップ上で、又は他の個別回路装置上
で実施可能である。更に、システム割り込みコントロー
ラ130 及びリダイレクタ402 は、ASICのよ
うな同一の回路装置上に組込むことができる。好適な実
施例では、ハードウェア論理を実施するためにプログラ
ム可能論理アレイ(PAL)を用いている。
レクタ402 の機能性は、物理的論理回路で達成され
る。 この論理回路は、用途特定集積回路(ASIC) のよ
うな外部マイクロチップ上で、又は他の個別回路装置上
で実施可能である。更に、システム割り込みコントロー
ラ130 及びリダイレクタ402 は、ASICのよ
うな同一の回路装置上に組込むことができる。好適な実
施例では、ハードウェア論理を実施するためにプログラ
ム可能論理アレイ(PAL)を用いている。
【0052】更に、従来周知である通り、必要な論理の
実質的部分をソフトウェアとハードウェアとの双方で実
施することができ、即ちそれらを組み合わせたものを実
施することが出来る。
実質的部分をソフトウェアとハードウェアとの双方で実
施することができ、即ちそれらを組み合わせたものを実
施することが出来る。
【0053】図5及び図6を参照して、ソフトウェア又
はハードウェアによるシステム割り込みリダイレクショ
ン方法を以下に説明する。図5はソフトウェア(S/W
)割り込みリダイレクションに関するものであり、これ
に対し、図6はハードウェア(H/W)割り込みリダイ
レクションに関するものである。
はハードウェアによるシステム割り込みリダイレクショ
ン方法を以下に説明する。図5はソフトウェア(S/W
)割り込みリダイレクションに関するものであり、これ
に対し、図6はハードウェア(H/W)割り込みリダイ
レクションに関するものである。
【0054】(1) フローチャートのブロック514
,524 において、(a)リダイレクタ402 と(
b)リダイレクタ402の機能に対応するコードを有す
る省略時CPUとの何れかが、システム割り込みコント
ローラ130 からの大域システム割り込みを受信する
。
,524 において、(a)リダイレクタ402 と(
b)リダイレクタ402の機能に対応するコードを有す
る省略時CPUとの何れかが、システム割り込みコント
ローラ130 からの大域システム割り込みを受信する
。
【0055】(2) フローチャートのブロック516
,526 において、(a)リダイレクタ402 と(
b)省略時CPUとの何れかが、又は(b) 省略時C
PUが、ルックアップテーブルを使用して、行先CPU
及びその関連するI/Oアドレス、対応する割り込みベ
クトル、及び割り込みの優先順位を見つける。
,526 において、(a)リダイレクタ402 と(
b)省略時CPUとの何れかが、又は(b) 省略時C
PUが、ルックアップテーブルを使用して、行先CPU
及びその関連するI/Oアドレス、対応する割り込みベ
クトル、及び割り込みの優先順位を見つける。
【0056】(3) フローチャートのブロック518
,528 において、(a)リダイレクタ402 と(
b)省略時CPUとの何れかが、次いでルックアップテ
ーブルの内容を行先CPUに書込む。
,528 において、(a)リダイレクタ402 と(
b)省略時CPUとの何れかが、次いでルックアップテ
ーブルの内容を行先CPUに書込む。
【0057】本発明では、リダイレクタ402 又は省
略時CPUが、割り込みを送信する前に、セマフォー式
システムの場合のように、行先CPUを制御したり「所
有」したりする必要がない、ということに注目する価値
がある。セマフォー方式では、CPUが割り込みを受信
する態勢が整っているか否か又は受信することができる
か否かを指示する。セマフォー方式では、CPUが多重
割り込み命令で一度に圧倒されることがないようにして
いる。
略時CPUが、割り込みを送信する前に、セマフォー式
システムの場合のように、行先CPUを制御したり「所
有」したりする必要がない、ということに注目する価値
がある。セマフォー方式では、CPUが割り込みを受信
する態勢が整っているか否か又は受信することができる
か否かを指示する。セマフォー方式では、CPUが多重
割り込み命令で一度に圧倒されることがないようにして
いる。
【0058】ソフトウェア的に実施したものにおける省
略時CPUも、ハードウェア的に実施したものにおける
リダイレクタ402 も、行先CPUを所有する必要が
無いということの理由は、大域割り込みの可能性がある
ソースが、MPシステム内に1つだけ存在するというこ
とである。更に、行先CPUは、省略時CPU又はリダ
イレクタ402 からの割り込みをハンドシェイクし、
即ちその応答を行う。
略時CPUも、ハードウェア的に実施したものにおける
リダイレクタ402 も、行先CPUを所有する必要が
無いということの理由は、大域割り込みの可能性がある
ソースが、MPシステム内に1つだけ存在するというこ
とである。更に、行先CPUは、省略時CPU又はリダ
イレクタ402 からの割り込みをハンドシェイクし、
即ちその応答を行う。
【0059】本発明の他の特徴は、リダイレクタ402
が、MPシステムにおけるMPU110〜116 の
間で一種のバッファ/インターフェイスとして働くとい
うことである。換言すれば、本発明は、同種又は非同種
のプロセッサを同一のシステム割り込みコントローラ1
30 から動作させることが出来る。
が、MPシステムにおけるMPU110〜116 の
間で一種のバッファ/インターフェイスとして働くとい
うことである。換言すれば、本発明は、同種又は非同種
のプロセッサを同一のシステム割り込みコントローラ1
30 から動作させることが出来る。
【0060】本発明の特定のハードウェア的な実施例を
図7及び図8に示す。この特定のハードウェア的な実施
例は、バスネットワーク上の通信量を減らすと同時に、
高性能MPシステムにおいて最大256 までの割り込
みベクトルを生成する、廉価で効率の良い実施方法を示
すものである。
図7及び図8に示す。この特定のハードウェア的な実施
例は、バスネットワーク上の通信量を減らすと同時に、
高性能MPシステムにおいて最大256 までの割り込
みベクトルを生成する、廉価で効率の良い実施方法を示
すものである。
【0061】リダイレクタ402 の機能性は、明確な
中央ロケーションで、恐らくはシステム割り込みコント
ローラ130 又はその近くで部分的に実行され、また
n個のMPU102 〜108 の各々に対する局所的
な場所で部分的に実行される。図7は、システム割り込
みコントローラに関連する、ベクトル変換送信器と呼ば
れる部分を示すものである。これに対し、図8は、個々
のMPUに関連する、ベクトル変換受信器と呼ばれる部
分を示すものである。実質的に、ベクトル変換送信器は
、n個のMPU102 〜108 のうちの特定のCP
Uにシステム割り込みを伝え、一方、ベクトル変換受信
器は、ハンドシェーク論理及び局所割り込みを処理する
論理を備えている。
中央ロケーションで、恐らくはシステム割り込みコント
ローラ130 又はその近くで部分的に実行され、また
n個のMPU102 〜108 の各々に対する局所的
な場所で部分的に実行される。図7は、システム割り込
みコントローラに関連する、ベクトル変換送信器と呼ば
れる部分を示すものである。これに対し、図8は、個々
のMPUに関連する、ベクトル変換受信器と呼ばれる部
分を示すものである。実質的に、ベクトル変換送信器は
、n個のMPU102 〜108 のうちの特定のCP
Uにシステム割り込みを伝え、一方、ベクトル変換受信
器は、ハンドシェーク論理及び局所割り込みを処理する
論理を備えている。
【0062】図7に仮想線のブロック602 で示し、
図8に仮想線のブロック702 で示すように、ベクト
ル変換送信器及びベクトル変換受信器は共にASICの
ような1つの回路ユニット上に構成可能であることがわ
かる。ベクトル変換送信器は、図7に示すように、シス
テム割り込みコントローラ130 を更に備えることが
できることに注目すべきである。
図8に仮想線のブロック702 で示すように、ベクト
ル変換送信器及びベクトル変換受信器は共にASICの
ような1つの回路ユニット上に構成可能であることがわ
かる。ベクトル変換送信器は、図7に示すように、シス
テム割り込みコントローラ130 を更に備えることが
できることに注目すべきである。
【0063】図7のベクトル変換送信器のアーキテクチ
ャは、IBMのPCにコンパチブルである。更に詳細に
は、IBMの標準アーキテクチャには、システム割り込
みコントローラ130 として働く1組の縦続接続「I
NTEL」8259 割り込みコントローラ604,6
06 が必要である。 コントローラ604,606 を縦続接続することは、
従来周知である。縦続接続構成は、8つの割り込みしか
できない単一の「INTEL」8259 割り込みコン
トローラとは異なり、16の異なる割り込みを考慮した
ものである。ベクトル変換送信器は次のように動作する
。MPシステムにおける或る部分からの16ビットのシ
ステム割り込み(IRQ 15:0)は、PAL161
0 の制御下にあるラッチ608 に入る。PAL16
10 は、チップイネーブル(CE)制御612 及び
方向(DIR)制御614 を介してラッチ608 を
制御する。更に、ラッチ608は、1組の並列PAL6
16 〜622 から構成されている。
ャは、IBMのPCにコンパチブルである。更に詳細に
は、IBMの標準アーキテクチャには、システム割り込
みコントローラ130 として働く1組の縦続接続「I
NTEL」8259 割り込みコントローラ604,6
06 が必要である。 コントローラ604,606 を縦続接続することは、
従来周知である。縦続接続構成は、8つの割り込みしか
できない単一の「INTEL」8259 割り込みコン
トローラとは異なり、16の異なる割り込みを考慮した
ものである。ベクトル変換送信器は次のように動作する
。MPシステムにおける或る部分からの16ビットのシ
ステム割り込み(IRQ 15:0)は、PAL161
0 の制御下にあるラッチ608 に入る。PAL16
10 は、チップイネーブル(CE)制御612 及び
方向(DIR)制御614 を介してラッチ608 を
制御する。更に、ラッチ608は、1組の並列PAL6
16 〜622 から構成されている。
【0064】縦続接続「INTEL」8259 割り込
みコントローラ604,606 (システム割り込みコ
ントローラ130)は、4ビットバス624(I15:
I12) 、4ビットバス626 (I11:I8)
、4ビットバス628 (I7:I4) 、及び4ビッ
トバス630 (I3:I0) を介して16ビットの
システム割り込みを受信する。続いて、「INTEL」
8259 割り込みコントローラ604,606 は、
割り込みライン632 を介してPAL1610 にシ
ステム割り込みを知らせる。PAL1610 は次いで
、割り込み肯定応答(INT ACK)ライン634を
経由して縦続接続「INTEL」8259 割り込みコ
ントローラ604,606 に割り込み肯定応答を送信
する。
みコントローラ604,606 (システム割り込みコ
ントローラ130)は、4ビットバス624(I15:
I12) 、4ビットバス626 (I11:I8)
、4ビットバス628 (I7:I4) 、及び4ビッ
トバス630 (I3:I0) を介して16ビットの
システム割り込みを受信する。続いて、「INTEL」
8259 割り込みコントローラ604,606 は、
割り込みライン632 を介してPAL1610 にシ
ステム割り込みを知らせる。PAL1610 は次いで
、割り込み肯定応答(INT ACK)ライン634を
経由して縦続接続「INTEL」8259 割り込みコ
ントローラ604,606 に割り込み肯定応答を送信
する。
【0065】次に、1組の縦続接続「INTEL」82
59 割り込みコントローラ604,606 (システ
ム割り込みコントローラ130)は、16の異なる種類
のシステム割り込みのいずれをも指定することができる
4ビットの割り込みベクトル(vd3:0)を、PAL
1610 及びPAL3636 に送信する。したがっ
て、PAL1610 は、チップイネーブル制御612
を介してラッチ608 を凍結させ、更にチップイネ
ーブル制御640 及び方向制御642を介してランダ
ムアクセスメモリ(RAM)638をイネーブルにする
。PAL3636は、4ビットの割り込みベクトルをア
ドレス(va3:va0)に変換する。このアドレスは
、RAM 638内のルックアップテーブルに送られる
。その結果として、バス646 で示すように、16ビ
ットのデータ語が、RAM 638 からシステムデー
タバス644 に伝達される。システムデータバス64
4 は、幾つかのバスを組み合わせたものでもよい。更
に、好適な実施例では、16ビットのデータ語が、割り
込みベクトル(8ビット)、ベクトル優先順位、及び割
り込みベクトルを受信するためのCPUのアドレス(ス
ロット番号)から構成されている。
59 割り込みコントローラ604,606 (システ
ム割り込みコントローラ130)は、16の異なる種類
のシステム割り込みのいずれをも指定することができる
4ビットの割り込みベクトル(vd3:0)を、PAL
1610 及びPAL3636 に送信する。したがっ
て、PAL1610 は、チップイネーブル制御612
を介してラッチ608 を凍結させ、更にチップイネ
ーブル制御640 及び方向制御642を介してランダ
ムアクセスメモリ(RAM)638をイネーブルにする
。PAL3636は、4ビットの割り込みベクトルをア
ドレス(va3:va0)に変換する。このアドレスは
、RAM 638内のルックアップテーブルに送られる
。その結果として、バス646 で示すように、16ビ
ットのデータ語が、RAM 638 からシステムデー
タバス644 に伝達される。システムデータバス64
4 は、幾つかのバスを組み合わせたものでもよい。更
に、好適な実施例では、16ビットのデータ語が、割り
込みベクトル(8ビット)、ベクトル優先順位、及び割
り込みベクトルを受信するためのCPUのアドレス(ス
ロット番号)から構成されている。
【0066】前述の16ビットのデータ語がRAM 6
38により出力されるのと同時に、PAL5636 は
、16ビットのデータ語を行先CPUに書込むため、制
御650,652 を介してシステム制御バス648
にI/Oサイクルを生成する。システム制御バス648
は、MPシステムのアドレスライン及び制御ラインの
双方から構成されており、またバスを組み合わせたもの
とすることもできる。図示するように、PAL3636
は、システム制御バス648 上で以下の命令を実行
することが出来る。(1)命令又はデータのいずれかを
示す制御信号(CMD/D)、(2) 記憶装置又はI
/Oのいずれかを示す制御信号(M/IO)、(3)
読み出し又は書き込みのいずれかを示す制御信号(RD
/WR)、(4) バス要求(BUSRQ)信号、及び
(5) バス肯定応答(BUSACK)信号。
38により出力されるのと同時に、PAL5636 は
、16ビットのデータ語を行先CPUに書込むため、制
御650,652 を介してシステム制御バス648
にI/Oサイクルを生成する。システム制御バス648
は、MPシステムのアドレスライン及び制御ラインの
双方から構成されており、またバスを組み合わせたもの
とすることもできる。図示するように、PAL3636
は、システム制御バス648 上で以下の命令を実行
することが出来る。(1)命令又はデータのいずれかを
示す制御信号(CMD/D)、(2) 記憶装置又はI
/Oのいずれかを示す制御信号(M/IO)、(3)
読み出し又は書き込みのいずれかを示す制御信号(RD
/WR)、(4) バス要求(BUSRQ)信号、及び
(5) バス肯定応答(BUSACK)信号。
【0067】更に、RAM 638から出力された割り
込みベクトルは、縦続接続「INTEL」8259 割
り込みコントローラ604,606のデータライン(v
d7:0)654,656 から分離されなければなら
ない一方、データライン(vd7:0)654,656
へのアクセスはなお考慮されている。データライン(
vd7:0)654,656 へのアクセスは、縦続接
続「INTEL」8259割り込みコントローラ604
,606 をプログラムすることができるようにするの
に必要である。
込みベクトルは、縦続接続「INTEL」8259 割
り込みコントローラ604,606のデータライン(v
d7:0)654,656 から分離されなければなら
ない一方、データライン(vd7:0)654,656
へのアクセスはなお考慮されている。データライン(
vd7:0)654,656 へのアクセスは、縦続接
続「INTEL」8259割り込みコントローラ604
,606 をプログラムすることができるようにするの
に必要である。
【0068】縦続接続「INTEL」8259 割り込
みコントローラ604,606 に対して(プログラム
の)読み出し又は書き込みを行うため、各種信号が、P
AL1610 によってシステム制御バス648から監
視される。図示するように、PAL1610 は、シス
テム制御バス648 から以下の信号を受信する。(1
) 命令又はデータのいずれかを示す制御信号(CMD
/D)、(2) 記憶装置又はI/Oのいずれかを示す
制御信号(M/IO)、(3) 読み出し又は書き込み
のいずれかを示す制御信号(RD/WR) 、及び(4
) アドレス(A4:A0又はA4〜AO)。上述の信
号は、外部I/O装置により生成され、「INTEL」
8259 割り込みコントローラ604,606 又は
RAM638 のいずれに対して(プログラムの)読み
出し又は書き込みを行うために使用することができるも
のである。
みコントローラ604,606 に対して(プログラム
の)読み出し又は書き込みを行うため、各種信号が、P
AL1610 によってシステム制御バス648から監
視される。図示するように、PAL1610 は、シス
テム制御バス648 から以下の信号を受信する。(1
) 命令又はデータのいずれかを示す制御信号(CMD
/D)、(2) 記憶装置又はI/Oのいずれかを示す
制御信号(M/IO)、(3) 読み出し又は書き込み
のいずれかを示す制御信号(RD/WR) 、及び(4
) アドレス(A4:A0又はA4〜AO)。上述の信
号は、外部I/O装置により生成され、「INTEL」
8259 割り込みコントローラ604,606 又は
RAM638 のいずれに対して(プログラムの)読み
出し又は書き込みを行うために使用することができるも
のである。
【0069】外部I/O装置が、縦続接続「INTEL
」8259 割り込みコントローラ604,606 に
アクセスしようとすると、PAL4658 及びPAL
5660 がイネーブルとなり、これにより「INTE
L」8259 割り込みコントローラ604,606
にシステムデータバス644 からアクセスすることが
可能となる。これに対し、システム割り込みがn個のM
PU 102〜108 のうちの1つに送られている場
合は、PAL4658 及びPAL5660 がディセ
ーブルとなり、これによりデータライン(vd7:0)
654,656がシステムデータバス644 から分離
され、したがって、結局は、RAM638により出力さ
れる16ビットのデータ語から分離される。
」8259 割り込みコントローラ604,606 に
アクセスしようとすると、PAL4658 及びPAL
5660 がイネーブルとなり、これにより「INTE
L」8259 割り込みコントローラ604,606
にシステムデータバス644 からアクセスすることが
可能となる。これに対し、システム割り込みがn個のM
PU 102〜108 のうちの1つに送られている場
合は、PAL4658 及びPAL5660 がディセ
ーブルとなり、これによりデータライン(vd7:0)
654,656がシステムデータバス644 から分離
され、したがって、結局は、RAM638により出力さ
れる16ビットのデータ語から分離される。
【0070】図8は、RAM638 から出力される割
り込みベクトルにより指定される行先CPUの付近に設
置されているベクトル変換受信器を示すものである。こ
のベクトル変換受信器は、以下に説明するように、ベク
トル変換送信器に関連する同様の構成要素及び機能を備
えている。
り込みベクトルにより指定される行先CPUの付近に設
置されているベクトル変換受信器を示すものである。こ
のベクトル変換受信器は、以下に説明するように、ベク
トル変換送信器に関連する同様の構成要素及び機能を備
えている。
【0071】図8のベクトル変換受信器は、システムデ
ータバス644 から、結局は図7のベクトル変換送信
器から、ラッチ704 に割り込みベクトルを読み出す
。ラッチ704は、二つの並列PAL、即ちPAL2A
706及びPAL2B708から構成されている。更に
、ラッチ704 は、チップイネーブル(CE)制御7
12 及び方向(DIR)制御714 を介してPAL
1710 により制御される。図7のPAL1610
と同様に、図8のPAL1710 は、制御論理として
働く。
ータバス644 から、結局は図7のベクトル変換送信
器から、ラッチ704 に割り込みベクトルを読み出す
。ラッチ704は、二つの並列PAL、即ちPAL2A
706及びPAL2B708から構成されている。更に
、ラッチ704 は、チップイネーブル(CE)制御7
12 及び方向(DIR)制御714 を介してPAL
1710 により制御される。図7のPAL1610
と同様に、図8のPAL1710 は、制御論理として
働く。
【0072】単一の「INTEL」8259 割り込み
コントローラ716 は図示するように、並列バス71
8(I7:I4),720(I3:0)を介して7ビッ
トの割り込みベクトル(I7:I0)を受信する。「I
NTEL」8259 割り込みコントローラ716は、
7ビットの割り込みベクトルに(局所割り込みと共に)
優先順位を与え、そのベクトルを3ビットの割り込みベ
クトル(vd2:0)に変換する。
コントローラ716 は図示するように、並列バス71
8(I7:I4),720(I3:0)を介して7ビッ
トの割り込みベクトル(I7:I0)を受信する。「I
NTEL」8259 割り込みコントローラ716は、
7ビットの割り込みベクトルに(局所割り込みと共に)
優先順位を与え、そのベクトルを3ビットの割り込みベ
クトル(vd2:0)に変換する。
【0073】次に、「INTEL」8259 割り込み
コントローラ716 は、その関連する局所CPU(n
個のMPU102 〜108のうちの1つ)に割り込み
ライン732 を介してシステム割り込みを知らせる。 次いで、局所MPUが、「INTEL」8259 割り
込みコントローラ716 に信号を送って割り込み肯定
応答サイクルを実行しなければならないことを知る。実
質的に、割り込み肯定応答サイクルは、特殊な種類のI
/O読み出しである。
コントローラ716 は、その関連する局所CPU(n
個のMPU102 〜108のうちの1つ)に割り込み
ライン732 を介してシステム割り込みを知らせる。 次いで、局所MPUが、「INTEL」8259 割り
込みコントローラ716 に信号を送って割り込み肯定
応答サイクルを実行しなければならないことを知る。実
質的に、割り込み肯定応答サイクルは、特殊な種類のI
/O読み出しである。
【0074】図示のように、PAL1710 は、局所
MPUから以下の信号を受信する。(1)命令又はデー
タのいずれか一方(CMD/D)、(2) 記憶装置又
はI/Oのいずれか一方(M/IO)、(3) 読み出
し又は書き込みのいずれか一方(RD/WR)、及び(
4) アドレス(A4:A0)。PAL1710 は、
局所MPUからの前述の信号をデコードし、割り込み肯
定応答ライン734 を介して「INTEL」8259
割り込みコントローラ716 に割り込み肯定応答を
送信する。
MPUから以下の信号を受信する。(1)命令又はデー
タのいずれか一方(CMD/D)、(2) 記憶装置又
はI/Oのいずれか一方(M/IO)、(3) 読み出
し又は書き込みのいずれか一方(RD/WR)、及び(
4) アドレス(A4:A0)。PAL1710 は、
局所MPUからの前述の信号をデコードし、割り込み肯
定応答ライン734 を介して「INTEL」8259
割り込みコントローラ716 に割り込み肯定応答を
送信する。
【0075】「INTEL」8259 割り込みコント
ローラ716 は、3ビットの割り込みベクトル(vd
2:0)をPAL1710 に送信する。このベクトル
は、8種類の異なる割り込みのいずれかを指定すること
ができるものである。したがって、PAL1710 は
、キャッシュイネーブル制御712 を介してラッチ7
04 を凍結し、キャッシュイネーブル制御740を介
してRAM738をイネーブルにする。更に、このPA
L1710 は、3ビットの割り込みベクトルをアドレ
ス(va2:va0)に変換する。このアドレスは、R
AM738 内のルックアップテーブルに送信される。 よって、システムデータバス644 から受取った元の
割り込みベクトル(I7:I0)は、8種の異なる可能
性のいずれであってもよいものであり、256 種の異
なる可能性のいずれともすることができる他のベクトル
を識別するために使用される。
ローラ716 は、3ビットの割り込みベクトル(vd
2:0)をPAL1710 に送信する。このベクトル
は、8種類の異なる割り込みのいずれかを指定すること
ができるものである。したがって、PAL1710 は
、キャッシュイネーブル制御712 を介してラッチ7
04 を凍結し、キャッシュイネーブル制御740を介
してRAM738をイネーブルにする。更に、このPA
L1710 は、3ビットの割り込みベクトルをアドレ
ス(va2:va0)に変換する。このアドレスは、R
AM738 内のルックアップテーブルに送信される。 よって、システムデータバス644 から受取った元の
割り込みベクトル(I7:I0)は、8種の異なる可能
性のいずれであってもよいものであり、256 種の異
なる可能性のいずれともすることができる他のベクトル
を識別するために使用される。
【0076】最後に、割り込みベクトルは、RAM73
8 からシステムデータバス(d7:0)644を介し
て関連する局所MPUに送信される。
8 からシステムデータバス(d7:0)644を介し
て関連する局所MPUに送信される。
【0077】RAM738 により出力された割り込み
ベクトルは、「INTEL」8259 割り込みコント
ローラ716 のデータライン(vd7:0)から分離
されなければならないが、データライン(vd7:0)
へのアクセスはなお考慮されている。その1つの理由は
、「INTEL」8259 割り込みコントローラ71
6 にアクセスし、プログラムすることができるように
するため、データライン(vd7:0)へのアクセスが
必要であるということである。
ベクトルは、「INTEL」8259 割り込みコント
ローラ716 のデータライン(vd7:0)から分離
されなければならないが、データライン(vd7:0)
へのアクセスはなお考慮されている。その1つの理由は
、「INTEL」8259 割り込みコントローラ71
6 にアクセスし、プログラムすることができるように
するため、データライン(vd7:0)へのアクセスが
必要であるということである。
【0078】「INTEL」8259 割り込みコント
ローラに対して読み書きを行おうとする場合、PAL3
758 及びPAL4760 がイネーブルになり、こ
れによりシステムデータバス644 から「INTEL
」8259 割り込みコントローラ716 にアクセス
することが可能となる。これに対し、割り込みが関連す
る局所MPUに送られている場合は、PAL3758
及びPAL4760 がディセーブルになり、これによ
り「INTEL」8259 割り込みコントローラ71
6 からのデータライン(vd7:0)がシステムデー
タバス644 から分離され、したがって、RAM73
8 により出力される割り込みベクトル(d7:0)か
ら分離される。
ローラに対して読み書きを行おうとする場合、PAL3
758 及びPAL4760 がイネーブルになり、こ
れによりシステムデータバス644 から「INTEL
」8259 割り込みコントローラ716 にアクセス
することが可能となる。これに対し、割り込みが関連す
る局所MPUに送られている場合は、PAL3758
及びPAL4760 がディセーブルになり、これによ
り「INTEL」8259 割り込みコントローラ71
6 からのデータライン(vd7:0)がシステムデー
タバス644 から分離され、したがって、RAM73
8 により出力される割り込みベクトル(d7:0)か
ら分離される。
【0079】本発明のシステム及び方法は、上述したよ
うに、割り込みせんさくによっても実施可能である。こ
の装置は、割り込みせんさくと、ソフトウェア割り込み
リダイレクション又はハードウェア割り込みリダイレク
ションとの混種態様となる。このような方法は、応答必
要性が重要なI/Oカードを有するMPシステムにおい
て望ましいものである。
うに、割り込みせんさくによっても実施可能である。こ
の装置は、割り込みせんさくと、ソフトウェア割り込み
リダイレクション又はハードウェア割り込みリダイレク
ションとの混種態様となる。このような方法は、応答必
要性が重要なI/Oカードを有するMPシステムにおい
て望ましいものである。
【0080】ソフトウェア割り込みリダイレクションは
、わずかに1個か2個、又は3個のマイクロプロセッサ
及び関連サブシステムを有するPCに好適である。その
1つの理由は、本発明を低価格で実施することができる
ということである。他の理由は、MPシステムに更にハ
ードウェアを付加するという負担がないということであ
る。また別の理由は、ソフトウェアのオーバヘッドが大
きくないということである。更に、アーキテクチャ的に
分離された多重バスに渡って接続を行うようにこのシス
テム及び方法をより一層容易に設計することが出来る。
、わずかに1個か2個、又は3個のマイクロプロセッサ
及び関連サブシステムを有するPCに好適である。その
1つの理由は、本発明を低価格で実施することができる
ということである。他の理由は、MPシステムに更にハ
ードウェアを付加するという負担がないということであ
る。また別の理由は、ソフトウェアのオーバヘッドが大
きくないということである。更に、アーキテクチャ的に
分離された多重バスに渡って接続を行うようにこのシス
テム及び方法をより一層容易に設計することが出来る。
【0081】ハードウェア割り込みリダイレクションは
、多数の大域割り込みがあるMPシステムにおいて、本
発明の一層望ましい形態となる。換言すれば、割り込み
を処理するためのこのようなMPシステムにおける省略
時CPUでの付加的なソフトウェアオーバヘッドが、省
略時CPUを停止に追い込むことができる。
、多数の大域割り込みがあるMPシステムにおいて、本
発明の一層望ましい形態となる。換言すれば、割り込み
を処理するためのこのようなMPシステムにおける省略
時CPUでの付加的なソフトウェアオーバヘッドが、省
略時CPUを停止に追い込むことができる。
【0082】最後に、ソフトウェア割り込みリダイレク
ション、割り込みリダイレクション、又はソフトウェア
又はハードウェア割り込みリダイレクションによる割り
込みせんさくは、OS/2又はUNIXオペレーティン
グシステム(ドライバ)とコンパチブルである。その理
由は、オペレーティングシステム及びアプリケーション
プログラムには大域割り込みが見えないということある
。
ション、割り込みリダイレクション、又はソフトウェア
又はハードウェア割り込みリダイレクションによる割り
込みせんさくは、OS/2又はUNIXオペレーティン
グシステム(ドライバ)とコンパチブルである。その理
由は、オペレーティングシステム及びアプリケーション
プログラムには大域割り込みが見えないということある
。
【0083】本発明は好適実施例に限定されるものでは
なく、上述の実施例は説明を目的とする単なる例に過ぎ
ない、ということが理解されるべきである。ゆえに、本
発明の範囲は、上述の詳細な説明及び図面により規定さ
れるものとしての特許請求の範囲により解釈されるべき
である。
なく、上述の実施例は説明を目的とする単なる例に過ぎ
ない、ということが理解されるべきである。ゆえに、本
発明の範囲は、上述の詳細な説明及び図面により規定さ
れるものとしての特許請求の範囲により解釈されるべき
である。
【0084】
【発明の効果】本発明は上述のように構成したので、M
Pシステムのプロセッサにより主記憶装置に不必要に繰
り返される問い合わせを排除してコンピュータシステム
のバス上の通信量を減少させ、これにより、MPシステ
ムの全体としての速度を向上させ、MPシステムに接続
可能なプロセッサの数を増大させることが出来る。また
、本発明はMPシステムの様々なバスのプロトコル及び
/又はコンパチブルモデルを再規定せずに実施すること
が可能であり、更に、ソフトウェアとハードウェアとの
いずれでも実施可能である。加えて、本発明は多様なプ
ロセッサ構成を考慮しており、同種又は非同種のMPU
を用いて実施することが出来る。このように、本発明に
より、共用記憶装置を有し、且つアーキテクチャ的に分
離された多重バスを備えることができるMPシステムに
おいて、大域割り込みを高性能に管理することが可能と
なる。
Pシステムのプロセッサにより主記憶装置に不必要に繰
り返される問い合わせを排除してコンピュータシステム
のバス上の通信量を減少させ、これにより、MPシステ
ムの全体としての速度を向上させ、MPシステムに接続
可能なプロセッサの数を増大させることが出来る。また
、本発明はMPシステムの様々なバスのプロトコル及び
/又はコンパチブルモデルを再規定せずに実施すること
が可能であり、更に、ソフトウェアとハードウェアとの
いずれでも実施可能である。加えて、本発明は多様なプ
ロセッサ構成を考慮しており、同種又は非同種のMPU
を用いて実施することが出来る。このように、本発明に
より、共用記憶装置を有し、且つアーキテクチャ的に分
離された多重バスを備えることができるMPシステムに
おいて、大域割り込みを高性能に管理することが可能と
なる。
【図1】パーソナルコンピュータアーキテクチャに採用
可能なn個の多重処理ユニットを備えた従来の多重プロ
セッサシステムを示すブロック図である。
可能なn個の多重処理ユニットを備えた従来の多重プロ
セッサシステムを示すブロック図である。
【図2】システム割り込みコントローラがMPUの任意
選択「省略時」CPUに対して全てのシステム割り込み
の伝達を行う、図1のアーキテクチャを用いた一般的な
割り込みプロトコルを示すブロック図である。
選択「省略時」CPUに対して全てのシステム割り込み
の伝達を行う、図1のアーキテクチャを用いた一般的な
割り込みプロトコルを示すブロック図である。
【図3】「割り込みせんさく」の概念、及び省略時CP
U方法と組み合わせて割り込みせんさくを用いた管理機
構を示すブロック図である。
U方法と組み合わせて割り込みせんさくを用いた管理機
構を示すブロック図である。
【図4】ハードウェア、ソフトウェア、及びそれらの組
み合わせといった形態においてリダイレクタを実施して
システム割り込みコントローラからの大域システム割り
込みをMPシステムの個々のCPUに直接チャネリング
する、本発明の好適な実施例を示すブロック図である。
み合わせといった形態においてリダイレクタを実施して
システム割り込みコントローラからの大域システム割り
込みをMPシステムの個々のCPUに直接チャネリング
する、本発明の好適な実施例を示すブロック図である。
【図5】本発明のソフトウェア割り込みリダイレクショ
ンを実施するための方法を示すフローチャートである。
ンを実施するための方法を示すフローチャートである。
【図6】本発明のハードウェア割り込みリダイレクショ
ンを実施するための方法を示すフローチャートである。
ンを実施するための方法を示すフローチャートである。
【図7】本発明によるリダイレクタの特定のハードウェ
ア的な実施例の一部である、システム割り込みコントロ
ーラの近くに配置されたベクトル変換送信器を示すブロ
ック図である。
ア的な実施例の一部である、システム割り込みコントロ
ーラの近くに配置されたベクトル変換送信器を示すブロ
ック図である。
【図8】本発明によるリダイレクタの特定のハードウェ
ア的な実施例の残りの部分である、MPシステムのn個
のMPUのそれぞれの近くに配置されたベクトル変換受
信器を示すブロック図である。
ア的な実施例の残りの部分である、MPシステムのn個
のMPUのそれぞれの近くに配置されたベクトル変換受
信器を示すブロック図である。
102〜108 MPU
130 システム割り込みコントローラ4
02 リダイレクタ
02 リダイレクタ
Claims (1)
- 【請求項1】共用記憶装置と少なくとも1つのプロセッ
サとを有するコンピュータシステムの性能を向上させる
ためのシステムであって、このシステムが、割り込みを
生成するシステム割り込みコントローラと、前記システ
ム割り込みコントローラからの割り込みを受信して前記
コンピュータシステムにおける個々のプロセッサに割り
込みを直接知らせるリダイレクタとよりなることを特徴
とする、マイクロプロセッサへの割り込みのリダイレク
ションシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US65468091A | 1991-02-13 | 1991-02-13 | |
US654680 | 1991-02-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04318654A true JPH04318654A (ja) | 1992-11-10 |
Family
ID=24625827
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4026575A Pending JPH04318654A (ja) | 1991-02-13 | 1992-02-13 | マイクロプロセッサへの割り込みのリダイレクションシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US5428799A (ja) |
JP (1) | JPH04318654A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111722916A (zh) * | 2020-06-29 | 2020-09-29 | 长沙新弘软件有限公司 | 一种通过映射表处理msi-x中断的方法 |
Families Citing this family (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2680591B1 (fr) * | 1991-08-22 | 1996-01-26 | Telemecanique | Controleur d'interruption programmable, systeme interruptif et procede de controle d'interruption. |
US5724549A (en) * | 1992-04-06 | 1998-03-03 | Cyrix Corporation | Cache coherency without bus master arbitration signals |
US5758053A (en) * | 1992-07-22 | 1998-05-26 | Hitachi, Ltd. | Fault handling and recovery for system having plural processors |
US5568643A (en) * | 1993-10-12 | 1996-10-22 | Sony Corporation | Efficient interrupt control apparatus with a common interrupt control program and control method thereof |
JPH07244649A (ja) * | 1994-03-08 | 1995-09-19 | Fujitsu Ltd | 割込処理分散方式 |
US5781187A (en) * | 1994-05-31 | 1998-07-14 | Advanced Micro Devices, Inc. | Interrupt transmission via specialized bus cycle within a symmetrical multiprocessing system |
US5708813A (en) * | 1994-12-12 | 1998-01-13 | Digital Equipment Corporation | Programmable interrupt signal router |
DE69628079T2 (de) * | 1995-03-31 | 2004-02-26 | Sun Microsystems, Inc., Santa Clara | Mechanismus auf Systemebene zum Entwerten von Daten, die im externen Cache eines Prozessors in einem Computersystem gespeichert sind |
US5710891A (en) * | 1995-03-31 | 1998-01-20 | Sun Microsystems, Inc. | Pipelined distributed bus arbitration system |
US5657472A (en) * | 1995-03-31 | 1997-08-12 | Sun Microsystems, Inc. | Memory transaction execution system and method for multiprocessor system having independent parallel transaction queues associated with each processor |
EP0735480B1 (en) * | 1995-03-31 | 2003-06-04 | Sun Microsystems, Inc. | Cache coherent computer system that minimizes invalidation and copyback operations |
US5684977A (en) * | 1995-03-31 | 1997-11-04 | Sun Microsystems, Inc. | Writeback cancellation processing system for use in a packet switched cache coherent multiprocessor system |
US5689713A (en) * | 1995-03-31 | 1997-11-18 | Sun Microsystems, Inc. | Method and apparatus for interrupt communication in a packet-switched computer system |
US5655100A (en) * | 1995-03-31 | 1997-08-05 | Sun Microsystems, Inc. | Transaction activation processor for controlling memory transaction execution in a packet switched cache coherent multiprocessor system |
US5634068A (en) * | 1995-03-31 | 1997-05-27 | Sun Microsystems, Inc. | Packet switched cache coherent multiprocessor system |
US5907485A (en) * | 1995-03-31 | 1999-05-25 | Sun Microsystems, Inc. | Method and apparatus for flow control in packet-switched computer system |
US6148321A (en) * | 1995-05-05 | 2000-11-14 | Intel Corporation | Processor event recognition |
US5799195A (en) * | 1995-07-24 | 1998-08-25 | Dell Usa, L.P. | Structure and method for detecting occurrence of external events using semaphores |
US5850555A (en) * | 1995-12-19 | 1998-12-15 | Advanced Micro Devices, Inc. | System and method for validating interrupts before presentation to a CPU |
US5894578A (en) * | 1995-12-19 | 1999-04-13 | Advanced Micro Devices, Inc. | System and method for using random access memory in a programmable interrupt controller |
US5850558A (en) * | 1995-12-19 | 1998-12-15 | Advanced Micro Devices | System and method for referencing interrupt request information in a programmable interrupt controller |
US5857090A (en) * | 1995-12-29 | 1999-01-05 | Intel Corporation | Input/output subsystem having an integrated advanced programmable interrupt controller for use in a personal computer |
US5893165A (en) * | 1996-07-01 | 1999-04-06 | Sun Microsystems, Inc. | System and method for parallel execution of memory transactions using multiple memory models, including SSO, TSO, PSO and RMO |
JPH1078934A (ja) * | 1996-07-01 | 1998-03-24 | Sun Microsyst Inc | パケット切替えコンピュータ・システムのマルチサイズ・バス結合システム |
US5898834A (en) * | 1996-08-16 | 1999-04-27 | Starwave Corporation | System, method, and medium for control of objects in a multi-platform environment |
US6021456A (en) * | 1996-11-12 | 2000-02-01 | Herdeg; Glenn Arthur | Method for communicating interrupt data structure in a multi-processor computer system |
US6247091B1 (en) * | 1997-04-28 | 2001-06-12 | International Business Machines Corporation | Method and system for communicating interrupts between nodes of a multinode computer system |
US6219741B1 (en) * | 1997-12-10 | 2001-04-17 | Intel Corporation | Transactions supporting interrupt destination redirection and level triggered interrupt semantics |
US6192439B1 (en) * | 1998-08-11 | 2001-02-20 | Hewlett-Packard Company | PCI-compliant interrupt steering architecture |
US6470408B1 (en) | 1999-04-14 | 2002-10-22 | Hewlett-Packard Company | Apparatus and method for delivering interrupts via an APIC bus to IA-32 processors |
US6625679B1 (en) | 1999-04-19 | 2003-09-23 | Hewlett-Packard Company | Apparatus and method for converting interrupt transactions to interrupt signals to distribute interrupts to IA-32 processors |
US6973095B1 (en) * | 2000-10-27 | 2005-12-06 | Redback Networks Inc. | Remote circuit provisioning |
US7107587B1 (en) | 2000-09-18 | 2006-09-12 | Microsoft Corporation | Access redirector and entry reflector |
KR100456630B1 (ko) * | 2001-12-11 | 2004-11-10 | 한국전자통신연구원 | 프로세서간 통신을 위한 인터럽트 중계 장치 및 방법 |
US20050165990A1 (en) * | 2003-01-24 | 2005-07-28 | Fujitsu Limited | Interrupt control device |
US7117285B2 (en) * | 2003-08-29 | 2006-10-03 | Sun Microsystems, Inc. | Method and system for efficiently directing interrupts |
US20050080961A1 (en) * | 2003-10-09 | 2005-04-14 | Bedwell Ryan D. | Communication steering for use in a multi-master shared resource system |
US7139857B2 (en) * | 2003-11-12 | 2006-11-21 | Standard Microsystems Corporation | Method and apparatus for handling interrupts |
US7752371B2 (en) * | 2003-12-29 | 2010-07-06 | Broadcom Corporation | System and method for interrupt abstraction |
US7240137B2 (en) * | 2004-08-26 | 2007-07-03 | International Business Machines Corporation | System and method for message delivery across a plurality of processors |
US8255591B2 (en) * | 2004-09-23 | 2012-08-28 | International Business Machines Corporation | Method and system for managing cache injection in a multiprocessor system |
US20060136642A1 (en) * | 2004-12-21 | 2006-06-22 | Ooi Ping C | Interrupt distribution for multiprocessor system |
JP5006526B2 (ja) * | 2005-05-31 | 2012-08-22 | ルネサスエレクトロニクス株式会社 | 割り込み分配装置 |
JP4247228B2 (ja) * | 2005-11-28 | 2009-04-02 | 株式会社日立製作所 | ヘテロマルチプロセッサシステムおよびそのos構成方法 |
JP2008065713A (ja) * | 2006-09-08 | 2008-03-21 | Canon Inc | マルチプロセッサシステム及び割込み制御方法 |
JP2008176360A (ja) * | 2007-01-16 | 2008-07-31 | Renesas Technology Corp | マルチプロセッサシステム |
US7774554B2 (en) * | 2007-02-20 | 2010-08-10 | International Business Machines Corporation | System and method for intelligent software-controlled cache injection |
US8612973B2 (en) * | 2007-09-26 | 2013-12-17 | Hewlett-Packard Development Company, L.P. | Method and system for handling interrupts within computer system during hardware resource migration |
US7962771B2 (en) * | 2007-12-31 | 2011-06-14 | Intel Corporation | Method, system, and apparatus for rerouting interrupts in a multi-core processor |
US7788435B2 (en) * | 2008-01-09 | 2010-08-31 | Microsoft Corporation | Interrupt redirection with coalescing |
JP5167844B2 (ja) * | 2008-02-05 | 2013-03-21 | 日本電気株式会社 | プロセッサ、電子機器、割込み制御方法及び割込み制御プログラム |
US9032128B2 (en) * | 2008-04-28 | 2015-05-12 | Hewlett-Packard Development Company, L.P. | Method and system for generating and delivering inter-processor interrupts in a multi-core processor and in certain shared memory multi-processor systems |
US8024504B2 (en) * | 2008-06-26 | 2011-09-20 | Microsoft Corporation | Processor interrupt determination |
US20090327556A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Processor Interrupt Selection |
US20100088446A1 (en) * | 2008-10-06 | 2010-04-08 | Texas Instruments Incorporated | Prioritizing interrupt controller |
JP5169731B2 (ja) * | 2008-10-24 | 2013-03-27 | 富士通セミコンダクター株式会社 | マルチプロセッサシステムlsi |
JP2011076584A (ja) * | 2009-09-02 | 2011-04-14 | Renesas Electronics Corp | 半導体集積回路装置 |
KR20110097447A (ko) * | 2010-02-25 | 2011-08-31 | 삼성전자주식회사 | 인터럽트 프록시 기능을 구비한 시스템 온 칩 및 그에 따른 인터럽트 프록시 처리방법 |
US8880764B2 (en) | 2011-08-30 | 2014-11-04 | Red Hat Israel, Ltd. | Pessimistic interrupt affinity for devices |
JP6365224B2 (ja) * | 2014-10-21 | 2018-08-01 | 富士通株式会社 | センシング制御プログラム及び携帯端末装置 |
US10089265B2 (en) | 2015-08-07 | 2018-10-02 | Mediatek Inc. | Methods and systems for handling interrupt requests |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3665404A (en) * | 1970-04-09 | 1972-05-23 | Burroughs Corp | Multi-processor processing system having interprocessor interrupt apparatus |
US4004283A (en) * | 1974-10-30 | 1977-01-18 | Motorola, Inc. | Multiple interrupt microprocessor system |
US4291371A (en) * | 1979-01-02 | 1981-09-22 | Honeywell Information Systems Inc. | I/O Request interrupt mechanism |
US4907149A (en) * | 1983-07-22 | 1990-03-06 | Texas Instruments Incorporated | Dynamic redirection of interrupts |
US4631670A (en) * | 1984-07-11 | 1986-12-23 | Ibm Corporation | Interrupt level sharing |
US4967342A (en) * | 1984-08-17 | 1990-10-30 | Lent Robert S | Data processing system having plurality of processors and channels controlled by plurality of system control programs through interrupt routing |
US4734882A (en) * | 1985-04-01 | 1988-03-29 | Harris Corp. | Multilevel interrupt handling scheme |
US4768149A (en) * | 1985-08-29 | 1988-08-30 | International Business Machines Corporation | System for managing a plurality of shared interrupt handlers in a linked-list data structure |
JPH0792782B2 (ja) * | 1985-09-30 | 1995-10-09 | 富士通株式会社 | 処理実行システム |
US4709324A (en) * | 1985-11-27 | 1987-11-24 | Motorola, Inc. | Data processor control unit having an interrupt service using instruction prefetch redirection |
US5125093A (en) * | 1990-08-14 | 1992-06-23 | Nexgen Microsystems | Interrupt control for multiprocessor computer system |
US5175853A (en) * | 1990-10-09 | 1992-12-29 | Intel Corporation | Transparent system interrupt |
-
1992
- 1992-02-13 JP JP4026575A patent/JPH04318654A/ja active Pending
-
1994
- 1994-05-27 US US08/250,349 patent/US5428799A/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111722916A (zh) * | 2020-06-29 | 2020-09-29 | 长沙新弘软件有限公司 | 一种通过映射表处理msi-x中断的方法 |
CN111722916B (zh) * | 2020-06-29 | 2023-11-14 | 长沙新弘软件有限公司 | 一种通过映射表处理msi-x中断的方法 |
Also Published As
Publication number | Publication date |
---|---|
US5428799A (en) | 1995-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH04318654A (ja) | マイクロプロセッサへの割り込みのリダイレクションシステム | |
US6711643B2 (en) | Method and apparatus for interrupt redirection for arm processors | |
US4481572A (en) | Multiconfigural computers utilizing a time-shared bus | |
US6370606B1 (en) | System and method for simulating hardware interrupts in a multiprocessor computer system | |
US6249830B1 (en) | Method and apparatus for distributing interrupts in a scalable symmetric multiprocessor system without changing the bus width or bus protocol | |
US6983337B2 (en) | Method, system, and program for handling device interrupts | |
US20050066099A1 (en) | Interrupt disabling apparatus, system, and method | |
US5944809A (en) | Method and apparatus for distributing interrupts in a symmetric multiprocessor system | |
US4736319A (en) | Interrupt mechanism for multiprocessing system having a plurality of interrupt lines in both a global bus and cell buses | |
US5937200A (en) | Using firmware to enhance the functionality of a controller | |
US6470408B1 (en) | Apparatus and method for delivering interrupts via an APIC bus to IA-32 processors | |
JPH01197866A (ja) | インターフエース装置と方法 | |
US6789142B2 (en) | Method, system, and program for handling interrupt requests | |
US6418497B1 (en) | Method and system for interrupt handling using system pipelined packet transfers | |
JPH02230455A (ja) | 外部記憶装置の割込み制御方式 | |
JPS63310051A (ja) | プログラム入出力命令を含む入出力プロセスの実行方法および装置 | |
US5524211A (en) | System for employing select, pause, and identification registers to control communication among plural processors | |
US5953535A (en) | Using intelligent bus bridges with pico-code to service interrupts and improve interrupt response | |
US20020087775A1 (en) | Apparatus and method for interrupt delivery | |
US6112272A (en) | Non-invasive bus master back-off circuit and method for systems having a plurality of bus masters | |
US5774743A (en) | System for implementing peripheral device bus mastering in mobile computer via micro-controller for programming DMA controller, generating and sending command signals, and receiving completion status | |
US5931930A (en) | Processor that indicates system bus ownership in an upgradable multiprocessor computer system | |
US20030088723A1 (en) | System and method for processing interrupts | |
JPH01305461A (ja) | バス使用権制御方式 | |
JPH056333A (ja) | マルチプロセサシステム |