JPS63106836A - 異ア−キテクチヤ・エミユレ−シヨン方式 - Google Patents
異ア−キテクチヤ・エミユレ−シヨン方式Info
- Publication number
- JPS63106836A JPS63106836A JP25169686A JP25169686A JPS63106836A JP S63106836 A JPS63106836 A JP S63106836A JP 25169686 A JP25169686 A JP 25169686A JP 25169686 A JP25169686 A JP 25169686A JP S63106836 A JPS63106836 A JP S63106836A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- signal
- circuit
- cpu
- architecture
- 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
Links
- 238000000034 method Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 2
- 230000033772 system development Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 241001508691 Martes zibellina Species 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は異アーキテクチャ上のソフトウェアの実行に関
し、特に類似アーキテクチャ用に作成されたソフトウェ
アを実行するのに好適な異アーキテクチャ・エミュレー
ション方式に関する。
し、特に類似アーキテクチャ用に作成されたソフトウェ
アを実行するのに好適な異アーキテクチャ・エミュレー
ション方式に関する。
(])
従来、異アーキテクチャ用に開発されたソフトウェアを
行させる場合としては、■高性能化、高機能化された上
位機種へ移植する。■大型機あるいは中型機等が、シス
テム開発装置としてマイクロコン等の動作をエミュレー
トする。といった場合があった。■の場合、」二位機に
は特権命令の追加等が行なわれるが、タスクのレベルで
は無修正でそのまま動作する。■の場合は、命令コード
を入出力命令で読みとり、実行するため、本発明のよう
な回路が不要である。また■の場合には、システム開発
装置としての実行のため実行速度はほとんど問題となら
なかった。ところがインテル社の80286.モトロー
ラ社の68010というプロセッサはその下位プロセッ
サインテル礼の8086、モトローラ社の68000と
非常によく似たアーキテクチャを持っているが、タスク
が使う一般の命令において相違があるため、■のケース
とはならない。■の方式は、オーバーヘッドが大きすぎ
、実機としては採用できない。
行させる場合としては、■高性能化、高機能化された上
位機種へ移植する。■大型機あるいは中型機等が、シス
テム開発装置としてマイクロコン等の動作をエミュレー
トする。といった場合があった。■の場合、」二位機に
は特権命令の追加等が行なわれるが、タスクのレベルで
は無修正でそのまま動作する。■の場合は、命令コード
を入出力命令で読みとり、実行するため、本発明のよう
な回路が不要である。また■の場合には、システム開発
装置としての実行のため実行速度はほとんど問題となら
なかった。ところがインテル社の80286.モトロー
ラ社の68010というプロセッサはその下位プロセッ
サインテル礼の8086、モトローラ社の68000と
非常によく似たアーキテクチャを持っているが、タスク
が使う一般の命令において相違があるため、■のケース
とはならない。■の方式は、オーバーヘッドが大きすぎ
、実機としては採用できない。
なおこのようなアーキテクチャに関して特開昭59−1
.12042等が知られている。
.12042等が知られている。
本発明の目的は、類似アーキテクチャ用に開発されたソ
フトウェアをオペレーティングシステムO8管理下のタ
スクとして実行させる際、実行するCPUのアーキテク
チャとの相違命令を実行時に検出し、O8においてその
相違を処理できる異アーキテクチャ・エミュレーション
方式提供することにある。
フトウェアをオペレーティングシステムO8管理下のタ
スクとして実行させる際、実行するCPUのアーキテク
チャとの相違命令を実行時に検出し、O8においてその
相違を処理できる異アーキテクチャ・エミュレーション
方式提供することにある。
本発明では、CPUと主メモリの間にフェッチ回路を設
け、類似アーキテクチャ用に開発されたソフトウェアを
実行する直前には、O8がこの回路をイネーブルにする
。また、本フェッチ回路はCP TJからのフェッチ信
号が発せられると、メモリから命令を回路内にロードし
、その命令が相違命令である場合には、当該CPUの割
込命令をCPUがフェッチするようにし、割込みを発生
させ、O8において対象となった命令を分析しエミュレ
ートする。
け、類似アーキテクチャ用に開発されたソフトウェアを
実行する直前には、O8がこの回路をイネーブルにする
。また、本フェッチ回路はCP TJからのフェッチ信
号が発せられると、メモリから命令を回路内にロードし
、その命令が相違命令である場合には、当該CPUの割
込命令をCPUがフェッチするようにし、割込みを発生
させ、O8において対象となった命令を分析しエミュレ
ートする。
本発明では、異アーキテクチャ用に開発されたプログラ
ムを実行させるために、CPUとメモリの間に相違命令
検出回路を設け、相違命令の検出時には割込みを発生さ
せO8において命令の相違点をエミュレートしている。
ムを実行させるために、CPUとメモリの間に相違命令
検出回路を設け、相違命令の検出時には割込みを発生さ
せO8において命令の相違点をエミュレートしている。
以下、本発明の実施例を第1〜3図により説明する。本
発明の楕成を第1図に示す。CPUIからアドレス制御
信号Fは信号線7を通して命令フェッチ検出回路5へ出
力される。またC P T、J 1−のデータ信号はデ
ータ線1−2を通して相違命令検出回路3と供給されて
いる。主メモリ2はCPUIからのアドレス信号AD、
アドレス制御信号F。
発明の楕成を第1図に示す。CPUIからアドレス制御
信号Fは信号線7を通して命令フェッチ検出回路5へ出
力される。またC P T、J 1−のデータ信号はデ
ータ線1−2を通して相違命令検出回路3と供給されて
いる。主メモリ2はCPUIからのアドレス信号AD、
アドレス制御信号F。
R/W信号を、それぞれ信号線6,7.8により入力と
し、またデータ信号はデータ線13を通して相違命令検
出回路3とつながっている。CPU1からのR/W信号
は信号線8を通してメモリ2、相違命令検出回路3、及
びイネーブル/ディスエーブル(enable/dis
ablo)制御回路4へ供給される。命令フェッチ検出
回路5は(”、 P U 1からのアドレス制御信号7
、R/W信号を入力とし、現在出力中のアドレス信号が
令命フェッチ信号の場合には信号線9にオン(ON)
、そうでない場合には、オフ(OF F)を出力する。
し、またデータ信号はデータ線13を通して相違命令検
出回路3とつながっている。CPU1からのR/W信号
は信号線8を通してメモリ2、相違命令検出回路3、及
びイネーブル/ディスエーブル(enable/dis
ablo)制御回路4へ供給される。命令フェッチ検出
回路5は(”、 P U 1からのアドレス制御信号7
、R/W信号を入力とし、現在出力中のアドレス信号が
令命フェッチ信号の場合には信号線9にオン(ON)
、そうでない場合には、オフ(OF F)を出力する。
イネーブル/ディスエーブル(enable / di
sable)制御回路4、アドレス信号6、R/W信号
8、及びリセット信号10を入力とし、リセット信号が
入らない場合には、ある特定番地へのリード(read
)信号が入力されると、次に同じアドレスへのライト
(write)信号が入力されるまで信号線1.1ヘイ
ネーブル(enable)信号のON信号を出し続ける
。同様に、そのアドレスへのライト(write)信号
が入力されると、そのアドレスへのリード(read)
信号が入力されるまで信号線】−1へオフ(OFF)を
出力し続ける。またリセット信号が入るとその前の状態
のいかんにかかわらず信号線11への出力をオフ(OF
F)にする(この特定番地はO8以外がアクセスでき
ない部分とする)。
sable)制御回路4、アドレス信号6、R/W信号
8、及びリセット信号10を入力とし、リセット信号が
入らない場合には、ある特定番地へのリード(read
)信号が入力されると、次に同じアドレスへのライト
(write)信号が入力されるまで信号線1.1ヘイ
ネーブル(enable)信号のON信号を出し続ける
。同様に、そのアドレスへのライト(write)信号
が入力されると、そのアドレスへのリード(read)
信号が入力されるまで信号線】−1へオフ(OFF)を
出力し続ける。またリセット信号が入るとその前の状態
のいかんにかかわらず信号線11への出力をオフ(OF
F)にする(この特定番地はO8以外がアクセスでき
ない部分とする)。
相異命令検出回路3の詳細を第2図に示す。命令マツチ
ング回路21はフェッチ信号9.イネ−プル信号1]−
1主メモリからのデータ信号r−3、及び相違命令に関
する情報を記憶したROM23からのデータを入力とす
る。ROM23にはマツチングをしようとする命令コー
ドをアドレス信号として入力し、その命令が相違命令の
場合にはオン(ON)、そうでない場合にはオフ(OF
F)をデータとして出力するようにセットしておく。
ング回路21はフェッチ信号9.イネ−プル信号1]−
1主メモリからのデータ信号r−3、及び相違命令に関
する情報を記憶したROM23からのデータを入力とす
る。ROM23にはマツチングをしようとする命令コー
ドをアドレス信号として入力し、その命令が相違命令の
場合にはオン(ON)、そうでない場合にはオフ(OF
F)をデータとして出力するようにセットしておく。
フェッチ信号9及びイネーブル信号1.1−がONの場
合にはデータ信号をROM23ヘアドレスとして入出力
し、その結果のデータを信号線27へ出力する。9,1
]−の信号が前記以外の場合には、信号線27はOF
i”を出力する。命令セレクト回路22はデータ信号1
3、割込命令記憶ROM24及び命令マツチング回路か
らの出力27を入力とし、27からオン(ON)信号が
入力されるとROM24のデータが、オフ(OF F)
信号が入力されるとデータ信号13のデータがそれぞれ
選択され信号線28へ出力される。R/W信号8はゲー
ト25.26へ入力されゲート25はリード(read
)信号時、ゲート26はライト(write)信号時に
のみつながる。
合にはデータ信号をROM23ヘアドレスとして入出力
し、その結果のデータを信号線27へ出力する。9,1
]−の信号が前記以外の場合には、信号線27はOF
i”を出力する。命令セレクト回路22はデータ信号1
3、割込命令記憶ROM24及び命令マツチング回路か
らの出力27を入力とし、27からオン(ON)信号が
入力されるとROM24のデータが、オフ(OF F)
信号が入力されるとデータ信号13のデータがそれぞれ
選択され信号線28へ出力される。R/W信号8はゲー
ト25.26へ入力されゲート25はリード(read
)信号時、ゲート26はライト(write)信号時に
のみつながる。
以下、本発明の回路部の動作を説明する。インテル社の
18086と180286のように命令コードが同じで
一部分の命令の動作が異なるアーキテクチャA、Bを考
え、アーキテクチャA用に作成されたプログラムをアー
キテクチャBのCPU上でO8の管理下で実行させる場
合を考える。
18086と180286のように命令コードが同じで
一部分の命令の動作が異なるアーキテクチャA、Bを考
え、アーキテクチャA用に作成されたプログラムをアー
キテクチャBのCPU上でO8の管理下で実行させる場
合を考える。
第1図において、1をアーキテクチャBのCPUとし、
メモリ2にはアーキテクチャA用のプログラムがストア
されているとする。ROM23にはアーキテクチャAと
Bで動作が異なる命令語に関する情報を記憶しておき、
ROM24にはアーキテクチャBにおける割込命令を記
憶しておく。
メモリ2にはアーキテクチャA用のプログラムがストア
されているとする。ROM23にはアーキテクチャAと
Bで動作が異なる命令語に関する情報を記憶しておき、
ROM24にはアーキテクチャBにおける割込命令を記
憶しておく。
O8がアーキテクチャAのプログラムをタスクとして実
行しようとした場合には、プログラムの実行環境設定後
、上述の特定番地をリード(read)しイネーブル信
号11をオン(ON)にし、本回路を起動させ、タスク
へ制御を移す。タスクからフェッチ以外のメモリ・リー
ドがあると、信号9はオフ(OFF)となり、マツチン
グ回路21からはオフ(OFF)が出力されセレクト回
路はデータ線13からのデータを選択し、本回路がない
場合と同じデータがCPUへ入力される。メモリ・ライ
トの場合にはゲート25.26により、回路21.22
をバイパスして信号が送られる。次に命令フェッチの場
合には、フェッチ信号9がオン(ON)となりマツチン
グ回路21が動作をし、ROM23を用いて、チェック
を行なう。命令フェッチをしようとしたコードが、アー
キテクチャA、Bで同じ動作をする場合にはオン(ON
)、そうでない場合にはオフ(OF F)がROM23
から出力され、信号線27により命令セレクト回路22
へ入力される。回路22は信号線27からの信号により
、命令を選択する。この結果、命令フェッチをしようと
した命令がアーキテクチャA。
行しようとした場合には、プログラムの実行環境設定後
、上述の特定番地をリード(read)しイネーブル信
号11をオン(ON)にし、本回路を起動させ、タスク
へ制御を移す。タスクからフェッチ以外のメモリ・リー
ドがあると、信号9はオフ(OFF)となり、マツチン
グ回路21からはオフ(OFF)が出力されセレクト回
路はデータ線13からのデータを選択し、本回路がない
場合と同じデータがCPUへ入力される。メモリ・ライ
トの場合にはゲート25.26により、回路21.22
をバイパスして信号が送られる。次に命令フェッチの場
合には、フェッチ信号9がオン(ON)となりマツチン
グ回路21が動作をし、ROM23を用いて、チェック
を行なう。命令フェッチをしようとしたコードが、アー
キテクチャA、Bで同じ動作をする場合にはオン(ON
)、そうでない場合にはオフ(OF F)がROM23
から出力され、信号線27により命令セレクト回路22
へ入力される。回路22は信号線27からの信号により
、命令を選択する。この結果、命令フェッチをしようと
した命令がアーキテクチャA。
Bで異なった動作をする場合には、ROM23はオン(
ON)を出力するためマツチング回路21は信号線27
ヘオン(ON)を出力する。このためセレクト回路22
はROM24から割込命令を読み出しCPUへフェッチ
する。逆に同一動作の場合には、ROM23はオフ(O
FF)を出力しセレクト回路22はデータ線13のデー
タをそのままCPUヘフエツチする。
ON)を出力するためマツチング回路21は信号線27
ヘオン(ON)を出力する。このためセレクト回路22
はROM24から割込命令を読み出しCPUへフェッチ
する。逆に同一動作の場合には、ROM23はオフ(O
FF)を出力しセレクト回路22はデータ線13のデー
タをそのままCPUヘフエツチする。
この結果、A、Bで同じ動作をする命令についてはその
まま実行し、異なる動作をする命令については、CPU
自身により、割込みが発生し、制御をOSへ移す。
まま実行し、異なる動作をする命令については、CPU
自身により、割込みが発生し、制御をOSへ移す。
次に本発明のO8部の処理について第3図により説明す
る。割込みが発生するとO8は前記の回路で定めた特定
番地をライト(write)することにより回路をディ
スエーブル(disablg)にする(ステップ31)
、これによりO8自身はアーキテクチャBで実行される
ことになる。次にレジスタ類の退避(ステップ32)を
行なう。前記回路が相違命令を検出した場合にフェッチ
される割込命令のハンドリング部では、割込発生時のプ
ログラム・カウンタ(スタック退避されている)が指し
ている命令コードのチェックにより前記回路が、相違命
令を検出したか否かを判定しくステップ33)、検出時
にはステップ34のエミュレーション、そうでない場合
には(プログラムのコード自体が割込命令の場合)、そ
の命令固有の処理を行なう(ステップ35)。
る。割込みが発生するとO8は前記の回路で定めた特定
番地をライト(write)することにより回路をディ
スエーブル(disablg)にする(ステップ31)
、これによりO8自身はアーキテクチャBで実行される
ことになる。次にレジスタ類の退避(ステップ32)を
行なう。前記回路が相違命令を検出した場合にフェッチ
される割込命令のハンドリング部では、割込発生時のプ
ログラム・カウンタ(スタック退避されている)が指し
ている命令コードのチェックにより前記回路が、相違命
令を検出したか否かを判定しくステップ33)、検出時
にはステップ34のエミュレーション、そうでない場合
には(プログラムのコード自体が割込命令の場合)、そ
の命令固有の処理を行なう(ステップ35)。
ここでエミュレーションとは、アーキテクチャAの動作
をアーキテクチャBで模擬し、タスクにとって、あたか
もアーキテクチャAのプロセッサ上で動作しているかの
ような環境を設定することである。例えば、インテル社
の18086プロセツサと180286プロセツサのセ
グメント管理に関し本発明を適用する場合を考える。セ
グメントのベース・アドレスは、18086ではセグメ
ント・レジスタの値X16であるが(直接参照)、18
0286ではセグメント・レジスタが指すデスクリプタ
と呼ばれるテーブル内に値が記されている(間接参照)
。このため18086用のタスクを180286上で本
発明により実行させる場合には、セグメン1〜・レジス
タのアクセス命令ごとに割込みを発生させ、セグメン1
へ・レジスタを汎用レジスタへ移す場合には、O8では
デスクリプタからベースアドレスを求め÷16をして指
定レジスタへ移す。逆に、汎用レジスタをセグメント・
レジスタへ移す場合には、汎用レジスタの値をアドレス
として含むセグメントを探しそのセグメントを、指定セ
グメント・レジスタに指させる。
をアーキテクチャBで模擬し、タスクにとって、あたか
もアーキテクチャAのプロセッサ上で動作しているかの
ような環境を設定することである。例えば、インテル社
の18086プロセツサと180286プロセツサのセ
グメント管理に関し本発明を適用する場合を考える。セ
グメントのベース・アドレスは、18086ではセグメ
ント・レジスタの値X16であるが(直接参照)、18
0286ではセグメント・レジスタが指すデスクリプタ
と呼ばれるテーブル内に値が記されている(間接参照)
。このため18086用のタスクを180286上で本
発明により実行させる場合には、セグメン1〜・レジス
タのアクセス命令ごとに割込みを発生させ、セグメン1
へ・レジスタを汎用レジスタへ移す場合には、O8では
デスクリプタからベースアドレスを求め÷16をして指
定レジスタへ移す。逆に、汎用レジスタをセグメント・
レジスタへ移す場合には、汎用レジスタの値をアドレス
として含むセグメントを探しそのセグメントを、指定セ
グメント・レジスタに指させる。
各側込みにおける処理が終了すると、スタック等により
多重割込みか否かを判定し、多重でない場合にはスケジ
ューリング、及びタスクの実行環境を設定する。最後に
実行しようとするタスクがアーキテクチャB用か否かを
T CB (Task ControlBLock)に
より判定しくステップ36)タスクがアーキテクチャA
用に作成されている場合には、前記回路で定めた特定番
地をリード(read) シ前記回路をイネーブル(e
nabl、e)にしくステップ37)、制御をタスクに
戻す。なおTCBはプログラムをタスクとしてO8へ登
録する際に作成されるが、その際、作成されたプログラ
ムがアーキテクチャA用またはB用という識別子を設け
ておく。
多重割込みか否かを判定し、多重でない場合にはスケジ
ューリング、及びタスクの実行環境を設定する。最後に
実行しようとするタスクがアーキテクチャB用か否かを
T CB (Task ControlBLock)に
より判定しくステップ36)タスクがアーキテクチャA
用に作成されている場合には、前記回路で定めた特定番
地をリード(read) シ前記回路をイネーブル(e
nabl、e)にしくステップ37)、制御をタスクに
戻す。なおTCBはプログラムをタスクとしてO8へ登
録する際に作成されるが、その際、作成されたプログラ
ムがアーキテクチャA用またはB用という識別子を設け
ておく。
本実施例においてはCPU〕−は1回のフェッチで1命
令全体を入力してしまうとしたが、実際の180286
.68010等のプロセッサでは1命令の長さは一定で
はない。このため、これらのCPUについて本発明を適
用するためには、第2図の命令マツチ回路内に今回フェ
ッチした命令を構成するために必要な残りバイト数を示
すカウンタが必要となる。本カウンタによりフェッチし
ようとしたデータが命令のどの部分にあたるかがわかり
、命令の先頭がデータに入っている場合のみ相違命令と
のマツチングを行なうようにする。
令全体を入力してしまうとしたが、実際の180286
.68010等のプロセッサでは1命令の長さは一定で
はない。このため、これらのCPUについて本発明を適
用するためには、第2図の命令マツチ回路内に今回フェ
ッチした命令を構成するために必要な残りバイト数を示
すカウンタが必要となる。本カウンタによりフェッチし
ようとしたデータが命令のどの部分にあたるかがわかり
、命令の先頭がデータに入っている場合のみ相違命令と
のマツチングを行なうようにする。
また本実施例で相違命令検出回路13をイネーブル(e
nable)にするかディスイネーブル(d −4−s
n +)1 e )にするかは、特定番地へのリード
(reild)信号/ライト(write)信号により
ラフ1−ウェアにより制御できるようになっている。。
nable)にするかディスイネーブル(d −4−s
n +)1 e )にするかは、特定番地へのリード
(reild)信号/ライト(write)信号により
ラフ1−ウェアにより制御できるようになっている。。
本発明によれば、異なったアーキテクチャ用に作成され
たプログラムをO8管理をタスクとして実行しようとす
る際に、当該プログラムの実行時に相違命令を検出し、
割込みを発生させることができるので、O8において相
違命令をエミュレーションをすることが可能となる。ま
た本発明による回路はCPUとは独立に外付は回路にで
きるため、本発明のための機能をCPUに付加すること
なく本発明を実現できる。
たプログラムをO8管理をタスクとして実行しようとす
る際に、当該プログラムの実行時に相違命令を検出し、
割込みを発生させることができるので、O8において相
違命令をエミュレーションをすることが可能となる。ま
た本発明による回路はCPUとは独立に外付は回路にで
きるため、本発明のための機能をCPUに付加すること
なく本発明を実現できる。
第1図は本発明による全体回路図、第2図は第1゜図の
相違命令検出回路の詳細図、第3図は本発明によるO8
の制御の流れの概略を示すフロー・チャートである。 1・・・CPU、2・・・メモリ (プログラム)、3
・・・相違命令検出回路、4・・・イネーブル/ディス
エーブル制御回路、5・・・フェッチ信号検出回路、6
・・・アドレス信号、7・・・アドレス制御信号、8・
・・リード・ライト信号、9・・・フェッチ信号、」0
・・・リセット信号、11・・・イネーブル/ディスエ
ーブル信号、12.13・・・データ信号、2]・・・
相違命令マツチング回路、22・・・割込命命セレクト
回路、23・・・・・・相違命令記憶ROM、24・・
・割込命令記憶ROM、25.26・・・ゲート・スイ
ッチ、27・・・マツチン笛 2 図 第3因 埼シ1ふトΔ町1/+−イセL糟1り込31
叛 ヅ′スゲ退易存 32
””ス槻回降1; る桐込力゛? YES35■ ミ1シーツヨン 標嘩処理 搏導処理勿を制
止 イES 力・? トO 1゛−リ〉フ″ ES のクス7カ゛ 3b l” fE日
相違命令検出回路の詳細図、第3図は本発明によるO8
の制御の流れの概略を示すフロー・チャートである。 1・・・CPU、2・・・メモリ (プログラム)、3
・・・相違命令検出回路、4・・・イネーブル/ディス
エーブル制御回路、5・・・フェッチ信号検出回路、6
・・・アドレス信号、7・・・アドレス制御信号、8・
・・リード・ライト信号、9・・・フェッチ信号、」0
・・・リセット信号、11・・・イネーブル/ディスエ
ーブル信号、12.13・・・データ信号、2]・・・
相違命令マツチング回路、22・・・割込命命セレクト
回路、23・・・・・・相違命令記憶ROM、24・・
・割込命令記憶ROM、25.26・・・ゲート・スイ
ッチ、27・・・マツチン笛 2 図 第3因 埼シ1ふトΔ町1/+−イセL糟1り込31
叛 ヅ′スゲ退易存 32
””ス槻回降1; る桐込力゛? YES35■ ミ1シーツヨン 標嘩処理 搏導処理勿を制
止 イES 力・? トO 1゛−リ〉フ″ ES のクス7カ゛ 3b l” fE日
Claims (1)
- 1、処理装置を有する計算機システムにおいて、上記処
理装置からの命令フェッチ信号を受信し、フェッチしよ
うとした命令が登録された命令と一致した場合には上記
処理装置の割込命令をフェッチする回路を設け、異アー
キテクチャ用のソフトウェアを相違命令を検出しながら
実行し、相違命令検出時には、オペレーティングシステ
ムにおいて、エミュレートすることを特徴とする異アー
キテクチャ・エミュレーション方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25169686A JPS63106836A (ja) | 1986-10-24 | 1986-10-24 | 異ア−キテクチヤ・エミユレ−シヨン方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25169686A JPS63106836A (ja) | 1986-10-24 | 1986-10-24 | 異ア−キテクチヤ・エミユレ−シヨン方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63106836A true JPS63106836A (ja) | 1988-05-11 |
Family
ID=17226646
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25169686A Pending JPS63106836A (ja) | 1986-10-24 | 1986-10-24 | 異ア−キテクチヤ・エミユレ−シヨン方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63106836A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758140A (en) * | 1996-01-25 | 1998-05-26 | International Business Machines Corporation | Method and system for emulating instructions by performing an operation directly using special-purpose register contents |
KR100317770B1 (ko) * | 1997-09-22 | 2002-02-19 | 포만 제프리 엘 | 데이터처리시스템의에뮬레이션모드를위한어드레스변환버퍼 |
JP2004272922A (ja) * | 2003-03-06 | 2004-09-30 | Northrop Grumman Corp | エミュレーションコンピュータ技術を実行する直接命令 |
JP2011134315A (ja) * | 2009-12-23 | 2011-07-07 | Intel Corp | 部分的なエミュレーション環境におけるソース命令セットアーキテクチャ(isa)コードから、変換済みコードへの遷移 |
US9891936B2 (en) | 2013-09-27 | 2018-02-13 | Intel Corporation | Method and apparatus for page-level monitoring |
US10621092B2 (en) | 2008-11-24 | 2020-04-14 | Intel Corporation | Merging level cache and data cache units having indicator bits related to speculative execution |
US10649746B2 (en) | 2011-09-30 | 2020-05-12 | Intel Corporation | Instruction and logic to perform dynamic binary translation |
US10725755B2 (en) | 2008-11-24 | 2020-07-28 | Intel Corporation | Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads |
-
1986
- 1986-10-24 JP JP25169686A patent/JPS63106836A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5758140A (en) * | 1996-01-25 | 1998-05-26 | International Business Machines Corporation | Method and system for emulating instructions by performing an operation directly using special-purpose register contents |
KR100317770B1 (ko) * | 1997-09-22 | 2002-02-19 | 포만 제프리 엘 | 데이터처리시스템의에뮬레이션모드를위한어드레스변환버퍼 |
JP2004272922A (ja) * | 2003-03-06 | 2004-09-30 | Northrop Grumman Corp | エミュレーションコンピュータ技術を実行する直接命令 |
JP4684571B2 (ja) * | 2003-03-06 | 2011-05-18 | ノースロップ グラマン コーポレイション | エミュレーションコンピュータ技術を実行する直接命令 |
US10621092B2 (en) | 2008-11-24 | 2020-04-14 | Intel Corporation | Merging level cache and data cache units having indicator bits related to speculative execution |
US10725755B2 (en) | 2008-11-24 | 2020-07-28 | Intel Corporation | Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads |
JP2011134315A (ja) * | 2009-12-23 | 2011-07-07 | Intel Corp | 部分的なエミュレーション環境におけるソース命令セットアーキテクチャ(isa)コードから、変換済みコードへの遷移 |
US10649746B2 (en) | 2011-09-30 | 2020-05-12 | Intel Corporation | Instruction and logic to perform dynamic binary translation |
US9891936B2 (en) | 2013-09-27 | 2018-02-13 | Intel Corporation | Method and apparatus for page-level monitoring |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4924382A (en) | Debugging microprocessor capable of switching between emulation and monitor without accessing stack area | |
US20040123288A1 (en) | Methods and systems to manage machine state in virtual machine operations | |
KR101249693B1 (ko) | 서브루틴 복귀 메카니즘 선택 | |
KR960011613A (ko) | 데이터 처리장치 | |
JPH045216B2 (ja) | ||
JP3707581B2 (ja) | 自己整合スタック・ポインタを有するデータ処理システムおよびその方法 | |
JPS63106836A (ja) | 異ア−キテクチヤ・エミユレ−シヨン方式 | |
WO1982001429A1 (en) | Stack for a data processor | |
US5003468A (en) | Guest machine execution control system for virutal machine system | |
JPS593642A (ja) | 制御レジスタ処理方式 | |
JP4465081B2 (ja) | Vliwプロセッサにおける効率的なサブ命令エミュレーション | |
US8732721B2 (en) | Method for reducing trap overhead when executing a guest in a virtual machine | |
US4511983A (en) | Apparatus for controlling microinstructions stored in a data processing unit memory | |
JPS62197831A (ja) | デ−タ処理装置 | |
JPH0552535B2 (ja) | ||
JPH04268928A (ja) | エミュレーション装置及び半導体装置 | |
JP2731618B2 (ja) | エミュレータ | |
JPH0667896A (ja) | シングルチップマイクロコンピュータ | |
JP2654105B2 (ja) | マイクロプロセッサ | |
JPH03208132A (ja) | シングルチツプマイクロコンピユータ | |
JPH05250161A (ja) | マイクロコンピュータ装置 | |
JPS62151936A (ja) | マイクロプロセツサに内蔵されるキヤツシユ回路 | |
JPH1139159A (ja) | 計算機システム | |
JPS6393045A (ja) | マイクロプログラム制御装置 | |
JPS60193046A (ja) | 命令例外検出方式 |