JPS59189452A - デ−タ処理装置用キユ−構造 - Google Patents

デ−タ処理装置用キユ−構造

Info

Publication number
JPS59189452A
JPS59189452A JP6407983A JP6407983A JPS59189452A JP S59189452 A JPS59189452 A JP S59189452A JP 6407983 A JP6407983 A JP 6407983A JP 6407983 A JP6407983 A JP 6407983A JP S59189452 A JPS59189452 A JP S59189452A
Authority
JP
Japan
Prior art keywords
frame
priority
level
queue
pointer
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
Application number
JP6407983A
Other languages
English (en)
Inventor
Hiroshi Sato
廣 佐藤
Nobuteru Morita
森田 信輝
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co Ltd
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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP6407983A priority Critical patent/JPS59189452A/ja
Publication of JPS59189452A publication Critical patent/JPS59189452A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 [発明の属する技術分野] 本発明は、データ処理装置用キュー構造、特に。
データ処理システムにおいて使用できるデータ処理装置
用キュー構造に関する。
特に複数の優先割込レベルを有するデータ処理システム
で、低位のレベルにおいて実行されるキュー処理マクロ
命令が、命令途中で外部割込を受付けることが可能であ
り、かつ再度低位のレベルに制御が戻ったときに前回命
令実行が中断した箇所から命令再開可能なデータ処理装
置用キュー構造に関する。
[従来技術] 従来のデータ処理装置用キュー構造においては。
キューを操作するマクロ命令の実行途中においては、外
部からの割込要求を受付けない場合が多かった。また、
たとえ外部からの割込要求をキュー操作マクロ命令の実
行途中において受f付けることが可能である場合におい
ても1割込んだレベルにおける処理が終了した後、再度
割込まれたキュー操作命令の実行を再開する場合、キュ
ーにつながれた優先順位フレームの第一のものから操作
を開始するにすぎなかった。
したがって、キュー操作命令の途中において外部割込受
付が不可能な場合で、キューに接続された優先順位フレ
ームの数が非常に大きく、捜している優先順位フレーム
がキューの後ろの方に位置している場合、キュー操作命
令の処理時間は非常に長(なってしまう。
このため、緊急に処理を必要とする優先順位の高い割込
要求を受付けることが長時間不可能となるためシステム
の応答時間が悪くなることがあつた。
また、キュー操作マクロ命令の実行途中において外部割
込の受付けが可能な場合においても1割込まれたキュー
操作マクロ命令は再開時に、また最初から命令実行を行
なわなければならないため、割込要求の頻度が高いシス
テムにおいては、下位レベルで実行しようとしたキュー
操作マクロ命令が、いつまでたっても実行完了すること
ができないという欠点があった。
すなわち、従来のデータ処理装置用キュー構造は、割込
応答性が悪く、キュー命令を効率よく実行できないとい
う欠点があった。
[発明の目的] 本発明の目的は、割込応答性がよくキュー命令が効率よ
く実行できるデータ処理装置用キュー構造を提供するこ
とにある。
すなわち、本発明の目的は、キュー操作マクロ命令を命
令途中において外部割込の受付を可能とし、かつキュー
データ構造に中断された命令がキューに含まれるフレー
ムのどこまでを処理したかという情報を記録することに
より、再開されたキュー操作マクロ命令の実行を中断さ
れた箇所から再開できるようにしたデータ処理装置用キ
ュー構造を提供することにある。
[発明の構成コ 本発明のデータ処理装置用キュー構造は、多重の優先割
込レベルを有するデータ処理システムにおいて、共通の
制御フレームに結合された優先順位フレーム群から構成
されるキュー構造であって、前記優先順位フレームには
、1つの優先順位番号を記録するための記憶場所と、こ
の優先j@位フレームに結合された次順位の優先順位フ
レームの位置を指定するためのポインタと、この優先順
位フレームに関連した情報を含むためのゼロ以上の記憶
場所から構成され、前記制御フレームは、キューにつな
がれた優先順位フレームの第1番めのものに対するポイ
ンタと、キューにつながれた優先順位フレームの最後の
ものに対するポインタと、キュー操作マクロ命令が命令
実行途中において中断した場合に中断した時点において
操作してぃた中間のフレームに対するポインタと、走行
しているプログラムの優先割込レベルを格納するための
記憶場所とから構成され、前記優先順位フレームは前記
優先順位番号によって表示される優先順泣顔にキューに
接続され、前記キュー構造を構成する優先順位フレーム
を操作するマクロ命令実行時に、前記中間のフレームポ
インタの内容がNULLの場合と、NULLでなくかつ
レベルを記憶するための記憶場所の内容が現在のレベル
と等しくない場合現在実行しようとしているマクロ命令
が以前に中断されたために再実行しようとしているので
なく最初からキュー構造の優先順位フレームを走査する
ものと認識し、前記第1のフレームポインタの指す優先
順位フレームから処理を開始し、前記中間フレームポイ
ンタの内容がNULLでない場合でかつ前記共通制御フ
レームのレベルが現在走行中のプログラムレベルに等し
い場合、前記中間のフレームポインタの指す優先順位フ
レームからキューの探索を開始するキュー探索開始手段
と、前記マクロ命令実行時に探索が正常に終了した場合
にはNULL値を光記中間のフレームポインタに書込み
、上位プログラムレベル等に割込が発生するなど正常に
終了しなかった場合には、走行中のプログラムレベルを
前記共通の制御フレームのレベルに書込みかつ、最後に
探索した優先順位フレームのアドレスを中間フレームポ
インタに書込みかつ、プログラムカウンタの値を前記マ
クロ命令のアドレスに再設定し、再度このプログラムレ
ベルに制御が戻った場合に中断された前記マクロ命令が
再実行されるための再実行手段とを含んで構成される。
[実施例の説明] 次に、本発明の実施例について、図面を参照して詳細に
説明する。
本発明のキュー構造を使用するようなデータ処理システ
ムのブロック図を第1図に示す。
第1図に示すデータ処理システムは、中央処理装置1と
、周辺制御装置2と、主記憶装置3と、中央処理装置1
と周辺制御装置2と主記憶装置3とを接続するための入
出力バス4と1周辺制御装置2により制御される周辺機
器5,6とを含んで構成される。
第2図は第1図に示す中央処理装置のブロック図である
第2図に示す中央処理装置は、マクロ命令を保持する命
令レジスタ11と、マクロ命令およびこのマイクロ命令
の次に実行するマイクロ命令のアドレスを発生するマイ
クロ命令アドレス発生装置12と、マイクロ命令を格納
する記憶装置13と。
マイクロ命令バッファレジスタ14と、入出力バスにデ
ータを出力するための出力レジスタ15と。
入出力バス4からデータをとりこむための入力レジスタ
16と、入出力バスに出力するアドレスを保持するため
のアドレスレジスタ17と、汎用レジスタ、プログラム
カウンタ等を含むレジスタファイル18と、算術演算、
論理演算を行うための演算装置19と、必要な定数を発
生する定数発生装置20とを含んで構成される。
第3図は本発明の目的であるデータ処理装置用キュー構
造を示すキュー構造図である。
第3図において、共通の制御フレーム31は、キューに
つながれている優先順位フレーム36゜40等を管理す
るためのフレームである。この共通の制御フレーム31
は、4つの要素から構成されている。
第1フレームポインタ32は、キューにつながれた優先
順位フレームの第1のものを指すようなポインタである
。最終フレームポインタ33は、キューにつながれた優
先順位フレームの最後のものを指すようなポインタであ
る。中間フレームポインタ34は、キュー操作命令が割
込等により中断されたときに、中断時に操作を行なって
いた優先順位フレームを指すためのものである。
レベル記憶場所35は、中断されたキュー操作マクロ命
令の走行していたプログラムのレベルを格納するための
記憶場所である。記憶場所37は、キューにつながれた
優先順位フレーム間の優先順位番号を記録するための記
憶場所である。記憶場所38は、キューにつながれた優
先順位フレームを次々に結びつけるための次順位の優先
順位フレ−ムの位置を指定するための記憶場所であり、
記憶場所39は優先順位フレームと関連する情報を含む
ための記憶場所である。
次に、このようなキュー構造を操作するためのマクロ命
令機能について説明する。
キューの使い方としては、先入れ先出し用のバッファ(
FIFO)や、後入れ先出し用のバッファ(LIFO)
などがある。
キューデータ構造に対して、新らしい優先順位フレーム
を追加するマクロ命令として、lN5Q命令が用意され
ている。このlN5Q命令のオペランドとしては、追加
される優先順位フレームの優先順位と、優先順位フレー
ムのアドレスが与えられる。
lN5Q命令の動作は、ます制御フレーム31内の第1
フレームポインタ32を読み出し最初の優先順位フレー
ムのアドレスを求める。
次に優先順位フレーム36内の優先順位番号37を読み
出す。この優先順位番号37とマクロ命令のオペランド
である優先順位とを比較し、オペランドの優先順位が、
優先順位番号37より太きければ、記憶場所38に格納
されている次順位のフレームに対するポインタを用いて
次の優先順位フレームを調べる。
このように、次々とオペランドである優先順位フレーム
36を調べ、キューの中に置くべき位置を求める。
第4図に、新たな優先順位フレームをキューに挿入する
ときの動作を示す。
優先順位フレーム41は、挿入されるフレームの前のフ
レーム、優先順位フレーム42は挿入されるフレームの
後ろにくるフレーム、挿入フレーム43は挿入aようと
するフレーム、フレーム指定レジスタ44は挿入しよう
とするフレームのアドレスを保持するレジスタ、フレー
ムポインタ45は挿入されるフレームの前のフレームの
次順位フレームポインタ、フレームポインタ46は挿入
されるフレームの次順位フレームポインタである。
点線は、挿入以前のポインタ値が指しているアドレスを
示し、実線は、挿入後のポインタ値が指しているアドレ
スを示す。鎖線により、フレームをキューに挿入すると
きのポインタ値の移動のしかたを示している。
キューから、指定条件に一致する優先順位フレームの取
りはすしを行なう場合は、挿入する場合と逆の操作によ
り行なわれる。
第5図には、データ処理装置における割込方式の構造を
示す。
割込ベクトル51.52は、その割込のコンチクスト領
域を指し示す割込ベクトルであり、割込レベルに対応し
て主記憶の専用アドレスにわりつけられている。割込コ
ンチクスト53,54は各割込レベルのコンチクストで
ありプログラムカウンタやレジスタの退避/復帰領域か
ら構成されている。割込処理プログラム55.56か、
割込レベルにおいて実行されるべき命令のアドレスはコ
ンチクスト53,54にあるプログラムカウンタ値によ
って示される。
今、低位のレベル51において、前記lN8Q命令を実
行していたときに、割込ベクトル52の割込レベルに割
込が発生し、割込処理プログラム56に制御が移り、割
込ベクトル52のレベルにおける処理の終了後、再度レ
ベル51が起動される場合の動作について説明する。
第6図にlN5Q命令の実行の流れの概略を示す。
動作ステップ61において、制御フレームの中間のフレ
ームポインタの内容が読み出される。
811作ステップ62において、ポインタがNUL L
かどうか調べられる。命令が途中再開でない場合は、動
作ステップ66に行き制御フレームの第1のフレームポ
インタの値を読み出しNFP(ネクスト フレーム ポ
インタ)に入れる。
動作ステップ67においては、NFPで示される優先順
位フレームから優先順位をとり出し、動作ステップ68
においてフレームの挿入条件が満足したかどうか調べる
。満足しない場合、動作ステップ71において、この優
先順位フレームに含まれる次順位フレームポインタの内
容を読み出しNFPにロードする。
動作ステップ72においては、外部からの割込要求があ
るかどうかを調べる。もしなければ、動作ステップ67
に戻り、NFPを用いて次のフレームを調べにゆく。外
部割込があった場合には、動作ステップ73に行き、N
FPの内容を制御フレームの中の中間フレームポインタ
に書き込む。
動作ステップ74においては、現在のプログラムレベル
の値を制御フレームのレベル記憶場所に書き込む。
動作ステップ75では、プログラムカウンタの値を、命
令の先頭に戻し、その後割込処理が行なわれる。
割込処理においては、第5図において、プログラムカウ
ンタおよびレジスタの値がコンチクスト領域53に退避
され1次にレベル52のコンチクスト領域54からプロ
グラムカウンタの値およ゛びレジスタの値がとり出され
、割込処理プログラム56が実行される。プログラムの
処理が終了すると、逆にレベル52のコンチクストがコ
ンチクスト領域54に退避され、レベル51のコンチク
ストがとり出され割込処理プログラム55の実行が再開
される。すると、割込処理プログラム55が割込まれた
ときに、lN5Q命令を実行していたとすると、再度こ
の命令が実行される。第6図において、動作ステップ6
2の中間フレームポインタの値はNULLでなく、動作
ステップ63に行く。
動作ステップ63では制御フレームのレベルを読み出し
動作ステップ64において現在のレベルの比較している
。この場合等しいから動作ステップ65において中間フ
レームポインタの内容をNFPに入れて、動作ステップ
67が実行される。すなわちキューにつながれた優先順
位フレームの途中から操作が始まることになる。
このようにして、キューの残りのフレームが調べられ、
動作ステップ69において条件の満足した位置に新らし
いキューフレームが挿入される。
動作ステップ70においては、制御フレームの中間フレ
ームポインタの内容をNULLにセットしている。
共通制御フレーム内に、レベルを記憶する場所を設けた
のは、第5図にお1いて割込んだレベルの割込処理プロ
グラム56が、割込処理プログラム55と同一のキュー
を操作しようとしたときに、レベルを比較することによ
り誤動作を避けるためのものである。
[発明の効果] 本発明のデータ処理装置用キュー構造は、キュー構造の
制御フレーム内に、中間フレームのポインタおよびレベ
ル記憶場所を設けるように構成することにより、割込応
答性がよく、かつ低いレベルで実行されるキュー命令が
効率よく実行できるという効果がある。
【図面の簡単な説明】
第1図は本発明のキュー構造を使用するようなデータ処
理システムの一例を示すブロック図、第2図は第1図に
示す中央処理装置の詳細を示すブロック図、第3図は 
本発明の一実施例を示すキュー構造の一例を示すキュー
構成図、第4図はキューに新たなフレームを加える時の
動作を芋ス説明するための動作説明図、第5図は デー
タ処理システムの一実施例における割込方式を示す説明
するための割込説明図、第6図は キューを操作する命
令の動作流れ図である。 l・・・・・・中央処理装置、2・・・・・・周辺制御
装置、3・・・・・・主記憶装置、4・・・・・・入出
力バス、5,6・・・・・・周辺機器、11・・・・・
・命令レジスタ、12・・・・・・マイクロ命令アドレ
ス発生装置、13・・・・・・記憶装置、14・・・・
・・マイクロ命令バッファレジスタ、15・・・・・・
出力レジスタ、16・・・・・・入力レジスタ、17・
・・・・・アドレスレジスタ、18・・・・・・レジス
タファイル。 19・・・・・・演算装置、20・・・・・・定数発生
装置、31・・・・・・制御フレーム、32・・・・・
・第1フレームポインタ、33・・・・・・jlフレー
ムポインタ、34・・・・・・中間フレームポインタ、
35・・・・・・レベル記憶場所、36、40.41.
42・・・・・・優先順位フレーム、37゜38.39
・・・・・・記憶場所% 43・・・・・・挿入フレー
ム、44・・・・・・フレーム指定レジスタ、45.4
6・・・・・・フレームポインタ、51.52・・・・
・・割込ベクトル、53.54・・・・・・割込コンチ
フスl−,55,56・・・・・・割込処理プログラム
、61〜75・・開動作ステップ。 茅1 回

Claims (1)

    【特許請求の範囲】
  1. 共通の制御フレームと結合されたゼロ個以上の優先順位
    フレームを持つ少なくとも1つのリストを有し、前記優
    先順位フレームの各々は1つの優先順位番号を記録する
    ための記憶場所とこの優先順位フレームに結合された次
    順位の優先順位フレームの位置を指定するための記憶場
    所と前記優先順位フレームと関連する情報を含むための
    ゼロ語以上の記憶場所とを有し、前記制御フレームは前
    記優先順位フレームの第1のものに対する第1のフレー
    ムポインタと前記優先順位フレームの最後のフレームに
    対Tる最後のフレームポインタと前記優先順位フレーム
    の一つを探索するためのマクロ命令を実行時に参照され
    る中間のフレームポインタと走行しているプログラムの
    レベルを格納するための記憶場所とを含み、前記優先順
    位フレームは前記優先順位番号によって表示される優先
    順位を有するキュー構造を有するデータ処理システムに
    おいて、キュー構造を構成する優先順位フレームを探索
    するマクロ命令実行時に前゛記中間フレ  1、−ムポ
    インタの内容がNULLの場合と、前記中間フレームポ
    インタの内容がNULLでなくかつ前記レベルを格納す
    るための記憶場所の内容が現在のプログラムレベルと等
    しくない場合に前記第1のフレームポインタの指す優先
    順位フレームからおよび前記中間フレームポインタの内
    容がNTJLLでなくかつ前記レベルを格納するための
    記憶場所の内容が現在のプログラムレベルに等しい場合
    に前記中間フレームポインタの指す優先順位フレームか
    らキューの探索を開始する探索開始手段と、前記マクロ
    命令実行時に探索が正常に終了した場合にはNULL値
    を前記中間のフレームポインタに書き込み上位プログラ
    ムレベル等に割込が発生するなど正常に終了しなかった
    場合には走行中のプログラムレベルを前記共通の制御フ
    レームのレベル −に書き込みかつ最後に探索した優先
    順位フレームのアドレスを中間のフレームポインタに書
    込みかつプログラムカウンタの値を前記マクロ命令のア
    ドレスに再設定し再度このプログラムレベルに制御が戻
    った場合に中断された前記マクロ命令が再実行されるた
    めの再実行手段を設けることを特徴とするデータ処理装
    置用キュー構造。
JP6407983A 1983-04-12 1983-04-12 デ−タ処理装置用キユ−構造 Pending JPS59189452A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6407983A JPS59189452A (ja) 1983-04-12 1983-04-12 デ−タ処理装置用キユ−構造

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6407983A JPS59189452A (ja) 1983-04-12 1983-04-12 デ−タ処理装置用キユ−構造

Publications (1)

Publication Number Publication Date
JPS59189452A true JPS59189452A (ja) 1984-10-27

Family

ID=13247717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6407983A Pending JPS59189452A (ja) 1983-04-12 1983-04-12 デ−タ処理装置用キユ−構造

Country Status (1)

Country Link
JP (1) JPS59189452A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01217638A (ja) * 1988-02-26 1989-08-31 Hitachi Ltd キューイングテーブル検索方式

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01217638A (ja) * 1988-02-26 1989-08-31 Hitachi Ltd キューイングテーブル検索方式

Similar Documents

Publication Publication Date Title
US5341482A (en) Method for synchronization of arithmetic exceptions in central processing units having pipelined execution units simultaneously executing instructions
JP2937485B2 (ja) スーパースカラプロセッサにおけるトラップを検出して実行する方法及び装置
EP0297893A2 (en) Apparatus and method for recovering from page faults in vector data processing operations
KR930004328B1 (ko) 벡터 처리시스템의 명령 실행방법 및 그 장치
JPH0242569A (ja) ベクター処理システムに用いる文脈スイッチング方法及び装置
JPS58151655A (ja) 情報処理装置
US8140503B2 (en) Information processing apparatus having process units operable in parallel
JPH0810437B2 (ja) 仮想計算機システムのゲスト実行制御方式
EP0206335B1 (en) Interruption method for a data processing system
JPS59189452A (ja) デ−タ処理装置用キユ−構造
EP0301707A2 (en) Apparatus and method for providing an extended processing environment on nonmicrocoded data processing system
JP2671160B2 (ja) 例外処理方式
CA1323437C (en) Method and apparatus for handling faults of vector instructions causing memory management exceptions
JP2552738B2 (ja) データ処理装置
JPH0222413B2 (ja)
US5579495A (en) Information processing in which a simulation of parallelism is achieved
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JP2814683B2 (ja) 命令処理装置
JP2883488B2 (ja) 命令処理装置
JP2927102B2 (ja) 命令列切り替え方法及びそれを用いた演算プロセッサ
JP2584528Y2 (ja) 情報処理装置
JPS61199126A (ja) マイクロプログラムチエツク方式
JPS58182766A (ja) プログラムトレ−ス装置
JPH06295252A (ja) 計算機
JPS617976A (ja) ベクトル演算処理装置