JP6741417B2 - Test measuring device and trigger method - Google Patents

Test measuring device and trigger method Download PDF

Info

Publication number
JP6741417B2
JP6741417B2 JP2015237591A JP2015237591A JP6741417B2 JP 6741417 B2 JP6741417 B2 JP 6741417B2 JP 2015237591 A JP2015237591 A JP 2015237591A JP 2015237591 A JP2015237591 A JP 2015237591A JP 6741417 B2 JP6741417 B2 JP 6741417B2
Authority
JP
Japan
Prior art keywords
state machine
state
trigger condition
trigger
user
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.)
Active
Application number
JP2015237591A
Other languages
Japanese (ja)
Other versions
JP2017120180A (en
Inventor
エドワード・エフ・タナウス
ケイス・ディー・ルール
ジェームズ・フィースト
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.)
Tektronix Inc
Original Assignee
Tektronix Inc
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 Tektronix Inc filed Critical Tektronix Inc
Priority to JP2015237591A priority Critical patent/JP6741417B2/en
Publication of JP2017120180A publication Critical patent/JP2017120180A/en
Application granted granted Critical
Publication of JP6741417B2 publication Critical patent/JP6741417B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Testing Or Calibration Of Command Recording Devices (AREA)

Description

本発明は、試験測定装置におけるトリガに関し、特に、ユーザ設定によるプロトコルのハイレベル記述からトリガを生成する試験測定装置及びトリガ方法に関する。 The present invention relates to a trigger in a test measurement device, and more particularly to a test measurement device and a trigger method for generating a trigger from a high-level description of a protocol set by a user.

トリガ処理システムは、しばらく、試験測定装置の一部分となっている。しかし、トリガ処理システムは、典型的には、基本的な信号に関連した状態(例えば、この信号がしきい値電圧より上に上昇する(又は、より下に落ちる))に依存する。 The trigger processing system has been part of the test and measurement equipment for some time. However, triggering systems typically rely on conditions associated with the underlying signal (eg, that signal rises above (or falls below) a threshold voltage).

特表2007−522453号公報Japanese Patent Publication No. 2007-522453 米国特許第7797346号明細書U.S. Pat. No. 7797346 特表2004−523166号公報Special table 2004-523166 gazette 特開2007−286025号公報JP, 2007-286025, A 米国特許第9069017号明細書US Patent No. 9069017 特許第5605842号公報Japanese Patent No. 5605842

「Breadcrumb (navigation)」の記事、Wikipedia(英語版)、[オンライン]、[2015年10月23日検索]、インターネット、<https://en.wikipedia.org/wiki/Breadcrumb_(navigation)>"Breadcrumb (navigation)" article, Wikipedia (English version), [Online], [Search October 23, 2015], Internet, <https://en.wikipedia.org/wiki/Breadcrumb_(navigation)> 「パンくずリスト」の記事、Wikipedia(日本語版)、[オンライン]、[2015年10月23日検索]、インターネット、<https://ja.wikipedia.org/wiki/パンくずリスト>"Breadcrumbs list" article, Wikipedia (Japanese version), [Online], [Search on October 23, 2015], Internet, <https://ja.wikipedia.org/wiki/Breadcrumbs list>

基本信号で運ばれるデータがデコードされ、特定のプロトコルに合致すると確認された場合において、このデータに基いてトリガ条件を確立するというのは、非常に複雑な状況であり、もしあったとしても、現時点では、簡単にはできない。 Establishing a trigger condition based on the data carried in the base signal when it is decoded and found to match a particular protocol is a very complex situation, and if at all, At the moment, it's not easy.

本発明の実施形態は、従来技術に係るこれや他の問題を解決しようとするものである。 Embodiments of the present invention seek to solve this and other problems associated with the prior art.

本発明は、次のような種々の概念から記述できる。 The present invention can be described from various concepts as follows.

本発明の概念1は、システムであって、
試験測定装置と、
正規表現に対応するステート・マシーンを記憶する上記試験測定装置中のメモリと、
ユーザからトリガ条件を受ける受信部と、
上記トリガ条件を反映するよう上記ステート・マシーンを変更するステート・マシーン変更部と
を具えている。
Concept 1 of the present invention is a system,
A test and measurement device,
A memory in the test and measurement device that stores a state machine corresponding to a regular expression,
A receiver that receives trigger conditions from the user,
And a state machine changing unit for changing the state machine to reflect the trigger condition.

本発明の概念2は、上記概念1によるシステムであって、このとき、上記トリガ条件としては、複合トリガ条件がある。 The concept 2 of the present invention is the system according to the concept 1 described above, in which the trigger condition includes a compound trigger condition.

本発明の概念3は、上記概念2によるシステムであって、このとき、上記ステート・マシーン変更部は、上記複合トリガ条件中の各値についての上記ステート・マシーンを複製し、上記複合トリガ条件の1つの値を含むように複製された上記ステート・マシーンの夫々を変更し、変更された複製の上記ステート・マシーンを組み合わせるよう動作する。 The concept 3 of the present invention is the system according to the concept 2, in which the state machine changing unit duplicates the state machine for each value in the composite trigger condition, It is operative to modify each of the duplicated state machines to include a value and combine the modified duplicate of the state machines.

本発明の概念4は、上記概念1によるシステムであって、このとき、
上記受信部は、ビット・ストリームを受けるように動作し、
上記システムが、
上記ステート・マシーンを用いて上記ビット・ストリームを処理する処理エンジンと、
もし上記トリガ条件が満たされると、トリガを送出するトリガ・システムと
を更に具えている。
The concept 4 of the present invention is the system according to the above concept 1, wherein
The receiver operates to receive a bit stream,
The above system
A processing engine for processing the bit stream using the state machine,
And a trigger system for sending a trigger if the above trigger conditions are met.

本発明の概念5は、上記概念1によるシステムであって、このとき、上記ステート・マシーン変更部は、ステート・マシーン最適化部を含んでいる。 Concept 5 of the present invention is the system according to Concept 1 above, wherein the state machine changing unit includes a state machine optimizing unit.

本発明の概念6は、上記概念5によるシステムであって、このとき、上記ステート・マシーン最適化部は、変更された上記ステート・マシーンから、トリガ条件が満たされた後に生じた全ての状態を除去するよう動作する。 The concept 6 of the present invention is the system according to the above concept 5, in which the state machine optimizing unit detects from the changed state machine all the states that have occurred after the trigger condition is satisfied. Works to remove.

本発明の概念7は、上記概念5によるシステムであって、このとき、上記ステート・マシーン最適化部は、任意の値で上記トリガ条件を満たすことができる複数の状態を単一の状態に組み合わせるよう動作する。 The concept 7 of the present invention is the system according to the concept 5, wherein the state machine optimizing unit combines a plurality of states that can satisfy the trigger condition with an arbitrary value into a single state. Works like.

本発明の概念8は、上記概念1によるシステムであって、このとき、上記ステート・マシーン変更部は、上記ビット・ストリームをユーザが選択した値と比較するよう上記ステート・マシーンを設定するよう動作する。 Concept 8 of the present invention is a system according to Concept 1 above, wherein the state machine modification unit operates to set the state machine to compare the bit stream with a user selected value. To do.

本発明の概念9は、上記概念1によるシステムであって、このとき、
上記受信部は、上記ユーザからの上記正規表現を受けるように動作し、
上記システムは、上記正規表現から上記ステート・マシーンを生成するステート・マシーン発生部を更に具えている。
The concept 9 of the present invention is a system according to the above concept 1, wherein
The receiver operates to receive the regular expression from the user,
The system further comprises a state machine generator that generates the state machine from the regular expression.

本発明の概念10は、上記概念9によるシステムであって、このとき、上記ステート・マシーンを最適化するステート・マシーン最適化部を更に具えている。 The concept 10 of the present invention is the system according to the above concept 9, further comprising a state machine optimizing unit for optimizing the state machine.

本発明の概念11は、方法であって、
試験測定装置に記憶された正規表現に対応するステート・マシーンを特定する処理と、
ユーザからトリガ条件を受ける処理と、
上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、
上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理と、
変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える。
Concept 11 of the present invention is a method,
A process of identifying a state machine corresponding to the regular expression stored in the test and measurement device,
The process of receiving a trigger condition from the user,
A process of identifying a state in the state machine used in the trigger condition received from the user,
Changing the identified state in the state machine to reflect the trigger condition received from the user;
Storing the modified state machine in the test and measurement device.

本発明の概念12は、上記概念11による方法であって、このとき、
ユーザからトリガ条件を受ける処理が、上記ユーザから複合トリガ条件を受ける処理を含み、
上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理が、上記ユーザから受けた上記複合トリガ条件中で使用される上記ステート・マシーン中の複数の状態を特定する処理を含み、
上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理が、上記複合トリガ条件中の各値に関する上記ステート・マシーンを複製する処理と、上記ユーザから受けた上記トリガ条件中の対応する値を反映するように複製された上記ステート・マシーン中の特定された状態を変更する処理と、複製された複数の上記ステート・マシーンを組み合わせる処理とを含む。
The concept 12 of the present invention is the method according to the above concept 11, wherein:
The process of receiving the trigger condition from the user includes the process of receiving the compound trigger condition from the user,
The process of identifying a state in the state machine used in the trigger condition received from the user determines a plurality of states in the state machine used in the compound trigger condition received from the user. Including the processing to specify,
Modifying the identified state in the state machine to reflect the trigger condition received from the user, replicating the state machine for each value in the composite trigger condition, and Modifying the identified state in the duplicated state machine to reflect the corresponding value in the trigger condition received from the user, and combining the duplicated state machines. Including.

本発明の概念13は、上記概念11による方法であって、
ビット・ストリームを受ける処理と、
変更された上記ステート・マシーンを用いて上記ビット・ストリームを処理する処理と、
もし上記トリガ条件が満たされると上記ステート・マシーンが示した場合に、上記試験測定装置のトリガ処理システムを利用する処理と
を更に具えている。
Concept 13 of the present invention is a method according to concept 11 above, wherein
The process of receiving the bit stream,
Processing the bit stream using the modified state machine;
If the state machine indicates that the trigger condition is met, the triggering system of the test and measurement device is further utilized.

本発明の概念14は、上記概念11による方法であって、このとき、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理が、変更された上記ステート・マシーンを最適化する処理を含んでいる。 The concept 14 of the present invention is the method according to the concept 11, wherein the process of changing the specified state in the state machine to reflect the trigger condition received from the user is changed. A process for optimizing the state machine that has been created.

