JPH03168836A - エミュレーションプロセッサ - Google Patents

エミュレーションプロセッサ

Info

Publication number
JPH03168836A
JPH03168836A JP30745789A JP30745789A JPH03168836A JP H03168836 A JPH03168836 A JP H03168836A JP 30745789 A JP30745789 A JP 30745789A JP 30745789 A JP30745789 A JP 30745789A JP H03168836 A JPH03168836 A JP H03168836A
Authority
JP
Japan
Prior art keywords
instruction
target instruction
target
operation flag
processing
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
Application number
JP30745789A
Other languages
English (en)
Inventor
Mitsumasa Okamoto
光正 岡本
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP30745789A priority Critical patent/JPH03168836A/ja
Publication of JPH03168836A publication Critical patent/JPH03168836A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [発明の目的] ・(産業上の利用分野) この発明は、プロセッサ固有の命令(ネイティブ命令)
の他に異種のプロセッサの命令(夕一ゲット命令)をも
処理するエミュレーションプロセッサに関する。
(従来の技術) 従来のエミュレーションブロセッでは、夕一ゲット命令
に対応してその動作を模擬するためのネイティブ命令の
命令例を発生させ逐次個々のターゲット命令が要求され
る毎にそれに対する命令例を発生させ処理していた。こ
のネイティブ命令の命令列にはターゲット命令によるデ
ータの処理(演算,転送等)の他に,そのデータ処理に
伴う演算フラグの生或処理も含まれている。しかしなが
ら一般的に演算フラグは条件付分岐命令や桁上げ計算命
令などにしか用いられない。従ってそれらの命令の演算
フラグ生成を行うターゲット命令の演算フラグ処理のみ
行えば十分であるにもかかわらず、従来のエミュレーシ
ョンプロセッサは演算フラグ生成ターゲット命令処理が
要求される都度演算フラグ処理を行っていた。
(発明が解決しようとする課題) 上述したように従来例では不必要なeLW.フラグ処理
を行うことにより、エミュレーション実行速度に悪影響
を与えていた。この発明は上記事情に鑑みてなされたも
のであり、演算フラグを使用するターゲット命令と、演
算フラグ生成を行うターゲット命令を検出し、不必要な
演算フラグ処理を省略して、高速にエミュレーションを
実行するエミュレーションプロセッサを提供することを
目的とする。
[発明の構成] (課題を解決するための手段) 本発明は、プロセッサ固有のネイティブ命令処理の他、
異種プロセッサのターゲット命令に対応してその動作を
模擬するネイティブ命令列を生威し処理するエミュレー
ションプロセッサにおいて、演算フラグを生成するため
の第1のターゲット命令(演算フラグ生成ターゲット命
令)と演算フラグを参照するための第2のターゲット命
令(演算フラグ参照ターゲット命令)を検出する夕−ゲ
ット命令検出手段(ブリデコーダ)と、演算フラグ参照
ターゲット命令の実行以前に複数の演算フラグ生成ター
ゲット命令が存在することを検出する手段(命令コンバ
ータ)と、演算フラグ参照ターゲット命令の実行に最も
近い演算フラグ生成ターゲット命令の演算フラグ生成処
理のみ実行し、それ以前の演算フラグ生成ターゲット命
令の演算フラグ生成処理を省略する手段(命令デコーダ
)を持ち、ターゲット命令によるプログラムを高速にエ
ミュレーションすることを特徴とする。
(作用) 上述した構成を採ることにより、まずブリデコーダにて
演算フラグ生成ターゲット命令と演算フラグ参照ターゲ
ット命令を検出し、その各々に固有のタグを付加する。
プリデコーダにより処理された命令(ターゲット命令)
を命令スタックに複数個保持し、命令スタック上の各タ
ーゲット命令のタグと命令スタック上の先頭ターゲット
命令により、そのターゲット命令の演算フラグ処理を行
うかどうかを判定する。命令コンバータでは、その判定
に従ってそのターゲット命令の処理を実行するネイティ
ブ命令列を生或する。このことにより演算フラグ処理の
省略を実行することができ、エミュレーションを高速化
できる。
(実施例) 以下、図面を使用して本発明実施例について説明する。
第1図は本発明の実施例を示すブロック図である。図に
おいて、符号1は命令バッファであり、記憶装置から読
み込んだ命令コードを一時保持する。符号2はブリデコ
ーダであり、演算フラグ生戊ターゲット命令と演算フラ
グ参照(使用)ターゲット命令を検出し.その命令に各
々のタグを付けて命令スタック3に送出する。符号3は
命令スタックであり、プリデコーダ2により処理された
命令を格納する。符号4は命令コンバータであり、命令
スタック3上の先頭命令とそれに続く命令のタグにより
エミュレートすべき命令をネイティブの命令例に変換す
る。符号5は命令レジスタであり、実行のため命令を一
時保持するレジスタである。符号6は命令デコーダであ
り、命令実行のための制御信号を発生する。
第2図乃至第6図は本発明実施例の動作を説明するため
に引用した図であり、第2図はブリデコーダ2の出力フ
ォーマットを示す図、第3図はターゲット命令列の一例
を示す図、第4図は1つのターゲット命令の命令処理を
説明するためのフローチャート、第5図は命令スタック
3から命令コンバータ4へ供給されるデータ列の一例を
示ス図、第6図は生成されるネイティブ命令列及び同命
令列に基づく命令処理手順を説明するための図である。
尚、第6図では参考のために同図(a)に従来例におけ
るエミュレーションプロセッサの例を、同図(b)に本
発明実施例におけるエミュレーションプロセッサの例を
示す。第2図乃至第6図の詳細は後述する。
以下、本発明実施例の動作について説明する。
命令バッファ1に読み込まれた命令がエミュレ−ション
すべきターゲット命令であると、ブリデコーダ2はその
命令が演算フラグを生成する命令か、あるいは演算フラ
グを参照する命令かを判別し、第2図に示すようなタグ
を付して、命令スタック3に積む。第2図中、GTは演
算フラグを生成するターゲット命令であることを示すタ
グ、CTは演算フラグを使用するターゲット命令である
ことを示すタグ、OPはターゲット命令コードを示す。
命令スタック3に積まれた命令例が第3図に示す夕一ゲ
ット命令列の場合には第5図のようにタグが付されてい
る。MOVE命令は演算フラグの生或も参照も行わない
。ADD命令は演算フラグの生成を行う。また、JCC
(条件分岐)命令は、演算フラグの参照を行う。
命令コンバータ4は第5図に示すように、命令スタック
3の先頭命令と後続命令のタグを参照して、ターゲット
命令を処理するネイティブ命令列を生成する。ターゲッ
ト命令を処理するネイティブ命令列は第4図に示す処理
を行うプログラムである。第3図に示すターゲット命令
列ではアドレスA3のADD命令の生或した演算フラグ
でA5のJCC条件分岐命令は分岐するか否かを判断す
る。従ってアドレスA2のADD命令での演算フラグ生
成処理は不要である。これは第5図に示す命令コンバー
タ4が命令スタック3上のタグを判別し、アドレスA2
のADD命令の後にアドレスA3のADD命令が存在す
ることを認識し、アドレスA2のADD命令の処理命令
列から演算フラグ処理部分を省略して、ネイティブ命令
列を生或することにより行われる。
第6図(a),(b)に第3図のターゲット命令列が従
来のエミュレーションプログラムと本発明のエミュレー
ションプログラムにより処理された場合のネイティブ命
令列の処理フローを示す。
[発明の効果] 以上説明のように本発明によれば、プロセッサ固有の命
令処理の他に異種プロセッサの命令を実行するエミュレ
ーションプロセッサにおいて、不要な演算フラグ処理を
省略し、従ってエミュレーションを高速に実行すること
ができる。
【図面の簡単な説明】
第1図は本発明の実施例を示すブロック図、第2図乃至
第6図は本発明実施例の動作を説明するために引用した
図であり、第2図はブリデコーダ2の出力フォーマット
を示す図、第3図はターゲット命令列の一例を示す図、
第4図は1つのターゲット命令の命令処理を説明するた
めのフローチャート、第5図は命令スタックから命令コ
ンバータへ供給されるデータ列の一例を示す図、第6図
て説明するための図である。 1・・・命令バッファ、2・・・プリデコーダ、3・・
・命令スタック、4・・・命令コンバータ、5・・・命
令レジスタ、6・・・命令デコーダ。

Claims (1)

    【特許請求の範囲】
  1. プロセッサ固有のネイティブ命令処理の他、異種プロセ
    ッサのターゲット命令に対応してその動作を模擬するた
    めのネイティブ命令列を生成し処理するエミュレーショ
    ンプロセッサにおいて、演算フラグを生成するための第
    1のターゲット命令と演算フラグを参照するための第2
    のターゲット命令を検出する手段と、上記第2のターゲ
    ット命令の実行以前に複数の上記第1のターゲット命令
    が存在することを検出するターゲット命令検出手段と、
    このターゲット命令検出手段の検出結果に応じて上記第
    2のターゲット命令の実行に最も近い上記第1のターゲ
    ット命令の演算フラグ生成処理のみ実行し、それ以前の
    上記第1のターゲット命令の演算フラグ生成処理を省略
    する実行制御手段とを具備することを特徴とするエミュ
    レーションプロセッサ。
JP30745789A 1989-11-29 1989-11-29 エミュレーションプロセッサ Pending JPH03168836A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP30745789A JPH03168836A (ja) 1989-11-29 1989-11-29 エミュレーションプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP30745789A JPH03168836A (ja) 1989-11-29 1989-11-29 エミュレーションプロセッサ

Publications (1)

Publication Number Publication Date
JPH03168836A true JPH03168836A (ja) 1991-07-22

Family

ID=17969296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30745789A Pending JPH03168836A (ja) 1989-11-29 1989-11-29 エミュレーションプロセッサ

Country Status (1)

Country Link
JP (1) JPH03168836A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838953A (en) * 1996-02-13 1998-11-17 Kabushiki Kaisha Toshiba Information processing apparatus
JP2009535744A (ja) * 2006-05-04 2009-10-01 クゥアルコム・インコーポレイテッド 可変長命令のプリデコーディング

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5838953A (en) * 1996-02-13 1998-11-17 Kabushiki Kaisha Toshiba Information processing apparatus
JP2009535744A (ja) * 2006-05-04 2009-10-01 クゥアルコム・インコーポレイテッド 可変長命令のプリデコーディング
JP2012185843A (ja) * 2006-05-04 2012-09-27 Qualcomm Inc 可変長命令のプリデコーディング

Similar Documents

Publication Publication Date Title
JPH03168836A (ja) エミュレーションプロセッサ
JPH01120638A (ja) 情報処理装置
JP2557629B2 (ja) 割込方式
JPH025136A (ja) 言語処理プログラムのエラー処理方式
JP2708647B2 (ja) コプロセサによる補助機能のサポート方法
KR930006555A (ko) 가상모드에서 동작하는 인터럽트 관계 명령어를 구비한 컴퓨터 시스템
JP2937641B2 (ja) アプリケーションプログラム間通信方式
JPS60198640A (ja) パイプライン型情報処理装置
JP2856784B2 (ja) 電子計算機
JPS6373335A (ja) 情報処理装置
JPS6361696B2 (ja)
JPS62254237A (ja) インタプリタ方式の分岐命令実行方式
JPH06309166A (ja) 演算処理装置及び演算処理方法
JPH03161834A (ja) 情報処理装置
JP2998299B2 (ja) プロセッサ制御装置
JPS62128339A (ja) 未定義ハ−ドウエア命令を含むプログラムの実行方式
JPS5971542A (ja) 演算処理装置
JPS6275734A (ja) エミユレ−シヨン方式
JPH04287231A (ja) マイクロプロセッサ
JPH03255535A (ja) 中央処理装置
JPH02236727A (ja) 情報処理装置
JPH0548492B2 (ja)
JPS63292337A (ja) 論理シミュレ−ションシステム
JPH0250727A (ja) マイクロプログラム生成装置
JPS61251936A (ja) 仮想計算機システム