JPH11167501A - プログラムデバッグシステムとそのデバッグ方法 - Google Patents

プログラムデバッグシステムとそのデバッグ方法

Info

Publication number
JPH11167501A
JPH11167501A JP9349945A JP34994597A JPH11167501A JP H11167501 A JPH11167501 A JP H11167501A JP 9349945 A JP9349945 A JP 9349945A JP 34994597 A JP34994597 A JP 34994597A JP H11167501 A JPH11167501 A JP H11167501A
Authority
JP
Japan
Prior art keywords
debug command
target device
program
execution result
function unit
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
JP9349945A
Other languages
English (en)
Inventor
Hirokazu Shibata
広和 柴田
Masami Yamaguchi
政巳 山口
Takeo Oshima
健夫 大島
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.)
OKI TSUSHIN SYSTEM KK
Oki Electric Industry Co Ltd
Original Assignee
OKI TSUSHIN SYSTEM KK
Oki Electric Industry 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 OKI TSUSHIN SYSTEM KK, Oki Electric Industry Co Ltd filed Critical OKI TSUSHIN SYSTEM KK
Priority to JP9349945A priority Critical patent/JPH11167501A/ja
Publication of JPH11167501A publication Critical patent/JPH11167501A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【解決手段】 対象装置10のファームウェア14に
は、プログラム本体の他にデバッグコマンドを受信し、
解釈し、実行し、その結果を返答する機能が付加され
る。上位装置1からデバッグコマンド8が対象装置10
に送信されると、対象装置10のファームウェア14が
そのデバッグコマンドを解釈し実行してデータダンプ、
レジスタ参照や設定、トレース等の処理を行う。その結
果は上位装置1に返され表示される。 【効果】 対象装置10のCPU12を用いてファーム
ウェア14のデバッグ作業を直接行えるため、デバッグ
が簡便になる。また、ICEが不要になる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CPU(中央処理
装置)によって動作を制御する各種の装置の、ファーム
ウェア開発段階において、ファームウェアのデバッグを
行うためのプログラムデバッグシステムとそのデバッグ
方法に関する。
【0002】
【従来の技術】CPUを搭載して動作する装置には、そ
の装置の制御に適したプログラム(ファームウェア)が
開発されてインストールされる。例えば、伝送装置のフ
ァームウェアの開発段階では、伝送装置を制御するCP
Uが正常にそのファームウェアを実行するかどうかを検
証するために、繰り返しデバッグ作業が行われる。この
作業には、インサーキット・エミュレータ(ICE)が
使用される。ICEは、予め対象装置において実行され
るファームウェアをローディングし、対象装置のCPU
に代わってそのファームウェアを実行する。プログラマ
ーは、ICEに接続したパーソナルコンピュータから、
プログラムの一時停止、データ(変数)のダンプ、レジ
スタの参照や設定、トレースといったコマンドを入力
し、ファームウェアが正常に動作するかどうかを判断す
る。
【0003】
【発明が解決しようとする課題】ところで、上記のよう
な従来の技術には次のような解決すべき課題があった。
ICEは、対象装置を制御するCPUに代わって該当す
るファームウェアを実行する。従って、対象装置のCP
Uの形式や種類に対応する固有の構造のものが使用され
る。即ち、ICEは、対象装置のCPU毎に用意され、
その操作方法もICE毎に固有のものとなる。従って、
その使用方法を理解するのに多くの時間を要することが
ある。
【0004】また、ICEは、CPUの動作をエミュレ
ートするものであって、必ずしもCPUと完全に同一の
動作をするわけではない。従って、ICE上でデバッグ
をし動作を確認したファームウェアであっても、再度同
一の試験項目に従って対象装置のCPUによる実際の動
作確認を行う必要があった。これでは、ICEによる試
験を実行後、実際に対象装置のCPUによる動作確認を
行うという2度の試験が必要となり、デバッグ作業が長
期化するという問題があった。
【0005】更に、CPU毎に対応するICEが異なる
ことから、例えば装置に搭載されているCPUが変更さ
れた場合、新たなICEを購入する必要があり、デバッ
グのための設備費用が増大するという問題があった。
【0006】
【課題を解決するための手段】本発明は以上の点を解決
するため次の構成を採用する。 〈構成1〉対象装置にインストールされた所定のプログ
ラムを実行して対象装置を制御する制御部に、上記プロ
グラムの当該対象装置上での動作を検証するための、デ
バッグコマンドを受信するデバッグコマンド受信機能部
と、受信したデバッグコマンドを解釈するデバッグコマ
ンド解釈機能部と、解釈した結果を実行するデバッグコ
マンド実行機能部と、実行結果を上位装置に向けて返答
する実行結果返答機能部とを設け、デバッグ制御用上位
装置には、上記プログラムの対象装置上での動作を検証
するための、デバッグコマンドを送出するデバッグコマ
ンド送出機能部と、デバッグコマンドの実行結果を受信
する実行結果受信機能部と、受信した実行結果を表示す
る実行結果表示部とを設けたことを特徴とするプログラ
ムデバッグシステム。
【0007】〈構成2〉対象装置にインストールされて
所定の動作を実行するプログラムについて、当該対象装
置上での動作を検証する場合に、上位装置から当該対象
装置にデバッグコマンドを送出し、対象装置に上記プロ
グラムと一体にインストールした、デバッグコマンド管
理タスクにより、受信したデバッグコマンドを解釈し
て、解釈結果を実行し、データ送受信タスクにより、実
行結果を上位装置に向けて返答し、上位装置において、
上記対象装置から返答された実行結果を表示することを
特徴とするプログラムデバッグ方法。
【0008】
【発明の実施の形態】以下、本発明の実施の形態を具体
例を用いて説明する。 〈具体例〉図1は、本発明のプログラムデバッグシステ
ム具体例を示すブロック図である。図に示す上位装置1
は、パーソナルコンピュータ等により構成され、制御部
2、ディスプレイ3及びキーボード4等を備えている。
制御部2には、対象装置10をデバッグするためのデバ
ッグコマンド送出機能部5や、実行結果受信機能部6が
設けられている。また、対象装置10は、例えば通信ネ
ットワークに使用される伝送装置とする。この装置は、
CPU12によってその動作を制御される。この図に
は、対象装置10の制御部11のみを示し、他の部分の
図示を省略した。図示しないプログラマは、上位装置1
を操作して、この対象装置10のファームウェアのデバ
ッグ作業を行う。
【0009】対象装置10の制御部11には、CPU1
2とMEM(主記憶装置)13が設けられている。CP
U12は、このMEM13にインストールされたファー
ムウェア14を実行して対象装置10の制御を行う。そ
のプログラム本体部15は装置毎に様々な内容となる。
ファームウェア14には、プログラム本体部15のほか
に、このプログラム本体部15をデバッグするための機
能が付加されている。即ち、デバッグを上位装置1から
直接行うことができるように、図に示すような構成の各
種機能部が予めファームウェア14に組み込まれる。こ
れらは、デバッグコマンド受信機能部16、デバッグコ
マンド解釈機能部17、デバッグコマンド実行機能部1
8及び実行結果返答機能部19から成る。これらはプロ
グラム本体部15と同様の所定のプログラムモジュール
によって構成される。
【0010】上位装置1と対象装置10とは、RS23
2Cインタフェース等から構成されるインタフェースケ
ーブル25とコネクタ26及び27によって相互に接続
されている。上位装置1側のデバッグコマンド送出機能
部5は、対象装置10のファームウェア14をデバッグ
するために必要なデバッグコマンド8を送信する部分で
ある。デバッグコマンド8の種類としては、プログラム
の一時停止、データダンプ、レジスタの参照や設定、ト
レース等がある。その具体的内容は後述する。
【0011】対象装置10のデバッグコマンド受信機能
部16は、インタフェースケーブル25とコネクタ2
6、27を介して入力したデバッグコマンド8を受信す
るインタフェースから構成される。デバッグコマンド解
釈機能部17は、このデバッグコマンドの内容を解釈
し、その結果をデバッグコマンド実行機能部18に渡す
処理を行う部分である。デバッグコマンド実行機能部1
8は、デバッグコマンドを実行し、例えば所定のレジス
タから必要なデータを読み取り、実行結果返答機能部1
9に渡す処理を行う部分である。実行結果返答機能部1
9は、インタフェースケーブル25を介して上位装置1
に対しデバッグコマンドの実行結果を通知する動作を行
う部分である。
【0012】上位装置1の実行結果受信機能部6は、こ
うして受信された実行結果9を受け付けて、受信された
表示制御のためのデータを得る部分である。この実行結
果はディスプレイ3に表示される。上位装置1のディス
プレイ3は、この具体例では実行結果表示部として機能
する。
【0013】図2には、上記ファームウェアの主要部ブ
ロック図を示す。ファームウェア14は、マルチタスク
により構成される。図に示すデバッグコマンド管理タス
ク30は、図1に示したデバッグコマンド解釈機能部1
7やデバッグコマンド実行機能部18に該当する。ま
た、RS232Cデータ送受信タスク31は、図1に示
したデバッグコマンド受信機能部16や実行結果返答機
能部19に該当する。
【0014】デバッグコマンド管理タスク30は、デバ
ッグコマンドの内容に従って該当するコマンドを実行す
るためのデバッグ対象タスクTS1〜TS4に、コマン
ドを渡す。各デバッグ対象タスクTS1〜TS4は、デ
バッグコマンドの要求に応じたトレースデータをデバッ
グコマンド管理タスク30に返すよう構成されている。
こうしたデバッグ対象タスクTS1〜TS4のトレース
機能は、デバッグ対象のファームウェアに関数の形で組
み込まれている。例えばプログラム中の指定された処理
の実行直後に全てのレジスタの内容を読み出して指定さ
れたファイルに書き出すような処理を割り込ませて実行
する。その実行結果はデバッグコマンド管理タスク30
に返された後、RS232Cデータ送受信タスクによっ
て上位装置に転送される。
【0015】上記デバッグコマンド管理タスク30は、
具体的には次のようなコマンドを解釈し、対象装置上で
デバッグ処理を実行する。図3、図4及び図5には、デ
バッグコマンド解釈例説明図を示す。例えば、図3の
(1)のコマンドは、セグメントアドレスやオフセット
アドレス及びダンプするバイト数を指定し、ワード単位
であるいはバイト単位でメモリの内容をダンプする命令
である。これをデバッグコマンド管理タスク30が受け
取ると、例えばデバッグ対象タスクTS1に各パラメー
タを指定してデバッグコマンドを渡す。デバッグ対象タ
スクTS1は、指定されたメモリ上の所定位置からデー
タを読み出し、ダンプした内容をデバッグコマンド管理
タスク30に返す。
【0016】図3(2)のコマンドは、任意のレジスタ
やメモリの内容を変更するための命令である。(3)や
(4)は、ポートへ所定のデータを入力する命令で、
(5)はイベントフラグをセットし、一定の条件下でプ
ログラムを一時停止させたりする制御に使用される。
(6)や(7)はLSIに対するデータのリードライ
ト、(8)はバックアップメモリのリードライト、
(9)、(10)はデュアルポートメモリやCPUのメ
モリをアクセスする命令である。
【0017】以上のように、デバッグコマンド管理タス
クに対し、上位装置から受け付けたデバッグコマンドを
解釈する機能を持たせ、対象装置10上で、実際にその
対象装置10を制御するCPU12がファームウェア1
4を実行し、その実行結果9を上位装置1に返して表示
する。上記デバッグコマンド解釈機能部17は、図3以
下の図に示したコマンドの一部のみを解釈できるような
ものであってもよいし、またその他任意のコマンドを解
釈できるような機能を持つようなものでもよい。また、
デバッグコマンド実行機能部18は、こうしたデバッグ
コマンドを実行し、ちょうどICEを使用した場合と同
様にしてレジスタやメモリ上のデータ読み出し処理を実
行するものであればよく、ICEとほぼ同様のプログラ
ムモジュールによって実現すればよい。
【0018】
【発明の効果】以上説明した本発明のシステムによれ
ば、対象装置10のファームウェア14にプログラム本
体部15と共にデバッグコマンドを受信し、解釈し、実
行し、その結果を返答する機能を付加したので、ICE
を用いずに直接対象装置のデバッグが可能となる。しか
も、対象装置のCPU自身が実際にファームウェアを実
行した結果を返すので、ICEを用いた場合のように、
所定の試験を終了後、再度対象装置のCPUを用いた検
査を行う必要がない。従って、デバッグ作業が極めて簡
便になる。
【0019】しかも、ファームウェア側にデバッグコマ
ンド解釈機能を付与することによって、上位装置1から
は汎用性のあるデバッグコマンドを対象装置に向けて送
出するだけで、必要なデバッグ作業ができる。従って、
対象装置10毎にCPU12の構成に合わせてICEを
準備する必要がない。即ち、デバッグ処理のための設備
費用が安価になり、コスト削減が可能となる。
【図面の簡単な説明】
【図1】本発明のプログラムデバッグシステム具体例を
示すブロック図である。
【図2】ファームウェアの主要部ブロック図である。
【図3】デバッグコマンド解釈例説明図(その1)であ
る。
【図4】デバッグコマンド解釈例説明図(その2)であ
る。
【図5】デバッグコマンド解釈例説明図(その3)であ
る。
【符号の説明】
1 上位装置 5 デバッグコマンド送出機能部 6 実行結果受信機能部 8 デバッグコマンド 9 実行結果 10 対象装置 11 制御部 12 CPU 14 ファームウェア 15 プログラム本体部 16 デバッグコマンド受信機能部 17 デバッグコマンド解釈機能部 18 デバッグコマンド実行機能部 19 実行結果返答機能部 25 インタフェースケーブル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 大島 健夫 東京都港区虎ノ門1丁目7番12号 沖電気 工業株式会社内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 対象装置にインストールされた所定のプ
    ログラムを実行して対象装置を制御する制御部に、前記
    プログラムの当該対象装置上での動作を検証するため
    の、デバッグコマンドを受信するデバッグコマンド受信
    機能部と、 受信したデバッグコマンドを解釈するデバッグコマンド
    解釈機能部と、 解釈した結果を実行するデバッグコマンド実行機能部
    と、 実行結果を上位装置に向けて返答する実行結果返答機能
    部とを設け、 デバッグ制御用上位装置には、 前記プログラムの対象装置上での動作を検証するため
    の、デバッグコマンドを送出するデバッグコマンド送出
    機能部と、 デバッグコマンドの実行結果を受信する実行結果受信機
    能部と、 受信した実行結果を表示する実行結果表示部とを設けた
    ことを特徴とするプログラムデバッグシステム。
  2. 【請求項2】 対象装置にインストールされて所定の動
    作を実行するプログラムについて、当該対象装置上での
    動作を検証する場合に、上位装置から当該対象装置にデ
    バッグコマンドを送出し、 対象装置に前記プログラムと一体にインストールした、
    デバッグコマンド管理タスクにより、受信したデバッグ
    コマンドを解釈して、解釈結果を実行し、データ送受信
    タスクにより、実行結果を上位装置に向けて返答し、 上位装置において、前記対象装置から返答された実行結
    果を表示することを特徴とするプログラムデバッグ方
    法。
