JP2853647B2 - デバッガ付きインタプリタへの機能付加方式 - Google Patents

デバッガ付きインタプリタへの機能付加方式

Info

Publication number
JP2853647B2
JP2853647B2 JP8080787A JP8078796A JP2853647B2 JP 2853647 B2 JP2853647 B2 JP 2853647B2 JP 8080787 A JP8080787 A JP 8080787A JP 8078796 A JP8078796 A JP 8078796A JP 2853647 B2 JP2853647 B2 JP 2853647B2
Authority
JP
Japan
Prior art keywords
interpreter
instruction
function
function selection
debugger
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
JP8080787A
Other languages
English (en)
Other versions
JPH09244918A (ja
Inventor
理 鈴木
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 JP8080787A priority Critical patent/JP2853647B2/ja
Publication of JPH09244918A publication Critical patent/JPH09244918A/ja
Application granted granted Critical
Publication of JP2853647B2 publication Critical patent/JP2853647B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理装置に関
し、特に情報処理装置における命令の解釈実行を司るイ
ンタプリタの設計方式に関する。より詳細には、本発明
は、異なる設計方式の演算装置(CPU)上にシステム
を移植する場合に好適なインタプリタのデバッグ方式に
関する。
【0002】
【従来の技術】コンピュータ等の情報処理装置のメモリ
からフェッチした命令コードをデコード(解釈)し、デ
コード結果に基づき命令コードを実行するインタプリタ
に、デバッグ機能を付加する場合、各命令実行毎にデバ
ッグの処理を追加する必要がある。そして、このデバッ
ガ付きインタプリタにおいては、デバッガを使用しない
場合に、実行速度の低下を最小限に抑えることが重要で
ある。
【0003】デバッガ付きインタプリタの従来技術とし
て、例えば特開平3−100829号公報には、命令コ
ードとその命令コードの解釈実行により生ずる操作との
対応を変更する為の特定の命令コードを準備しておき、
この特定の命令コードの解釈実行により指定される所定
の命令コードとその命令コードの解釈実行により生じる
操作との対応を変更又は変更前の対応に戻るようにした
プログラム内蔵型計算機が提案されている。
【0004】図4に、この従来のプログラム内蔵型計算
機の作用を模式的に示す。図4に示すように、命令コー
ドnは“ADD”を意味するが、命令コードxを実行す
ることにより、命令コードnの解釈を“ADD”から
“SUB”に変更できる。すなわち、命令コードx実行
以降、命令コードnは“SUB”と解釈される。
【0005】このため、命令コードの解釈実行により生
じる操作の中に、本来の命令の実行に加えて、デバッグ
機能を付加することにより、上記の通常動作時に速度低
下を起こさないデバッガが実現できる。
【0006】図5に、インタプリタにデバッガ機能を付
加したインタプリタの構成を模式的に示す。図5に示す
ように、インタプリタ3は、アプリケーション7からフ
ェッチ(処理33参照)した命令コードをデコードし
(処理34参照)、デコード結果に基づき各命令を実行
する(処理37参照)ものであるが、インタプリタ3の
起動時において、命令コードとその命令コードの解釈実
行により生じる操作との対応を格納したデバッガ用デコ
ードテーブル44の内容を変更し、フェッチした命令コ
ードをデバッガ用デコードテーブル44を参照してデコ
ードした結果、デバッグ処理ルーチン45にジャンプす
る。デバッグ処理ルーチン45では、例えば命令実行に
よる各種レジスタ、プログラムカウンタ、状態フラグ等
のダンプ、実行アドレスのトレースの他、メモリの内容
の表示、書き換え、レジスタの書き換え、指定したアド
レスでの実行停止等、各種デバッグ処理が行われる。
【0007】そして、デバッグ処理ルーチン45を実行
終了後、通常命令実行用デコードテーブル22を参照し
て、この命令コードを再び通常命令としてデコードし
(処理27参照)、この通常命令を実行する(処理37
参照)。
【0008】以上の構成によりデバッガ付きインタプリ
タを実現することができる。
【0009】
【発明が解決しようとする課題】しかしながら、上記し
た従来のデバッガ付きインタプリタにおいては、機能の
付加が考慮されていないという問題点を有している。
【0010】特に、異なるCPUをもつ計算機上に、別
の計算機からシステムを移植する場合に、インタプリタ
のデバッガおよびアプリケーションのデバッガの混在が
必要となるが、上記従来のデバッガ付きインタプリタで
は、新機能を付加する場合、記憶用資源の消費が増大
し、実行速度の低下が生ずる。
【0011】これは、付加機能(例えばデバッガ機能)
を使用しない場合における命令解釈実行の速度低下を抑
えるためには、その付加機能分だけデコードテーブルが
必要とされており、デコードテーブルの書き換えに伴
い、処理が複雑化するためである。
【0012】従って、本発明は、上記事情に鑑みて為さ
れたものであって、デバッガ付きインタプリタに機能を
付加する場合に、記憶用資源の消費および実行速度の低
下を最小限に抑えるようにしたデバッガ付きインタプリ
タを提供することにある。
【0013】
【課題を解決するための手段】前記目的を達成するた
め、本発明のインタプリタは、命令コードと該命令コー
ドの解釈実行による処理との対応を格納したデコードテ
ーブルとして、通常命令実行用のデコードテーブルと機
能選択処理用のデコードテーブルを備え、選択された付
加機能に対応して設定される機能選択用のフラグを複数
備え、前記機能選択処理用のデコードテーブルを参照し
て命令コードをデコードした結果、機能選択処理手段に
制御が移行し、前記機能選択処理手段が、前記機能選択
用のフラグを判定して、優先度に応じて前記選択された
付加機能を実行する。
【0014】本発明においては、前記機能選択処理手段
が、前記命令コードに対する前記付加機能実行後、前記
命令コードを前記通常命令実行用のデコードテーブルを
参照してデコードし、これにより前記命令コードが通常
命令として実行されることを特徴とする。
【0015】また、本発明は、初期化時に、前記機能選
択用のフラグを設定するフラグ設定手段を備えたことを
特徴とする。
【0016】さらに、本発明においては、付加機能を実
行しない場合には、前記機能選択処理用のデコードテー
ブルを参照して命令コードをデコードした際に通常命令
として実行されることを特徴とする。
【0017】そして、本発明においては、前記機能選択
用のフラグを解除して付加機能の使用を止める手段を備
えたことを特徴とする。
【0018】さらにまた、本発明においては、前記フラ
グ設定手段が、前記機能選択処理用デコードテーブルの
変更処理を行うようにしてもよい
【0019】本発明においては、機能選択処理用のデコ
ードテーブルの内容を変更することにより、命令コード
のデコード時に通常の命令実行処理と前記機能選択処理
手段との選択を行い、命令コードをデコードした結果、
前記機能選択処理手段が選択された際に、前記機能選択
処理手段は、付加機能に対応して設定される機能選択用
のフラグを判定することにより、複数の付加機能を選択
的に実行し、前記機能選択処理手段で前記命令コードに
対する前記付加機能を実行した後、前記命令コードを前
記通常命令実行用のデコードテーブルを参照してデコー
ドすることで、前記命令コードを通常命令として実行す
る、ものである。
【0020】
【作用】本発明に係るインタプリタは、デバッガ実行時
において、デコードテーブルの変更により、付加機能選
択用処理に制御を移し、各付加機能を実行する。
【0021】そして、通常動作時の実行速度低下を防ぐ
ためには、デコードテーブルを変更し、デコードによっ
て処理を選択させる方法の方が好ましいが、この場合、
選択する付加機能が複数ある場合は、デコードテーブル
の変更のタイミングを含め処理が複雑化するという問題
を有している。
【0022】そこで、本発明のインタプリタでは、命令
のデコードにより、制御が移る処理を一本化し、付加機
能処理実行時は、制御の飛び先は付加機能選択処理のエ
ントリとし、付加機能選択処理において、機能選択用の
フラグを参照することにより、付加機能を選択して実行
処理する。
【0023】従来のシステムでは、付加機能分に加え、
さらに通常命令実行用のデコードテーブルが必要である
のに対して、本発明によれば、付加機能の数に依存する
ことなく、デコードテーブルは機能選択処理用と通常命
令実行用の2つで済むため、記憶用資源の消費が最小限
に抑えられている。
【0024】また、本発明においては、付加機能の数の
分のデコードテーブルを書き換える必要もなく、処理の
切りわけはフラグの書き換えによって行われるため、処
理の簡素化、及び高速化を可能としている。
【0025】本発明においては、複数の付加機能の実
行、及びその順番の判断をフラグによって行うように構
成したことにより、複数の各付加機能用のデコードテー
ブルを制御することが不要とされ、処理が簡素化でき
る。
【0026】本発明は、特に異なる演算装置をもつ計算
機にシステムを移植する場合について有効である。
【0027】
【発明の実施の形態】次に、本発明の実施形態について
図面を参照して詳細に説明する。
【0028】図1は、本発明に係るインタプリタが適用
されるコンピュータ等の情報処理装置の構成を示したも
のである。
【0029】図1(A)は、図1(B)に示した計算機
B上のシステムB(5′)とアプリケーションB
(7′)をCPUの異なる計算機A上で実行させる場
合、インタプリタ(3)を用いた構成を示したものであ
る。
【0030】本発明に係るインタプリタは、後に説明す
るように、命令セット等が異なるCPUをもつ計算機に
システムを移植する場合について特に有効である。例え
ばシステムをCPU Bから高性能のCPU Aにシス
テムを移植する場合、アプリケーションBをCPU A
で動作させる場合、インタプリタ3の形態で移植を実現
するならば、インタプリタのデバッガとアプリケーショ
ンBのデバッガの混在が不可欠となるが、以下に詳細に
説明するように、本発明によれば、記憶用資源(メモリ
リソース)の消費を抑止し、速度低下を抑えて、複数の
デバッガ機能の混在を可能としている。
【0031】次に、本発明の実施の形態に係るインタプ
リタの詳細について説明する。図2は、インタプリタの
内部構成および処理の流れを示したものである。
【0032】本発明に係るデバッガ付きインタプリタ
は、通常のインタプリタに加えて、初期化時に、デコー
ドテーブル変更処理を行う機能選択用フラグ設定処理2
0を有する。また、通常命令実行用デコードテーブル2
2は、読み出し(リード)のみ可能とされ、この通常命
令実行用デコードテーブル22は、デバッグ処理等、付
加機能実行終了後、本来の命令を実行する際の命令コー
ドのデコードの際に参照される。
【0033】一方、機能選択用デコードテーブル21
は、書き込み可能とされ、通常のインタプリタ実行時に
は通常命令実行用デコードテーブル22と同じ内容とさ
れ、デバッグ等の付加機能を用いる場合にテーブルの内
容が変更される。
【0034】機能選択用デコードテーブル21の変更に
より、機能選択用デコードテーブル21を参照して命令
コードをデコードした結果、制御の移る飛び先が、機能
選択処理24となる。
【0035】機能選択処理24では、機能選択用フラグ
23に記憶保持されているフラグの状態を判定し、所定
の機能を実行した後、通常命令実行用デコードテーブル
22を用いて命令コードをデコードし(処理27)、本
来の命令が実行される。
【0036】次に、本発明の実施形態の動作について図
2を参照して詳細に説明する。
【0037】まず、始めにインタプリタ3を起動する。
このとき、付加機能(すなわちインタプリタのデバッガ
4およびアプリケーションのデバッガ6)を選択する。
【0038】インタプリタ3の起動時の所定のパラメー
タにより優先度を設定する(例えばアプリケーションの
デバッガ、インタプリタのデバッガの順とする)。
【0039】ここで、機能選択用デコードテーブル21
が変更され、機能選択用フラグ設定処理20により、機
能選択用フラグ23のフラグが設定される。以上でイン
タプリタの初期化が終了する。
【0040】次に、アプリケーション(プログラム)7
を起動する。
【0041】アプリケーション7の最初の命令32をイ
ンタプリタ3がフェッチし(処理33参照)、この命令
を書き換え済みの機能選択用デコードテーブル21を用
いてデコードする(処理34)。
【0042】この場合、機能選択用デコードテーブル2
1のジャンプ先が、機能選択処理24の入り口(エント
リ)となっているので、制御が機能選択処理24に移
る。
【0043】機能選択処理24においては、フラグ判定
処理25で、初期化時に設定済みの機能選択用フラグ2
3の優先度1位のフィールド35を参照し、アプリケー
ションのデバッガ6を示しているので、アプリケーショ
ンのデバッガの処理を実行する。
【0044】アプリケーションのデバッガの処理の実行
が終了した後、フラグ判定処理26は、機能選択用フラ
グ23の優先度第2位のフィールド36を参照する。こ
の場合、インタプリタのデバッガ4を示しているので、
これを実行する。
【0045】次に、通常命令実行用デコードテーブル2
2によりデコード処理27を行う。そして命令実行ルー
チン37にジャンプし、最初の命令が実行される。
【0046】実行終了後、次の命令をフェッチする(処
理33)。以下同様にして処理を繰り返す。
【0047】付加機能の実行を止めるときは、その付加
機能内部において、機能選択用デコードテーブル21を
元に状態に復帰し、機能選択用フラグ23を消去する
(オフ状態とする)機能を作成しておくことにより実現
可能である。これにより、以降、デコード処理34にお
ける命令のデコード結果により、機能選択処理24に制
御が移ることはない。
【0048】次に、本発明の第2の実施形態について図
面を参照して説明する。
【0049】上記第1の実施形態として、付加機能が2
つ(インタプリタのデバッガおよび移植される前のシス
テム上で動作する、アプリケーションのデバッガ)の場
合を示したが、付加機能がN個(N>2)の場合にも、
機能選択用フラグ23のフィールドをN個に増やし、1
フィールドあたりN個の物が識別できる記憶領域(N>
2のn乗:nビットの領域)を確保することにより実現
可能である。
【0050】そして、第1の実施形態において、機能選
択処理内の機能選択用フラグの判定、機能の実行とそれ
ぞれ2回行われていた部分をN回実行するように作成す
ればよい。
【0051】図3は、機能選択用フラグを示したもので
ある。図3に示すように、最高に動作させる機能数をフ
ィールド数とし、1フィールドあたりの識別可能数が動
作可能な機能数となる(4ビットの場合15個)。すな
わち、フィールド数は実際に動作させる機能(付加機
能)数を表しており、フィールドは、複数の付加機能を
識別するためのビット列(ビットの組合せ)からなる。
【0052】“1000”は、アプリケーションのデバ
ッガ、“0100”は、インタプリタのデバッガという
具合に、予め付加機能と対応するコードを定めておき、
機能選択処理を作成する。
【0053】機能選択用デコードテーブル21を用いて
デコード処理34の結果ジャンプした機能選択処理24
では、第1フィールド35から順に参照して、対応する
機能を実行する。
【0054】
【発明の効果】以上説明したように、本発明に係るデバ
ッガ付きインタプリタによれば、インタプリタ全体の処
理の簡素化および高速化を達成するという効果を有す
る。
【0055】これは、通常実行時(デバッガを使用しな
い場合)の処理速度を低下させないためには、デコード
テーブルを変更して、デコード処理後の飛び先によって
付加機能(デバッガ機能)の処理と、通常命令実行処理
と、を選択する方法が好ましく、また複数の付加機能に
対してデコードテーブルを用意するのではなく、デコー
ドテーブルを1つとして、機能選択処理の中のフラグ判
定で選択を行うように、処理を1本化したことによる。
【0056】また、本発明によれば、記憶用資源の消費
の増大を抑止低減できるという効果を有する。
【0057】これは、上記従来技術では、付加機能の数
だけ、余分に必要とされていたデコードテーブルを、機
能選択処理の1本化により、1つで済むようにしたこと
による。
【図面の簡単な説明】
【図1】本発明に係るデバッガ付きインタプリタをコン
ピュータに適用した構成を示す図である。
【図2】本発明に係るインタプリタの一実施形態を説明
するための図である。
【図3】本発明に係るインタプリタの第2の実施形態を
説明するための図である。
【図4】従来技術の動作を示す図である。
【図5】従来のインタプリタにおけるデバッグ処理を説
明するための図である。
【符号の説明】
3 インタプリタ 4 インタプリタのデバッガ 6 システムB上のアプリケーション用デバッガ 7 アプリケーション 20 機能選択用フラグ設定処理 21 機能選択用デコードテーブル 22 通常命令実行用デコードテーブル 23 機能選択用フラグ 24 機能選択処理 25、26 フラグ判定 35 優先度第1位フィールド 36 優先度第2位フィールド 37 命令実行ルーチン

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】命令コードと該命令コードの解釈実行によ
    る処理との対応を格納したデコードテーブル、通常命
    令実行用のデコードテーブルと機能選択処理用のデコ
    ードテーブルと、を備え、 選択された付加機能に対応して設定される機能選択用の
    フラグを複数備え、 前記機能選択処理用のデコードテーブルを参照して命令
    コードをデコードした結果、機能選択処理手段に制御が
    移行した際に、前記機能選択処理手段、前記機能選択
    用のフラグを判定して、優先度に応じて前記選択された
    付加機能を実行し、前記機能選択処理手段で前記命令コードに対する前記付
    加機能を実行した後、前記命令コードを前記通常命令実
    行用のデコードテーブルを参照してデコードすること
    で、前記命令コードを通常命令として実行する、 ことを
    特徴とするインタプリタ。
  2. 【請求項2】付加機能を実行しない場合には、前記機能
    選択処理用のデコードテーブルを参照して命令コードを
    デコードした際に通常命令として実行される、ことを特
    徴とする請求項1記載のインタプリタ。
JP8080787A 1996-03-08 1996-03-08 デバッガ付きインタプリタへの機能付加方式 Expired - Fee Related JP2853647B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8080787A JP2853647B2 (ja) 1996-03-08 1996-03-08 デバッガ付きインタプリタへの機能付加方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8080787A JP2853647B2 (ja) 1996-03-08 1996-03-08 デバッガ付きインタプリタへの機能付加方式

Publications (2)

Publication Number Publication Date
JPH09244918A JPH09244918A (ja) 1997-09-19
JP2853647B2 true JP2853647B2 (ja) 1999-02-03

Family

ID=13728167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8080787A Expired - Fee Related JP2853647B2 (ja) 1996-03-08 1996-03-08 デバッガ付きインタプリタへの機能付加方式

Country Status (1)

Country Link
JP (1) JP2853647B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009288967A (ja) * 2008-05-28 2009-12-10 Fujitsu Ten Ltd 信号処理装置、表示制御装置、及び、信号処理装置のレジスタ設定方法

Also Published As

Publication number Publication date
JPH09244918A (ja) 1997-09-19

Similar Documents

Publication Publication Date Title
US9003422B2 (en) Microprocessor architecture having extendible logic
JP2818249B2 (ja) 電子計算機
JPS62197830A (ja) デ−タ処理システム
KR100983135B1 (ko) 패킷의 의존성 명령을 그룹핑하여 실행하는 프로세서 및 방법
US20230084523A1 (en) Data Processing Method and Device, and Storage Medium
KR20090073008A (ko) 연산 처리 장치 및 명령의 확장 방법
JP2970821B2 (ja) データ処理装置
JP2004529405A (ja) 依存性を決定するためのコンテンツ・アドレス指定可能メモリを実装したスーパースケーラ・プロセッサ
US20140223146A1 (en) Blank Bit and Processor Instructions Employing the Blank Bit
JP2853647B2 (ja) デバッガ付きインタプリタへの機能付加方式
JP2565495B2 (ja) デ−タ処理システム
JP2000284964A (ja) Vliwプロセッサにおける効率的なサブ命令エミュレーション
JP3619343B2 (ja) データ処理装置と方法
JP4159586B2 (ja) 情報処理装置および情報処理の高速化方法
JPH0377137A (ja) 情報処理装置
JP2883465B2 (ja) 電子計算機
JP2636821B2 (ja) 並列処理装置
JPH01291327A (ja) 処理モード先取り制御方式
JP2671161B2 (ja) レジスタ干渉チェック方式
JP2559924B2 (ja) プログラマブルコントローラ
JP3060917B2 (ja) プロセッサ
JP2785820B2 (ja) 並列処理装置
JP3197045B2 (ja) 拡張中央演算処理装置
JPH03204029A (ja) 情報処理装置
JPH0683614A (ja) マイクロコンピュータ

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19981020

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071120

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081120

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081120

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091120

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees