JPH08123697A - Emulation speeding-up system - Google Patents

Emulation speeding-up system

Info

Publication number
JPH08123697A
JPH08123697A JP28447094A JP28447094A JPH08123697A JP H08123697 A JPH08123697 A JP H08123697A JP 28447094 A JP28447094 A JP 28447094A JP 28447094 A JP28447094 A JP 28447094A JP H08123697 A JPH08123697 A JP H08123697A
Authority
JP
Japan
Prior art keywords
instruction code
language instruction
machine language
address
machine
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
JP28447094A
Other languages
Japanese (ja)
Inventor
Kazuhito Suda
和仁 酢田
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
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP28447094A priority Critical patent/JPH08123697A/en
Publication of JPH08123697A publication Critical patent/JPH08123697A/en
Pending legal-status Critical Current

Links

Landscapes

  • Executing Machine-Instructions (AREA)

Abstract

PURPOSE: To emulate an emulation object program having loop structure at a high speed. CONSTITUTION: An address retrieval means 23 retrieves whether or not the execution address of the emulation object program 1 is registered in an address/ machine word instruction code storage table 3 and a machine word instruction code taking-out means 24 takes a machine word instruction code out of the program 1 when the address is not retrieved and out of the table 3 when the address is retrieved. A machine word instruction code converting means 25 converts the instruction code taken out of the program 1 into a machine word instruction code of a host machine and an address/machine word instruction code storage means 26 stores the converted instruction code in the table 3 together with the address. A machine word instruction code executing means 27 executes the instruction code converted by the machine word instruction code converting means 25 or the instruction code taken out of the table 3.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はエミュレーション方式に
関し、特にエミュレーション対象プログラムを高速にエ
ミュレーションするエミュレーション高速化方式に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an emulation system, and more particularly to an emulation speed-up system for emulating an emulation target program at high speed.

【0002】[0002]

【従来の技術】従来のエミュレーション方式では、エミ
ュレートされるコンピュータ(以下、ターゲットマシン
という)の機械語命令コードで作成されているエミュレ
ーション対象プログラムを、エミュレートするコンピュ
ータ(以下、ホストマシンという)上でエミュレータと
呼ばれるソフトウェアにより1機械語命令コードごとに
解析してホストマシンの機械語命令コードに変換し実行
していく手法がとられている(エミュレーション方式に
ついては、例えば特開昭60−167037号公報等を
参照)。
2. Description of the Related Art In a conventional emulation method, an emulation target program created by a machine language instruction code of an emulated computer (hereinafter referred to as a target machine) is emulated on a computer (hereinafter referred to as a host machine). In this method, a software called an emulator is used to analyze each machine language instruction code and convert it into a machine language instruction code of the host machine and execute it (for the emulation method, see, for example, JP-A-60-167037). See the bulletin etc.).

【0003】特に、従来のエミュレーション方式では、
ループ構造を持つエミュレーション対象プログラムの場
合でも、エミュレーション対象プログラムの同じアドレ
スにある機械語命令コードは1回目の実行のときに解析
されてホストマシンの機械語命令コードに変換されたに
もかかわらず、ループ制御により2回目以降の実行のと
きにも同様に解析されてホストマシンの機械語命令コー
ドに変換された後に実行されていた。
Particularly, in the conventional emulation method,
Even in the case of an emulation target program having a loop structure, the machine language instruction code at the same address of the emulation target program was analyzed during the first execution and converted into the machine language instruction code of the host machine. In the second and subsequent executions by the loop control, it is analyzed in the same manner, converted into the machine language instruction code of the host machine, and then executed.

【0004】[0004]

【発明が解決しようとする課題】上述した従来のエミュ
レーション方式では、ループ構造を持つエミュレーショ
ン対象プログラムの場合でも、エミュレーション対象プ
ログラムの同じアドレスにある機械語命令コードが2回
目以降の実行のときも1回目の実行のときと同様に解析
されホストマシンの機械語命令コードに変換されて実行
されていたので、機械語命令コードを解析する過程にお
いて多大なソフトウェアオーバーヘッドが加わり、エミ
ュレーション対象プログラムを高速に実行することがで
きないという問題点があった。
In the conventional emulation method described above, even in the case of the emulation target program having the loop structure, the machine language instruction code at the same address of the emulation target program is 1 when the second and subsequent executions are executed. Since it was analyzed and converted to the machine language instruction code of the host machine in the same way as the first execution, a large software overhead was added in the process of analyzing the machine language instruction code, and the emulation target program was executed at high speed. There was a problem that I could not do it.