JP9349945A 1997-12-04 1997-12-04 プログラムデバッグシステムとそのデバッグ方法 Pending JPH11167501A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9349945A JPH11167501A (ja) 1997-12-04 1997-12-04 プログラムデバッグシステムとそのデバッグ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9349945A JPH11167501A (ja) 1997-12-04 1997-12-04 プログラムデバッグシステムとそのデバッグ方法

Publications (1)

Publication Number Publication Date
JPH11167501A true JPH11167501A (ja) 1999-06-22

Family

ID=18407172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9349945A Pending JPH11167501A (ja) 1997-12-04 1997-12-04 プログラムデバッグシステムとそのデバッグ方法

Country Status (1)

Country Link
JP (1) JPH11167501A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337149B1 (ko) * 2000-07-05 2002-05-18 권 기 홍 프로그램 테스트 및 디버깅이 용이한 중앙처리장치
JP2007328501A (ja) * 2006-06-07 2007-12-20 Mitsubishi Electric Corp プログラムデバッグ支援処理装置及び通信用アダプタ並びにプログラムデバッグ支援処理プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100337149B1 (ko) * 2000-07-05 2002-05-18 권 기 홍 프로그램 테스트 및 디버깅이 용이한 중앙처리장치
JP2007328501A (ja) * 2006-06-07 2007-12-20 Mitsubishi Electric Corp プログラムデバッグ支援処理装置及び通信用アダプタ並びにプログラムデバッグ支援処理プログラム