本発明の概念15は、上記概念14による方法であって、このとき、変更された上記ステート・マシーンを最適化する処理は、変更された上記ステート・マシーンから上記トリガ条件が満たされた後に生じた全ての状態を除去する処理を含む。 Concept 15 of the present invention is the method according to concept 14, wherein the process of optimizing the modified state machine occurs after the trigger condition is met from the modified state machine. It also includes a process for removing all the states.

本発明の概念16は、上記概念14による方法であって、このとき、変更された上記ステート・マシーンを最適化する処理は、任意の値で上記トリガ条件を満たすことができる隣接する複数の状態を単一の状態にまとめる処理を含む。 The concept 16 of the present invention is the method according to the above concept 14, in which the process of optimizing the modified state machine has a plurality of adjacent states that can satisfy the trigger condition with an arbitrary value. Including a process to combine the above into a single state.

本発明の概念17は、上記概念11による方法であって、このとき、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理が、ビット・ストリームをユーザが選択した値と比較するために特定された上記状態を変更する処理を含む。 Concept 17 of the present invention is the method according to Concept 11, wherein the process of changing the identified state in the state machine to reflect the trigger condition received from the user is Includes a process to change the identified state to compare the stream with a user selected value.

本発明の概念18は、上記概念11による方法であって、このとき、試験測定装置中に記憶されたステート・マシーンを特定する処理は、
上記ユーザから上記正規表現を受ける処理と、
上記正規表現から上記ステート・マシーンを生成する処理と
を含んでいる。
The concept 18 of the present invention is the method according to the above concept 11, in which the process of identifying the state machine stored in the test and measurement device is:
The process of receiving the regular expression from the user,
And a process of generating the state machine from the regular expression.

本発明の概念19は、上記概念18による方法であって、このとき、試験測定装置中に記憶されたステート・マシーンを特定する処理が、上記ステート・マシーンを最適化する処理を更に含んでいる。 The concept 19 of the present invention is the method according to the concept 18, wherein the process of identifying the state machine stored in the test and measurement device further comprises the process of optimizing the state machine. ..

図1Aは、特定のパケットにマッチングするプロトコルの例を示す。FIG. 1A shows an example of a protocol that matches a particular packet. 図1Bは、図1Aのパケットにマッチできるステート・マシーンを示す。FIG. 1B shows a state machine that can match the packet of FIG. 1A. 図1Cは、図1Aのパケットのデータを含む条件についてトリガできるステート・マシーンを示す。FIG. 1C shows a state machine that can be triggered for conditions containing data in the packet of FIG. 1A. 図2Aは、いくつかのパケットにマッチングするプロトコルの第2の例を示す。FIG. 2A shows a second example of a protocol that matches several packets. 図2Bは、図2Aのパケットにマッチする最適化していないステート・マシーンを示す。FIG. 2B shows a non-optimized state machine that matches the packet of FIG. 2A. 図2Cは、図2Aのパケットにマッチする最適化したステート・マシーンを示す。FIG. 2C shows an optimized state machine that matches the packet of FIG. 2A. 図2Dは、図2Aのパケットのデータを含む条件についてトリガできるステート・マシーンを示す。FIG. 2D shows a state machine that can be triggered for conditions containing data in the packet of FIG. 2A. 図3Aは、複合トリガ条件を反映するよう変更された図1Bのステート・マシーンの例を示す。FIG. 3A shows an example of the state machine of FIG. 1B modified to reflect a composite trigger condition. 図3Bは、複合トリガ条件を反映するよう変更された図1Bのステート・マシーンの別の例を示す。FIG. 3B shows another example of the state machine of FIG. 1B modified to reflect a composite trigger condition. 図4は、図1B〜1C及び2B〜2Dのステート・マシーンを生成及び利用し、種々のトリガ条件に合致したときに試験測定装置にトリガをかけることができ、そして、図1B〜1C及び2B〜2Dのステート・マシーンの動作を反映しているパンくずリストをメモリに保存できる、本発明の実施形態による試験測定装置を示す。FIG. 4 can generate and utilize the state machine of FIGS. 1B-1C and 2B-2D to trigger a test and measurement device when various trigger conditions are met, and FIGS. 1B-1C and 2B. 2 shows a test and measurement device, according to an embodiment of the invention, capable of storing in memory a breadcrumbs reflecting the operation of a 2D state machine. 図5は、図4のステート・マシーン変更部をより詳細に示す。FIG. 5 shows the state machine changer of FIG. 4 in more detail. 図6は、図4のパンくずリストをより詳細に示す。FIG. 6 shows the breadcrumb trail of FIG. 4 in more detail. 図7Aは、図4の試験測定装置を用いて、プロトコル及びユーザ設定からトリガ・ステート・マシーンを生成する本発明の実施形態による手順の一部分のフローチャートを示す。FIG. 7A shows a flowchart of a portion of a procedure for generating a trigger state machine from protocol and user settings using the test and measurement device of FIG. 4 according to an embodiment of the invention. 図7Bは、図4の試験測定装置を用いて、プロトコル及びユーザ設定からトリガ・ステート・マシーンを生成する本発明の実施形態による手順の残りの部分のフローチャートを示す。FIG. 7B shows a flowchart of the rest of the procedure for generating a trigger state machine from protocol and user settings using the test and measurement device of FIG. 4 according to an embodiment of the invention. 図8は、図4の試験測定装置を用いて、プロトコル及び複合トリガ条件からトリガ・ステート・マシーンを生成する本発明の実施形態による手順のフローチャートを示す。FIG. 8 shows a flow chart of a procedure for generating a trigger state machine from a protocol and compound trigger conditions using the test and measurement device of FIG. 4 according to an embodiment of the present invention. 図9は、図4の試験測定装置を用いて、ステート・マシーンを最適化する本発明の実施形態による手順のフローチャートを示す。FIG. 9 shows a flow chart of a procedure for optimizing a state machine using the test and measurement apparatus of FIG. 4 according to an embodiment of the present invention. 図10は、図4の試験測定装置を用いて、パンくずリストを保存できるステート・マシーンを生成する処理を利用する本発明の実施形態による手順のフローチャートを示す。FIG. 10 shows a flowchart of a procedure according to an embodiment of the present invention that utilizes the test and measurement device of FIG. 4 to utilize the process of creating a state machine capable of storing a breadcrumb trail.

本発明がどのように動作するか説明する前に、正規表現及びステート・マシーンの間の関係を理解するのは有益である。正規表現が与えられると、その正規表現を表すステート・マシーンを構築できる。すると、そのステート・マシーンは、特定の入力がその正規表現とマッチするかどうかを判断するのに利用できる。もしそのステート・マシーンが許容し得る最終状態に進むなら、その入力は、その正規表現とマッチしており、もしそうでなければ、その入力は、正規表現とマッチしていない。 Before describing how the present invention works, it is instructive to understand the relationship between regular expressions and state machines. Given a regular expression, we can build a state machine that represents the regular expression. The state machine can then be used to determine if a particular input matches the regular expression. If the state machine proceeds to the final state, which may be acceptable, the input is matched with the regular expression, and if not, the input does not match the regular expression.

図1Aは、「データ・パケット」と名前が付けられ、正規表現として表現されたデータのパケットに関するプロトコルの例を示す。プロトコル105は、データのパケットを記述している。ビット・ストリームがこの正規表現に対して比較されると、システムは、そのビット・ストリーム内にそのパケットが見つけられるかどうか判断できる。 FIG. 1A shows an example protocol for a packet of data, named “data packet” and expressed as a regular expression. The protocol 105 describes a packet of data. When the bitstream is compared against this regular expression, the system can determine if the packet can be found in that bitstream.

図1Bは、図1Aの正規表現に対応するステート・マシーンを示す。ステート・マシーン110には、状態115、120、125、130、135、140及び145があり、これら状態間の遷移を伴う。各状態(これは、ノード又は頂点(vertex)とも呼ぶことができる)は、その状態に入るのにどのようなデータがマッチする必要があるかを記述している(受容基準)。各矢印は、その状態に関する目標の受容基準が満たされていれば、横断できるパスである。スタート状態115及び成功状態145は除いて、これら状態は、パケットによって予期されるデータに順次対応している。よって、状態120は、ビット・ストリーム内の状態Sとマッチし、状態125は、「begin(開始)」とラベルされたフィールドに対して、3ビットのデータとマッチし、状態130は、「addr」とラベルされたフィールドに対して、4ビットのデータとマッチする、などである。全てのデータがステート・マシーン110の複数の状態によって、マッチさせることができるとすると、成功状態145に達したとき、システムは、そのパケット「データ・パケット」は、成功裏にマッチしたと宣言できる。 FIG. 1B shows a state machine corresponding to the regular expression of FIG. 1A. State machine 110 has states 115, 120, 125, 130, 135, 140 and 145, with transitions between these states. Each state (which can also be called a node or vertex) describes what data needs to match to enter that state (acceptance criteria). Each arrow is a path that can be traversed if the target acceptance criteria for that condition are met. With the exception of the Start state 115 and Success state 145, these states sequentially correspond to the data expected by the packet. Thus, state 120 matches state S in the bit stream, state 125 matches 3 bits of data for the field labeled "begin", and state 130 states "addr." Matches 4 bits of data for the field labeled "," and so on. If all the data can be matched by multiple states of the state machine 110, when the success state 145 is reached, the system can declare that packet "data packet" was successfully matched. ..

ステート・マシーン110は、実際のステート・マシーンの簡略化バージョンを表している。例えば、ステート・マシーン110は、種々の状態間の遷移にラベルを付けていないし、ステート・マシーン110は、データが予期したものとマッチしない場合に使用されるエラーの状態又は遷移を示してもいない。当業者であれば、これら詳細がなくても、ステート・マシーン110がどのように動作するか、理解できよう。 State machine 110 represents a simplified version of the actual state machine. For example, the state machine 110 does not label transitions between various states, nor does the state machine 110 indicate an error state or transition used when the data does not match what is expected. .. Those skilled in the art will understand how state machine 110 operates without these details.

正式には、数学用語では、ステート・マシーンは、5個の成分からなるもの(Σ,S,s,δ,F)として表され、ここで、Σはアルファベット(ステート・マシーンによって認識された複数シンボルからなるセット)であり、Sはステート・マシーン中の複数状態からなるセット(set:組、グループ)であり、sは初期状態であり、δは遷移関数であって、S中の各状態及びΣ中の各シンボルをS中の1つの状態(これは、入力の状態と同じ状態であっても良い)へとマッピングし、そして、Fは、S中の複数の最終状態のセットである。よって、ステート・マシーン110は、より正式には、(Σ,S,s,δ,F)として表すことができ、ここで: Formally, in mathematical terms, a state machine is represented as a five-component (Σ, S, s 0 , δ, F), where Σ is an alphabet (as recognized by the state machine. Is a set consisting of a plurality of symbols), S is a set consisting of a plurality of states in the state machine (set: set, group), s 0 is an initial state, δ is a transition function, and Map each state and each symbol in Σ to one state in S, which may be the same state as the input, and F is a set of multiple final states in S. Is. Thus, the state machine 110 can be more formally represented as (Σ,S,s 0 ,δ,F), where:

Σ={S,0,1,…}(状態S及びバイナリ値0及び1だけよりも、もっと多くの認識されたシンボル(これらはステート・マシーンによって認識されたシンボルだけであるけれども)が潜在的に存在し得る) Σ={S,0,1,...} (There are more recognized symbols (although these are the only symbols recognized by the state machine) than state S and binary values 0 and 1 alone) Can exist)

S={110,115,120,125,130,135,140,145} S={110,115,120,125,130,135,140,145}

=110 s 0 =110

δ(δは、その完全な遷移関数を表すのは、非常にめんどうであるし、ほとんど価値がないであろうことから、ここでは、より詳細には表さない) δ (δ is not elaborated here in more detail because it is very cumbersome to represent its complete transition function and would be of little value)

F={145} F={145}

実際、ステート・マシーン110のこの表現は、必ずしも完全ではない。遷移は、典型的には、シンボルのグループでよりは、個々のシンボルで生じる。よって、状態120から125への遷移は、実際には、3つの遷移(そして、それ故に、いくつかの中間状態)を含むことができる(各ビットについて認識されたものは、そのフィールドが「begin」とラベルが付けられる)。しかし、簡略化しても、当業者であれば、ステート・マシーン110がどのように動作するか理解できよう。 In fact, this representation of state machine 110 is not always perfect. Transitions typically occur on individual symbols rather than on groups of symbols. Thus, the transition from state 120 to 125 can actually include three transitions (and, therefore, some intermediate states) (what is recognized for each bit is that its field is "begin"). "). However, even with simplification, one of ordinary skill in the art will understand how state machine 110 operates.

ユーザは、ステート・マシーン110中で、ある特定の値が所与の状態に関して読み出されたら、ある処理にトリガをかけたいかもしれない。例えば、ユーザは、もしアドレス・フィールドが値10(バイナリ値で1010、16進数でA)を保持していたら、ある処理にトリガをかけたいかもしれない。図1Cは、このトリガを実現するために、どのようにステート・マシーン110を変更できるかの例を示す。図1Cでは、任意のあり得る値をアドレス・フィールドに関してマッチング処理する代わりに、ステート・マシーン150が、ビット・ストリームを特定の値1010と(状態155において)比較している。もしその値が見つかれば、続いて、状態160において、トリガが満たされたと考えられ、そして、トリガ処理を開始させる(その処理は、どのようなものでも良い)。 The user may want to trigger an operation in the state machine 110 when a particular value is read for a given state. For example, the user may want to trigger some processing if the address field holds the value 10 (binary value 1010, hexadecimal A). FIG. 1C shows an example of how the state machine 110 can be modified to implement this trigger. In FIG. 1C, instead of matching any possible value with respect to the address field, state machine 150 compares the bit stream to a particular value 1010 (in state 155). If it finds the value if, subsequently, in the state 160, believed to trigger it is met, and to initiate trigger processing (the processing can be of any type).

状態115及び120は、ステート・マシーン150と、ステート・マシーン110とで同じであることに注意されたい(状態115は、ステート・マシーンが開始する状態であり、状態120は、ビット・ストリームの状態Sとマッチする)。しかし、状態165は、特定フィールドが読み出されたかに留意しない点で、状態125とは異なる。言い換えれば、状態165では、重要なのは、3つのビットがビット・ストリームから読み出されることだけである。状態155は、そのアドレス・フィールドにマッチするか(状態130でのように)ではなく、その特定ビット・パターン1010とマッチするかだけに関係があるので、状態155も状態130とは異なる。最後に、ユーザの条件が一度マッチしたら、更なるマッチング処理を行う必要はなく、そのため、ステート・マシーン150は、状態135及び140に類似するものを持っていない。つまり、条件を満たした後、トリガを直ちに出すことができる。 Note that states 115 and 120 are the same for state machine 150 and state machine 110 (state 115 is the state machine started state and state 120 is the state of the bit stream). Matches S). However, state 165 differs from state 125 in that it does not care if a particular field has been read. In other words, in state 165, all that matters is that three bits are read from the bit stream. State 155 is also different from state 130 because state 155 is not concerned with whether it matches its address field (as in state 130), but only with its particular bit pattern 1010. Finally, once the user's conditions have been matched, no further matching processing needs to be performed, so the state machine 150 has no analog of states 135 and 140. That is, the trigger can be issued immediately after the condition is satisfied.

図1A〜1Cは、正規表現、この正規表現にマッチするステート・マシーン及びトリガ・ステート・マシーンのかなり単純化した例を示す。(トリガ・ステート・マシーンは、時として、シンプルに「ステート・マシーン」と呼ばれるが、状況から、当業者であれば、特定のステート・マシーンが、トリガ・ステート・マシーンであるか、又は、正規表現にマッチするステート・マシーンであるかを判断できる。)図2A〜2Dは、もっと複雑な例を示す。図2Aでは、3つの異なるパケットに関する正規表現が示されている。これら正規表現は、図2Bに示すように、ステート・マシーンに変換できる。図2Bのステート・マシーン205は、3つの可能なプロトコルをカバーするのに、単一のスタート(start)状態を利用していることに注意されたい。 1A-1C show a fairly simplified example of a regular expression, a state machine that matches this regular expression, and a trigger state machine. (A trigger state machine is sometimes simply referred to as a "state machine", but it is understood by one of ordinary skill in the art that a particular state machine is a trigger state machine or a regular state machine. It can be determined if it is a state machine that matches the expression.) Figures 2A-2D show more complex examples. In FIG. 2A, regular expressions for three different packets are shown. These regular expressions can be converted to a state machine, as shown in Figure 2B. Note that the state machine 205 of FIG. 2B utilizes a single start state to cover the three possible protocols.

ステート・マシーン205は、示したように利用できる。しかし、ステート・マシーン205を示したように使うには、先読み又はバックトラッキングが必要であろうし、これは、追加のメモリを必要とし、ビット・ストリームの処理を低下させることがある。例えば、特定の入力について、複数の状態があり得る場合、最も左を優先すると仮定しよう(図2Bは、プロセッサがどのようにステート・マシーン205を使うかというよりは、人によって読まれるであろうため)。例えば、状態210、215及び220の全ては、Begin状態にマッチし、そして、状態225、230及び235の全ては、スレーブ・アドレス・フィールドとして、4ビットにマッチすることに注意されたい。最も左を優先するアプローチを用いると、Begin状態と、スレーブ・アドレス・フィールドとして4ビットとを読んだ後には、システムは、状態225にあるであろう。しかし、もし次に読むビットが0だと、システムは、ステート・マシーン205の間違った枝(ブランチ)をたどり、そして、正しい枝を見つけようとして、ステート・マシーン205を巻き戻さなければならないであろう。これは、バックトラッキングの例である。ステート・マシーン205を逆行させ、異なる枝を処理しなければならなくなると、ビット・ストリームの処理が遅くなるのは、明かであろう。ステート・マシーン205を用いてバックトラッキングを避けるには、先読み処理が必要となろう(システムは、ビット・ストリームにこれからやってくるビットをなんとかして調べなければならない)。先読みも、複雑で高価である。 State machine 205 is available as shown. However, to use the state machine 205 as shown would require read ahead or backtracking, which would require additional memory and slow down the processing of the bit stream. For example, if there are multiple states possible for a particular input, suppose that leftmost is preferred (FIG. 2B is read by a person rather than how the processor uses state machine 205). For deaf). For example, note that all of states 210, 215 and 220 match the Begin state, and all of states 225, 230 and 235 match four bits as the slave address field. Using the leftmost first approach, the system would be in state 225 after reading the Begin state and 4 bits as the slave address field. However, if the next bit to read is 0, the system must follow the wrong branch of state machine 205 and rewind state machine 205 in an attempt to find the correct branch. Let's do it. This is an example of backtracking. Obviously, if the state machine 205 were to go backwards and have to process different branches, it would slow down the bit stream. To avoid backtracking using the state machine 205 would require a look-ahead operation (the system would have to somehow look up the bit stream for the upcoming bits). Lookahead is also complicated and expensive.

バックトラッキング及び先読みの両方を避けるように、ステート・マシーン205を最適化できる。図2Cのステート・マシーン240は、最適化したステート・マシーンの例を示す。ステート・マシーン240によれば、先読みをする必要がなく、バックトラッキングの心配もない。複数パケットのいずれかの任意のプリフィックス(先頭の値)が与えられると(パケット全体を含めて、パケット全体まで)、そのプリフィックスにマッチするあり得るパスは、ステート・マシーン240を通して、1つしかない。従って、先読みをする必要はないし、バックトラッキングを心配する必要もない。つまり、ステート・マシーン240中の特定の状態と、特定の入力シンボルとが与えられると、遷移する先のあり得る状態は1つしかない(この状態は、簡単のため、図2Cでは示していないエラー状態かもしれない)。 The state machine 205 can be optimized to avoid both backtracking and read ahead. State machine 240 of FIG. 2C illustrates an example of an optimized state machine. According to the state machine 240, there is no need to read ahead and there is no concern about backtracking. Given any prefix (leading value) of any of the packets (up to the entire packet, including the entire packet), there is only one possible path through the state machine 240 that matches that prefix. .. Therefore, there is no need to look ahead and worry about backtracking. That is, given a particular state in state machine 240 and a particular input symbol, there is only one possible state to transition to (this state is not shown in FIG. 2C for simplicity). It may be an error condition).

最適化は、次の手順を用いて達成できる。スタート状態からツリーを歩くことによってスタートし、等価(equivalent)で同じ親(parent:ペアレント)を持つ複数のノードを組み合わせる(つまり、それら複数ノードを単一のノードに結合する)。処理は、組み合わせる類似のノードが無くなるまで繰り返すことができる。続いて、等価な複数の成功(Success)状態を見つけ、それらを組み合わせ、次に等価で同じ子供(Children:チルドレン)を持つノードを組み合わせる(再度、組み合わせるノードが無くなるまで、その処理を繰り返す)。 Optimization can be achieved using the following procedure. Start by walking a tree from the start state and combine multiple nodes that are equivalent and have the same parent (ie, combine them into a single node). The process can be repeated until there are no similar nodes to combine. Next, find multiple equivalent Success states, combine them, and then combine equivalent nodes that have the same children (the process is repeated until there are no more nodes to combine).

