(57)【要約】デジタルオシロスコープにおける処理を設定及び実施するための方法及び装置。方法は、１つまたはそれより多い命令を受け取るステップ及び受け取った命令に基づいて複数の処理要素を定めるステップを含む。複数の処理要素は、所望の処理を実行するための処理ウエッブを定めるように接続される。複数の処理要素は同期化されて、同期化された結果を生成する。【特許請求の範囲】
【請求項１】
デジタルオシロスコープにおける処理を設定し、実行するための方法において：
１つまたはそれより多いパラメータを受け取るステップ；
前記受け取ったパラメータに基づいて複数の処理要素を定義するステップ；及び
処理ウエッブを定めるように前記複数の処理要素を接続するステップ；
を含むことを特徴とする方法。
【請求項２】
前記複数の処理要素の内の少なくとも２つの処理要素が相異なるレートで更新されることを特徴とする請求項１記載の方法。
【請求項３】
処理オブジェクトが前記処理要素の内の前記少なくとも２つの処理要素の前記更新を制御することを特徴とする請求項２記載の方法。
【請求項４】
前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第１の処理要素が高アクイジションレートで動作し、前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第２の処理要素が、より低い、表示レートで動作することを特徴とする請求項２記載の方法。
【請求項５】
前記複数の処理要素の内の前記少なくとも２つの処理要素が、更新されないときにはアイドル状態にあることを特徴とする請求項２記載の方法。
【請求項６】
前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第１の処理要素が高レートで動作する累積型処理要素であり、前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第２の処理要素が低レートで動作する非累積型処理要素であることを特徴とする請求項２記載の方法。
【請求項７】
デジタルオシロスコープにおける処理を設定し、実行するための方法において：
１つまたはそれより多い命令を受け取るステップ；
前記受け取った命令に基づいて複数の処理要素を定義するステップ；
所望の処理を実行するための処理ウエッブを定めるように前記複数の処理要素を接続するステップ；及び
前記複数の処理要素を同期化して、同期化された結果を生成するステップ；
を含むことを特徴とする方法。
【請求項８】
前記複数の処理要素の内の少なくとも２つの処理要素が相異なるレートで更新されることを特徴とする請求項７記載の方法。
【請求項９】
前記複数の処理要素の内の１つの処理要素が所要のデータを上流のソースにリクエストすることを特徴とする請求項８記載の方法。
【請求項１０】
前記リクエストが、前記複数の処理要素の内の前記１つの処理要素の更新ピンのアクティブ化時になされることを特徴とする請求項９記載の方法。
【請求項１１】
前記複数の処理要素の内の１つの処理要素が、下流の処理要素によりデータが前記複数の処理要素の内の前記１つの処理要素にリクエストされたときに、前記データを上流の処理要素にリクエストすることを特徴とする請求項８記載の方法。
【請求項１２】
前記複数の処理要素間にバッファが存在しないことを特徴とする請求項１１記載の方法。
【請求項１３】
Ｍを１以上の整数、Ｎを０以上の整数として、前記複数の処理要素の内の少なくとも１つの処理要素が、１つの入力ピンにＭ個の入力を受け取り、１つの出力ピンにＮ個の出力結果をつくることを特徴とする請求項７記載の方法。
【請求項１４】
デジタルオシロスコープにおける処理を設定し、実行するための方法において：
複数の処理要素を定義するステップ；
所望の処理を可能にするためのあらかじめ定められた関係で前記複数の処理要素を接続するステップ；及び
前記複数の処理要素を通るデータの適切なフローを管理するために前記複数の処理要素を制御するステップ；
を含むことを特徴とする方法。
【請求項１５】
前記複数の処理要素の前記制御が前記複数の処理要素の内の１つまたはそれより多い処理要素を更新することにより実行されることを特徴とする請求項１４記載の方法。
【請求項１６】
前記複数の処理要素の内の第１の処理要素が高レートで更新され、前記複数の処理要素の内の第２の処理要素が低レートで更新されることを特徴とする請求項１５記載の方法。
【請求項１７】
前記第１及び第２の処理要素の前記アクティブ化が同期化されることを特徴とする請求項１６記載の方法。
【請求項１８】
前記複数の処理要素の内の１つまたはそれより多い処理要素の前記更新が、新しいアクイジションデータが利用可能となる修正に応答して実行されることを特徴とする請求項１５記載の方法。
【請求項１９】
前記複数の処理要素の内の１つまたはそれより多い処理要素の前記更新が下流からのデータリクエストに応答して実行されることを特徴とする請求項１５記載の方法。
【請求項２０】
前記下流からのデータリクエストがレンダリング処理オブジェクトによりなされることを特徴とする請求項１９記載の方法。
【請求項２１】
前記複数の処理要素の内の１つまたはそれより多い処理要素の前記更新が前記複数の処理要素の内のいずれかの処理要素の前記定義の修正に応答して実行されることを特徴とする請求項１５記載の方法。
【請求項２２】
デジタルオシロスコープにおける処理を定める処理ウエッブにおいて：
１つまたはそれより多い受け取った入力パラメータに基づいて定義される複数の処理要素；前記処理要素のそれぞれは個別の処理機能を果たす；及び
前記複数の処理要素の間の情報のフローを定めるための、前記複数の処理要素の間の複数の接続；
を備えることを特徴とする処理ウエッブ。
【請求項２３】
前記複数の処理要素の内の少なくとも２つの処理要素が相異なるレートで更新されることを特徴とする請求項２２記載の処理ウエッブ。
【請求項２４】
処理オブジェクトが前記複数の処理要素の内の前記少なくとも２つの処理要素の前記更新を制御することを特徴とする請求項２３記載の処理ウエッブ。
【請求項２５】
前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第１の処理要素が高アクイジションレートで動作し、前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第２の処理要素が、より低い、表示レートで動作することを特徴とする請求項２３記載の処理ウエッブ。
【請求項２６】
前記複数の処理要素の内の前記少なくとも２つの処理要素が、更新されないときはアイドル状態にあることを特徴とする請求項２３記載の処理ウエッブ。
【請求項２７】
前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第１の処理要素が高レートで動作する累積型処理要素であり、前記複数の処理要素の内の前記少なくとも２つの処理要素の内の第２の処理要素が低レートで動作する非累積型処理要素であることを特徴とする請求項２３記載の処理ウエッブ。
【請求項２８】
デジタルオシロスコープにおける処理を定める処理ウエッブにおいて：
１つまたはそれより多い受け取った命令にしたがって定義される複数の処理要素；及び
所望の処理を実行するための処理ウエッブを定めるために前記複数の処理要素を接続する複数の定められたデータ接続；
を備え：
前記複数の処理要素が同期化されて、同期化された結果を生成する；
ことを特徴とする処理ウエッブ。
【請求項２９】
前記複数の処理要素の内の少なくとも２つの処理要素が相異なるレートで更新されることを特徴とする請求項２８記載の処理ウエッブ。
【請求項３０】
前記複数の処理要素の内の前記少なくとも２つの処理要素の内の１つの処理要素が所要のデータを上流のソースにリクエストすることを特徴とする請求項２８記載の処理ウエッブ。
【請求項３１】
前記リクエストが前記複数の処理要素の内の前記少なくとも２つの処理要素の内の前記１つの処理要素の更新ピンのアクティブ化時になされることを特徴とする請求項３０記載の処理ウエッブ。
【請求項３２】
前記複数の処理要素の内の１つの処理要素が、下流の処理要素により前記複数の処理要素の内の前記１つの処理要素にデータがリクエストされたときに上流のソースに前記データをリクエストすることを特徴とする請求項２８記載の処理ウエッブ。
【請求項３３】
前記複数の処理要素間にバッファが存在しないことを特徴とする請求項３２記載の処理ウエッブ。
【請求項３４】
Ｍを１以上の整数、Ｎを０以上の整数として、前記複数の処理要素の内の少なくとも１つの処理要素が、１つの入力ピンにＭ個の入力を受け取り、１つの出力ピンにＮ個の出力結果をつくることを特徴とする請求項２８記載の処理ウエッブ。
【請求項３５】
デジタルオシロスコープにおける処理を定める処理ウエッブにおいて：
複数の処理要素；及び
所望の処理を可能にするために前記複数の処理要素をあらかじめ定められた関係で接続するための複数の定められた接続；
を備え：
前記複数の処理要素が、前記複数の処理要素を通るデータの適切なフローを管理するために制御される；
ことを特徴とする処理ウエッブ。
【請求項３６】
前記複数の処理要素の前記制御が、前記複数の処理要素の内の１つまたはそれより多い処理要素を更新することにより実行されることを特徴とする請求項３５記載の処理ウエッブ。
【請求項３７】
前記複数の処理要素の内の第１の処理要素は高レートで更新されるべきであり、前記複数の処理要素の内の第２の処理要素は低レートで更新されるべきであることを特徴とする請求項３６記載の処理ウエッブ。
【請求項３８】
前記第１及び第２の処理要素の前記更新が同期化されることを特徴とする請求項３７記載の処理ウエッブ。
【請求項３９】
前記複数の処理要素の内の１つまたはそれより多い処理要素の前記更新が、新しいアクイジションデータが利用可能であるという告知に応答して実行されることを特徴とする請求項３６記載の処理ウエッブ。
【請求項４０】
前記複数の処理要素の内の１つまたはそれより多い処理要素の前記更新が下流からのデータリクエストに応答して実行されることを特徴とする請求項３６記載の処理ウエッブ。
【請求項４１】
前記下流からのデータリクエストがレンダリング処理オブジェクトによりなされることを特徴とする請求項４０記載の処理ウエッブ。
【請求項４２】
前記複数の処理要素の内の１つまたはそれより多い処理要素の前記更新が前記複数の処理要素の内のいずれかの処理要素の前記定義の修正に応答して実行されることを特徴とする請求項３６記載の処理ウエッブ。
【発明の詳細な説明】
【０００１】
関連出願へのクロスリファレンス
本出願は、２０００年１１月１７日に出願された米国仮特許出願６０／２４９，４８２号の恩典を特許請求する。上記出願の全内容は本明細書に参照として含まれる。
【０００２】
発明の背景
デジタルオシロスコープ等を制御するための伝統的な方式においては、取り込まれた様々な波形等を処理するための、明確な、観念的または抽象的汎用モデルが適用されたことはなかった。さらに、利用可能な機能は一義的にあらかじめ定められ、ユーザ側でのフレキシビリティはそれほどなかった。これはおそらく、デジタルオシロスコープの開発にかかわってきた、これらの機器のユーザであることは非常にまれであるきわめて少数の人々が、これらの機器内で実行される処理をいかにして表わすかについて、極めて確固とした考えをもっていたためであろう。
【０００３】
発明の概要
本出願の発明者等は、新世代のオシロスコープ及びその他のデジタル処理装置に機能として含まれる強力な数学ツールを活用するには、完全に抽象的で汎用の記述が不可欠であるとの結論に達した。言い換えれば、そのような処理装置及びシステムの適切な、抽象的かつ汎用の記述は、その装置がどのようにはたらくか、問題を解決するためにその装置をどのように利用できるか及びどのようにすればその装置で利用できる様々な機能を信号を処理するために有利な態様で用い得るかについての有用な理解を生じるために不可欠である。これは、データ処理及び特にオシロスコープ業界における長年の先導者たちの多くが、機能を搭載した製品を提供しながら、これらの機能の完全な恩恵には未だに気づいていないでいるためである。ほとんどのユーザは、装置内部で何がおきているか、またどのようにすれば先進的な機能の全てを利用するに適切に装置を設定できるかについて十分な理解を有していないだけである。
【０００４】
デジタルストレージオシロスコープ（ＤＳＯ）は伝統的に、捕捉された波形の処理を２通りの方法で提供してきた。これらの２通りの方法には、数学機能及びパラメータ機能が含まれる。数学機能は、捕捉された波形をとり、これを処理して別の波形をつくる。パラメータ機能は、捕捉された波形をとり、その波形のパラメータ測定値をつくる。伝統的なオシロスコープ及び処理装置のかなり多くでは、上記の２通りの処理形態はこれらの２通りの事柄を分割するメニューにより制御される。数学機能は、あらかじめ定義され、あらかじめ名付けられた数学機能（一般に、これらの内の５つがルクロイ（ＬｅＣｒｏｙ）オシロスコープでサポートされる）の選択を可能にするメニューにより制御される。パラメータ機能は一般に、あらかじめ定義された多数のパラメータ測定を可能にするメニューにより制御される。一般に、５つのそのようなパラメータがある。これらのメニューは伝統的に、名付けられた機能のそれぞれ毎に、単一の処理要素の定義及び設定を可能にする。より最近のデジタルオシロスコープには、数学機能の代数的定義をサポートする、よりフレキシブルなメニューがあり、限られた数の処理ステップの連結が可能になっている。
【０００５】
しかし、数学及びパラメータ機能は、一方はベクトル結果（波形）をつくり、他方はスカラー結果（パラメータ）を生じさせる、独立したエンティティであると未だに考えられている。ほとんどのＤＳＯでは上記２つの機能の間に関連がない。例えば、パラメータ測定の結果を使用するように数学機能を設定することは、一般に不可能である。ある種のＤＳＯは、パラメータのヒストグラム及び傾向の形態で、上記２つの機能の間に何らかの関連を与えることができるが、この関連は最善でも貧弱である。
【０００６】
また、ＤＳＯにはその他の処理形態も存在するが、それらがユーザに提示されることはほとんどない。例えば、ＤＳＯの表示システムにより一連の波形のパーシステンスが一般に実行される。しかし、得られる２次元パーシステンスマップは伝統的に、ディスプレイ上で見る以外にユーザには利用できず、したがって別の処理のためにＤＳＯが作用するか、または使用することはできない。同じことが、例えばＸ対Ｙフォーマットの２つの波形の表示にも当てはまる。すなわち、現時点において、捕捉された波形からディスプレイ及び／またはその他の出力装置までのＤＳＯの処理フローの全体を、グラフィック態様で、視覚化し、定義するためのフレキシブルシステムは存在しない。
【０００７】
本発明のまた別の目的及び利点は、ある程度は明らかであろうし、またある程度は本明細書及び図面から明らかになるであろう。
【０００８】
したがって本発明は、いくつかのステップ及びそのようなステップの内の１つまたはそれより多くのステップの、他のステップのそれぞれに対する関係、並びに、構成の特徴、要素の組合せ、及び上記ステップの実施に適合された部品の配置を具現化する装置を含み、これらは全て以下の詳細な開示で説明され、本発明の範囲は特許請求の範囲で示される。
【０００９】
好ましい実施形態の詳細な説明
本発明のより完全な理解のため、以下の説明及び添付図面が参照される。
【００１０】
本発明にしたがえば、完全に“モジュール化”されており、よってオシロスコープソフトウエアからなる要素がインターフェースに関して完全に仕様化され、実行時に（例えばオシロスコープアプリケーションソフトウエアと考えることができるプロセスを停止させずに）上記要素のインストール及び取外しを行うことができるように構成するに十分な独立性を有する、オシロスコープ構造が提供される。これは、ソフトウエアのいかなる細かい属性を変更するためにも、完全に（全体が）交換されなければならないソフトウエアを含む、既存製品とは対照的である。本発明の手法は、製品に基本的であるか、または製品の特定のアプリケーションに基本的な、新規のソフトウエア機能のリリースの全体の物流が短縮されるので、市場での優位性を提供する。すなわち、機器（オシロスコープ）が顧客に届けられ、顧客がその装置を稼働させた後に、前記事実により、機器を返送するかまたはこの点については機器の使用を停止することさえ必要とせずに、特別な機能を付け加えることができる。これは顧客にも製造業者にも価値がある。
【００１１】
さらに、モジュール化構造により、ソフトウエアの個々のコンポーネントのそれぞれの標準“テストハーネス”における試験が可能になることにより、製品全体の品質をさらに高めるための“ユニット試験”が可能になる。それぞれのコンポーネントには、孤立試験ができるように特に考えられた標準化インターフェースが備えられる。上記の進歩的な、品質を意識する本構造の態様は、製品の最終配備が不良コンポーネントを特定できないことで阻害されることがないことを保証する。
【００１２】
図２１は本発明にしたがって構成されたオシロスコープがどのように動作するかについての概念を示す。データフローは左から右に向けて、またユーザにより与えられる、自動または手動の、制御シーケンスは上から下に向けて示される。図２１に示されるように、複数のアナログアクイジション信号Ｃ１が本発明のオシロスコープにより取り込まれる。これらのアクイジション信号は、続いてアクイジション制御モジュール２１１２により制御される、用意された様々なプローブ及びその他のアクイジションハードウエア２１１０により、取り込まれる。ユーザインターフェース２１１５を介してユーザにより与えられる様々な制御変数２１２０にしたがって、様々なアクイジション制御プロセスが取り込まれた波形に施される。これらの制御変数は、アクイジション制御モジュール２１１２だけでなく、以下で論じられることになるその他の全てのオシロスコープ機能も制御する。
【００１３】
次いで様々な結果データが前処理システム２１２５に与えられた後に、前処理システム２１２５からの出力に、ユーザ定義制御変数２１２０を用いる様々な後処理機能２１３０がさらに作用して、処理されたデータ（結果データ）２１３５が得られる。後処理されたデータは次いで、やはり制御変数２１２０にしたがい、システム２１４５による別の処理の必要に応じて、２１４０でエクスポート及び／またはインポートされる。処理が完了した後、様々な処理済データはディスプレイ装置２１５５上での表示のために２１５０で変換される。
【００１４】
上記の概念的モデルと従来のオシロスコープモデルとの間の基本的な違いは、少なくとも、“処理”として説明される区分において許される自由度である。本設計に先立つ機器のほとんどにおいては常に、処理結果の数及び形態は固定されて（及び限定されて）いた。本発明にしたがうこの新しいオシロスコープ設計は、“処理ウエッブ”を採用する。処理ウエッブの様々な実施及び全体構造が以下に説明される。
【００１５】
次に図１を参照すれば、基本的にフレキシブルではない（旧世代の）オシロスコープ処理構造を表わす処理ウエッブのグラフィック表示が示される。このオシロスコープの下層構造は変更不可能であり、技術上周知であるが、それでも本発明の処理ウエッブグラフィック表示は適用できる。以下で説明されるように、本発明にしたがって構成されるべき、本発明のはるかにフレキシブルであり無数の設定が可能なハードウエアが可能となるのは、本発明のこの基本的な処理ウエッブグラフィック表示による。処理ウエッブはグラフィック態様で表わされるが、実際には、ウエッブが処理要素間の相互関係及び処理要素の全体的相互作用の制御の定義であることにも注意すべきである。したがって、このグラフィック表示は有用ではあるが、実際は処理ウエッブの一部ではない。
【００１６】
図１に示されるように、処理ウエッブ１００はまず動的（チャネル）データ１１０のデータソースを含む。これらの動的データソースは一般に、様々な波形アクイジションを含む。格納された入力データを表わす静的（メモリ）データ型１２０も含まれる。本発明にしたがえば、これらの入力ノードは“左対右”型グラフィック表示において通常は左側に配置される。図１にはさらに、複数の出力ビュー及び測定可能なオブジェクトがウエッブ図の右端に示される。データソース１１０からビュー１３０への接続は、これらの間の直行線により示されるように直接的であり、いかなる中間処理も介さない１対１の関係である。すなわち、これらの動的データソースは無修正で表示されるものとして示される。パラメータ設定１５０も与えられ、測定されるべき１つまたはそれより多い取込波形の特定のパラメータを示す。図１には、トレースビュー１４０も示される。それぞれのトレースビューは動的入力１１０，格納された入力１２０，トレースビューからの入力またはパラメータ１５０からの入力を受け取ることができ、表示の前に何らかの処理を施すことができる。
【００１７】
それぞれの処理オブジェクトは（様々な入力要件にしたがう）ある入力を受け取り、特定の出力型（例えば、パラメータ、パーシステンスマップまたは波形）を生成する。
【００１８】
これらの処理オブジェクトは情報を得るかまたは生成するための特定の更新または同期化特性も有し、同じ汎用プロセッサモデルを用いて表わすことができるが、数が可変で型も様々な入力、出力及び更新ピンによって指定される。
【００１９】
この単純な固定型オシロスコープ装置において、全てのオブジェクトは、入力であっても出力であっても、ウエッブ図の境界上のオブジェクトとして表わされるが、様々なオブジェクト間の関係は処理ウエッブ内部の接続として表わされる。これらの処理要素の外側境界に沿う配置は、一端に入力を配置し、他端に出力を配するための、グラフィック表示上の約束事でしかない。しかし、このグラフィック表示は稼働しているシステムに何の影響も与えない。この特定の処理ウエッブグラフィック表示は、それぞれの処理要素があらかじめ定められた入力を、全てが同じ速度及び同じリフレッシュレートの、動的入力、静的入力、パラメータ及び、ある場合には以前のトレースビュー、並びに単一システムクロック上の全ての機能の組合せとして受け取る、旧世代のオシロスコープ構造の表示である。すなわち、この特定の表示においては、様々な処理要素、すなわち様々な速度にある機能処理要素の連鎖化への用意はなされておらず、その上、図１に示される処理要素のそれぞれはあらかじめ定められた時にあらかじめ定められた出力をつくる。したがって、望ましい様々な出力を得るためにオシロスコープの処理を修正することはできない。システム内である種の連鎖化及び様々な処理速度が可能なルクロイオシロスコープもあった。しかし、これらの機能を利用できる能力は、いくつかのあらかじめ定められたシナリオに限られていた。以下で述べられるように、本発明にしたがえば、これらの制限は取り除かれ、データレートが相異なり、プロセッサの様々な連鎖に関する要件が相異なる、完全に動的なシナリオ群を可能にする、より一般的な解決策が提供される。
【００２０】
図１の、処理ウエッブの本発明のグラフィック表示にしたがえば、処理ウエッブ（ウエッブ）の設定のグラフィック表示をユーザに提示し、ウエッブを設定することを可能にし、ウエッブの様々な要素のプロパティをユーザが見ること及び修正することを可能にするためのツールとして、処理ウエッブエディタ（ＰＷエディタ）が本発明によって提供される。すなわち、図１に示される固定され、拘束された処理ウエッブの代わりに、より先進的なオシロスコープのための処理ウエッブを、本発明にしたがって構築することができる。この、より先進的な処理ウエッブは、以下に説明されるように、ＰＷエディタにより編集することができ、所望のいかなる結果も生成するためにユーザが所望するいかなる態様にも設定することができる。上述したように、処理ウエッブはＤＳＯの入力から様々な処理段を通り表示装置に至るデータフローを定める。
【００２１】
ＰＷエディタはウエッブを見るため及び再設定するための最も自然な方法ではあるが、必ずしもただ１つの方法ではない。ウエッブを拘束することもでき、また従来のＤＳＯにおける処理フローをエミュレートすることもできる。式、すなわち‘Ｍａｔｈ１ ＝ Ｃｈ１ ＋ Ｃｈ２’を用いる、よりフレキシブルな態様に設定することもできる。これらの可能性は本発明の範囲内にあると目されるが、それらを本明細書で詳細に論じることはない。
【００２２】
すなわち、ＰＷエディタの使用は図１に示されるタイプの、ただし一般的には図１に表わされるウエッブよりはるかに複雑であろう（以下の図７Ａ，７Ｂを参照されたい）、汎用抽象モデルに依存する。そのような編集により、いかなる処理オブジェクトも、入力、出力及び更新の要件及び能力により表わすことができる。すなわち、単純な処理設定も複雑な処理設定も提供し、同時に処理結果の十分に制御された同期化を維持しながら、事実上無制限の数及びタイプの処理オブジェクトを相互接続することが可能である。
【００２３】
この説明で用いるいくつかの用語をここで定義する。結果プロセッサ（または単にプロセッサ）は処理結果を使用及び／生成するソフトウエアオブジェクトである。結果の例は、波形、パラメータ、パーシステンスマップ、ヒストグラム等である。有用であるために、プロセッサは一般に処理ウエッブに挿入され、他のプロセッサと接続されるようにつくられる。言い換えれば、処理ウエッブの設定は基本的にプロセッサ群及びそれらの相互接続により定められる。処理ウエッブマネジャーソフトウエアオブジェクトが、処理ウエッブの管理並びに他のソフトウエアオブジェクトからのリクエスト及びイベントに応答してのプロセッサオブジェクトの部分群の更新を担当する。
【００２４】
上述したように、機器を制御するための古いソフトウエア手段及び態様は、一般に１９８４年から現在までに書かれた、多くの製造業者による様々なレガシーソフトウエアに具現化されている。これらの旧世代のシステムには一般に、図１に関して説明したように、固定された数の処理オブジェクト及び、これらの処理オブジェクトの相互接続及び更新のために用いられる、いくつかの相異なるモデルがある。これらのシステムは、基本的にただ１つのソフトウエア実行スレッド上で動作し、いかなる実質的な態様でも処理フローを変更するために修正することはできない。
【００２５】
これらの旧世代の固定型システムの欠点は以下の通りである：
１．処理オブジェクトの相互接続及び更新のための共通で汎用の抽象モデルをもたない。したがって、多くの処理の組合せを実施することはできず、まして既存の処理要素のいずれかを改変することなどできない。
【００２６】
２．処理オブジェクトの数が一般に、限定され、固定されている（例えば、４つの‘数学’機能、５つの‘パラメータ’、４つの‘メモリ’，等）。
【００２７】
３．一般に、複合処理機能を構成するために一緒に連鎖接続できる処理オブジェクトの数が限られている。さらに、一緒に連鎖接続できるオブジェクトはあらかじめ定められており、ユーザが変えることはできない。
【００２８】
４．実施できる処理オブジェクトのタイプが限られている。レガシー数学機能は１つまたは２つの入力を有し、結果を１つだけ生成する。レガシーパラメータ演算は１つまたは２つの入力を有し、結果を１つだけ生成する。
【００２９】
５．システムは、要件が広範で相異なる（処理対表示更新対ユーザインターフェース応答対．．．等々）多くの様々なシステム事項をただ１つのソフトウエア実行スレッドが処理しようとしなければならないという事実に拘束される。このことの実用上の副作用は、利用できる処理スループット性能強化手段が極めて少ないことである。
【００３０】
よって、本発明にしたがえば、処理ウエッブが提供され、処理ウエッブの設定を修正するための処理ウエッブエディタも提供される。そのような処理ウエッブモデルにおいては、実行可能なウエッブ設定を保証するために、いくつかの規則が適用される。それらの規則は以下の通りである：
１．全ての処理オブジェクトは汎用処理オブジェクトモデルの要件を満たさなければならない。そのような汎用処理オブジェクトの基本要件は、処理オブジェクトが０またはそれより多い入力ピン、０またはそれより多い出力ピン及び０またはそれより多い更新ピンを有することである。どのような使用のためにも、与えられた処理オブジェクトのいずれもが、ある特定の型の、少なくとも１つの入力ピン及び少なくとも１つの出力ピンを有していなければならないことは明らかである。
【００３１】
２．それぞれのオブジェクトの入力及び出力ピンは処理オブジェクトを相互接続するための機能を果たす。処理オブジェクトの入力ピンはどの型の結果オブジェクトをその処理オブジェクトが使用できるかを示し、一方処理オブジェクトの出力ピンはどの型の結果オブジェクトをその処理オブジェクトが生成し得るかを示す。したがって、‘プロセッサＡ’が生成した結果を‘プロセッサＢ’が使用するためには、‘プロセッサＢ’の入力ピンが‘プロセッサＡ’の出力ピンに接続されなければならない。更新ピンは、処理オブジェクトの出力結果を入力結果に対して同期化するために用いられる。上述したように、様々なタイプの処理オブジェクトが、その特定の機能を実施するに必要な、様々な数及び型のピンを有すであろう。
【００３２】
図２（処理オブジェクト階層の例）は、デジタルオシロスコープで一般に遭遇するいくつかの特定の処理階層への本汎用モデルの適用を示す。これらの処理機能は、本発明にしたがう処理ウエッブにおいてユーザにより実施または定義され得る極めて多数の処理機能の代表例にすぎない。実際上は、これらの処理機能は、適切な表示画面上に要素を配置し、所望の処理機能を実施するために様々な入力及び出力を接続することにより、処理ウエッブに入れて用いることができる。
【００３３】
図２において、アクイジションボードプロセッサ階層２１０はいかなる入力ももたず、波形をつくる４つの出力２１６（ボード上のアクイジションチャネルのそれぞれについて１つ、すなわち図１のＣ１，Ｃ２，Ｃ３及びＣ４）を有する。波形アベレージャプロセッサ階層２２０は、入力波形を含む１つの入力２２２及び波形をつくる１つの出力２２６をもつ。波形アベレージャプロセッサ階層２２０はさらに、出力からつくられる波形が入力で見られる波形に関して更新されるときを明示的に制御する（すなわち、波形アベレージャにおける処理が実施されるべきタイミングを正確にとる）更新ピン２２４を備える。波形アダープロセッサ階層２３０は、波形を含む２つの入力２３２及び波形をつくる１つの入力２３６をもつ。波形アダープロセッサ階層２３０はいかなる更新ピンももたず、したがって波形アダープロセッサ階層２３０の出力からつくられる波形は常に、入力で見られる波形に関して実時間で継続的に更新される。トレースレンダラプロセッサ階層２４０は波形を含む１つの入力２４２及び、入力として見られる波形をトレースレンダラがいつサンプリングすべきであるかを明示的に指定する、１つの更新ピン２４４をもつ。トレースレンダラ２４０はいかなる結果出力ももたないが、いずれかの結果をさらにつくる代わりに、入力として見られる波形の表示をグラフィックウインドウに描画する。図２に示される最後の２つの例は、他の型の結果（すなわちパラメータ及びヒストグラム）を示す。アンプリチュードプロセッサ階層２５０は入力２５２からの波形を含み、パラメータ結果を出力２５６につくる。パラメータヒストグラマプロセッサ階層２６０はパラメータ結果を入力２６２として含み、ヒストグラムをリセットし、データ蓄積プロセスを開始する更新ピン２６４により、ヒストグラム結果を出力２６６としてつくる。すなわち、パラメータヒストグラマプロセッサ階層２６０は、更新ピンを有するから、更新ピンを介して明示的に制御されて、いつ入力にパラメータを受け取り、出力につくられるヒストグラム結果を更新すべきであるかを知る。更新ピン及びその制御に関しては以下でさらに論じられる。
【００３４】
図２は、オシロスコープ及びその他のデジタル信号処理装置に有用であり得る、処理階層タイプの少数の簡単な例に触れただけである。上述したように、本発明にしたがう設計により、いかなる特定のプロセッサ階層も、そのプロセッサ階層のための特定の処理機能を実施するために必要なまたは好便な数の、多くの入力、出力及び更新ピンを有することができる。さらに、入力ピンに必要であるか、または出力ピンにより生成される結果型は、どの入力ピンまたは出力ピンについても変わることができる。例えば、複数の結果型を使用し、生成するプロセッサの例を示す図３に示されるようなプロセッサ階層を実施することが可能であろう。この例では、‘先進的プロセッサ’階層３１０が第１の入力３１２で波形を、また第２の入力３１３でパラメータを使用する。先進的プロセッサ階層３１０は４つの出力に結果を生成し、第１の出力には波形、第２の出力３１７にはヒストグラム、他の２つの出力３１８，３１９にはパラメータ結果を生成する。
【００３５】
上述したように、特定のプロセッサ階層のための入力及び出力ピンは、１つの処理オブジェクトが別の処理オブジェクトから生成された結果を使用できるように、処理オブジェクトを相互接続できる能力を備える。
【００３６】
更新ピンは、いつプロセッサが入力からの結果を使用し、続いて、新しく使用される結果に基づいてプロセッサが出力に生成する結果を更新すべきであるかを指定するための明示的機構を提供する。あるタイプのプロセッサだけに更新ピンが備えられる。本質的に累積型のプロセッサは、更新ピンを備える最も一般的な例である。累積型とは、プロセッサが定められた時間にわたり入力から使用するそれぞれの結果からの情報を蓄積し、その情報を先に蓄積された情報となんらかの形でマージして、出力結果を生成することを示す。多くの入力結果の平均化を行うプロセッサは更新ピンをもつプロセッサの一例である。更新が命令されると、アベレージャは利用できる限り多くの結果を入力から使用し、それぞれからのデータを蓄積し、蓄積されたデータのもとになった結果の総数で割り算することにより平均化して出力結果を生成する。出力結果は続いて、次にアベレージャが更新を命令されるまで、同じ出力結果がつくられる状態にとどまり、命令を受けた時点で更新手順を繰り返して、新しい出力結果を生成するであろう。ほとんどのプロセッサ階層はこの明示的更新機構の使用を要さず、よっていかなる更新ピンももたない。これは、ほとんどのプロセッサは、出力がリクエストされたときに入力で現在利用できる結果の関数として出力結果を生成するからである。
【００３７】
したがって、与えられたいかなる処理ウエッブ設定においても、何らかの処理作業を実行するためには、必ず、更新ピンをもつ処理オブジェクトが少なくとも１つなければならない。図４（Ｃ１処理ウエッブ設定のフィルタビュー）は、トレースレンダラ４３０がアクイジションボード４１０のＣ１出力４１６のＦＩＲ（有限インパルス応答）フィルタでフィルタリングされた結果を見るという、簡単な処理ウエッブ設定を示す。この設定においては、トレースレンダラ４３０が更新ピン４３４を介して更新されるまで、何の処理作業も行われない。更新された時点で、トレースレンダラ４３０はＦＩＲフィルタ４２０の出力４２６に結果をリクエストし、続いてＦＩＲフィルタ４２０がアクイジションボード４１０のＣ１出力４１６に結果をリクエストするであろう。すなわち、特定の要素に対する更新ピンの実施により、情報のリクエストが、リクエストされたデータを入手できるまで上流に渡されてゆく手続きが開始される。トレースレンダラ４３０が結果の処理を終了する（すなわちこれらの結果の表示可能画像を構築する）と、トレースレンダラ４３０は結果をリリースし、この設定は、トレースレンダラの次の更新サイクルまで、再びアイドル状態になる。
【００３８】
図５（Ｃ１処理ウエッブ設定の平均化ビュー）は、更新ピンをもつ２つの処理オブジェクト、波形アベレージャ５２０及びトレースレンダラ５３０が見られる、若干複雑な設定を示す。このシナリオにおいては、波形アベレージャ５２０またはトレースレンダラ５３０がそれぞれの更新ピン５２４，５３４を介して更新されるまで、設定はアイドル状態にある。波形アベレージャ５２０が更新されると、波形アベレージャ５２０はアクイジションボード５１０のＣ１出力５１６に結果をリクエストし、それらの結果を蓄積し、正規化して新しい出力結果５２６をつくるであろう。トレースレンダラ５３０が更新されると、トレースレンダラ５３０は波形アベレージャ５２０の出力５２６に結果をリクエストし、表示可能画像を構築することによりこれらの結果を処理するであろう。波形アベレージャ５２０が更新されないでいる内にトレースレンダラ５３０が再び更新されると、トレースレンダラは同じ結果を波形アベレージャの出力から得るだけであろう。この場合、トレースレンダラには、同じデータを再処理することが必要となるような何らかの定義態様の変更（例えば表示可能画像が再スケーリング不能である場合にグラフィック画面サイズが変更される）がなされていない限り、実行すべきいかなる処理作業もないであろう。すなわち、様々な更新ピン及びデータ転送シーケンスの適切な同期化が、以下で論じられるように、特に様々な処理オブジェクトを相異なるクロック速度ではたらかせることが望ましい場合に、肝要である。
【００３９】
上記説明から明らかなように、システムのそれぞれのノードで適切なデータが受け取られること及び更新ピン実施シーケンスが確実にシステムを適切に機能させることを保証するためには、様々な更新ピンの実施を管理することが必要である。したがって、処理ウエッブマネジャーソフトウエアオブジェクトが処理ウエッブの管理及び別のソフトウエアオブジェクトからのリクエスト及びイベントに応答しての処理オブジェクトの部分集合の更新を担当する。処理ウエッブマネジャーオブジェクトは全ての処理オブジェクトのリストを維持し、どのイベントに基づいてどのプロセッサがどの順序で更新されるべきかを決定するために相互接続経路及び処理オブジェクト自体を解析する。プロセッサがいつ更新されるべきかを決定するために、処理ウエッブマネジャーオブジェクトは３つの相異なるイベントまたはリクエスト：（１）ある処理オブジェクトの出力で新しい結果が利用可能であることの表示（新結果利用可能）；（２）いくつかの処理オブジェクトによるデータの再処理が必要となる、特定の機能（ウエッブ同期化）が実行されなければならないときのような、処理ウエッブ上のプロセッサの全てまたはいくつかの同期化のためのリクエスト；及び（３）処理ウエッブ上の処理オブジェクトの内の１つの定義の変更（定義変更）に反応する。初めの２つのイベント（（１）新結果利用可能及び（２）ウエッブ同期化）は、他の基本システムマネジャーオブジェクトにより発せられる。結果ソースマネジャー（またはアクイジションマネジャー）が、新しいソース（アクイジション）結果が利用可能であるときに、そのことを新結果利用可能リクエストにより処理ウエッブマネジャーに告げる。結果シンクマネジャー（または表示マネジャー）は、レンダラ（または結果シンク）処理オブジェクトの‘同期化スナップショット’をとりたいときに、そのことをウエッブ同期化リクエストにより処理ウエッブマネジャーに告げる。そのようなスナップショットは、下流からのデータリクエストに用いることができ、上流データのクロック同期通過を生じさせる。定義変更リクエストは、あるプロセッサの定義が変更されたときに、そのプロセッサの定義変更に応答して全ての処理オブジェクトを更新するために、定義が変更されたことを処理ウエッブマネジャーに告知するために、含まれる処理オブジェクトのいずれによっても用いられる。
【００４０】
処理ウエッブマネジャーは、更新されるべきプロセッサを２つの部分群に分割する。第１のプロセッサ群は新結果利用可能リクエストに応答して更新される。第２のプロセッサ群はウエッブ同期化リクエストに応答して更新される。これらの入力リクエストを互いに完全に無関係にすることにより、プロセッサの２つの部分群に対して相異なる２つの更新レートをサポートすることが可能になる。事実、オシロスコープでは、このことが、表示システムが結果を使用し得るレートよりかなり高いレートでアクイジションシステムが結果を生成できる、高速及び高性能、高データスループット動作点において特に有利な、重要な特徴となる。そのような場合に、処理ウエッブ設定が他の累積型処理オブジェクトを含んでいれば、それぞれの表示システムリクエスト間の同期化のため、多くのアクイジション（ソース）結果を累積するためにそれらの累積型プロセッサを利用することができる。本発明の機能だけが、この有利な手順を備えることができる。
【００４１】
図６（更新シーケンス：Ｃ１処理ウエッブ設定の平均化ビュー）は、処理経路の分離を利用する、可能なシーケンスの例を示す。番号付矢印１−２−３は、アクイジションドライブ型実行スレッド及びそのシーケンスを示す。文字付矢印は、表示ドライブ型実行スレッド及びそのシーケンスを示す。これらの２つの実行スレッドは、処理ウエッブマネジャーが上述したイベントのそれぞれに応答して個別のプロセッサを更新するので、互いに無関係である。データスループットが高い場合、番号付シーケンス１−２−３は、文字付シーケンスＡ−Ｂ−Ｃが実行される毎に何度も何度も実行され得るから、より短い時間内によりよい測定を提供する。すなわち、アクイジションを非常に高いレートでおこなうことができる一方で、表示をより遅いレートで行うことができ、よって高速経路／低速経路の複合を生じさせることができる。
【００４２】
しかし、２つのそのようなデータレートが用いられる場合には、精確な同期化が非常に重要である。図６の例はこの要件の説明に用いられる。波形アベレージャは非常に高いレートで信号を取り込み、平均波形を出力するであろう。トレースレンダラがこの出力平均波形を表示するであろう。適切に同期化されていなければ、波形アベレージャは、表示時現在の波形までの、現在の波形を精確に含む全ての波形の平均を示すのではなく、現在の波形を含まないかまたは現在の波形の表示後の波形を含む波形群からの結果を示すことになりかねない。すなわち、適切な同期化結果を与えるためには、例えば、より高速の波形アベレージャ更新の精確な状態に合わせてトレースレンダラが更新されることが肝要である。
【００４３】
上記の更新手順により、処理時間が短くなるという付加的利点が得られる。例えば、表示すべきデータがさらにあるか否かをトレースレンダラが継続的に照会することはない。逆に、トレースレンダラはデータが更新されたときに、表示のためのデータを波形アベレージャにリクエストして受け取る。すなわち、処理オブジェクトは機能を果たすべきときにのみアクティブになる。
【００４４】
したがって、上記更新手順により、下流の要素が上流の要素にデータをリクエストし、その時にのみデータが転送される、“プル型”システムがつくられる。この型の処理の付加的な利点は中間バッファが必要とされないことである。データはリクエスト後にのみ届くから、記憶装置は必要ない。すなわち、上述したような処理要件の大幅な軽減がある上に、上記の中間バッファの排除という利点が得られる。
【００４５】
上記“プル型”システムの別の利点は、処理結果数が入力ソースとの１対１の関係に拘束される必要がないことである。旧世代のオシロスコープでは、１つの波形が処理要素に入力されると、処理後に１つの波形が得られた。しかし、本発明にしたがえば、あらゆる数の入力または測定からあらゆる数の出力を生成できる。すなわち、あらゆる数の入力に対して、０，１またはそれより多い出力を生成できる。旧世代のオシロスコープのほとんどは、例えば、単一波形の処理を実行できる。しかし、単純な例として、本発明にしたがえば、２つの波形を入力して平均波形を出力でき、あるいは複数の波形を入力して最大及び最小平均波形を出力できる。その他のいかなる機能も、所望に応じて、あらゆる数（Ｍ）の入力及びあらゆる数（Ｎ）の出力を用いて実行できる。
【００４６】
所望に応じて複数の処理要素を順次連結できる能力のため、そのような処理システムのグラフィック表示がなお一層必要である。そのように表示されれば、いかなる数の処理要素も処理ウエッブ上に配置できる。いかなるオブジェクトも見ることができる。基本アーキテクチャの範囲内で許される与えられた“処理ウエッブ”の複雑性に対する制限は基本的にない。基本的な実験室用計測器には過大なフレキシビリティが望ましいものであるとはいえない。しかし、専用目的の用途では、アーキテクチャが拘束されないことが極めて望ましい。
【００４７】
したがって、図７Ａ及び７Ｂに示されるように、様々な設定のより複雑な処理ウエッブが表示される。図７Ａは、固定型ウエッブではあるが、図１に示される処理ウエッブよりはるかに大きな複雑性を備えるウエッブを示す。図７Ａに示されるように、プラグインプローブまたは同様の要素Ａ及びＢが備えられる。これらのプラグイン要素はそれぞれ、４つの入力波形Ａ１〜Ａ４及びＢ１〜Ｂ４をつくる。８つの相異なる静的システム入力を格納するための、８つの静的メモリ位置Ｍ１〜Ｍ８も与えられる。これらの入力はいずれも、所望の利用可能な処理機能のいずれかを実施するに必要ないずれかの型の所望のデータを含む。決定時に表示し得るかまたは様々な処理機能に対する入力として用い得る、２０までのパラメータ測定も与えられる。
【００４８】
このウエッブで利用可能な処理機能が次に説明される。図示されているように、それぞれが２つの機能を用いる、８本のトレースが利用できる。すなわち、ウエッブ内に表示される機能のそれぞれは、表示のためのウエッブの外縁に沿う対応する機能を含む。さらに図示されているように、ウエッブ内のそれぞれの機能は２つの入力を受け入れることができる。ウエッブの外縁に沿う機能のそれぞれは同様に２つの入力を受け入れることができるが、これら２つの入力の内の１つはウエッブ内の対応する機能からの入力である。よって、表示されたトレースのそれぞれに対して、２つの機能を合計３つの入力に適用できる。すなわち、このような装置ではある程度のフレキシビリティが得られるが、完全なフレキシビリティは得られない。機能をさらに連結して用いることはできず、入力をさらに与えることができない。すなわち実処理の機能性がある程度限定される。
【００４９】
図７Ｂは完全設定可能な処理ウエッブを示し、本発明の能力及び特徴を最もよく表わしている。４つの動的チャネル７１０及び静的メモリデータ型７２０が示される。いかなる数のこれらの動的または静的オブジェクトも与え得ることはもちろんである。同じく図示されているように、４つのビュー７３０も示される。これらのビュー７３０は動的入力情報を表示する。トレースビュー７４０及びパラメータ７５０も与えられる。しかし、これらのトレースビューへの入力には、動的入力７１０、静的メモリ入力７２０及びパラメータ入力７５０だけが含まれるのではなく、いかなる数の処理オブジェクト７６０も与えて様々な所望の処理を施してから出力データをトレースビュー７４０に転送することができる。すなわち、固定構造にしたがわなければならない図７Ａとは対照的に、図７Ｂに表示されるシステムにおいては処理の設定が可能である。複数のプロセッサを順次連結し、複数の入力を利用して複数の出力をつくることができる。プロセッサは１つより多い別のプロセッサのためのデータをつくるために用いることができる、等々。システムで実行できる処理の複雑性または設定には事実上制限がない。したがって、処理システムの本発明のグラフィック表示にしたがえば、この処理ウエッブのグラフィック表示が、（以下で論じられる）処理ウエッブ内の機能相互関係を修正するための方法とともに、本発明における精確な機能性の具現化を可能にする。
【００５０】
この新しいグラフィック表示及び新しいアーキテクチャは、どれだけ多くの処理要素が与えられた処理ウエッブを構成するかに関して完全なフレキシビリティを提供し、他のさらに専用化されたタイプの処理エンジン及びそれらの結果を取り扱うための分野を開く。
【００５１】
本発明の好ましい実施形態において、処理オブジェクトから出力され得る、したがって別の処理要素への入力として適する、処理結果の種類は：
１．　（浮動小数点精度または固定小数点精度で格納される）波形；
２．　単値ではない、水平軸情報をパラメータ情報．．．例えばトリガまたは水平軸ゼロ基準に対して“いつ”立上がりが生じたかをともなう立上がり時間推定値も、とともにもつパラメータ結果；
３．　概ね共通の水平軸情報をともなう、関連付けられた値のＸＹ結合またはＸＹ対；
４．　実数及び虚数成分からなる複素波形；
５．　パーシステンス“マップ”または２次元ヒストグラム；
６．　１次元ヒストグラム；
７．　合格／不合格等、またはその他のそのようなプロセスのブール演算結果；
８．　パラメータ結果の集合のための表結果；
９．　本質的に−パラメータ結果と相補的な態様の−グラフィックであり、グラフィック性を見ることしかできず−それらについて演算できない−という意味で特殊である、カーソル結果；
を含むことができる。
【００５２】
本発明にしたがって構成される処理ウエッブエディタ（ＰＷエディタ）は、本発明の処理ウエッブ（ウエッブ）の設定を示し、処理ウエッブの再設定を可能にし、ウエッブにある様々な要素のプロパティを見ること及び／または修正することを可能にするためのツールである。上述したように、本発明の処理ウエッブは、ＤＳＯの入力から様々な処理段を通り表示装置に至るデータフローを定める。ＰＷエディタは、処理ウエッブの真のグラフィック表示及び処理ウエッブを所望に応じて修正する能力を可能にする、処理ウエッブを見るため及び再設定するための最も自然な方法である。
【００５３】
処理ウエッブは様々な型の処理ノードすなわちオブジェクトからなる。これらの処理ノードは、処理ノードに付随する様々な入力（ピン）及び出力（ピン）の数及びデータ型に基づいて様々な型に分類される。ウエッブは非伝統的処理、すなわち波形及びパラメータ両者を同時につくるノードをサポートするに十分にフレキシブルであるが、この分類により伝統的なＤＳＯにより与えられる機能を処理ウエッブに表わすことが可能になる。ある程度上述したように、これらのノードは：
１．　ＤＳＯのアクイジションハードウエアによりつくられる（１次）波形の提供を担当する、アクイジションシステム；
２．　波形データを受け入れて波形データをつくる、数学ノード；
３．　波形データを受け入れてスカラー（パラメータ）結果をつくる、パラメータノード；
４．　波形及び／またはパラメータ入力を受け入れてブール演算（合格／不合格）結果をつくる、合格不合格ノード；
５．　データ型変換、すなわち浮動小数点→整数波形（ベクトル）型を提供する、アダプタノード；
６．　いかなるデータ型も受け入れ、グラフィック結果（波形トレース、パラメータ読出、等）をつくる、レンダラノード；
を含むことができる。したがって、処理ノードの様々な入力及び出力ピンは、それぞれのピンの送出／受入データ型に基づいて分類される。
【００５４】
処理ウエッブの機能構造を変更するためにＰＷエディタで用い得る様々な機能、したがってオシロスコープの実機能の例が次に説明される。
【００５５】
ＰＷエディタで利用可能な第１の機能は、ライブプレビュー機能である。ＰＷエディタを用いる処理ウエッブ編集は、それぞれの処理ステップの結果をエディタに直接‘ライブ’で視覚化できれば、より直観的になる。したがって、それぞれのノードにおいて、処理ウエッブのグラフィック表示のノード位置にあるミニチュアディスプレイ上に出力バルブが表示される。結果のこれらのミニチュア描写は半実時間で更新され、いずれか特定のノードに関する結果を見るためのエディタと伝統的ＤＳＯのディスプレイとの間の切換えの必要をなくす。すなわち、ミニチュアディスプレイはプロセッサの所望のピンに結合され、結果を表示する。好ましい実施形態において、これらのミニチュア描写は図８に示されるようにして現れる。これらはラベル付で適用できる。
【００５６】
ＰＷエディタの別の機能は、特定の処理ノードのプロパティを編集できる能力である。例えば、処理ウエッブ上に見ることができる処理ノードの多くには、定義されるベき様々なプロパティ（制御）が必要である。処理ノードのいずれかの上でのポインティングデバイスの右クリックまたはその他の選択方法により、ノードのプロパティを見ること及び編集することを可能にする、ポップアップダイアログが現れる。このようにして、全ての、したがってノードの定義も含む、プロパティが定義される。ヒストグラムノードに対して設定できるパラメータの例が図９に示される。ユーザは水平軸目盛９１０、垂直軸目盛９２０及びその他の定義情報９３０を選ぶ機会を有する。
【００５７】
処理ウエッブの容易な編集を可能にする本発明の別の特徴は、アダプタの自動挿入である。型の異なる２つのピンを接続しようとするときに、これらの２つの型の間の自動変換を提供するため、処理ウエッブエディタは収蔵アダプタ群からアダプタを用いることができる。例えば、ユーザが、浮動小数点バルブを必要とする入力に整数出力を配するといった、相異なるフォーマットを必要とする２つのピン間の接続を図るときに、整数→浮動小数点波形アダプタの自動挿入を用いることができる。
【００５８】
すなわち、図１０Ａに例としてのみ示されるように、‘Ｃ１’と‘イン’との間の接続をドラッグしようとする。‘Ｃ１’は整数波形型であり、ＦＦＴ（高速フーリエ変換）入力‘イン’は浮動小数点波形型である。
【００５９】
図１０Ｂに示されるように、ユーザからの他のいかなる入力または補助も必要とせずに、通常は隠されているアダプタを用いて接続がなされる。
【００６０】
最後に、図１０Ｃにおけるように、処理ウエッブエディタが隠されたアダプタを全て表示するように設定されている場合は、整数バルブから浮動小数点バルブへの変換のためのアダプタが示される。
【００６１】
別の例として、ユーザは、波形（ベクトル）型バルブとパラメータ（スカラー）型バルブとの間の変換を要求することができる。
【００６２】
図１１Ａに示されるように、Ｃ１出力のヒストグラマ入力への接続が図られる。Ｃ１は整数波形型であり、ヒストグラマ入力はスカラー型である。
【００６３】
次に図１１Ｂに示されるように、隠されたアダプタが挿入されることで接続がなされる。
【００６４】
最後に、図１１Ｃに示されるように、隠されたアダプタを表示するようにＰＷエディタが命令されていれば、どのように接続がなされたかの完全な図が表示される。すなわち、初めに１１２０において整数波形データ１１１０が浮動小数点波形データに変換され、次いで、第２のアダプタ１１３０がこの浮動小数点データを複数のパラメータ値（スカラー）に変換し、この複数のパラメータ値が、ヒストグラム出力１１５０を生成するために、次いでヒストグラマ１１４０に供給される。
【００６５】
これらの様々な接続機能及び処理要素は、ＰＷエディタのグラフィカルユーザインターフェースを介して用いることができる。ここではその機能の説明が続けられる。
【００６６】
処理エンジンは、カテゴリーに分けられたパレットからウエッブ上に‘ドラッグ’することができる。すなわち、ユーザが特定の処理を実施したいときには、適当な処理機能を処理ウエッブにドラッグすることが必要なだけである。ウエッブ上に存在してしまえば、選択された処理機能の入力及び出力は、ウエッブ上の他のオブジェクトの様々な入力及び出力と、ポインティングデバイスを用いて出力から入力にドラッグすることにより接続することができる。
【００６７】
図１２は数学カテゴリーのコンポーネント群の例を示す。様々なタブで表わされているように、他のカテゴリーのためのパレットも用意することができる。
【００６８】
本発明にしたがう単純な処理ウエッブの構成例をここで説明する。図１３は、処理ウエッブの最も単純な形態の１つを示す。この図は４つの波形のレンダリングを示す。この図は、伝統的ＤＳＯのチャネル１から４がオン状態に入れられたときの処理ウエッブの状態となろう。本図においては、ユーザが波形ジェネレータ１３１０及び４つのディスプレイ要素１３３０を選択している。これらの５つの要素は、ウエッブ領域にドラッグされた。波形ジェネレータからのそれぞれの出力はそれぞれのディスプレイ要素の入力に接続された。この設定は、図１の処理ウエッブのグラフィック表示の、ノード１１０（Ｃ１〜Ｃ４）及び１３０（Ｃ１ビュー〜Ｃ４ビュー）並びにこれらの間の直接接続のみを含む部分に相当することになろう。
【００６９】
図１４は、上述の図１３と同様であるが、パラメータノード１４５０（波形振幅計算器）が付加され、その結果を１４６０に示す例を表わす。
【００７０】
すなわち、図１３の５つのオブジェクトを備えた上に、波形振幅計算器１４５０及びそのディスプレイ１４６０が処理ウエッブにドラッグされ、図１４に示されるように接続された。よって、パラメータ測定が１４５０で実行され、パラメータ数値出力が１４６０に表示される。ノード１３１０（Ｃ１）からの出力は、１つはディスプレイ（１３３０）の１つ、また１つは別の処理（１４５０，１４６０）の、２つの位置に送られる。
【００７１】
図１５に示される処理ウエッブ例は、図１４に表示されたウエッブ上に構築され、振幅パラメータ結果１５８０の分布を示すためのヒストグラマ１５７０が付加されている。すなわち、パラメータノード１４５０からの出力が、パラメータディスプレイ１４６０だけでなく、ヒストグラマ１５７０にも送られる。ヒストグラマ１５７０はパラメータノード１４５０における値の分布を計算し、ヒストグラム結果をディスプレイ１５８０に表示する。この、様々な処理及びビュー機能を容易に付加できる能力が、本発明の一部を定める。
【００７２】
次に図１６を参照すれば、処理ウエッブエディタ表示画面を既存の処理ウエッブにしたがって埋める方法が説明される。本手順の開始後の最初のステップ１６０５において、処理ウエッブエディタが処理ウエッブマネジャーに処理ウエッブを構成する第１のコンポーネントを要求する。次いでステップ１６１０において、そのようなコンポーネントが得られたか否かが確認される。コンポーネントが得られていれば、得られたウエッブコンポーネントの、ピン詳細、アイコン及びラベルのような様々な詳細が確定されるステップ１６１５に制御が移る。その後、ステップ１６２０において、アイコンが処理ノードのプロパティにより定められる位置で処理ウエッブディスプレイ上に配される。これらのプロパティは、波形ジェネレータ要素の近くのどこにアイコンが配されるか、またはこの特定のコンポーネントの前後に配置されるべき要素の数を含むことができる。次いでステップ１６２５において、入力及び出力ピンが、好ましくはそのコンポーネントから出力されるかまたはそのコンポーネントに入力するデータの型に基づく色で、描かれる。次いでステップ１６３０において、処理ウエッブマネジャーはウエッブの次のコンポーネントを要求される。制御は次いで照会１６１０に戻る。別のコンポーネントが利用可能であれば、制御は続いてステップ１６１５に移り、上述の手順が再度実行される。
【００７３】
しかし、ステップ１６１０において、ウエッブで利用可能なコンポーネントがもうなく、したがって照会への回答がノーであれば、制御は次いで、処理ウエッブマネジャーがウエッブにおける第１の接続を要求されるステップ１６３５に移る。制御は次いで、そのような接続が得られたか否かを確認するステップ１６４０に移る。得られていれば、その接続で定められるピンが好ましくは接続を通して流れるデータの型に基づいて色がつけられた線で接続される、ステップ１６４５に制御が移る。テクスチャ、クロスハッチ、シンボル等のようなその他のいかなるグラフィック指定も、線に用い得ることはもちろんである。この接続がグラフィックで描かれた後、制御は、処理ウエッブマネジャーがウエッブにおける次の接続を要求されるステップ１６５０に移る。そのような接続が存在すれば、同じくステップ１６４０において、照会への回答はイエスとなり、制御はステップ１６４５に移り、よってこの手順が繰り返されることになろう。ステップ１６４０において、ウエッブにはもう接続がなく、ウエッブが完全にグラフィックで描かれたことが確認されると、ステップ１６４０における照会への回答はノーとなり、プロセスは終了することになろう。したがって、図１６に提示された手順にしたがえば、既存ウエッブのグラフィック表示をユーザに示すことができる。
【００７４】
次に図１７を参照すれば、処理ウエッブエディタにより表示されている処理ウエッブに、新しいコンポーネントを挿入するためのプロセスが説明される。手順を開始すると、ステップ１７１０において、処理ウエッブにコンポーネントを付加するためのリクエストコールが処理ウエッブマネジャーに送られる。次のステップ１７２０において、処理ウエッブマネジャーは、“プロセッサ付加”と呼ばれるサブルーチンを、付加されるべき新しいプロセッサを示すパラメータを渡すポインタによりコールして、エディタ上で作動させる。その後、次のステップ１７３０において、付加されるべきプロセッサに対応するアイコンが、図１６で述べた事項に関する処理プロパティにより見つけられる位置につくられる。次いでステップ１７４０において、入力及び出力ピンが、好ましくは新しいコンポーネントに入力するかまたは新しいコンポーネントから出力するデータの型に基づく色で、描かれ、ステップ１７５０において、新しいコンポーネントの接続により、ピンが既存のコンポーネントと接続される。この接続のための線は、図１６に関して述べたように、接続を通して流れるデータの型に基づく色で引かれることが好ましい。これらの接続がなされると、コンポーネントは処理ウエッブに付加されたことになり、手順が終了する。
【００７５】
次に図１８を参照すると、相異なるコンポーネントにある２つのピンの、ポインティングデバイスでピン間に線をドラッグすることによる接続を図るための手順が説明される。手順が開始されると、ステップ１８１０において、ソース及び行先ピンの型を確認するための照会が出力される。照会は、ステップ１８２０において、接続されることになるピンのデータ型は同じであるか否かを尋ねる。ピンが同じ型であり、この照会への回答がイエスであれば、処理ウエッブマネジャーがソースピンを行先ピンに直接接続することを要求されるステップ１８３０に制御が移る。すなわち、これらの２つのピンの間の接続を加えたグラフィック表示が実処理ウエッブの修正として得られ、よってデータ処理装置の機能も修正される。その後、手順は終了する。
【００７６】
しかし、ステップ１８２０において、ソースピンと行先ピンのデータ型が同じ型ではないことが確認されると、ステップ１８４０において、ソースのデータ型を行先のデータ型に変換できるアダプタが利用可能であるか否かが確認される。適切なアダプタが利用可能であり、ステップ１８４０においてこの照会がイエスになれば、そのアダプタの作成が処理ウエッブマネジャーに要求されるステップ１８５０に制御が移る。その後、ステップ１８６０において、ソースピンをアダプタの入力ピンに接続し、アダプタの出力ピンを行先ピンに接続することが処理ウエッブマネジャーに要求される。これらの接続の終結後、処理は終了する。ただ１つのアダプタの付加しか説明していないが、上述したように、複数のアダプタを順次に与え得ることはもちろんである。最後に、ステップ１８４０において、利用可能な適切なアダプタはないことが確認されれば、制御は１８７０に移り、接続の形成が拒否される。次いで処理が終了する。
【００７７】
すなわち、本発明にしたがえば、オシロスコープまたはその他のデータ処理装置において信号に作用するための、高度の構成設定及び修正が可能なシステムが提供される。
【００７８】
本発明の処理ウエッブを実施するための本発明のＰＷエディタの利用により、以下の独特な特徴が提供される。処理ウエッブの複雑性は、利用可能な処理能力及びメモリによってのみ制限される。数学、パラメータ、表示機能の伝統的分離が取り除かれる。処理エンジンをカテゴリー化されたツールバーからドラッグして使用することができる。任意の数の名称付及び型付入力及び出力ピンを用いることができる。ウエッブ構造を見ているときでも、（スカラー及びベクトルのいずれの）結果の実時間グラフィックプレビューが提供される。入力及び出力ピンのデータ型の識別を、カラーコード化キー方式を用いて指定することができる。適合しない型どうしが接続される場合に、例えば、浮動小数点データ型と整数データ型との間の適合、ベクトルデータの順次スカラーデータへの変換等を行う、データ型アダプタが自動的に挿入される。それぞれのノード及びそれぞれのピンのプロパティを表示し、編集できる能力もある。
【００７９】
本発明にしたがって構成されたＰＷエディタによれば、いかなる数の処理要素も処理ウエッブ上に配置することができる。いかなるオブジェクトをもいつでも実時間で見ることができる。与えられた、基本アーキテクチャの範囲内で許される処理ウエッブの複雑性に理論的限界はない。過大なフレキシビリティは基本的実験室用機器には望ましくはないかもしれないが、専用用途においては、アーキテクチャが拘束されず、高レベルの複雑性が得られるように修正できることが極めて望ましい。この、本発明にしたがう新しいアーキテクチャは、どれだけ多くの処理要素が与えられた処理ウエッブを構成するか、及びどのようにしてユーザがこの処理ウエッブを見ることができ、概念化さえできるかに関して完全なフレキシビリティを提供し、別のさらに特殊な型の処理エンジン及びそれらの結果を取り扱うための分野を開く。
【００８０】
すなわち、上述したように、オシロスコープのための概念モデルの処理部分で何がおきているかをより詳細に表わす、ネットワークにおいて既存の実処理エンジンを示し、設定するために、ＰＷエディタを用いることができる。処理要素の実ネットワークは、上述したように、“処理ウエッブ”と称される。したがって、この処理ウエッブを見るため及び設定するためのＰＷエディタにはいくつかの新規な特徴がある。
【００８１】
１．　ＰＷエディタは、エンジンのタイプをアイコン化して示し、そのエンジンがサポートし、送出する入力の型及び出力の型を色で示す。本発明の好ましい実施形態において、それぞれのプロセッサの入力及び出力は、必要とする入力の型及び送出する出力の型に基づいてカラーコード化される。上述したように、その他のいかなる指定形式も用い得ることはもちろんである。すなわち、相異なる処理要素の、色が同じ、出力と入力とを接続することにより、適合する型のデータの転送を保証できる。
【００８２】
２．　ＰＷエディタは、様々なツールバーからのドラッグアンドドロップによる処理ウエッブ上へのオブジェクトの付加及び付加されたオブジェクトの入力及び出力“ピン”の取付けを可能にする。
【００８３】
３．　アクイジションシステムが、（較正信号が入力として示されることを思い浮かべることはできるであろうが）出力ピンしか（一般に）もたないオブジェクトとして示される。
【００８４】
４．　処理ウエッブにおけるいかなる“ピン”の表示（またはビューまたはレンダリング）も可能であり、ミニチュアの“ライブ”で示される（そのピンのライブ表示があることを意味する）。
【００８５】
したがって、図１９及び２０に示されるようにして、上記開示にしたがって構成され、埋められた、機能中のＰＷエディタ例のビューが示される。様々なビュー及び実施命令１９１０が最上行に沿って並び、その下にユーザが処理ウエッブで実施したいであろうとされる様々な機能カテゴリーのリスト１９１５がある。ＰＷエディタのメインウインドウ部分１９００には、ユーザにより既に選択された様々な処理機能１９２０が、それらの間の相互接続１９２５とともに、示されている。いくつかの位置に、ウエッブの現在の値を表示するための様々なディスプレイ１９３０も示されている。
【００８６】
この、表示された処理ウエッブは、本発明にしたがうＰＷエディタにより以下に説明するようにして構築された。ＰＷエディタを用いれば、処理ウエッブにある（レンダラ及びアクイジションシステムを含む）いかなるオブジェクトも、ポインティングデバイスでオブジェクトの上をクリックすることにより、またはタッチスクリーンを用いて同じポインティング機能を実施することにより、選択できる。選択してしまえば、ボタンのプロパティにタッチするかまたはより伝統的なポインティングデバイスでの右クリックを用いることにより、オブジェクトのプロパティ（例えばアクイジションシステムの設定またはビューの色）を見ることができ、修正できる。結果の型はカラーコード化されることが好ましく、入力及び出力ピンのための様々な色がディスプレイの左下に与えられるカラーキーにより示される。
【００８７】
それぞれの処理コンポーネントの出力及び入力“ピン”のそれぞれは、その名を付して示され、好ましくはその色、あるいは結果の型に対応する別の指定でも示される。入力ピンは数においても型においても制限されない。全ての、どのような組合せも許される。
【００８８】
図１９及び２０に示されるそれぞれの要素は、ＰＷエディタにより指定された処理ウエッブにしたがって制御される実システムにおける現実の“コンポーネント”を表わす。この設計には、マイクロソフト社（Ｍｉｃｒｏｓｏｆｔ ｃｏｒｐｏｒａｔｉｏｎ）にサポートされるＣＯＭ（コンポーネントオブジェクトモデル）の表現形式が用いられる。これにより、かなり後になってから、実行時にさえも達成できる、これらのコンポーネントの結合が可能になる。
【００８９】
（人間または自動）オペレータがオブジェクトを処理ウエッブ上に実際に配置する前に、実際の計算を実行する実行可能（バイナリ）コードをコンピュータのメモリにロードする必要はない。この意味で、該当するコードがコンパイルされる前に、あるいは書かれる前でさえも、アプリケーションを実行することができる。したがって、プローブをサポートするソフトウエア、あるいはプローブまたはその他の物理データ入力デバイスに関係する処理は、プローブまたはその他の物理データ入力デバイスの物理的ハードウエアに送達される。これは、解決策を革新的方法で配送することができるので、市場における商業上の利点を有する。
【００９０】
すなわち、上記説明から明らかにされた中で、上述した目的が有効に達成されることがわかるであろう。さらに、本発明の精神及び範囲を逸脱することなく上述の方法の実施及び上述した構成にある種の変更がなされ得るから、上記説明に含まれ、添付図面に示される全ての事項が、限定する意味に解されるべきではなく、説明として解されるべきであると目される。
【００９１】
特許請求の範囲が、本明細書で説明される本発明の全般的及び特定の特徴の全て並びに、言葉の問題として、本発明の全般的及び特定の特徴の間に入るということができる、本発明の範囲の言明の全てを包含することを目的としていることも当然である。
【図面の簡単な説明】
【図１】
本発明にしたがうルクロイの伝統的な機能固定型機器のための処理ウエッブのグラフィック表示である
【図２】
プロセッサ階層の様々な例を示す
【図３】
先進的プロセッサの例を示す
【図４】
単純な処理ウエッブ設定を示す
【図５】
別の処理ウエッブ設定を示す
【図６】
処理ウエッブにおける個別の処理経路を示す
【図７Ａ】
本発明にしたがう処理ウエッブの別のグラフィック表示である
【図７Ｂ】
本発明にしたがう処理ウエッブのまた別のグラフィック表示である
【図８】
複数のミニチュア出力表示画像を示す
【図９】
ヒストグラムノードに対して設定できるパラメータを示す
【図１０Ａ】
アダプタが自動的に挿入される、２つの処理ノードを接続するためのシーケンスを示す
【図１０Ｂ】
アダプタが自動的に挿入される、２つの処理ノードを接続するためのシーケンスを示す
【図１０Ｃ】
アダプタが自動的に挿入される、２つの処理ノードを接続するためのシーケンスを示す
【図１１Ａ】
アダプタが自動的に挿入される、２つの処理ノードを接続するための別のシーケンスを示す
【図１１Ｂ】
アダプタが自動的に挿入される、２つの処理ノードを接続するための別のシーケンスを示す
【図１１Ｃ】
アダプタが自動的に挿入される、２つの処理ノードを接続するための別のシーケンスを示す
【図１２】
数学カテゴリで利用できるコンポーネントグループを示す
【図１３】
単純な形態の処理ウエッブを示す
【図１４】
別の形態の処理ウエッブを示す
【図１５】
また別の形態の処理ウエッブを示す
【図１６】
既存の処理ウエッブにしたがう処理ウエッブエディタ画面を埋めるためのシーケンスを示すフローチャート
【図１７】
処理ウエッブエディタを用いて処理ウエッブに新しいコンポーネントを挿入するためのシーケンスを示すフローチャート
【図１８】
処理ウエッブにおいて処理ウエッブエディタを用いて２つのピンの接続を図るためのシーケンスを示すフローチャート
【図１９】
機能中の処理ウエッブエディタ画面
【図２０】
機能中の別の処理ウエッブエディタ画面
【図２１】
本発明にしたがって構成されたオシロスコープの動作を概念化して示した図
【符号の説明】
１００　　処理ウエッブ
１１０，７１０　　チャネルデータ
１２０，７２０　　メモリデータ
１３０，７３０　　ビュー
１４０，７４０　　トレースビュー
１５０，７５０　　パラメータビュー
【図１】
2004514149.tif 000002
【図２】
2004514149.tif 000003
【図３】
2004514149.tif 000004
【図４】
2004514149.tif 000005
【図５】
2004514149.tif 000006
【図６】
2004514149.tif 000007
【図７Ａ】
2004514149.tif 000008
【図７Ｂ】
2004514149.tif 000009
【図８】
2004514149.tif 000010
【図１６】
2004514149.tif 000011
【図１７】
2004514149.tif 000012
【図１８】
2004514149.tif 000013
【図２１】
2004514149.tif 000014
【国際公開パンフレット】
2004514149.tif 000015
2004514149.tif 000016
2004514149.tif 000017
2004514149.tif 000018
2004514149.tif 000019
2004514149.tif 000020
2004514149.tif 000021
2004514149.tif 000022
2004514149.tif 000023
2004514149.tif 000024
2004514149.tif 000025
2004514149.tif 000026
2004514149.tif 000027
2004514149.tif 000028
2004514149.tif 000029
2004514149.tif 000030
2004514149.tif 000031
2004514149.tif 000032
2004514149.tif 000033
2004514149.tif 000034
2004514149.tif 000035
2004514149.tif 000036
2004514149.tif 000037
2004514149.tif 000038
2004514149.tif 000039
2004514149.tif 000040
2004514149.tif 000041
2004514149.tif 000042
2004514149.tif 000043
2004514149.tif 000044
2004514149.tif 000045
2004514149.tif 000046
2004514149.tif 000047
2004514149.tif 000048
2004514149.tif 000049
2004514149.tif 000050
2004514149.tif 000051
2004514149.tif 000052
2004514149.tif 000053
2004514149.tif 000054
2004514149.tif 000055
2004514149.tif 000056
2004514149.tif 000057
2004514149.tif 000058
2004514149.tif 000059
2004514149.tif 000060
2004514149.tif 000061
2004514149.tif 000062
2004514149.tif 000063
2004514149.tif 000064
2004514149.tif 000065
2004514149.tif 000066
2004514149.tif 000067
2004514149.tif 000068
2004514149.tif 000069