Similar Documents

Publication Publication Date Title
US5903718A (en) Remote program monitor method and system using a system-under-test microcontroller for self-debug
US5600790A (en) Method and system for loading and confirming correct operation of an application program in a target system
US5630049A (en) Method and apparatus for testing software on a computer network
US7945899B2 (en) Method and system for remote software testing
US7412625B2 (en) Method and system for remote software debugging
JP3566975B2 (ja) 計算機操作端末装置の自動操作装置
US20100153786A1 (en) Processor, multiprocessor, and debugging method
US6425122B1 (en) Single stepping system and method for tightly coupled processors
JPH11167501A (ja) プログラムデバッグシステムとそのデバッグ方法
JP2907808B1 (ja) フラッシュメモリエミュレーション装置及びそれを用いたデバッグシステム
US20040015885A1 (en) Emulator and emulation method
JPH1083318A (ja) 電子回路解析装置
JPS63177231A (ja) 並列プログラムデバグ方式
JP2001318805A (ja) 組み込みシステムのテスト方法及びテストシステム
Li et al. Research of “Stub” remote debugging technique
KR920003279B1 (ko) 데이타 처리장치의 os 및 nos 로딩방법
JPS61217840A (ja) 組込みマイクロコンピユ−タの開発装置
JP2788353B2 (ja) タスクトレース方法
US5680646A (en) Input/output control system
JP3456002B2 (ja) 画像処理検査装置
Bojovic et al. The interactive development and testing system for a RISC-style processor
JP2954006B2 (ja) エミュレーション装置およびエミュレーション方法
JPH10187480A (ja) エミュレータ
CN115756997A (zh) 一种提升SoC或ASIC混合验证的数据传输速率的方法
JPH01211137A (ja) プログラムデバッグ方式