図2Dは、ユーザによってカスタマイズされた特定トリガ・ステート・マシーンの例を示す。図2Dでは、ユーザは、正規表現中のパケットのアドレス・フィールド(スレーブ・アドレス・フィールドではない)が値0に設定された場合に、トリガするように選択している。このフィールドは、パケットのレジスタ0ライト(Register 0 Write)中に現れないので、そのステート・マシーンのこの枝(ブランチ)全体をトリガ・ステート・マシーン245から排除できる。どのような値もスレーブ・アドレス・フィールドに対してマッチでき、その後で、ビット0及び1は、マッチしなければならない。その後、任意のビットが発生でき(実際のビットは、読まれる特定のパケットに依存するであろうが、トリガ・ステート・マシーン245は、どの値を受けるかに関係がない)、その後に、アドレス・フィールドに関するビットを受け、値0と比較できる。もし値0がアドレス・フィールドについてマッチするなら、トリガ・ステート・マシーン245は成功であり、トリガを開始できる。 FIG. 2D shows an example of a specific trigger state machine customized by the user. In FIG. 2D, the user has selected to trigger if the address field (not the slave address field) of the packet in the regular expression is set to the value 0. This field does not appear in the Register 0 Write of the packet, so this entire branch of that state machine can be eliminated from the trigger state machine 245. Any value can match against the slave address field, after which bits 0 and 1 must match. Then any bit can occur (the actual bit will depend on the particular packet being read, but the trigger state machine 245 does not care what value it receives), and then the address Receive the bits for the field and compare with the value 0. If the value 0 matches for the address field, the trigger state machine 245 is successful and the trigger can begin.

上記例は、等式として表される単一のトリガ基準を利用する。しかし、そのトリガ条件を等式に限定する理由はない。等式(==)を別にすると、他のトリガ条件の例としては、等しくない(!=)、より小さい(<)、以下(<=)、より大きい(>)、又は、以上(>=)があり得る。加えて、トリガ条件は、正規表現中のフィールドの情報のサブセットだけに依存するかもしれない。例えば、図2Dでは、ユーザは、アドレス・フィールドの中間の3ビットが001に等しいかどうかだけに感心があるかもしれない(アドレス・フィールド(これは、合計5ビットを持っている)の最初と最後のビットは、任意の値にマッチして良い)。特定の状態に達することだけに依存してトリガ条件を設定することも可能である。例えば、ユーザは、その実際の値に関係なく、いつアドレス・フィールドに達したかを知ることに関心があるかもしれない。 The above example utilizes a single trigger criterion expressed as an equation. However, there is no reason to limit the trigger condition to an equation. Apart from the equation (==), examples of other trigger conditions are not equal (!=), less than (<), less than (<=), greater than (>), or greater than (>=). ) Is possible. In addition, the trigger condition may depend only on a subset of the information in the fields in the regular expression. For example, in FIG. 2D, the user may be only interested in whether the middle 3 bits of the address field are equal to 001 (at the beginning of the address field, which has a total of 5 bits). The last bit may match any value). It is also possible to set the trigger condition depending only on reaching a particular state. For example, the user may be interested in knowing when the address field was reached, regardless of its actual value.

加えて、トリガ条件は、単一の基準(これは、1つの単純なトリガ条件と呼ばれる)に限定される必要はない。ユーザは、任意の所望組み合わせにAND及びOR演算子を用いて組み合わせられた複数の基準(複合トリガ条件)を指定できる。よって、ステート・マシーンは、複数の条件(これらのいずれかは、サブ条件などのセットを含むかもしれない)を試験することができる。当業者であれば、ユーザが供給した条件を、どのようにして積和標準形(Disjunctive Normal Form)又は和積標準形(conjunctive normal form)に単純化するかわかるであろうし、これは、ステート・マシーンの構造を単純化できる。(積和標準形は、連言節(conjunctive clause)の選言(disjunction)、即ち、AND(論理積)のOR(論理和)として表現された論理式に言及する。和積標準形は、同様にOR(論理和)のAND(論理積)を表す。) In addition, the trigger condition need not be limited to a single criterion (which is called one simple trigger condition). The user can specify a plurality of criteria (composite trigger conditions) combined by using AND and OR operators in any desired combination. Thus, the state machine can test multiple conditions, any of which may include a set of sub-conditions and the like. One of ordinary skill in the art will know how to simplify the user-supplied condition into a Disjunctive Normal Form or a Conjunctive Normal Form, which is the state -The structure of the machine can be simplified. (The sum-of-products standard form refers to a disjunction of a conjunctive clause, that is, a logical expression expressed as an OR (logical sum) of AND (logical products). Similarly, it represents AND (logical product) of OR (logical sum).)

図3A〜3Bは、複合トリガ条件を有するステート・マシーンの例を示す。図3Aでは、ユーザが、(addr == 0xA && parity == 1)のトリガ条件を指定している。こうしたトリガ条件は、2つの条件の連言(conjunction:論理積、結合)である。このトリガ条件は、2つの状態の両方が特定の値を持つことを必要とするので、ステート・マシーン中の2つの状態が(ユーザによって指定されて)特定の値に設定される。他の状態の値は、通常、重要ではなく、単一の状態へと組み合わせることができる。 3A-3B show an example of a state machine with compound trigger conditions. In FIG. 3A, the user has specified the trigger condition of (addr == 0xA && parity == 1). Such a trigger condition is a conjunction (conjunction) of two conditions. This trigger condition requires both of the two states to have specific values, so the two states in the state machine are set to specific values (specified by the user). The values of the other states are usually insignificant and can be combined into a single state.

図3Bでは、ユーザは、(addr == 0xA || parity == 1)の特定トリガ条件(選言的トリガ条件)を指定している。このトリガ条件は、2つの状態の一方が特定の値を持つことを必要とするので、別々の条件を有する2つのステート・マシーンを確立し、上述の最適化手法を用いて統合できる。このトリガ条件は、選言(disjunction)のため、1つステート・マシーンに適用されるけれども、成功トリガへのあり得るパスは2つ存在する。 In FIG. 3B, the user has specified a specific trigger condition (disjunctive trigger condition) of (addr == 0xA || parity == 1). This trigger condition requires that one of the two states have a particular value, so two state machines with separate conditions can be established and integrated using the optimization techniques described above. Although this trigger condition applies to one state machine due to disjunction, there are two possible paths to a success trigger.

図3A〜3Bは、2つの可能なトリガ値を組み合わせる単一のAND又はORを含んでいる例を与える。しかし、この処理をもっと複雑なトリガ条件に関して一般化できることは明かであろう。例えば、もしトリガ条件が、AND演算で結合される2つの値か、又は、もう1つの値((X AND Y)OR Z)の形の式)を含むなら、ステート・マシーンはコピーしても良い。1つのコピーは、AND演算の第1値を反映するよう変更でき、第2のコピーは、AND演算の第2値を反映するよう変更でき、第3のコピーは、OR演算の残りの値を反映するよう変更できる。最初の2つのステート・マシーンは、続いて、第3のステート・マシーンと組み合わせられて最適化され、複合トリガ条件を表すようにできる。 3A-3B give an example containing a single AND or OR that combines two possible trigger values. However, it will be clear that this process can be generalized to more complex trigger conditions. For example, if the trigger condition contains two values that are combined in an AND operation, or another value (an expression in the form of (X AND Y) OR Z), the state machine can be copied. good. One copy can be modified to reflect the first value of the AND operation, the second copy can be modified to reflect the second value of the AND operation, and the third copy can modify the remaining values of the OR operation. Can be changed to reflect. The first two state machines can then be combined and optimized with a third state machine to represent a composite trigger condition.

さて、トリガ・ステート・マシーンを説明してきたが、トリガ・ステート・マシーンを利用できるシステムを説明できる。図4は、種々のトリガ条件が満たされたときに、試験測定装置をトリガする図1B〜1C及び2B〜2Dのステート・マシーンを生成及び利用できる、本発明の実施形態による試験測定装置を示す。システムは、試験測定装置405を含んでいても良い。試験測定装置は、他にも可能性がある中で特にオシロスコープのような、任意の所望の試験測定装置であっても良い。 Now that the trigger state machine has been described, a system capable of utilizing the trigger state machine can be described. FIG. 4 illustrates a test and measurement device in accordance with an embodiment of the present invention that can generate and utilize the state machines of FIGS. 1B-1C and 2B-2D that trigger the test and measurement device when various trigger conditions are met. .. The system may include a test and measurement device 405. The test and measurement device may be any desired test and measurement device, such as an oscilloscope, among other possibilities.

試験測定装置405は、メモリ410を含んでも良い。メモリ410は、ステート・マシーン415のような情報を記憶できる。ステート・マシーン415は、正規表現にマッチさせるのに利用されるステート・マシーン、言い換えると、図1B、2B及び2Cのステート・マシーン110、205及び240のようなステート・マシーンとしても良い。ステート・マシーン415は、図1C及び2Dのステート・マシーン150及び245のような、トリガ・ステート・マシーンであっても良い。 The test and measurement device 405 may include a memory 410. Memory 410 can store information such as state machine 415. State machine 415 may be a state machine utilized to match a regular expression, in other words, a state machine such as state machines 110, 205 and 240 of FIGS. 1B, 2B and 2C. State machine 415 may be a trigger state machine, such as state machines 150 and 245 of FIGS. 1C and 2D.

試験測定装置405は、試験測定装置405の入力を受けることができる受信部420も含むことができる。入力は、あらゆる方法で受けることができる。例えば、受信部420は、トリガ条件425(これ自身が、例えば、特定のビット・フィールドに関してユーザが選択した値430を含んでも良い)のような情報をユーザが入力するためのユーザ・インタフェースを含んでいても良い。又は、受信部420が、分析すべきビット・ストリーム435のようなビット・ストリームを含む信号を受けるのを含んでいても良い。また、受信部420は、(例えば、統合開発環境(IDE)を通して)正規表現440を受けても良く、これは、システムがビット・ストリーム435で受けると予期されるデータを特定でき、ステート・マシーン415を構築するのに利用できる(正規表現440又はトリガ・ステート・マシーンを認識するステート・マシーンである)。 The test and measurement device 405 may also include a receiver 420 that may receive input from the test and measurement device 405. Input can be received in any way. For example, the receiver 420 includes a user interface for a user to enter information such as a trigger condition 425 (which itself may include, for example, a user-selected value 430 for a particular bit field). You can go out. Alternatively, the receiver 420 may include receiving a signal containing a bitstream, such as the bitstream 435 to be analyzed. The receiver 420 may also receive a regular expression 440 (eg, through an integrated development environment (IDE)), which allows the system to identify the data it expects to receive in the bit stream 435, 415 (which is a state machine that recognizes the regular expression 440 or trigger state machine).

試験測定装置405は、種々の他のユニットも含むことができる。ステート・マシーン変更部445は、既存のステート・マシーン(例えば、正規表現440にデータをマッチさせるもの)を取ってきて、それをトリガ・ステート・マシーンとして動作するように変更する。上述のように、これは、色々な可能性のなかでも特に、トリガ条件満たした後に生じる状態を除去する処理と、トリガ条件の一部と考えられない値の状態を組み合わせる(結合する)処理とを含むことができる。 The test and measurement device 405 may also include various other units. The state machine changing unit 445 fetches an existing state machine (for example, one that matches data with the regular expression 440) and changes it so as to operate as a trigger state machine. As mentioned above, this is, among other possibilities, a process of removing states that occur after the trigger condition is met and a process of combining (combining) states of values that are not considered part of the trigger condition. Can be included.

処理エンジン450は、種々のステート・マシーン(例えば、正規表現440を用いて生成されるステート・マシーン又はステート・マシーン変更部445を用いて生成されトリガ・ステート・マシーンを含む)を用いてビット・ストリーム435を処理できる。この処理は、ビット・ストリーム435からビットが読み出されるときに、種々のステート・マシーンのそれぞれに関する現在の状態をアップデートする処理を含んでも良い。 Processing engine 450, various state machine (e.g., a trigger state machine that will be generated using a state machine or state machine changing unit 445 is generated using a regular expression 440 including) using The bit stream 435 can be processed. This process may include updating the current state for each of the various state machines as the bits are read from bit stream 435.

トリガ・システム455は、トリガ条件が満たされたとき、即ち、トリガ・ステート・マシーンが満たされたときに、トリガを送信できる。トリガ・システム455は、当業者であれば理解するであろうように、トリガの結果として任意のアクションを実行するために、試験測定装置405の任意の所望コンポーネントにトリガを送信できる。 The trigger system 455 can send a trigger when the trigger condition is met, i.e. when the trigger state machine is met. The trigger system 455 can send a trigger to any desired component of the test and measurement device 405 to perform any action as a result of the trigger, as will be appreciated by those skilled in the art.

ステート・マシーン発生部460は、正規表現440からステート・マシーンを生成できる。上述のように、これは、正規表現で提示された順番でフィールドにマッチする状態のシーケンシャルなシリーズを生成する処理を含んでも良い。また、これは、異なる正規表現にマッチする種々のステート・マシーンを単一のステート・マシーンに結合して、先読み及びバックトラッキングの問題を避けるように、ステート・マシーンを最適化する処理を含んでも良い。 The state machine generator 460 can generate a state machine from the regular expression 440. As mentioned above, this may include generating a sequential series of matching fields in the order presented in the regular expression. It also includes the process of combining different state machines that match different regular expressions into a single state machine, optimizing the state machine to avoid read-ahead and backtracking problems. good.

トリガ・ステート・マシーンを発生及び利用することとは別に、試験測定装置405は、パンくずリストを生成するのにも利用できる。パンくずリストは、ステート・マシーンの動作を、ユーザが再現し、データがどのように処理されたか見るのを可能にする。パンくずリスト465のようなパンくずリストは、数ビットのデータであり、メモリ410に記憶できる。基本的に、ステート・マシーン中の状態に入るたびに、パンくずリストが保存できる。パンくずリストは、状態の形式(例えば、エラー状態、パケット・スタート、パケット・エンド又はフィールド)、状態のID(これは、フィールド又はパケットを特定できる)及び状態に入ること(エントリー)を生じさせるデータのスタート及びストップ時間のような時間、などのようなデータを含むことができる。当業者であれば、他の可能性のなかでも特に、「時間」は、文字通りの時間の概念(信号のスタートから秒単位で、又は、その何分の1かで)に言及しなければならないものはでなく、むしろ信号へのインデックスに言及しても良いことが理解できよう。パンくずリストは、適宜、分析に関係する追加データも含んで良い。従って、パンくずリストに含めるべきデータのID(identification:識別)は、ユーザがカスタマイズできる。 Apart from generating and utilizing the trigger state machine, the test and measurement device 405 can also be used to generate a breadcrumb trail. The breadcrumbs allow the user to reproduce the behavior of the state machine and see how the data was processed. A breadcrumb trail, such as breadcrumb trail 465, is a few bits of data that can be stored in memory 410. Basically, you can save a breadcrumb trail each time you enter a state in the state machine. The breadcrumb gives rise to the type of state (eg error state, packet start, packet end or field), state ID (this can identify a field or packet) and entry (entry). Data such as times such as data start and stop times, etc. may be included. The person skilled in the art must refer to the concept of time literally (in seconds from the start of the signal, or by a fraction thereof), among other possibilities. It will be appreciated that reference may be made to the index to the signal rather than the thing. The breadcrumbs may also include additional data relevant to the analysis, as appropriate. Therefore, the user can customize the ID (identification) of the data to be included in the breadcrumbs.

パンくずリストは、通常、トリガ・ステート・マシーンを用いて生成できる。しかし、当業者であれば、任意の他のステート・マシーンをパンくずリストの生成に利用できないという理由はなく、従って、任意のステート・マシーンを用いてパンくずリストを生成できることが理解できよう。 Breadcrumbs can typically be generated using a trigger state machine. However, one of ordinary skill in the art will appreciate that there is no reason that any other state machine cannot be used to generate the breadcrumbs, and thus any state machine can be used to generate the breadcrumbs.

パンくずリストの生成をサポートするため、試験測定装置405が分析部470を含んでも良い。分析部470は、ステート・マシーンを用いてビット・ストリーム435を分析できる。動作において、分析部470は、処理エンジン450に類似するが、それらの目的は異なる。処理エンジン450が、正規表現を認識しようとして、ビット・ストリーム435のビットをマッチングに関与する一方、分析部470は、パンくずリストをいつメモリ410に保存するか判断することに関与する。また、分析部470及び処理エンジン450は、典型的には、異なるステート・マシーン上で動作する:分析部470は、通常、トリガ・ステート・マシーンを利用する(利用しなければならないことはないが)一方で、プロセッサ450は、正規表現にマッチするフルのステート・マシーンを利用する。 The test and measurement device 405 may include an analyzer 470 to support the generation of the breadcrumbs. The analysis unit 470 can analyze the bit stream 435 using a state machine. In operation, the analyzer 470 is similar to the processing engine 450, but their purpose is different. The processing engine 450 is responsible for matching the bits of the bit stream 435 in an attempt to recognize the regular expression, while the analyzer 470 is responsible for determining when to store the breadcrumbs in the memory 410. Also, the analyzer 470 and the processing engine 450 typically operate on different state machines: the analyzer 470 typically utilizes a trigger state machine (although it does not have to. ) On the other hand, the processor 450 utilizes a full state machine that matches the regular expression.

試験測定装置405は、パンくずリスト発生部475も含んで良い。パンくずリストを発生する時間であるという(例えば、新しい状態に入ったと、分析部470によって判断されるような)場合に、パンくずリスト発生部475は、そのパンくずリストをメモリ410に保存できる。 The test and measurement device 405 may also include a breadcrumbs generator 475. The breadcrumb trail generator 475 may store the breadcrumb trail in the memory 410 if it is time to generate the breadcrumb trail (eg, as determined by the analyzer 470 when a new state is entered). ..

最後に、試験測定装置405は、再現部480を含んでも良い。再現部480は、ユーザが、ビット・ストリーム435についてのステート・マシーンの動作を(分析部470で処理されたように)再現するのを可能する。この再現は、ユーザが、何が起きたかを追いかける(フォローする)のを可能にする。 Finally, the test and measurement device 405 may include a reproduction unit 480. Reproducer 480 allows the user to reproduce the behavior of the state machine for bit stream 435 (as processed by analyzer 470). This reproduction allows the user to follow (follow) what happened.

上述の試験測定装置405は、トリガ・ステート・マシーン又はパンくずリストの生成のいずれか、又は両方を処理できる。試験測定装置の中には、複数のステート・マシーンを処理するのに必要なハードウェア及び/又はソフトウェアを含むものもある。もし試験測定装置が、複数のステート・マシーンを処理できるのなら、試験測定装置405は、トリガ条件及びパンくずリストに関する処理の両方を実行できる。 The test and measurement device 405 described above can handle either or both of a trigger state machine and a breadcrumb trail generation. Some test and measurement devices include the hardware and/or software necessary to process multiple state machines. If the test and measurement device can handle multiple state machines, then the test and measurement device 405 can perform both the trigger condition and the breadcrumb trail processing.

図5は、図4のステート・マシーン変更部をより詳細に示している。図5では、ステート・マシーン変更部445は、ステート・マシーン最適化部505を含んでいるとして示されている。ステート・マシーン最適化部505は、上述のように、ステート・マシーンを最適化できる。こうした最適化は、正規表現にマッチするよう設計されたステート・マシーンについてか、又は、トリガ・ステート・マシーンについてか、どちらでも可能である。 FIG. 5 shows the state machine changer of FIG. 4 in more detail. In FIG. 5, the state machine changing unit 445 is shown as including the state machine optimizing unit 505. The state machine optimization unit 505 can optimize the state machine as described above. Such optimization is possible either for state machines designed to match regular expressions or for trigger state machines.

図6は、図4のパンくずリストをより詳細に示している。図6では、パンくずリスト465は、形式605、ID610及び時間615を含むとして示されている。上述のように、形式605は、パンくずリスト465を生成した状態の形式を特定できる。ID610は、パンくずリスト465を生成したステート・マシーン中の特定の状態を特定できる。そして、時間615は、その状態がいつパンくずリスト465を生成したかの、信号中の時間(又はインデックス)を特定できる。 FIG. 6 shows the breadcrumbs of FIG. 4 in more detail. In FIG. 6, the breadcrumb 465 is shown as including a format 605, an ID 610 and a time 615. As described above, the format 605 can identify the format of the state in which the breadcrumb 465 is generated. The ID 610 can identify a particular state in the state machine that generated the breadcrumb 465. And time 615 can identify the time (or index) in the signal when that state generated breadcrumbs 465.

図7A〜7Bは、図4の試験測定装置を用いて、プロトコルとユーザ設定とからトリガ・ステート・マシーンを生成する手順のフローチャートを示す。図7Aでは、ブロック705において、システムが正規表現を受けても良い。ブロック710では、システムが、正規表現に対応するステート・マシーンを生成できる。ブロック715では、システムがステート・マシーンを最適化できる。 7A-7B show a flow chart of a procedure for generating a trigger state machine from a protocol and user settings using the test and measurement device of FIG. In FIG. 7A, at block 705, the system may receive a regular expression. At block 710, the system may generate a state machine corresponding to the regular expression. At block 715, the system can optimize the state machine.

