JPS63223930A - 専用プロセツサのプログラムのシミユレ−シヨン方式 - Google Patents

専用プロセツサのプログラムのシミユレ−シヨン方式

Info

Publication number
JPS63223930A
JPS63223930A JP62056538A JP5653887A JPS63223930A JP S63223930 A JPS63223930 A JP S63223930A JP 62056538 A JP62056538 A JP 62056538A JP 5653887 A JP5653887 A JP 5653887A JP S63223930 A JPS63223930 A JP S63223930A
Authority
JP
Japan
Prior art keywords
instruction
program
simulation
assembler
processor
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
JP62056538A
Other languages
English (en)
Inventor
Michimutsu Oami
大網 通睦
Tadashi Okada
正 岡田
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62056538A priority Critical patent/JPS63223930A/ja
Publication of JPS63223930A publication Critical patent/JPS63223930A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、専用プロセッサのプログラムのシミュレーシ
ョン環境を提供することに関する。
[従来の技術] マイクロコンピュータのプログラムシミュレーシ書ンに
ついては、特開昭60−254534号のようニ、シミ
ュレーシ曹ン対象フロクラムヲシミュレータ装置に接続
されたマイクロコンピュータにロードし、シミュレーシ
ョンする方法が知られている。
〔発明が解決しようとする問題点〕
上記従来技術は、命令コードを実行するハードウェアを
必要とするため、専用プロセッサの様にプロセッサのハ
ードウェアと、そのプロセッサ上で走行するグミグラム
開発が同時進行する様な場9には、実ハードウェアが無
いためプログラムデバッグができないという問題があっ
た。また、第6図に示す様にプログラム開発支援装置1
がコンソール2からの指示により外部記憶装置3から命
令コードを命令コードメモリ4へ格納し、コンソ−ル2
からの指令により、プロセッサ擬似プログラム5を起動
し、プロセッサ擬似プログラム5は命令コードメモリか
ら1命令ずつ読出しシミュレーションを行う。ここでコ
ントロールプログラム1はシミュレーション全体の制御
を行うプログラムである。この方法においては、例えば
、加算命令Al)DN、L8Ro 、LSR9とい5命
令を実行させる場合、プロセッサ擬似プログラム5で行
う処理手順は第7図の様になる。ここで命令AυL)S
LSRO、L8’H,5は、プロセッサ内レジスタI、
SROとLSR9を加算し、第1オペランドでS指定が
なされていた場合は結果をLSI(OとWORに格納し
、第1オペランドでN指定がなされた場合にはWOnの
みに格納する。第7図から明らかな様に多くの判定処理
を必要とするためシミュレーシ盲ン実行時間が遅(なる
という問題があった。さらK、この方法では、命令コー
ドを擬似するプロセッサ擬似プログラムと、シミュレー
ション全体制御と命令中断点の設定や、メモリのデータ
参照、設定、および、トレース機能カバレージ機能等を
行うコントロールプログラムが存在し、シミュレーショ
ンの構造が複雑になるという問題があった。
本発明の目的は、専用プロセッサ等のプログラムデバッ
グのために、実際のハードウェアを使用することなく、
高速で簡単なシミュレーシジンシステムを提供するとと
にある。
〔問題点を解決するための手段〕
本発明によれば、専用プロセッサの命令コードのもつ機
能をプロセッサ擬似プログラムによるインタプリント形
式のシミュレーションの代わりに、専用プロセッサの命
令コード機能を最適化した形で、汎用コンビエータ、も
しくは、プログラム開発支援装置(以下、汎用コンピュ
ータと略す)で直接処理可能な機械語と、汎用コンピュ
ータ、もしくは、プログラム開発支援装置の命令と専用
プロセッサの命令との差により生ずる命令アドレスの相
違を吸収し、トレース、カバレージ、等を行うシミュレ
ーションスケジューラを呼ぶ命令、とを生成するマクロ
アセンブラを用い、アセンブルにより得られた命令コー
ドと、専用グロセッサ毎に用意スるシミュレーションス
ケジューラとを命令コードメモリヘロードし、汎用コン
ピュータ自身の命令コードアドレスに対して、中断点の
設定。
データ参照、設定機能を有するコン)O−ルプログラム
とにより、ハードウェアを不要とし、高速で簡単なシミ
ュレーションを可能とする。
[作用] マクロアセンブラは、マクロ制御のためのマクロ制御文
と、汎用コンビエータの命令を記述するアセンブラとか
ら成る。マクロ制御文は、マクロ名称の定義を行5MA
CRO制御文と、マクロ終了を示すMTE几M制御文と
、カウンタとして動作し・1回記述される毎に+1した
値を、制御命令を記述した番地へ書込むMCNT制御命
令と、MC:NT制御命令で使用するカウンタに初期値
を与えるMSET制御命令と マクロのオペランド情報
を判定し分岐を行5MIF制御文と、MIF制御文の分
岐先となるMNEXT制御文と、マクロ制御文への分岐
を行うためのMJUMP制御命令と、アセンブラ命令に
重複しない記号名称を与えるMSEQ制御文とから成る
。専用プロセッサの命令に汎用プロセッサの7センプラ
命令と重複しない命令名称を与え、MACRO、MTE
几M制御文によりマクロとして登録する。オペランド情
報の引渡しは、MACRO制御文にパラメータを記述す
ることで行う。
オペランド情報の組合せにより複数ある動作の内1つが
静的に決定されてしまう場合MIF 、MNEXT 、
MJUMP制御命令によりオペランド情報の組合せを判
定し、専用プロセッサの命令動作のみを記述したアセン
ブラ命令を生成する。これにより、専用プロセッサの命
令コード機能を最適化した形でシミュレーション可能と
なる。ここで、MACRO、MTfiRM、MIF 、
MJUMP 、MNEXT制御命令はオブジェクトコー
ドな生成しない。MCNT制御令令は、1つのマクロ中
に1回だけシジェレーションスケジューラを起動する命
令の次の番地に記述する。これにより、専用プロセッサ
1命令に対応するマクロに、モジュール先頭から順番に
番地付けが可能となり、マクロのアセンブルにより得ら
れるオブジェクトをシミュレーションしり時、シミュレ
ーションスケジューラに、シミュレートしている命令が
専用プロセッサ上でどの番地の命令かを通知できる。こ
のことにより、専用プロセッサアドレス空間でのカバレ
ージ、トレースが可能となる。さらに、MCNT制御命
令とペアで、専用プロセッサ命令コードを設定すること
により、実行命令コードをシミュレーションスケジュー
ラに通知でき、実行した命令の使用分布の測定が可能と
なる。
シミュレーションスケジューラは、専用プロセッサの1
命令をシミユレートする汎用コンビエータの命令群から
、専用プロセッサアドレス、命令コードをパラメータと
して起動され、カバレージ、トレース等の処理を実行し
、起動元へ復帰する。
シミュレーション全体のオーバヘッドを少なくスるため
に、シミュレーションスケジューラで行5これらの処理
は、スイッチで選択可能とする。専用プロセッサの1命
令は、汎用コンピュータの数命令を用いて動作をシミユ
レートする。このため前記に述べた様にアドレス相違を
吸収するためにシミュレーシlンスケジェーラを設け、
これヲ解決する。グミグラム中断点の設定については、
シミニレ−シランスケジューラ内に持つ、中断点テーブ
ルに中断点としたい専用プロセッサアドレスを、標準シ
ミュレータのデータ設定機能を用いて登録スる。さらに
、シミュレーションスケジューラ内の中断点検出アドレ
スを標準シミュレータの中断点設定機能により、中断点
として設定するシミュレーションスケジューラは起動さ
れる毎に、中断点テーブルをサーチし、一致したアドレ
スが存在した場合、中断点検出アドレスへ分岐する。
中断点検出アドレスには呼元への分岐命令が入っている
。また、このとき、テーブルサーチにより一致を検出し
たアドレスを中断点アドレスエリアに登録しておく。こ
のエリアを標準シミュレータのデータ参照機能によりチ
ェックすれば、中断したアドレスを確認できる。このこ
とにより標準シミュレータにより、専用プロセッサ命令
アドレスでの中断指定が可能となる。シミュレーション
続行は、標準シミュレータでサポート−jるFLUN:
zWンドにより行う。
上記手段により、専用プロセッサのプログラムを汎用コ
ンピュータでシミュレータ1フ可能とする。
〔実施例〕
以下、本発明の実施例を図を用いて説明する。
第1図は、専用プロセッサのプログラム例で、MSET
制御文6により、このプログラムモジエールの開始アド
レスを100としている。ADD 7SUB7は、専用
プロセッサの命令のマクロ記述である。C0MN3は、
共通変数を示し、モジエール間に渡って共通に参照、更
新する変数を定義し。
専用プロセッサのハードウェアリソースを変数として定
義する。
第2図は、ADDのマクロ記述内容例である。MAct
(,010によりマクロ宣言を行い、BASE tl。
USE 11により、このマクロ内のペースレジスタを
定義する。この例ではBRlをベースとしている。また
、USE 11はアセンブラに対してペースレジスタを
知らせる命令である。CALL 12は、シミュレーシ
ョンスケジューラを呼ぶ命令でMCNT 1s 、 D
C1sにより、専用プロセッサの命令アドレス、この場
合100 + Oで100番地と、命令コードX34′
をパラメータとして生成している。
14は、Al)D 8 、 C3Ro 、 CSル9を
シミュレートするための汎用コンビエータのアセンブラ
命令で、&OP2.&OPにはアセンブラにより、LS
Ro、LaB5が埋込まれる。MIF15により&OP
1を判定し、Nならばマクロを終了し、N以外ならば次
の命令ST Ga4 、&OP 1を展開スル。DOW
N16は、マク口内ペースレジスタB1(1の開放を行
う。
第3図は、At)L) S 、 LSRo 、 USル
9命令をアセンブルしてマクロ展開した例である。
第4図は、シミュレーシlンスケジェーラの処理フロー
である。
第5図は、汎用コンピュータ23と、コンソール26と
、標準シミュレータを持つコントロールプログラム24
と、アセンブル結果を格納する命令コードメモリ25と
から構成されるシミエレーシ1ンシステムである。
まず、第1図で示す専用プロセッサプログラムは汎用コ
ンビーータの命令コードを生成するアセンブラによりマ
クロ展開しアセンブラ命令に展開する。たとえば、第1
図のADD7命令は、第2図のADDマクロにより第3
図に示す様忙展開する。第1図のSUB 7命令も同様
に展開される。
このアセンブラから得られるオブジェクトモジュールと
、他のオブジェクトモジュール及びシミュレーシ曹ンス
ケジューラとをリンクし、汎用コンビエータで実行可能
なロードモジー−ルを生成する。ロードモジュールは、
第5図に示す命令コードメモリ25にロードされる。こ
のとき、第1図に示す専用グミセッサのハードウェアリ
ソースを記述した変数9もロードされる。汎用コンピュ
ータ上で、コンソール26からの指示により、専用プロ
セッサ上の命令アドレスにより、プログラム中断点を、
第4図のシミュレーシヲンスケジェーラ内の中断点テー
ブル22に登録し、R,UNコマンドを投入しシミュレ
ーション開始を指令する。第5図のコントロールプログ
ラム24は、第1図のAt)D 7 、5UB7命令を
実行する毎に、シミュレーシッンスケジューラへ、第3
図のCALL 8C:M8C17命令により分岐する。
シミュレーションスケジェーラは、第4図の中断点有り
の判定命令20により、中断点有りのスイッチが有効と
なっていれば、中断点テーブルサーチ処理21を実行し
、一致したアドレスが中断点テーブルに存在すれば、中
断点アドレス27へ分岐する。前もって、このアドレス
をコントロールプログラムにより、汎用コンピュータ上
のアドレスで中断点として登録しておけば、専用グミセ
ッサのアドレスにより中断を検出できる。このとき図に
は示していないが、中断した専用プロセッサアドレスを
特定エリアに格納してお(ことにより、複数ある中断点
のうち有効となった中断7ド°レスをコントロールプロ
グラムのデータ参照機能により参照できる。この中断に
より、チェックしたいハードウェアリソースを、コント
ロールプログラムのデータ参照機能によりチェックする
たとえば、At)I)命令の結果チェックとしてIjS
Roの内容をチェックする。コンソールから、RUNコ
マンドを指令することで、第4図の無条件分岐27命令
が実行され、シミュレーシヲンスケジェーラから1、第
3図の19の命令へ復帰し、シミュレーションを続行す
る。
本実施例によれば、専用グミセッサの命令、たトエば、
At)D S 、LSRO、C8R9を最適化した汎用
コンビエータの複数命令に展開可能であり0、シミエレ
ーシッンスケジェーラにより、専用プロセッサ命令アド
レスでのプログラムの中断、及び、処理続行が可能であ
り、さらに、シミエレーシッンスケジェーラに渡される
。専用プロセッサ命令番地、命令コードにより、カバレ
ージ、トレース、実行命令解析が可能である。
〔発明の効果〕
以上、述べたごとく、本発明によれば、専用プロセッサ
の命令を汎用コンピュータ上の、汎用コンピュータ自身
のマシン命令をシミュレーションするシミュレータでデ
バッグでき、専用グロセ、ツサのプログラム開発を専用
プロセッサのハードウェアなしで、かつ、高速なプログ
ラムシミュレータを構築できる。
【図面の簡単な説明】
第1図は、本発明の一実施例の専用プロセッサの命令を
マクロを使ってコーディングした説明図、tJ112図
は、本発明によるマクロ命令の説明図、第5図は、第1
図のADD命令、第2図のマクOKよりマクロ展開した
例を示す説明図、第4図はシミエレーシ冒ンスケジュー
ラの流れ図、第5図は、汎用コンピュータでのシミュレ
ーション実行部の構成図、第6図は、従来のプログラム
開発支援装置の説明図、第7図はインタブリット方式の
プログラムシミュレータの命令シミュレーションの処理
流れ図である。 1・・・プログラム開発支援装置、 7・・・専用プロセッサの命令をマクロで記述、12・
・・シミエレーシロンスケジェーラ起動命令、21・・
・中断点テーブルサーチ処理。

