(57)【要約】【課題】相対的に大容量のサンプリングデータの表示をより高速に行う。【解決手段】ＰＣ８のデータ収集処理部２０は、一連のデジタルデータがデータ入力部２２から入力されると、セル生成部２４によりデータ圧縮をし、セルを生成してデータ記憶部３２に蓄積していく。インデックス情報生成部２６は、入力された一連のデジタルデータを、サンプリングの開始からの時間の経過に伴い増加し、一定時間経過するとほぼ均等になるように複数ブロックに分割すると共に各ブロックに対応させてインデックス情報を生成する。インデックス情報には、当該ブロックの先頭デジタルデータのシーケンシャル番号、インデックス情報内セルのデータ値、当該ブロック内のデータ変化の有無が含まれる。表示処理部３０は、インデックス情報内データ及び直前のブロックに対応したインデックス情報との比較によりサンプリング期間全体の各データの変化の状態を一画面に表示する。【選択図】図２
2006162350.tif 000002
【特許請求の範囲】
【請求項１】
サンプリングの開始から終了までの間にサンプリングされた一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するサンプリングデータ分析装置において、
入力された一連のサンプリングデータを、１乃至複数のサンプリングデータを含む複数のブロックに分割すると共に、一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を各ブロックに対応させて生成するインデックス情報生成手段と、
サンプリングデータ及びインデックス情報を記憶手段に書き込むデータ出力手段と、
を有し、
前記インデックス情報生成手段は、一連のサンプリングデータをブロック分割する際、サンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるように各ブロックに含まれるサンプリングデータ数を決定することを特徴とするサンプリングデータ分析装置。
【請求項２】
請求項１記載のサンプリングデータ分析装置において、
前記インデックス情報生成手段は、サンプリングを開始してからの経過時間を入力とし、各ブロックを構成するサンプリングデータ数を出力とする、予め設定された関数式の出力に従って一連のサンプリングデータをブロック分割することを特徴とするサンプリングデータ分析装置。
【請求項３】
請求項２記載のサンプリングデータ分析装置において、
前記関数式は、単調増加関数であることを特徴とするサンプリングデータ分析装置。
【請求項４】
請求項２記載のサンプリングデータ分析装置において、
前記関数式は、アークタンジェント関数を含むことを特徴とするサンプリングデータ分析装置。
【請求項５】
請求項１記載のサンプリングデータ分析装置において、
ユーザにより入力された、各ブロックを構成するサンプリングデータ数を特定可能なブロック分割情報を記憶するユーザ設定情報記憶手段を有し、
前記インデックス情報生成手段は、一連のサンプリングデータをブロック分割する際、前記ユーザ設定情報記憶手段に記憶されたブロック分割情報を参照にして各ブロックのサンプリングデータ数を決定することを特徴とするサンプリングデータ分析装置。
【請求項６】
請求項１記載のサンプリングデータ分析装置において、
前記記憶手段に記憶されている各インデックス情報を読み出してサンプリング期間全体のサンプリングデータの時系列変化の状態を一画面上に表示する表示処理手段を有することを特徴とするサンプリングデータ分析装置。
【請求項７】
請求項１乃至６のいずれか１項に記載のサンプリングデータ分析装置において、
ロジックアナライザであることを特徴とするサンプリングデータ分析装置。
【請求項８】
サンプリングの開始から終了までの間に測定された一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するコンピュータを、
入力された一連のサンプリングデータを、１乃至複数のサンプリングデータを含む複数のブロックに分割すると共に、一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を各ブロックに対応させて生成するインデックス情報生成手段、
サンプリングデータ及びインデックス情報を記憶手段に書き込むデータ出力手段、
として機能させ、
前記インデックス情報生成手段は、一連のサンプリングデータをブロック分割する際、サンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるように各ブロックのサンプリングデータ数を決定することを特徴とするプログラム。
【請求項９】
サンプリングの開始から終了までの間に測定された一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するコンピュータを、
入力された一連のサンプリングデータが１乃至複数のサンプリングデータを含む複数のブロックに分割された場合においてその一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を、各ブロックに対応させて記憶する記憶手段から読み出して、サンプリング期間全体のサンプリングデータの時系列変化の状態を一画面上に表示する表示処理手段として機能させることを特徴とするプログラム。
【請求項１０】
サンプリングの開始から終了までの間にサンプリングされた一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するサンプリングデータ分析装置において実施され、
入力された一連のサンプリングデータを、１乃至複数のサンプリングデータを含む複数のブロックに分割すると共に、一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を各ブロックに対応させて生成するインデックス情報生成ステップと、
前記各インデックス情報から位置特定情報と状態情報とを読み出してサンプリング期間全体のサンプリングデータの時系列変化の状態を一画面上に表示する表示ステップと、
を含むことを特徴とするサンプリングデータ分析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サンプリングデータ分析装置、特に相対的に長い期間データサンプリングしたときのデータ表示に適した装置に関する。
【背景技術】
【０００２】
ロジックアナライザは、接続されたデジタル機器が出力するデジタルデータの変化の状態をディスプレイに表示する機能を有するサンプリングデータの分析装置である。ユーザは、ロジックアナライザを利用することで、ディスプレイに表示されたデジタルデータの変化の状態を分析し、デジタル機器の動作状況をチェックすることができる。
【０００３】
従来、ロジックアナライザへのデジタルデータのサンプリング期間は、デジタルデータの記憶手段の容量、圧縮率等にも依存するが、数秒から数十秒と比較的短時間の測定が主流であった。従来では、このように短時間でのサンプリングで現象が再現しない場合には、日単位のサンプリングが必要になる。しかしながら、日単位の測定ではデータ量が膨大になってしまい、大容量の記憶装置が必要となってしまう。また、サンプリング期間内におけるデジタルデータの変化の状態を確認させるために、サンプリングの開始から終了までにサンプリングしたデジタルデータ全体を一画面に表示させるようにしている。ただ、日単位等サンプリング期間が長い場合には、ディスプレイの画素数の限界によりサンプリングデータの変化の状態を視認可能に一画面上に表示させることは困難であった。
【０００４】
これを解消するために、サンプリングデータの変化の抜けがないように縮小のための演算処理を行うことでサンプリングデータ全体の表示を可能にした縮小表示方法が提案されている（例えば特許文献１）。
【０００５】
【特許文献１】特開平２−２６１４５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の縮小表示方法は、収集されたサンプリングデータ全てを対象として縮小のための演算処理を行っていたため、演算処理に多大な時間を要してしていた。特に、サンプリング期間が長い場合にはサンプリングデータが数ギガバイトと膨大なデータ量となるため処理時間の長期化が顕著であった。この演算処理の長期化に伴い、サンプリング期間全体のデジタルデータの変化の状態が表示されるまでに多大な時間を要していた。
【０００７】
本発明は、以上のような課題を解決するためになされたものであり、その目的は、相対的に大容量のサンプリングデータの表示をより高速に行うことのできるサンプリングデータ分析装置を提供することにある。
【課題を解決するための手段】
【０００８】
以上のような目的を達成するために、本発明に係るサンプリングデータ分析装置は、サンプリングの開始から終了までの間にサンプリングされた一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するサンプリングデータ分析装置において、入力された一連のサンプリングデータを、１乃至複数のサンプリングデータを含む複数のブロックに分割すると共に、一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を各ブロックに対応させて生成するインデックス情報生成手段と、サンプリングデータ及びインデックス情報を記憶手段に書き込むデータ出力手段とを有し、前記インデックス情報生成手段は、一連のサンプリングデータをブロック分割する際、サンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるように各ブロックに含まれるサンプリングデータ数を決定することを特徴とする。
【０００９】
また、前記インデックス情報生成手段は、サンプリングを開始してからの経過時間を入力とし、各ブロックを構成するサンプリングデータ数を出力とする、予め設定された関数式の出力に従って一連のサンプリングデータをブロック分割することを特徴とする。
【００１０】
また、前記関数式は、単調増加関数であることを特徴とする。
【００１１】
また、前記関数式は、アークタンジェント関数を含むことを特徴とする。
【００１２】
また、ユーザにより入力された、各ブロックを構成するサンプリングデータ数を特定可能なブロック分割情報を記憶するユーザ設定情報記憶手段を有し、前記インデックス情報生成手段は、一連のサンプリングデータをブロック分割する際、前記ユーザ設定情報記憶手段に記憶されたブロック分割情報を参照にして各ブロックのサンプリングデータ数を決定することを特徴とする。
【００１３】
また、前記記憶手段に記憶されている各インデックス情報を読み出してサンプリング期間全体のサンプリングデータの時系列変化の状態を一画面上に表示する表示処理手段を有することを特徴とする。
【００１４】
また、上記各サンプリングデータ分析装置は、ロジックアナライザであることを特徴とする。
【００１５】
本発明に係るプログラムは、サンプリングの開始から終了までの間に測定された一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するコンピュータを、入力された一連のサンプリングデータを、１乃至複数のサンプリングデータを含む複数のブロックに分割すると共に、一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を各ブロックに対応させて生成するインデックス情報生成手段、サンプリングデータ及びインデックス情報を記憶手段に書き込むデータ出力手段として機能させ、前記インデックス情報生成手段は、一連のサンプリングデータをブロック分割する際、サンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるように各ブロックのサンプリングデータ数を決定することを特徴とする。
【００１６】
他の発明に係るプログラムは、サンプリングの開始から終了までの間に測定された一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するコンピュータを、入力された一連のサンプリングデータが１乃至複数のサンプリングデータを含む複数のブロックに分割された場合においてその一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を、各ブロックに対応させて記憶する記憶手段から読み出して、サンプリング期間全体のサンプリングデータの時系列変化の状態を一画面上に表示する表示処理手段として機能させることを特徴とする。
【００１７】
本発明に係るサンプリングデータ分析方法は、サンプリングの開始から終了までの間にサンプリングされた一連のサンプリングデータを入力し、サンプリング期間全体のサンプリングデータの変化の状態を一画面上に表示するサンプリングデータ分析装置において実施され、入力された一連のサンプリングデータを、１乃至複数のサンプリングデータを含む複数のブロックに分割すると共に、一連のサンプリングデータ中における当該ブロックの位置特定情報と当該ブロックにおけるサンプリングデータの値の変化の状態を示す状態情報とを含むインデックス情報を各ブロックに対応させて生成するインデックス情報生成ステップと、前記各インデックス情報から位置特定情報と状態情報とを読み出してサンプリング期間全体のサンプリングデータの時系列変化の状態を一画面上に表示する表示ステップとを含むことを特徴とする。
【発明の効果】
【００１８】
本発明によれば、一連のサンプリングデータを、複数のブロックに分割し、各ブロックに対応させて当該ブロックを構成するサンプリングデータ値等を含むインデックス情報を生成するようにしたので、このデータ量の少ないインデックス情報を参照に表示処理を行わせることで、より高速な表示処理の実現が可能になる。
【００１９】
また、一連のサンプリングデータをブロック分割する際、サンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるように各ブロックに含まれるサンプリングデータ数を決定するようにした。換言すると、サンプリング開始時点ではインデックス情報を相対的に多く、時間の経過につれ相対的に少なく若しくは一定になるようにインデックス情報を生成するようにしたので、サンプリングデータ数の多少それぞれに適切な表示形態で、サンプリングデータの変化の状態を一画面上に表示することができる。
【発明を実施するための最良の形態】
【００２０】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【００２１】
図１は、本発明に係るサンプリングデータ分析装置の一実施の形態であるロジックアナライザを示したハードウェア構成図である。図１には、デジタル回路２を搭載した測定対象機となるデジタル機器４が設けられており、ロジックアナライザに相当するデータ収集装置６とパーソナルコンピュータ（ＰＣ）８とが示されている。データ収集装置６は、プローブ１０を介してデジタル回路２から出力されるデジタルデータを定周期のサンプリング間隔で収集し、内部に一時記憶する。本実施の形態におけるデータ収集装置６は、２６チャネルを有しており、各チャネルからのデータを４バイト長にまとめてデジタルデータとして出力する。ＰＣ８は、データ収集装置６が収集し、汎用インタフェース１２を介して出力したデジタルデータを可変長に圧縮した後ハードディスクドライブ（ＨＤＤ）１４に保存し、また、ディスプレイ１６に表示する。
【００２２】
図２は、本実施の形態におけるＰＣ８を示したブロック構成図である。図２には、データ収集処理部２０と表示処理部３０とデータ記憶部３２とが示されている。ＰＣ８は、保存データ量の削減のために上記のようにデジタルデータの圧縮処理を施すが、本実施の形態では、圧縮後のデジタルデータの固まりを「セル」と称することにする。このデータを圧縮しセルを生成する処理は、データ収集処理部２０に含まれるセル生成部２４により実施される。更に、ＰＣ８は、上記圧縮処理とは無関係にデジタルデータの表示処理の高速化のために、１乃至複数のデジタルデータ毎にブロック分けし、そして各ブロックに対応させて、後述するインデックス情報を生成する。この各ブロックに対応付けるインデックス情報を生成する処理は、データ収集処理部２０に含まれるインデックス情報生成部２６により実施される。セル生成部２４によりセル化されたデジタルデータと、インデックス情報生成部２６により生成されたインデックス情報とは、データ記憶部３２に蓄積されていくが、データ記憶部３２への書込処理は、データ出力部２８により実施される。
【００２３】
また、詳細は後述するが、本実施の形態では、インデックス情報生成部２６が生成したインデックス情報に含まれる各種データを参照にしてサンプリング期間全体のサンプリングデータを一画面上に表示することを特徴の一つとしているが、このディスプレイ１６への表示処理は、表示処理部３０により実施される。なお、図２には、本実施の形態において特徴的な構成要素のみを図示し、ロジックアナライザとして本来的に持つ処理機能を実現する構成要素は省略している。
【００２４】
前述したように、ロジックアナライザの測定対象機器はデジタル機器４であるため、本実施の形態では、サンプリングデータとデジタルデータとは同義である。また、１チャネルからサンプリングされる固定長データの量は、サンプリング期間とサンプリング周期とにより決まるが、本実施の形態では、予め決められた定周期でサンプリングを行うため、サンプリング期間の長短によってサンプリングデータ量が増減するものとする。
【００２５】
本実施の形態のＰＣ８における主要な処理は、データサンプリング時に実行されるデータ収集処理と、収集したデータを表示する表示処理とに大別できる。最初に、本実施の形態におけるデータ収集処理について、データ収集装置６が収集したデジタルデータとセルとインデックス情報との関係と共に図３乃至図５を用いて説明する。なお、データ収集装置６からは、２６チャネルからデジタルデータが出力されるが、各チャネルからの出力に対して同等に処理するので、ここでは、説明の簡略化のために１チャネルのみに着目して説明する。
【００２６】
データ収集装置６は、デジタル回路２から出力されるデジタルデータを、サンプリングの開始時点からサンプリング周期毎に収集し、内部に一時保存すると共にＰＣ８と同期を取りながらＰＣ８へ送信する。
【００２７】
ＰＣ８において、データ入力部２２は、データ収集装置６から送られてくるデジタルデータを受信すると（ステップ１０１）、セル生成部２４は、圧縮処理を実行する（ステップ１０２）。本実施の形態におけるセル生成部２４は、順次入力される各サンプリングデータの値が直前のデータ値と同じであれば、同一のセルに含めるという既存技術を利用して圧縮処理を実行する。このように、各セルは、連続する同一サンプリングデータで可変長に生成されるが、生成された各セルには、図４に概念的に示したように、先頭から順にシーケンシャル番号が付される。
【００２８】
セルが生成されると、インデックス情報生成部２６は、一連のサンプリングデータを、それぞれ１乃至複数のサンプリングデータを含む複数のブロックに分割すると共に、各ブロックに対応させてインデックス情報を生成する（ステップ１０３）。前述したセルに対応するデジタルデータの数がデジタルデータ値によってその都度決まるのに対して、インデックス情報が対応付けされる各ブロックに含まれるデジタルデータの数は、予め設定された規則に従って決定される。図４では、その規則に従い、３，４，５，・・・というデジタルデータ数が決定され、矢印で示したように各ブロックの先頭位置１，４，８，１２，・・・をインデックス情報に設定することで連続したデジタルデータと関連付けるようにしている。
【００２９】
なお、連続したデジタルデータをブロック分割する規則については、追って説明するが、図４から明らかなように、セルに関連付けられるデジタルデータの数と、インデックス情報が付されるブロックを構成するデジタルデータの数とは、無関係に決定される。このため、１つのセルは、複数のインデックス情報に関連付けられている場合もあり、一方、１つのインデックス情報は、複数のセルに関連付けられている場合もある。また、図４に例示したように、各セルを形成するデジタルデータの境目と、インデックス情報が付される各ブロックを構成するデジタルデータの境目とは、必ずしも一致しない。
【００３０】
ここで、インデックス情報のデータ構成について説明する。本実施の形態では、インデックス情報を、サンプル位置、セル位置、サンプル位置セル及びブロック内データの変化というデータで構成している。なお、本実施の形態では、図４に示したように、サンプリングデータ、セル及びインデックス情報にはそれぞれの並び順にシーケンシャル番号が割り振られる。図５において、「サンプル位置」は、一連のサンプリングデータ中に存在する当該ブロックとこのインデックス情報とを対応付ける当該ブロックの位置特定情報である。本実施の形態では、このインデックス情報が対応付けられたブロックの先頭に位置するデジタルデータのシーケンシャル番号がここに設定される。図４に示した例によると、１，４，８，１２，・・・というデジタルデータのシーケンシャル番号がここに設定される。なお、当該ブロック位置特定情報は、一連のサンプリングデータ中の位置が特定できればよいので、「サンプル位置」でなくても、図４においてシーケンシャル番号で示した並び順とサンプリングデータ数との組合せ等他の情報でもよい。
【００３１】
「セル位置」は、このインデックス情報に含まれているセルのシーケンシャル番号である。図４を例にすると、１，１，２，３，・・・というセルのシーケンシャル番号がここに設定される。
【００３２】
「サンプル位置セル」は、このインデックス情報が対応付けられたセルのデータ値である。セルは、連続した同一データを圧縮して形成されるので、セルを形成したデジタルデータの値は全て同値である。従って、「セルのデータ値」というのは、セルを形成したデジタルデータの値と同義である。なお、インデックス情報が対応付けられるブロック（デジタルデータ群）には、複数のセルが含まれる場合もあり得る。すなわち、一ブロック内に複数の異なるセルのデータ値を含む場合もあるので、この場合を考慮すると、「サンプル位置セル」は、このインデックス情報が対応付けられたブロックの先頭に位置するデジタルデータの値と定義してもよい。あるいは、セルとインデックス情報の境目が一致するようにセル又はインデックス情報の生成処理を制御してもよい。
【００３３】
「ブロック内データの変化」は、このインデックス情報が対応付けられるブロック内においてデジタルデータの各ビット値の変化の状態を示す状態情報がここに設定される。本実施の形態では、状態情報としてフラグ情報として表現可能な変化の有無で表す。変化の有無は、第一に、直前のインデックス情報に設定されている「サンプル位置セル」に対する当該ブロック内に含まれるデジタルデータ値の異同によって求めることができる。例えば、直前のインデックス情報の「サンプル位置セル」に“０”が設定されていた場合、当該ブロックの先頭位置のデジタルデータ値が“０”であれば変化無しと判断して“０”が設定され、“１”であれば変化有りと判断して“１”が設定される。なお、先頭のインデックス情報には、直前のインデックス情報が存在しないので、「ブロック内データの変化」には、オール“０”を初期値として設定する。また、第二に、ブロック内に含まれるデジタルデータの排他的論理和で求めることができる。インデックス情報が付加されるブロックには、複数のセルが含まれる場合があることは前述したとおりであるが、この場合、上記第一の判断において当該ブロックに含まれている先頭のデジタルデータのビット値と直前のインデックス情報に設定されている「サンプル位置セル」のビット値とが仮に一致していたとしても、当該ブロック内の途中でビット値が変化している可能性があるからである。従って、当該ブロック内において直前のデジタルデータのビット値との排他的論理和をとることでビット値の変化を検出することができる。以上のようにして、「ブロック内データの変化」では、デジタルデータ値の変化の有無に関する情報を表す。
【００３４】
なお、サンプリングデータ数は大量であることから「サンプル位置」を８バイト長とし、「セル位置」は圧縮するためシーケンシャル番号は４バイトで表現できると判断して４バイト長とした。また、「サンプル位置セル」及び「ブロック内データの変化」は、デジタルデータサイズに合わせて４バイト長とした。
【００３５】
この後、データ出力部２８は、生成されたセル及びインデックス情報をデータ記憶部３２に蓄積する（ステップ１０４）。なお、図３では、便宜的にデジタルデータを収集し、セルを生成し、続いてインデックス情報を生成し、そしてセルとインデックス情報を蓄積するという４つの処理ステップを一連の処理として単に並べて示した。しかし、上記説明から明らかなように、セルとインデックス情報とを生成するそれぞれのデジタルデータの数は無関係に決定されるため、実際のデータ収集処理は、データサンプリングの開始から終了までステップ１０１〜１０４に示した処理を適宜繰り返しながら実行されることで、セルとインデックス情報は生成されることになる。
【００３６】
次に、収集された一連のデジタルデータの中から、予め設定した規則に従いインデックス情報を対応付けるサンプリングデータ位置を決定する方法の一例を、図６を用いて説明する。なお、インデックス情報を生成する際には、対応するブロックの先頭に位置するサンプリングデータのシーケンシャル番号をインデックス情報の「サンプル位置」に設定している。従って、以降の説明では、インデックス情報の生成と、「サンプル位置」へのデータ設定とによる、インデックス情報の該当するブロックへの対応付けを「インデックス情報の付加」とも称することにする。
【００３７】
本実施の形態では、一連のサンプリングデータをブロック分割する際、サンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるように各ブロックのサンプリングデータ数を決定するということを特徴としている。
【００３８】
図６には、インデックス情報の付加間隔を決定する際に用いる関数モデル式がそれぞれ示されている。横軸は、サンプリングを開始してからの時間経過を示す時間軸であり、縦軸は、インデックス情報の付加間隔である。
【００３９】
このうち、図６（ａ）には、インデックス情報の付加間隔を決定する際に用いる関数モデル式として、アークタンジェント関数（ａｔａｎ曲線）が示されている。このアークタンジェント関数は、サンプリングを開始してからの経過時間（ｔ）を入力とし、各ブロックを構成するインデックス情報の付加間隔（ｙ）を出力とする。本実施の形態におけるデジタルデータのサンプリング間隔は定周期なので、インデックス情報の付加間隔というのは各ブロックを構成するサンプリングデータ数と同義である。つまり、ｙ＝サンプリングデータ数となる。
【００４０】
図６（ａ）を参照すると、ａｔａｎ曲線の特徴から明らかなように、サンプリングを開始した直後の出力値（インデックス付加間隔）ｙは小さい値なのでインデックス情報の付加間隔は短く、時間が経過するにつれ付加間隔は増加する傾向にある。更に、時間が経過してａｔａｎ曲線がＡ＊π／２で表される漸近線に近づくと、それ以降の付加間隔は長い状態でほぼ均等になる。このように、アークタンジェント関数を採用することで各ブロックを構成するデジタルデータの数を均一にしておらず、サンプリングの開始時点から時間の経過に伴い増加させ、そしてある程度時間が経過するとほぼ均等になるようにしている。なお、インデックス情報の付加間隔を決定する際に、値が連続的に変化するａｔａｎ曲線を用いる場合、「ある程度」というのは、感覚的にはａｔａｎ曲線が漸近線とほぼ並行になった時点という程度で表現するに留まり、後述する数値表を用いる場合と異なり明確な時点は定義できない。
【００４１】
以上のようにして、本実施の形態では、一連のサンプリングデータをブロック分割し、各ブロックにインデックス情報の付加を実現している。なお、本実施の形態では、アークタンジェント関数式を、ｙ＝Ａ・ａｔａｎ（ｔ）と設定している。このＡは定数であり、Ａの値を大きくすると、時間が経過するにつれ付加間隔の増加傾向は急激に増加し、また、ほぼ均等になるときの付加間隔が大きくとられることになる。本実施の形態では、予め設定した規則としてアークタンジェント関数を用いているが、この定数Ａは、図示しない入力設定手段からユーザにより設定できるように構成してもよい。
【００４２】
本実施の形態では、インデックス情報の付加間隔決定方法の最適な例としてアークタンジェント関数を示したが、この他にも図６（ｂ）〜（ｄ）に示したような関数式を採用してもよい。図６（ｂ）はログ関数式であり、図６（ｃ）は１次関数式と定数ｎとを組み合わせた関数式であり、図６（ｄ）は１次関数式である。
【００４３】
図６（ａ）に示したａｔａｎ関数式は、線の傾きが時間の経過と共に緩やかになっていくので、インデックス情報の付加間隔は、時間の経過と共にその伸び率が緩やかになり、そしてある一定間隔に漸近していく。図６（ｂ）に示したｌｏｇ関数式によると、インデックス付加間隔は、図６（ｂ）と同様に線の傾きが時間の経過と共に緩やかになるが、漸近しない。図６（ａ），（ｂ）に対して図６（ｃ），（ｄ）は、減少せずに単調に増加する単調増加関数である。図６（ｃ）に示した関数式によると、インデックス付加間隔は、時間の経過と共に一定に上昇し、決められた時間Ｂに達した以降は一定間隔となる。このモデルの場合、前述した「ある程度」は、時間Ｂと明確に設定できる。図６（ｄ）に示した関数式によると、インデックス付加間隔は、時間の経過と共に一定に増加するのみである。このモデルの場合、前述した「ある程度」は、設定されない。
【００４４】
このように、いずれの関数式においてもサンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるように各ブロックのサンプリングデータ数を決定することができる。
【００４５】
また、本実施の形態においては、関数式を用いなくても各ブロックを構成するサンプリングデータ数を特定可能なブロック分割情報を設定するようにしてもよい。この設定されたブロック分割情報の記憶手段の一例として、インデックス情報付加間隔設定テーブルを図７に示す。データ分析者は、デジタルデータの収集開始前にインデックス情報付加間隔設定テーブルにインデックス付加間隔とその付加間隔を適用するサンプリングデータのシーケンシャル番号を設定しておく。図７の例によると、シーケンシャル番号１〜１０の間における付加間隔は５なので、インデックス情報は、１，６番目のサンプリングデータに付加される。そして、シーケンシャル番号１１〜５０の間における付加間隔は１０なので、１，６番目に続けて１１，２１，３１，・・・番目のサンプリングデータに付加される。
【００４６】
このように、関数式を用いなくても各ブロックのサンプリングデータ数を決定することができる。この場合、インデックス情報付加間隔は、時間の経過に伴い階段状に増加していくことになる。なお、ＰＣ８にデータが予め設定されたインデックス情報付加間隔設定テーブルを持たせるように構成してもよいが、テーブルへの設定内容を更新可能とするのであれば、データを更新するための手段が必要になる。
【００４７】
続いて、本実施の形態における表示処理について図８及び図９を用いて説明する。
【００４８】
表示処理部３０は、サンプリング終了後、ユーザによる入力指示に応じてインデックス情報をデータ記憶部３２から読み出す（ステップ２０１）。本実施の形態では、全チャネル、全サンプリングデータを一画面上に表示するので、そのためにシーケンシャルに付与されたインデックス情報番号及びチャネル番号を示す各変数ｎ，Ｎを初期化する（ステップ２０２）。そして、表示処理部３０は、次の比較処理を行うことでサンプリングデータ値の変化の有無を確認する（ステップ２０３）。まず、当該インデックス情報（index(n+1)）と直前のインデックス情報（index(n)）との「サンプル位置セル」の各値を比較することでインデックス情報間でのデータ値の変化の有無を調べる。また、当該インデックス情報（index(n+1)）の「ブロック内データの変化」の各ビット値を調べることで対応ブロック内でのデータ値の変化の有無を調べる。この結果、変化がないと判断したとき（ステップ２０４）、サンプリングデータのＮビット目の値がＨｉｇｈであったときにはＨｉｇｈで、ＬｏｗであったときにはＬｏｗで、それぞれ画面上に描画する（ステップ２０５〜２０７）。一方、ステップ２０４において、変化があったと判断したときには、不定記号を画面上に描画する（ステップ２０８）。
【００４９】
次に、チャネル番号を１つインクリメントするが（ステップ２０９）、全チャネル（本実施の形態では２６チャネル）に対して上記処理が終了すると（ステップ２１０）、続いてインデックス情報番号を１つインクリメントして（ステップ２１１）、次のインデックス情報を参照に前述した処理（ステップ２０３〜２１１）を繰り返し行い、全てのインデックス情報が処理されると（ステップ２１２）、本実施の形態における表示処理は終了する。
【００５０】
図９には、上記表示処理によりディスプレイ１６に表示された画面の例が示されている。縦軸にはチャネル番号が示されている。本実施の形態では、便宜的に１つのチャネル（ＣＨｍ）の１ビットのサンプリングデータ信号８０の状態変化のみを図示した。測定対象機器であるデジタル機器４のチャネル数は既知なので、ディスプレイ１６の画素数とチャネル数及びデジタルデータサイズとから全チャネルを縦軸上に納まるように表示することは容易である。一方、横軸にはインデックス情報番号が示されている。表示処理部３０は、サンプリングデータの時系列変化の状態を表示するので、横軸は時間の経過を表すことになるが、各インデックス情報に対応したブロックに含まれるサンプリングデータの数は一定ではないので、図９に概念的に示したようにサンプリングデータ数に応じてインデックス情報の幅を異ならせて表示することになる。サンプリングした期間長も明らかなので、サンプリング期間全体を横軸に納まるように表示することは容易である。なお、図６（ｄ）を用いてインデックス情報の付加間隔を決定した場合には等間隔になる。
【００５１】
そして、図９において、Ｈｉｇｈ信号８２は、上記ステップ２０６における処理により描画されたものであり、Ｌｏｗ信号８４は、上記ステップ２０７における処理により描画されたものである。そして、インデックス情報を付加したブロック内において、あるいは直前のインデックス情報との関係において、サンプリングデータ値に変化があったときには該当するインデックス情報の表示部分を不定記号８６で表示する。本実施の形態では、図９に示したように不定記号８６をハッチングで表示するようにした。もちろん、不定記号として他の記号を用いたり、あるいは他の部分と色等を異ならせたりすることでデータ値に変化があったことを視認できるように表示してもよい。このように、該当する箇所を不定記号８６で描画することで、データ分析者は、サンプリングデータ値に変化のあった箇所（時間帯）を一目瞭然に認識することができる。
【００５２】
更に、本実施の形態では、測定されたままデータや圧縮されたデータ（セル）を用いずに、サンプリングデータをグループ化した相対的にデータ量の少ないインデックス情報を用いてサンプリング期間全体のサンプリングデータの状態変化を表示するようにしたので、表示処理をより高速に行うことができる。更に、サンプリングデータのＨｉｇｈ、Ｌｏｗあるいは不定という変化の状態を、演算処理を行わずに、直前のインデックス情報の「サンプル位置データ」あるいは自己の「ブロック内データの変化」との比較処理で判別することができるので、この点においても一層の高速化を実現することができる。なお、本実施の形態では、サンプリング期間全体を表示対象期間としたが、部分的な期間のみを表示することも可能である。
【００５３】
ところで、本実施の形態では、サンプリング期間全体のサンプリングデータの状態変化を表示する際に、変化の遷移を明確に表示せずに不定記号８６により「不定」として状態を表示した。「不定」という状態で表示することは、的確に変化の状態を表示していないようにも考えられる。しかしながら、長期間にわたり収集したデジタルデータ全体の状態変化を明確に一画面に表示したくても、ディスプレイ１６の画素数等を考慮すると、状態変化を表すために各デジタルデータの表示に対して割り振れる画素数は、ほんのわずかしかない。結果として、サンプリング期間が長期の場合、視覚的には変化の状態の明確な表示と不定表示とで差異は生じてこない。このため、「不定」という状態でデータ値の変化の状態を画面表示しても不都合ではないと考えられる。
【００５４】
但し、その一方で、サンプリング期間が１０秒間等短期間であり、サンプリングデータ数が少ないことからデータ値の変化の状態を明確に画面表示できるような場合もあり得る。このような場合にも「不定」という状態で表示することは適切でない。そこで、本実施の形態では、インデックス情報の付加間隔を可変にした。以下に、本実施の形態において、各インデックス情報対応のブロックを構成するサンプリングデータ数を、サンプリング時間が経過するにつれ直前のブロックを構成するサンプリングデータ数と同数又は多くなるようにした理由、特に上記説明したように図６（ａ）に示したａｔａｎ曲線を利用することで、サンプリングの開始直後では、インデックス情報の付加間隔を短くし、そして徐々に増加させ、そして一定期間経過するとほほ均等になるようにした理由について説明する。
【００５５】
例えば、サンプリング期間が短期間の場合、サンプリングは開始してからすぐに終了するが、本実施の形態では、サンプリングの開始直後でのインデックス情報の付加間隔を短くしたので、相対的に数多くのインデックス情報を生成することができる。換言すると、一ブロックに含めるサンプリングデータ数を相対的に少なくした。このため、インデックス情報を用いてサンプリングデータの変化の状態を画面表示するときでもサンプリングデータあるいはセルを表示する場合と近い状態で表示することができ、よって、データ値の変化の状態（ＨｉｇｈかＬｏｗか）を明確に画面表示することができる。
【００５６】
一方、サンプリング期間が長期間の場合、短期間の場合と同様に一ブロックに含めるサンプリングデータ数を少なくしてデータ値の変化の状態を明確に画面表示することができるようにしても、前述したようにディスプレイ１６の画素数等の制限で、その変化の状態を点程度にしか表示することはできない。このため、一ブロックに含めるサンプリングデータ数を常に少なくしてもあまり効果的でないばかりか、インデックス情報の数量の増大に伴う処理負荷の増加を招き、かえって表示処理の高速化の弊害を招いてしまう。このため、本実施の形態では、時間の経過に伴いインデックス情報の変化の状態を「不定」としか認識できなくても、一画面上での変化の状態の表示形態を考えれば、変化の状態の有無さえ認識できていれば問題はないと判断した。この結果、インデックス情報の付加間隔を時間経過に伴い相対的に長くすることで、生成されるインデックス情報の数を極力抑えることでデータ量の増加の防止と共に、画面表示に要する処理時間の短縮化を図るようにした。つまり、本実施の形態によれば、表示処理の高速化を実現することができる。
【００５７】
なお、本実施の形態では、ロジックアナライザをデータ収集装置６とＰＣ８の別装置に分けて構成するようにしたが、データ収集装置６が持つデータ収集機能及びサンプリングデータそのものを保持する機能をＰＣ８に持たせることでデータ収集装置６とＰＣ８とを一体に形成し、ロジックアナライザをＰＣ８単体で形成するようにしてもよい。
【００５８】
また、本実施の形態では、本発明に係るサンプリングデータ分析装置を、デジタルデータを分析するロジックアナライザに適用した場合を例にして説明した。ロジックアナライザは、一般に前述したデータ収集処理機能とデータ表示処理機能の双方を併せ持つが、各処理機能を別個のコンピュータに搭載して実施することも可能である。また、ロジックアナライザ以外の装置にも適用することは可能である。
【図面の簡単な説明】
【００５９】
【図１】本発明に係るサンプリングデータ分析装置の一実施の形態であるロジックアナライザを示したハードウェア構成図である。
【図２】本実施の形態におけるロジックアナライザを示したブロック構成図である。
【図３】本実施の形態におけるデータ収集処理を示したフローチャートである。
【図４】本実施の形態におけるサンプリングデータとセルとインデックス情報との関係を示した概念図である。
【図５】本実施の形態におけるインデックス情報のデータ構成例を示した図である。
【図６】本実施の形態におけるインデックス情報の付加間隔を決定する際に用いる関数式を示した概念図である。
【図７】本実施の形態におけるインデックス情報付加間隔設定テーブルのデータ構成例を示した図である。
【図８】本実施の形態における表示処理を示したフローチャートである。
【図９】本実施の形態における表示処理によりディスプレイに表示された画面の例を示した図である。
【符号の説明】
【００６０】
２  デジタル回路、４  デジタル機器、６  データ収集装置、８  パーソナルコンピュータ（ＰＣ）、１０  プローブ、１２  汎用インタフェース、１６  ディスプレイ、２０  データ収集処理部、２２  データ入力部、２４  セル生成部、２６  インデックス情報生成部、２８  データ出力部、３０  表示処理部、３２  データ記憶部、８０  サンプリングデータ信号、８２  Ｈｉｇｈ信号、８４  Ｌｏｗ信号、８６  不定記号。
【図１】
2006162350.tif 000003
【図２】
2006162350.tif 000004
【図３】
2006162350.tif 000005
【図４】
2006162350.tif 000006
【図５】
2006162350.tif 000007
【図６】
2006162350.tif 000008
【図７】
2006162350.tif 000009
【図８】
2006162350.tif 000010
【図９】
2006162350.tif 000011