JPH1021114A - 組み込み型データ処理装置のデバッグ方法およびデバッグ用カード - Google Patents

組み込み型データ処理装置のデバッグ方法およびデバッグ用カード

Info

Publication number
JPH1021114A
JPH1021114A JP8169755A JP16975596A JPH1021114A JP H1021114 A JPH1021114 A JP H1021114A JP 8169755 A JP8169755 A JP 8169755A JP 16975596 A JP16975596 A JP 16975596A JP H1021114 A JPH1021114 A JP H1021114A
Authority
JP
Japan
Prior art keywords
debugging
debug
card
cpu
program
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
JP8169755A
Other languages
English (en)
Inventor
Yoichi Okano
洋一 岡野
Hiroshi Sakai
浩 酒井
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP8169755A priority Critical patent/JPH1021114A/ja
Publication of JPH1021114A publication Critical patent/JPH1021114A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】CPUボードにデバッグ専用メモリを実装する
ことなく、且つICEの適用が困難な場合にもCPUボ
ードのデバッグを容易に行う。 【解決手段】デバッグ情報を利用者などに提示するため
の機能として例えばデバッグ情報を表示するための表示
装置1′−5やデバッグ情報を格納する不揮発性メモリ
1′−3などを搭載したアダプタボード1′が使用され
る。アダプタボード1′−6は、組み込み型のCPUボ
ード2′に対して着脱自在に構成されており、これをデ
バッグ対象のCPUボード2′に装着すると、それによ
ってデバッグ用プログラムが自動的に実行されてデバッ
グ処理が行われる。そして、そのデバッグ処理で得られ
たデバッグ情報は、アダプタボード1′の表示装置1′
−5で表示されたり、あるいは不揮発性メモリ1′−3
に保存されて、その不揮発性メモリ1′−3の内容を他
のデバッグ機器で読みとって解析するなどの処理が行わ
れる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、組み込み型デー
タ処理装置のデバッグ方法およびデバッグ用カードに関
する。
【0002】
【従来の技術】従来、CPU組み込み機器ソフトウェア
開発検証システムの分野では、CPUボードなどの組み
込み型データ処理装置の異常等を解析するため、各種デ
バッグ情報を、CPUボード上のメモリに格納してい
た。この場合、CPUボード上のメモリの一部は、デバ
ッグ情報格納用に占有されてしまうことになる。これを
回避するため、デバッグ情報格納専用のメモリをCPU
ボード上に別途実装するという手法も用いられている。
【0003】ところで、近年、CPUボード等の組み込
み型データ処理装置の小型化は目覚ましいものがあり、
CPUボードとしては、部品一個、コネクタ一個でも減
らそうという努力が行われている。したがって、情報格
納専用のメモリは、機器小型化の際、大きな問題点とな
りつつある。
【0004】一方、CPUは32ビット化、64ビット
化、高周波数化など高性能化が目覚ましく、外観は小さ
な組み込み装置であるが、その実装する機能は、非常に
高機能かつ多岐に渡るようになりつつある。強力なデバ
ッグには、多くのデバッグ情報を格納できるように、大
容量デバッグメモリが必要になってきている。
【0005】また、デバッグツール側の進歩も目覚まし
く、最近では、可視化ツール等も充実し始めている。つ
まり、多くのデバッグ情報を効率的に処理できるように
なり、ツール側も大容量デバッグメモリを必要としてい
る。
【0006】このように、装置は小型化が、デバッグ用
メモリは大容量化が求められるという、相反する2つの
要求を満足しなければならない問題点が生じた。しか
し、従来の方式の場合には、CPUボードには本来実現
しようとしている機能に必要なメモリの他に、デバッグ
情報格納メモリもボード上に実装しなければならず、こ
れは、CPUボードのかなりの面積を占有して、結果ボ
ードが大きくなってしまう不具合を招くことになる。ま
た、この方式では、実装メモリ容量も増加し、CPUボ
ードの価格上昇、消費電力の増加、部品点数増加に伴う
信頼性の低下を招くという問題も生じる。また、CPU
ボードデバッグが終了した後、CPUボードが特に異常
なく動作するようになった時においては、このデバッグ
情報格納メモリは不要になってしまうという問題もあ
る。
【0007】また、CPUボード上のメモリにデバッグ
情報を格納するのではなく、ICE(IN−CIRCU
IT EMULATER)などのプロセッサ内蔵のデバ
ッグ装置を使用してCPUボードをデバッグする方法も
ある。ICEを使えば、CPUボード上にデバッグ専用
メモリを実装しなくても、ソフトウェア開発検証はある
程度可能になるが、ICEにもいろいろと制約がある。
【0008】すなわち、ICEはCPUの外部信号を監
視してその動作をエミュレーションする構成であるた
め、キャッシュ内蔵のCPUについては、キャッシュメ
モリアクセスの情報収集が困難であり、これによって、
一部CPUのメモリアクセス情報を取り損なうという危
険がある。
【0009】また、最近では、CPUのクロック速度が
急速に高速化し、一部のCPUでは、ICE装置の実現
が困難になってきている。今後もこの傾向が強まり、I
CEが適用できないCPUが増加すると予想される。
【0010】また、ICE等のデバッグ機器は、概して
価格が高く、台数をたくさん準備するのは困難である。
組み込み装置は、システムを構成して使われることがあ
る。特に近年のネットワークを介した分散制御システム
では、数十台から数百台もの装置が使われ、個別動作時
は問題ないが、システム動作時に問題が発生することが
多い。どの装置で問題が発生するか予想できない場合、
複数台の装置にデバッガを接続する必要がある。しか
し、価格の点から数十台〜数百台のICEを準備するの
は困難である。また、たとえ数十台〜数百台のICEを
準備できたとしても、それを全部装置に接続し、デバッ
グ準備する作業は膨大なものとなる。
【0011】ICEは比較的大きな装置であり、持ち運
びが困難なことは勿論、ICEを装置に接続するにはか
なりのスペースが要求される。しかし、システム等が稼
働するサイトは、通常稼働が可能なスペースしか確保し
ていないことが多い。実際問題として、システム稼働サ
イトに、数十台〜数百台のICEを運搬し、設置し、さ
らにICEに設定を行うのは不可能と考えられる。
【0012】
【発明が解決しようとする課題】上述のように、従来で
は、CPUボードの異常等を解析するため、各種デバッ
グ情報を格納するメモリをそのボード上に実装する必要
があり、これは、デバッグ終了し、CPUボードが安定
して動作するようになった後は不要である。この異常解
析時に一時的に必要となるメモリを常にCPUボード上
に実装していたため、実装メモリが増加し、CPUボー
ドの面積増大、CPUボードの価格上昇、消費電力の増
加、部品点数増加にともなう信頼性の低下を招くという
問題点があった。
【0013】また、ICEを使えば、ボード上にデバッ
グ専用メモリを実装しなくても、ソフトウェア開発検証
はある程度可能になるが、この場合には、今度は、キャ
ッシュメモリアクセスの情報収集の制約、クロック周波
数が高いCPUには適用不可、価格が高価であるという
問題、さらに物理的サイズが大きいので、システム稼働
サイトへの運搬が困難であったり、設置スペースがなく
て取り付けられない場合があるなどの問題が生じる。ま
た、特にデバッグ対象のCPUボードが増えると、運
搬、設置、ICEの動作設定等の膨大な作業が発生し、
事実上適用することは困難となる。
【0014】この発明はこのような点に鑑みてなされた
もので、CPUボードなどの組み込み型データ処理装置
にデバッグ専用メモリを実装することなく、且つICE
の適用が困難な場合にも、組み込み型データ処理装置の
デバッグを容易に行うことができるデバッグ方法および
デバッグ用カードを提供することを目的とする。
【0015】
【課題を解決するための手段】この発明は、CPUとこ
のCPUが実行する制御プログラムを格納したメモリと
を含む組み込み型データ処理装置を、その組み込み型デ
ータ処理装置に着脱自在に装着可能に構成されデバッグ
情報の提示機能を持つデバッグ用カードを用いてデバッ
グするデバッグ方法において、前記制御プログラムによ
って前記デバッグ用カードの装着の有無を検出し、前記
デバッグ用カードの装着が確認されたとき、前記デバッ
グ用カードまたは前記組み込み型データ処理装置に用意
されたデバッグ用プログラムを実行して前記組み込み型
データ処理装置をデバッグするためのデバッグ処理を開
始し、このデバッグ処理で得られたデバッグ情報を前記
デバッグ用カードを用いて提示できるようにしたことを
特徴とする。
【0016】このデバッグ方法においては、デバッグ情
報を利用者などに提示するための機能として例えばデバ
ッグ情報を表示するための表示装置やデバッグ情報を格
納する不揮発性メモリ、あるいは期待するイベントの発
生を利用者に報知するための報知機構などを搭載しただ
けの比較的簡単な構造のデバッグ用カードが使用され
る。
【0017】デバッグ用カードは、組み込み型データ処
理装置に対して着脱自在に構成されており、これをデバ
ッグ対象の組み込み型データ処理装置に装着すると、そ
れによってデバッグ用カードまたは組み込み型データ処
理装置に用意されたデバッグ用プログラムが自動的に実
行されてデバッグ処理が行われる。そして、そのデバッ
グ処理で得られたデバッグ情報は、デバッグ用カードの
表示装置で表示されたり、あるいは不揮発性メモリに保
存されて、その不揮発性メモリの内容を他のデバッグ機
器で読みとって解析するなどの処理が行われる。また、
報知機構が設けられている場合は、デバッグ処理で期待
するイベントの発生が検知されたときにそれが例えばL
EDの点灯などによって利用者に知らされる。
【0018】このように、組み込み型データ処理装置に
対して着脱自在で、且つマイクロプロセッサを持たない
簡単な構造のデバッグ用カードを用いることにより、デ
バッグ対象のCPUボードが増えても、運搬、設置など
を容易に行うことができる。また、デバッグ用カードに
は前述したように表示装置やデバッグ情報格納用の不揮
発性メモリなどで実現できる提示機能があるので、CP
Uボードにはデバッグ専用メモリなどを実装する必要は
なく、今後、益々小型化される組み込み型CPUボード
に好適的な開発検証システムを実現できる。
【0019】デバッグ用カードにデバッグ情報提示機能
として不揮発性メモリを搭載した場合には、その不揮発
性メモリにデバッグ用プログラムを格納しておき、この
デバッグ用プログラムの制御の下、組み込み型データ処
理装置のCPUにデバッグ処理の実行と、そのデバッグ
処理で得られたデバッグ情報を不揮発性メモリに保存す
る処理を実行させることが好ましい。
【0020】これにより、組み込み型データ処理装置側
においては、何らデバッグ用の機能を設けず、そのCP
Uを利用するだけで済み、またデバッグ用カード側にお
いては、1つの不揮発性メモリをデバッグ情報格納とデ
バッグ用プログラムの格納に利用することでカードの小
型化を図ることができる。
【0021】また、前記デバッグ用カードには、前記デ
バッグ処理で得られたデバッグ情報が保存される不揮発
性メモリの内容を他のデータ処理装置がアクセスできる
ようにするためのバスインターフェースまたは通信イン
ターフェースを搭載しておけば、デバッグ処理後に、デ
バッグ用カードを組み込み型データ処理装置から取り外
して持ち帰り、そのデバッグ用カードだけをホストコン
ピュータなど接続して解析するといった運用が可能とな
る。
【0022】また、デバッグ用カードが組み込み型デー
タ処理装置に装着された際に無条件にデバッグ処理を実
行するのではなく、たとえばデーモンのようなプログラ
ムによって組み込み型データ処理装置の異常が予め検出
されていることなどを条件に、デバッグ処理を実行する
ようにしてもよい。
【0023】また、デバッグ用プログラムを呼び出すタ
イミングは、組み込み型データ処理装置上で実行される
ユーザプログラムの中のデバッグ情報を採取したい箇所
に呼び出しルーチンを設けておくことによって規定する
こともできるが、予め規定された所定時間毎に割り込み
を発生する定周期タイマーハンドラなどを用いて所定時
間毎にデバッグ用カードの装着の検出とデバッグ用プロ
グラムの呼び出しを行えば、ユーザプログラムに対して
は何ら修正を加えることなく所望のタイミングでデバッ
グ情報を採取することができる。
【0024】
【発明の実施の形態】以下、図面を参照してこの発明の
実施形態を説明する。図1には、この発明の一実施形態
に係るデバッグ方法に使用されるデバッグ用アダプタカ
ード(ボードも同義)1を組み込み型CPUボード2に
装着した様子が示されている。デバッグ用アダプタカー
ド1は、その基板上に実装されたCPUクリップ1−1
と、アダプタボード接続識別回路1−2と、メモリ1−
3と、通信ポート1−4と、表示装置1−5とから構成
される。
【0025】デバッグ用アダプタカード1は、組み込み
型CPUボード2に対して、CPUクリップ1−1にて
接続して使用する。CPUクリップ1−1は、組み込み
型CPUボード2のCPU2−1に着脱自在に装着可能
に構成されており、CPU2−1に装着すると、CPU
2−1の全てのピンにCPUクリップ1−1が接触し、
CPU2−1の全てのピン上の信号がCPUクリップ1
−1によってデバッグ用アダプタカード1の基板上に導
出される。ここでは、CPU2−1は、QFP(Qua
d Flat Package)タイプの場合が示され
ている。この場合、CPU信号は、図示のようにCPU
実装面側から取り出される。
【0026】メモリ1−3は、組み込み型CPUボード
2から採取したデバッグ情報を格納するためのものであ
り、不揮発性メモリなどから構成されている。組み込み
型CPUボード2は、いわゆるユーザ設計のマイコンボ
ードであり、例えば産業用機械などに組み込まれて使用
される。CPUボード2は、その基板上に実装されたC
PU2−1と、メモリ2−2と、ユーザ論理回路2−3
と、通信ポート2−4とから構成される。なお、通信ポ
ートは、通信ポート1−4として、デバッグ用アダプタ
ボード1側に実装される場合と、通信ポート2−4とし
て、CPUボード2側に実装される場合とがある。
【0027】通信ポートはどちらかのボードに実装され
ていれば良い。もちろん両方のボードに実装されていて
も良い。この通信ポートを介して、デバッグコンソール
3が接続される。
【0028】以下、図1のシステムにおけるデバッグの
動作原理について説明する。デバッグ用アダプタボード
1は、CPU2−1に、CPUクリップ1−1にて物理
的に接続され、同時に信号も接続される。これによりC
PU2−1は、アダプタボード1上の、アダプタボード
接続識別回路1−2、メモリ1−3、通信ポート1−4
をアクセスできるようになる。むろん、これらのリソー
スは、CPUボード2上の既存リソースとは競合しな
い。
【0029】アダプタボード1が、CPUボード2に接
続されていると、CPU2−1は、アダプタボード接続
識別回路1−2にアクセスでき、これによってアダプタ
ボード1が接続されていることがわかる。CPU2−1
は、メモリ1−3が増設されたことがわかり、デバッグ
情報採取用制御プログラムを実行してメモリ2−2の内
容やCPUステータス、あるいはCPUピンの電圧状態
などの各種デバッグ情報を採取し、それをメモリ1−3
に格納する。また、この時のデバッグ処理で、期待する
所定のイベント発生が検知されたならば、CPU2−1
は、表示装置1−5を用いてそのイベントの発生をLE
D点灯などによって利用者に通知する。また、表示装置
1−5を小型LCDなどによって構成しておけば、イベ
ント発生の通知だけでなく、そこに採取したデバッグ情
報を逐次表示させることもできる。この場合には、デバ
ッグ情報そのものやエラー内容を表示によって利用者に
リアルタイムに通知できるので、メモリ1−3に格納さ
れたデバッグ情報は、デバッグ情報の内容をさらに詳細
に解析する必要がある時に用いられることになる。
【0030】デバッグ情報採取用プログラムは、CPU
ボード2上のメモリ2−2にユーザプログラムなどの他
の制御プログラムと一緒に格納してもよいし、アダプタ
ボード1上のメモリ1−3に格納しておいてもよい。
【0031】デバッグ情報採取用プログラムは、あらか
じめユーザプログラムのデバッグ情報を採取したい箇所
にフックをいれておき、アダプタボード1が接続された
ら、このフックからコールされるようにする。これは、
図2に示すような動作になる。
【0032】すなわち、CPU2−1は、通常は、ユー
ザプログラムで指定されるユーザ処理を行っているが
(ステップS11)、そのユーザプログラムの中のある
特定の箇所でデバッグ情報採取用制御プログラムが呼び
出される(ステップS12)。このデバッグ情報採取用
制御プログラムは、まず、一定時間毎にエラー発生の有
無をチェックするデーモンプログラムによって設定され
るエラーフラグを参照して何らかの異常が発生している
か否かを調べる(ステップS21)。異常が発生してな
い場合には、デバッグ情報採取用制御プログラムからユ
ーザプログラムに制御が戻り、ユーザ処理(ステップS
13)が実行される。
【0033】一方、異常が発生していた場合には、デバ
ッグ情報採取用制御プログラムは、アダプタボード接続
識別回路1−2を参照してアダプタボード1が装着され
ているか否かを判断し(ステップS22)、装着されて
いるならば、デバッグ情報を採取してそれをアダプタボ
ード1上のメモリ1−3に書き込むなどの処理を行う
(ステップS23,S24)。
【0034】図3には、デーモンプログラムによって実
行される異常チェック処理が示されている。この異常チ
ェック処理は、一定時間間隔で実行されるものであり、
まず、メモリ2−2の特定番地の内容チェックなどの予
め決められた項目チェックが行われ(ステップS3
1)、そのチェック結果から異常が発生しているか否か
が判断される(ステップS21)。異常がある場合に
は、前述のエラーフラグがONにされる(ステップS3
3)。
【0035】また、デバッグ情報採取用制御プログラム
の呼び出しは、予め規定された所定時間毎に割り込みを
発生する定周期タイマーハンドラなどを用いて一定時間
毎に行うこともできる。これは、例えば図4に示すよう
な動作になる。
【0036】ここでは、計時処理(ステップS41)に
よって一定時間経過したことが検出される度に実行され
るユーザ定周期処理(ステップS43)の前に呼び出し
のためのフック(ステップS42)を入れ、そのユーザ
定周期処理が実行開始される度にデバッグ情報採取用制
御プログラムが起動されるようになっている。
【0037】デバッグ情報採取用制御プログラムは、ま
ず、一定時間毎にエラー発生の有無をチェックするデー
モンプログラムによって設定されるエラーフラグを参照
して何らかの異常が発生しているか否かを調べる(ステ
ップS51)。異常が発生してない場合には、デバッグ
情報採取用制御プログラムからユーザ定周期処理(ステ
ップS43)に制御が戻される。
【0038】一方、異常が発生していた場合には、デバ
ッグ情報採取用制御プログラムは、アダプタボード接続
識別回路1−2を参照してアダプタボード1が装着され
ているか否かを判断し(ステップS52)、装着されて
いるならば、デバッグ情報を採取してそれをアダプタボ
ード1上のメモリ1−3に書き込むなどの処理を行う
(ステップS53,S54)。
【0039】このようにデバッグ情報採取用制御プログ
ラムを一定時間ごとに呼び出して実行させることによ
り、ユーザプログラムには何ら手を加えることなく、所
望のタイミング、例えば検査対象のユーザ定周期処理の
実行開始時などにデバッグ情報採取用制御プログラムを
実行させることができる。
【0040】ところで、デバッグ情報採取用制御プログ
ラムは、通信ポート1−4または2−4を介してデバッ
グコンソール3から書き換えることもできる。これによ
り、アダプタボード1をCPUボード2に装着した状態
であっても、不揮発性メモリ1−3に格納されたデバッ
グ情報採取用制御プログラムを簡単に修正することがで
きるようになる。
【0041】また、この不揮発性メモリ1−3は、CP
Uボード2上の実装メモリ制約条件の制約を受けないの
で、デバッグコンソール3が必要とする大きなサイズの
デバッグメモリを準備することができる。すなわち、従
来では、CPUボード上のメモリ実装制約から、デバッ
グ情報収集量を制限していたが、本実施形態では、この
制限がなくなり、必要なだけ詳細な情報を採取すること
ができるようになる。
【0042】不揮発性メモリ1−3に格納された各種デ
バッグ情報は、通信ポート1−4あるいは2−4を介し
てデバッグコンソール3から参照することができる。デ
バッグ情報参照を可能にする通信回路は、RS−232
C等のシリアル通信、イーサネット等のLAN,JTA
Gのようなデバッグ専用ポートがある。
【0043】この場合、各種デバッグ情報を参照するプ
ログラムを、CPUボード2側、またアダプタボード1
側のメモリ上に含むことになる。なお、CPUボード2
としては、デバッグ対象のCPUボードはもちろん、デ
バッグ対象とは別の解析用プロセッサ搭載のCPUボー
ドを使用しても、各種デバッグ情報参照を可能にでき
る。このCPUボードは、デバッグ対象のCPUボード
とは異種のものでも使用できる。
【0044】また、アダプタボード1にバスインターフ
ェースを設けておくことにより、標準バス接続にて、パ
ソコンなどホストマシンの解析用プロセッサに接続し
て、各種デバッグ情報参照を可能にすることもできる。
標準バスとしては、ISA、PCI、VME、マルチバ
ス、Sバス等がある。この場合、各種デバッグ情報を参
照するプログラムは、ホストマシン側に実装すればよ
い。
【0045】また、不揮発性メモリ1−3にデバッグ情
報を格納しているので、アダプタボード1をCPUボー
ド2から取り外して持ち運ぶこともできる。したがっ
て、CPUボード稼働現場にてデバッグ情報を収集し
て、デバッグ情報を格納したアダプタボード1をデバッ
グ室に持ち帰り、ホストマシンなどを使って情報参照お
よび解析を行うことができる。
【0046】図5には、図1のアダプタカード1とCP
Uボード2のさらに具体的な構成例が示されている。こ
こでは、QFPタイプのCPUを使ったCPUボードに
アダプタボードを接続する場合を考える。また、通信ポ
ートはアダプタボード側に実装された、汎用のRS−2
32Cシリアル通信ポートの例を考える。
【0047】1′はアダプタボード、1′−1はQFP
タイプCPU用のCPUクリップ、1′−2は、アダプ
タボード接続識別用のリードポートで、実体は3ステー
トのラッチICである。1′−3は、バッテリバックア
ップされたRAMまたはEEPROMなどから構成され
た不揮発性メモリであり、1′−3−1のデバッグ用制
御プログラムと1′−3−2の各種デバッグ情報の格納
に使用される。デバッグ用制御プログラム1′−3−1
は、デバッグ情報を採取して、それを1′−3−2の各
種デバッグ情報として格納する処理ルーチンと、3′の
デバッグコンソールとの通信を行う処理ルーチンとを含
んでいる。
【0048】1′−4は、RS−232Cのシリアルコ
ントローラ用ICを使用した通信ポートであり、1′−
4−1は、RS−232Cコネクタである。このコネク
タを介して、デバッグコンソール3′と接続する。デバ
ッグ用制御プログラム1′−3−1は、デバッグコンソ
ール3′からRS−232C通信ポート1′−4を介し
て書き換えることができる。
【0049】また、解析したいイベント発生が表示でき
る1′−5のLED表示を持つ。1′−6は、DIPス
イッチであり、実行させたいデバッグ処理を指定するた
めの複数の設定値を持っている。
【0050】本アダプタボード1′を接続するCPUボ
ード2′は、2′−1のCPUと、2′−2のメモリ、
2′−3のユーザソフト動作に必要な論理回路から構成
される。2′−2のメモリは、2′−2−1の制御プロ
グラムを含む。この制御プログラム2′−2−1はアダ
プタボード有無を識別して、ありの場合に、アダプタボ
ード上のデバッグ用制御プログラムに処理を渡すもので
ある。
【0051】以下、図1のシステムにおけるデバッグ動
作の手順について説明する。1′のアダプタボードは、
CPUクリップ1′−1にて、CPUボード2′上のC
PU2′−1に接続される。これによりCPU2′−1
は、アダプタボード接続識別用のリードポート1′−2
をアクセスできるようになり、アダプタボード有無を識
別できる。またCPU2′−1は、不揮発性メモリ1′
−3と、1′−4のRS−232Cのシリアルコントロ
ーラ用IC、1′−5のLED表示装置にもアクセスで
きるようになる。
【0052】CPU2′−1は、2′−2のメモリ上の
ユーザプログラムを実行して、2′−3のユーザ論理回
路を動作させ、CPUボードの目的機能を実現する。こ
の2′−2のメモリ上のユーザプログラムや、2′−3
のユーザ論理回路のデバッグを行うため、このユーザプ
ログラムの要所に、制御プログラム2′−2−1を入れ
ておく。本プログラムのフローを図6に示す。
【0053】図6に示されているように、CPUボード
上の制御プログラム2′−2−1は、まず、一定時間毎
にエラー発生の有無をチェックするデーモンプログラム
によって設定されるエラーフラグを参照して何らかの異
常が発生しているか否かを調べる(ステップS61)。
異常が発生していた場合には、制御プログラム2′−2
−1は1′−2のアダプタボード接続識別用のリードポ
ートを参照して、アダプタボード1′の接続の有無を調
べる(ステップS62,S63)。アダプタボード接続
識別用のリードポート1′−2の参照は、最初のチェッ
ク時のみ行い、以降はその結果を示すアダプタボード接
続識別用フラグをメモリ2′−2に格納しておくことに
より、そのフラグチェックにてアダプタボード接続の有
無を調べることができる。
【0054】アダプタボード1′が接続されている場合
には、DIPスイッチ1′−6の設定値をチェックし
(ステップS64)、DIPスイッチ1′−6の設定値
で指定された目的とするデバッグ処理を実行するため
に、アダプタボード′上のデバッグ用制御プログラム
1′−3−1を呼び出す(ステップS65)。デバッグ
用制御プログラム1′−3−1は目的とするバック処理
にそれぞれ対応する複数のプログラムから構成されてお
り、DIPスイッチ1′−6の設定値に基づいてジャン
プ先を変更することで、目的とするバック処理に対応し
たデバッグ用制御プログラム1′−3−1を実行するこ
とができる。
【0055】デバッグ用制御プログラム1′−3−1に
は、前述したように各種デバッグ情報を採取して不揮発
性メモり1′−3に格納するプログラムと、デバッグコ
ンソール3′との通信プログラムの2つがあるが、まず
各種デバッグ情報採取処理が行われる。ここでは、各種
デバッグ情報をユーザプログラムなどからスタックやレ
ジスタ渡しでもらい(ステップS71)、それを1′−
3−2のデバッグ情報として不揮発性メモリ1′−3へ
格納する処理が行われる(ステップS72)。そして、
ユーザプログラムから渡された各種デバッグ情報が、期
待していたイベントの場合には、1′−5のLED表示
装置を点灯して、期待していたイベント発生を表示する
ことができる(ステップS73,S74)。このように
して、1′−3−2のデバッグ情報が構築される。
【0056】この後、デバッグコンソール3′との通信
処理が必要に応じて行われる。デバッグコンソール3′
との通信処理とは、1′−4のRS−232Cの初期化
処理や、デバッグコンソール3′から送受信データがあ
った場合の送受信割り込み処理(またはポーリング処
理)をいう。
【0057】この処理は、図6に示すように、2′−2
−1のCPUボード上の制御プログラムから起動され
る。したがって、2′−2−1のCPUボード上の制御
プログラムを、前記2′−2のメモリプログラムの通信
処理起動箇所(初期化ルーチン、割り込みハンドラ、定
周期ハンドラ)へ入れておく必要がある。
【0058】各種デバッグ情報は、RS−232Cシリ
アル通信ポートを介して、3′のデバッグコンソールか
ら参照することができる。以上のように、この実施形態
のデバッグ方法においては、デバッグ情報を利用者など
に提示するための機能として例えばデバッグ情報を表示
するための表示装置1′−5やデバッグ情報を格納する
不揮発性メモリ1′−3などを搭載しただけの比較的簡
単な構造のアダプタボード1′が使用される。アダプタ
ボード1′−6は、組み込み型のCPUボード2′に対
して着脱自在に構成されており、これをデバッグ対象の
CPUボード2′に装着すると、それによってデバッグ
用プログラムが自動的に実行されてデバッグ処理が行わ
れる。そして、そのデバッグ処理で得られたデバッグ情
報は、アダプタボード1′の表示装置1′−5で表示さ
れたり、あるいは不揮発性メモリ1′−3に保存され
て、その不揮発性メモリ1′−3の内容を他のデバッグ
機器で読みとって解析するなどの処理が行われる。この
ように、CPUボード2′に対して着脱自在で、且つマ
イクロプロセッサを持たない簡単な構造のアダプタボー
ド1′を用いることにより、デバッグ対象のCPUボー
ド2′が増えても、運搬、設置などを容易に行うことが
できる。また、アダプタボード1′には前述したように
表示装置1′−5やデバッグ情報格納用の不揮発性メモ
リ1′−3などで実現できる提示機能があるので、CP
Uボード2′にはデバッグ専用メモリなどを実装する必
要はなく、今後、益々小型化される組み込み型CPUボ
ードに好適的な開発検証システムを実現できる。
【0059】次に、本実施形態の他の構成例について説
明する。本実施形態のデバッグ方法は、以下の要素の組
み合わせで実現できる。 1)CPUクリップ(QFPとPGA)とコネクタ接続
方式。
【0060】これまで説明した実施形態では、QFPタ
イプのCPUクリップを使用して、CPUボードとアダ
プタボードを接続したが、他のピンタイプ、例えばPG
AタイプのCPUに対しても適用することができる。こ
の場合、図1で説明したアダプタボード1のクリップ1
−1を、図8に示されているように、アダプタボード1
の基板の実装面上に設けておき、そのクリップ1−1が
CPUボード2の基板裏面側から装着されることにな
る。
【0061】また、CPU信号をコネクタにて、アダプ
タボードと接続することも可能である。これは、CPU
ボードにコネクタを実装する面積がある場合に有効であ
る。 2)デバッグ用制御プログラムが、アダプタボード上に
ある場合、CPUボード上にある場合。
【0062】デバッグ用制御プログラムは、デバッグ情
報をアダプタボード上のメモリに格納するプログラム
と、デバッグコンソールから各種デバッグ情報を参照す
るための通信プログラムとを含む。
【0063】前述の実施形態では、デバッグ用制御プロ
グラムはアダプタボード上にある場合を示した。アダプ
タボード上にある場合は、アダプタボード上のプログラ
ムに処理を移す制御プログラムのみCPUボード上のメ
モリに実装しておけばよい。したがって、CPUボード
のメモリ節約になる。
【0064】CPUボード上にデバッグ用制御プログラ
ムを設けた例を図7に示す。これは図5の1′−3−1
のアダプタボード上の制御プログラムをCPUボード上
に移動したものである。
【0065】アダプタボード上のメモリは各種デバッグ
情報格納専用に使用できる。また、2′−2−1のアダ
プタ上のプログラムへ処理を移すCPUボード上の制御
プログラムは不要になり、プログラム実装はシンプルに
なる。
【0066】3)通信ポート。 前述の実施形態で使用したRS−232Cシリアルポー
トの他に、イーサネットのネットワーク接続や、JTA
Gのようなデバッグ専用ポート接続がある。JTAGの
ようなデバッグ専用ポート接続の場合、1′−3−1の
アダプタボード上の制御プログラム(デバッグコンソー
ルとの通信プログラム)が不要になる。
【0067】4)ターゲットプロセッサと解析用プロセ
ッサ。 前述の実施形態では、各種デバッグ情報参照時、アダプ
タボードをデバッグターゲットのCPUボードに接続し
て、通信ポート接続のデバッグコンソールから各種デバ
ッグ情報参照していた。アダプタボードは、デバッグタ
ーゲットボード以外の解析用プロセッサの乗ったCPU
ボードに接続しても、通信ポート接続のデバッグコンソ
ールから、各種デバッグ情報が参照できる。
【0068】したがって、アダプタボードのメモリとし
て不揮発メモリを使用しているなら、CPUボード稼働
サイトでデータ収集した後、アダプタボードをデバッグ
室に持ち帰り、解析用プロセッサのCPUボードに接続
して各種デバッグ情報参照できる。
【0069】アダプタボードを解析用プロセッサに接続
する方法は、CPUクリップによる接続、解析用プロセ
ッサ接続用コネクタにて接続の両方が可能である。これ
は、解析プロセッサのCPUボードは、解析専用のボー
ドなので、サイズ等の制約が比較的ゆるく、コネクタ実
装が制限されないためである。
【0070】または、アダプタボードを標準バス接続に
て解析用プロセッサに接続する方法もある。標準バスと
しては、ISA、PCI、VME、マルチバス、Sバス
等が考えられる。
【0071】この標準バスコネクタヘアダプタボードを
差し込み、パソコン等のホストマシンから各種デバッグ
情報をアクセスする。この場合、アダプタボード上の制
御プログラムのうち、デバッグコンソールとの通信プロ
グラムは不要になる。標準バスを介してホストマシンの
CPUがアダプタボード上のメモリをアクセスするに
は、ホスト側にアクセスプログラムを実装すればよい。
【0072】5)揮発メモリと不揮発メモリ。 前述の実施形態では、アダプタボード上のメモリとし
て、不揮発メモリを使用した。
【0073】これにより、アダプタボードをCPUボー
ドから取り外したとき、格納した各種デバッグ情報が消
えないので、持ち帰って解析できる。特に、CPUボー
ド稼働現場にて、各種デバッグ情報を参照するので、ア
ダプタボードを持ち帰って解析する必要がない場合は、
揮発メモリが使用できる。不揮発メモリに比べると安価
に実現できる。
【0074】
【発明の効果】以上説明したように、この発明によれ
ば、大きなサイズの各種デバッグ情報格納用メモリを、
ボードサイズ、価格目標などからくるCPUボードのメ
モリ実装の制約なしに準備できるようになる。特に各種
デバッグ情報の格納/参照機能に限定すれば、ICE等
のデバッガに比べて、小型、軽量、堅牢、安価に実現で
きる。ICEは、CPUクロックが非常に高周波の場
合、適用できないことがある。また、CPUキャッシュ
の内容は、トレースが不完全の場合がある。
【0075】これに対し、この発明は、基本的には増設
メモリのイメージであり、高い周波数クロックに対して
も適用できる。とくに、CPUクリップにより接続する
方法なので、リード線の引き回しを最短にすることがで
き、これも高い周波数での動作を可能にするプラス要因
となる。また、CPU自身が、キャッシュ内容を参照し
て、デバッグ情報をメモリに格納するので、各種デバッ
グトレース情報がキャッシュによって不完全になること
はない。
【0076】各種デバッグトレース情報を格納するメモ
リに不揮発メモリを使用した場合、稼働現場で採取した
デバッグ情報を、デバッグ室に持ち帰り解析することが
できる。したがって、デバッグ機材を設置する場所がな
いサイトにも適用でき、現地システムで発生するトラブ
ルを解決するのに有効なツールとなる。
【0077】特に現地システムは、多数の組み込み装置
から構成される場合があり、いつ、どの装置で期待して
いるイベントが発生するか予想困難な場合がある。何台
ものICEを装置へ設置するのは、複数台ICEの用
意、運搬、設置、設定等の多大な作業が発生して、非常
に困難である。本発明は、小型、軽量、堅牢、安価な特
徴から、このような現地システムへ複数台適用は容易で
あり、現地でのイベント発生を解析するのに非常に有効
である。
【0078】CPUボード上にデバッグメモリを実装し
てしまった場合、取り外しは困難である。メモリは取り
外しが可能でも、ソケットは取り外しが困難である。つ
まり不要な部品がCPUボードに乗ったままになってし
まう。これに対し、この発明は、期待しているイベント
発生を解析し終わったら取り外すことができ、CPUボ
ードから不要部品を除くことができる。
【図面の簡単な説明】
【図1】この発明の一実施形態に係るデバッグ方法に使
用されるデバッグ用アダプタボードとこれが装着される
組み込み型CPUボードの構成を示す図。
【図2】同実施形態のデバッグ方法で使用されるデバッ
グ用制御プログラムの呼び出し手順の一例を説明するフ
ローチャート。
【図3】同実施形態のデバッグ方法で使用される異常チ
ェック処理の手順を説明するフローチャート。
【図4】同実施形態のデバッグ方法で使用されるデバッ
グ用制御プログラムの呼び出し手順の他の例を説明する
フローチャート。
【図5】同実施形態のデバッグ方法で使用されるデバッ
グ用アダプタボードとこれが装着される組み込み型CP
Uボードの具体的な構成を説明するための図。
【図6】同実施形態のデバッグ方法で使用されるCPU
ボード上の制御プログラムとデバッグ用アダプタボード
上の制御プログラムとの関係を示すフローチャート。
【図7】同実施形態のデバッグ方法で使用されるデバッ
グ用アダプタボードとこれが装着される組み込み型CP
Uボードの他の構成を説明するための図。
【図8】同実施形態のデバッグ方法で使用されるデバッ
グ用アダプタボードとこれが装着される組み込み型CP
Uボードのさらに他の構成を説明するための図。
【符号の説明】
1…デバッグ用アダプタボード、1−1…CPUクリッ
プ、1−2…アダプタ接続識別回路、1−3…メモリ、
1−4…通信ポート、1−5…表示装置、2…CPUボ
ード、2−1…CPU、2−2…メモリ、2−3ユーザ
論理回路、2−4通信ポート、3…デバッグコンソー
ル、1′…デバッグ用アダプタボード、1′−1…CP
Uクリップ、1′−2…アダプタボード接続識別用のリ
ードポート、1′−3…不揮発性メモリ、1′−3−1
…アダプタボード上の制御プログラム、1′−4…RS
−232Cのシリアルコントローラ用IC、1′−4−
1…RS−232Cコネクタ、1′−5…表示装置、
2′…CPUボード、2′−1…CPU、2′−2…メ
モリ、2′−2−1…アダプタ上のプログラムへ処理を
移すCPUボード上の制御プログラム、2′−3…ユー
ザ論理回路、3′…デバッグコンソール。

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 CPUとこのCPUが実行する制御プロ
    グラムを格納したメモリとを含む組み込み型データ処理
    装置を、その組み込み型データ処理装置に着脱自在に装
    着可能に構成されデバッグ情報の提示機能を持つデバッ
    グ用カードを用いてデバッグするデバッグ方法におい
    て、 前記制御プログラムによって前記デバッグ用カードの装
    着の有無を検出し、 前記デバッグ用カードの装着が確認されたとき、前記デ
    バッグ用カードまたは前記組み込み型データ処理装置に
    用意されたデバッグ用プログラムを実行して前記組み込
    み型データ処理装置をデバッグするためのデバッグ処理
    を開始し、 このデバッグ処理で得られたデバッグ情報を前記デバッ
    グ用カードを用いて提示できるようにしたことを特徴と
    するデバッグ方法。
  2. 【請求項2】 前記デバッグ用カードには、前記デバッ
    グ情報の提示機能として不揮発性メモリが搭載されてお
    り、この不揮発性メモリには前記デバッグ用プログラム
    が格納されており、 前記デバッグ用プログラムは、前記デバッグ処理で得ら
    れたデバッグ情報を、前記不揮発性メモリに保存するこ
    とを特徴とする請求項1記載のデバッグ方法。
  3. 【請求項3】 前記デバッグ用カードには、前記デバッ
    グ情報の提示機能として前記デバッグ処理で得られたデ
    バッグ情報を表示するための表示装置、または前記デバ
    ッグ処理により期待するイベント発生が検知されたとき
    にそれを報知するための報知手段が設けられており、 前記デバッグ用プログラムは、前記デバッグ処理で得ら
    れたデバッグ情報を前記表示装置に表示させ、あるいは
    前記デバッグ処理により期待するイベント発生が検知さ
    れたときにそれを前記報知手段にて報知することを特徴
    とする請求項1記載のデバッグ方法。
  4. 【請求項4】 前記デバッグ用カードは、前記組み込み
    型データ処理装置のCPUの全てのピンに接続され、 前記デバッグ用カードの動作は、前記組み込み型データ
    処理装置のCPUによって制御されることを特徴とする
    請求項1記載のデバッグ方法。
  5. 【請求項5】 前記デバッグ用カードには、前記デバッ
    グ処理で得られたデバッグ情報が保存される不揮発性メ
    モリと、その不揮発性メモリの内容を他のデータ処理装
    置がアクセスできるようにするためのバスインターフェ
    ースまたは通信インターフェースが搭載されており、 前記組み込み型データ処理装置から取り外された前記デ
    バッグ用カードの不揮発性メモリの内容を前記他のデー
    タ処理装置上で読み取ることを特徴とする請求項1記載
    のデバッグ方法。
  6. 【請求項6】 前記デバッグ用カードには、前記デバッ
    グ情報の提示機能として不揮発性メモリと、通信ポート
    が搭載されており、前記不揮発性メモリには前記デバッ
    グ用プログラムが格納されており、 前記デバッグ用プログラムは、前記デバッグ処理で得ら
    れたデバッグ情報を前記不揮発性メモリに保存し、その
    保存したデバッグ情報を前記不揮発性メモリから読み出
    して前記通信ポートに出力することを特徴とする請求項
    1記載のデバッグ方法。
  7. 【請求項7】 前記デバッグ用カードには、前記組み込
    み型データ処理装置のCPUが参照可能なスイッチが搭
    載されており、 前記デバッグ用プログラムは、前記スイッチの設定値を
    参照し、その設定値に応じて実行するデバッグ処理の内
    容を切り替えることを特徴とする請求項1記載のデバッ
    グ方法。
  8. 【請求項8】 前記制御プログラムは、予め規定された
    所定時間毎に前記デバッグ用カードの装着の有無を検出
    し、その検出結果に応じて前記デバッグ用プログラムを
    実行させるか否かを判定する手続きを含むことを特徴と
    する請求項1記載のデバッグ方法。
  9. 【請求項9】 前記組み込み型データ処理装置の異常発
    生の有無を検出し、 異常発生があり、且つ前記デバッグ用カードの装着が確
    認されたとき、前記デバッグ用プログラムによるデバッ
    グ処理を実行することを特徴とする請求項1記載のデバ
    ッグ方法。
  10. 【請求項10】 前記デバッグ用カードには、前記デバ
    ッグ用プログラムが格納された不揮発性メモリと、通信
    ポートが搭載されており、 前記通信ポートを介して前記不揮発性メモリのデバッグ
    用プログラムが書き換え可能に構成されていることを特
    徴とする請求項1記載のデバッグ方法。
  11. 【請求項11】 CPUとこのCPUが実行する制御プ
    ログラムを格納したメモリとを含む組み込み型データ処
    理装置のデバッグに使用されるデバッグ用カードであっ
    て、 前記デバッグ用カードの基体上に設けられ、前記組み込
    み型データ処理装置のCPUに対して着脱自在に装着可
    能に構成され、前記CPUに装着されたときそのCPU
    の全てのピンに接続されて、各ピンの信号を前記デバッ
    グ用カード上に導出する手段と、 前記デバッグ用カードの基体上に設けられ、前記組み込
    み型データ処理装置のCPUによってアクセス可能な不
    揮発性メモリであって、前記組み込み型データ処理装置
    または前記デバッグ用カード上に用意されたデバッグ用
    プログラムを実行することによって得られたデバッグ情
    報が前記CPUによって書き込まれる不揮発性メモリと
    を具備することを特徴とするデバッグ用カード。
  12. 【請求項12】 前記デバッグ用カードには、前記不揮
    発性メモリの内容を他のデータ処理装置がアクセスでき
    るようにするためのバスインターフェースまたは通信イ
    ンターフェースが搭載されており、 前記組み込み型データ処理装置から取り外された前記デ
    バッグ用カードの不揮発性メモリの内容を前記他のデー
    タ処理装置上で読み取り可能に構成されていることを特
    徴とする請求項11記載のデバッグ用カード。
  13. 【請求項13】 前記デバッグ用カードには、前記組み
    込み型データ処理装置のCPUが参照可能なスイッチが
    搭載されており、 前記デバッグ用プログラムは、前記スイッチの設定値を
    参照し、その設定値に応じて実行するデバッグ処理の内
    容を切り替えることを特徴とする請求項11記載のデバ
    ッグ用カード。
JP8169755A 1996-06-28 1996-06-28 組み込み型データ処理装置のデバッグ方法およびデバッグ用カード Pending JPH1021114A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8169755A JPH1021114A (ja) 1996-06-28 1996-06-28 組み込み型データ処理装置のデバッグ方法およびデバッグ用カード

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8169755A JPH1021114A (ja) 1996-06-28 1996-06-28 組み込み型データ処理装置のデバッグ方法およびデバッグ用カード

Publications (1)

Publication Number Publication Date
JPH1021114A true JPH1021114A (ja) 1998-01-23

Family

ID=15892254

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8169755A Pending JPH1021114A (ja) 1996-06-28 1996-06-28 組み込み型データ処理装置のデバッグ方法およびデバッグ用カード

Country Status (1)

Country Link
JP (1) JPH1021114A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003099246A (ja) * 2001-09-26 2003-04-04 Denso Corp アクチュエータ制御システム
KR100424322B1 (ko) * 2000-09-14 2004-03-22 주식회사 엘지이아이 프로세서 보드의 디버깅 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100424322B1 (ko) * 2000-09-14 2004-03-22 주식회사 엘지이아이 프로세서 보드의 디버깅 방법
JP2003099246A (ja) * 2001-09-26 2003-04-04 Denso Corp アクチュエータ制御システム