ブロック720では、システムは、正規表現に対応するステート・マシーン(ブロック705〜715で生成されたステート・マシーンと同じでも良い)を特定できる。ブロック725では、システムは、ユーザからトリガ条件を受ける。これは、色々な可能性のなかでも特に、例えば、正規表現中の特定フィールドに関するユーザ指定値(又は値の一部)、複数のそうしたユーザ指定値、単に到達するべき(リーチすべき)フィールドを含んでいても良い。ブロック730では、システムは、トリガ条件を実行するように変更できるステート・マシーン中の1つの状態(又は1より多い状態)を特定できる。 At block 720, the system can identify the state machine (which may be the same as the state machine generated at blocks 705-715) corresponding to the regular expression. At block 725, the system receives a trigger condition from the user. This can be, among other possibilities, for example a user-specified value (or part of a value) for a particular field in a regular expression, multiple such user-specified values, a field that should only be reached (reached). It may be included. At block 730, the system can identify one state (or more than one state) in the state machine that can be modified to execute the trigger condition.

ブロック735(図7B)では、システムは、特定された状態を変更し、ユーザ選択値と比較しても良い。ブロック740、システムは、変更されたステート・マシーンを記憶できる。ブロック745では、システムは、ビット・ストリームを受けることができる。ブロック750では、システムは、変更されたステート・マシーンを用いて、ビット・ストリームを処理できる。ブロック710では、システムは、トリガ条件が満たされたか判断できる。もしそうなら、次に、ブロック755において、システムは、トリガ・システムを利用(apply)できる。 At block 735 (FIG. 7B), the system may change the identified state and compare it with the user selected value. Block 740, the system can store the modified state machine. At block 745, the system may receive the bitstream. At block 750, the system can process the bit stream with the modified state machine. At block 710, the system can determine if the trigger condition was met. If so, then at block 755, the system can apply the trigger system.

上述のように、トリガ条件は、複合トリガ条件でも良い。この場合、手順のフローチャートは、トリガ条件の複合された特性を反映するように変更できる。図8は、この変更を反映している。図8は、図7A〜7Bのブロック730及び735を変更している:図7A〜7Bの他のブロックは変更がなく、そのため、図8では示していない。 As mentioned above, the trigger condition may be a compound trigger condition. In this case, the procedural flow chart can be modified to reflect the combined characteristics of the trigger conditions. FIG. 8 reflects this change. FIG. 8 modifies blocks 730 and 735 of FIGS. 7A-7B: the other blocks of FIGS. 7A-7B are unchanged and are therefore not shown in FIG.

図8では、ブロック805において、システムが、複合トリガ条件で関係する複数の状態を特定する。関係する状態の個数は、複合トリガ条件中に含まれる単純な条件の個数よりも少ないことがある。例えば、図1Bに示されるステート・マシーンに関する複合トリガ条件は、(addr == 0xA || addr == 0xF)であっても良い。複合トリガ条件の両側で同じ状態が使われることに注意されたい。ブロック810では、システムは、複合トリガ条件中の単純なトリガ条件それぞれについて1回、ステート・マシーンを複製する。上記例を続けると、複合トリガ条件は、2つの単純なトリガ条件(addr == 0xA || addr == 0xF)を含み、そのため、システムは、ステート・マシーンの2つの複製を生成するであろう。ブロック815では、各複製ステート・マシーン内で、特定された状態が、ユーザ指定値との比較を反映するよう変更される。最後に、ブロック820では、変更された複製ステート・マシーンが、複合トリガ条件を反映する単一のステート・マシーンを生成するように結合される。このポイントにおいて、処理は、図7Bのブロック740に続く。 In FIG. 8, at block 805, the system identifies the multiple states involved in the composite trigger condition. The number of states involved may be less than the number of simple conditions included in the composite trigger condition. For example, the compound trigger condition for the state machine shown in FIG. 1B may be (addr == 0xA || addr == 0xF). Note that the same state is used on both sides of the compound trigger condition. At block 810, the system duplicates the state machine once for each simple trigger condition in the composite trigger condition. Continuing with the example above, the composite trigger condition would include two simple trigger conditions (addr == 0xA || addr == 0xF), so the system would generate two replicas of the state machine. .. At block 815, within each duplicate state machine, the identified state is modified to reflect the comparison with the user-specified value. Finally, at block 820, the modified duplicate state machine is combined to produce a single state machine that reflects the composite trigger condition. At this point, processing continues at block 740 of Figure 7B.

図9は、図4の試験測定装置を用いてステート・マシーンを最適化する本発明の実施形態による手順のフローチャートを示す。図9では、ブロック905において、システムが、トリガ条件が満たされた後に生じ状態を除去できる。ブロック910では、システムが、任意の値を満たすことができる隣接する状態を単一の状態に統合できる。 FIG. 9 shows a flowchart of a procedure for optimizing a state machine using the test and measurement device of FIG. 4 according to an embodiment of the present invention. In Figure 9, at block 905, the system can be removed state arising after the trigger condition is satisfied. At block 910, the system may combine adjacent states that may satisfy any value into a single state.

図10は、図4の試験測定装置を用いてパンくずリストが保存できるステート・マシーンを生成する処理を利用する本発明の実施形態による手順のフローチャートを示す。ブロック1005では、システムが正規表現を受けても良い。ブロック1010では、システムが正規表現からステート・マシーンを生成できる。ブロック1015では、システムは、ステート・マシーンを最適化できる。ブロック1020では、システムは、ステート・マシーンをビット・ストリームに適用できる。ブロック1025では、システムが、ステート・マシーン中のある状態に入るたびに、パンくずリストを保存できる。ブロック1030では、システムは、ビット・ストリームへのステート・マシーンの適用を再現するのに、保存されたパンくずリストを利用できる。 FIG. 10 shows a flow chart of a procedure according to an embodiment of the present invention utilizing the process of creating a state machine capable of storing a breadcrumbs using the test and measurement device of FIG. At block 1005, the system may receive a regular expression. At block 1010, the system can generate a state machine from the regular expression. At block 1015, the system can optimize the state machine. At block 1020, the system can apply the state machine to the bitstream. At block 1025, the breadcrumb trail may be saved each time the system enters a state in the state machine. At block 1030, the system may utilize the saved breadcrumb trail to recreate the application of the state machine to the bit stream.

上記フローチャートは、いくつかの可能な本発明の実施形態を示している。しかし、本発明の他の実施形態では、ブロックを異なるアレンジで構成でき、要望に応じて異なるブロックを含めたり、省略したり、又は、必要に応じて1つのブロック(又は複数ブロック)を繰り返したりできる。本発明の実施形態は、フローチャートについてのこのようなバリエーションの全てを含むことを意図している。 The above flow chart illustrates some possible embodiments of the invention. However, in other embodiments of the invention, the blocks may be arranged in different arrangements, including different blocks if desired, omitted, or repeating one block (or multiple blocks) as needed. it can. Embodiments of the present invention are intended to include all such variations of flowcharts.

本発明の実施形態は、限定されることなく、次の記述(statements)に拡張できる。 Embodiments of the present invention can be extended to the following statements without limitation.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザからトリガ条件を受ける受信部と、上記トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具えるシステムがある。 As an embodiment of the present invention, a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a receiving unit that receives a trigger condition from a user, and the above trigger condition are reflected. There is a system that includes a state machine changing unit that changes the state machine.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザから複合トリガ条件を受ける受信部と、上記複合トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具えるシステムがある。 As an embodiment of the present invention, a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a receiving unit that receives a compound trigger condition from a user, and the compound trigger condition are reflected. Thus, there is a system including a state machine changing unit that changes the state machine.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザから複合トリガ条件を受ける受信部と、上記複合トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具え、上記ステート・マシーン変更部が、上記複合トリガ条件中の各値に関するステート・マシーンを複製し、複製されたステート・マシーンの夫々が上記複合トリガ条件中の1つの値を含むよう変更し、複数の変更された複製のステート・マシーンを組み合わせるシステムがある。 As an embodiment of the present invention, a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a receiving unit that receives a compound trigger condition from a user, and the compound trigger condition are reflected. And a state machine changing unit for changing the state machine, wherein the state machine changing unit duplicates the state machine related to each value in the composite trigger condition, and each of the duplicated state machines There is a system that modifies to include one value in the composite trigger condition and combines multiple modified duplicate state machines.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザからトリガ条件とビット・ストリームとを受ける受信部と、上記トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部と、上記ステート・マシーンを用いて上記ビット・ストリームを処理する処理エンジンと、もし上記トリガ条件が満たされると、トリガを送出するトリガ・システムとを具えるシステムがある。 Embodiments of the present invention include a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a receiving unit that receives a trigger condition and a bit stream from a user, and the trigger condition. A state machine changing unit that changes the state machine to reflect the above, a processing engine that processes the bit stream using the state machine, and sends a trigger if the trigger condition is satisfied. Some systems include a trigger system.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザからトリガ条件を受ける受信部と、ステート・マシーン最適化部を有し、上記トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具えるシステムがある。 Embodiments of the present invention include a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a reception unit that receives a trigger condition from a user, and a state machine optimization unit. However, there is a system including a state machine changing unit that changes the state machine so as to reflect the trigger condition.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザからトリガ条件を受ける受信部と、ステート・マシーン最適化部を有し、上記トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具え、上記ステート・マシーン最適化部が、変更された上記ステート・マシーンから、上記トリガ条件が満たされた後に生じた全ての状態を除去するように動作するシステムがある。 Embodiments of the present invention include a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a reception unit that receives a trigger condition from a user, and a state machine optimization unit. And a state machine changing unit for changing the state machine so as to reflect the trigger condition, the state machine optimizing unit is configured to meet the trigger condition from the changed state machine. There are systems that operate to eliminate all conditions that have occurred after

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザからトリガ条件を受ける受信部と、ステート・マシーン最適化部を有し、上記トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具え、上記ステート・マシーン最適化部が、任意の値で上記トリガ条件を満たすことができる状態を組み合わせる(combine:結合)するよう動作するシステムがある。 Embodiments of the present invention include a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a reception unit that receives a trigger condition from a user, and a state machine optimization unit. And a state machine changing unit that changes the state machine so as to reflect the trigger condition, and the state machine optimizing unit combines states that can satisfy the trigger condition with an arbitrary value. There are systems that work to combine.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザから複合トリガ条件を受ける受信部と、上記複合トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具え、上記ステート・マシーン変更部が、ビット・ストリームをユーザが選択した値と比較するように上記ステート・マシーンを設定するシステムがある。 As an embodiment of the present invention, a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a receiving unit that receives a compound trigger condition from a user, and the compound trigger condition are reflected. And a state machine changing unit for changing the state machine, the state machine changing unit setting the state machine so as to compare the bit stream with a value selected by the user. ..

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザからトリガ条件及び上記正規表現を受ける受信部と、上記正規表現から上記ステート・マシーンを生成するステート・マシーン発生部と、上記トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部とを具えるシステムがある。 Embodiments of the present invention include a test measuring device, a memory in the test measuring device that stores a state machine corresponding to a regular expression, a receiving unit that receives a trigger condition and the regular expression from a user, and a regular expression from the regular expression. There is a system that includes a state machine generation unit that generates the state machine and a state machine change unit that changes the state machine so as to reflect the trigger condition.

