(57)【特許請求の範囲】
【請求項１】
複数の信号線から、不定期に発生する事象の時間的遷移を視覚的に表示するシーケンス表示装置であって、
複数の信号線から発生したすべての事象の発生履歴を蓄積する蓄積手段と、
前記複数の信号線から発生したすべての事象のうち、各々が異なる信号線から発生した２つの事象であって、当該２つの事象の発生が連続している事象のすべての組合せについて、当該２つの事象の発生時刻の間隔を非線形関数で変換し、当該変換結果を時間軸上に射影することにより、前記蓄積された事象の時間的遷移を表示するための発生グラフを作成する作成手段と、
を備えたことを特徴とするシーケンス表示装置。
【請求項２】
更に前記すべての事象のうち任意の事象の発生から当該事象とは異なる他の事象の発生までの累積時間を表示する累積時間表示手段を備えたことを特徴とする請求項１に記載のシーケンス表示装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、不定期に発生する事象の時間的遷移を視覚的に表示するシーケンス表示装置に関するものである。
【０００２】
【従来の技術】
事象の発生とその時刻を記録し、その関係を視覚的に表示する装置としては、例えば電気回路の分析装置、電気的通信状態の監視装置、計算機上の状態遷移の表示装置などが挙げられる。具体的には、従来より次のような装置が考案され、実際に利用されている。
【０００３】
すなわち、ロジックアナライザや通信プロトコルアナライザ、ＳＣＳＩアナライザ、パラレルＩ／Ｏアナライザ、またシリアル回線アナライザやマルチタスクＯＳなどでタスクスイッチシーケンスを表示するデバッグ装置などである。
【０００４】
このような事象の発生と時間の関係を表示する事象シーケンス表示装置は、非常に多岐に亘っている。例えば、設計した論理回路で、特定の信号線の電位をピックアップし、各信号線の電位の変化の関係とそのタイミングを調べることは、設計した回路が意図した動作をしているかを分析するのに非常に有効である。このような機能を持つ装置に上述のロジックアナライザなどがあげられる。同様に、データ通信機器の分野でも上述の通信プロトコルアナライザやＳＣＳＩアナライザなど様々な装置が実用化され利用されている。
【０００５】
また、ハードウエアの分析だけでなく、計算機上のソフトウエアの分析にも同様の装置が用いられている。
【０００６】
すなわち、リアルタイムＯＳ（オペレーティングシステム）などのマルチタスクＯＳにおいて、タスクスイッチのトレース情報はアプリケーションプログラムのデバッグに非常に有効な情報であり、開発者が意図した通りにプログラムが遷移しているかを瞬時に判断することができる。このアプリケーション内に存在するタスクの各々がＣＰＵの処理を獲得している時間を時間軸にとって、タスクスイッチの様子をグラフィカルに表現することができるデバッグツールが既に実用化され利用されている。
【０００７】
【発明が解決しようとする課題】
ところで、論理回路などでは、事象が発生する時間間隔は不定である。つまり、ある信号線の電位の変化から、ある信号線の電位の変化までの間隔がまちまちで、非常に短い間で変化が起こるときと、その数十倍、数百倍の間変化が起こらないような状況も生じてくる。
【０００８】
そして、有限時間内に発生した事象のシーケンス図において、ごく短時間で次の事象が発生する場合と、長い間事象が発生しない場合が混在したとき、そのシーケンスを一つの画面に効率良く描くことができない。つまり、最短の時間のグラフを判読可能な大きさで表現すると、最長の時間のグラフが冗長な大きさになり、一つの画面で表現することができる情報量は非常に少なくなる。逆に、最長の時間を適当な大きさで表現した場合、最短の時間のグラフの幅が小さくなり、判読不能になる。
【０００９】
例えば、図８に示すように、１０μ秒の時間を画面上で１mmの大きさで表現する装置では、１ｍ秒の時間を表現するためには１００mmの長さを必要とし、１秒を表現するには１００ｍの長さを必要とする。この１０μ秒と１秒のデータが混在するグラフは事実上表示することは不可能である。つまり、グラフの精度とグラフの（時間的）長さはトレードオフの関係にあり、精度を重視すれば表示領域が膨れ上がり、表示領域を小さく抑えればグラフの精度が低下する。そして、実際の電子機器などでは、このような状況は少なからず起こり得る。
【００１０】
本発明は、上記のような従来の問題点に鑑みてなされたもので、極端に大きさの異なるグラフの各々の長さを適当に調節して、限られた大きさの画面上に精度を落さずに表現することが可能なシーケンス表示装置を提供することを目的としている。
【００１１】
【課題を解決するための手段】
上記目的を達成するため、本発明では、シーケンス表示装置を次の（１）、（２）のとおりに構成する。
（１）複数の信号線から、不定期に発生する事象の時間的遷移を視覚的に表示するシーケンス表示装置であって、
複数の信号線から発生したすべての事象の発生履歴を蓄積する蓄積手段と、
前記複数の信号線から発生したすべての事象のうち、各々が異なる信号線から発生した２つの事象であって、当該２つの事象の発生が連続している事象のすべての組合せについて、当該２つの事象の発生時刻の間隔を非線形関数で変換し、当該変換結果を時間軸上に射影することにより、前記蓄積された事象の時間的遷移を表示するための発生グラフを作成する作成手段と、
を備えたシーケンス表示装置。
（２）更に前記すべての事象のうち任意の事象の発生から当該事象とは異なる他の事象の発生までの累積時間を表示する累積時間表示手段を備えた前記（１）に記載のシーケンス表示装置。
【００１３】
【発明の実施の形態】
まず初めに、本発明の原理について説明する。本発明に係る事象シーケンス表示装置は、例えば以下のような構成となる。
【００１４】
すなわち、分析の対象となるシステム（論理回路や計算機、データ通信機器など）からそのシステムの情報を取り出す手段と、取り出されたデータ（情報）とその時刻を蓄積する手段と、蓄積されたデータから表示するグラフの長さを計算し、シーケンス図を生成する手段と、生成した事象シーケンス図をコンピュータ等の画面上に表示する手段とを備える。
【００１５】
上記の手段を備えた装置において、一定時間内に短時間のグラフと長時間のグラフが混在するような場合でも、精度を落さずに効率良く情報を表示させるために、各時間間隔の数値をＬｏｇａｒｉｔｈｍなどの非線形な関係で表現する。つまり、表示すべき事象シーケンス情報のｎ番目のデータの発生時刻をＴ（ｎ）とすると、このｎ番目に発生した事象から次の事象までの時間Ｓ（ｎ）は、次のように表現される。
【００１６】
Ｓ（ｎ）＝Ｔ（ｎ＋１）−Ｔ（ｎ）
そして、本手法でＬｏｇａｒｉｔｈｍ関数を用いる例では、このデータのグラフ上の長さＬ（ｎ）を次のように表現する。
【００１７】
Ｌ（ｎ）＝αｌｏｇ〔βＳ（ｎ）〕    （ただし、α，βは定数）
これにより、例えば図１に示すように、１０μ秒の時間を画面上で５mmの大きさで表現すると、１ｍ秒の時間を表現するためには１５mmの長さで十分であり、１秒を表現するには２５mmあれば良い。したがって、たとえ１日の長さでも５０mmに満たない長さで表現することが可能である。このように、本発明によれば、グラフの精度とグラフの（時間的）長さの抑制を両立させることができる。
【００１８】
（実施例１）
以下、図面を参照して本発明の好適な実施例を詳細に説明する。ここでは、ロジックアナライザに適用した例を示す。
【００１９】
図２は本実施例の全体構成を示すブロック図である。同図において、１１は分析の対象となるターゲットシステムであり、オンボードマイクロコンピュータや、無接点シーケンス回路等の論理回路、電子回路、データ通信装置などである。このターゲット製品には、回路上の電気信号をピックアップするためのプローブが接続されているものとする。
【００２０】
１２はターゲットシステム１１の情報を取り出す入力装置であり、上記プローブからの信号を論理的な値に変換する。１３は論理的な値に変換されたデータを格納する事象履歴格納装置であり、ターゲットシステム１１における事象の発生履歴を蓄積する蓄積手段として設けられ、ここには各信号線の値と絶対的な時刻の二つの情報が記録される。
【００２１】
ここで、上記事象とは、注目している信号線の値の変化（Ｌｏｗ→Ｈｉｇｈ、Ｈｉｇｈ→Ｌｏｗ）のことである。また絶対的な時刻は、ターゲットシステム１１がタイマを備えている場合はそのタイマより基準となる時刻を得るが、タイマを備えていない場合はタイマ（時計）１４より基準となる時刻を得る。
【００２２】
また図２中、１５は事象履歴格納装置１３に記録されたデータから視覚的に表示可能なグラフを作成して表示器１６に出力するグラフ作成装置であり、上述の事象発生の時間間隔を非線形関数（ここではＬｏｇａｒｉｔｈｍ）で変換して事象履歴格納装置１３に蓄積された事象の発生グラフを作成する。
【００２３】
本実施例では、記録する信号線が１本の場合について考えており、この場合、ある事象から次の事象までの間、つまりその信号線の状態が変化（Ｌｏｗ→ＨｉｇｈまたはＨｉｇｈ→Ｌｏｗ）する間のＬｏｇａｒｉｔｈｍを取っている。図３に、ある論理回路の分析をしたときの表示グラフの例を示す。この例では、ターゲットが稼働している状態と、長い間アイドルになっている状態とが、同一画面上に示されている。
【００２４】
図４は本実施例の動作を示すフローチャートである。まず、入力装置１２でターゲットシステム１１からの信号を待ち（ステップＳ１）、信号入力があるとその信号を上述のように論理的な値に変換し（ステップＳ２）、その変換データを事象履歴格納装置１３に時刻データと共に格納する（ステップＳ３）。
【００２５】
以下、終了条件（指定した数のデータを記録した、など）が満たされるまで、ステップＳ１〜ステップＳ３を繰り返し、データを蓄積する（ステップＳ４）。
【００２６】
そして、終了条件が満たされると、グラフ作成装置１５により事象発生の時間間隔を非線形関数で変換して、この変換された時間間隔でもって上記事象の発生グラフを作成し（ステップＳ５）、表示器１６にそのグラフを表示させる（ステップＳ６）。
【００２７】
（実施例２）
本実施例は、上記実施例の装置において、記録する信号線が複数ある場合を示す。この場合、各々の信号線の事象の相関関係が重要な要素となるため、すべての事象の発生時刻を基準としてＬｏｇａｒｉｔｈｍを取る。図５に、ある論理回路の分析を行ったときのグラフの例を示す。横軸は時間を表し、対数軸となっている。対数を取る基準点となる各信号線で発生した事象は、グラフ上では★印で表現されている。
【００２８】
ここで、本方法では図５に示すグラフのように、事象と事象の間は正しい時間間隔で表示されるが、各々の信号線のグラフは正しい時間を表示できない。つまり、図５中の間隔ａ，ｂ，ｃは正確な時間を表現しているが、間隔ｍ，ｎは正確な時間を表現していない。
【００２９】
そのため、本装置では、画面のグラフ上に示された★印をマウスなどのポインティングデバイスで選択することによって、その★印からの累積時間をグラフ上に数値表示する機能を有するようにしている。
【００３０】
（実施例３）
本実施例は、リアルタイムＯＳ上のアプリケーションプログラムの開発環境（デバッガ）に適用した例である。
【００３１】
リアルタイムＯＳでは、複数のタスク間で制御の移動が繰り返され、処理が進んで行く。多くのリアルタイムＯＳでは、システムコール実行後にリスケジューリングを行い、必要が生じた場合にタスク間の制御の移行（タスクスイッチ）が起こる。したがって、システムコールの前後の実行タスクが判れば、タスクスイッチの有無とその要因を調べることができる。
【００３２】
図６は本実施例によるマルチタスクデバッガの全体構成を示すブロック図であり、図２と同一符号は同一構成要素を示している。
【００３３】
ターゲットシステム１１には、リアルタイムＯＳのカーネルの状態を遠隔コンピュータに転送するためのデータ送信装置２１が備えられている。このデータ送信装置２１からのデータは、データ受信装置２３により、ホストコンピュータ上で受信される。
【００３４】
上記受信されたデータは事象履歴格納装置１３に格納されるが、この事象履歴格納装置１３に記録される情報は、システムコールの種類、システムコールの発生時刻及びシステムコール発生後アクティブとなったタスクＩＤの三つである。また絶対的な時刻は、ターゲットシステム１１がタイマを備えている場合はそのタイマより基準となる時刻を得る。ターゲットシステム１１がタイマを備えていない場合は、タイマ１４より基準となる時刻を得る。そして、グラフ作成装置１５は、事象履歴格納装置１３に記録されたデータから視覚的なグラフを作成し、表示器１６に送る。
【００３５】
本実施例は、前述の実施例１の場合とほぼ同様である。つまり、リアルタイムＯＳのシステムコールを発行することが事象の発生に相当するので、あるシステムコールから次のシステムコールが発行されるまでの時間のＬｏｇａｒｉｔｈｍをグラフ上に表現する。
【００３６】
図７に、あるリアルタイムＯＳ上に三つのタスクが動作している例を示す。この図はＣＰＵの制御を獲得しているタスクの遷移を示し、システムコールの処理時間のように非常に短い間で処理が完結するものと、長時間実行権を獲得したタスクとが、同一画面上に表示されている。
【００３７】
【発明の効果】
以上説明したように、本発明によれば、複数の信号線から、不定期に発生する事象の時間的遷移の表示において、実際の時間間隔をＬｏｇａｒｉｔｈｍなどの非線形関数で表現することにより、極端に値の異なるグラフを限られた大きさの画面上に、精度を落すことなく効率良く表示する装置を提供することができる。
【図面の簡単な説明】
【図１】  本発明による表示方法を示す説明図
【図２】  実施例１の全体構成を示すブロック図
【図３】  実施例１の表示グラフを示す図
【図４】  実施例１の動作を示すフローチャート
【図５】  実施例２の表示グラフを示す図
【図６】  実施例３の全体構成を示すブロック図
【図７】  実施例３の表示グラフを示す図
【図８】  従来の表示方法を示す説明図
【符号の説明】
１１  ターゲットシステム
１２  入力装置
１３  事象履歴格納装置（蓄積手段）
１４  タイマ
１５  グラフ作成装置
１６  表示器
２１  データ送信装置
２２  データ受信装置
【図１】
0003774507.tif 000002
【図２】
0003774507.tif 000003
【図３】
0003774507.tif 000004
【図４】
0003774507.tif 000005
【図５】
0003774507.tif 000006
【図６】
0003774507.tif 000007
【図７】
0003774507.tif 000008
【図８】
0003774507.tif 000009