【0005】また、エミュレーション対象プログラムを
エミュレートするホストマシンの負荷も大きくなるとい
う問題点があった。
There is also a problem that the load on the host machine that emulates the program to be emulated increases.

【0006】本発明の目的は、上述の点に鑑み、ループ
構造を持つエミュレーション対象プログラムを高速にエ
ミュレーションできるようにしたエミュレーション高速
化方式を提供することにある。
In view of the above points, an object of the present invention is to provide an emulation speed-up system capable of emulating an emulation target program having a loop structure at high speed.

【0007】[0007]

【課題を解決するための手段】本発明のエミュレーショ
ン高速化方式は、ターゲットマシンの機械語命令コード
で作成されたエミュレーション対象プログラムを1機械
語命令コードごとにホストマシンの機械語命令コードに
変換して実行するエミュレーション方式において、エミ
ュレーション対象プログラムをホストマシンのメモリに
ロードするプログラムロード手段と、アドレス/機械語
命令コード格納テーブルに前記エミュレーション対象プ
ログラムの実行しようとするアドレスが登録されている
か否かを検索するアドレス検索手段と、このアドレス検
索手段によりアドレスが検索されなかったときに前記エ
ミュレーション対象プログラムから該アドレスの機械語
命令コードを取り出し、アドレスが検索されたときに前
記アドレス/機械語命令コード格納テーブルから該アド
レスに対応する機械語命令コードを取り出す機械語命令
コード取出し手段と、前記エミュレーション対象プログ
ラムから取り出したターゲットマシンの機械語命令コー
ドをホストマシンの機械語命令コードに変換する機械語
命令コード変換手段と、この機械語命令コード変換手段
により変換されたホストマシンの機械語命令コードを前
記エミュレーション対象プログラムの機械語命令コード
のアドレスとともに前記アドレス/機械語命令コード格
納テーブルに保存するアドレス/機械語命令コード保存
手段と、前記機械語命令コード変換手段により変換され
た機械語命令コードまたは前記アドレス/機械語命令コ
ード格納テーブルから取り出された機械語命令コードを
実行する機械語命令コード実行手段と、この機械語命令
コード実行手段により実行された機械語命令コードの種
類または長さに応じて実行しようとするアドレスを更新
するアドレス更新手段とを有する。
The emulation acceleration method of the present invention converts an emulation target program created by a machine language instruction code of a target machine into a machine language instruction code of a host machine for each machine language instruction code. In the emulation method executed by executing the emulation target program, a program loading means for loading the emulation target program into the memory of the host machine and whether or not the address to be executed by the emulation target program is registered in the address / machine language instruction code storage table. Address search means for searching, and a machine language instruction code of the address is extracted from the emulation target program when the address is not searched by the address search means, and the address / machine is searched when the address is searched. Machine language instruction code fetching means for fetching a machine language instruction code corresponding to the address from the instruction code storage table, and a machine for converting the machine language instruction code of the target machine fetched from the emulation target program into the machine language instruction code of the host machine. The word instruction code conversion means and the machine language instruction code of the host machine converted by the machine language instruction code conversion means are stored in the address / machine language instruction code storage table together with the address of the machine language instruction code of the emulation target program. Address / machine language instruction code storage means and machine language instruction code for executing the machine language instruction code converted by the machine language instruction code conversion means or the machine language instruction code retrieved from the address / machine language instruction code storage table Execution means , And an address updating means for updating the address to be executed in accordance with the type or length of the machine instruction code executed by the machine instruction code execution unit.

【0008】[0008]

【実施例】次に、本発明について図面を参照して詳細に
説明する。
The present invention will be described in detail with reference to the drawings.

【0009】図1は、本発明の一実施例に係るエミュレ
ーション高速化方式の構成を示すブロック図である。本
実施例のエミュレーション高速化方式は、ターゲットマ
シン(図示せず)の機械語命令コードで作成されたエミ
ュレーション対象プログラム1と、エミュレーション対
象プログラム1を1機械語命令コードごとにホストマシ
ン(図示せず)の機械語命令コードに変換して実行する
エミュレータ2と、エミュレータ2により変換された機
械語命令コードをエミュレーション対象プログラム1に
おける機械語命令コードのアドレス(以下、単にアドレ
スという)とともに格納するアドレス/機械語命令コー
ド格納テーブル3とから構成されている。
FIG. 1 is a block diagram showing the configuration of an emulation acceleration system according to an embodiment of the present invention. In the emulation acceleration method of this embodiment, the emulation target program 1 created by the machine language instruction code of the target machine (not shown) and the emulation target program 1 for each machine language instruction code are provided to the host machine (not shown). ), Which stores the machine language instruction code converted by the emulator 2 together with the address of the machine language instruction code in the emulation target program 1 (hereinafter, simply referred to as address) / It is composed of a machine language instruction code storage table 3.

【0010】エミュレータ2は、プログラムロード手段
21と、アドレス更新手段22と、アドレス検索手段2
3と、機械語命令コード取出し手段24と、機械語命令
コード変換手段25と、アドレス/機械語命令コード保
存手段26と、機械語命令コード実行手段27とを含ん
で構成されている。
The emulator 2 includes a program loading means 21, an address updating means 22, and an address searching means 2
3, a machine language instruction code extraction means 24, a machine language instruction code conversion means 25, an address / machine language instruction code storage means 26, and a machine language instruction code execution means 27.

【0011】アドレス/機械語命令コード格納テーブル
3は、ホストマシンのメモリ上に作成される。
The address / machine language instruction code storage table 3 is created in the memory of the host machine.

【0012】図2を参照すると、エミュレータ2の処理
は、エミュレーション対象プログラムロードステップS
101と、先頭アドレス設定ステップS102と、実行
アドレス検索ステップS103と、一致アドレス有無判
定ステップS104と、機械語命令コード取出しステッ
プS105と、機械語命令コード変換ステップS106
と、アドレス/機械語命令コード保存ステップS107
と、機械語命令コード実行ステップS108と、アドレ
ス更新ステップS109と、機械語命令コード取出しス
テップS110と、機械語命令コード実行ステップS1
11とからなる。
Referring to FIG. 2, the process of the emulator 2 is performed by loading the emulation target program step S.
101, a head address setting step S102, an execution address searching step S103, a matching address presence / absence determining step S104, a machine language instruction code extracting step S105, and a machine language instruction code converting step S106.
And address / machine language instruction code storage step S107
A machine language instruction code execution step S108, an address update step S109, a machine language instruction code extraction step S110, and a machine language instruction code execution step S1.
It consists of 11.

【0013】次に、このように構成された本実施例のエ
ミュレーション高速化方式の動作について説明する。
Next, the operation of the emulation accelerating system of the present embodiment thus constructed will be described.

【0014】まず、エミュレータ2は、プログラムロー
ド手段21により、エミュレーション対象プログラム1
をホストマシン上のメモリにロードし(ステップS10
1)、アドレス更新手段22により、機械語命令コード
の解析を開始するアドレスをエミュレーション対象プロ
グラム1の先頭アドレスに設定する(ステップS10
2)。
First, the emulator 2 uses the program loading means 21 to emulate the program 1 to be emulated.
Is loaded into the memory on the host machine (step S10
1), the address updating means 22 sets the start address of the machine language instruction code analysis as the start address of the emulation target program 1 (step S10).
2).

【0015】次に、エミュレータ2は、アドレス検索手
段23により、エミュレーション対象プログラム1中の
実行しようとする機械語命令コードのあるアドレスをキ
ーにアドレス/機械語命令コード格納テーブル3を検索
する(ステップS103)。
Next, the emulator 2 searches the address / machine language instruction code storage table 3 with the address of the machine language instruction code to be executed in the emulation target program 1 as a key by the address retrieval means 23 (step S103).

【0016】キーのアドレスと同一のアドレスがアドレ
ス/機械語命令コード格納テーブル3に登録されていな
かった場合(ステップS104でノー)、エミュレータ
2は、機械語命令コード取出し手段24により、エミュ
レーション対象プログラム1から実行するアドレスにあ
る機械語命令コードを取り出し(ステップS105)、
取り出したターゲットマシンの機械語命令コードの解析
を行ってホストマシンの機械語命令コードに変換する
(ステップS106)。なお、ターゲットマシンの機械
語命令コードからホストマシンの機械語命令コードへの
変換にあたっては、例えば特開昭63−106836号
公報等に記載されているように、ターゲットマシンの機
械語命令コードとホストマシンの機械語命令コードとが
異なっている場合にのみ、ターゲットマシンの機械語命
令コードからホストマシンの機械語命令コードへの変換
を行うようにしてもよい。かくすれば、ターゲットマシ
ンとホストマシンとが類似するアーキテクチャのCPU
(Central Processing Unit)
を使用している場合に、エミュレーションのさらなる高
速化が期待できる。
If the same address as the key address is not registered in the address / machine language instruction code storage table 3 (NO in step S104), the emulator 2 causes the machine language instruction code fetching means 24 to execute the emulation target program. The machine language instruction code at the address to be executed is fetched from 1 (step S105),
The extracted machine language instruction code of the target machine is analyzed and converted into the machine language instruction code of the host machine (step S106). When converting the machine language instruction code of the target machine into the machine language instruction code of the host machine, the machine language instruction code of the target machine and the host machine are used as described in, for example, Japanese Patent Laid-Open No. 63-106836. The machine language instruction code of the target machine may be converted to the machine language instruction code of the host machine only when the machine language instruction code of the machine is different. This way, the target machine and the host machine have a CPU with a similar architecture.
(Central Processing Unit)
If you are using, you can expect further speed up of emulation.

【0017】ターゲットマシンの機械語命令コードから
ホストマシンの機械語命令コードへの変換の一例とし
て、例えば、ターゲットマシンのCPUがザイログ社製
のZ80で、ホストマシンのCPUがインテル社製の8
086であった場合、レジスタに値をロードする機械語
命令コードは、次のように変換される。
As an example of conversion from the machine language instruction code of the target machine to the machine language instruction code of the host machine, for example, the CPU of the target machine is Z80 manufactured by Zilog and the CPU of the host machine is 8 manufactured by Intel.
If it is 086, the machine language instruction code that loads the value into the register is converted as follows.

【0018】 Z80での機械語命令コード 3E 00 1d a,00h 8086での機械語命令コード B0 00 mov a1,00hMachine language instruction code in Z80 3E 00 1d a, 00h Machine language instruction code in 8086 B0 00 mov a1, 00h

【0019】次に、エミュレータ2は、アドレス/機械
語命令コード保存手段26により、変換されたホストマ
シンの機械語命令コードをターゲットマシンの機械語命
令コードのアドレスとともにアドレス/機械語命令コー
ド格納テーブル3に保存する(ステップS107)。な
お、同一のアドレスについて、機械語命令コードおよび
アドレスがすでにアドレス/機械語命令コード格納テー
ブル3に保存されている場合には、機械語命令コードお
よびアドレスの保存をスキップすることができる。ま
た、既述したアドレス検索手段23によるアドレス/機
械語命令コード格納テーブル3のアドレス検索を高速に
行えるように、機械語命令コードおよびアドレスをアド
レス順に並べ変えてアドレス/機械語命令コード格納テ
ーブル3に保存するようにしてもよい。
Next, the emulator 2 causes the address / machine language instruction code storage means 26 to convert the machine language instruction code of the host machine into the address / machine language instruction code storage table together with the address of the machine language instruction code of the target machine. 3 is stored (step S107). When the machine language instruction code and the address for the same address are already stored in the address / machine language instruction code storage table 3, the storage of the machine language instruction code and the address can be skipped. Further, the address / machine language instruction code storage table 3 is arranged by rearranging the machine language instruction codes and addresses in order of address so that the address search of the address / machine language instruction code storage table 3 described above can be performed at high speed. It may be stored in.

【0020】続いて、エミュレータ2は、機械語命令コ
ード実行手段27により、変換されたホストマシンの機
械語命令コードを実行する(ステップS108)。
Subsequently, the emulator 2 causes the machine language instruction code execution means 27 to execute the converted machine language instruction code of the host machine (step S108).

【0021】続いて、エミュレータ2は、アドレス更新
手段22により、実行した機械語命令コードの種類や長
さに応じてアドレスの更新を行い(ステップS10
9)、ステップS103に制御を戻す。例えば、機械語
命令コードが分岐命令の場合には命令に従ったアドレス
に更新し、分岐命令以外の場合には機械語命令コードの
長さに応じたアドレスを加算する。
Subsequently, the emulator 2 updates the address by the address updating means 22 according to the type and length of the executed machine language instruction code (step S10).
9) The control is returned to step S103. For example, when the machine language instruction code is a branch instruction, the address is updated according to the instruction, and when the machine language instruction code is other than the branch instruction, an address according to the length of the machine language instruction code is added.

【0022】ステップS104において、キーのアドレ
スと同一のアドレスがアドレス/機械語命令コード格納
テーブル3に登録されていた場合(ステップS104で
イエス)、エミュレータ2は、機械語命令コード取出し
手段24により、アドレス/機械語命令コード格納テー
ブル3からアドレスに対応した機械語命令コードを取り
出し(ステップS110)、機械語命令コード実行手段
27により、取り出した機械語命令コードを実行する
(ステップS111)。
In step S104, when the same address as the key address is registered in the address / machine language instruction code storage table 3 (YES in step S104), the emulator 2 causes the machine language instruction code fetching means 24 to A machine language instruction code corresponding to the address is fetched from the address / machine language instruction code storage table 3 (step S110), and the machine language instruction code executing means 27 executes the fetched machine language instruction code (step S111).

【0023】続いて、エミュレータ2は、アドレス更新
手段22により、実行した機械語命令コードの種類や長
さに応じてアドレスの更新を行い(ステップS10
9)、ステップS103に制御を戻す。
Then, the emulator 2 updates the address by the address updating means 22 according to the type and length of the executed machine language instruction code (step S10).
9) The control is returned to step S103.

【0024】エミュレータ2は、以上のようにして、ス
テップS103〜S111を繰り返すことにより、エミ
ュレーション対象プログラム1のエミュレーションを実
行していく。
The emulator 2 executes emulation of the emulation target program 1 by repeating steps S103 to S111 as described above.

【0025】[0025]

【発明の効果】以上説明したように本発明は、プログラ
ムロード手段,アドレス検索手段,機械語命令コード取
出し手段,機械語命令コード変換手段,アドレス/機械
語命令コード保存手段,機械語命令コード実行手段およ
びアドレス更新手段を設け、エミュレーション対象プロ
グラムの機械語命令コードを1機械語命令コードごとに
解析しホストマシンの機械語命令コードに変換して実行
するとともに、変換された機械語命令コードをアドレス
ととともにアドレス/機械語命令コード格納テーブルに
保存し、同じアドレスにある機械語命令コードの2回目
以降の実行では機械語命令コードを解析せずに保存され
た機械語命令コードを取り出して実行するようにしたこ
とにより、ループ構造を持つエミュレーション対象プロ
グラムを高速にエミュレーションして実行することがで
きるという効果がある。
As described above, according to the present invention, program loading means, address retrieval means, machine language instruction code fetching means, machine language instruction code conversion means, address / machine language instruction code storage means, machine language instruction code execution. Means and address updating means are provided, the machine language instruction code of the emulation target program is analyzed for each machine language instruction code, converted into the machine language instruction code of the host machine and executed, and the converted machine language instruction code is addressed. It is stored in the address / machine language instruction code storage table together with and, and the stored machine language instruction code is extracted and executed without analyzing the machine language instruction code in the second and subsequent executions of the machine language instruction code at the same address. By doing so, the emulation target program having a loop structure can be executed at high speed. There is an effect that can be executed by Interview configuration.

【0026】また、これにより、エミュレーションを実
行するホストマシンの負荷を大幅に軽減することができ
るという効果がある。
This also has the effect of significantly reducing the load on the host machine that executes emulation.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例に係るエミュレーション高速
化方式の構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of an emulation acceleration system according to an embodiment of the present invention.

【図2】図1中のエミュレータの処理を示す流れ図であ
る。
FIG. 2 is a flow chart showing a process of an emulator in FIG.

【符号の説明】[Explanation of symbols]

1 エミュレーション対象プログラム 2 エミュレータ 3 アドレス/機械語命令コード格納テーブル 21 プログラムロード手段 22 アドレス更新手段 23 アドレス検索手段 24 機械語命令コード取出し手段 25 機械語命令コード変換手段 26 アドレス/機械語命令コード保存手段 27 機械語命令コード実行手段 1 Emulation Target Program 2 Emulator 3 Address / Machine Language Instruction Code Storage Table 21 Program Loading Means 22 Address Updating Means 23 Address Searching Means 24 Machine Language Instruction Code Extracting Means 25 Machine Language Instruction Code Converting Means 26 Address / Machine Language Instruction Code Saving Means 27 Machine language instruction code execution means

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 ターゲットマシンの機械語命令コードで
作成されたエミュレーション対象プログラムを1機械語
命令コードごとにホストマシンの機械語命令コードに変
換して実行するエミュレーション方式において、 エミュレーション対象プログラムをホストマシンのメモ
リにロードするプログラムロード手段と、 アドレス/機械語命令コード格納テーブルに前記エミュ
レーション対象プログラムの実行しようとするアドレス
が登録されているか否かを検索するアドレス検索手段
と、 このアドレス検索手段によりアドレスが検索されなかっ
たときに前記エミュレーション対象プログラムから該ア
ドレスの機械語命令コードを取り出し、アドレスが検索
されたときに前記アドレス/機械語命令コード格納テー
ブルから該アドレスに対応する機械語命令コードを取り
出す機械語命令コード取出し手段と、 前記エミュレーション対象プログラムから取り出したタ
ーゲットマシンの機械語命令コードをホストマシンの機
械語命令コードに変換する機械語命令コード変換手段
と、 この機械語命令コード変換手段により変換されたホスト
マシンの機械語命令コードを前記エミュレーション対象
プログラムの機械語命令コードのアドレスとともに前記
アドレス/機械語命令コード格納テーブルに保存するア
ドレス/機械語命令コード保存手段と、 前記機械語命令コード変換手段により変換された機械語
命令コードまたは前記アドレス/機械語命令コード格納
テーブルから取り出された機械語命令コードを実行する
機械語命令コード実行手段と、 この機械語命令コード実行手段により実行された機械語
命令コードの種類または長さに応じて実行しようとする
アドレスを更新するアドレス更新手段とを有することを
特徴とするエミュレーション高速化方式。
1. An emulation method in which an emulation target program created by a machine language instruction code of a target machine is converted into a machine language instruction code of the host machine for each machine language instruction code and executed. Program loading means for loading into the memory, address searching means for searching whether or not the address to be executed by the emulation target program is registered in the address / machine language instruction code storage table, and the address searching means Is not retrieved, the machine language instruction code of the address is retrieved from the emulation target program, and when the address is retrieved, the machine corresponding to the address from the address / machine language instruction code storage table. Machine language instruction code fetching means for fetching a language instruction code, machine language instruction code converting means for converting the machine language instruction code of the target machine fetched from the emulation target program into the machine language instruction code of the host machine, and the machine language instruction Address / machine language instruction code storage means for storing the machine language instruction code of the host machine converted by the code conversion means in the address / machine language instruction code storage table together with the address of the machine language instruction code of the emulation target program; Machine language instruction code executing means for executing the machine language instruction code converted by the machine language instruction code converting means or the machine language instruction code extracted from the address / machine language instruction code storing table, and the machine language instruction code executing means Machine executed by An emulation speed-up method, comprising: an address updating means for updating an address to be executed according to the type or length of a machine language instruction code.
【請求項2】 前記機械語命令コード変換手段が、ター
ゲットマシンの機械語命令コードとホストマシンの機械
語命令コードとが異なっている場合にのみ機械語命令コ
ードの変換を行う請求項1記載のエミュレーション高速
化方式。
2. The machine language instruction code conversion means converts the machine language instruction code only when the machine language instruction code of the target machine and the machine language instruction code of the host machine are different. Emulation speedup method.
【請求項3】 前記アドレス/機械語命令コード保存手
段が、同一のアドレスについて機械語命令コードおよび
アドレスがすでに前記アドレス/機械語命令コード格納
テーブルに保存されている場合に、機械語命令コードお
よびアドレスの保存をスキップする請求項1記載のエミ
ュレーション高速化方式。
3. The address / machine language instruction code storage means stores the machine language instruction code and the machine language instruction code for the same address when the machine language instruction code and the address are already stored in the address / machine language instruction code storage table. The emulation acceleration method according to claim 1, wherein storage of addresses is skipped.
【請求項4】 前記アドレス/機械語命令コード保存手
段が、前記アドレス/機械語命令コード格納テーブルへ
の機械語命令コードおよびアドレスの保存をアドレス順
に並べ変えて行う請求項1記載のエミュレーション高速
化方式。
4. The emulation speed-up according to claim 1, wherein the address / machine language instruction code storage means stores the machine language instruction codes and addresses in the address / machine language instruction code storage table by rearranging the addresses in the order of addresses. method.
JP28447094A 1994-10-24 1994-10-24 Emulation speeding-up system Pending JPH08123697A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28447094A JPH08123697A (en) 1994-10-24 1994-10-24 Emulation speeding-up system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28447094A JPH08123697A (en) 1994-10-24 1994-10-24 Emulation speeding-up system

Publications (1)

Publication Number Publication Date
JPH08123697A true JPH08123697A (en) 1996-05-17

Family

ID=17678948

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28447094A Pending JPH08123697A (en) 1994-10-24 1994-10-24 Emulation speeding-up system

Country Status (1)

Country Link
JP (1) JPH08123697A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008533578A (en) * 2005-03-11 2008-08-21 トランジティブ リミテッド Execution control during program code conversion
JP2011134315A (en) * 2009-12-23 2011-07-07 Intel Corp Transition from source instruction set architecture (isa) code to translated code in partial emulation environment
US9891936B2 (en) 2013-09-27 2018-02-13 Intel Corporation Method and apparatus for page-level monitoring
JP2018028777A (en) * 2016-08-17 2018-02-22 Necプラットフォームズ株式会社 Emulation device, emulation method, and emulation program
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

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04268928A (en) * 1991-02-25 1992-09-24 Toshiba Corp Emulation device and semiconductor device
JPH0695919A (en) * 1992-07-27 1994-04-08 Internatl Business Mach Corp <Ibm> Emulation method for computer system
JPH06202877A (en) * 1992-12-28 1994-07-22 Fujitsu Ltd Emulator

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04268928A (en) * 1991-02-25 1992-09-24 Toshiba Corp Emulation device and semiconductor device
JPH0695919A (en) * 1992-07-27 1994-04-08 Internatl Business Mach Corp <Ibm> Emulation method for computer system
JPH06202877A (en) * 1992-12-28 1994-07-22 Fujitsu Ltd Emulator

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008533578A (en) * 2005-03-11 2008-08-21 トランジティブ リミテッド Execution control during program code conversion
US8615749B2 (en) 2005-03-11 2013-12-24 International Business Machines Corporation Execution control during program code conversion
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 (en) * 2009-12-23 2011-07-07 Intel Corp Transition from source instruction set architecture (isa) code to translated code in partial emulation environment
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
JP2018028777A (en) * 2016-08-17 2018-02-22 Necプラットフォームズ株式会社 Emulation device, emulation method, and emulation program
US10268462B2 (en) 2016-08-17 2019-04-23 Nec Platforms, Ltd. Emulation device, emulation method, and recording medium storing emulation program

Similar Documents

Publication Publication Date Title
JPH08123697A (en) Emulation speeding-up system
CN114968282A (en) Optimization method and system for exception handling execution
JPH10301790A (en) Assemble processing system
JP3318051B2 (en) Translation processing method
JPH1124940A (en) Emulation processing system
JP3352871B2 (en) Programmable controller
JP2000105693A (en) Pointing support system
JPH07244601A (en) Method and device for accessing relational data base
JPH0423167A (en) Command retrieving system
JPH05216684A (en) Program execution device and execution method
JPH0128414B2 (en)
JPH09204307A (en) Program dynamically linking device and its method
JPH0327439A (en) Shared module managing system for program
JPH0573335A (en) Automatic in-line development system for program
JPH10171656A (en) Script language processor
JPH11238012A (en) Memory access batching method and storage medium
JPH05334359A (en) Integrated data extraction system
JPH06175862A (en) Electronic computer
JPH09231088A (en) Device and method for program conversion execution
JPH02146625A (en) Extension system for number of registers
JPH11120119A (en) Information transfer device having arithmetic function
JPH06236261A (en) Separating system for procedure language program component
JP2003157171A (en) Method and device for calling virtual instruction
JPH0338745A (en) Data batch processing system
JPH04128936A (en) Program execution environment changeover system