本発明の実施形態としては、試験測定装置と、正規表現に対応するステート・マシーンを記憶する試験測定装置中のメモリと、ユーザからトリガ条件を受ける受信部と、上記トリガ条件を反映するように上記ステート・マシーンを変更するステート・マシーン変更部と、上記ステート・マシーンを最適化するステート・マシーン最適化部とを具えるシステムがある。 As an embodiment of the present invention, a test measurement device, a memory in the test measurement device that stores a state machine corresponding to a regular expression, a receiving unit that receives a trigger condition from a user, and the above trigger condition are reflected. There is a system including a state machine changing unit for changing the state machine and a state machine optimizing unit for optimizing the state machine.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように特定された上記ステート・マシーン中の状態を変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test and measurement device, a process of receiving a trigger condition from a user, and a process of using the trigger condition received from the user. A process for specifying a state in the state machine, a process for changing a state in the state machine specified so as to reflect the trigger condition received from the user, and the changed state Storing the machine in the test and measurement device.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザから複合トリガ条件を受ける処理と、上記ユーザから受けた上記複合トリガ条件中で使用される上記ステート・マシーン中の複数の状態を特定する処理と、上記複合トリガ条件中の各値に関する上記ステート・マシーンを複製する処理と、上記ユーザから受けたトリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理であって、上記複合トリガ条件中の各値に関する上記ステート・マシーンを複製する処理と、複製された上記ステート・マシーン中の特定された状態を上記ユーザから受けたトリガ条件中の対応する値を反映するように変更する処理と、複製された複数の上記ステート・マシーンを組み合わせる処理とを有する上記ステート・マシーン中の上記状態を変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test measurement device, a process of receiving a compound trigger condition from a user, and a process of receiving the compound trigger condition from the user. To identify multiple states in the state machine used in the above, to duplicate the state machine for each value in the composite trigger condition, and to reflect the trigger condition received from the user. A process of modifying the identified state in the state machine, the process of duplicating the state machine for each value in the composite trigger condition, and the identifying of the duplicated state machine. Modifying the state in the state machine having a process of modifying the state to reflect a corresponding value in a trigger condition received from the user and a process of combining a plurality of the replicated state machines. There is a method that comprises processing and storing the modified state machine in the test and measurement device.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理と、ビット・ストリームを受ける処理と、変更された上記ステート・マシーンを用いて上記ビット・ストリームを処理する処理と、もし上記トリガ条件が満たされたと上記ステート・マシーンが示した場合に、上記試験測定装置のトリガ処理システムを利用する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test measurement device, a process of receiving a trigger condition from a user, and a process of using the trigger condition received from the user. A process for specifying a state in the state machine, a process for changing the specified state in the state machine to reflect the trigger condition received from the user, and the changed state The process of storing the machine in the test and measurement device, the process of receiving the bit stream, the process of processing the bit stream using the modified state machine, and if the trigger condition is met. A process using the trigger processing system of the test and measurement device, as indicated by the state machine.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理であって、変更された上記ステート・マシーンを最適化する処理を有する変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test and measurement device, a process of receiving a trigger condition from a user, and a process of using the trigger condition received from the user. A process for specifying a state in the state machine and a process for changing the specified state in the state machine to reflect the trigger condition received from the user, There is a method comprising a modifying process having a process for optimizing the state machine and a process for storing the modified state machine in the test and measurement device.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理であって、変更された上記ステート・マシーンから上記トリガ条件が満たされた後に生じた全ての状態を除去する処理を含む変更された上記ステート・マシーンを最適化する処理を有する上記変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test and measurement device, a process of receiving a trigger condition from a user, and a process of using the trigger condition received from the user. A process for specifying a state in the state machine and a process for changing the specified state in the state machine to reflect the trigger condition received from the user, The modifying process having a process for optimizing the modified state machine including removing all states that have occurred after the trigger condition is satisfied from the state machine; and the modified state Storing the machine in the test and measurement device.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理であって、任意の値で上記トリガ条件を満たすことができる隣接する複数の状態を単一の状態にまとめる処理を含む変更された上記ステート・マシーンを最適化する処理を有する上記変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test and measurement device, a process of receiving a trigger condition from a user, and a process of using the trigger condition received from the user. A process for specifying a state in the state machine and a process for changing the specified state in the state machine to reflect the trigger condition received from the user, and an arbitrary value The modifying process having a process of optimizing the modified state machine including a process of combining a plurality of adjacent states capable of satisfying the trigger condition with a single state, and the modified state Storing the machine in the test and measurement device.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理であって、ビット・ストリームをユーザが選択した値と比較するために特定された上記状態を変更する処理を含む変更された上記ステート・マシーンを最適化する処理を有する上記変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test and measurement device, a process of receiving a trigger condition from a user, and a process of using the trigger condition received from the user. A bit stream, the process of specifying a state in the state machine and the process of changing the specified state in the state machine to reflect the trigger condition received from the user. Modifying the state machine including modifying the state identified to compare the modified state machine to the value selected by the user, and the modified state machine including the step of optimizing the modified state machine. And a process stored in the test and measurement device.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理であって、上記ユーザから上記トリガ条件を受ける処理と共に上記正規表現から上記ステート・マシーンを生成する処理を含む上記状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test and measurement device, a process of receiving a trigger condition from a user, and a process of using the trigger condition received from the user. A process of identifying a state in the state machine, the process of identifying the state including a process of receiving the trigger condition from the user and a process of generating the state machine from the regular expression; Comprising the step of changing the specified state in the state machine to reflect the trigger condition received from the user, and the step of storing the changed state machine in the test and measurement device. There is a way.

本発明の実施形態としては、試験測定装置中に記憶された正規表現に対応するステート・マシーンを特定する処理と、ユーザからトリガ条件を受ける処理と、上記ステート・マシーンを最適化する処理を有する上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の状態を特定する処理と、上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の特定された上記状態を変更する処理と、変更された上記ステート・マシーンを上記試験測定装置中に記憶する処理とを具える方法がある。 Embodiments of the present invention include a process of identifying a state machine corresponding to a regular expression stored in a test and measurement device, a process of receiving a trigger condition from a user, and a process of optimizing the state machine. A process of identifying a state in the state machine used in the trigger condition received from the user, and the identified state in the state machine to reflect the trigger condition received from the user Of the state machine and storing the changed state machine in the test and measurement device.

以下の説明は、適切なマシーンの簡潔で一般的な説明の提供を意図するものであり、このマシーンにおいて、本発明のいくつかの側面を実現できる。典型的には、マシーンは、システム・バスを含み、これに、プロセッサ、メモリ、例えば、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、その他の状態保持メディア、ビデオ・インターフェース、そして、入力/出力インターフェース・ポートが取り付けられる。マシーンは、少なくとも一部分は、キーボード、マウスなどの従来の入力デバイスからの入力によって、制御されても良く、加えて、別のマシーンから受けた指示、バーチャル・リアリティ(VR)環境を用いるインタラクティブな処理、生体フィードバック、又は、他の入力信号によって制御されても良い。本願において、用語「マシーン(機械)」は、単一のマシーン、又は、通信可能に結合された一緒に動作する複数マシーン又は複数デバイスのシステムを広く包含するよう意図している。典型的なマシーンには、パソコン、ワークステーション、サーバ、ポータブル・コンピュータ、ハンドヘルド・デバイス、電話、タブレットなどのようコンピューティング・デバイスに加えて、例えば、自動車、電話、タクシーなどの私有又は公共の輸送機関のような輸送装置を含んでいる。 The following description is intended to provide a brief, general description of a suitable machine in which some aspects of the invention may be implemented. Typically, a machine includes a system bus to which a processor, memory, such as random access memory (RAM), read only memory (ROM), other state-keeping media, video interface. , And input/output interface ports are attached. The machine may be controlled, at least in part, by input from a conventional input device such as a keyboard, mouse, etc., as well as instructions received from another machine, interactive processing using a virtual reality (VR) environment. , Biofeedback, or other input signals. As used herein, the term "machine" is intended to broadly encompass a single machine or a communicatively coupled system of multiple machines or devices operating together. Typical machines include computing devices such as personal computers, workstations, servers, portable computers, handheld devices, phones, tablets, as well as private or public transportation such as cars, phones, taxis, etc. Includes transportation equipment such as institutions.

マシーンは、プログラマブル又はノン・プログラマブル・ロジック・デバイス又はアレー(FPGAなど)、ASIC、組込み型コンピュータ、スマート・カードなどのような組込み型コントローラ(embedded controller)を含んで良い。マシーンは、ネットワーク・インターフェース、モデム、他の通信的な結合を介するなど、1つ以上の遠隔装置への1つ以上の接続を利用しても良い。複数のマシーンは、イントラネット、インターネット、LAN、WANなどのような物理的又は論理的なネットワークにより、相互接続されていても良い。当業者であれば、ネットワーク通信には、無線周波数(RF)、衛星、マイクロ波、IEEE810.11、Bluetooth(登録商標)、光通信、赤外線通信、ケーブル、レーザなどといった、有線又は無線の短距離、長距離のキャリアやプロトコルを用いて良いことが理解できよう。 The machine may include embedded controllers such as programmable or non-programmable logic devices or arrays (such as FPGAs), ASICs, embedded computers, smart cards and the like. The machine may utilize one or more connections to one or more remote devices, such as via network interfaces, modems, or other communicative couplings. The plurality of machines may be interconnected by a physical or logical network such as an intranet, the internet, a LAN, a WAN and the like. For those skilled in the art, network communication includes radio frequency (RF), satellite, microwave, IEEE810.11., Bluetooth (registered trademark), optical communication, infrared communication, cable, laser, and the like, short-range wired or wireless. Understand that long distance carriers and protocols can be used.

発明は、マシーンがアクセスしたときに、マシーンがタスクを実行するか、又は、抽象データ形式又は低レベルのハードウェア状況を定義するという結果が得られる機能、手続、データ構造、アプリケーション・プログラムなどを含む関連データを参照するか又は連動して記述されても良い。関連データは、例えば、RAM、ROMなどの揮発性及び/若しくは不揮発性メモリ、又は、HDD、FD、オプティカル・ストレージ、テープ、フラッシュ・メモリ、メモリ・スティック、デジタル・ビデオ・ディスク、生体ストレージなどを含む他の記憶デバイス及びそれらに関連する記憶媒体に記憶しても良い。関連データは、物理的及び/又は論理ネットワークを含む伝送環境を通して、パケット、シリアル・データ、パラレル・データ、伝播信号などの形式で送ることができ、圧縮又は暗号フォーマットで利用されても良い。関連データは、分散型環境で利用され、マシーンがアクセスするローカル又は遠隔な場所に記録されても良い。 The invention provides functions, procedures, data structures, application programs, etc. that, when accessed by a machine, result in the machine performing a task or defining an abstract data format or low level hardware context. It may be described by referring to or including related data. Relevant data includes, for example, volatile and/or non-volatile memory such as RAM and ROM, or HDD, FD, optical storage, tape, flash memory, memory stick, digital video disk, biological storage, etc. It may be stored in other storage devices including them and storage media related to them. The associated data can be sent in the form of packets, serial data, parallel data, propagated signals, etc. through a transmission environment, including physical and/or logical networks, and may be utilized in compressed or encrypted format. Relevant data may be recorded in a local or remote location utilized by the machine in a distributed environment.

図示した実施形態を参照しながら、本発明の原理を説明及び図示してきたが、こうした原理から離れることなく、説明した実施形態を、構成や細部において変更しても良いことが理解できよう。先の説明では、特定の実施形態に絞って説明しているが、別の構成も考えられる。特に、「実施形態において」といった表現を本願では用いているが、こうした言い回しは、大まかに言って実施形態の可能性を意味し、特定の実施形態の構成に限定することを意図するものではない。本願で用いているように、これら用語は、別の実施形態に組み合わせ可能な同じ又は異なる実施形態に言及するものである。 Although the principles of the invention have been described and illustrated with reference to the illustrated embodiments, it will be understood that the described embodiments may be modified in arrangement and detail without departing from such principles. Although the above description has been focused on a particular embodiment, other configurations are possible. In particular, although the phrase “in an embodiment” is used in this application, such phrases generally mean the possibilities of the embodiment and are not intended to be limited to the configuration of the particular embodiment. .. As used herein, these terms refer to the same or different embodiments that may be combined with other embodiments.

405 試験測定装置
410 メモリ
415 ステート・マシーン
420 受信部
435 ビット・ストリーム
440 正規表現
465 パンくずリスト
470 分析部
475 パンくずリスト発生部
480 再現部
605 形式
610 ID
615 時間
405 Test measuring device 410 Memory 415 State machine 420 Receiver 435 Bit stream 440 Regular expression 465 Bread crumb list 470 Analysis unit 475 Bread crumb list generator 480 Reproducer 605 Format 610 ID
615 hours

Claims (3)

特定のプロトコルに基づくデータを運ぶ信号を取り込むための試験測定装置であって
正規表現として表現された上記プロトコルに対応するステート・マシーンを記憶するメモリと、
上記信号を受けると共に、ユーザから上記ステート・マシーン中の特定の状態に関係したトリガ条件を受ける受信部と、
記ステート・マシーンを上記トリガ条件を反映させて簡略化したトリガ・ステート・マシーンに変更するステート・マシーン変更部と
上記トリガ・ステート・マシーンを用いて、上記試験測定装置にトリガをかけて上記信号の一部分を取り込ませるトリガ・システムと
を具える試験測定装置
A test and measurement instrument for capturing signal carrying data based on a specific protocol,
And Rume Mori to store state machine corresponding to the protocol represented as a regular expression,
A receiver that receives the signal and receives a trigger condition related to a specific state in the state machine from a user,
And state machine changing unit for changing over the SL state machine to trigger state machine simplified to reflect the trigger condition,
A test and measurement device comprising: a trigger system for triggering the test and measurement device to capture a portion of the signal using the trigger state machine .
特定のプロトコルに基づくデータを運ぶ信号を取り込むために試験測定装置にトリガをかける方法であって、
上記試験測定装置中に記憶され正規表現として表現された上記プロトコルに対応するステート・マシーンを特定する処理と、
ユーザから上記ステート・マシーンの中の特定の状態に関係したトリガ条件を受ける処理と、
上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の上記特定の状態を特定する処理と、
上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の上記特定状態を変更すると共に上記ステート・マシーンを簡略化してトリガ・ステート・マシーンに変更する処理と、
上記トリガ・ステート・マシーンを上記試験測定装置中に記憶する処理と
上記信号を受ける処理と、
上記トリガ・ステート・マシーンを用いて、上記試験測定装置にトリガをかけて上記信号の一部分を取り込む処理と
を具えるトリガ方法。
A method of triggering a test and measurement device to capture a signal carrying data according to a particular protocol, comprising:
Stored in said test and measurement device, a process of specifying the state machine corresponding to the protocol represented as a regular expression,
A process of receiving a trigger condition related to a specific state in the above state machine from a user,
Processing to identify the particular state in the state machine used in the trigger condition received from the user;
A process of changing the trigger state machine by simplifying the state machine while changing the specific state in the state machine to reflect the trigger condition received from the user,
A process of storing the trigger state machine in the test and measurement device ;
Processing for receiving the above signal,
Using the trigger state machine, trigger how comprising a process to capture a portion of the signal over the trigger to the test and measurement device.
ユーザからトリガ条件を受ける処理が、上記ユーザから複合トリガ条件を受ける処理を含み、
上記ユーザから受けた上記トリガ条件中で使用される上記ステート・マシーン中の上記特定の状態を特定する処理が、上記ユーザから受けた上記複合トリガ条件中で使用される上記ステート・マシーン中の複数の状態を特定する処理を含み、
上記ユーザから受けた上記トリガ条件を反映するように上記ステート・マシーン中の上記特定状態を変更する処理が、上記複合トリガ条件中の各値に関する上記ステート・マシーンを複製する処理と、上記ユーザから受けた上記トリガ条件中の対応する値を反映するように複製された上記ステート・マシーン中の特定された状態を変更する処理と、複製された複数の上記ステート・マシーンを組み合わせる処理とを含む請求項2によるトリガ方法。
The process of receiving the trigger condition from the user includes the process of receiving the compound trigger condition from the user,
The process of identifying the particular state in the state machine used in the trigger condition received from the user is performed by the plurality of states in the state machine used in the composite trigger condition received from the user. Including the process of identifying the state of
Processing for changing the specific state in the state machine to reflect the trigger condition received from the user, the process of duplicating the state machine for each value in the composite trigger condition, the user Modifying the identified state in the duplicated state machine to reflect the corresponding value in the trigger condition received from the; and combining the duplicated state machines. triggering how by claim 2.
JP2015237591A 2015-12-04 2015-12-04 Test measuring device and trigger method Active JP6741417B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015237591A JP6741417B2 (en) 2015-12-04 2015-12-04 Test measuring device and trigger method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015237591A JP6741417B2 (en) 2015-12-04 2015-12-04 Test measuring device and trigger method

Publications (2)

Publication Number Publication Date
JP2017120180A JP2017120180A (en) 2017-07-06
JP6741417B2 true JP6741417B2 (en) 2020-08-19

Family

ID=59272250

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015237591A Active JP6741417B2 (en) 2015-12-04 2015-12-04 Test measuring device and trigger method

Country Status (1)

Country Link
JP (1) JP6741417B2 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE602005007318D1 (en) * 2005-02-09 2008-07-17 Agilent Technologies Inc Data analysis in two steps
US9069017B2 (en) * 2009-12-04 2015-06-30 Tektronix, Inc. Serial bit stream regular expression engine
CN103353543B (en) * 2013-05-30 2015-06-24 电子科技大学 Digital oscillator with functions of triggering and decoding serial protocols
US9338076B1 (en) * 2014-10-24 2016-05-10 Tektronix, Inc. Deriving hardware acceleration of decoding from a declarative protocol description
US10148547B2 (en) * 2014-10-24 2018-12-04 Tektronix, Inc. Hardware trigger generation from a declarative protocol description

Also Published As

Publication number Publication date
JP2017120180A (en) 2017-07-06

Similar Documents

Publication Publication Date Title
KR101707369B1 (en) Construction method and device for event repository
CN108897691A (en) Data processing method, device, server and medium based on interface analog service
US11188560B2 (en) Synchronizing object in local object storage node
US11762822B2 (en) Determining when a change set was delivered to a workspace or stream and by whom
US20180314883A1 (en) Automatic Detection on String and Column Delimiters in Tabular Data Files
US10223435B2 (en) Data transfer between multiple databases
US11599385B2 (en) System and method for distribution of dependent builds across orchestration job scheduler slaves
US10031936B2 (en) Database table data fabrication
KR20090031687A (en) Efficient phrase pair extraction from bilingual word alignments
US10148547B2 (en) Hardware trigger generation from a declarative protocol description
JP6596300B2 (en) Analytical system and method
CN114253920A (en) Transaction reordering method, device, equipment and readable storage medium
JP2023553220A (en) Process mining for multi-instance processes
US9715477B2 (en) Shared-bandwidth multiple target remote copy
JP6741417B2 (en) Test measuring device and trigger method
US20210325432A1 (en) Hardware trigger generation from a declarative protocol description
CN111736952A (en) Cloud platform resource pool deployment method, device, equipment and readable medium
US20150178075A1 (en) Enhancing understandability of code using code clones
US20230090713A1 (en) Automated digital text optimization and modification
KR102225820B1 (en) Apparatus and method for generating hybrid feature vector for machine learning for malicious code analysis
US11128581B2 (en) Secure messaging between computing components
Golonka et al. Future archiver for CERN SCADA systems
US11403467B2 (en) Semantic correction of messages
US20220172108A1 (en) Iterative machine learning and relearning

Legal Events

Date Code Title Description
A625 Written request for application examination (by other person)

Free format text: JAPANESE INTERMEDIATE CODE: A625

Effective date: 20181116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190924

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191001

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20191223

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200302

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200306

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200512

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200727

R150 Certificate of patent or registration of utility model

Ref document number: 6741417

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250