Similar Documents

Publication Publication Date Title
US6944796B2 (en) Method and system to implement a system event log for system manageability
US6175914B1 (en) Processor including a combined parallel debug and trace port and a serial port
US6185732B1 (en) Software debug port for a microprocessor
US7392431B2 (en) Emulation system with peripherals recording emulation frame when stop generated
KR100546087B1 (ko) 마이크로프로세서 기반의 디바이스를 위한 트레이스 캐시
US6009270A (en) Trace synchronization in a processor
EP0391173B1 (en) Debug peripheral for microcomputers, microprocessors and core processor integrated circuits and system using the same
US5768152A (en) Performance monitoring through JTAG 1149.1 interface
US5944840A (en) Continuous monitor for interrupt latency in real time systems
KR100522193B1 (ko) 소프트웨어 성능 프로파일링 데이터 포획용 캐시가 합체된 마이크로프로세서 기반 장치
US6041406A (en) Parallel and serial debug port on a processor
EP0084431A2 (en) Monitoring computer systems
US5680620A (en) System and method for detecting access to a peripheral device using a debug register
US20020010882A1 (en) Integrated circuit device and its control method
JPH07311716A (ja) コンピュータシステム、コンピュータシステムに周辺装置をインタフェースさせるための並列ポート回路、およびその動作方法
US7127531B2 (en) System and method for processing computer I/O port post codes
TWI326823B (en) Remote monitor module for computer initialization
EP1184790B1 (en) Trace cache for a microprocessor-based device
EP0062978A2 (en) Apparatus for assisting fault-finding in data processing systems
JP2004302731A (ja) 情報処理装置および障害診断方法
JPH1021114A (ja) 組み込み型データ処理装置のデバッグ方法およびデバッグ用カード
JP2001209556A (ja) 検証支援システム
CN111008098A (zh) 监测系统与方法
CN115098342A (zh) 系统日志收集方法、系统、终端及存储介质
JPH06214819A (ja) 情報処理装置及びこの装置の評価システムならびに評価方法