JPH0361211B2 - - Google Patents
Info
- Publication number
- JPH0361211B2 JPH0361211B2 JP16463584A JP16463584A JPH0361211B2 JP H0361211 B2 JPH0361211 B2 JP H0361211B2 JP 16463584 A JP16463584 A JP 16463584A JP 16463584 A JP16463584 A JP 16463584A JP H0361211 B2 JPH0361211 B2 JP H0361211B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- instruction
- instructions
- scalar
- unit
- 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
Links
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
- Complex Calculations (AREA)
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は電子計算機のシミユレーシヨン方法に
係り、特にスカラユニツトとベクトルユニツトと
に処理が分かれているベクトルプロセツサにおけ
るベクトル命令シミユレーシヨン方法に関するも
のである。
係り、特にスカラユニツトとベクトルユニツトと
に処理が分かれているベクトルプロセツサにおけ
るベクトル命令シミユレーシヨン方法に関するも
のである。
ベクトルプロセツサは、いわゆるスカラ命令を
処理するスカラユニツトと、一度に大量のデータ
を処理するベクトル命令を処理するベクトルユニ
ツトとからなり、スカラユニツトには、一般に汎
用電子計算機が用いられている。このため、ベク
トルプロセツサを開発中であるときなどには、ス
カラユニツトは存在しているが、ベクトルユニツ
トは未だ存在していないことがある。
処理するスカラユニツトと、一度に大量のデータ
を処理するベクトル命令を処理するベクトルユニ
ツトとからなり、スカラユニツトには、一般に汎
用電子計算機が用いられている。このため、ベク
トルプロセツサを開発中であるときなどには、ス
カラユニツトは存在しているが、ベクトルユニツ
トは未だ存在していないことがある。
このような状態のときでも、一般にベクトルプ
ロセツサ用のプログラム開発、ハードウエアの開
発に並行して進められており、該プログラムの早
期デバツグが望まれる。また、ベクトルプロセツ
サの設計確認も早期に実施する必要がある場合が
ある。このため、従来これらのことをソフトシミ
ユレータを用いて行うことがなされている。
ロセツサ用のプログラム開発、ハードウエアの開
発に並行して進められており、該プログラムの早
期デバツグが望まれる。また、ベクトルプロセツ
サの設計確認も早期に実施する必要がある場合が
ある。このため、従来これらのことをソフトシミ
ユレータを用いて行うことがなされている。
第3図は従来のシミユレーシヨン方法の例を示
している。
している。
従来のシミユレーシヨン方法では、シミユレー
シヨン対象命令を検出すると、いわゆるスーパバ
イザコール命令(SVC命令)またはモニタコー
ル命令(MC命令)のようにシステム割込みを用
い、割込みコードからシミユレートする命令を判
別して、その命令のシミユレートを行つていた。
即ち、例えば第3図図示の如く、予めSVCコー
ドの登録等を行つておき、シミユレート対象の命
令を例えばアセンブラ・マクロ等を用いてSVC
命令に変換する。そして、イニシヤルデータの設
定等のプログラムの実行準備を行い、プログラム
実行おいてSVC割込みが発生したならば、シミ
ユレータ内でSVC割込みコードを調べ、登録さ
れた各割込みコードに対応するシミユレーシヨン
を実行する。その後、システム制御部を介して
SVC割込み地点に復帰する。
シヨン対象命令を検出すると、いわゆるスーパバ
イザコール命令(SVC命令)またはモニタコー
ル命令(MC命令)のようにシステム割込みを用
い、割込みコードからシミユレートする命令を判
別して、その命令のシミユレートを行つていた。
即ち、例えば第3図図示の如く、予めSVCコー
ドの登録等を行つておき、シミユレート対象の命
令を例えばアセンブラ・マクロ等を用いてSVC
命令に変換する。そして、イニシヤルデータの設
定等のプログラムの実行準備を行い、プログラム
実行おいてSVC割込みが発生したならば、シミ
ユレータ内でSVC割込みコードを調べ、登録さ
れた各割込みコードに対応するシミユレーシヨン
を実行する。その後、システム制御部を介して
SVC割込み地点に復帰する。
このような従来の方法であると、シミユレーシ
ヨンがシステム割込み処理となり、シミユレーシ
ヨンを行うスカラ命令群による処理ルーチンが、
オペレーテイング・システムと同等の取り扱いと
なり、システムとの通信に複雑な手続きが必要と
なるという問題がある。また、システム割込みを
利用したとき、SVC割込みおよびMC割込みの割
込みコードを各命令毎に、全て登録しなければな
らないという欠点や、シミユレーシヨン対象のプ
ログラムの命令を予めSVC命令等に変換しなけ
ればならないという欠点がある。
ヨンがシステム割込み処理となり、シミユレーシ
ヨンを行うスカラ命令群による処理ルーチンが、
オペレーテイング・システムと同等の取り扱いと
なり、システムとの通信に複雑な手続きが必要と
なるという問題がある。また、システム割込みを
利用したとき、SVC割込みおよびMC割込みの割
込みコードを各命令毎に、全て登録しなければな
らないという欠点や、シミユレーシヨン対象のプ
ログラムの命令を予めSVC命令等に変換しなけ
ればならないという欠点がある。
本発明は上記問題点の解決を図り、シミユレー
ト時間の短縮および複雑なシステムとの通信手続
きの簡単化を可能とするため、SVC命令等によ
るシステム割込みを利用せず、プログラム例外割
込みを利用する。そして、スカラ命令はスカラユ
ニツト上で実行し、ベクトル命令は、スカラユニ
ツトにおけるプログラム例外により、スカラユニ
ツト上で実行されるスカラ命令に展開したソフト
シミユレータに制御を移行して実行するようにし
ている。即ち、本発明のベクトル命令シミユレー
シヨン方法は、スカラユニツトとベクトルユニツ
トとからなるベクトルプロセツサにおいて実行さ
れる命令のシミユレーシヨン方法であつて、シミ
ユレートモードのときにベクトル命令を識別して
プログラム例外割込みを生じさせる手段と、各ベ
クトル命令の処理を各一連のスカラ命令群によつ
て擬似するソフトシミユレータとを設け、シミユ
レートモードのもとでベクトル命令とスカラ命令
とからなるプログラムを実行するとき、スカラ命
令をそのまま上記スカラユニツト上で実行するよ
うにし、ベクトル命令についてはプログラム例外
割込みとした上記ソフトシミユレータに制御を移
行するようにし、上記ソフトシミユレータは割込
みアドレスに基づいて割込んできたベクトル命令
種別を判別し、判別したベクトル命令を擬似する
上記スカラ命令群を実行するようにしたことを特
徴としている。以下、図面を参照しつつ、実施例
に従つて説明する。
ト時間の短縮および複雑なシステムとの通信手続
きの簡単化を可能とするため、SVC命令等によ
るシステム割込みを利用せず、プログラム例外割
込みを利用する。そして、スカラ命令はスカラユ
ニツト上で実行し、ベクトル命令は、スカラユニ
ツトにおけるプログラム例外により、スカラユニ
ツト上で実行されるスカラ命令に展開したソフト
シミユレータに制御を移行して実行するようにし
ている。即ち、本発明のベクトル命令シミユレー
シヨン方法は、スカラユニツトとベクトルユニツ
トとからなるベクトルプロセツサにおいて実行さ
れる命令のシミユレーシヨン方法であつて、シミ
ユレートモードのときにベクトル命令を識別して
プログラム例外割込みを生じさせる手段と、各ベ
クトル命令の処理を各一連のスカラ命令群によつ
て擬似するソフトシミユレータとを設け、シミユ
レートモードのもとでベクトル命令とスカラ命令
とからなるプログラムを実行するとき、スカラ命
令をそのまま上記スカラユニツト上で実行するよ
うにし、ベクトル命令についてはプログラム例外
割込みとした上記ソフトシミユレータに制御を移
行するようにし、上記ソフトシミユレータは割込
みアドレスに基づいて割込んできたベクトル命令
種別を判別し、判別したベクトル命令を擬似する
上記スカラ命令群を実行するようにしたことを特
徴としている。以下、図面を参照しつつ、実施例
に従つて説明する。
第1図は本発明が実施されるシステム構成例、
第2図は本発明によるシミユレーシヨン方法の実
施例を示す。
第2図は本発明によるシミユレーシヨン方法の実
施例を示す。
ベクトルプロセツサ1は、スカラユニツト2と
ベクトルユニツト3とからなる。ただし、本発明
の場合、ベクトルユニツト3により実行するベク
トル命令については、スカラユニツト2によりシ
ミユレートするので、ベクトルユニツト3は必ず
しも存在しなくてもよい。従つて、ベクトルプロ
セツサ1として、通常の汎用電子計算機を用いる
こともできる。
ベクトルユニツト3とからなる。ただし、本発明
の場合、ベクトルユニツト3により実行するベク
トル命令については、スカラユニツト2によりシ
ミユレートするので、ベクトルユニツト3は必ず
しも存在しなくてもよい。従つて、ベクトルプロ
セツサ1として、通常の汎用電子計算機を用いる
こともできる。
制御レジスタ4は、スカラユニツト2が保持す
る数多くの制御レジスタの1つであり、ベクトル
ユニツト3のバリツドフラグを有するものであ
る。このバリツドフラグをオフにすることによ
り、ベクトル命令を禁止して、ベクトル命令につ
いてはプログラム例外割込みを生じさせることが
できるようになつている。命令解読部5は、メモ
リ8からフエツチして実行する命令をデコードす
るものである。命令コードがスカラ命令であると
き、命令処理部6により、その命令を実行処理す
る。命令コードがベクトル命令であるとき、プロ
グラム例外割込み発生部7によつて、プログラム
例外割込みが起きるようになつている。
る数多くの制御レジスタの1つであり、ベクトル
ユニツト3のバリツドフラグを有するものであ
る。このバリツドフラグをオフにすることによ
り、ベクトル命令を禁止して、ベクトル命令につ
いてはプログラム例外割込みを生じさせることが
できるようになつている。命令解読部5は、メモ
リ8からフエツチして実行する命令をデコードす
るものである。命令コードがスカラ命令であると
き、命令処理部6により、その命令を実行処理す
る。命令コードがベクトル命令であるとき、プロ
グラム例外割込み発生部7によつて、プログラム
例外割込みが起きるようになつている。
メモリ8は、ベクトルプロセツサ1が処理する
命令およびデータを記憶する記憶装置である。シ
ミユレーシヨン対象プログラム9は、ベクトル命
令を含む命令列からなるものであるが、本発明の
場合、オブジエクトはシミユレーシヨンを行わな
い場合と同様のものでよく、予めベクトル命令を
SVC命令等に変更しておく必要はない。
命令およびデータを記憶する記憶装置である。シ
ミユレーシヨン対象プログラム9は、ベクトル命
令を含む命令列からなるものであるが、本発明の
場合、オブジエクトはシミユレーシヨンを行わな
い場合と同様のものでよく、予めベクトル命令を
SVC命令等に変更しておく必要はない。
シミユレートモード設定部10は、制御レジス
タ4をベクトル命令禁止の状態にセツトし、ベク
トル命令シミユレートモードに設定する処理を実
行するものである。また、プログラム例外割込み
が生じたときの制御移行先が、ソフトシミユレー
タ11の制御部12の先頭アドレスになるように
新PSWをセツトする。
タ4をベクトル命令禁止の状態にセツトし、ベク
トル命令シミユレートモードに設定する処理を実
行するものである。また、プログラム例外割込み
が生じたときの制御移行先が、ソフトシミユレー
タ11の制御部12の先頭アドレスになるように
新PSWをセツトする。
ソフトシミユレータ11は、シミユレーシヨン
の制御を行う制御部12と、各ベクトル命令対応
にベクトル命令をスカラ命令群によつて擬似する
ベクトル命令擬似処理部15a,15b…とから
なる。また、制御部12は、プログラム例外割込
みが生じたアドレスを抽出する割込みアドレス抽
出部13と、そのアドレスに格納されている命令
の種別を判定し、命令種別によつてベクトル命令
擬似処理部15a,15b…の1つを選択し起動
する命令種別判定部14とを持つ。
の制御を行う制御部12と、各ベクトル命令対応
にベクトル命令をスカラ命令群によつて擬似する
ベクトル命令擬似処理部15a,15b…とから
なる。また、制御部12は、プログラム例外割込
みが生じたアドレスを抽出する割込みアドレス抽
出部13と、そのアドレスに格納されている命令
の種別を判定し、命令種別によつてベクトル命令
擬似処理部15a,15b…の1つを選択し起動
する命令種別判定部14とを持つ。
次に、第2図に従つて、本発明によるシミユレ
ーシヨン方法の例を説明する。
ーシヨン方法の例を説明する。
ベクトル命令のシミユレーシヨンを行うにあた
つて、まずプログラム例外割込みの登録をシステ
ムに対して行う。そして、制御レジスタ4をベク
トル命令禁止の状態にセツトする。なお、この処
理は、ベクトル命令の実行によつて、はじめから
プログラム例外割込みが生じるようになつている
システムの場合には必要ない。
つて、まずプログラム例外割込みの登録をシステ
ムに対して行う。そして、制御レジスタ4をベク
トル命令禁止の状態にセツトする。なお、この処
理は、ベクトル命令の実行によつて、はじめから
プログラム例外割込みが生じるようになつている
システムの場合には必要ない。
その後、シミユレーシヨン対象プログラム9を
実行すると、スカラ命令は、スカラユニツト2の
命令処理部によつて順に実行されていく。プログ
ラム中にベクトル命令が現れると、命令解読部5
によつてプログラム例外割込み発生部7が発動さ
れ、プログラム例外割込みが生じる。これによつ
て、ソフトシミユレータ11の制御部12に制御
が移行し、制御部12は、まず登録されたプログ
ラム例外割込みであるかどうかを判定する。登録
されていないプログラム例外割込みに関しては、
異常割込みとして処理し、ソフトシミユレータ1
1の処理を中止し、シミユレーシヨン対象プログ
ラム9の実行を終了する。
実行すると、スカラ命令は、スカラユニツト2の
命令処理部によつて順に実行されていく。プログ
ラム中にベクトル命令が現れると、命令解読部5
によつてプログラム例外割込み発生部7が発動さ
れ、プログラム例外割込みが生じる。これによつ
て、ソフトシミユレータ11の制御部12に制御
が移行し、制御部12は、まず登録されたプログ
ラム例外割込みであるかどうかを判定する。登録
されていないプログラム例外割込みに関しては、
異常割込みとして処理し、ソフトシミユレータ1
1の処理を中止し、シミユレーシヨン対象プログ
ラム9の実行を終了する。
登録済みのプログラム例外割込みである場合に
は、旧PSWに従つて、割込みアドレスの調査を
行い、割込みアドレスおよび割込みコードから割
込んだベクトル命令コードを判別する。また命令
オペランドについても抽出し、命令コードに対応
するベクトル命令擬似処理部15a,15b,…
を起動して、そのベクトル命令によるデータ処理
を一連のスカラ命令群によつて擬似する。その
後、制御部12において、必要に応じて各種レジ
スタの復元など行い、ロードPSW命令等によつ
て、プログラム例外割込みを発生させた命令の次
の命令に制御を移す。以下、同様にシミユレーシ
ヨン対象プログラム9の命令を処理していき、プ
ログラムが終了したならば、シミユレートモード
を解除する。このようにすることによつて、命令
の実行が、全てスカラユニツト2上で行われるこ
とになる。
は、旧PSWに従つて、割込みアドレスの調査を
行い、割込みアドレスおよび割込みコードから割
込んだベクトル命令コードを判別する。また命令
オペランドについても抽出し、命令コードに対応
するベクトル命令擬似処理部15a,15b,…
を起動して、そのベクトル命令によるデータ処理
を一連のスカラ命令群によつて擬似する。その
後、制御部12において、必要に応じて各種レジ
スタの復元など行い、ロードPSW命令等によつ
て、プログラム例外割込みを発生させた命令の次
の命令に制御を移す。以下、同様にシミユレーシ
ヨン対象プログラム9の命令を処理していき、プ
ログラムが終了したならば、シミユレートモード
を解除する。このようにすることによつて、命令
の実行が、全てスカラユニツト2上で行われるこ
とになる。
以上説明した如く、本発明によれば、ベクトル
命令対応のSVCコードの登録やシミユレート対
象の命令の変換等が不要となり、またオペレーテ
イング・システム等とのソフトウエア・インタフ
エースも簡略化される。従つて、ベクトルユニツ
トが存在しない場合や障害になつた場合でも、ベ
クトルプロセツサ用のプログラムを、スカラユニ
ツトだけで効率よく実行させることが可能とな
る。例えば、ベクトルプロセツサ用プログラムの
早期開発のためにデバツクを行う場合や、ベクト
ルユニツト障害時における試験のために、実際の
ベクトルユニツトによるベクトル命令実行の処理
結果と、シミユレーシヨンによる処理結果とを比
較することにより診断を行う場合等、広く本発明
によるシミユレーシヨン方法を用いることが可能
である。
命令対応のSVCコードの登録やシミユレート対
象の命令の変換等が不要となり、またオペレーテ
イング・システム等とのソフトウエア・インタフ
エースも簡略化される。従つて、ベクトルユニツ
トが存在しない場合や障害になつた場合でも、ベ
クトルプロセツサ用のプログラムを、スカラユニ
ツトだけで効率よく実行させることが可能とな
る。例えば、ベクトルプロセツサ用プログラムの
早期開発のためにデバツクを行う場合や、ベクト
ルユニツト障害時における試験のために、実際の
ベクトルユニツトによるベクトル命令実行の処理
結果と、シミユレーシヨンによる処理結果とを比
較することにより診断を行う場合等、広く本発明
によるシミユレーシヨン方法を用いることが可能
である。
第1図は本発明が実施されるシステム構成例、
第2図は本発明によるシミユレーシヨン方法の実
施例、第3図は従来のシミユレーシヨン方法を示
す。 図中、1はベクトルプロセツサ、2はスカラユ
ニツト、4は制御レジスタ、5は命令解読部、6
は命令処理部、8はメモリ、9はシミユレーシヨ
ン対象プログラム、10はシミユレートモード設
定部、11はソフトシミユレータ、12は制御
部、13は割込みアドレス抽出部、14は命令種
別判定部、15a,15b,15cはベクトル命
令擬似処理部を表す。
第2図は本発明によるシミユレーシヨン方法の実
施例、第3図は従来のシミユレーシヨン方法を示
す。 図中、1はベクトルプロセツサ、2はスカラユ
ニツト、4は制御レジスタ、5は命令解読部、6
は命令処理部、8はメモリ、9はシミユレーシヨ
ン対象プログラム、10はシミユレートモード設
定部、11はソフトシミユレータ、12は制御
部、13は割込みアドレス抽出部、14は命令種
別判定部、15a,15b,15cはベクトル命
令擬似処理部を表す。
Claims (1)
- 1 スカラユニツトとベクトルユニツトとからな
るベクトルプロセツサにおいて実行される命令の
シミユレーシヨン方法であつて、シミユレートモ
ードのときにベクトル命令を識別してプログラム
例外割込みを生じさせる手段と、各ベクトル命令
の処理を各一連のスカラ命令群によつて擬似する
ソフトシミユレータとを設け、シミユレートモー
ドのもとでベクトル命令とスカラ命令とからなる
プログラムを実行するとき、スカラ命令をそのま
ま上記スカラユニツト上で実行するようにし、ベ
クトル命令についてはプログラム例外割込みとし
て上記ソフトシミユレータに制御を移行するよう
にし、上記ソフトシミユレータは割込みアドレス
に基づいて割込んできたベクトル命令種別を判別
し、判別したベクトル命令を擬似する上記スカラ
命令群を実行するようにしたことを特徴とするベ
クトル命令シミユレーシヨン方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16463584A JPS6143347A (ja) | 1984-08-06 | 1984-08-06 | ベクトル命令シミユレ−シヨン方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP16463584A JPS6143347A (ja) | 1984-08-06 | 1984-08-06 | ベクトル命令シミユレ−シヨン方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6143347A JPS6143347A (ja) | 1986-03-01 |
| JPH0361211B2 true JPH0361211B2 (ja) | 1991-09-19 |
Family
ID=15796943
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP16463584A Granted JPS6143347A (ja) | 1984-08-06 | 1984-08-06 | ベクトル命令シミユレ−シヨン方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6143347A (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS62259102A (ja) * | 1986-05-02 | 1987-11-11 | Mitsubishi Electric Corp | プロセス制御用計算機システム |
| JPH03268031A (ja) * | 1990-03-19 | 1991-11-28 | Fujitsu Ltd | ベクトルプロセッサの試験方式 |
-
1984
- 1984-08-06 JP JP16463584A patent/JPS6143347A/ja active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6143347A (ja) | 1986-03-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4819234A (en) | Operating system debugger | |
| US4635193A (en) | Data processor having selective breakpoint capability with minimal overhead | |
| US5680584A (en) | Simulator system for code execution and debugging within a multi-architecture environment | |
| JPH0430053B2 (ja) | ||
| EP0111952B1 (en) | Verification of a processor architecture having a partial instruction set | |
| US6834359B2 (en) | Method and system for testing a processor | |
| US7016826B2 (en) | Apparatus and method of developing software for a multi-processor chip | |
| US20030093258A1 (en) | Method and apparatus for efficient simulation of memory mapped device access | |
| JPH0361211B2 (ja) | ||
| JP2828590B2 (ja) | マイクロプログラム検証方法 | |
| CA1223079A (en) | Data processor having selective breakpoint capability with minimal overhead | |
| JP3270729B2 (ja) | 拡張命令セット・シミュレータ | |
| JPH02311947A (ja) | コプロセッサの誤り修正方式 | |
| CN117112027A (zh) | 数据处理方法、装置、电子设备及可读介质 | |
| JPS61221837A (ja) | コンピユ−タの検査方法 | |
| JPS6334644A (ja) | 機能レベルシミユレ−タ | |
| JP2000122892A (ja) | エミュレータ装置 | |
| JPH02231634A (ja) | ソフトウェア互換性維持方法 | |
| JPH05127945A (ja) | プログラム実行状況解析方式 | |
| CN117555555A (zh) | 例外处理方法、装置、电子设备及存储介质 | |
| JPH06208480A (ja) | システムプログラムシミュレーション方式 | |
| JPS63300330A (ja) | ファ−ムウェアのデバッグ方法 | |
| JPH03263134A (ja) | データ処理装置のテスト処理方式 | |
| JPH0290243A (ja) | マイクロプログラム論理検証方式 | |
| JPH04190457A (ja) | 論理シミュレーション方法および装置 |