JPH02267634A - 割込み処理装置 - Google Patents

割込み処理装置

Info

Publication number
JPH02267634A
JPH02267634A JP2029760A JP2976090A JPH02267634A JP H02267634 A JPH02267634 A JP H02267634A JP 2029760 A JP2029760 A JP 2029760A JP 2976090 A JP2976090 A JP 2976090A JP H02267634 A JPH02267634 A JP H02267634A
Authority
JP
Japan
Prior art keywords
context
priority
interrupt
active
contexts
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.)
Granted
Application number
JP2029760A
Other languages
English (en)
Other versions
JPH0612527B2 (ja
Inventor
Tai-Lin Chang
タイ‐リン・チヤング
Paul W Hunter
ポール・ウエイン・ハンター
Donald J Lang
ドナルド・ジヨン・ラング
Stephen G Luning
ステイブン・グーズ・ラングイング
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH02267634A publication Critical patent/JPH02267634A/ja
Publication of JPH0612527B2 publication Critical patent/JPH0612527B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、プログラム式計算機、特に割込み機構を有す
るプログラム式計算機に関する。そのようなプログラム
式計算機はデータ処理機域に関する周辺制御装置であり
うる。
B、従来技術 全ての型のプログラム式計算機は、内部、外部の両者、
及びプログラムによる割込みを処理する機構を含んでい
る。それらの機構のうち、あるものは、ラウンド・ロビ
ン割込み優先順位等の固定式の割込みの優先順位を有し
ている。他の割込み機構は、可変な割込みの優先順位を
備えている。
周辺機器の制御装置は、典型的には、固定した割込み優
先順位を用いている。それは、プラグボード(ビンボー
ドとも呼ばれる)の形で制御装置中にプラグされるか、
又は電気回路の形に配線される。そのような制御装置に
おいて、周辺装置の接続の位置は優先順位を示し、内部
回路の接続はその各々の優先順位を示す。
米国特許第4103330号明細書は、優先順位割込み
エンコーダを有するデータ処理装置を示している。割込
みエンコーダは、I10制御装置から割込み又は起動要
求を受取る。このエンコーダは、割込み要求を4ビツト
のデータにエンコードし、これはさらに、現タスク・レ
ジスタに与えられる。このデータは、現在の最高の優先
順位の未解決の要求を示す。そのような優先順位は、エ
ンコーダの電気回路によって固定されている。より柔軟
で且つ効率的な割込みの評価及び処理を提供する事が望
ましい。
米国特許第3599162号明細書は、複数の割込みテ
ーブルを有する割込み処理装置を示している。各テーブ
ルは、全て同一の優先順位を有している複数の受取った
割込み要求を記憶する事ができ、各テーブルは異なった
優先順位の割込みを記憶している。明らかに、任意の与
えられたテーブルにおいて、割込み要求はFIFO方式
で処理される。従って、テーブル内のFIFO還択は、
同一の優先順位を有する割込み要求の間の同格性を破る
機能(tie breaking function)
である。
米国特許第4338662号明細書は、マイクロ命令の
割込み制御を示している。ここで、割込みを受けるマイ
クロ命令は、それらの優先順位に従ってスタック中に記
憶されている。割込まれたマイクロ命令の実行は、割込
みを行なったマイクロ命令が終了すると再開される。こ
の方式も、固定した優先順位を使用しているようである
米国特許第4636944号明細書は、多レベル優先順
位マイクロ割込み制御装置を示している。
割込みレベルの各々に関して1つの割込み信号だけが1
時に活動状態になれる。より高い優先順位の割込みが起
きると、制御装置は、割込みが終了した時に、割込まれ
た命令が再開できるように、現在割込まれた命令をスタ
ックする。
米国特許第4358829号明細書は、動的ランク順序
付はスケジューリング機構を示している。
この機構は、要素のランクによって決定された位置のリ
スト中に要素を挿入する事を可能にし、且つリストのト
ップからのみ要素の削除を可能にする。この構成は、リ
スト中の要素の優先順位の動的なエージングを提供する
C0発明が解決しようとする課題 上述の文献のいずれも、実行中のコンテキストに基すい
た柔軟性に富み且つ効率のよい割込み手続き又は装置を
提案していない。これは、実行中であろうとなかろうと
、任意の活動状態のコンテキストを休止させ、且つ同じ
割込み優先順位を有するコンテキストに関する任意の割
込みの間で同格性を破る事を可能にする。
本発明の目的は、プログラム命令の実行が、現在実行中
のコンテキストの優先順位も又現在実行中でないどの活
動状態のコンテキストの優先順位も知る必要がない割込
み制御を提供する事である。
本発明の他の目的は、コンテキストの同一性ではなくコ
ンテキストの状態によって割込みの優先順位を変えるこ
とを可能にする事である。
本発明の他の目的は、指示された最高の使先順位の割込
みコンテキストに従って、割込み制御装置が、プログラ
ム式プロセッサを管理する事を、可能にする事である。
91課題を解決するための手段 本発明によれば、割込み信号は、プログラム式プロセッ
サが割込まれるか否かを決定するために解析される。計
算機は、プログラム式プロセッサに関して複数の動作コ
ンテキストを確立し、そのコンテキストの各々に関して
割込みの主優先順位及び2次優先順位を確立する。
1以上の割込み信号を記憶する手段が設けられる。それ
らの割込み信号は、各々、記憶された割込み信号に対応
するコンテキストに命令実行を変更するためのプロセッ
サ動作の割込みに関する要求を示す。また計算機は、プ
ログラム式プロセッサが現在命令を実行していても又し
ていなくてもよい全ての活動状態のコンテキストを示す
情報、及びプログラム式プロセッサが命令を実行してい
る現行のコンテキストを示す情報を維持している。
プログラム式プロセッサの動作の所定のサイクルの間、
主優先順位及び2次優先順位を確かめる事を含めて、活
動状態のコンテキストの全てと記憶された割込み信号と
が互に比較され、最高の優先順位の活動状態コンテキス
ト又は割込み信号が示される。上記示された最高の優先
順位の活動状態のコンテキスト又は割込み信号を主優先
順位と2次優先順位の両者において現行のコンテキスト
と比較し、上記示された最高の優先順位の活動状態のコ
ンテキスト又は割込み信号が現行のコンテキストの優先
順位よりも高い時にプログラム式処理装置に割込みを行
なう。
E、実施例 周辺制御装置等のプログラム式計算機において、プログ
ラムされた動作はいくつかの動作コンテキストの1つに
おいて実行される。各コンテキストは対応する割込み信
号により開始される。活動化されたコンテキストは、プ
ログラム実行により休止されるまで活動状態に留まる。
活動状態のコンテキストの1つは全ての命令実行が現在
起きている現行コンテキストである。プログラム式計算
機の各サイクルにおいて、全ての活動状態のコンテキス
ト及び受取られ記憶されている割込み信号が、互に、比
較され、最高の優先順位のコンテキストが見出される。
そのような最高の優先順位のコンテキストは現行のコン
テキストの優先順位と比較され、プログラム式計算機が
現行コンテキストを変更すべきか否かが判定される。
添付図面において、種々の図の中で同じ数字は同様の部
品及び構造的特徴を示している。第1図は、単一の半導
体チップ10の形に集積化された、周辺制御装R(図示
せず)の一部であるプログラムされたプロセッサ・シス
テムを示す。このシステムは、任意の通常の設計のマイ
クロプロセッサ回路より成るチップ・プロセッサを含ん
でいる。命令記憶装置12はチップ外にあり、実行すべ
き命令を取り出すためにプロセッサ11アクセス可能で
ある。チップ10中の1組の記憶レジスタ13(これは
RAMでもよい)がチップ内パス14を経由してチップ
・プロセッサ11に接続される。バス14は、通常の複
数の電気導体であって、一部の導体はデータ信号を伝え
、他の導体はタグ又は制御信号を伝える。そのような構
成は、2つのバス、データ・バス及び制御バスと考える
事もできる。レジスタ13はプロセッサ11に関するロ
ーカル記憶として働く。レジスタ13にはプログラム保
存領域15が含まれている。これはプログラム記憶ワー
ド(PSW)のスワップに関して後述する。複数のバス
・アダプタ16が、チップ内バス14を、同じ回路ボー
ド(図示せず)上の複数の他の機能チップに(そのよう
なチップ(図示せず)は、各バス・アダプタ16を他の
機能チップに動作可能に接続し、それらはさらにホスト
・プロセッサのチャネル、周辺装置等に接続される)、
又は他の回路ボード(図示せず)に、又は他の装置(図
示せず)に動作可能に接続する。割込み回路18は、チ
ップ・プロセッサ11と通信しその動作に割込みを行な
うためにチップ内バス14に接続される。
割込み回路18は多様なプログラム実行割込み信号を受
取る。最高の優先順位の割込み(これは図示の実施例で
は固定されている。)は、パワー・リセットが生じた事
を示す外部源(図示せず)から外部チップ接続20を経
由して受取られるパワー・オン・リセット(FOR)で
ある。固定した最高優先順位の他の外部割込みは、外部
チップ接続21を経由して受取られるトラップ信号であ
る。これら2つの型の割込みに対するチップ・プロセッ
サ11の応答は公知である。1組の外部割込み入力チッ
プ接続22は、他のチップ、例えば上述のようなチップ
であってデータ・バス17の1つ以上に接続され上記バ
スを介してチップ10上のプロセッサ・システムが通信
を行なうようなチップに接続している。1組のチップ内
部割込み人力23も回路18に入っている。本発明は、
上記の割込み信号の全ての取扱い及びチップ・プロセッ
サ11が命令のストリームを実行するコンテキストの管
理に関する。
第2図は、割込み回路18を単純化して示したものであ
る。ハードウェア割込レジスタ30は、第1のランクで
(図示せず)割込み要求信号を非同期的に受取る2重ラ
ンク・レジスタである。レジスタ30は、その信号内容
を1割込み評価サイクル、即ち計算機動作の約1サイク
ルの間保持するフェーズ・ホールド・レジスタである。
レジスタ30に入力される割込み信号は、割込みが認め
られるまで活動状態に留まっても又割込みが認められる
まで各マシン・サイクル毎に再発行されてもよい。チッ
プ・プロセッサ11のサイクルがサイクルの開始点から
所定の経過時間に達すると、その度にレジスタ30の第
1ランクの要求信号(図示せず)がその第2ランク(図
示せず)に転送される。後で述べる回路は、第2ランク
のレジスタ30を効率的に走査し、受取った割込み要求
を読取る。レジスタ30には、各コンテキストに対応す
る1つのビット位置が存在している。
チップ・プロセッサ11は、複数の可能なコンテキスト
のうち1つだけのコンテキストで実行する。コンテキス
トの各々は、割込み回路18の管理と制御の下で、準備
されチップ・プロセッサllに入れられる。後述するよ
うに、プログラム又はソフトウェア手段により割込みの
優先順位がセットされる。コンテキスト実行中のそのよ
うな設定はコンテキストの現在の状態を反映している。
即ち、設計者は、設計に従って割込み優先順位を変更す
る本発明以外にプログラミング又はソフトウェアによる
制御を組込む事もできる。第2図は、この柔軟性を可能
にする装置及びシステムを示している。また、チップ・
プロセッサ11の実行プログラムは、どのコンテキスト
をそれが実行しているか又はどれぐらいの数の又はどの
コンテキストが活動状態か(依然作業は活動状態のコン
テキスト中で実行される)を知る必要はない。この制御
及び管理の全ては、チップ・プロセッサ11のソフトウ
ェアの相互作用を最小限に保ちながら、割込み回路18
によって実行される。活動状態コンテキスト・レジスタ
31は、現在活動状態にあるコンテキスト全ての識別情
報を記憶する。そのまうな識別情報は、各コンテキスト
に対応するレジスタ中のビット位置であり、コンテキス
ト毎に1つのビットがある。セット・ビットは対応する
コンテキストが活動状態にある事を示し、一方リセット
・ビットは対応するコンテキストが活動状態にない即ち
休止状態である事を示している。この記憶装置は、現在
実行中の活動状態のコンテキストを含み、そのような実
行中のコンテキストは、現行コンテキスト・レジスタ3
2中の対応ビットがセットされる事により識別される。
チップ・プロセッサ11はバス14を介して、活動状態
コンテキスト・レジスタ31の内容をセットし感知する
。一方、後述する回路が現行コンテキスト・レジスタ3
2をセットする。このレジスタはチップ・プロセッサ1
1により感知され、書込まれる。後述の有効割込み取扱
い及び休止状態コンテキスト取扱いは、チップ・プロセ
ッサ11が活動状態コンテキスト・レジスタ31のコン
テキストを更新するようにチ・ンブ・プロセッサ11を
含んでいる。
この活動は、与えられたコンテキスト内のプログラム実
行が、どのコンテキストが活動状態かに関する何らかの
情報を必要とする意味しない。
チップ・プロセッサ11の動作の各サイクル中の所定の
時点でチップ・プロセッサ11からサイクル・クロック
信号が信号線35を伝搬して、レジスタ30を第2ラン
クにし、活動状態コンテキスト・レジスタ31が1組の
論理OR回路36を経由してそれらの各内容のコピーを
転送するようにさせる。そのような論理OR回路の各々
は、2つのレジスタの同じ位置のビット、即ち同じコン
テキストに論理的に関係するビット信号をマージし、マ
ージしたビット信号を、最高発見回路37(以下FH回
路37と呼ぶ)に渡す。FH回路37は、マージされた
ビット信号を、後の処理のために適当なレジスタ(図示
せず)に保存する。そのような処理は、マージされたビ
ットの信号(活動状態のコンテキスト又は割込み要求)
のどれが最高の割込み優先順位を有しているかを識別す
る。最高優先順位の活動状態コンテキスト又は受信した
要求の識別に続いて、FH回路は、現行コンテキスト・
レジスタ32の優先順位の識別の間の優先順位比較に関
する最高の優先順位をどのビット(どのコンテキスト)
が有しているかを回路38に符号化させる。最初に、符
号化回路38によりビットは、識別された最高の優先順
位に関するPSWを記憶する保管領域15アドレスを識
別するアドレス値に符号化される。比較回路39はレジ
スタ32からバス40を経由して現行コンテキストを示
すビットを受取る。比較回路32は、ビットを、現行コ
ンテキストに関する保管領域15アドレスに符号化する
。コンテキストPSWに関する保管領域15アドレスは
、事前に定められた順序で配列されている。符号化回路
38からのアドレスが現行コンテキスト・レジスタ32
から受取ったアドレスと違っており、最高位の見出され
た割込みが現行コンテキストの優先順位よりも高い優先
順位を有している事を、比較回路39が見出す時、有効
な割込み信号が生成される。有効な割込み信号は信号線
41を経由してチップ・プロセッサ11に供給される。
事実上同時に、現行コンテスト・レジスタ32の内容が
AND回路42を介して(最高優先順位発見に伴うコン
テキストへの有効割込み信号によりエネーブルされると
き)更新される。また代りに、チップ・プロセッサ11
が、近々起きるPSWのスワップを反映するように現行
コンテキスト・レジスタ32の内容を更新してもよい。
また、2つのコンテキスト、即ち割込みを行なうコンテ
キストと割込まれるコンテキストどの間のPSWスワッ
プをチップ・プロセッサ11が行なう事を可能にするた
めに新しい保管領域15のアドレスをアドレス・レジス
タ44が受取る事が可能になる。この時点で、休止状態
のコンテキストを活性化する割込みの認知を反映するた
めに、活動状態コンテキスト・レジスタ31が、チップ
・プロセッサ11によりバス14を介して更新される。
割込みコンテキスト(見出された最高の優先順位のコン
テキスト)に対応するレジスタ30の第2ランク中のビ
ット位置は、フェーズ・ホールド時間の経過によりリセ
ットされる。
FH回路37の動作は、レジスタ30.31から受取っ
たコンテキストの識別情報と、コンテキスト優先順位レ
ジスタ45中に記憶された割当てられたコンテキスト優
先順位とを組合せる。好ましくは、(FOR等の)シス
テムの初期化の間にチップ・プロセッサ11がバス14
を介してレジスタ4Sにアクセスして、それを初期に及
び動的にコンテキストに対して優先順位を割当てるよう
に設定する。動的な割当ては、現在実行中のコンテキス
トの現在の状態を反映する。ある例では、現在実行中の
コンテキストは全てのコンテキストの優先順位を動的に
変更する事はないかもしれない。
この時、コンテキスト優先順位のあるものは、終了した
又は割込みを受けた初期に実行していたコンテキストの
状態を依然として反映しているかもしれない。レジスタ
45の各々は、所定の数のビット位置を有しており、1
つのビット位置はコンテキストの各々に対応する。各レ
ジスタのビット位置の数が小さいほど、その位置はより
高い優先順位を示している。最低の数及び最高の数のビ
ット位置はセット可能である。そのような位置は各々ト
ラップ及びパックグラウンド処理のために予約されてい
る。FORの間に、レジスタ内容はクリアされ、チップ
・プロセッサ11は再び初期に割当てられていた優先順
位を確立しなければならない。各レジスタ45に中にセ
ットされている最低の数のビットは、対応するコンテキ
ストに関する優先順位を示す。もしどのレジスタにもビ
ットがセットされていなければ、そのコンテキストは優
先順位が割当てられていない。即ちそのようなコンテキ
ストと協同する外部装置が取り付けられていないか又は
何らかの理由でコンテキストによる割込みが禁止されて
いるが若しくはマスクされている場合、レジスタ45の
各々を消去又はセットしない事は実効的にそのコンテキ
ストに関する割込みをマスクする。コンテキスト優先順
位レジスタの種々のものにおいて、ビット位置のうちあ
るものはそのようなコンテキストに割当てる事が許され
ないかもしれない。この制御はある優先順位をコンテキ
ストからマスクする。そのような選択は設計の選択の問
題である。
活動状態コンテキストの各々に関するFH回路37、及
び論理OR回路36を介して受取られ記憶された割込み
要求は、コンテキストに割当てられた優先順位を確認す
るためにコンテキスト優先順位レジスタ45の各々にア
クセスする。レジスタ45の走査により、最高の割当て
られた優先順位を有する評価中のどのコンテキストがF
H回路37をエネーブルして上述の信号を符号化回路3
8に出力させるかが明らかになる。FH回路37内で優
先順位走査を評価するためにいくっがの設計及び手続き
を用いることができる。第6図の計算機動作のチャート
はFH回路37の論理設計を示している。
チ・ンプ・プロセッサ11と割込み処理とのソフトウェ
ア相互作用は、第3図に非常に単純化した形で示されて
いる。信号線41上のイJ効な割込み信号に応答して、
チップ・プロセッサ11はステップ50で、次のマシン
・サイクル(ステップ51の)におけるPSWスワップ
の準備のためにレジスタ44を読取る。ステップ51で
は、命令記憶装置12から命令は取り出されない。ステ
ップ51に続いて、割込み処理の第2のマシン・サイク
ルで、チップ・プロセッサ11は割込みコンテキストの
中で動作する。チップ・プロセッサ11が、与えられた
コンテキストに関する処理を完了するとそのコンテキス
トはステップ52で休止される。このステップ中に、チ
ップ・プロセッサ11は信号線47を介して休止信号を
割込み回路18に供給し、現行コンテキスト・レジスタ
32をパックグラウンド処理にセットし、活動状態コン
テキスト・レジスタ31中の関連活動ビットをリセット
する。この時、回路18の動作のサイクル中に現在の最
高優先順位の活動状態コンテキスト又は受取った割込み
要求が上述のように割込みコンテキストになることがで
きる。信号線47は、現行コンテキスト・レジスタ32
をクリアするための休止信号を伝達する。信号線48は
、活動状態コンテキスト・レジスタ31中の関連ビット
をリセットする事を表わす。言い換えると、チップ・プ
ロセッサ11中で実行しているソフトウェアは単にコン
テキストの休止を開始するだけである。
FH回路37の一般的な動作は第4図に示されている。
ステップ60はレジスタ30による割込み要求の非同期
的な受理を表わす。最初のマシン・サイクル61におい
て、ソフトウェアのマシン・ステップ50と一致する時
間に回路18は次に述べるマシン・ステ・ンプを実行す
る。ステップ62で回路18は、割込みレジスタ30及
び活動状態コンテキスト・レジスタ31からの入力信号
として論理OR回路36の出力を受取る。ステップ63
で、回路18は、受取った入力信号により表わされるコ
ンテキスト(もしあれば)のどれが最高の割当てられた
優先順位を有しているかを見出す。
次に、判定ステップ64で(比較回路39の動作に対応
)、ステップ63で判定された最高の割当てられた使先
順位が現在実行中のコンテキストの優先順位レベルより
も高いかどうかが判定される。
もし現在の優先順位レベルが、見出された優先順位レベ
ルよりも高いか又は等しい場合はライン65に示すよう
に何の動作も行なわれない。即ち、有効割込み信号は発
生しない。現在のコンテキストの優先順位が、見出され
た優先順位よりも高いか又は等しいという事がない場合
は、マシン・ステップ66で、レジスタ30の第2ラン
クのビット位置がリセットされ、新しいコンテキストを
準備するために有効割込み信号が信号線41を経由して
供給される。次に、その結果として起きるマシン・サイ
クル67中に、チップ・プロセッサはステップ52でP
SWスワップを実行する。
第5図はコンテキストの休止を、単純化した形で、説明
するチャートである。マシン・ステップ70で、チップ
・プロセッサはコンテキストを終了するか否かを決定す
る。このコンテキストは、通常、レジスタ32に示され
る現在実行中のコンテキストであり、それに対して何の
制限も意図されていない。ステップ70から延びている
のは、信号線47上の休止信号を表わすラインである。
次のマシン・ステップ71で、信号線47の休止信号は
現行コンテキスト・レジスタ32をリセットする。マシ
ン・ステップ73で、活動状態コンテキスト・レジスタ
31中の対応する活動状態ビットが、信号線47を伝搬
する休止信号によりリセットされる(第2図の信号線4
8参照)。プロセッサ11は、バス14を介して活動状
態ビットをリセットできる。マシン・ステップ74で、
プロセッサ11はバックグラウンドの(最低の優先順位
レベルの)コンテキスト中にある。次に、マシン・ステ
ップ75で、再び割込み回路18が、上述のように最高
の優先順位の活動状態のコンテキスト又は割込みを見出
す。電子回路を用いてセツティングを行なわなくても、
プロセッサ11がPSWスワップ・ステップ52の間に
レジスタ32をセットできる事に留意されたい。またプ
ロセッサ11は、マシン・ステップ70中に現行コンテ
キスト・レジスタ32をバックグラウンド・レベル(最
低の優先順位)にセットできるが、回路18により現行
コンテキスト・レジスタ32をセットする動作が行なわ
れる前に、そのような活動からプロセッサ11を解放す
る事が好ましい。
FH回路37の動作を第6図を参照しながら説明する。
動作は、ライン80に示すように開始される。読取りス
テップ81は論理OR回路36の出力を捉える。優先順
位との割込み/コンテキストの照合のステ・ンブ82で
、動作の最初のバスでFORトラップ・ビットが調べら
れる。もしそれがセットされていれば、動作は経路83
に従って、符号化回路38及び他の回路を上述のように
動作させるように活動化する事により有効な割込み信号
を準備する。もしPORトラップがセットされていなけ
れば、FH回路37のホールディング・レジスタ(図示
せず)の次のビット位置が調べられる。もしセットされ
ていれば、対応するレジスタ4Sが、割当てられた優先
順位レベルを得るために調べられる。ステップ84では
、判明した優先順位レベルが、この動作サイクルでかつ
て調べられた優先順位のうち最高のレベルを記憶するた
めに使われる1バイト・レジスタ(図示せず)の内容と
比較される。最初のバスの間、1バイト・レジスタの内
容はバックグラウンド処理を表わす最高の数である。そ
れは現在のコンテキストの優先順位にセットされる事も
ありうる。比較回路39は、もし見出された最高の使先
順位が現在の優先順位レベルよりも大きい場合に有効割
込み信号を供給するだけである。何らかの事象において
、もしステップ84での比較により、調べられているコ
ンテキストの優先順位が1バイト・レジスタ中の優先順
位よりも低い事が判明すると、後述のハウスキーピング
動作が起きる。比較ステップ84によリ、調べられてい
るコンテキストの優先順位が1バイト・レジスタの内容
よりも高い事が判明すると、ステップ86で、調べられ
ているコンテキストの優先順位とコンテキスト識別情報
が、1バイト・レジスタに記憶される。もし比較ステッ
プ84で、比較された優先順位が等しければ、ステップ
87でコンテキスト・レジスタ45(コンテキスト番号
、優先順位ではない)のアドレスと1バイト・レジスタ
中で識別されたコンテキストに関するコンテキスト・レ
ジスタ45アドレスが比較される。平衡を破る動作とし
て、最低のレジスタ45アドレス(@低のコンテキスト
番号)を有するコンテキストが、最高の優先順位を持つ
ように判定される。優先順位の、固定された第2レベル
の評価は複数のコンテキストが同様の優先順位レベルを
割当てられる事を可能にする。評価されるコンテキスト
のアドレスがより高ければ、後述のハウスキーピング動
作が起きる。さもなければ、評価されるコンテキストの
アドレスがより低ければ(より高い優先順位)、そのア
ドレス及び優先順位レベルはステップ88で1バイト・
レジスタに記憶される。ハウスキーピング動作は、ステ
ップ84.86.87又は88のどれかから開始する。
ステップ90で、レジスタ30.31がら受取ったさら
に別のコンテキスト/要求を調べなければならないかど
うかが判定される。もしなければ、動作は、ライン91
を経てステップ64に進む。
ステップ92で識別される、入力信号からの次のビット
はステップ81で得られ、FH回路37によって受取ら
れたセット・ビットの全てが調べられるまで、動作のル
ープが反復される。次に、見出された最高僅先順位に関
する情報がF H回路37により符号化回路38に転送
される。
F0発明の効果 本発明の割込み処理方式によれば、I10制御装置中の
マイクロコードの実行に関する負荷が軽減される。
【図面の簡単な説明】
第1図は、周辺制御装置中で使用するための、単一の半
導体チップに組込まれる、プログラム式処理装置の単純
化したプロ・ンク図、 第2図は、第1図のプログラム式処理装置で使用される
コンテキスト及び割込み制御装置を示す図、 第3図は、有効な割込み及びプログラムにより開始され
るコンテキスト休止に対する応答を示す単純化された流
れ図、 第4図は、第2図に示す装置の動作を示す単純化した機
械動作の図、 第5図は、第2図に示した装置を用いた時のコンテキス
ト休止を示す単純化した機械動作の図、第6図は、第2
図に示した装置による割込み信号に関するコンテキスト
又は最高の優先順位の活動状態コンテキストを見出す事
を説明する単純化した機械動作の図である。 出願人 インターナショナル・ビジネス・マシーンズ・
コーポレーション

Claims (2)

    【特許請求の範囲】
  1. (1)プログラム式処理装置に割込みを行なう装置であ
    って、 割込み信号を示す情報を記憶する割込み手段と、上記プ
    ログラム式処理装置に関して現在活動状態にある全ての
    コンテキストを示す情報を記憶する活動状態コンテキス
    ト手段と、 上記プログラム式処理装置がプログラム命令のストリー
    ムを実行している現行のコンテキストを示す情報を記憶
    する現行コンテキスト手段と、コンテキストの優先順位
    を記憶する優先順位手段とを有し、 上記割込み手段及び活動状態コンテキスト手段に動作的
    に接続され、上記記憶情報を受取り、且つ上記優先順位
    手段に動作的に接続され、コンテキストの優先順位を受
    取って、最高の優先順位を有するコンテキストを示す発
    見手段と、 上記発見手段、上記優先順位手段、上記現行コンテキス
    ト手段に接続され、上記発見手段により示される最高の
    優先順位のコンテキストの間の優先順位を現行コンテキ
    スト手段の優先順位と比較し、現行コンテキストの優先
    順位よりも高い優先順位を上記発見手段が示す時に有効
    割込みを示す割込み有効化手段と、 上記割込み有効化手段に接続され、有効割込み情報に応
    答して上記プログラム式処理装置に割込みを行なう手段
    と、 上記各手段に接続され、上記各手段を活動化する手段と
    を含む割込み処理装置。
  2. (2)プログラム式処理装置が割込みを受けるか否かを
    判定する割込み信号処理方法であって、プログラム式処
    理装置に関して複数の動作コンテキスト、並びにコンテ
    キストの各々に関して割込みの主優先順位及び2次優先
    順位を確立し、処理装置の動作に割込みを行ない命令実
    行を割込み信号に対応するコンテキストに変更すること
    を要求する1つ以上の割込み信号を記憶し、 上記プログラム式処理装置が現在命令を実行していても
    又していなくてもよい全ての活動状態のコンテキストを
    示す情報、及び上記プログラム式処理装置が命令を実行
    している現行のコンテキストを示す情報を維持し、 プログラム式処理装置の所定の動作サイクル中に、各々
    の主優先順位及び2次優先順位の確認を含めて全ての活
    動状態のコンテキスト及び記憶された割込み信号を互に
    比較し最高の優先順位の活動状態のコンテキスト又は割
    込み信号を示し、 上記示された最高の優先順位の活動状態のコンテキスト
    又は割込み信号を主優先順位と2次優先順位の両者にお
    いて現行のコンテキストと比較し、上記示された最高の
    優先順位の活動状態のコンテキスト又は割込み信号が現
    行のコンテキストの優先順位よりも高い時にプログラム
    式処理装置に割込みを行なう、各ステップを含む 割込み信号処理方法。
JP2029760A 1989-02-13 1990-02-13 割込み処理装置 Expired - Lifetime JPH0612527B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/310,409 US5057997A (en) 1989-02-13 1989-02-13 Interruption systems for externally changing a context of program execution of a programmed processor
US310409 1989-02-13

Publications (2)

Publication Number Publication Date
JPH02267634A true JPH02267634A (ja) 1990-11-01
JPH0612527B2 JPH0612527B2 (ja) 1994-02-16

Family

ID=23202368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2029760A Expired - Lifetime JPH0612527B2 (ja) 1989-02-13 1990-02-13 割込み処理装置

Country Status (4)

Country Link
US (1) US5057997A (ja)
EP (1) EP0383474B1 (ja)
JP (1) JPH0612527B2 (ja)
DE (1) DE69023018T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7318458B2 (en) 2003-05-08 2008-01-15 Ludvig Svensson B.V. Cloth designed to be provided with at least one permanent fold and method applied thereby

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5142677A (en) * 1989-05-04 1992-08-25 Texas Instruments Incorporated Context switching devices, systems and methods
EP0757336B1 (en) 1995-08-04 2000-11-22 Belle Gate Investment B.V. Data exchange systems comprising portable data processing units
US5504904A (en) * 1994-02-23 1996-04-02 International Business Machines Corporation Personal computer having operating system definition file for configuring computer system
US6601081B1 (en) * 1995-06-30 2003-07-29 Sun Microsystems, Inc. Method and apparatus for context maintenance in windows
US6385645B1 (en) * 1995-08-04 2002-05-07 Belle Gate Investments B.V. Data exchange system comprising portable data processing units
US5898864A (en) * 1995-09-25 1999-04-27 International Business Machines Corporation Method and system for executing a context-altering instruction without performing a context-synchronization operation within high-performance processors
US5708808A (en) * 1996-02-27 1998-01-13 Shoichi; Horio Method and apparatus for concurrency with critical regions
US5933627A (en) * 1996-07-01 1999-08-03 Sun Microsystems Thread switch on blocked load or store using instruction thread field
US5835788A (en) * 1996-09-18 1998-11-10 Electronics For Imaging System for transferring input/output data independently through an input/output bus interface in response to programmable instructions stored in a program memory
US6247040B1 (en) * 1996-09-30 2001-06-12 Lsi Logic Corporation Method and structure for automated switching between multiple contexts in a storage subsystem target device
US6148326A (en) * 1996-09-30 2000-11-14 Lsi Logic Corporation Method and structure for independent disk and host transfer in a storage subsystem target device
US6081849A (en) * 1996-10-01 2000-06-27 Lsi Logic Corporation Method and structure for switching multiple contexts in storage subsystem target device
US5913048A (en) * 1997-03-31 1999-06-15 International Business Machines Corporation Dispatching instructions in a processor supporting out-of-order execution
US5870582A (en) * 1997-03-31 1999-02-09 International Business Machines Corporation Method and apparatus for completion of non-interruptible instructions before the instruction is dispatched
US5805849A (en) * 1997-03-31 1998-09-08 International Business Machines Corporation Data processing system and method for using an unique identifier to maintain an age relationship between executing instructions
US6098167A (en) * 1997-03-31 2000-08-01 International Business Machines Corporation Apparatus and method for fast unified interrupt recovery and branch recovery in processors supporting out-of-order execution
US5887161A (en) * 1997-03-31 1999-03-23 International Business Machines Corporation Issuing instructions in a processor supporting out-of-order execution
US6192442B1 (en) * 1998-04-29 2001-02-20 Intel Corporation Interrupt controller
US6499050B1 (en) * 1998-06-09 2002-12-24 Advanced Micro Devices, Inc. Means used to allow driver software to select most appropriate execution context dynamically
WO2000019699A1 (en) 1998-09-29 2000-04-06 Sun Microsystems, Inc. Superposition of data over voice
US7093122B1 (en) 1999-01-22 2006-08-15 Sun Microsystems, Inc. Techniques for permitting access across a context barrier in a small footprint device using shared object interfaces
US6922835B1 (en) 1999-01-22 2005-07-26 Sun Microsystems, Inc. Techniques for permitting access across a context barrier on a small footprint device using run time environment privileges
US6907608B1 (en) * 1999-01-22 2005-06-14 Sun Microsystems, Inc. Techniques for permitting access across a context barrier in a small footprint device using global data structures
US6633984B2 (en) 1999-01-22 2003-10-14 Sun Microsystems, Inc. Techniques for permitting access across a context barrier on a small footprint device using an entry point object
US6823520B1 (en) 1999-01-22 2004-11-23 Sun Microsystems, Inc. Techniques for implementing security on a small footprint device using a context barrier
US6769053B1 (en) 1999-06-10 2004-07-27 Belle Gate Investment B.V. Arrangement storing different versions of a set of data in separate memory areas and method for updating a set of data in a memory
AU1586500A (en) * 1999-12-06 2001-06-12 Sun Microsystems, Inc. Computer arrangement using non-refreshed dram
AU776977B2 (en) 1999-12-07 2004-09-30 Sun Microsystems, Inc. Computer-readable medium with microprocessor to control reading and computer arranged to communicate with such medium
IL150050A0 (en) 1999-12-07 2002-12-01 Sun Microsystems Inc Secure photo carrying identification device, as well as means and method for authenticating such an identification device
US6845419B1 (en) * 2000-01-24 2005-01-18 Freescale Semiconductor, Inc. Flexible interrupt controller that includes an interrupt force register
AU6189800A (en) 2000-07-20 2002-02-05 Belle Gate Invest B V Method and system of communicating devices, and devices therefor, with protecteddata transfer
US6742060B2 (en) * 2000-12-29 2004-05-25 Intel Corporation Look-up table based circuitry for sharing an interrupt between disk drive interfaces
US6795884B2 (en) 2000-12-29 2004-09-21 Intel Corporation Read-only memory based circuitry for sharing an interrupt between disk drive interfaces
US6772258B2 (en) 2000-12-29 2004-08-03 Intel Corporation Method and apparatus for sharing an interrupt between disk drive interfaces
US7031989B2 (en) * 2001-02-26 2006-04-18 International Business Machines Corporation Dynamic seamless reconfiguration of executing parallel software
US6807595B2 (en) * 2001-05-10 2004-10-19 Qualcomm Incorporated Mobile communication device having a prioritized interrupt controller
US20030177280A1 (en) * 2002-03-12 2003-09-18 Webster Steve R. Imbedded interrupt handler
US7272664B2 (en) * 2002-12-05 2007-09-18 International Business Machines Corporation Cross partition sharing of state information
US7493478B2 (en) * 2002-12-05 2009-02-17 International Business Machines Corporation Enhanced processor virtualization mechanism via saving and restoring soft processor/system states
US7117319B2 (en) * 2002-12-05 2006-10-03 International Business Machines Corporation Managing processor architected state upon an interrupt
US6981083B2 (en) * 2002-12-05 2005-12-27 International Business Machines Corporation Processor virtualization mechanism via an enhanced restoration of hard architected states
US7065595B2 (en) * 2003-03-27 2006-06-20 International Business Machines Corporation Method and apparatus for bus access allocation
US20070074013A1 (en) * 2003-08-25 2007-03-29 Lonnie Goff Dynamic retention of hardware register content in a computer system
US7353499B2 (en) 2003-09-25 2008-04-01 Sun Microsystems, Inc. Multiple instruction dispatch tables for application program obfuscation
US8220058B2 (en) * 2003-09-25 2012-07-10 Oracle America, Inc. Rendering and encryption engine for application program obfuscation
US7415618B2 (en) * 2003-09-25 2008-08-19 Sun Microsystems, Inc. Permutation of opcode values for application program obfuscation
US7363620B2 (en) * 2003-09-25 2008-04-22 Sun Microsystems, Inc. Non-linear execution of application program instructions for application program obfuscation
US20050069138A1 (en) * 2003-09-25 2005-03-31 Sun Microsystems, Inc., A Delaware Corporation Application program obfuscation
US7424620B2 (en) * 2003-09-25 2008-09-09 Sun Microsystems, Inc. Interleaved data and instruction streams for application program obfuscation
TW201237630A (en) * 2011-03-01 2012-09-16 Wistron Corp Method and computer system for processing data in a memory
GB2514126A (en) 2013-05-14 2014-11-19 Ibm Interruption of chip component managing tasks

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58115552A (ja) * 1981-12-28 1983-07-09 Fujitsu Ltd 割込み制御方式

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3599162A (en) * 1969-04-22 1971-08-10 Comcet Inc Priority tabling and processing of interrupts
US3866181A (en) * 1972-12-26 1975-02-11 Honeywell Inf Systems Interrupt sequencing control apparatus
FR2269150B1 (ja) * 1974-04-25 1977-10-28 Honeywell Bull Soc Ind
GB1529581A (en) * 1974-10-29 1978-10-25 Xerox Corp Data processing apparatus
DE2754890C2 (de) * 1977-12-09 1982-10-28 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur Programmunterbrechung
JPS5530730A (en) * 1978-08-22 1980-03-04 Nec Corp Data processor
US4257096A (en) * 1978-10-23 1981-03-17 International Business Machines Corporation Synchronous and conditional inter-program control apparatus for a computer system
US4286322A (en) * 1979-07-03 1981-08-25 International Business Machines Corporation Task handling apparatus
US4384324A (en) * 1980-05-06 1983-05-17 Burroughs Corporation Microprogrammed digital data processing system employing tasking at a microinstruction level
EP0048767B1 (de) * 1980-09-27 1985-03-20 Ibm Deutschland Gmbh Prioritätsstufengesteuerte Unterbrechungseinrichtung
US4636944A (en) * 1984-01-17 1987-01-13 Concurrent Computer Corporation Multi-level priority micro-interrupt controller
US4658351A (en) * 1984-10-09 1987-04-14 Wang Laboratories, Inc. Task control means for a multi-tasking data processing system
US4736318A (en) * 1985-03-01 1988-04-05 Wang Laboratories, Inc. Data processing system having tunable operating system means
US4734882A (en) * 1985-04-01 1988-03-29 Harris Corp. Multilevel interrupt handling scheme
JPH0792782B2 (ja) * 1985-09-30 1995-10-09 富士通株式会社 処理実行システム
US4805107A (en) * 1987-04-15 1989-02-14 Allied-Signal Inc. Task scheduler for a fault tolerant multiple node processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58115552A (ja) * 1981-12-28 1983-07-09 Fujitsu Ltd 割込み制御方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7318458B2 (en) 2003-05-08 2008-01-15 Ludvig Svensson B.V. Cloth designed to be provided with at least one permanent fold and method applied thereby

Also Published As

Publication number Publication date
EP0383474A3 (en) 1991-12-27
DE69023018D1 (de) 1995-11-23
DE69023018T2 (de) 1996-05-30
US5057997A (en) 1991-10-15
JPH0612527B2 (ja) 1994-02-16
EP0383474A2 (en) 1990-08-22
EP0383474B1 (en) 1995-10-18

Similar Documents

Publication Publication Date Title
JPH02267634A (ja) 割込み処理装置
US20020062352A1 (en) Multiprocessor system and control method thereof
US20070074214A1 (en) Event processing method in a computer system
US7856635B2 (en) Dynamic address windowing on a PCI bus
US20100169546A1 (en) Flash memory access circuit
US5968159A (en) Interrupt system with fast response time
JP3970609B2 (ja) プロセッサシステム
GB2216306A (en) Load and synchronize computer architecture and process
JP2001333137A (ja) 自主動作通信制御装置及び自主動作通信制御方法
JPH0916409A (ja) マイクロコンピュータ
JP7468112B2 (ja) インタフェース回路およびインタフェース回路の制御方法
JP2797760B2 (ja) 並列処理コンピュータシステム
JP2001256044A (ja) データ処理装置
JPS6290728A (ja) 割込処理方法
US5675776A (en) Data processor using FIFO memories for routing operations to parallel operational units
JPS603229B2 (ja) 情報処理方式
JPS59218569A (ja) マイクロ・コンピユ−タ
JP2000148577A (ja) アクセス制御方法及びアクセス制御装置
JP3127737B2 (ja) ディジタル信号処理装置
JPH02183342A (ja) 割込み制御装置
JPS61267149A (ja) デ−タ処理装置
JPH09160786A (ja) マイクロプロセッサ
JPH02144653A (ja) データ処理装置
JPH10240676A (ja) データ転送回路
JPH03188547A (ja) データ転送制御装置