Claims (1)

    【特許請求の範囲】
  1. 1、専用プロセッサのプログラムのシミュレーションに
    おいて、汎用コンピュータ上にマクロ定義機能を有し汎
    用コンピュータで実行可能な命令コードを生成するアセ
    ンブラと、マクロのアセンブルによって得られた命令コ
    ードをデバッグするために、データメモリ、命令コード
    メモリの参照、および、書換え、任意番地からのプログ
    ラム実行、中断機能を有する標準シミュレータとを備え
    、専用プロセッサの命令動作をマクロ定義により汎用コ
    ンピュータで実行可能な形式に表わし、アセンブルした
    結果を標準シミュレータにより専用プロセッサの命令コ
    ードを間接的にデバッグすることを特徴とする専用フロ
    セッサのプログラムのシミュレーション方式。
JP62056538A 1987-03-13 1987-03-13 専用プロセツサのプログラムのシミユレ−シヨン方式 Pending JPS63223930A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62056538A JPS63223930A (ja) 1987-03-13 1987-03-13 専用プロセツサのプログラムのシミユレ−シヨン方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62056538A JPS63223930A (ja) 1987-03-13 1987-03-13 専用プロセツサのプログラムのシミユレ−シヨン方式

Publications (1)

Publication Number Publication Date
JPS63223930A true JPS63223930A (ja) 1988-09-19

Family

ID=13029863

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62056538A Pending JPS63223930A (ja) 1987-03-13 1987-03-13 専用プロセツサのプログラムのシミユレ−シヨン方式

Country Status (1)

Country Link
JP (1) JPS63223930A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146731A (ja) * 2004-11-24 2006-06-08 Ricoh Co Ltd プログラム、記憶媒体、アセンブラ装置、コンパイラ装置、シミュレータ装置及びエミュレータ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006146731A (ja) * 2004-11-24 2006-06-08 Ricoh Co Ltd プログラム、記憶媒体、アセンブラ装置、コンパイラ装置、シミュレータ装置及びエミュレータ装置

Similar Documents

Publication Publication Date Title
CA2211505C (en) Setting instance breakpoints in object oriented computer programs
JPH05505695A (ja) 多重アーキテクチャ環境内で特にコードのデバッグを行う改良したソフトウェア・デバッグ・システムと方法
JPH03188535A (ja) プログラム・エラー検出方法
US20020129336A1 (en) Automatic symbol table selection in a multi-cell environment
JPS63223930A (ja) 専用プロセツサのプログラムのシミユレ−シヨン方式
JPH06309193A (ja) 機械語プログラムの動作検証方法および装置
EP0801348A1 (en) Method of monitoring the operation of a computer
JP2828590B2 (ja) マイクロプログラム検証方法
JP3745968B2 (ja) 試験システム及び試験方法及び試験プログラム及び試験プログラムを記録した計算機で読み取り可能な記録媒体
WO2024069730A1 (ja) デバッグ装置及びデバッグ方法
JP3424548B2 (ja) 組み込み機器用ソフトウエア論理シミュレータ
JP2659366B2 (ja) デバッグ方法及びその装置
JP2924080B2 (ja) 論理シミュレーション支援システム
AU2001237027A1 (en) Tcl pli, a framework for reusable, run time configurable test benches
JPH0283749A (ja) マイクロプロセッサの内部割込み制御方式
JP3085309B2 (ja) デバッグシステム
JPH05250221A (ja) シミュレータ実行方式
JPH04123144A (ja) デバッグ装置
JPS5835648A (ja) プログラム実行制御方式
KR0175469B1 (ko) 칠프로그램 변수의 가시성 제어방법
JPS63178341A (ja) プログラムデバツグ方式
JPH08212103A (ja) マルチスレッド・プロセッサのテスト・データ作成方法
JPH02110636A (ja) タグ・アーキテクチャマシンのデバッグ装置とそのコンパイラ
KR20100031808A (ko) 가상 플랫폼을 이용한 프로그램 작성과 디버깅 방법 및 장치
JPH01188956A (ja) プログラム例外処理方式