JPS63316137A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS63316137A
JPS63316137A JP15111087A JP15111087A JPS63316137A JP S63316137 A JPS63316137 A JP S63316137A JP 15111087 A JP15111087 A JP 15111087A JP 15111087 A JP15111087 A JP 15111087A JP S63316137 A JPS63316137 A JP S63316137A
Authority
JP
Japan
Prior art keywords
program
interrupt
interruption
processing
vector
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
JP15111087A
Other languages
English (en)
Inventor
Hidetaka Nishino
西野 秀毅
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP15111087A priority Critical patent/JPS63316137A/ja
Publication of JPS63316137A publication Critical patent/JPS63316137A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task 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)

Abstract

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

Description

【発明の詳細な説明】 〔唾栗上の利用分野〕 本発明はマイクロコンピュータから大盤計算機等の情報
処理装置に関する。
〔促米の技術〕
従来プログラムモード込みは人出力割込み、スーパバイ
ザ呼び出し割込み、外部割込み等と同様にハードウェア
で割込みヲ恢出後、夷行中でめったプログラムモ一旦中
断する。必JMな割込み処理が完了したあとこのプログ
ラムを再開できるLうにするために1割込み発生の直前
のプログラム状態語(次に実行予定の命令語番地、各種
割込みを受は付けるか否かを指定しているシステムマス
ク及ヒプログラムマスク、グロテクショ/用キー、直前
に実行された命令の結果である条件コード、等)を、退
避する。このあと割込み種別毎に、オペレーティング・
システム内に配置されている割込み処理ルーチンにプロ
グラム制@を渡すために1割込み種別毎に設定されてい
るプログラム状態語の情報をプログラム状態語レジスタ
にロードする。
このロードによって、プログラムの制御は、オペレーテ
ィング・システム内の割込み処理ルーチンに妖る。それ
ぞれの割込み処理ルーチンでは共通処理として割込まれ
たプログラムが使用していた各種レジスタ(汎用レジス
タ、浮動小数点レジスタ等)の退避及び割込み処理が終
了したあと、レジスタの回復を行ない最後に1割込み時
に退避していたプログラム状態胎tプログラム状態語レ
ジスタにロードする。このロードによって割込まれたプ
ログラムの中断点にプログラムの市1」御が戻り、この
プログラムの実行が再開される。
詳細は、 5tuart E、 Madnick、 J
ohn J。
Donovan  i池田克夫訳「オペレーティング拳
システム」日本コンピュータ協会1976年4月108
初版を参照されたい。
〔発明が解決しようとする問題点〕 現在の計算機システムにおいては1割込み方法として次
の5櫨類がめる。
1、入出力割込み <a>不正入出力コマンド (b)入出力チャ坏ル動作終了(チャネル・エンド)(
C)入出力装置動作終了(デバイス・エンド)2、プロ
グラム割込み (a)不正CPU命令 (b)固定小数点演算あふれ (C)記憶域侵害 3、スーパバイザ呼び出し割込み(SVCVCl4、外
部割込み (a) (ンタバル拳タイマ終了 (b)オペレータ割込みボタン (C) CP UどCPUの間の通信割込み5、機械検
査割込み(ハードウェアの誤動作の横置) これら、IIJ込みの種別においてプログラム割込みの
犬さな特徴は1割込みの原因が1割込み発生時に実行中
でめったプログラムそのものに起因している点にある。
他方、プログラム割込み以外の割込みの原因は、割込み
発生時に実行中でめったプログラムとは一般に関連がな
い。従ってプログラム割込み以外の割込みに対する割込
み処理プログラムは1割込み発生時に実行中でめったプ
ログラムを一時中断させたあとで実行される。
しかし、プログラム割込みに対する従来方式(プログラ
ム割込みも他の割込みと同一方式で処理する)の考え方
は、上で示したプログラム割込みの特徴とは合致しない
所がある。合致しない主な理由は、プログラム割込みの
原因は割込み発生時に実行中でめったプログラムに直接
起因しているため、この実行中のプログラムの単なる例
外的処理の一項として処理されるべきであるにもかかわ
らずオペレーティングシステムを介在させる機構になっ
ており1ttJ4機システムアーキテクチャの構造を複
雑化δせている。
本発明の目的は、新たなプログラム割込み方式を提供す
ることにある。
〔問題点tm決するための手段〕
上記目的を達成するために、プログラム割込みが発生し
た時は、プログラムモード(特権モード又はユーザモー
ド)は変更せず、プログラムモジュール毎に設定されて
いる割込みベクトル領域(プログラム割込み要因ごとの
割込み処理プログラムの先頭着地を格納している記憶領
域・・・例えば。
CPUレジスタとして設けられた割込ベクトルレジスタ
)からプログラム割込みの要因に対応した番地情報を読
み取り、その番地へプログラムの制L#Jを渡す。
ここで各々のプログラムモジュールに対しては任意に割
込みベクトル領域を設定可能とするが。
この設定は強制的なものでなく、設定しなくともよいと
しておく。ただしプログラム央行中にどれか1つ割込み
ベクトル領域は有効になっている必要がある。
グログラム割込み用の割込みベクトル領域の指定及び解
除は1つの機械命令語の実行によって達成される。宜し
く割込みベクトル領域を指定するとそれまで有効でめつ
九ベクトル領域の指定は解除される。このような方式の
ために、おるプログラムモジュールからこのモジュール
を呼び出していたモジュールに戻る時には現在の割込み
ペクト層領域から旧割込みベクトル領域に切ジ換える必
女がある。これらを実現するためにさらに別の機械命令
語を導入する。この命令語は現在指定されている割込み
ベクトル領域の先頭番地情報を退避するものである。こ
の命令語によって旧割込みベクトル領域の先頭着地i1
報を保存しておくことができる。
〔作用〕
各々のプログラムモジュール毎に割込みベクトル領域を
設定でさるため、プログラム割込みが発生した時には、
従来方式のようにオペレーティングシステムが管理して
いる唯一の割込みベクトル領域を参照せず、プログラム
モジュール内の制御下でm接プログラム割込み用の処理
全実行できる。
この方式によってプログラム割込み処理においては一旦
オペレーティングシステムの前処理を介在させる必要が
なくなる。
〔実施例〕
以下1本発明の一実施例を図面により説明する。
割込みベクトル領域内に各種プログラム割込み要因毎の
処理プログラムの先頭番地を設定する機能は既存の計ヰ
機の命令で実現できるが1本実施例ではプログラム割込
み用のベクトル着地レジスタ1を導入したことである。
プログラム割込みが発生した時に常にこのレジスタ1を
参照しベクトル領域の先頭番地を見つける。このベクト
ル番地レジスタ1に値を設定するために以下に示す新た
な命令を導入する。
LOADPV (e a ) ここで< e a )はベクトル領域の先頭着地ti現
している。(ea、>は谷々の計算機アーキテクチャで
定まっている有効番地(ef fect 1veadd
ress )である。
次の命令はベクトル着地レジスタ1の値を退避するもの
である。
5AVEPV  (e a ) 第1図には本方式に基づくプログラム割込み処理方式の
ブロック回路図を示す。
プログラム割込みは第1図のプログラム割込み用の割込
み検出回路2で検出される。割込み検出回路2はプログ
ラム割込み要因11tl−決定し、演算器3へ出力する
。プログラム割込みが発生した時には、ベクトル番地レ
ジスタ1とグログラム割込み要因11からそのプログラ
ム割込み要因に対応する処理プログラムの先頭番地が格
納されている場所の番地を求める。これは演算器3で計
算され、−f:の結果は割込み番地7エツチ13に伝え
られる。
第2図は、第1図のベクトル番地レジスタ1の内容にL
v割込みベクトル領域5の所望帯地全指定する状況を示
す。
第2図の20はベクトル番地レジスタ1からのプログラ
ム割込み要因に対応した第1の処理プログラム、同様に
21は別のプログラム割込み要因に対応した第2の処理
プログラム、22はさらに別のプログラム割込み要因に
対応した第3の処理プログラムである。第2図の割込み
ベクトル領域5(プログラム割込み用の割込みベクトル
領域)には、プログラム割込みのそれぞれの要因に対す
る処理プログラムの先頭番地が示されている。
第1図の割込み番地フェッチ4は、演算器の出力13の
情報をもとに、プログラム割込み要因に対応した処理プ
ログラムの先頭番地を割込みベクトル領域5から取り込
む。選択回路7は、次に実行すべき命令の着地を決定す
るが、プログラム割込みが発生した時にはプログラム割
込み処理プログラムの先頭番地16を選択し、そうでな
い時には命令語番地レジスタ6を選択する。
命令語着地レジスタ6は直前に実行された命令給金もと
に次に実行すべき命令語の番地を決定する。これらの選
択結果17をもとに命令語フェッチ8は主メモリ9から
命令語を取り出す。
割込み処理プログラムから割込み時点の状態に戻るため
には状態を切り換えるために特権命令を必要とするが、
プログラム割込みにおいてはこのような復帰は必要がな
い。従ってそのための特権命令の実行も不必要である。
従ってプログラム割込み処理プログラムの終了処理とし
てはサブルーチンリターン命令又は異状終了させるため
のシステムコールを実行する。
〔発明の効果〕
本方式によれば、プログラム割込みが発生してもオペレ
ーティングシステムをまったく介在させス直接プログラ
ム割込み用のプログラム全起動させるため方式が単純化
され、さらにオペレーティングシステムを介在妊せない
事によるオーバーヘッドも軽減できる。
プログラム割込み処理におけるこのようなオペレーティ
ングシステムによるオーバーヘッドが無くなることによ
ってプログラム割込み機能の新しい応用が開ける。本方
式によればプログラム割込み処理は分岐命令程度の処理
時間を必要とするだけでよいため頻繁にプログラム割込
が発生しても処理時間面で問題になることがない。この
特徴を生かせば次のような単純なプログラミング方式を
実用化できる。ある一定サイズのテーブルにデータ項目
を次々に登録するという事がある。このような処理にお
いては従来は登録の前か後でテーブルの登録余地がまだ
あるかどうかをプログラム上でチェックしていた。しか
しこのLつなチェック(一般的には値の上、下限チェッ
クとして一般化ちれる)をハード化し、不発明機講を用
いれば。
プログラム論理を煩雑化しているチェック用プログラム
全プログラミング上は消し去ることができる。テーブル
へのデータ項目の登録においては2登録余地のチェック
をプログラム化せず、単純にデータ項目全テーブルに登
録するプログラムとすればよい。登録余地の横置はハー
ド化されており。
もし世録余地がなければプログラム割込今が発生する。
このプログラム割込み処理に対するプログラムは別途用
意しておくものとする。このようなプログラミングは新
盲語7)、daの例外処理機能を用いて自然な形式でプ
ログラミングができる。
この新方式のプログラミングの効果は。
(1)境界や値の上、下限値チェックを陽にプログラム
化する必要がない。
(2)  プログラム割込み機能による主要なプログラ
ム処理の流れと付随的なプログラム処理の流れを明確に
分離する。
等がある。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図。 第2図は本方式のデータ及びプログラム構造を示す図で
ある。

Claims (1)

  1. 【特許請求の範囲】 1、計算機の中央演算装置のレジスタとして設けられた
    、プログラム割込みベクトル領域の先頭番地を指す割込
    みベクトルレジスタと、プログラム割込み発生時に、該
    割込みベクトルレジスタとプログラム割込み要因情報を
    もとに、主メモリの任意の所に配置されているプログラ
    ム割込みベクトル情報を参照し、プログラム割込み処理
    プログラムを自動的に起動する回路を備えたことを特徴
    とする情報処理装置。 2、上記割込みベクトルレジスタへの値の設定と割込み
    ベクトルレジスタからの値の退避は専用の命令語により
    おこなうことを特徴とする第1項の情報処理装置。 3、上記割込処理はプログラムモードの変更がない割込
    みレベルを指定する処理を含むことを特徴とする第1項
    の情報処理装置。
JP15111087A 1987-06-19 1987-06-19 情報処理装置 Pending JPS63316137A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP15111087A JPS63316137A (ja) 1987-06-19 1987-06-19 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15111087A JPS63316137A (ja) 1987-06-19 1987-06-19 情報処理装置

Publications (1)

Publication Number Publication Date
JPS63316137A true JPS63316137A (ja) 1988-12-23

Family

ID=15511573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15111087A Pending JPS63316137A (ja) 1987-06-19 1987-06-19 情報処理装置

Country Status (1)

Country Link
JP (1) JPS63316137A (ja)

Similar Documents

Publication Publication Date Title
US7752427B2 (en) Stack underflow debug with sticky base
US4924382A (en) Debugging microprocessor capable of switching between emulation and monitor without accessing stack area
GB1097449A (en) A digital electronic computer system
JPH07120338B2 (ja) 共同プロセッサによる命令の実行をデータプロセッサが調整する方法および該データプロセッサ
JP2583525B2 (ja) データ処理装置
JPS63316137A (ja) 情報処理装置
US6233675B1 (en) Facility to allow fast execution of and, or, and test instructions
JPH05233325A (ja) マイクロプロセッサ装置及び割込みと自動化入出力トラップ再始動を行う方法
JPH05216721A (ja) 電子計算機
JP2504191B2 (ja) マイクロプロセッサ
JPH06103109A (ja) データプロセッサ、及びこれを用いるデバッグ装置
WO1979000959A1 (en) A computer system having enhancement circuitry for memory accessing
JPS6152747A (ja) マイクロプロセツサ
JPH02135545A (ja) デバッガの実行制御処理方式
KR950005523B1 (ko) 프로그램어블 로직 콘트롤러의 스텝 런 처리방법
US20060122821A1 (en) Method for detecting and processing sensitive non-privileged processor instructions in a virtual machine computer system
JPS60193046A (ja) 命令例外検出方式
JPH0795288B2 (ja) マイクロコンピュータ
JPS6349941A (ja) 演算処理装置
JPS60167038A (ja) マイクロプロセツサ
JPS6373336A (ja) 特権プログラム呼出し方式
JPS61118840A (ja) 電子計算機の制御方式
JPH03208132A (ja) シングルチツプマイクロコンピユータ
JPS6334643A (ja) 情報処理装置
JPH0555905B2 (ja)