JPH0756777A - プログラム開発支援装置 - Google Patents

プログラム開発支援装置

Info

Publication number
JPH0756777A
JPH0756777A JP5204990A JP20499093A JPH0756777A JP H0756777 A JPH0756777 A JP H0756777A JP 5204990 A JP5204990 A JP 5204990A JP 20499093 A JP20499093 A JP 20499093A JP H0756777 A JPH0756777 A JP H0756777A
Authority
JP
Japan
Prior art keywords
address
program
execution
section
time
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
JP5204990A
Other languages
English (en)
Inventor
Ryuichi Ogawa
竜一 小川
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.)
Sharp Corp
Original Assignee
Sharp 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 Sharp Corp filed Critical Sharp Corp
Priority to JP5204990A priority Critical patent/JPH0756777A/ja
Publication of JPH0756777A publication Critical patent/JPH0756777A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】任意アドレス区間のプログラム実行時間が目標
時間を越えたことを検出するプログラム開発支援装置を
提供する。 【構成】区間開始アドレス設定レジスタ1、区間終了ア
ドレス設定レジスタ2にそれぞれ任意アドレス区間の開
始アドレス、終了アドレスを設定するとともに、その任
意アドレス区間を実行する目標時間を目標時間設定レジ
スタ7に設定し、ターゲットマイクロコンピュータでプ
ログラムの実行中に、アドレスバス11を介して現在の
実行アドレスを読み込み、これを前記開始アドレス、終
了アドレスと比較することで任意アドレス区間の実行の
有無を検出し、任意アドレス区間の実行中にクロック信
号CLOCKをカウントして、それを、目標時間と比較
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、マイクロコンピュー
タの開発において、特に、プログラムの任意区間の実行
効率を検証する機能を備えたプログラム開発支援装置に
関する。
【0002】
【従来の技術】従来から、マイクロコンピュータのプロ
グラムを検証するには、デバッカやインサーキット・エ
ミュレータ等のプログラム開発支援装置が用いられてい
る。これらのプログラム開発支援装置は、プログラムの
開発の為の各種機能を有し、プログラム開発を効率的に
行う。
【0003】そのようなプログラム開発支援装置の機能
の一つに、マイクロコンピュータのプログラムの任意区
間の実行効率を検証するために使用される実行時間計測
機能がある。
【0004】実行時間計測機能は、プログラムの任意の
区間の実行時間をリアルタイムに計測して、プログラム
実行後に実行時間を評価することができる。この実行時
間計測機能を実現する手段としては、例えば特開平3−
212744号公報に開示されているように、プログラ
ム実行時にマイクロコンピュータのアドレスを監視し
て、任意区間の開始アドレス検出回数をカウントするこ
とにより、任意回数目の任意区間が実行されていること
を検出し、任意区間が実行されている間、基準クロック
によってタイマカウンタを動作させ、後にタイマカウン
タ値を参照することにより実行時間を検証するものであ
る。
【0005】
【発明が解決しようとする課題】マイクロコンピュータ
のプログラム実行時間は、同じ区間内であってもその中
に記述された、条件分岐による特殊処理の実行、または
割り込み処理の実行により必ずしも同じ時間とは限らな
い。
【0006】そこで通常はプログラムを何度か実行する
が、その場合、従来の方法では、特開平3−21274
4号公報に示されるように、任意区間の実行時間は任意
回数目にのみ計測されるようになっており、任意区間の
最大実行時間を計測するようには構成されていなかっ
た。
【0007】マイクロコンピュータにおいては、任意区
間の実行時間に対して目標時間が定められていることが
あり、従来のように任意回数目の実行時間を計測するだ
けでは目標時間に対する実行時間の計測が正確さに欠け
る問題があった。
【0008】この発明は、マイクロコンピュータのプロ
グラムの任意区間の実行効率を検証するために設けられ
ている機能の利点を生かしながら、任意区間のプログラ
ム実行時間が目標時間を越えたことを検出することがで
きるプログラム開発支援装置を提供することを目的とす
る。
【0009】
【課題を解決するための手段】請求項1に記載した発明
は、プログラム中の任意アドレス区間を設定するアドレ
ス区間設定手段と、前記任意アドレス区間の実行に要す
る目標時間を設定する目標時間設定手段と、ターゲット
マイクロコンピュータでプログラムを実行時に、現在実
行中の実行アドレスを読み込み、その実行アドレスを前
記任意アドレス区間と比較して、前記任意アドレス区間
の実行検出を行うアドレス比較手段と、前記アドレス比
較手段によって検出される前記任意アドレス区間中のプ
ログラムの実行時間を検出し、該実行時間と、前記目標
時間とを比較する時間比較手段と、前記時間比較手段に
より、実行時間が目標時間を越えたことが検出されたと
きに、プログラムデバッグ処理を実行するデバッグ処理
手段と、を備えたことを特徴とする。
【0010】請求項2に記載した発明は、請求項1に記
載のプログラム開発支援装置において、アドレス区間設
定手段および目標時間設定手段を複数備えたことを特徴
とする。
【0011】請求項3に記載した発明は、請求項2に記
載のプログラム開発支援装置において、プログラム実行
履歴メモリを備えるとともに、前記デバッグ処理手段と
して、実行時間が目標時間を越えたことが検出された任
意アドレス区間を示すデータを、前記プログラム実行履
歴メモリに書き込む手段を備えたことを特徴とする。
【0012】請求項4に記載した発明は、請求項1〜3
のいずれかに記載のプログラム開発支援装置において、
前記デバッグ処理手段として、プログラムの実行を中断
する手段を備えたことを特徴とする。
【0013】
【作用】請求項1に記載の発明においては、予め、アド
レス区間設定手段に任意アドレス区間を設定するととも
に、目標時間設定レジスタに前記任意アドレス区間の目
標とする実行時間を設定しておき、プログラム実行処理
を開始すると、プログラム中の前記任意アドレス区間が
実行されるごとに、該任意アドレス区間の実行時間が計
測される。そして、任意アドレス区間の実行時間が設定
されている目標時間を越えたときに、デバッグ処理が実
行される。
【0014】請求項2に記載の発明においては、プログ
ラム中で実行時間を計測すべき任意アドレス区間を複数
設定し、各任意アドレス区間ごとの目標時間をそれぞれ
設定することができ、複数の任意アドレス区間の実行時
間を並行して計測することができる。そして、プログラ
ム実行中に目標時間を越えた場合にはデバッグ処理が実
行される。
【0015】請求項3に記載の発明においては、実行時
間が目標時間を越えた任意アドレス区間を示すデータが
プログラム実行履歴メモリに記憶されてゆき、後の参照
時にどの部分で実行時間を越えたしまったかを容易に認
識できる。
【0016】請求項4に記載の発明においては、実行時
間が目標時間を越えたときに、その時点でプログラムの
実行が中断され、その時々で状態を把握してゆくことが
できる。
【0017】
【実施例】以下、本発明の実施例を図面に基づいて説明
する。
【0018】図1は請求項1に対応する実施例であり、
プログラム開発支援装置の概略構成を示すブロック図で
ある。
【0019】区間開始アドレス設定レジスタ1、区間終
了アドレス設定レジスタ2は、プログラム中の任意アド
レス区間の開始アドレスと終了アドレスが設定されるレ
ジスタであり、任意アドレス区間の開始アドレス,終了
アドレスは制御バス10を通じて図外の入力部から設定
される。この入力部はテンキー等で構成される。制御バ
ス10には、プログラム開発支援装置を制御するための
アドレスバス、データバス、コントロールバス等が含ま
れている。
【0020】任意アドレス区間の実行目標時間は、目標
時間設定レジスタ7に、制御バス10を通じて図外の入
力部から設定される。目標時間設定レジスタ7の内容
は、カウンタ制御回路6からの目標時間ロード指令信号
S6によってカウンタ8へ初期値としてロードされる。
【0021】コンパレータ3は、区間開始アドレス設定
レジスタ1に設定されたデータと、ターゲットマイクロ
コンピュータのアドレスバスS1のデータとを比較し、
一致したならば、区間開始アドレス検出信号S2を発生
する。
【0022】コンパレータ4は、区間終了アドレス設定
レジスタ2に設定されたデータと、ターゲットマイクロ
コンピュータのアドレスバス11のデータ信号S1とを
比較し、一致したならば、区間終了アドレス検出信号S
3を発生する。
【0023】RSフリップフロップ5は、区間開始アド
レス検出信号S2によってセットされ、区間終了アドレ
ス検出信号S3によってリセットされる。そして、セッ
ト期間中、任意アドレス区間をマイクロコンピュータが
実行中であることを示す任意区間実行ステータス信号S
4を発生する。
【0024】カウント制御回路6は、制御バス10、任
意区間実行ステータス信号S4がアクティブ状態から非
アクティブ状態になったときに、目標時間設定レジスタ
7の内容をカウンタ8へ転送する。
【0025】カウント許可信号S6は、任意アドレス区
間実行中にアクティブ状態になり、カウンタ8のカウン
ト動作を許可する。
【0026】カウンタ8は、カウントクロックCLOC
Kが入力される毎に目標時間設定レジスタ7に格納され
た値を初期値としてカウント動作を行う。カウンタ8が
ダウンカウントで構成されているときは、ボロー信号を
検出することによりカウントオーバーフロー信号S9が
発生する。カウンタ8がアップカウンタで構成されてい
るときは、キャリー信号を検出することによりカウント
オーバーフロー信号S9が発生する。
【0027】トリガ発生回路9は、カウントオーバーフ
ロー信号S9を検出することにより開発支援装置に用意
されている各種デバッグ回路起動信号S10を発生す
る。
【0028】動作を説明する。まず、予め、区間開始ア
ドレス設定レジスタ1に任意アドレス区間の開始アドレ
スを設定し、区間終了アドレス設定レジスタ2に任意ア
ドレス区間の終了アドレスを設定するとともに、目標時
間設定レジスタ7にその任意アドレス区間の実行目標時
間を設定する。そして、ターゲットマイクロコンピュー
タでプログラムを実行する。すると、コンパレータ3,
4によって、ターゲットマイクロコンピュータのアドレ
スバス11のデータ(実行アドレス)S1が、前記区間
開始アドレス設定レジスタ1,区間終了アドレス設定レ
ジスタ2の値と比較されて、任意アドレス区間が認識さ
れ、その区間の実行時間が目標時間設定レジスタ7に記
憶されている目標時間と比較される。そして、任意アド
レス区間の実行時間が目標時間設定レジスタ7に記憶さ
れている目標時間を越えていればデバッグ回路起動信号
10が発生され、それが各種デバッグ装置に入力され
る。
【0029】上記のように、プログラム開発支援装置
で、ターゲットマイクロコンピュータで実行中のプログ
ラムの実行アドレスをターゲットマイクロコンピュータ
のアドレスバス11を介して読み込み、その実行アドレ
スをプログラム開発支援装置内で任意アドレス区間と比
較して任意アドレス区間を認識し、その間の実行時間を
目標時間と比較するから、実際のプログラムに何ら手を
加えることなく、任意アドレス区間の実行時間を目標時
間と比較することができる。
【0030】デバッグ回路起動信号S10は、例えばブ
レーク処理回路に入力されている場合、目標時間オーバ
ーでプログラムをブレークしてデバッグすることができ
る。
【0031】また、リアルタイムトレース処理回路に入
力されている場合は、目標時間オーバー箇所をトレース
メモリに書き込み、デバッグすることができる。
【0032】図2は請求項2に対応する実施例であり、
複数(n区間)の任意アドレス区間の指定を可能とする
プログラム開発支援装置の実施例を示す概略ブロック図
である。
【0033】この実施例では、複数(n区間)の任意ア
ドレス区間が読み出し/書き込み可能なメモリ(RA
M)に設定される。このメモリは区間開始アドレスメモ
リ21および区間終了アドレスメモリ22からなり、各
メモリ21,22には制御バス26、ターゲットマイク
ロコンピュータのアドレスバス27が接続されている。
【0034】RSフリップフロップ51,52・・・5
n、カウンタ制御回路61,62・・6n、目標時間設
定レジスタ71,72・・・7n、およびカウンタ8
1,82・・・8nは、図1示した構成と同様の構成で
ある。それぞれが個別に、任意アドレス区間の実行時間
と目標時間とを比較する。例えば、フリップフロップ5
1,カウンタ制御回路61,目標時間設定レジスタ7
1,カウンタ81は、第1の任意アドレス区間の実行時
間と目標時間とを比較し、フリップフロップ5n,カウ
ンタ制御回路6n,目標時間設定レジスタ7n,カウン
タ8nは、第nの任意アドレス区間の実行時間と目標時
間とを比較する。
【0035】この実施例の装置においては、図1に示し
たコンパレータによる比較動作と同様の処理はメモリ2
1,22の部分で行われる。この動作の説明をする。
【0036】メモリ21,22のアドレスは、ターゲッ
トマイクロコンピュータが指定可能なアドレス分のビッ
ト数で構成されている。また、メモリ21,22からフ
リップフロップ51,52・・・5nへ出力されるデー
タバスは、フリップフロップ数分のビット数、すなわち
nビットで構成されている。そして、各フリップフロッ
プ51,52・・・5nへの入力には、それぞれデータ
バスの0,1・・・n−1が割り当てられている。
【0037】任意アドレス区間の区間開始アドレスは、
制御バス26を介して図外の入力部から区間開始アドレ
ス用メモリ21に設定される。これは、区間開始アドレ
スメモリ21内の、区間開始アドレスと同一のアドレス
に、該当するフリップフロップをセットするためのデー
タを設定することで実行される。同様に、区間終了アド
レスメモリ22には、区間終了アドレスと同一のアドレ
スに、該当するフリップフロップをリセットするための
データが設定される。
【0038】例えば、いま、第1の任意アドレス区間の
開始アドレスが100番地、終了アドレスが1000番
地であるとする。この場合には、区間開始アドレスの1
00番地の0ビット目に『1』を設定し、区間終了アド
レスの1000番地の0ビット目に『1』を設定する。
すると、ターゲットマイクロコンピュータにおいてプロ
グラムの実行中、アドレスバス27からメモリ21,2
2に入力される現在の実行アドレスが100番地になる
と、フリップフロップ51のセット端子には『1』が入
力される。また、プログラムの実行アドレスが1000
番地になると、フリップフロップ51のリセット端子に
『1』が入力される。これによって、100番地から1
000番地の間で、フリップフロップ51をセット状態
にすることができる。
【0039】任意アドレス区間の実行時間が目標時間を
越えると、越えたことを検知したカウンタ81,82・
・・8nからは、オーバーフロー信号S21,S22・
・・S2nが出力される。オーバーフロー信号S21,
S22・・・n2nはステータス検出回路23へ入力さ
れる。ステータス検出回路23は、どのカウンタからオ
ーバーフロー信号S21,S22・・・S2nが出力さ
れたかを検出し、その検出結果を制御バス26を介して
制御部へ送る。また、オーバーフロー信号S21,S2
2・・・S2nはORゲート回路24を介してトリガ発
生回路25へ入力され、トリガ発生回路25は、いずれ
かのカウンタからオーバーフロー信号か出力されたとき
に、デバッグ回路起動信号S10を出力する。
【0040】図3は請求項3に対応する実施例を示すプ
ログラム開発支援装置の制御部のブロック図である。
【0041】同装置は、中央処理装置(CPU)31に
よって制御される。ROM32は読み出しのみ可能なメ
モリであり、制御プログラム等が書き込まれている。R
AM33は読み出し/書き込み可能なメモリであり、プ
ログラム実行時のワーキングエリアとして用いられる。
RAM33にはプログラム実行履歴メモリM1が設けら
れている。プログラム実行履歴メモリM1は図2に示す
制御バス26を介して送られるステータス検出回路23
のデータを記憶する。プログラム実行履歴メモリM1は
例えば、n個のフラグからなり、オーバーフロー信号が
出力されたカウンタがカウントした任意アドレス区間の
フラグがセットされる。これによってどの任意アドレス
区間でオーバーフローが発生したかを認識できる。
【0042】入力部34はテンキー等からなり、任意ア
ドレス区間の区間開始アドレス,区間終了アドレスや、
目標時間等を入力する。表示パネル35は液晶パネル等
からなる。表示パネル35には、プログラム実行履歴メ
モリM1に記憶されている各任意アドレスのオーバーフ
ロー状態等が表示される。この表示としては、何番目の
フラグがセットされているかを表示するだけでもよい
が、任意アドレス区間の入力時にその任意アドレス区間
のデータをRAM33に記憶しておき、そのアドレスと
ともに表示してもよい。
【0043】図4は請求項4に対応する実施例を示すフ
ローチャートである。
【0044】デバッグ回路起動信号が入力されると、実
行中のプログラムを中断する処理を行う(n1→n
2)。すなわち、ターゲットマイクロコンピュータに処
理中断信号を出力する。そして、図3に示した実施例の
装置の場合には、プログラム実行履歴メモリM1の内容
や、各レジスタ内容等の表示を行う(n3)。
【0045】
【発明の効果】請求項1に記載した発明によれば、プロ
グラム開発支援装置で、ターゲットマイクロコンピュー
タで実行中のプログラムの実行アドレスを読み込み、そ
の実行アドレスをプログラム開発支援装置内で任意アド
レス区間と比較して任意アドレス区間を認識し、その間
の実行時間を目標時間と比較するから、実際のプログラ
ムに何ら手を加えることなく、任意アドレス区間の実行
時間を目標時間と比較することができる。
【0046】請求項2に記載した発明によれば、複数の
任意アドレス区間の実行時間を並行して検証してゆくこ
とができ、デバッグ処理を効率良く行うことができる。
【0047】請求項3に記載した発明によれば、実行時
間が目標時間を越えたアドレス区間を示すデータがプロ
グラム実行履歴メモリに書き込まれるため、複数の任意
アドレス区間の検証を行う場合でも実行時間が目標時間
を越えたしまった任意アドレス区間を容易に認識でき
る。
【0048】請求項4に記載した発明によれば、実行時
間が目標時間を越えたしまったときにプログラムの実行
が中断され、現在の状態を認識できる。
【図面の簡単な説明】
【図1】請求項1に対応する図であり、任意アドレス区
間の時間計測部分の構成を示すブロック図である。
【図2】請求項2に対応する図であり、複数の任意アド
レス区間の時間計測部分の構成を示すブロック図であ
る。
【図3】請求項3に対応する図であり、実施例のプログ
ラム開発支援装置の制御部のブロック図である。
【図4】請求項4に対応する図であり、プログラム中断
手順を示すフローチャートである。

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】プログラム中の任意アドレス区間を設定す
    るアドレス区間設定手段と、 前記任意アドレス区間の実行に要する目標時間を設定す
    る目標時間設定手段と、 ターゲットマイクロコンピュータでプログラムを実行時
    に、現在実行中の実行アドレスを読み込み、その実行ア
    ドレスを前記任意アドレス区間と比較して、前記任意ア
    ドレス区間の実行検出を行うアドレス比較手段と、 前記アドレス比較手段によって検出される前記任意アド
    レス区間中のプログラムの実行時間を検出し、該実行時
    間と、前記目標時間とを比較する時間比較手段と、 前記時間比較手段により、実行時間が目標時間を越えた
    ことが検出されたときに、プログラムデバッグ処理を実
    行するデバッグ処理手段と、 を備えたことを特徴とするプログラム開発支援装置。
  2. 【請求項2】請求項1に記載のプログラム開発支援装置
    において、 アドレス区間設定手段および目標時間設定手段を複数備
    えたことを特徴とするプログラム開発支援装置。
  3. 【請求項3】請求項2に記載のプログラム開発支援装置
    において、 プログラム実行履歴メモリを備えるとともに、 前記デバッグ処理手段として、実行時間が目標時間を越
    えたことが検出された任意アドレス区間を示すデータ
    を、前記プログラム実行履歴メモリに書き込む手段を備
    えたことを特徴とするプログラム開発支援装置。
  4. 【請求項4】請求項1〜3のいずれかに記載のプログラ
    ム開発支援装置において、 前記デバッグ処理手段として、プログラムの実行を中断
    する手段を備えたことを特徴とするプログラム開発支援
    装置。
JP5204990A 1993-08-19 1993-08-19 プログラム開発支援装置 Pending JPH0756777A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5204990A JPH0756777A (ja) 1993-08-19 1993-08-19 プログラム開発支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5204990A JPH0756777A (ja) 1993-08-19 1993-08-19 プログラム開発支援装置

Publications (1)

Publication Number Publication Date
JPH0756777A true JPH0756777A (ja) 1995-03-03

Family

ID=16499650

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5204990A Pending JPH0756777A (ja) 1993-08-19 1993-08-19 プログラム開発支援装置

Country Status (1)

Country Link
JP (1) JPH0756777A (ja)

Similar Documents

Publication Publication Date Title
JPH0756777A (ja) プログラム開発支援装置
JPS5840772B2 (ja) デ−タ比較一致表示方式
JP3002341B2 (ja) ロジックアナライザ
JPH03118644A (ja) プログラム実行モニタ
JP2808985B2 (ja) 情報処理装置及びデバッグ装置
WO1981003078A1 (en) Relational break signal generating device
JPH1165897A (ja) デバッガ内蔵マイクロプロセッサ
JPH02272947A (ja) 障害監視方式
JPH11102306A (ja) エミュレータ
JPH0736735A (ja) デバッグ装置
JPH05189277A (ja) プログラマブルコントローラのプログラム実行時間測定装置
JPH02127740A (ja) エミュレータ
JPH03158972A (ja) シミュレータ
JPS603757A (ja) デバツグ装置
JPH0354645A (ja) プログラム実行時間測定装置
JPH0619752A (ja) マイクロコンピュータ
JPS6072026A (ja) マイクロコンピユ−タ
JPH01214942A (ja) インサーキット・エミュレータ
JPH01243140A (ja) コントローラ
JPH06259283A (ja) プログラム開発支援装置
JPH0322146A (ja) マイクロプログラム制御装置
JPS6269172A (ja) 集積回路の試験装置
JPS63131082A (ja) Ic試験装置
JP2005267349A (ja) プロセッシングモジュールおよびその制御方法
JPH04262474A (ja) ワンチップマイクロコンピュータ