JPH0564375B2 - - Google Patents

Info

Publication number
JPH0564375B2
JPH0564375B2 JP60214060A JP21406085A JPH0564375B2 JP H0564375 B2 JPH0564375 B2 JP H0564375B2 JP 60214060 A JP60214060 A JP 60214060A JP 21406085 A JP21406085 A JP 21406085A JP H0564375 B2 JPH0564375 B2 JP H0564375B2
Authority
JP
Japan
Prior art keywords
instruction
mode
processor
emulation
address
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
Application number
JP60214060A
Other languages
English (en)
Other versions
JPS6273333A (ja
Inventor
Junichi Iwasaki
Takashi Nakayama
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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP21406085A priority Critical patent/JPS6273333A/ja
Publication of JPS6273333A publication Critical patent/JPS6273333A/ja
Publication of JPH0564375B2 publication Critical patent/JPH0564375B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はコンピユータのプロセツサに関し、特
に複数の命令セツトをエミユレートできるプロセ
ツサのエミユレーシヨン制御装置に関する。
〔概要〕
本発明は、異なる命令セツトを持つ複数のプロ
セツサの動作をエミユレートするプロセツサ装置
のエミユレーシヨン制御装置において、 プロセツサのアクセスする主メモリのアドレス
空間に命令セツト個々の属性を付したアドレス区
間を設け、上記属性によつてプロセツサが実行す
るべき命令が存在するアドレス空間を選択し命令
セツトを選択することにより、 プロセツサ・モードを新設することなく、異な
る命令セツトで書かれた既存のプログラムを容易
に結合できるようにしたものである。
〔従来の技術〕
近年のLSI技術の進歩により、次々と新しいマ
イクロプロセツサが発表されているが、命令セツ
トが同一のまま高性能化された例は少ない。多く
のマイクロプロセツサは過去のマイクロプロセツ
サの命令セツトとは全く異なる命令セツトや上位
互換性を持つ命令セツトを持つ。既存のソフトウ
エアを有効利用するためには、上位互換性のある
命令セツトは効果的であるが、過去のマイクロプ
ロセツサのアーキテクチヤの制限があるため、大
幅な性能向上は望めない。しかし、命令セツトの
互換性のない新しいマイクロプロセツサを開発す
ると既存のソフトウエアを新しいマイクロプロセ
ツサ用に再開発しなければならず、再開発のため
の時間、費用およびバグの発生による保守の問題
が生じる。
そこで、従来、過去のソフトウエアを最大限に
利用する方法として、エミユレーシヨンが用いら
れている。エミユレーシヨンとは、ひとつのプロ
セツサのハードウエア資源を用いて、複数種類の
命令セツトを実行させることである。エミユレー
シヨンを用いることにより、新しいアーキテクチ
ヤおよび命令セツトを持つマイクロプロセツサで
ありながら、過去のマイクロプロセツサ用のプロ
グラムを実行することができる。エミユレーシヨ
ンをマイクロプロセツサ上で実現した従来例とし
てμPD70116(μPD7018/70116 ユーザーズ・マ
ニユアル 日本電気(株)1984年10月12日発行)があ
る。
μPD70116は16ビツト・マイクロプロセツサの
命令セツトを実行するネイテイブ・モードと、8
ビツト・マイクロプロセツサの命令セツトを実行
するエミユレーシヨン・モードとの2つのモード
を有する。
第6図はかかる従来例のマイクロプロセツサの
要部を示すブロツク構成図である。マイクロプロ
セツサ200は、マイクロプロセツサ200の状
態を保持する複数のフラグの集合であるプログラ
ム・ステータス・ワード・レジスタ(PSW)2
04、プログラム・ステータス・ワード・レジス
タ204内にあつてマイクロプロセツサ200が
ネイテイブ・モードで動作しているかエミユレー
シヨン・モードで動作しているか(この区別をプ
ロセツサ・モードという。)を示すモード・フラ
グ(MF)205、外部メモリ203からバス2
02を通して読み出した命令を解釈する命令デコ
ーダ208、命令デコーダ208から得られた制
御信号209をもとにマイクロプロセツサ200
内の制御を行う制御回路210、制御回路210
によつて制御を受けるレジスタや演算論理回路
(ALU)を含むデータ処理回路207を含んでい
る。
モード・フラグ205の内容が「1」ならば、
マイクロプロセツサ201のプロセツサ・モード
はネイテイブ・モードであり、「0」ならばエミ
ユレーシヨン・モードである。モード・フラグ2
05の内容を示すプロセツサ・モード信号206
によつて、命令デコーダ208および制御回路2
10の2通りの動作を行う。
第7図に、マイクロプロセツサ200のプロセ
ツサ・モード遷移の様子を示す。システムのリセ
ツト303時と割込み304発生時は、プロセツ
サ・モードはネイテイブ・モード301である。
ネイテイブ・モード301とエミユレーシヨン・
モード302との間のプロセツサ・モード切換え
は、次の2種類の命令を実行することにより行わ
れる。
(ア) プロセツサ・モード変更命令 プロセツサ・モード変更命令は、ネイテイ
ブ・モードの命令セツト中のBRKEM(ブレー
ク・フオア・エミユレーシヨン)命令305と
エミユレーシヨン・モードの命令セツト中の
CALLN(コール・ネイテイブ・プロシージヤ)
命令306であり、各々エミユレーシヨン・モ
ードおよびネイテイブ・モードの命令セツトが
書かれたサブルーチンを呼び出すための命令で
ある。プロセツサ・モード変更命令が命令デコ
ーダ208で解釈されると、制御回路210の
制御によつて第8図に示すように以下の動作が
行われる。
(i) ステツプ1 これから遷移するモードから現在のモード
に復帰した際に次の命令から実行を再開する
ために、現在のプログラム・ステータス・ワ
ード・レジスタ204の内容psw、プログラ
ム・カウンタ211の内容mを、外部メモリ
203のスタツク領域に退避する。
(ii) ステツプ2 外部メモリ203のデコーダ領域からエミ
ユレーシヨン開始アドレスnを読み出し、プ
ログラム・カウンタ211に設定する。
(iii) ステツプ3 プログラム・ステータス・ワード・レジス
タ204内のモードフラグ205を、
BRKEM命令305なら「0」に、CALLN
命令306なら「1」に設定する。以上の動
作の結果、プログラムの実行をn番地に移
し、プロセツサ・モードが変更される。
(イ) プロセツサ・モード復帰命令 プロセツサ・モード復帰命令は、エミユレー
シヨン・モードの命令セツト中のRETEM(リ
ターン・フロム・エミユレシヨン)命令307
とネイテイブ・モードの命令セツト中のRETI
(リターン・フロム・インタラプト)命令30
8であり、各々BRKRM命令305および
CALLN命令306で呼び出されたサブルーチ
ンから復帰するための命令である。プロセツ
サ・モード復帰命令から命令デコーダ208で
解釈されると、制御回路210の制御によつて
第9図に示すように以下の動作が行われる。
(i) 外部メモリ203のスタツク領域から、プ
ロセツサ・モード変更命令によつて退避して
おいた、モード遷移前のプログラム・ステー
タス・ワード・レジスタ204の内容pswお
よびプログラム・カウンタ211の内容mを
それぞれプログラム・ステータス・ワード・
レジスタ204およびプログラム・カウンタ
211に復帰させる。
(ii) プログラム・ステータス・ワード・レジス
タ204内のモード・フラグ205の内容が
モード遷移前の状態となつたことにより、プ
ロセツサ・モードが変化する。
以上の動作の結果、m番地(プロセツサ・モー
ド変更命令の次の命令)からプログラム実行が再
開される。
〔発明が解決しようとする問題点〕
上述した従来のエミユレーシヨン制御方式には
次る述べる二つの欠点がある。
(i) モード・フラグ205がプログラム・ステー
タス・ワード・レジスタ204内にあるため、
プログラム・ステータス・ワード・レジスタ2
04を適当に扱う命令がない場合は、エミユレ
ーシヨンを実現するために命令セツトにプロセ
ツサ・モード変更/復帰命令を追加しなければ
ならない。従来例ではネイテイブ・モードの
BRKEM命令およびエミユレーシヨン・モー
ドのCALLN命令、RETEM命令がそれぞれ元
来の16ビツト・マイクロプロセツサおよび8ビ
ツト・マイクロプロセツサの命令セツトに追加
されている。16ビツト・マイクロプロセツサ用
および8ビツト・マイクロプロセツサ用に作成
されたプログラムを組合せて新たにプログラム
を作成する場合、プログラム中にプロセツサ・
モード変更/復帰命令を埋込まなければならな
いが、これは既存のプログラムに修正を加える
ことであり、プログラム・ミスの原因となる。
(ii) モード・フラグ205がプログラム・ステー
タス・ワード・レジスタ204内に設けられて
いるため、ユーザーが誤つてプログラム・ステ
ータス・ワード・レジスタを操作し、意に反し
たプロセツサ・モード切換えを行つてしまうお
それがある。従来例では、μPD70116のモー
ド・フラグは16ビツト・マイクロプロセツサで
は未定義である。16ビツト・マイクロプロセツ
サ用に作成されたプログラムは、モード・フラ
グについてなんら配慮していないため・プログ
ラム・ステータス・ワード・レジスタの変更を
伴う命令を実行により意図していないプロセツ
サ・モード切換えが起きプロセツサが暴走して
しまう恐れがある。
本発明の目的は、上記の欠点を除去することに
より、プロセツサ・モードを切換える命令を新設
することなく、異なる命令セツトで書かれた既存
のプログラムを容易に結合することのできるエミ
ユレーシヨン制御装置を提供することにある。
〔問題点を解決するための手段〕
第一の発明は、異なる命令セツトを持つ複数の
プロセツサの動作をエミユレートするプロセツサ
装置のエミユレーシヨン制御装置において、 主記憶が各々のエミユレートすべきプロセツサ
用の領域に分割され、この領域の境界を示すレジ
スタと、前記レジスタの内容と前記プロセツサ装
置の命令アドレスとを比較する比較器と、前記比
較器の出力から命令アドレスが前記領域のいずれ
に含まれるかを判定する手段と、実行すべき命令
を前記判定する手段の判定結果に基づいて解釈す
る命令デコーダ手段とを含むことを特徴とする。
第二の発明は、主記憶が各々のエミユレートす
べきプロセツサ用の領域に分割され、アドレス変
換用のアドレスレジスタに付加したモードフラグ
の値によつて命令アドレスが前記領域のいずれに
含まれるかを判定する手段と、実行すべき命令を
前記判定する手段の判定結果に基づいて解釈する
命令デコーダ手段とを含むことを特徴とする。
〔作用〕
本発明は、プロセツサアドレス空間を、例えば
エミユレーシヨン・モード用およびネイテイブ・
モード用のそれぞれの属性を付したアドレス空間
に分割し、プロセツサの命令を実行するときに
は、上記属性により、プロセツサが実行すべき命
令がエミユレーシヨン・モード用のアドレス空間
に含まれているか、ネイテイブ・モード用のアド
レス空間に含まれているかを選択して、命令セツ
トを実行するように制御されるので、従来のよう
に新たにプロセツサ・モード変更/復帰命令を必
要とすることなく、異なる命令セツトで書かれた
既存のプログラムを結合できる。
〔実施例〕
本発明のエミユレーシヨン制御装置は、エミユ
レートする命令セツトが主メモリをどのようにア
クセスするかによつて異なる。以下、それぞれの
場合についての実施例を図面を参照して説明す
る。
第1図は本発明の第一実施例によるマイクロプ
ロセツサの要部を示すブロツク構成図である。本
実施例は第6図に示した従来例と同じ、16ビツ
ト・マイクロプロセツサおよび8ビツト・マイク
ロプロセツサをエミユレートするマイクロプロセ
ツサである。そして、本実施例は、8ビツト・マ
イクロプロセツサは1バイト単位で216バイトが
アドレス可能な主メモリを、ほぼ全ての命令で
216バイトをアクセス可能のものである(以下、
このアクセス方式のものをリニア方式という。)。
第1図において、マイクロプロセツサ100は
命令のプリフエツチおよび外部バス101に対す
るバスサイクルの駆動を行うバス・インターフエ
ース・ユニツト110と、データ処理の実行を行
う実行ユニツト150とを含んでいる。さらに、
バス・インタフエース・ユニツト110はバスコ
ントロール部111、バス修飾回路(ADM)1
16およびエミユレーシヨン制御手段130とを
含んでいる。
第1図において、バス・コントロール部111
は外部バス101を制御する回路、メイン・デー
タ・バス112はバス・コントロール部111お
よびバス・インタフエース・ユニツト110、実
行ユニツト150内の各種レジスタの間でデータ
を転送するバス、セグメント・レジスタ113は
216バイトのセグメントの開始アドレスを16バイ
ト単位で指定するレジスタ、プログラム・セグメ
ント・レジスタ(PS)114はマイクロプロセ
ツサ100がプリフエツチする命令のセグメント
を指定するセグメント・レジスタ、プリフエツ
チ・ポインタ(PFP)115はプログラム・セ
グメント・レジスタ114で示されるセグメント
内のオフセツト値でマイクロプロセツサ100が
プリフエツチする命令のアドレスを示すレジス
タ、アドレス修飾回路(ADM)116は、プリ
フエツチ・ポインタ115のインクリメントおよ
びプログラム・セグメント・レジスタ114の16
倍の値とプリフエツチ・ポインタ115の値との
加算を行う加算器、物理アドレス・バス117は
アドレス修飾回路116の出力をバス・コントロ
ール部111、プリフエツチ・ポインタ115お
よび比較器122,123に伝えるバス、プリフ
エツチ・キユー118は主メモリからバス・コン
トロール部111を介してプリフエツチした命令
を命令バス19により蓄えるFIFO(フアースト−
イン、フアースト−アウト)型バツフアである。
エミユレーシヨン上限ポインタ(EUP)120
およびエミユレーシヨン下限ポインタ(ELP)
121は、エミユレーシヨン・モードを属性とす
るアドレス空間の上限と下限を示すレジスタ、比
較器122および123は、エミユレーシヨン上
限ポインタ120およびエミユレーシヨン下限ポ
インタ121の値と命令プリフエツチの際の物理
アドレス・バス117からのアドレス値の大小を
判定する比較器、アンドゲート124は比較器1
22および123の大小判定出力の理論積を作る
ゲート、プロセツサ・モード・キユー125はプ
リフエツチ・キユー118の一部であり、命令ア
ドレスの属性を示すアンドゲート124の出力を
蓄積するFIFO型バツフアである。データ処理回
路151は命令に示された演算処理を行う回路、
キユー・データ・バス152はプリフエツチ・キ
ユー118が出力する命令が転送されるバス、プ
ロセツサモード信号153は、プロセツサ・モー
ド・キユー125から出力されキユー・データ・
バス152に出力される命令の属性を示す信号、
命令デコーダ154はキユー・データ・バス15
2からの命令とプロセツサ・モード信号153を
デコードしてデータ処理回路151を制御するデ
コーダ、シーケンサ155はキユー・データ・バ
ス152が示す命令とプロセツサ・モード信号1
53とから制御メモリ156とともにデータ処理
回路151を順序制御するシーケンサである。
本発明の特徴は、第1図において、アドレス修
飾回路116、エミユレーシヨン制御手段13
0、命令デコーダ154、シーケンサ155およ
び制御メモリ156を設けたことにある。
次に本実施例の動作について説明する。マイク
ロプロセツサ100での命令実行は、バス・イン
タフエース・ユニツト110による命令のプリフ
エツチと、実行ユニツト150による命令のデコ
ードおよび実行の2段のパイプライン処理となつ
ている。本実施例においてはバス・インタフエー
ス・ユニツト110において、プリフエツチする
命令の物理アドレスの属性を調べ、プロセツサ・
モード信号153として、キユー・データ・バス
152を通してのプリフエツチした命令とともに
実行ユニツト150に伝える。
命令の物理アドレスは、プログラム・セグメン
ト・レジスタ114の16倍の値にプリフエツチ・
ポインタ115の値を加算器116で加算するこ
とで、信号117に出力される。信号117の物
理アドレスは外部バス101に出力され、プログ
ラム・メモリを読み出し、命令バス119を経由
してプリフエツチ・キユー118に命令コードを
入力する。それと同時に、命令の物理アドレス
(信号117)は、比較器122,123によつ
てエミユレーシヨン上限ポインタ120とエミユ
レーシヨン下限ポインタ121と比較される。ゲ
ート124で論理積をとることによつて、物理ア
ドレス(信号117)がエミユレーシヨン上限ポ
インタ120とエミユレーシヨン下限ポインタ1
21との中間値であれば論理「1」を、そうでな
ければ「0」をモード・キユー125に入力す
る。ゲート124の出力は、命令セツトを選択す
る信号となる。モード「0」はプロセツサがネイ
テイブ・モード(第1の命令セツト)であること
を、モード「1」はプロセツサがエミユレーシヨ
ン・モード(第2の命令セツト)であることを示
す。このようにして、命令コードとそのモードが
ペアで、プリフエツチ・キユー118、プロセツ
サ・モード・キユー125からはFIFO方式で、
命令コード152とモード信号153が出力され
る。
命令コード152の意味は、モード信号153
の値が「0」か「1」かで異なる。命令コードの
意味が命令セツトによつて異なり、データ処理回
路151での処理も異なるからである。したがつ
て、命令デコーダ154は、モード信号163と
命令コード152の両方をデコードして、データ
処理回路151を制御する。シーケンサ155に
ついても同様である。
第2図にマイクロプロセツサ100のアドレス
空間を示す。アドレス603および604は、エ
ミユレーシヨン上限ポインタ120およびエミユ
レーシヨン下限ポインタ121が示すアドレスで
ある。アドレス603と604の間のアドレス空
間605(斜線部)は、エミユレーシヨン・モー
ドの属性を持ち、アドレス空間605以外のアド
レス空間はネイテイブ・モードの属性を持つ。エ
ミユレーシヨン・モードでのプログラム実行時の
216バイトのアドレス空間がアドレス空間602
となるようにプログラム・セグメント・レジスタ
114を定めると、マイクロプロセツサ100が
ネイテイブ・モード、エミユレーシヨン・モード
のいずれで実行中であつても、異なるプロセツ
サ・モードの属性を持つアドレスへ制御を移すこ
とができる。制御を移す方法はブランチ命令やサ
ブルーチンコール/リターン命令などを用いる。
第3図aに、ネイテイブ・モードの命令セツト
で書かれたメイン・ルーチンから、エミユレーシ
ヨン・モードの命令セツトで書かれたサブ・ルー
チンを呼出した例を示し、第3図bにその逆の例
を示す。プログラム,,,,711,7
12,713,714は、それぞれ第2図のアド
レス空間,,,,611,612,61
3,614に存在する。ネイテイブ・モードとエ
ミユレーシヨン・モードでは、サブルーチン・コ
ール(CALL)命令およびリターン(RET)命
令で用いるスタツク領域およびスタツクに格納す
るデータが異なるため、サブルーチン・コールを
二重に行う。CALL命令720,731および
RET命令724,732はネイテイブ・モード
の命令セツトのサプルーチン・コール命令および
リターン命令、CALL命令721,730および
RET命令722,734はエミユレーシヨン・
モードの命令セツトのサブルーチン・コール命令
およびリターン命令、JP命令723およびBR命
令733はそれぞれエミユレーシヨン・モードお
よびネイテイブ・モードでのブランチ命令であ
る。
以上述べたように、本実施例によると、プロセ
ツサ・モードの切換えが特別な命令を新設せずに
行え、異なる命令セツトで書かれた既存のサブル
ーチンおよびメインルーチンを改造することなく
組合わせることができる。
第4図は本発明の第二実施例によるマイクロプ
ロセツサの要部を示すブロツク構成図で、エミユ
レーシヨン制御手段を示す。本実施例では、エミ
ユレートする二つのプロセツサの主メモリをアク
セスする方式が、双方ともにセグメント方式であ
るマイクロプロセツサである。ここでセグメント
方式とは、16ビツト・マイクロプロセツサは220
バイトの主メモリを1バイト単位でアクセス可能
であるが多くの命令では216バイトのセグメント
の中だけにアクセスが限定されるアクセス方式を
いう。
本実施例は、第1図におけるエミユレーシヨン
制御手段130を、第4図に示すエミユレーシヨ
ン制御手段130aで置き換えたマイクロプロセ
ツサである。第4図において、セグメント・レジ
スタ113aはプログラム・セグメントのベース
アドレスとして動作する。そしてプログラム・セ
グメント・レジスタ0(PS0)141とプログラ
ム・セグメント・レジスタ1(PS1)142とは、
それぞれモード・フラグ0(MF0)143、モー
ド・フラグ1(MF1)144とが付加される。そ
してプロセツサ・モード信号145がプロセツ
サ・モード・キユー125に送出される。
次に、本実施例の動作について説明する。エミ
ユレートする命令セツトは双方共に第5図に類似
するセグメント・テーブルを主メモリ上に持つて
いる。セグメント・テーブル801は、セグメン
トのベース・アドレス802、セグメント・サイ
ズ803およびいずれの命令セツトを実行するか
を示すプロセツサのモード・フラグ(MF)80
4を含んでいる。マイクロプロセツサが主メモリ
をアクセスするための複数のセグメントの内、命
令をフエツチするためのセグメントをプログラ
ム・セグメントという。モード・フラグ804の
内容はセグメント・テーブル801がプログラ
ム・セグメントとして使用されるとき有効とな
る。セグメント・テーブル801からセグメント
のベース・アドレス802がセグメント・レジス
タ113aへ転送される際、同時にモード・フラ
グ804がモード・フラグ143または144に
転送される。
セグメント・レジスタ113aの内の1個がプ
ログラム・セグメントのベース・アドレスとして
命令をプリフエツチに使用されるとき、そのセグ
メント・レジスタに付加されたモード・フラグの
内容が、プロセツサ・モード信号145に出力さ
れ、プロセツサ・モード・キユー125に入力さ
れる。プログラム・セグメント・レジスタ
(PS0)141に対応するモード・フラグ(MF0)
143の内容が命令セツトAを示し、プログラ
ム・セグメント・レジスタ(PS1)142に対応
するモード・フラグ(MF1)の内容が命令セツ
トBを示している場合、プログラム・セグメン
ト・レジスタ141のセグメント命令セツトAを
実行していたマイクロプロセツサがプログラム・
セグメント・レジスタをプログラム・セグメン
ト・レジスタ142に切り換える命令を実行する
と、マイクロプロセツサは次の命令から命令セツ
トBを実行し始める。
以上のように、プログラム・セグメントを切り
換えることにより、セグメントに属性として付加
されたモード・フラグに従つて命令セツトを選択
する。
〔発明の効果〕
以上説明したように本発明は、プロセツサのア
ドレス空間に命令セツトの個々の属性を付したア
ドレス空間を設け、個々のアドレス空間に付けら
れた属性によつてエミユレートする命令セツトを
決定することにより、プロセツサ・モードを切り
換える命令を新設することなく、異なる命令セツ
トで書かれた既存のプログラムを容易に結合でき
るエミユレーシヨンが実現できる効果がある。
【図面の簡単な説明】
第1図は本発明の第一実施例によるマイクロプ
ロセツサの要部を示すブロツ構成図。第2図は第
一実施例のアドレス空間を示す説明図。第3図
a,bは第一実施例におけるプロセツサ・モード
切り換えの説明図。第4図は本発明の第二実施例
によるマイクロプロセツサの要部を示すブロツク
構成図。第5図は第二実施例のアドレス空間を示
す説明図。第6図は従来例によるマイクロプロセ
ツサの要部を示すブロツク構成図。第7図は従来
例のプロセツサ・モード変更/復帰命令に関する
状態遷移図。第8図は従来例のプロセツサ・モー
ド変更命令の動作を示す説明図。第9図は従来例
のプロセツサ・モード復帰命令の動作を示す説明
図。 100,200……マイクロプロセツサ、10
1……外部バス、110……バス・インターフエ
ース・ユニツト、111……バス・コントロール
部、112……メイン・データ・バス、113,
113a……セグメント・レジスタ、114,1
41,142……プログラム・セグメント・レジ
スタ(PS)、115……プリフエツチ・ポインタ
(PFP)、116……アドレス修飾回路(ADM)、
117……物理アドレス・バス、118……プリ
フエツチ・キユー、119……命令バス、120
……エミユレーシヨン上限ポインタ(EUP)、1
21……エミユレーシヨン下限ポイタ(ELP)、
122,123……比較器、124……アンドゲ
ート、125……プロセツサ・モード・キユー、
130,130a……エミユレーシヨン制御手
段、143,144,205,804……モー
ド・フラグ、145,153……プロセツサ・モ
ード信号、150……実行ユニツト、151……
データ処理回路、152……キユー・データ・バ
ス、154……命令デコーダ、155……シーケ
ンサ、156……制御メモリ、202……バス、
203……外部メモリ、204……プログラム・
ステータス・ワード・レジスタ(PSW)、206
……プロセツサ・モード信号、207……データ
処理回路、208……命令デコーダ、209……
制御信号、210……制御回路、211……プロ
グラム・カウンタ、301……ネイテイブモー
ド、302……エミユレーシヨン・モード、30
3……リセツト、304……割込み、305……
BRKEM命令、306……CALLN命令、307
……RETEM命令、308……RET命令、60
1,602,605,611〜614……アドレ
ス空間、603,604……アドレス、711〜
714……プログラム、720,721,73
0,731……CALL命令、722,724,7
32,734……RET命令、723,733…
…BR命令、801……セグメント・テーブル、
802……ベース・アドレス、803……セグメ
ント・サイズ。

Claims (1)

  1. 【特許請求の範囲】 1 異なる命令セツトを持つ複数のプロセツサの
    動作をエミユレートするプロセツサ装置のエミユ
    レーシヨン制御装置において、 主記憶が各々のエミユレートすべきプロセツサ
    用の領域に分割され、 この領域の境界を示すレジスタと、 前記レジスタの内容と前記プロセツサ装置の命
    令アドレスとを比較する比較器と、 前記比較器の出力から実行すべき命令のアドレ
    スが前記領域のいずれに含まれるかを判定する手
    段と、 実行すべき命令を前記判定する手段の判定結果
    に基づいて解釈する命令デコーダ手段と を含むことを特徴とするエミユレーシヨン制御
    装置。 2 異なる命令セツトを持つ複数のプロセツサの
    動作をエミユレートするプロセツサ装置のエミユ
    レーシヨン制御装置において、 主記憶が各々のエミユレートすべきプロセツサ
    用の領域に分割され、 アドレス変換用のアドレスレジスタに付加した
    モードフラグの値によつて実行すべき命令のアド
    レスが前記領域のいずれに含まれるかを判定する
    手段と、 実行すべき命令を前記判定する手段の判定結果
    に基づいて解釈する命令デコーダ手段と を含むことを特徴とするエミユレーシヨン制御装
    置。
JP21406085A 1985-09-26 1985-09-26 エミュレーション制御装置 Granted JPS6273333A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP21406085A JPS6273333A (ja) 1985-09-26 1985-09-26 エミュレーション制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP21406085A JPS6273333A (ja) 1985-09-26 1985-09-26 エミュレーション制御装置

Publications (2)

Publication Number Publication Date
JPS6273333A JPS6273333A (ja) 1987-04-04
JPH0564375B2 true JPH0564375B2 (ja) 1993-09-14

Family

ID=16649593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP21406085A Granted JPS6273333A (ja) 1985-09-26 1985-09-26 エミュレーション制御装置

Country Status (1)

Country Link
JP (1) JPS6273333A (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2082066C (en) * 1991-03-07 1998-04-21 James A. Wooldridge Software debugging system and method especially adapted for code debugging within a multi-architecture environment
US5652869A (en) * 1991-03-07 1997-07-29 Digital Equipment Corporation System for executing and debugging multiple codes in a multi-architecture environment using jacketing means for jacketing the cross-domain calls
JPH0895783A (ja) * 1994-09-20 1996-04-12 Nec Corp 可変語長型マイクロコンピュータ
EP2275930B1 (en) * 1999-01-28 2017-06-14 Advanced Silicon Technologies, LLC Executing programs for a first computer architecture on a computer of a second architecture
US7802252B2 (en) * 2007-01-09 2010-09-21 International Business Machines Corporation Method and apparatus for selecting the architecture level to which a processor appears to conform
US7836285B2 (en) * 2007-08-08 2010-11-16 Analog Devices, Inc. Implementation of variable length instruction encoding using alias addressing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5458324A (en) * 1977-10-19 1979-05-11 Hitachi Ltd Information processor
JPS5674749A (en) * 1979-11-26 1981-06-20 Nec Corp Microprogram controlling device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5458324A (en) * 1977-10-19 1979-05-11 Hitachi Ltd Information processor
JPS5674749A (en) * 1979-11-26 1981-06-20 Nec Corp Microprogram controlling device

Also Published As

Publication number Publication date
JPS6273333A (ja) 1987-04-04

Similar Documents

Publication Publication Date Title
US7793286B2 (en) Methods and systems to manage machine state in virtual machine operations
EP0671685B1 (en) Method and apparatus for detecting and executing cross-domain calls in a computer system
JP2834837B2 (ja) プログラマブルコントローラ
CA1260150A (en) Prefetch monitor
JPH05250183A (ja) マイクロプロセッサ装置及びcpu割込方法
JPS61206043A (ja) 仮想計算機システムにおける割込制御方法
JPH0333937A (ja) 仮想計算機における表示制御方式
JP2002116908A (ja) ネイティブおよび非ネイティブの命令集合間相互呼び出し
US4750110A (en) Method and apparatus for executing an instruction contingent upon a condition present in another data processor
US5021991A (en) Coprocessor instruction format
KR20000074425A (ko) 어드레스 확장이 가능한 데이터 처리 시스템
US4821231A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
US4758950A (en) Method and apparatus for selectively delaying an interrupt of a coprocessor
EP0123337A2 (en) A method and apparatus for coordinating execution of an instruction by a coprocessor
JPH0564375B2 (ja)
US4994961A (en) Coprocessor instruction format
US4758978A (en) Method and apparatus for selectively evaluating an effective address for a coprocessor
JPH05233325A (ja) マイクロプロセッサ装置及び割込みと自動化入出力トラップ再始動を行う方法
JPH0384632A (ja) データ処理装置
JPH04227547A (ja) 情報処理装置
JP2504191B2 (ja) マイクロプロセッサ
JPH0754468B2 (ja) 仮想計算機システム
JPH0754469B2 (ja) 仮想計算機システムのための入出力命令実行装置
JPH03175539A (ja) デバッグ用マイクロプロセッサ
JPS61251936A (ja) 仮想計算機システム

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees