JPH02181231A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPH02181231A JPH02181231A JP64000609A JP60989A JPH02181231A JP H02181231 A JPH02181231 A JP H02181231A JP 64000609 A JP64000609 A JP 64000609A JP 60989 A JP60989 A JP 60989A JP H02181231 A JPH02181231 A JP H02181231A
- Authority
- JP
- Japan
- Prior art keywords
- exception
- instruction program
- detected
- firmware
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 6
- 238000004886 process control Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
挟1−辷野
本発明はデータ処理装置に関し、特にデータ処理装置に
おける例外処理の方法に関する。
おける例外処理の方法に関する。
藍米弦韮
従来、マイクロプログラム制御により機械命令を実現す
るデータ処理装置においては、ハードウェアが例外を検
出したときには、ハードウェアによってその例外の内容
を示すパラメータかレジスタにセットされるとともに、
ハードウェアからの割込み信号によって例外処理のため
のファームウェアルーチンが起動されていた。
るデータ処理装置においては、ハードウェアが例外を検
出したときには、ハードウェアによってその例外の内容
を示すパラメータかレジスタにセットされるとともに、
ハードウェアからの割込み信号によって例外処理のため
のファームウェアルーチンが起動されていた。
また、ファームウェアが例外を検出したときには、ファ
ームウェアによってその例外の内容を示すパラメータが
レジスタにセットされるとともに、ファームウェアが例
外処理のためのファームウェアルーチンに分岐されてい
た。
ームウェアによってその例外の内容を示すパラメータが
レジスタにセットされるとともに、ファームウェアが例
外処理のためのファームウェアルーチンに分岐されてい
た。
上述のようなデータ処理装置においては、処理性能の向
上をはかるために、マイクロプログラムを構成するマイ
クロ命令か1ステツプで実行する機能を多くし、並列処
理性を高め、かつビット構成の大きないわゆる水平型マ
イクロ命令化が項著である。特に基本演算命令など使用
頻度の高いものについては、上述の水平型マイクロ命令
の特徴が最大限にいかせるようにハードウェアの構造も
最適化されるので、極めて少ないマイクロプログラムの
ステップ数で実現される。
上をはかるために、マイクロプログラムを構成するマイ
クロ命令か1ステツプで実行する機能を多くし、並列処
理性を高め、かつビット構成の大きないわゆる水平型マ
イクロ命令化が項著である。特に基本演算命令など使用
頻度の高いものについては、上述の水平型マイクロ命令
の特徴が最大限にいかせるようにハードウェアの構造も
最適化されるので、極めて少ないマイクロプログラムの
ステップ数で実現される。
一方、シーケンシャルな処理が多く、このような機能に
対して高度に水平化されたマイクロ命令を使用しても、
1ステツプで実行する機能の並列度が低いためにマイク
ロ命令の未使用フィールドが多くなってしまう各種制御
命令を、上述の基本演算命令から構成される命令プログ
ラムにより実現するという階層構造をとることにより、
マイクロプログラムを格納する制御記憶のワード方向の
利用効率を高める方法が本発明の出願人により提案され
ている。
対して高度に水平化されたマイクロ命令を使用しても、
1ステツプで実行する機能の並列度が低いためにマイク
ロ命令の未使用フィールドが多くなってしまう各種制御
命令を、上述の基本演算命令から構成される命令プログ
ラムにより実現するという階層構造をとることにより、
マイクロプログラムを格納する制御記憶のワード方向の
利用効率を高める方法が本発明の出願人により提案され
ている。
このような命令プログラムは保護された領域に確保され
、通常のソフトウェアからはアクセスが不可能となって
いるなめ、命令プログラムが実行されていても、ソフト
ウェアによって命令プログラムが実行中であることが意
識されることはない。
、通常のソフトウェアからはアクセスが不可能となって
いるなめ、命令プログラムが実行されていても、ソフト
ウェアによって命令プログラムが実行中であることが意
識されることはない。
上述のような命令プログラムを実現するためには、従来
ファームウェアによって検出されていた例外を命令プロ
グラム中で検出しなければならないが、命令プログラム
実行中にハードウェアやファームウェアによって検出さ
れる例外が、命令プログラムによって実現される命令の
実行の結果発生する例外とは異なる場合がある。
ファームウェアによって検出されていた例外を命令プロ
グラム中で検出しなければならないが、命令プログラム
実行中にハードウェアやファームウェアによって検出さ
れる例外が、命令プログラムによって実現される命令の
実行の結果発生する例外とは異なる場合がある。
たとえば、プロセス制御ブロックに対して読出し書込み
を行う命令プログラムのルーチンを実行しているときに
検出した例外を、該例外の種類にかかわらず不正プロセ
ス制御ブロック例外として報告する場合がある。
を行う命令プログラムのルーチンを実行しているときに
検出した例外を、該例外の種類にかかわらず不正プロセ
ス制御ブロック例外として報告する場合がある。
このような場合には、その命令プログラムの実行中に限
り、ハードウェアやファームウェアが検出する例外の内
容を示すパラメータとは別の例外パラメータを用意する
必要がある。
り、ハードウェアやファームウェアが検出する例外の内
容を示すパラメータとは別の例外パラメータを用意する
必要がある。
しかしながら、従来のデータ処理装置ではハードウェア
やファームウェアが検出する例外のパラメータとは別の
例外パラメータを用意するための手段かなかったので、
命令プログラムの適用範囲が狭くなるという問題がある
。
やファームウェアが検出する例外のパラメータとは別の
例外パラメータを用意するための手段かなかったので、
命令プログラムの適用範囲が狭くなるという問題がある
。
発明の目的
本発明は上記のような従来のものの問題点を除去すべく
なされたもので、命令プログラムの実行中に例外が検出
された場合に、該例外を命令プログラム中で予め設定し
た例外として発生することができ、命令プログラムの適
用範囲を広げることができるデータ処理装置の提供を目
的とする。
なされたもので、命令プログラムの実行中に例外が検出
された場合に、該例外を命令プログラム中で予め設定し
た例外として発生することができ、命令プログラムの適
用範囲を広げることができるデータ処理装置の提供を目
的とする。
発明の構成
本発明によるデータ処理装置は、ハードウェアおよびフ
ァームウェアの少なくとも一方によって検出された例外
の例外パラメータを保持する第1の保持手段と、ソフト
ウェア命令によって予め設定された例外パラメータを保
持する第2の保持手段と、前記ソフトウェア命令におい
て特定の処理が実行される前に予め設定された所定値を
保持する第3の保持手段と、前記第3の保持手段に保持
された前記所定値に応じて前記第1および第2の保持手
段に保持された例外パラメータのうち一方を選択する選
択手段とを有し、前記ハードウェアおよびファームウェ
アの少なくとも一方によって例外が検出されたとき、前
記選択手段によって選択された例外パラメータにより例
外処理を行うようにしたことを特徴とする。
ァームウェアの少なくとも一方によって検出された例外
の例外パラメータを保持する第1の保持手段と、ソフト
ウェア命令によって予め設定された例外パラメータを保
持する第2の保持手段と、前記ソフトウェア命令におい
て特定の処理が実行される前に予め設定された所定値を
保持する第3の保持手段と、前記第3の保持手段に保持
された前記所定値に応じて前記第1および第2の保持手
段に保持された例外パラメータのうち一方を選択する選
択手段とを有し、前記ハードウェアおよびファームウェ
アの少なくとも一方によって例外が検出されたとき、前
記選択手段によって選択された例外パラメータにより例
外処理を行うようにしたことを特徴とする。
尺臣週
次に、本発明の一実施例について図面を参照して説明す
る。
る。
第1図は本発明の一実施例の構成を示すブロック図であ
る0図において、例外レジスタ1にはハードウェアやフ
ァームウェアにより検出された例外の内容を示す例外!
〈ラメータがセットされる。
る0図において、例外レジスタ1にはハードウェアやフ
ァームウェアにより検出された例外の内容を示す例外!
〈ラメータがセットされる。
また、例外レジスタ2には命令プログラム中のあるルー
チンで検出した例外を全て特定の例外に変えて発生した
いときに、発生したい例外のパラメータが設定される。
チンで検出した例外を全て特定の例外に変えて発生した
いときに、発生したい例外のパラメータが設定される。
モードレジスタ3には命令プログラム中のあるルーチン
で検出した例外を全て特定の例外に変えて発生したいと
きに予め定められた所定値、本実施例では“1″がセッ
トされる。
で検出した例外を全て特定の例外に変えて発生したいと
きに予め定められた所定値、本実施例では“1″がセッ
トされる。
セレクタ4はモードレジスタ3にセットされた内容にし
たがって例外レジスタ1.2各々に保持された例外パラ
メータのうち一方を選択し、該例外パラメータを図示せ
ぬ例外処理機構に出力する。
たがって例外レジスタ1.2各々に保持された例外パラ
メータのうち一方を選択し、該例外パラメータを図示せ
ぬ例外処理機構に出力する。
命令プログラム中のあるルーチンで検出した例外を全て
特定の例外に変えて発生したい場合には、そのルーチン
に入る前に発生したい例外のパラメータを例外レジスタ
2に設定しておく。
特定の例外に変えて発生したい場合には、そのルーチン
に入る前に発生したい例外のパラメータを例外レジスタ
2に設定しておく。
また、そのルーチンに入る直前にモードレジスタ3に1
“をセットし、逆にそのルーチンから出るときにモード
レジスタ3を°“0″にリセットする。
“をセットし、逆にそのルーチンから出るときにモード
レジスタ3を°“0″にリセットする。
モードレジスタ3にパ0″が保持されている場合には、
ハードウェアやファームウェアが例外を検出すると、そ
の例外の内容を示す例外パラメータが例外レジスタ1に
セットされる。たとえば、メモリアクセスによる例外が
検出されたときには、例外の種類を示すコードと、例外
の発生したメモリアドレスとが例外パラメータとして例
外レジスタ1にセットされる。
ハードウェアやファームウェアが例外を検出すると、そ
の例外の内容を示す例外パラメータが例外レジスタ1に
セットされる。たとえば、メモリアクセスによる例外が
検出されたときには、例外の種類を示すコードと、例外
の発生したメモリアドレスとが例外パラメータとして例
外レジスタ1にセットされる。
このとき、モードレジスタ3には“0”が保持されてい
るので、セレクタ4は例外レジスタ1に格納された例外
パラメータを例外処理機構に出力する。
るので、セレクタ4は例外レジスタ1に格納された例外
パラメータを例外処理機構に出力する。
これと同時に、ハードウェアやファームウェアが例外を
検出したことがきっかけとなって例外処理のためのファ
ームウェアルーチンに処理が移行し、セレクタ4から出
力された例外パラメータ、すなわちハードウェアやファ
ームウェアによって例外レジスタ1にセットされた内容
がそのままパラメータとなって例外が発生する。
検出したことがきっかけとなって例外処理のためのファ
ームウェアルーチンに処理が移行し、セレクタ4から出
力された例外パラメータ、すなわちハードウェアやファ
ームウェアによって例外レジスタ1にセットされた内容
がそのままパラメータとなって例外が発生する。
また、モードレジスタ3に“1″が保持されている場合
には、ハードウェアやファームウェアが例外を検出する
と、その例外の内容を示す例外パラメータが例外レジス
タ1にセットされるが、このときモードレジスタ3には
“1パが保持されているので、セレクタ4は例外レジス
タ2にセットされた例外パラメータ、すなわち命令プロ
グラムによって予め設定されたパラメータを例外処理機
構に出力する。
には、ハードウェアやファームウェアが例外を検出する
と、その例外の内容を示す例外パラメータが例外レジス
タ1にセットされるが、このときモードレジスタ3には
“1パが保持されているので、セレクタ4は例外レジス
タ2にセットされた例外パラメータ、すなわち命令プロ
グラムによって予め設定されたパラメータを例外処理機
構に出力する。
これと同時に、ハードウェアやファームウェアが例外を
検出したことがきっかけとなって例外処理のためのファ
ームウェアルーチンに処理が移行し、セレクタ4から出
力された例外パラメータ、すなわち命令プログラムによ
って予め例外レジスタ2にセットされた内容がパラメー
タとなって例外が発生する。
検出したことがきっかけとなって例外処理のためのファ
ームウェアルーチンに処理が移行し、セレクタ4から出
力された例外パラメータ、すなわち命令プログラムによ
って予め例外レジスタ2にセットされた内容がパラメー
タとなって例外が発生する。
よって、ハードウェアやファームウェアが検出した例外
とは別の例外を発生ずることができる。
とは別の例外を発生ずることができる。
次に、プロセス制御ブロックに対して読出し書込みを行
う命令プログラムのルーチンを実行しているときに検出
した例外を、該例外の種類にかかわらず不正プロセス制
御ブロック例外として報告する場合について説明する。
う命令プログラムのルーチンを実行しているときに検出
した例外を、該例外の種類にかかわらず不正プロセス制
御ブロック例外として報告する場合について説明する。
命令プログラム中でまず例外レジスタ2に、不正プロセ
ス制御ブロック例外のコードやプロセス制御ブロックの
アドレス、およびプロセスの番号などの例外パラメータ
を予めセットする。
ス制御ブロック例外のコードやプロセス制御ブロックの
アドレス、およびプロセスの番号などの例外パラメータ
を予めセットする。
また、プロセス制御ブロックをアクセスするルーチンに
入る前にモードレジスタ3に′1″をセットする。
入る前にモードレジスタ3に′1″をセットする。
この後、プロセス制御ブロックに対して読出し書込みを
行う命令プログラムのルーチンが実行されているときに
、ハードウェアやファームウェアによって例外が検出さ
れると、ハードウェアやファームウェアが実際に検出し
た例外の種類にかかわりなく、例外レジスタ2にセット
されたパラメータを用いて例外が発生されることになる
。
行う命令プログラムのルーチンが実行されているときに
、ハードウェアやファームウェアによって例外が検出さ
れると、ハードウェアやファームウェアが実際に検出し
た例外の種類にかかわりなく、例外レジスタ2にセット
されたパラメータを用いて例外が発生されることになる
。
プロセス制御ブロックに対するアクセスが終了すると、
命令プログラム中でモードレジスタ3が“0″にクリア
される。したがって、これ以後はハードウェアやファー
ムウェアが検出した例外をそのまま発生ずる通常の例外
処理が行われることとなる。
命令プログラム中でモードレジスタ3が“0″にクリア
される。したがって、これ以後はハードウェアやファー
ムウェアが検出した例外をそのまま発生ずる通常の例外
処理が行われることとなる。
尚、モードレジスタ3のリセットは命令プログラム中で
行われるが、命令プログラムの終了や例外の発生などに
よりハードウェアやファームウェアが自動的にリセット
するように構成することもできる。
行われるが、命令プログラムの終了や例外の発生などに
よりハードウェアやファームウェアが自動的にリセット
するように構成することもできる。
このように、例外レジスタ1に保持され、ハードウェア
およびファームウェアの少なくとも一方によって検出さ
れた例外の例外パラメータと、命令プログラムによって
予め例外レジスタ2に設定された例外パラメータとのう
ち一方を、命令プログラムの特定ルーチンが実行される
前にモードレジスタ3にセットされた値に応じてセレク
タ4で選択し、ハードウェアおよびファームウェアの少
なくとも一方によって例外が検出されたときにこのセレ
クタ4で選択された例外パラメータを用いて例外処理を
行うようにすることによって、命令プログラムの実行中
に例外か検出された場合に、該例外を命令プログラム中
で予め設定した例外として発生することが可能となる。
およびファームウェアの少なくとも一方によって検出さ
れた例外の例外パラメータと、命令プログラムによって
予め例外レジスタ2に設定された例外パラメータとのう
ち一方を、命令プログラムの特定ルーチンが実行される
前にモードレジスタ3にセットされた値に応じてセレク
タ4で選択し、ハードウェアおよびファームウェアの少
なくとも一方によって例外が検出されたときにこのセレ
クタ4で選択された例外パラメータを用いて例外処理を
行うようにすることによって、命令プログラムの実行中
に例外か検出された場合に、該例外を命令プログラム中
で予め設定した例外として発生することが可能となる。
よって、命令プログラム実行中にハードウェアやファー
ムウェアにより検出される例外が、命令プログラムによ
って実現される命令の実行の結果発生する例外とは異な
る場合でも、その命令プログラムの実行中に限り、ハー
ドウェアやファームウェアが検出する例外の内容を示す
パラメータとは別の例外パラメータを用意することがで
きるので、命令プログラムの適用範囲を広げることがで
きる。
ムウェアにより検出される例外が、命令プログラムによ
って実現される命令の実行の結果発生する例外とは異な
る場合でも、その命令プログラムの実行中に限り、ハー
ドウェアやファームウェアが検出する例外の内容を示す
パラメータとは別の例外パラメータを用意することがで
きるので、命令プログラムの適用範囲を広げることがで
きる。
魚yしλ椛呈
以上説明したように本発明によれば、ハードウェアおよ
びファームウェアの少なくとも一方によって例外が検出
されたときの例外パラメータと、ソフI・ウェア命令に
よって予め設定された例外パラメータとをソフトウェア
命令において特定の処理が実行される前に予め設定され
た所定値に応じて選択し、その選択された例外パラメー
タにより例外処理を行うようにすることによって、命令
10グラムの実行中に例外が検出された場合に、該例外
を命令プログラム中で予め設定した例外として発生する
ことができ、命令プログラムの適用範囲を広げることが
できるという効果がある。
びファームウェアの少なくとも一方によって例外が検出
されたときの例外パラメータと、ソフI・ウェア命令に
よって予め設定された例外パラメータとをソフトウェア
命令において特定の処理が実行される前に予め設定され
た所定値に応じて選択し、その選択された例外パラメー
タにより例外処理を行うようにすることによって、命令
10グラムの実行中に例外が検出された場合に、該例外
を命令プログラム中で予め設定した例外として発生する
ことができ、命令プログラムの適用範囲を広げることが
できるという効果がある。
第1図は本発明の一実施例の構成を示すブロック図であ
る。 主要部分の符号の説明 2・・・・・・例外レジスタ 3・・・・・・モードレジスタ 4・・・・・・セレクタ 第1図
る。 主要部分の符号の説明 2・・・・・・例外レジスタ 3・・・・・・モードレジスタ 4・・・・・・セレクタ 第1図
Claims (1)
- (1)ハードウェアおよびファームウェアの少なくとも
一方によって検出された例外の例外パラメータを保持す
る第1の保持手段と、ソフトウェア命令によって予め設
定された例外パラメータを保持する第2の保持手段と、
前記ソフトウェア命令において特定の処理が実行される
前に予め設定された所定値を保持する第3の保持手段と
、前記第3の保持手段に保持された前記所定値に応じて
前記第1および第2の保持手段に保持された例外パラメ
ータのうち一方を選択する選択手段とを有し、前記ハー
ドウェアおよびファームウェアの少なくとも一方によっ
て例外が検出されたとき、前記選択手段によって選択さ
れた例外パラメータにより例外処理を行うようにしたこ
とを特徴とするデータ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP64000609A JP2504151B2 (ja) | 1989-01-05 | 1989-01-05 | デ―タ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP64000609A JP2504151B2 (ja) | 1989-01-05 | 1989-01-05 | デ―タ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02181231A true JPH02181231A (ja) | 1990-07-16 |
JP2504151B2 JP2504151B2 (ja) | 1996-06-05 |
Family
ID=11478476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP64000609A Expired - Fee Related JP2504151B2 (ja) | 1989-01-05 | 1989-01-05 | デ―タ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2504151B2 (ja) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57137954A (en) * | 1981-02-18 | 1982-08-25 | Toshiba Corp | Processing state display system |
-
1989
- 1989-01-05 JP JP64000609A patent/JP2504151B2/ja not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57137954A (en) * | 1981-02-18 | 1982-08-25 | Toshiba Corp | Processing state display system |
Also Published As
Publication number | Publication date |
---|---|
JP2504151B2 (ja) | 1996-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5571201B2 (ja) | ハードウェアモードおよびセキュリティフラグに基づく、読み出される命令用のメモリエリアの制限 | |
JP2883784B2 (ja) | マイクロコンピュータ | |
JPH02181231A (ja) | データ処理装置 | |
JPH056281A (ja) | 情報処理装置 | |
JPH0377137A (ja) | 情報処理装置 | |
JP2758624B2 (ja) | マイクロプログラムの調速方式 | |
JPH08249018A (ja) | マルチプロセッサ演算装置、および該装置を有するプログラマブルコントローラ | |
JP3057688B2 (ja) | データ処理装置 | |
JP2000076095A (ja) | プログラムトレース装置およびプログラムトレース方法およびそのプログラムを記憶した記憶媒体 | |
KR100329780B1 (ko) | 인터럽트 응답 시간을 줄인 인터럽트 처리 장치 | |
JPH03282625A (ja) | データ処理装置 | |
JPS58223855A (ja) | マイクロプログラムによる記憶アドレス管理装置 | |
JP2689894B2 (ja) | マイクロプログラム制御型情報処理装置 | |
JPS607295B2 (ja) | デ−タ処理装置 | |
JPH03139723A (ja) | データ処理装置 | |
JPH05181671A (ja) | ソフトウェア命令のエミュレーション方式 | |
JPS63163533A (ja) | マイクロコンピユ−タ | |
JPH08249024A (ja) | プログラマブルコントローラ | |
JPH01321523A (ja) | データ処理装置 | |
JPH03231330A (ja) | メモリアクセス方式 | |
JPS6029846A (ja) | 情報処理装置における実行状態制御方式 | |
JPS6349941A (ja) | 演算処理装置 | |
JPH02208761A (ja) | 記憶域書込み保護方式 | |
JPH0264828A (ja) | アドレストレース回路 | |
JPH0240722A (ja) | 演算処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |