JP2504151B2 - デ―タ処理装置 - Google Patents
デ―タ処理装置Info
- Publication number
- JP2504151B2 JP2504151B2 JP64000609A JP60989A JP2504151B2 JP 2504151 B2 JP2504151 B2 JP 2504151B2 JP 64000609 A JP64000609 A JP 64000609A JP 60989 A JP60989 A JP 60989A JP 2504151 B2 JP2504151 B2 JP 2504151B2
- Authority
- JP
- Japan
- Prior art keywords
- exception
- firmware
- parameter
- hardware
- detected
- 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.)
- Expired - Fee Related
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】 技術分野 本発明はデータ処理装置に関し、特にデータ処理装置
における例外処理の方法に関する。
における例外処理の方法に関する。
従来技術 従来、マイクロプログラム制御により機械命令を実現
するデータ処理装置においては、ハードウェアが例外を
検出したときには、ハードウェアによってその例外の内
容を示すパラメータがレジスタにセットされるととも
に、ハードウェアからの割込み信号によって例外処理の
ためファームウェアルーチンが起動されていた。
するデータ処理装置においては、ハードウェアが例外を
検出したときには、ハードウェアによってその例外の内
容を示すパラメータがレジスタにセットされるととも
に、ハードウェアからの割込み信号によって例外処理の
ためファームウェアルーチンが起動されていた。
また、ファームウェアが例外を検出したときには、フ
ァームウェアによってその例外の内容を示すパラメータ
がレジスタにセットされるとともに、ファームウェアが
例外処理のためのファームウェアルーチンに分岐されて
いた。
ァームウェアによってその例外の内容を示すパラメータ
がレジスタにセットされるとともに、ファームウェアが
例外処理のためのファームウェアルーチンに分岐されて
いた。
上述のようなデータ処理装置においては、処理性能の
向上をはかるために、マイクロプログラムを構成するマ
イクロ命令が1ステップで実行する機能を多くし、並列
処理性を高め、かつビット構成の大きないわゆる水平型
マイクロ命令化が顕著である。特に基本演算命令など使
用頻度の高いものについては、上述の水平型マイクロ命
令の特徴が最大限にいかせるようにハードウェアの構造
も最適化されるので、極めて少ないマイクロプログラム
のステップ数で実現される。
向上をはかるために、マイクロプログラムを構成するマ
イクロ命令が1ステップで実行する機能を多くし、並列
処理性を高め、かつビット構成の大きないわゆる水平型
マイクロ命令化が顕著である。特に基本演算命令など使
用頻度の高いものについては、上述の水平型マイクロ命
令の特徴が最大限にいかせるようにハードウェアの構造
も最適化されるので、極めて少ないマイクロプログラム
のステップ数で実現される。
一方、シーケンシャルな処理が多く、このような機能
に対して高度に水平化されたマイクロ命令を使用して
も、1ステップで実行する機能の並列度が低いためにマ
イクロ命令の未使用フィールドが多くなってしまう各種
制御命令を、上述の基本演算命令から構成される命令プ
ログラムにより実現するという階層構造をとることによ
り、マイクロプログラムを格納する制御記憶のワード方
向の利用効率を高める方法が本発明の出願人により提案
されている。
に対して高度に水平化されたマイクロ命令を使用して
も、1ステップで実行する機能の並列度が低いためにマ
イクロ命令の未使用フィールドが多くなってしまう各種
制御命令を、上述の基本演算命令から構成される命令プ
ログラムにより実現するという階層構造をとることによ
り、マイクロプログラムを格納する制御記憶のワード方
向の利用効率を高める方法が本発明の出願人により提案
されている。
このような命令プログラムは保護された領域に確保さ
れ、通常のソフトウェアからはアクセスが不可能となっ
ているため、命令プログラムが実行されていても、ソフ
トウェアによって命令プログラムが実行中であることが
意識されることはない。
れ、通常のソフトウェアからはアクセスが不可能となっ
ているため、命令プログラムが実行されていても、ソフ
トウェアによって命令プログラムが実行中であることが
意識されることはない。
上述のような命令プログラムを実現するためには、従
来ファームウェアによって検出されていた例外を命令プ
ログラム中で検出しなければならないが、命令プログラ
ム実行中にハードウェアやファームウェアによって検出
される例外が、命令プログラムによって実現される命令
の実行の結果発生する例外とは異なる場合がある。
来ファームウェアによって検出されていた例外を命令プ
ログラム中で検出しなければならないが、命令プログラ
ム実行中にハードウェアやファームウェアによって検出
される例外が、命令プログラムによって実現される命令
の実行の結果発生する例外とは異なる場合がある。
たとえば、プロセス制御ブロックに対して読出し書込
みを行う命令プログラムのルーチンを実行しているとき
に検出した例外を、諸例外の種類にかかわらず不正プロ
セス制御ブロック例外として報告する場合がある。
みを行う命令プログラムのルーチンを実行しているとき
に検出した例外を、諸例外の種類にかかわらず不正プロ
セス制御ブロック例外として報告する場合がある。
このような場合には、その命令プログラムの実行中に
限り、ハードウェアやファームウェアが検出する例外の
内容を示すパラメータとは別の例外パラメータを用意す
る必要がある。
限り、ハードウェアやファームウェアが検出する例外の
内容を示すパラメータとは別の例外パラメータを用意す
る必要がある。
しかしながら、従来のデータ処理装置ではハードウェ
アやファームウェアが検出する例外のパラメータとは別
の例外パラメータを用意するための手段がなかったの
で、命令プログラムの適用範囲が狭くなるという問題が
ある。
アやファームウェアが検出する例外のパラメータとは別
の例外パラメータを用意するための手段がなかったの
で、命令プログラムの適用範囲が狭くなるという問題が
ある。
発明の目的 本発明は上記のような従来のものの問題点を除去すべ
くなされたもので、命令プログラムの実行中に例外が検
出された場合に、該例外を命令プログラム中で予め設定
した例外として発生することができ、命令プログラムの
適用範囲を広げることができるデータ処理装置の提供を
目的とする。
くなされたもので、命令プログラムの実行中に例外が検
出された場合に、該例外を命令プログラム中で予め設定
した例外として発生することができ、命令プログラムの
適用範囲を広げることができるデータ処理装置の提供を
目的とする。
発明の構成 本発明によるデータ処理装置は、例外パラメータに応
じて例外処理を行うデータ処理装置であって、ハードウ
ェアおよびファームウェアの少なくとも一方によって検
出された例外の例外パラメータを保持する第1の保持手
段と、ソフトウェア命令において予め設定された例外パ
ラメータを保持する第2の保持手段と、前記ソフトウェ
ア命令において特定の処理が実行される前に予め設定さ
れた所定値を保持する第3の保持手段と、前記第3の保
持手段に保持された前記所定値に応じて前記第1および
第2の保持手段に保持された例外パラメータのうち一方
を選択する選択手段と、前記ハードウェアおよびフアー
ムウェアの少なくとも一方によって例外が検出されたと
き前記選択手段によって選択された例外パラメータによ
り例外処理を行う手段とを有することを特徴とする。
じて例外処理を行うデータ処理装置であって、ハードウ
ェアおよびファームウェアの少なくとも一方によって検
出された例外の例外パラメータを保持する第1の保持手
段と、ソフトウェア命令において予め設定された例外パ
ラメータを保持する第2の保持手段と、前記ソフトウェ
ア命令において特定の処理が実行される前に予め設定さ
れた所定値を保持する第3の保持手段と、前記第3の保
持手段に保持された前記所定値に応じて前記第1および
第2の保持手段に保持された例外パラメータのうち一方
を選択する選択手段と、前記ハードウェアおよびフアー
ムウェアの少なくとも一方によって例外が検出されたと
き前記選択手段によって選択された例外パラメータによ
り例外処理を行う手段とを有することを特徴とする。
実施例 次に、本発明の一実施例について図面を参照して説明
する。
する。
第1図は本発明の一実施例の構成を示すブロック図で
ある。図において、例外レジスタ1にはハードウェアや
ファームウェアにより検出された例外の内容を示す例外
パラメータがセットされる。また、例外レジスタ2には
命令プログラム中のあるルーチンで検出した例外を全て
特定の例外に変えて発生したいときに、発生したい例外
のパラメータが設定される。
ある。図において、例外レジスタ1にはハードウェアや
ファームウェアにより検出された例外の内容を示す例外
パラメータがセットされる。また、例外レジスタ2には
命令プログラム中のあるルーチンで検出した例外を全て
特定の例外に変えて発生したいときに、発生したい例外
のパラメータが設定される。
モードレジスタ3には命令プログラム中のあるルーチ
ンで検出した例外を全て特定の例外に変えて発生したい
ときに予め定められた所定値、本実施例では“1"がセッ
トされる。
ンで検出した例外を全て特定の例外に変えて発生したい
ときに予め定められた所定値、本実施例では“1"がセッ
トされる。
セレクタ4はモードレジスタ3にセットされた内容に
したがって例外レジスタ1,2各々に保持された例外パラ
メータのうち一方を選択し、該例外パラメータを図示せ
ぬ例外処理機構に出力する。
したがって例外レジスタ1,2各々に保持された例外パラ
メータのうち一方を選択し、該例外パラメータを図示せ
ぬ例外処理機構に出力する。
命令プログラム中のあるルーチンで検出した例外を全
て特定の例外に変えて発生したい場合には、そのルーチ
ンに入る前に発生したい例外のパラメータを例外レジス
タ2に設定しておく。
て特定の例外に変えて発生したい場合には、そのルーチ
ンに入る前に発生したい例外のパラメータを例外レジス
タ2に設定しておく。
また、そのルーチンに入る直前にモードレジスタ3に
“1"をセットし、逆にそのルーチンから出るときにモー
ドレジスタ3を“0"にリセットする。
“1"をセットし、逆にそのルーチンから出るときにモー
ドレジスタ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で選択された例外パラメータを用いて例外処理
を行うようにすることによって、命令プロクラム中の実
行中に例外が検出された場合に、該例外を命令プログラ
ム中で予め設定した例外として発生することが可能とな
る。
よって、命令プログラム実行中にハードウェアやファ
ームウェアにより検出される例外が、命令プログラムに
よって実現される命令の実行の結果発生する例外とは異
なる場合でも、その命令プログラムの実行中に限り、ハ
ードウェアやファームウェアが検出する例外の内容を示
すパラメータとは別の例外パラメータを用意することが
できるので、命令プログラムの適用範囲を広げることが
できる。
ームウェアにより検出される例外が、命令プログラムに
よって実現される命令の実行の結果発生する例外とは異
なる場合でも、その命令プログラムの実行中に限り、ハ
ードウェアやファームウェアが検出する例外の内容を示
すパラメータとは別の例外パラメータを用意することが
できるので、命令プログラムの適用範囲を広げることが
できる。
発明の効果 以上説明したように本発明によれば、ハードウェアお
よびファームウェアの少なくとも一方によって例外が検
出されたときの例外パラメータと、ソフトウェア命令に
よって予め設定された例外パラメータとをソフトウェア
命令において特定の処理が実行される前に予め設定され
た所定値に応じて選択し、その選択された例外パラメー
タにより例外処理を行うようにすることによって、命令
プログラムの実行中に例外が検出された場合に、該例外
を命令プログラム中で予め設定した例外として発生する
ことができ、命令プログラムの適用範囲を広げることが
できるという効果がある。
よびファームウェアの少なくとも一方によって例外が検
出されたときの例外パラメータと、ソフトウェア命令に
よって予め設定された例外パラメータとをソフトウェア
命令において特定の処理が実行される前に予め設定され
た所定値に応じて選択し、その選択された例外パラメー
タにより例外処理を行うようにすることによって、命令
プログラムの実行中に例外が検出された場合に、該例外
を命令プログラム中で予め設定した例外として発生する
ことができ、命令プログラムの適用範囲を広げることが
できるという効果がある。
第1図は本発明の一実施例の構成を示すブロック図であ
る。 主要部分の符号の説明 1,2……例外レジスタ 3……モードレジスタ 4……セレクタ
る。 主要部分の符号の説明 1,2……例外レジスタ 3……モードレジスタ 4……セレクタ
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 JPH02181231A (ja) | 1990-07-16 |
| JP2504151B2 true 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) |
Family Cites Families (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
Also Published As
| Publication number | Publication date |
|---|---|
| JPH02181231A (ja) | 1990-07-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0213843A2 (en) | Digital processor control | |
| JP2883784B2 (ja) | マイクロコンピュータ | |
| US5095426A (en) | Data processing system for effectively handling exceptions during execution of two different types of instructions | |
| JP2504151B2 (ja) | デ―タ処理装置 | |
| JPH0377137A (ja) | 情報処理装置 | |
| JPH05257807A (ja) | キャッシュメモリ制御装置 | |
| JP3057688B2 (ja) | データ処理装置 | |
| JPH0353320A (ja) | マイクロプログラム制御方式 | |
| JPH03282625A (ja) | データ処理装置 | |
| JPH0731608B2 (ja) | 情報処理装置 | |
| JPH05274341A (ja) | ベクトル命令処理装置 | |
| JPH0683986A (ja) | シングルチップ・マイクロコンピュータ | |
| JPH0772908A (ja) | プログラマブルコントローラ | |
| JPH05173846A (ja) | 障害解析情報トレース方法 | |
| JPH08249024A (ja) | プログラマブルコントローラ | |
| JPH03240135A (ja) | Ct装置 | |
| JPH03147130A (ja) | オペレーティングシステム修正方式 | |
| JPS60105048A (ja) | マイクロプログラム制御方式 | |
| JPH02242445A (ja) | 情報処理装置のデバッグ機構 | |
| JPH07160578A (ja) | 情報処理装置 | |
| JPH02242335A (ja) | 電子計算機 | |
| JPH05298086A (ja) | 情報処理装置 | |
| JPH04147339A (ja) | 情報処理装置 | |
| JPH01321523A (ja) | データ処理装置 | |
| JPH04352243A (ja) | ソフトウェア動作トレース取得装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |