図1を参照すると、アイダイアグラムのアイ開口の集まりの簡略化された表現1が示されている。この簡略表現1は、以下の説明の有用な出発点である。厳密な意味でのアイダイアグラムである境界トレース(bounding trace)によって画定される主要なアイ開口の輪郭の方を単に優先して示しており、実際のアイダイアグラム自体は表示していない。
なお、対象となるアイダイアグラム(発明者は、このアイダイアグラムから、対象となるアイ開口を抽出する)が、援用された「METHOD AND APPARATUS FOR PERFORMING EYE DIAGRAM MEASUREMENTS」に提示されたものと同じ手法又は類似する手法を使用して作成されることが好ましい。ただし、これは、絶対的に必要なものではない。いずれにしても、援用された特許文書のいくつかに記述された一般的なやり方の後に、測定されたアイダイアグラムデータを検査してさまざまに操作できるように、該測定されたアイダイアグラムデータが適切なアイダイアグラムデータ構造体に残されるようにする。援用された特許文書に記述された特定の操作のいずれかが、本明細書に説明する操作で使用されることを暗に意味しているわけではなく(ただし、このようなものが有益であるならば使用することができる)、アイダイアグラムデータを含むデータ構造体の内容の検査及び変更を通じてこのような操作が可能にされる一般的な方法が既知の従来の手法であり、さらに、対象となるものであることのみを暗に意味している。要約すると、対象となるアイダイアグラムが、「METHOD AND APPARATUS FOR PERFORMING EYE DIAGRAM MEASUREMENTS」で教示された方法に従って得られる場合、それらアイダイアグラムは、すでに適切なデータ構造体によって表されている。対象となるアイダイアグラムが他の手段に従って作成される場合、それらの表現は、このようなデータ構造体又は相当するものに変換されることが必要な場合もあるかもしれない。
図1において対象となるものは、さまざまなアイ開口の関係である。各アイ開口は異なる信号についてのものであり、この配置は幾分、関心のあるいくつかの有用な状況例を与えるように、その内容が作り上げられた抽象的なものを表すよう図示されている。
たとえば、アイ開口2、3、4、及び5は、対象となる集まりにおける比較信号用のものと考えることができる。一方、共通のしきい値がそれらアイ開口に必要とされる場合、アイ開口5は、オーバーラップする領域(ハッチング領域8及び9の和集合)のいずれも共有しないので、問題が起こる。すなわち、それらの信号に共通のしきい値がある場合、その共通のしきい値は、領域8に領域9を結合したものの縦方向の範囲内のどこかに存在しなければならず、その範囲は、開口5の縦方向の範囲とオーバーラップしない。
これはなぜ発生し得るのか?まず、これは、機能不良等を表す場合があり、検出されると、おそらく修正されることになる。他方、たとえば、アイ開口5を有する信号が他のものとは異なる論理ファミリーのものであることから、これは、全く正常な場合がある。(このことは、別のプローブポッドの空きチャネルがその信号に利用可能でない場合に起こる場合がある。)いずれにしても、この状況は修正されるか、又は、その応答は、そのチャネルを考慮から除外して、測定を続けることになる。したがって、共通のしきい値を見つけるという目的では、この状況は、このチャネルが除外されていることがオペレータに警告され、それが承認されると、サンプリングパラメータの選択にそのチャネルが考慮されず、これから説明するようなアクティビティが再開される。
このような考慮からチャネルを除外できる他の理由があることにも留意すべきである。これら他の理由には、意図的に接続されなかったことから測定の一部とならないチャネルが含まれる。おそらく、それらのチャネルは、使用されることが宣言されたチャネルのリストに存在せず、又は、未使用チャネルリストに現れる。チャネルは、使用されるものの、動作しない(stuck)正常でない信号(sick signal)又は十分な電圧スイングを有しない正常でない信号に接続されることがある。この別の形のものが、接地又は電源に誤って接続されたフライングリードである。最後に、信号が、クロックと同期していないために、使用可能なアイ開口を有することができない場合がある。この最後の考えは、さまざまな信号についてVswingにオーバーラップがないことを単に観察することよりも包括的であり、まず第1にアイ開口の存在自体について対処しなければならないことに留意されたい。存在しないアイ開口のサンプリングパラメータを選択できないことに気付くので、このような場合、チャネルを検出して除外する能力にやはり関心が向けられる。また、2つ以上のこのような「範囲外にある(outlying)」チャネル(意図的に対象とならないものとしてであろうと、オーバーラップがないためであろうと、アイがないためであろうと)を除外できることも理解されよう。
ここまで、アイ開口2、3、4、及び5がほぼ縦方向に整列されているので、それらのアイ開口が、それらの各信号によって提供される対応するビットを表すものと仮定してきた。すなわち、それらの4つの信号は、ビットの並列提示において4つの隣接するビットを表すものと仮定し、それらの内容(ビット値)は同時に適用されたものと仮定し、且つ、このような内容は同時に到着する、すなわち、すべてが同じクロックサイクルでサンプリングされる、ものと仮定する。このことは、重要なタイミングスキュー、すなわち位相遅延が存在しない場合に予測されることである。あいにく、それは、特に、最も高速のクロック速度で動作するシステムには当てはまらない場合がある。ここで、原因と考えられるものは、チャネル間のタイミングスキューを生成する差動位相遅延(differential phase delay)である。高速では、基板のレイアウト中に行われた選択が不十分であるか又は無意識に行われていることによって、たとえば、異なる容量性負荷を課したり、異なるパス長を作成したりすることにより、この状況が生み出される可能性がある。500MHzのクロックレートでは無害であったレイアウト手法は、5GHzでは致命的になる可能性がある。
したがって、この集まりについて、そのアイが2、3、4、及び7である信号であったものと仮定することができる。図2を参照し、使用されることが多いアイダイアグラム提示の特色をよく示す図解を検討する。ここでは、各アイダイアグラムの一部として形成された、いくつかの水平方向に隣接したアイ開口がある。また、これらの4つのアイダイアグラムは、オシロスコープにおける4つのトレース表示のように、一方が他方の上にあるものとして示されていると仮定する。破線11は、信号間の真のタイミング関係を示し、図1において、アイ開口7と、たとえばアイ開口3とが、異なる信号の同じクロックサイクルに対応しており、同じ信号の隣接するアイ開口ではないことが分かる。
したがって、電圧のオーバーラップの程度(又はその欠落)を特定することは容易であるが、タイミングのオーバーラップについて同じことを行うのはあまり容易ではない。アイダイアグラムを単に作成する目的においては、タイミングのオーバーラップの問題は、一般に無視することができる。しかし、厳密な意味でのSUTの場合、又は、SUTのバス上に一時的に設置されるロジックアナライザの場合、これは極めて重要な問題である。図1及び図2の例は、位相遅延が単位間隔UI(又は2つ以上の単位間隔さえも)を超える可能性があることを明確に示している。これは、現実に存在することである。SUTの内部状況の場合、受信データのさまざまなビットを整列するために、位相遅延の真の量を知ることが必要となる。ロジックアナライザは、トレースが非常に不明瞭になってしまわないように、同じ問題を有する。さらに、サンプル位置がすべてのチャネルついて同じであるように制約されたシステムでは、アイ開口7について提示された状況は、アイ開口5の(電圧)状況がと同様、致命的である。この結果、(援用された出願の言葉を借りて言えば)“選択された”アイ開口がどの特定のクロックサイクル中でも互いに対応するように、集まりの信号のそれぞれで“選択された”アイ開口を特定する必要がある。これは、結局、或る基準に対するチャネルのそれぞれの位相遅延を発見することになる。
位相遅延のこの発見を行うことができるさまざまな方法がある。たとえば、トレーニングオペレーション又は発見オペレーションの期間中、既知の一連のデータを送信して、到着した結果を解釈し、位相遅延を明らかにすることができる。位相遅延の発見がどのように行われようとも、それが行われたものと仮定し、且つ、図1のアイ開口のそれぞれが個別の信号について選択されたアイ開口であること、及び、図1のアイ開口のそれぞれが時間において他のそれぞれに対応することを確実性をもって言うことができるものと仮定する。
次に、信号の集まりが共通のサンプル位置を有する場合を検討することができる。たとえば、集まりは、アイ開口がアイ6、2、3、及び7について示したようなものである信号を含む。水平方向のオーバーラップの唯一の領域は、領域8と領域10との和集合であること、領域7は範囲外にあり、除外しなければならないことに気付く。アイ開口4が集まりの一部であった場合、オーバーラップは領域8のみとなる。
図6のアイ開口6は、アイ開口7と類似している。すなわち、それ自身の個別の信号のものであり、そのデータは、アイが2である信号のデータが到着するよりも早く到着する。
以後、タイミングのオーバーラップが欠如していることは、電圧のオーバーラップが欠如していることと同程度に、そのグループのサンプリングパラメータを決定するプロセスにチャネルを含めることに致命的であると仮定する。
次に進んで、単独制約ケース(singly constrained case)のサンプリングパラメータを選択するための第1のアルゴリズム及び第2のアルゴリズムの説明に移る。いくつかの定義を必要とし、所定の事前オペレーションを実行する必要があろう。
定義
・サンプリングパラメータ
アイダイアグラムを作成することができる周期的な信号の挙動を説明する際に、直交軸として使用される2つの量がある。デジタル信号の電気的環境では、サンプリングパラメータは、サンプル位置(基準からの時間オフセット)及びしきい値(電圧)である。原則として、サンプリングパラメータは可変量であるが、実際には、適切な値が一旦選ばれると、不変とされる。チャネルのサンプリングパラメータについて選択された値は、そのチャネルの性能に明白な影響を与え、サンプリングパラメータの値の或る集合が、グループのすべてのチャネルについて満足できる場合でないことがある。
・単独制約ケース
これは、チャネルのグループが、共通のサンプリングパラメータを共有する状況を指す。この共通のサンプリングパラメータは、サンプル位置及びしきい値のいずれか一方とすることができる。
・制約されたパラメータ
これは、共通のサンプリングパラメータであるサンプリングパラメータを指す。その値は、グループのあらゆるチャネルがそのサンプリングパラメータについて同じ値を使用するという意味で制約を受ける。
・非制約のパラメータ
これは、グループのすべてのチャネルについて同じ値を有するように強制されず、その代わり、チャネルごとに独立して変化することが可能にされたサンプリングパラメータを指す。一般に、各チャネルは、制約されたパラメータの任意の所与の値について、非制約のパラメータの好ましい値を有する。
・リスケーリング(Re-scaling)
これは、データ構造体のエントリーをも選択する軸に沿って、ティックマーク(tic mark)の増分でインデックス単位を変更することである。リスケーリングが一旦行われると、それ以外に何も行われていない場合、新たなティックマークは古いティックマークのインデックスと一致しない、すなわち、古いティックマークのインデックス上に並ばないので、前に存在したデータ構造体にデータを配置する前又は読み出した後に、そのデータを補間する必要がある。
・リサンプリング
これは、古いデータ構造体に関連した1つ又は複数の軸のリスケーリングに対応する新たなデータ構造体へ既存のデータ構造体のデータを転送するために、その既存のデータ構造体のデータを1回補間することである。
・正規化
或る特定のリスケーリング(ΔTmin又はΔVminのいずれかで測定データのスケールを除算すること)と、リサンプリング中に各軸に沿ってリスケーリングされた軸の単位当たりに同じ個数のティックマークが存在するようにすることとを組み合わせたものである。これは、サンプル点が変化した場合に、一方の軸のマージンの変化を他方の軸の変化とトレードオフする簡単な方法を与え、最適なサンプリングパラメータを見つけるための拡大正方形及び最大の円等の対称的な形状の使用によく適合する。
・選択されたアイ開口
互いに対応し、且つ、クロック信号の同じサイクルを基準にしてサンプリングされるべき、異なる信号のアイ開口である。
説明を進めると、単独制約ケースで動作するグループにN個の(N-many)チャネルがあるとする。対象となるアイは、N個の各チャネルのN個の信号のそれぞれについて特定されている。サンプリングパラメータのいずれが、制約されたパラメータであるかは判明している。簡単にするために、リードの接続ミスやロジックファミリーの混在等の些細な問題は存在しないとする(一時的な仮定)。
第1のアルゴリズムの簡略化した説明を形成する、番号が付けられた一連のステップを以下に示す。この第1のアルゴリズムを一種の入札システムとして説明する。このたとえは正確ではないが、当たらずとも遠からずである。実際のオークションで入札する時、入札者は、オークションされている所望の品目番号を得るのに必要な最低価格を入札する一方、必要に応じて、且つ、入手できるように付け値を引き上げる。第1のアルゴリズムでは、各チャネルが入札者であり、所望の品目番号が、制約されたパラメータの値に関する合意になる。より高い価格が、その入札チャネルに特有の好ましい順序においてより低くランク付けされた選択(choice)を用いることに対する各入札者の合意となる。ここで、選択は、最初の好ましい選択から開始する。一般に、チャネルの最初の好ましい選択についても、その一連のランク付けされた付け値についても何も言うことができない。すなわち、付け値は、それら付け値が関連付けられたサンプリングパラメータの軸に沿って隣接したロケーションでない場合がある。「隣接」という概念は、別の問題を提起する。実際のオークションでは、すべての入札者が、自身の付け値について共通通貨を使用するように要求され、多くの場合、付け値は正確な増分量を示す(すなわち、付け値は或る単位量の整数倍でなければならない)という要件がある。第1のアルゴリズムの一部として行われる入札についてもそうである。(とは言うものの、このたとえは、或る意味正しくない。すなわち、付け値は、共通の単位で表されたパラメータの値であるが、「実際価格(real price)」が増加すると、いわば、より望ましさの低いパラメータの値を使用することに関連した不安(discomfort)が増大する。このような「実際価格」は、決して明らかにもされず、比較もされず、それらは付け値でもない。おそらく、入札を勝ち取るためだけに或る所望の品目が通常値よりも多くを支払わなければならない時に、人間の入札者が実際のオークションで感じることがある不安に、実際価格をなぞらえるべきであろう。)
1.チャネルのグループについて、選択されたアイ開口の両極端(extremes)を調べ、範囲外にあるもの(制約されたパラメータについてのオーバーラップがない)、及び、オペレータが無視すべきものとして指定する他のチャネルを除外する。この説明では、「グループ」と、プローブポッドのチャネルのサイズとは同じであると仮定し、且つ、グループは、複数のプローブポッドにはまたがらないと仮定するのが都合よい。後に、グループは、いくつかのプローブポッドからのチャネルを含むことができることが明らかとなる。各ポッドは、(別々の)制約されたサンプリングパラメータに関連したチャネルの集まりを生成する。
2.チャネルのグループについて、共通座標系を決定する。この共通座標系は、チャネルごとに使用可能であり、且つ、グループのすべてのチャネルについて同じステップサイズである制約されたパラメータの増分ステップサイズを有することによって特徴付けられる。このステップサイズは、データ受信機のハードウェアによって実現可能なものであるべきである。たとえば、制約されたパラメータがしきい値であり、ハードウェアがしきい値電圧を10ミリボルトの量でしかステップすることができない場合、5ミリボルトのステップを有する電圧軸を決定することは意味がない。制約されたパラメータのみを考慮する必要がある。非制約のパラメータは、必要に応じて、不変とすることができる。このステップで選ばれた座標系は、このように、少なくとも1つの軸が同じステップサイズを有するという点で「共通」である。
3.グループの各チャネルについて対象となるアイ開口を正規化する。
4.正規化された各アイ開口(チャネル)について、好ましい最適なサンプリングパラメータの組み合わせの順序付きリストを用意する。これを行うことができる一方法を以下に示す。
a.正規化されたアイ開口に合計1000個のロケーションを得るために、その正規化されたアイ開口について、20個の異なる正規化されたしきい値、及び、50個の異なる正規化されたサンプル位置があるものと仮定する(簡単にするために、一時的に、アイは真の長方形であるので、各ロケーションはアイ開口にあるものと仮定する)。しかし、ΔTmin及びΔVminのために、アイ開口内のこれらのロケーションは、等しく望ましいというわけではない。
b.次に、いくつかの(誤った挙動を行う)信号が、定格の(nominal)アイ開口内で遷移するが、一時的にしか遷移しないという考えと共に、現代のアイダイアグラムがどのようにして得られるかというサンプリングの本質を検討する。その結果は、(信号の不良な挙動が十分頻繁に発生した場合には、ソリッドパス(solid path)が現れるが)パス全体としてではなく、むしろロケーションの分離したクラスタとして見えるアイ開口内での散発的なHIT(ヒット)である。
c.どのHITからも「最も遠い」、アイ内の中心点(又は複数の中心点)を見つけることによって、正規化されたアイ開口内で最適化が起こる。たとえば、アイのすべての可能な内部ロケーションを試行的な中心とみなし、それぞれについて、どのHITにも遭遇することもなく、アイ開口の範囲を越えることもなく、アイ開口内に適合する最大の円を見つけることによって、最適化が行われる。(1000個のロケーションの境界が、アイ開口の一部ではない他の最も外側のロケーションから形成されるものと仮定することができる。また、別の状況では、それら1000個のロケーションの136個が、アイ開口の境界であって一部でもある外周部であると言うこともできる。このような変形形態は、物事がどのように表されるかについての実現形態の詳細であり、アイ開口が、アイダイアグラム全体のようなより大きな構造の一部にどのようにしてなりうるか、又は、分離して存在するものとしてどのように考えうるか、に関係する。)各試行的な中心について、うまくいく最大の半径がある。見つけられた最大の半径を有する試行的な1つ又は複数の中心が、最適な好ましいロケーションである。それらの座標は、元のアイダイアグラムの座標にマッピングして戻され、潜在的な良好なサンプリングパラメータと解釈される。理解には円の使用が容易であることから、円を使用することでこれを説明してきた。正規化されたアイ開口について最適なサンプリングパラメータを見つける他の方法がある。この「最大の円」手法だけでなく、仲間の「拡大正方形(expanding square)」手法(双方は、援用された「METHOD FOR NORMALIZAITON OF AN EYE DIAGRAM AND SELECTION OF SAMPLING PARAMETERS FOR A RECEIVER」に説明されている)の副産物は、見つけられた異なる可能性をランク付けする方法を得ることである。試されたあらゆる試行的な中心は、発見された半径に関連付けられる(半径が大きいほどより良い)。アイ開口の内部のあらゆるロケーションは、試行的な中心として使用される。したがって、すべての内部ロケーションを、サンプリングパラメータとしての望ましさに基づき(すなわち、発見された最大半径から開始する降順に)順序付ける方法がある。ロケーショ
ンに関連付けられた半径(又は直径)は、そのロケーションの性能指数である。
d.「METHOD FOR NORMALIZATION OF AN EYE DIAGRAM AND SELECTION OF SAMPLING PARAMETERS FOR A RECEIVER」は、個々のチャネルのみを取り扱い、チャネルのグループについて何を行うかも、単独制約ケースの概念も考慮しない。したがって、望ましさに基づいて(すなわち、性能指数によって)アイ開口のロケーションを順序付けることから開始して、援用された資料の教示から離れて新たな領域に入っていく(この順序付けは、単一のチャネルのみを検討する場合に必要とされないものである)。
e.次に、ステップ(4.b)で説明したように、たとえば、或る特定のアイ開口内に25個のHITロケーションが含まれるものと仮定する。(アイ開口の一方の端部には何も存在しないこともあるが、)これら25個がアイ開口の一方の端部に散在していると仮定する。その結果、最大の円は、アイ開口の幾何学的中心から大きく異なった中心を有する(通常、長方形であることとはかけ離れてもいる)。したがって、中心として試された975個の内部ロケーションを有し、たとえば、それらの7つは、最大の半径を有し、18個は、次に大きな半径を有する等である。975個の包括的なエントリーのリストを作成することができる。しかしながら、より効率的な手法がある。
f.どのサンプリングパラメータが制約されたパラメータであるかを知ることから始めることにする。検討してきた特定のチャネルについて、最大の半径を有する7つのロケーションを検討する。7つのすべてのロケーションの座標が同じ値の制約されたパラメータを有することから、制約されたパラメータについて7つの異なる値が存在することまで、さまざまな可能性がある。3つの異なる値があると仮定する。再考の結果、それらを甲乙付けがたいと結論する。すなわち、それらはすべて等しい価値を有する。これら3つの値を、検討してきたチャネルの好ましいサンプルパラメータの値の順序付きリストの先頭に(任意の順序で)配置する。各値は1対のパラメータの形で追加される。この1対のパラメータの一方は制約されたパラメータの値であり、この1対のパラメータの他方は、相手方の制約されたパラメータが最終的に選択されて使用されたものである場合に、非制約のパラメータとして使用するのに最も良い値である。次に、そのチャネルについて、次に大きな半径に関連付けられた、制約されたパラメータの値を見つける。すでに述べたように、生じる異なった値を見つける(同じ値については、最初に出現したもの以外の複数のインスタンスは削除される)。次に、好ましい値のリストにすでにある値を削除し、それ以上新たな値がリストに入って来なくなるまで、生き残った値(及びその最も良い相手方)を、好ましいサンプルパラメータの値のリストの次の位置に配置することを続ける。したがって、どれが制約されたパラメータであるかに応じて、多くとも20対又は50対のエントリーの(この例による)順序付きリストができることになる。その順序付きリストは、975個のエントリーのリストよりも大いに良好なものである。グループのあらゆるチャネルについてこれを行い、その結果、N個のチャネルについて、好ましいサンプルパラメータの値のN個のリストを有する。各リストのエントリーは、最も好ましいものから最も好ましくないものへの順序で並べられている。
5.制約されたパラメータの決定された共通の増分の整数表現(integral term)で提示されるように、各チャネルの好ましいサンプルパラメータの値のリストをリフォーマットする。これは、結局、各入札者(以下参照)に同じ貨幣単位で表された付け値を授けるために各チャネルに適用される「他の方向での」正規化オペレーションになる。これによって、簡単な等式チェックを許可することにより、すべての入札者が合意する時を決定するプロセスが容易になる。代替的なものは、「十分に近い」付け値を機能的に同じであると解釈することである。それは、はるかに面倒なアクティビティであり、十分に近いということがどれだけ近いかについてのルールを必要とする。
6.各チャネルの好ましいサンプルパラメータの値のリストから、制約されたパラメータについて先頭の(最も好ましい)エントリーを得る。すべての関係者が付け値の結果に合意した時に停止する一種の入札プロセスを使用する。したがって、すべての付け値を表に配置し、それらの付け値に誰が入札者であったかについて印を付ける。重複する付け値のすべてのインスタンスは、1つを除いて除去され、入札者の識別情報が、その残っているインスタンスに転写される。すべての入札者が1つの付け値に現れる場合、終了する。制約されたパラメータについて合意可能な値を見つけたことになる。そうでない場合、それは、表には、列記されたすべての入札者に相応しい付け値がない場合であるに違いなく、次に、該付け値の集まりに、好ましいサンプルパラメータの値のリスト(1つのチャネルあたり1つの新しい付け値)から次のエントリーを追加し、合意のチェックを続ける。(古い付け値は除去されない)。
或る後続の付け値において、2つ以上の制約されたパラメータが合意可能であると見られる可能性が存在する。(チャネルの一連の付け値を単純に予測することはできない。たとえば、或るグループの16個のチャネルについて、多数の入札または多数の入札のラウンドの後、3つのそれぞれ異なるパラメータの値でそれぞれ合意した15個のチャネルの3つの異なる集まりが存在する場合がある。次の入札ラウンドでは、3つのすべての集まりは、必要とされる16番目のメンバーを見つけることができる。)この場合、2次選択ストラテジーを使用することもできるし、単純に、遭遇した最初の合意を採用することもできる。また、最後の可能な瞬間まで合意に到達しない可能性も存在する。最初に範囲外にあるものを削除したので、(目下のところ、どのみち)制約されたパラメータ内のチャネルオーバーラップ(したがって、最終的な合意)を確信することができるが、オーバーラップ部分が多くない場合には、合意に達するのにかなり遅くなる場合がある。
(これまで提示したような)この第1のアルゴリズムを「陪審システム(jury system)」と特徴付けることができる。その理由は、選択が行われる前にすべての者が合意しなければならないからである。16個のチャネルのうちの15個は、早期に合意している場合があり、制約されたパラメータのさまざまな異なる値についてそのように繰り返しても、妥協を拒むただ1つのチャネルは、大多数のチャネルが最終的に合意する値を該妥協を拒むただ1つのチャネルが提供するまで、それら他の(大多数の)意志を妨げることができる(これは、妥協を拒む者が最終的に合意した値を、該大多数が最後に提供することと等しい)。さらに、これまで説明したように、合意した選択(agreed on selection)が望ましいものなのか、可もなく不可もないものなのか、それとも、全く良くないものなのかを決定する容易な方法はない。このプロセスの中途の同じステップで現れた複数の勝ち残った付け値は、異なる望ましさを有する場合があるので、2次選択判定基準に対する関心も、当然のごとく引き起こされる。それにもかかわらず、「陪審システム」アルゴリズムは、あまり多くの複雑さを有しない防御可能な結果を返す。
懐疑論者は、妥協を拒む問題を次のように説明する場合がある。「それは人質(hostage)の状況である。15個の良好なチャネルは、1つの不良チャネルに適合するために、自身の最低のものより低く動作するよう強制される場合がある。その結果、15個が、制約されたパラメータをしかるべき場所に設定されて、不良チャネルが、それが何であるかについて明らかにした場合よりも『ひどくなる』。16個のうちの1つが動作不能チャネルであることは、16個が不健全であることよりは、好ましい。」おそらく、提供された有害なものの中から選択することを可能にすべきであり、少なくとも無意識の集団自滅を防ぐことを可能とすべきである。
この見方に対処する、第1のアルゴリズムに改良を施す容易な方法は、上記ステップ(4)を修正することである。ステップ(4.c)では、各チャネルのアイ開口内のロケーションは、そのチャネルのサンプリングパラメータとして使用されるための望ましさに基づく順序として観察された。この順序は、ステップ(4.f)で好ましい値のリストに付け値を追加するための基礎となるものであった。我々が行うことができるのは、各チャネルについて、チャネルの動作を不十分にさせるエントリーのそのリストへの追加を拒否するように構成することである。
最適化ステップ(4.c)で、最大の円を使用して最適なサンプリングパラメータを見つけたことを思い出されたい。すなわち、それら最適なサンプリングパラメータは、このような円の中心に関連付けられている。各円の半径は、ΔTmin及びΔVminに関係した、正規化された単位で表される。このため、半径1については特別なものがある。半径1は、直径2と同じことである。これは、このロケーションが最小仕様を満たす(しかし、超えない)ことを意味する。同じことは、辺sが長さ2である拡大正方形(expanding square)についても言える。
したがって、仕様が用心深いものであり、且つ、寛容の精神から脱していると信じる場合には、好ましいサンプルパラメータの値のリストの各チャネルの構成を変更して、性能指数(直径又はsの値)が1.8未満であるいずれのエントリーも追加しないようにする。それほど寛容ではなく、仕様が満たされることを要求する者は、最小半径(又はs/2)を1に設定することができる。人質について交渉せずに代わりにSWAT部隊を即座に送り込むような者は、最小半径(又はs/2)を1.1又は1.2(又はさらに高い値)に設定することができる。このストラテジーは、好ましいサンプル値のリストを「まともな(respectable)」エントリーのみに制限することによって合意の範囲を限定し、どの入札チャネルにも不満足な値を選択するのではなく、入札プロセスを強制的且つ完全に失敗させる。
寛大であることに対するいくつかの理性的な動機を以下に示す。半径3の最大円を有するいくつかのチャネルを有するものと仮定する。そして、これが確かに快適であることを認める。そして、半径1/2で動作することから、半径1で動作することに移行した1つ又は2つの他のチャネルを得る価格(price)が、上記いくつかのチャネルを半径3から半径2.5へ移行させる場合、それは、良い取引(bargain)に見える。しかし、それらいくつかのチャネルがはるばると1へ移行しなければならず、その面倒のために、他のチャネルはポイント9までしか移行しなかったと仮定する。それは価値があることかと問われれば、おそらく価値がある。しかし、それをこのように考える。すなわち、死刑囚(condemned man)を何回処刑することができるか?半径3は半径1よりどれだけ良いか?観察可能な挙動の相違が何か実際にあるか?(多分、ある。BERT(ビットエラーレートテスタ(Bit Error Rate Tester))の人々(people)は、ここで口を挟み、予測エラーレートがたとえば10−12から10−14になってしまうことを我々に告げるかもしれない。それが、影響を及ぼすほど重大なものであるかどうかを決定しなければならないかもしれない。しかし、おそらく他の要因がその改善を圧倒し、その結果、実際の解はそれ以外で求められる。)したがって、重大な相違がある場合、おそらく、「1」の値の半径(又はs/2)を理解する方法を変更する必要がある。重大な相違がない場合、効力を失ったものを実行するポイントがないと単に決定すべきであり、値「1」を文字通りの意味に解釈し(おそらく、より大きな値を持つことができることを望んでいるが)、その妥協を受け入れるべきである。
そして、全体的な信頼インジケータ(confidence indicator)の問題に関し、これも、実現がかなり容易な解を有する。ステップ(4.f)では、好ましいサンプルパラメータの値のリストに対を追加するのではなく、3重のもの(triple)を追加したと仮定する。すなわち、この余分の要素は、関連した円の直径(若しくはその半径)又は関連した正方形の辺s(すなわち性能指数)である。代替的に、第3の要素は、次のように割り当てられるレターグレード(letter grade)とすることができる。Iを半径又はs/2とする。次に、1.0≦I<1.5の場合、グレードC(許容可能)を割り当てる。また、単に許容可能であるよりも良い値もあるし、悪い値もいくつかある。そこで、Iが1.5≦I<2.0の範囲内に入る場合、それらの場合にグレードB(良い)を割り当て、Iが2.0≦Iの範囲内に入る場合、それらの場合にグレードA(非常に良い)を割り当てる。さらに、Iが0.5≦I<1.0の範囲内に入る場合、グレードD(不十分)を割り当て、Iが0.5>Iの範囲内に入る場合、グレードF(非常に悪い)を割り当てる。
次に、制約されたパラメータが合意されると、供給された第3の要素を単純に平均化して、それを信頼インジケータとして示すことができる。他方、6つのA、8つのB、1つのC、及び1つのFを平均化することは、ワールドクラスのランナーに「あなたは、事故で足を怪我をしていることを除いて、本当に体調が良いですね…」と言うようなものである。障害を引き起こすには、致命的な不具合をいくつ要するか?ということである。信頼標示については、それは、グループ全体のレベルではなく、そのチャネルのレベルで実行される場合に最良となることがある。
単独制約ケースが発散した値(合意なし)を必要とする場合に何を行うかの質問についてはまだ取り扱っていない。合意した制約パラメータがない場合を取り扱う1つの方法は、いわば、単に「観念し」、制約パラメータの許容可能な値が何であっても、その値を最大数のチャネルが合意して提供した時にシステムを動作させることである。それを行うために、さらに以下のものをステップ(4.f)に追加する。
或る合意が行われている最初の付け値において、その最初の付け値がすべてのチャネルについてのものであるかどうかに留意する。その最初の付け値がすべてのチャネルについてのものである場合、すべてが良好であり、制約されたパラメータの推奨された値は合意されている。その最初の付け値がすべてのチャネルよりも少ないチャネルについてのものであり、且つ、まだ、さらに入札が可能である場合、いくつのチャネルがどのパラメータの値について合意しているかの集まりを記述したエントリーを入札履歴に作成する。通常、エントリーは、それが唯一の集まりである場合、又は、それが他のあらゆる集まりよりも多くのチャネルを有する場合に、単一の集まりを記述することができる。しかし、付け値が、同じ多数のチャネルを有する異なる集まりを生成する場合、それらをそれぞれ入札履歴に入れるべきである。或る合意が行われる次の付け値では、合意したチャネル数が以前よりも多くならない限り、その入札履歴を放置しておく。合意したチャネル数が以前よりも多くなる場合、入札履歴を更新する。入札がそれ以上可能でなく、且つ、すべてのチャネル間で合意に達していない場合、最も近時に入札履歴に保存され記憶されたパラメータの値を制約されたパラメータとして使用し、何かが正常でない(すなわち、1つ又は複数の、妥協を拒むチャネルがある)ことをオペレータに知らせる。
この追加されたストラテジーは、たとえ意見の一致が全体的な意見の一致に決してならなかったとしても、最大の部分的な意見の一致を維持することになる。したがって、以下のシナリオが起こり得る。16個のチャネルがある。制約されたパラメータはしきい値電圧であるものと仮定する。いくつかの付け値の後、5つのチャネルが、提案された2.0ボルトの電圧に合意する。これが、5つの任意のチャネル間における最初の合意のインスタンスである場合、5つのチャネル及び2.0Vは入札履歴に入る。その後、9つのチャネルが、1.8ボルトに合意する。これが、9つの任意のチャネル間においても最初の合意のインスタンスである場合、9つのチャネル及び1.8Vは入札履歴に入る。その後、次の付け値について、9つのチャネルの別の集まりが1.7ボルトに合意する場合がある。これは、各チャネルの最も望ましい値が最初に入札されたものであるという理論では、入札履歴に記録されない。9つのチャネル間での満足できる値の合意が、7つのチャネル間の合意よりも良いが、9つの間の2番目の合意のインスタンス(後続の付け値)は、最初のものよりも良くなく、よって、該最初のインスタンスが、より多くのチャネル間で満足できる合意によって取り替えられるまで、保存されるべきである。なぜかというと、9つが、合意に達したチャネルの数として高い場合、最初の9つの集まりの間のその合意が必要とされ得る。
第1のアルゴリズムの簡略化したフローチャートの集まりが、図3〜図5に示されている。第1のアルゴリズムについて上記で与えた広範囲の説明及びフローチャート自体の注釈を考慮すると、それらのフローチャートは、改めて詳細に説明する必要はないと考えられる。したがって、それらフローチャートのみを手短に解説することにする。
図3は、第1のアルゴリズムの概観フローチャート12であり、元のステップ(1)〜(6)の基本的な「陪審システム」に加えた修正を多く含む。フローチャート12を参照すると、ステップ13では、制約されたパラメータを有する複数のデータ受信機の最適なサンプリングパラメータ(少なくとも1つのサンプリングパラメータは、それら複数のデータ受信機に共通である)を選択する方法を組み込んだ装置のユーザ又はオペレータが、GUI(又は他の適切なインターフェース)を介して、アイダイアグラム測定に含める特定チャネル/除外する特定のチャネルの選択及び/又は選択解除を行う。この装置は、Agilent Technologiesから提供されている16754Aロジックアナライザ、16760Aロジックアナライザ、16910Aロジックアナライザ等のロジックアナライザとすることができる。この装置は、制約サンプルパラメータの特性(プローブポッドごとに共通のしきい値)を示すだけでなく、アイダイアグラム測定を実行するように装備することもできる。
ステップ14では、選択されたチャネルのアイダイアグラムが測定される。チャネルの選択決定に対してその後変更が行われた場合、フローチャート12は、「再スタート」され、ステップ14に再び達すると、現在必要とされているが、まだ測定されていないチャネルの再測定を可能にする。フローチャート12に関連したすべてのアクティビティの中で、アイダイアグラムの測定は、最も多くの時間を要し、前に測定されたアイダイアグラムが依然として適用可能であるチャネルについては、そのアイダイアグラムを再測定しないように注意が払われる。
アイダイアグラムが測定された後、ステップ15は、“選択された”アイ開口の選択である(“選択された”は、援用された「METHOD FOR SELECTING AND EXTRACTING AN EYE DIAGRAM OPENING FOR SUBSEQUENT PROCESSING」および図2のための用語であり、或るグループについて個々の信号を含めること又は除外することと混同すべきではない)。このオペレーションも、フローチャート12の「再スタート」の後に変更が行われた場合、必要に応じて再選択の対象になる。
ステップ16では、選択されたアイダイアグラムが、制約されたパラメータの次元(dimension)においてオーバーラップについて調べられる。範囲外にあるチャネル(他のチャネルの集まりによって形成されたオーバーラップ領域を共有しないチャネル)には、除外用のフラグが立てられる。必要に応じて、アイ内の必要最小限の1つのロケーションよりも大きな、より厳しい最小限度のオーバーラップを強制することができる。
ステップ17は、制約されたパラメータの軸についての共通座標系の選択である。この共通座標系は、すべてのチャネル間で、その軸について選択されたステップサイズを共有する。これは2つの効果を有する。第1に、これは、見つけられることとなる異なるFOM(性能指数(Figures of Merit))(次のステップであるステップ19の、図4で展開したものを参照して説明する)が、チャネルにかかわらず同じ増分を基準とし、こうして、互いに釣り合ったもの(commensurate)にする。第2に、これは、付け値が共通の増分の倍数であることを保証する。これは、付け値の合意の判断を容易にするだけでなく(範囲を形成する必要がなく、範囲のオーバーラップをチェックする必要がない)、付け値に関連付けられたFOMが正確であることも意味する。すなわち、FOMによって物を順序付けることになり、ステップサイズによって形成されたロケーションにあるこれらFOMのみを発見することになる。もし、後に別のサイズの増分につき考慮するよう強制された場合、FOMを適法に補間することができない。(これをわかるためには、或るロケーションを中心にした最大の円が広がって、内部ロケーションがアイ開口に含まれる際に、この円がどのように振る舞うかを検討されたい。FOMは、軸に沿った位置の関数として、線形でも連続でもある必要はない。)選択されたステップサイズは、現状では重要なものではないが、望ましい解像度を分かりにくくするほど大きくすべきではなく、また、不必要な算術オーバーヘッドを招くほど小さくすべきでもない。
ステップ18は、選択されたアイ開口を正規化することである。このオペレーションは、援用された「METHOD FOR NORMALIZATION OF AN EYE DIAGRAM AND SELECTION OF SAMPLING PARAMETERS FOR A RECEIVER」に記載されており、(各チャネルについて)(そのチャネルの)正規化された各軸におけるステップ数が共通であるという考えを含む。リサンプリングが、これを達成するために使用される。「METHOD FOR NORMALIZATION OF AN EYE DIAGRAM AND SELECTION OF SAMPLING PARAMETERS FOR A RECEIVER」に述べられているように、リサンプリングは、2つの軸の元のサンプリングが共に変更され、その結果、いずれの軸も以前有していなかった共通のステップ数となった場合や、すべての変更が、一方の(正規化された)軸のステップサイズにおいて行われて、他方の軸のステップ数と一致するステップ数を生成する場合には、特に問題とならない。ここで、マルチチャネルの場合には、制約されたパラメータの軸がすべてのチャネルにわたってその共通性を保持することが望ましい。制約された軸の値の範囲がすべての関連したチャネルについて同じであるということは、単独制約ケースの中心に共通のハードウェアがあるということから容易に得られる。しかし、各チャネルのアイダイアグラムは、個々に正規化される。注意深くない場合には、各チャネルの制約された軸について異なるステップサイズをうっかりと生成する場合があり、それは、ステップ数が異なることを意味する。これを許可すると、入札プロセスに多くの損害を導入することになる。したがって、この正規化ステップ18では、チャネルのそれぞれについて、各チャネルの正規化された制約された軸のステップ数が共通であることが好ましく、各チャネル内において、正規化された非制約の各軸に同じステップ数を生成する負担が、各チャネルの非制約の軸内の個々の調整によって負わされるのが好ましい。
アイ開口が正規化されると、フローチャート12のステップ19(これは、第1のアルゴリズムのステップ4A〜4Fに対応する)では、正規化された状態で、好ましいサンプリングパラメータの組み合わせの各順序付きリストが各チャネルについて作成される。これを行う能力は、援用された「METHOD FOR NORMALIZATION OF AN EYE DIAGRAM AND SELECTION OF SAMPLING PARAMETERS FOR A RECEIVER」の手法を適用し、且つ、アイ開口における各ロケーションについて最大の円又は最大の拡大された正方形のサイズをそれらロケーションの性能指数として使用することから得られる。ステップ19の順序付きリストは、それらの結果のFOMによって作成された順序を持つ。後に、図4に関してこのステップ(19)を展開する。
図3を続けると、ステップ20は、ステップ19で見つけられた、正規化されたリストを、ステップ17で設定した共通座標系の「実際の(real)」値の観点から見たものとなるようにリフォーマットすることである。これは、ステップ21の入札のための準備であり、制約されたパラメータの共通のステップサイズが再び現れることが十分理解されよう。共通のステップサイズが再び現れなかった場合、付け値間の合意の決定が複雑なプロセスになるであろう。
ステップ21は、図5に関してより詳細に示す入札プロセス(フローチャート12のステップ21〜24及び第1のアルゴリズムのステップ6に対応する)の開始である。収集された付け値は、クオリファイア(qualifier)22において合意があるかどうかについてチェックされる。合意がある場合、ステップ25が次に続き、そうでない場合、クオリファイア23が、さらに入札が可能かどうかを尋ねる(すなわち、いずれかのチャネルが付け値を使い果たしたか?)。さらに入札が可能である場合、ステップ21が繰り返される。最終的には、クオリファイア22において合意(YES)があるか、又は、それ以上付け値が可能でなくなる(クオリファイア23においてNO)。合意の場合、すでに述べたようにステップ25に続く。クオリファイア23においてNOの場合、「妥協を拒む者(複数可)(holdout)」であるチャネル(複数可)、又は、そうでない場合には入札部門で困窮化したチャネル(複数可)、を特定する或る警告フラグがセットされ、それにより、ステップ25におけるオペレータとの対話は、適切に通知されるものとすることができる。
フローチャート12のステップ25は、GUIを介したオペレータとの対話である。このGUIは、選択の承認及び選択の結果、又は、変更のいずれかを可能にする。このGUIの本質は、図7〜図14の主題であり、その後説明される。
クオリファイア26は、フローチャート12の一部の再実行を必要とする変更が何かあったかどうかを問い合わせる。変更があった場合には、クオリファイア26からのYESの分岐によって、ステップ13に戻り、ステップ13では、必要なオペレーションが、前述したように、必要に応じて再び実行される。
変更がない場合、クオリファイア26からのNOの分岐によって、ステップ27に続き、ステップ27では、発見され、且つ、推奨されたサンプリングパラメータが実現され、機器のオペレーションが進行する(たとえば、ロジックアナライザによるトレースの指定及び測定)。
次に、図4に示すフローチャート化されたセグメント28を検討する。これは、図3のステップ19を展開したものであり、検討されている各チャネルについて実行され、ステップ29から開始する。ステップ29では、性能指数(FOM)が、チャネルの正規化されたアイ開口における各ロケーションに割り当てられる。これは、ロケーション対FOMの中間テーブルの使用を含むことができ、それらFOMを見つけることは、第1のアルゴリズムのステップ(4)に関して説明したように行うことができる。これは、援用された「METHOD FOR NORMALIZATION OF AN EYE DIAGRAM AND SELECTION OF SAMPLING PARAMETERS FOR A RECEIVER」に記載された最適化の副産物として容易に理解される。この考えは、最適化手法が、サンプリングパラメータの値としての望ましさに従ってロケーションをランク付けすることである。たとえば、拡大正方形手法及び最大円手法は、共に、アイ開口における各ロケーションに関連付けられたサイズを有する。このサイズは、FOMとみなすことができ、サイズが大きいほどより良いFOMを表す。この種のFOMは、双方のサンプリングパラメータを変化させることができることに基づく点は真実であるが、ここでは、単独制約ケースに関心を向けるとし、それを使用できる方法を示すことにする。
ステップ30では、最大のFOMが見つけられる。これは、異なるFOMを降順で記憶するループの先頭の入り口である。このループの次のステップはクオリファイア31である。クオリファイア31は、こうして見つけられたFOMが、或る制限値よりも小さい(又は、或る制限値以下、若しくは、或る制限値と少なくとも等しい等)かどうかを問い合わせる。これは、必要に応じて制限値を選択して、FOMが、関連したロケーションの少なくとも基本的な最低限の有用性を示すのに十分な大きさのものであることを要求するという考えに基づく。この特徴によって、明らかに適切でないロケーションを直ちに廃棄することが可能になり、オーバーヘッドが節約される。ステップ31に示された特定の論理的関係について、この特徴を、制限値を0に設定することによってディスエーブルすることができる。
ステップ32は、現在のFOMを有するすべての(正規化された)ロケーションを見つけることである。少なくとも1つはあるが、多くある場合もある。これは、クオリファイア33によって特定され、2つ以上のロケーションがある場合(YES)、ステップ34によって、情報の統合(consolidation)が可能になる。ステップ34は、重複する制約されたパラメータの値及びそれらが関連した非制約のパラメータの値を除去することによってこの統合を行う。ここで、32個の異なるロケーションが所与のFOMに関連付けられているものと仮定する。これらのロケーションは、4つの異なる、制約されたパラメータの値であるとすることができ、それぞれは、8つの関連した非制約のパラメータの値を有する。これは4つのファミリーである。各ファミリー内において、その中のロケーションを1つだけ選択して、そのファミリー全体を代表する。この観点からすると、所与のFOMに関連付けられたこのようなファミリー内の各ロケーションは、FOMが、我々が期待するものを意味しているので、他のいずれとも同程度に望ましい。この場合、我々は、そのファミリーの1つのメンバーをそれ以外のものよりも好んで決定することができない。1つを選択する。(非制約のパラメータの値に対するさらなる選択は、たとえば、何らかの境界又はアイダイアグラムの制限値から最も遠いものを好むことが生産的かもしれないと考えたくなる者にとって、それらの者は、特定(識別)を容易にするためにリストに個別に挙げられていないアイ開口内に「包含物(inclusion)」がある傾向を思い出し、最適化プロセスが双方の可能性をすでに考慮していることを思い出されたい。明らかに、FOMは同じという結果になるので、このような考慮は、何ら相違をもたらさない。)したがって、所与のFOMについて4つのファミリーがある場合、ステップ34は、各ファミリーから1つずつの4つのロケーションを選択して、それら4つのファミリーを代表する。
ステップ35は、その1つのロケーション(クオリファイア33でNO)又はステップ34からの1つ又は複数のロケーション(クオリファイア33でYES)を好ましいサンプルパラメータリスト38に追加することである。リストのエントリーは、現在のFOMを生成したロケーションであることによって互いに関連付けられる、使用可能な1対のサンプルパラメータ(1つが制約されたもの、1つはそうでないもの)である。FOMも同様にリスト38に追加されることが好ましいが、これは、原則的にはオプションである。
次に、他の(より小さな)FOMがその後検討されるにつれて、リスト38にすでに入力されている制約されたパラメータの値がステップ35に提示される可能性は十分にある前に述べたように、リスト内へのこの提示されたエントリーは拒否できることが理解されよう。その理由は、前のエントリーが、同じ制約値についてのものであり、それ(先のエントリー)はより良いFOMを有するからである。
クオリファイア36は、検討すべきFOMがさらにあるかどうかを問い合わせる。YESである場合、ステップ37が、次に最も大きなものを見つけ、ループ先頭のクオリファイア31に戻る。検討すべきFOMがそれ以上ない場合には、クオリファイア36からのNOの分岐によって、フローチャートセグメント28は終了する。
図5は、図3のフローチャート12のステップ21〜24を展開したものであるフローチャートセグメント39を含む。このフローチャートセグメント39は、入札プロセスを記述しており、ステップ40から開始する。ステップ40では、入札配列が(たとえば、すべてゼロ又はすべてヌルに)初期化される。この入札配列(51又は52)は、チャネルの付け値が検査されてチャネル間の合意を発見できるように、チャネルの付け値(bid)を値によって記録するのに使用される。
入札配列は2次元とすることができる。一方の次元は、対象となるチャネルの個数の範囲に及ぶ序数値(ordinal value)によってインデックスされ、他方の次元は、発生し得るさまざまな制約された(実際の、正規化されていない)パラメータの値を表す序数によってインデックスされる(すなわち、図3のフローチャート12のステップ17で選択された1つのステップサイズを有する共通座標系から得られたもの)。それについての別の考え方は、入札配列の制約されたパラメータの値をインデックスする序数の異なる値が、図4の好ましいサンプルパラメータリスト38の順序付けられたさまざまなエントリーに対応するということである。それらのエントリーは、オプションのFOMを有するサンプルパラメータ対であり、それらエントリーの順序は、入札配列の序数の連続値に対応する。(注意されたい。第1のエントリー、第2のエントリー、第3のエントリー、第4のエントリー等は常にリスト38にあるが、ステップ17のステップサイズのあらゆる倍数が存在する必要はなく、それらの隣のものに対して厳密に単調な形式で発生しないものが存在する場合もある。)
ステップ41は、入札を行うループの先頭であり、各チャネルの最初の付け値を、そのチャネルの好ましいサンプルパラメータリスト(38)(の最初のエントリー)から得る。
ステップ42は、各チャネルの付け値が入札配列に記録される入札ステップである。これを行うことができる一般的な方法は2つある。入札配列51において、或る種のマーク、おそらく単に1ビットのマーク(簡単なレ点のチェックマークとして示される)が、そのチャネル−制約されたパラメータの組み合わせに対応する位置に記憶される。おそらく、各列(列をインデックスするチャネルで示される)は、或る行のレベルでチェックマークを収容するが、行は同じである必要はない。それは、単に、異なるチャネルが、或る制約されたパラメータの値についてまだ合意していないことを意味するだけである。入札配列52について異なるものは、チェックマークが、非ゼロ又は非ヌルの実際のFOMであるということである。入札配列のこの後者の形52は好ましいものである。この配列に示されたアスタリスクは、入札プロセスの失敗を取り扱うオプション手法に関係するものであり、後に説明される。
ステップ43は、入札配列(51又は52のいずれか)をスキャンし、クオリファイア44を用いて、エントリーの全部そろった(complete、完成した)行(チェックマーク又は非ゼロ/非ヌルのFOMのいずれか)があるかどうかを見出すことである。このような完成した行がある場合、入札は成功しており、クオリファイア44からのYESの分岐によって、クオリファイア48に進む。クオリファイア48は、このような行が2つ以上あるかどうかを問い合わせる。このような行が2つ以上あることは、最初の付け値では起こらないが、その後いつかは起こる可能性がある。すなわち、20番目の付け値で、3つの行が最終的に完成する場合がある。それらの行は、すべて同じFOMについてのものではなく、制約されたパラメータの3つの異なる値に対応することになる。すなわち、或るチャネルの4番目の選択が、別のチャネルの6番目の選択と共に取得される場合がある等である。クオリファイア48からのYESの分岐によってステップ49に進む。ステップ49では、それら3つの値(この例では)のどれを選択して、制約されたパラメータとして使用するかの2次選択が行われる(チャネルは、2つ以上のしきい値も2つ以上のサンプル位置も同時に有することができないので)。
このような2次選択を行うことができる異なる方法がある。完成した各行を含むさまざまなロケーションのFOMに基づいたものが好ましい。1つの方法は、最も大きな平均FOMを有する行を選択することであり、他の方法(これが、好ましい)は、最小FOMが最も大きい行を選択することである。
クオリファイア48からのNOの分岐、又は、ステップ49における2次選択の実行のいずれかの後、次のステップ(50)は、各チャネルについて、関連した非制約のパラメータの値を見つけることである。これにより、各チャネルは、そのサンプリングパラメータの完成した指定(仕様)を有することとなる。このサンプリングパラメータの1つは、単独制約ケースに従って制約されたものである。
次に、クオリファイア44からのNOの分岐を検討する。これが起こる通常の状態は、単に、付け値がまだ十分合意に達していない場合である。その場合、次のクオリファイア(45,各リストにさらにエントリーがあるか?)の回答はYESであり、それによって、ステップ46に続く。ステップ46では、各チャネルの次の付け値が取得される。その時点で、入札ループは、ステップ42(上述)の別の実行を再開する。しかしながら、まだ合意に達しないことが起こる場合があり(クオリファイア44においてNO)、その場合、少なくとも1つのチャネルでは、そのリストが使い果たされている。これは、クオリファイア45のNOの状況である。物の見方をより大きくすると、これは、入札が合意を生み出すのに失敗したことを意味する。この状況を取り扱う一般的な方法は、少なくとも2つある。各方法は、状況を説明する1つ又は複数の警告フラグを設定することを含む。ステップ47は、この設定のためのものである。
第1の方法は、単に入札を終了し、ステップ47から次のステップへ移ることである。次のステップは、GUIを介してオペレータと対話する(図3の25)、である。この場合、関係した問題がGUIを介して知らされ、オペレータは、適切な応答をする。この応答は、クオリファイア26におけるYESにより変更として現れる。
入札プロセスの失敗に対する第2の手法は、付け値を使い果たしたチャネルを無視し、再開された入札プロセスが生成するものを調べることである。これを行うことができる方法にはさまざまなものがあり、ここでは、1つの概略を記載することにする。警告フラグをセットするステップ(47)は、入札配列(51/52)に「特定の標示」を(追加的に)記憶することとなる。その後、破線のオプションのパスによってステップ46に進む。
この「特定の標示」をどのようにして得ることができるかの一例として、入札配列51/52のアスタリスクの列に注目する。この例では、アスタリスクを使用して、関連したチャネルがクオリファイア45のNOの原因であったことを一般的な方法で示し、それらの位置は、入札できなかったパラメータの値を示す。(図にはシンボルが必要であり、ここではアスタリスクを選択した。他の多くの適切な標示が可能である。)関連する変更部分は、クオリファイア44(完成した行があるか?)が係わる範囲では、アスタリスクがエントリーに見えるようにクオリファイア44が動作するということである(出口の見えない入札ループに入り込まないように)。ステップ50(関連した非制約のパラメータを見つける)及びおそらくステップ49(2次選択)も、アスタリスクを適切に尊重する(たとえば、アスタリスクを無視して、アスタリスクがないものとして制約されたパラメータの値を提案する)ことを示す。他の場合と同様に、ステップ25(GUIを介してオペレータと対話する)は、結果を承認する機会又は必要な他のあらゆる応答を行う機会をオペレータに与える。
入札の失敗に応答したこの第2の場合を操るのに使用できる方法には、「アスタリスクメカニズム」に加えてさまざまなものがあることは明らかである。それらの方法のいくつかは、入札配列のサイズ若しくは構造を変更すること、又は、追加の補助配列を作成することを含むことができる。さらに、アスタリスク(又は、他の対応する標示)は、ステップ46の一部として生成されることもできるし、他の別のステップとして生成されることもできる。
図3〜図5のフローチャート及びテキストによるそれらの各説明で述べた「各チャネル」は、関連した単独制約ケースを構成するチャネルグループにおける各チャネルを指すことが理解されよう。たとえば、それらのチャネルは、プローブポッドによって与えられるチャネルについて単一のしきい値のみを提供する、該プローブポッドのチャネルとすることができる。さらに、このような場合、さらに多くのプローブポッドがあると、実際には、プローブポッドと同数の異なる単独制約ケースがあり、第1のアルゴリズム/図3〜図5のアクティビティは、各単独制約ケースにつき1回(少なくとも部分的に)実行されることが理解されよう。アクティビティのいくつかは、制約されたパラメータに密接に関係していないので、「1回」実行することができる。たとえば、図3のステップ13〜16、18、及び25〜27である。他方、ステップ17及び19〜24は、それらに関連した単独制約ケースの一部として個々に実行する必要があるものである。これと同じように、単独制約ケースの各インスタンスについて個別の入札配列が存在することが好ましい。
第1のアルゴリズムを理解すると、単独制約ケースの第2のアルゴリズムを検討することに対して我々は動機付けられる。この第2のアルゴリズムは、大多数(majority)の位置及び「妥協を拒む者(hold out)」を識別するヒストグラムを形成することによって、チャネルグループの全体的な状況を調べるものである。結果の点から、第2のアルゴリズムは、基本的に第1のアルゴリズムと同じであるが、そのオペレーションは大きく異なる。しきい値電圧が、制約されたパラメータである場合の1対のヒストグラムの例を図6A〜図6Bに示し、それらの生成及び解釈に関連した擬似コードを付録「A」に示す(付録「A」も、しきい値電圧が、制約されるパラメータであると仮定する)。付録「A」の擬似コードは、多くのコメントを含み、第1のアルゴリズムが理解されていれば、同じ関連事項の多くが取り扱われているので、第2のアルゴリズムは難しくない。
図6A〜図6Bのヒストグラムについて指摘すべきいくつかのことがある。図6Aは比較的簡単な場合を表している。単独制約ケースの一部である16個のチャネルがヒストグラム53に表されている。このヒストグラムの1つのセル(54)は、16の(最大)値を有し、説明文「このVTHRESHを選択」から矢印によって示された或るしきい値電圧値に中心が置かれている。セル54の左側には、異なるしきい値電圧の14個のチャネルを表す別のセルがある一方、右側には、さらに別のしきい値電圧の13個のチャネルを表す別のセルがあることを見ることができる。これらセルの3つすべてが16の振幅を有する場合があるのか?又は、5つの連続したセルは?答えは、イエスである。その場合、2次選択が必要とされ、最も中心のセルが最も良い選択肢を表す可能性はあるが、表さない場合もある。最大値を有するセル同士が隣接していない場合も起こり得る。
付録「A」の擬似コードは、2次選択に充てられたセクションを有する。そのセクションは、第1のアルゴリズムについて先に説明した図5のフローチャート39のステップ49に関して説明した2次選択と基本的に等しい。
ヒストグラムの横軸が、さまざまなしきい値電圧をそれらの自然な順序で、たとえば、左に最小のものから右に最大のものまで、配置すると仮定することができる。また、セルの振幅に貢献するために、チャネルが、少なくとも1であるFOMを有することを、縦軸が(通常)必要とすることにも留意する。しかしながら、或るチャネルが少なくとも1のFOMを有するしきい値を有しない場合には、最良のFOMを有するチャネルのしきい値が、そのしきい値電圧を表すヒストグラムのセルに貢献することが許される。
図6Bは、チャネルの異なるグループのものである点を除いて、図6Aとほとんどの点で類似している。図6Bは、2つのピーク56及び57を有するヒストグラム55である。これら2つのピークのいずれも、16個のチャネルすべてを表しておらず、これら2つのピークは隣接したセルではない。この場合、2次選択が確実に必要とされる。また、セル56及び57は、それらよりも低い振幅を有するセルによって分離されていることにも留意されたい。その低い振幅のセルのしきい値電圧は、実際には、チャネルのほとんどにとって真に良好な値である場合があるが、それらチャネルの2つにとっては真に悪い場合がある。セル56及び57の振幅が15である場合において、セル56又は57に対応するしきい値の一方が選択されると、1つのチャネルのみが範囲外にあるものとなることをヒストグラム55は示している(16−15=1)。もちろん、セル56及び57は、共に、16の振幅を有する場合もある。
次に、GUIとして実現されるユーザインターフェースに移る。このGUIは、ちょうど説明した、単独に制約されたサンプリングパラメータの選択プロセスのうちの1つの、1つ又は複数のインスタンスを監視して制御するのに使用することができる。詳細には、図7は、バス/信号(BUSES/SIGNALS)タブ59(前面にあり、したがって見えている)とサンプリング(SAMPLING)タブ60とを有するアナライザセットアップ(ANALYZER SETUP)スクリーン58である。ロジックアナライザのオペレータは、バス/信号タブ59を使用して、バス(及び信号)の集まりに割り当てられたラベルと、バス(及び信号)のそれら集まりに接続されるプローブポッド/チャネルの組み合わせとの間の対応関係を確立する。図7に示す例では、2ビットのバスにグループ1(GROUP1)の名前が付けられ、このバスは、スロットFのポッド1のチャネル3及び4として始まる。同様に、グループ2(GROUP2)は、スロットFのポッド2のチャネル5及び6として始まる。双方のポッドには、TTLファミリーの部品に適した(一時的な)デフォルトのしきい値設定が与えられている。このロジックアナライザの環境では、各プローブポッドは、自身のチャネルについて、共通のしきい値を有することに気付くことであろう。したがって、グループ1及びグループ2は、別のプローブポッドを使用し、それぞれが単独制約ケースのインスタンスである。この例を単純なものに留めておいた点は理解されよう。より現実的な例は、グループ1が2つのプローブポッドにわたる32個のチャネルであり、グループ2についても同じである。その場合、それら2つの集まりについて、単独制約ケースの4つのインスタンスがあることになる。このような大きな例で話を進めても、図面も複雑になってしまい、上記の単純な例と比較してメリットがない。
上述した32チャネルが2つある場合であっても、起こりうる論理複雑度の全レベルには達しない。たとえば、図7に示すケースは、ポッド2のチャネル3をグループ1に追加することによって拡張されると仮定する。これは、スクリーン58の簡単なチェックマークで行うことができる。グループ1は、3つのチャネルを含むことになり、単一の制約されたしきい値だけではなく、代わりに、2つの制約されたしきい値を有することになる。それら2つの一方はグループ2のものと同じである。多くのプローブポッド及び多くの信号が存在し得ること、SUTオペレーションの異なるモードに対応するよう作成されることのできる代替的な(且つ、おそらくオーバーラップする)グループの定義があること、並びに、いくつかの信号が、それらのレベルについて「未知(strange)」であり得るが、実際の制限のために、さまざまな信号は、セットアップの他の部品に事前に使用されたプローブポッドに残された入力によってサービスされる必要があること、を理解するであろう。留意点は、制約されたサンプリングパラメータの範囲が、論理上の便宜性のためにチャネルをどのようにグループ化するかによる影響を必ずしも受けない、ということである。より具体的には、いくつかのロジックアナライザでは、制約されたしきい値の根底にはプローブポッドがあるが、その影響は、それらの信号の論理的挙動の機能解析のためにチャネルがどのようにグループ化されるか、とは完全に独立している。
図8は、アナライザセットアップスクリーン61である。このアナライザセットアップスクリーン61では、オペレータは、サンプリングタブ60をクリックして、そのサンプリングタブ60を前面に配置している。このスクリーンでは、ユーザは、データがロジックアナライザによってどのように取得されるかに関係した従来の複数の選択(たとえば、クロック源、レート、トレースのトリガ位置等)を行うことができる。一方、「サンプリングパラメータ(SAMPLING PARAMETERS)…」ボックス(又はバー若しくはサブタブ)62をクリックすることによって、ユーザは、図1〜図6に関して説明した単独に制約されたサンプリングパラメータの選択プロセスの1つ又は複数のインスタンスを監視して制御するタスクを特に対象にしたGUIを呼び出す。それらのGUIは、図9〜図14に示すサンプリングパラメータスクリーンの主題である。図9〜図15に関係したそのGUIアクティビティが完了すると、ユーザは、そのプロセス内でOKボタンをクリックして、そのプロセスを終了し、図8のアナライザセットアップスクリーン61が再び現れる。変更が行われていない場合、ユーザは、次にOKボタン63をクリックして、アナライザセットアップスクリーンを去り、ロジックアナライザのさらに別のオペレーションに関係した、他のスクリーン(図示せず)に入る。
次に図9を参照すると、ボックス62(サンプリングパラメータ…)をクリックすることによってアナライザセットアップスクリーン61から到達したサンプリングパラメータ(SAMPLING PARAMETERS)スクリーン64を示している。このスクリーン64の左部65には、図7で定義された信号の集まりの名前が示されている(72、73)。チェックボックス66及び67に注目されたい、すなわち、定義された各集まり(「集まり」が単一の信号しか含まない場合であっても)につき1つある。これらのチェックボックスは、(デフォルトとして)チェックマーク(レ点)を収容する。チェックボックスにレ点が存在するということは、その関連した集まりが、単独に制約されたサンプルパラメータの値を選択する自動化プロセスの一部となることを示している。この場合、「一部となる(a part of)」ということは、ユーザが実行(RUN)ボタン82をクリックした時に、その集まりの各信号についてアイダイアグラムが作成されることを意味する。集まり全体を、単にその関連したチェックボックスを再びクリックすることによって、これらのアイダイアグラム測定から除外することができる。チェックマークはクリックごとにトグルすることになる。
66および67等のチェックボックスは、2つの理由から有用である。第1に、アイダイアグラム測定を行うことは、かなりの時間を要する可能性がある。第2に、グループは、同じチャネルが2つ以上のグループに存在してもよい点で、離ればなれである(disjoint)必要はない。SUTのオペレーションのいくつかのモードでは、所定のチャネルを或るグループに属するとみなすことが有益な場合があると同時に、そのチャネルは、SUTのオペレーションの別のモードの期間中は、異なるグループにも属する。SUTのオペレーションのモードが変化すると、オペレータにグループを再定義させるのではなく、オペレータがさまざまな有用なグループを「オン」又は「オフ」にすることができる。
また、チェックボックス68及び69にも注目されたい。同様の形式で、ユーザは、これらのボックスをクリックすることによって、これらのボックスをチェック(及びアンチェック)することができる。これらのボックスは、チェックされると、それらボックスが関連したグループ(集まり)全体を、(或る/これらの)単一制約ケースの推奨されたしきい値(複数可)を求めるプロセスから排除させる。この除外は、プローブポッド及び制約されたしきい値の別個のインスタンスがいくつあろうとも行われ、また、それらボックスが、グループを構成する個々の信号についてアイダイアグラムを準備していた(すなわち、66や67等の対応するボックスがチェックされた)ことにかかわらず行われる。所与の状況で利用可能な一定の個数のプローブポッドによって、珍しい又は奇異な(curious or odd)集まりの組み合わせが、同じプローブポッドで測定される場合があることについて検討する。そこで、たとえば、グループ3が、グループ2と同じプローブポッドを共有していたが、グループ3が、グループ2を構成する信号の電気特性と全く互換性のない信号に接続されていた場合、グループ3をアイダイアグラム測定から除外することができ、したがって、その特定のプローブポッドの制約されたサンプリングパラメータがどうあるべきかについての決定からもグループ3を除外することができる。この非互換性は、グループ3をグループ2と同時に測定できないことを意味する場合があり、また、その逆も同じである。対応する再構成を行った後、別の測定を行わなければならない場合があるが、それらの再構成(これは、多くの場合、記憶されたセットアップを呼び出すことによって容易に行われる)は、実際のプローブ接続自体の取り付け及び取り外しといった退屈で(且つ、多くの場合、危険で細心の注意を要する)神経質なものを含む必要はない。ここでは、グループ(集まり)を含めたりすることができ(チェックされた66や67等のボックス、及び、同じくチェックされた68や69等のボックス)、グループ(集まり)内の個々のチャネルはまだ選択的に排除される可能性があることがわかるであろう。
話を進ませる前に、メニュー選択ボックス81及びそのさまざまな選択肢について留意する。このメニュー選択ボックス81は、以下の4つの選択肢を提供する。
(1)自動サンプル位置セットアップ
(2)自動しきい値およびサンプル位置セットアップ
(3)しきい値およびサンプル位置セットアップを備えたアイダイアグラム
(4)サンプル位置セットアップのみを備えたアイダイアグラム
選択肢(1)は、既存のしきい値(おそらく、オペレータによって事前に指定されたか、又は、使用中のロジックファミリーの慣例(通例)の値として取り込まれる)を使用しながら、サンプル位置の推奨値を見つける自動モードである。このモードでは、アイダイアグラム(たとえば、図10の74及び75)は、測定もされないし、存在もせず、使用中のしきい値についてエッジが現れると、サンプル位置は、それらエッジ間におけるアイの内部領域の中点として取得される。実際のアイダイアグラムは作成されない。
選択肢(2)は、選択肢(1)と同様であるが、観測された信号変位の両極端の間の中点にしきい値を設定する。アイダイアグラムは作成されない。
選択肢(3)は、アイダイアグラムを測定し、(プローブポッドの考慮すべき事項によって制約された)推奨された双方のしきい値及びチャネルごとのサンプル位置の自動発見を行う。
選択肢(4)は、アイダイアグラムを測定し、以前のしきい値設定を保持しつつ、チャネルごとの推奨されたサンプル位置の自動発見を行う。
図9に示す選択肢は選択肢(3)である。この選択肢は、サンプルパラメータを選択する際に、ユーザに最大限の柔軟性を与えるので、我々の目的に良好なものであり、それを行う際に、GUIによって提供されるさまざまな変更メカニズムのすべてを呼び出す。
ボックス76及び77は、「アイファインダ(eye finder)」機能に関係した図を表示するためのものである。このアイファインダ機能は、メニュー選択ボックス81においていずれのモードが選択されたかにかかわらず、常に存在する。「アイファインダ」機能は、援用された「SIGNAL TRANSITION AND STABLE REGIONS DIAGRAM FOR POSITIONING A LOGIC ANALYZER SAMPLE」に記載されており、その信号の選択されたしきい値又は提案されたしきい値に関する信号マージンを表す一方法である。
テキストの説明文78及び79に注目されたい。図9に示す最初の状況では、これらの説明文は、使用中のロジックファミリーがTTLであることを示し、また、しきい値及びサンプル位置の(デフォルト)値が現在何であるかを示している。まだアイダイアグラムはないので、この情報は、興味のあるものではあるが、実際には、アイダイアグラムが取得されるまで使用されないであろう。
上述したすべての選択が行われると、ユーザは、「実行(RUN)」ボックス82をクリックする。これによって、必要なアイダイアグラム測定が行われることになる(関連したアイダイアグラムは、後続の図のスクリーンについて説明するように、「アイファインダ」情報及びサンプルパラメータの推奨値と共に(すべて、メニュー選択ボックス81について行われた選択に従う)、ボックス74及び75に表示される)。次に、ユーザは、OKボックス83をクリックすることにより、又は、後続の図に関して説明するような実験により、結果を受け取ることができる。その実験は、「実行」ボタン82の再利用を含むことも可能である。いずれにしても、ユーザは、満足すると、最終的に「OK」ボタン83をクリックする。このクリックによって、サンプルパラメータ選択ダイアログ全体が終了し、次のロジックアナライザオペレーション(トリガ仕様を定義することやデータを取得してトレースリストを形成すること等)に進む。
図9に関して最後に、スライダ(slider)制御80に注目されたい。近い将来の特定の状況下において、このスライダ制御80が実際に必要とされるまで、実際の実施態様はおそらくスライダ制御80を含まないであろうが、図にはスライダ制御80を示している。もちろん、スライダ制御80が何のためにあるかは、あまりにも多くの情報があり過ぎて同時に含めることができない場合に、スクリーンの内容を縦方向にスクロールするためである。図示したケースでは、情報はあまり多くないが、より複雑な例を使用した場合には、情報が多くなり過ぎる場合がある。そこで、スライダ80を含めて、その存在を示すことにした。この出願では、単に、(図11A〜図11B及び図12A〜図12Bのように)2つの部分の図に頼ることによってスクリーンを大きくしたため、それらの場合でも(グループ/チャネル情報の簡潔性及び明瞭性の双方のために)、スライダ80のメカニズムが実際には呼び出されなかったが、多くのグループが存在する場合、又は、或るグループの合成アイダイアグラムの展開によって、あまりにも多くのものが生成されて1つのスクリーンに示すことができない場合のいずれかで、スライダ80は、後続の図にも含まれており、図9と同様の場所に存在している。
次に図10を参照すると、スクリーン84が示されている。このスクリーン84は、「実行(RUN)」ボタン82をクリックすることによって、図9のスクリーン64から到達される。実行ボタン82をクリックすることによって、さまざまなチャネルのアイダイアグラムの測定が引き起こされている。その結果は、最初、2つのグループ(この例では、グループ1及びグループ2の名前が付けられている)の合成アイダイアグラムとして示される。グループ1の合成アイダイアグラムはウィンドウ74に表示される一方、グループ2の合成アイダイアグラムはウィンドウ75に表示される。ウィンドウ74の下には、ウィンドウ74用の「アイファインダ」ディスプレイ76がある一方、ウィンドウ75の下には対応する「アイファインダ」ディスプレイ77がある。
「アイファインダ」ディスプレイの本質は、援用された「SIGNAL TRANSITION AND STABLE REGIONS DIAGRAM FOR POSITIONING A LOGIC ANALYZER SAMPLE」の主題である。簡潔に言えば、「アイファインダ」ディスプレイは、現在のしきい値で利用可能なサンプル位置のマージンの量を示す。カーソル85を通る横方向の破線86(しきい値電圧)に注目されたい。この破線がウィンドウ74のアイダイアグラムを上部と下部に切断することを想像されたい。これらの部分の一方を除去し、切断した所で「端を先にして(end on)」見ていただきたい。さらに、アイダイアグラムが用紙の深さ方向の広がりを有すると想像すると、「アイファインダ」の図76の画像が見える。「アイファインダ」図の縦方向の高さは、アイダイアグラムの「用紙の深さ方向の広がり」であり、実際には、ウィンドウ74のアイダイアグラムは、用紙の内部(又は外部)への深さ方向の広がりを有しないので、この高さは、単に、「アイファインダ」図をより容易に視覚的に理解されるようにする工夫にすぎない。
図10を去る前に、推奨されたサンプリングパラメータを表すさまざまなカーソルに着目されたい(後続の図でさらに十分に説明する)。また、カーソル85がかなり太いことに着目されたい。かなり太い理由は、ウィンドウ74のアイダイアグラムが合成アイダイアグラムであり、カーソル85が、個々のコンポーネントアイダイアグラムのカーソルの「合成」であるからである。ウィンドウ74の合成アイダイアグラムの場合に、それら個々のカーソルは、互いにかなり接近しており、それらを結合した効果が、カーソルが太いという効果になっている。ウィンドウ75では、個々のカーソル(87、88)は接近しているが、まだ分離している。これらのさまざまなカーソルは、推奨されたサンプリングパラメータを示している。これらの推奨されたサンプリングパラメータは、表示89及び90としてテキスト形式でも記載されている。実際のアイダイアグラム測定が行われた結果、2つのグループの推奨されたサンプリングパラメータ(89、90)は、今や、図9の各デフォルト試行値78及び79とは異なっていることに留意されたい。さらに、実際のサンプリングパラメータの推奨値が作成されており、デフォルトのTTL値はもはや使用されていないので、説明文「しきい値(THRESHOLD):」の後の説明文「TTL」はもはや適切ではない。しきい値のタイプが、ここで、「ユーザ(USER)」(すなわち、ユーザが定義したもの)として(自動的に)与えられる。これについては、図12Aのメニュー109に関してさらに述べることにする。
また、サンプル位置の記載の後の「AVG」に着目されたい。この「AVG」がそこにある理由は、この「AVG」が関連付けられているアイダイアグラム74が、潜在的に多くのチャネルの合成アイダイアグラムであり、いくつかのサンプル位置が使用されている場合があるが、テキストの説明文89にはサンプル位置について1行しか利用可能でないからである。アイダイアグラム74(その2つのカーソル87及び88を有する)並びに説明文90の「tSAMPLE」というテキストエントリーを参照されたい。「tSAMPLE」の後には「AVG」が追加されている。ここで、グループ1及びグループ2のいずれか又は双方が、いくつかのプローブポッドを含む場合があることを思い出されたい。これは、制約されたしきい値のいくつかのインスタンスが使用されている場合があることを意味し、この場合も、アイダイアグラム内の複数のカーソル位置によって示される(この状況は図示していない)。その場合、「AVG」は、テキストの説明文89及び90に示されたしきい値電圧の後に表示されることとなる。このように、「AVG」を追加するこの機能は、示された値が必ずしもいずれか1つのチャネルにとって正確な値であるとは限らないことをオペレータに警告するための手段である。一方、検討すると、制約されたパラメータについて「AVG」が追加されない場合、提示された値は正確であり、平均でもある(正確には)ことも理解されよう。すなわち、すべてが同じ値を有するいくつかのものの平均は、ちょうどその値である。
図10のスクリーン84に示すような状況は、主として、オペレータの情報のためのものであり、(それは或る程度行うことができるが)サンプリングパラメータの調整をオペレータに可能にさせることを目的とするものではないことが理解されよう。サンプリングパラメータの調整を容易に行うために、チャネルの詳細(specificity)をさらに有するスクリーンを必要とする。
図11A〜図11Bでは、ウィンドウ74及び75の合成アイダイアグラムは、それらの各コンポーネントアイダイアグラムを示すように展開されている。これを行うために、ユーザは、グループ1のボックス70をクリックして、ボックス70を「+」から「−」に変更している。グループ2のボックス71についても同様である。グループ1の合成アイダイアグラムは、ウィンドウ92及び93のそのコンポーネントアイダイアグラムに展開される。ここで、ウィンドウ92及び93にも、グループ1のチャネル0(グループ1[0])の説明文94及び95、並びに、グループ1のチャネル1(グループ1[1])の説明文96及び97が付随している。ここで、この展開された資料には「AVG」の説明文がないことに留意されたい。説明文94及び96はチェックボックスを含む。このチェックボックスは、制約されたサンプリングパラメータ(これは、この場合、しきい値電圧である)の推奨された値に達しているものの、対応するチャネルを考慮から除外することを可能にするものである。同様に、グループ2の合成アイダイアグラムは、ウィンドウ98及び99のそのコンポーネントアイダイアグラムに展開される。ここで、ウィンドウ98及び99にも、グループ2のチャネル0の説明文100及び101、並びに、グループ2のチャネル1の説明文102及び103が付随している。説明文100及び102は、対応するチャネルを考慮から除外することを可能にするチェックボックスを含む。
チャネルが、前述した自動選択メカニズムによって無視された「範囲外のもの(outlier)」であった場合、そのチャネルには、除外されるものとしての印を自動的に付けることができ、その影響に対するメッセージが、ディスプレイのかなり右側部分の「メッセージ(MESSAGES)」領域に提示される。
各コンポーネントアイダイアグラムは、それ自身のカーソルを有する。このカーソルは、そのアイダイアグラム内で、関連した説明文が述べている推奨されたロケーションがどこかを示している。したがって、カーソル104は説明文95と組になり、カーソル105は説明文97と組になり、カーソル106は説明文101と組になり、カーソル107は説明文103と組になる。グループ2について、合成アイダイアグラムのカーソル87及び88は、カーソル106及び107をちょうど複製したものであることに留意されたい。ここで、なぜ「太いカーソル」85が太いのかは明らかである。「太いカーソル」85は、カーソル104及び105が(正確ではないが)同一のロケーションで非常に近くにあることからそのようになっている。
次に図12A〜図12Bに移って、ユーザが、グループ1のチャネル0の推奨されたサンプリングパラメータを変更したいか、又は、それらサンプリングパラメータを実験したいものと仮定する。ユーザがこれを行うことができる方法は2つある。第1の方法は、カーソル104をクリックして、カーソル104を新たなしきい値及び/又はサンプル位置にドラッグすることである。(この方法でサンプル位置を変更すると、以下で説明する、UI関連の特性を追加して示すことができる。)第2の方法は、ウィンドウ92又は関連した説明文(図11Aの95)を単にクリックすることである。いずれの場合も、説明文95は、メニュー109に取り替えられる。メニュー109は、共通の制約されたパラメータ用のボールド体の文字を含む。この共通の制約されたパラメータは、この場合には、しきい値電圧である。非制約のパラメータ(サンプル位置)はボールド体ではない。さらに、グループ1に関する他の説明文であるしきい値部分110及び111も、ボールド体で表示される。これは、ユーザがグループ1のチャネル0の制約されたサンプリングパラメータを変更すると、そのグループ(又は他のあらゆるグループ)の他のすべてのチャネル(これは、同じ制約された集まり(プローブポッドを考慮してみよ)の一部である)の制約されたパラメータの値も変化することを、ユーザに視覚的に合図するものである。実際に変更を実行するには、カーソル104が、提案されたロケーションへドラッグされるか、又は、メニュー109が使用される。メニューを使用するには、そのメニューの「+」ボタン又は「−」ボタンのいずれかを使用して、しきい値をインクリメント又はディクリメントすることができる。あるいは、新たな値を、単に、マウスポインタ(図示せず)およびキーボードの編集操作により、キー入力することもできる。
メニュー109の「+」ボタン及び「−」ボタンに隣接した他のボタンは、小さな電卓スクリーンを提示する。この電卓スクリーンは、サンプリングパラメータの試行値に手動で達する際に有用な算術計算を行うことを容易にする。
好ましい実施形態では、或るグループ又はそのコンポーネントの1つについて1つのメニュー(109等)しか一時点には表示されない。別のメニューを開く動作を行うと、既存のメニューは閉じられる。(複数のメニューが実施されたが、これは、ディスプレイを極端に「ビジー」に見せ、オペレータのエラーを助長する原因であることがわかった。同時には1つのメニューで十分である。)別のメニューを開くことなく、既存のメニューを閉じるには、オペレータは、単に、スクリーンの右側部分の説明文「メッセージ(MESSAGES)」の下の空白をクリックするだけである。
なお、サンプリングパラメータを変更するためのこれら同じメカニズムが図10で利用可能であることに注目することができる。図10では、アイダイアグラムは展開されておらず、合成アイダイアグラムのみが示されている。このような変更は、グループのチャネルの中の単一のチャネルを対象とすることはできない。その代わり、システムは、指示された変更を、そのグループのすべてのチャネルに一斉に適用されるものと解釈する。
これに加えて、メニュー109の説明文「ユーザ(USER)」は、「ユーザ定義の」又は「カスタマイズされた」を意味する。これは、しきい値を指すものであり、他の選択肢は、TTL、ECL、MOS等のロジックファミリーに関連している。それら他の選択肢のうちの1つが選択された場合、その後のオペレーションによって変更されない限り、そのしきい値のデフォルト値が使用される。「ユーザ」は、メニュー81(「しきい値/サンプル位置セットアップを備えたアイダイアグラム」)に示される選択済みモードのオペレーションに最も適切な選択肢であることから、この図には「ユーザ」を示している。
次に図13及びスクリーン112の描写を参照されたい。図12A〜図12Bのような状況を基準にすると、ユーザは、グループ2を縮めて、グループ1のしきい値を970mVから850mVに移動させ、且つ、グループ1[0]のサンプル位置を1サイクル右へ(−777psから899psへ)移動させている。この効果を、図12Aと図13を比較してわかるように、グループ1[0]の「アイファインダ」図の変化として見ることができることに注目されたい。ユーザが後に後悔して、サンプルパラメータの値をその元の推奨値であったものに戻したい場合には、3角ポインタ113及び114に注目されたい。ポインタ113は、元のしきい値の推奨値を示す。ポインタ114は、元のサンプル位置の推奨値を表すが、変更された信号サイクルを基準としたものである。ポインタ113及び114(並びに展開されたグループの同様のポインタ)は、たとえ使用されている値が実験を通じて変更されても、サンプリングパラメータの元の推奨値を示し続ける。アイダイアグラム内の十字形状のカーソルは、常に、実現されている値を示しており、これらの値は異なってもよい。これら実現されている値に対する変更は、該変更が行われると直ちに呼び出される。実験的な変更は、アイダイアグラムの右のメニューの+ボタン及び−ボタンを使用することにより、又は、アイダイアグラム内の十字形状のカーソルをドラッグすることにより行うことができる(その後、あたかも別の変更によるかのように取り消すことができる)。図14に関して説明する別のメカニズムによって、チャネル単位で、すべての実験的な変更の自動除去、及び、元の推奨されたサンプリングパラメータの値のいずれか又は双方への復帰が可能となる。
図13が暗に意味するものは、信号周期が1676psであること、及び、オペレータが、一方のアイ開口から他方のアイ開口へサンプル位置を単にドラッグするだけで、システムが、正確に1つの信号周期の調整を行うことによって対応する位置へ「サンプル位置をスナップ」し、その結果、ポインタ114が、新たなアイ内において、前のアイにあったのと同じ位置にあることである。オペレータが、正確な周期以外の周期分だけサンプル位置を実際に変更したい場合、オペレータは、メニュー109のサンプル位置の値に隣接した+ボタン及び−ボタンを使用していたことになる。次に、アイ開口内のカーソルがそれに応じて移動すると同時に、ポインタ114は、それが現在存在するアイ開口を基準にしてその元の位置に留まる。(サンプル位置を或るサイクルから隣接したサイクルへ正確に1周期分移動させるこの機能は、「クロックの直後の信号は何であったか?(What was the signal just after the clock?)」とは対照的な「クロックの直前の信号は何であったか?(What was the signal just before the clock?)」等のセットアップ問題及びホールド問題を取り扱うためにロジックアナライザのユーザによって実施される周知の手段である。)
次に図14を参照すると、メニュー機能116を示すスクリーン115を示している。このメニュー機能116は、このようなチャネルに関連した3角ポインタ(たとえば、図13の113及び114)によって示されるように、グループのすべてのチャネル(又は個々のチャネル)の提案された元のサンプリングパラメータのいずれか又は双方を呼び出すものである。或るチャネルのメニュー116を得るには、オペレータは、そのチャネルのアイダイアグラム(又は、アイダイアグラムを見ることができない場合には、「アイファインダ」ディスプレイ)を右クリックする。メニュー116は、アイダイアグラムの下のスクリーンのボタンの説明文で参照される「ITS MENU(そのメニュー)」である。116のスタイルのメニューが一度に1つだけ生成される。先のメニューが見えている間に別のメニューを生成しようと試みると、先のメニューは閉じ、新たなメニューに取り替えられる。既存のメニュー116は、そのエントリーの1つ(これがその後実現される)をクリックすることによってその選択肢の1つが選択されると閉じる。また、既存のメニュー116は、説明文「メッセージ(MESSAGES)」の下にあるスクリーン115の右の空白をクリックすることによって、選択肢を実施することなく閉じることもできる。
図14は、グループ1と呼ばれる集まりの合成アイダイアグラムを右クリックすることによって、その集まりのすべてのチャネルについてメニュー116が生成されている場合を示している。このメニュー116は3つの選択肢を含む。第1の選択肢は、「サンプリング位置を提案されたものに設定する(SET SAMPLING POSITION TO SUGGESTED)」である。この選択肢が選択された場合、グループ1[0]及びグループ1[1]の双方のサンプリング位置が、関連した3角ポインタ(たとえば、図13の114)によって示される元の推奨された値に設定されて戻される。第2の選択肢は、「しきい値を提案されたものに設定する(SET THRESHOLD TO SUGGESTED)」である。この選択肢が選択された場合、グループ1[0]のしきい値及びグループ1[1]のしきい値が、それらに関連した3角ポインタ(たとえば、図13の113)によって示される元の推奨された値に設定されて戻される。サンプル位置及びしきい値の双方が変更されていたものと仮定すると、それらを共にそれらの元の値に戻すには、2つの各メニューオペレーションが必要とされる。ただし、1つのオペレーションしか必要としない選択肢「双方を提案されたものに設定する」をメニュー116に追加することを、容易に想像することができよう。
これまで説明したように、メニュー116のメカニズムは、グループ内のすべてのチャネルに対して一括動作する。これは、特に、グループが多くのチャネルを含んでおり、且つ、いくつかのプローブポッドが係わっていて、各プローブポッドが、そのポッドによってサービスされるチャネルの制約されたサンプリングパラメータについて自身のインスタンスを有する場合に便利である。コンポーネントアイダイアグラムをクリックすることによってメニュー116が生成された場合には、メニュー116の制御の範囲は、グループ内の単一のチャネルだけに変更することができる。図14に示すように、メニュー116の(黒く塗られた)左上のコーナーは、オペレータがそのメニューを得るために右クリックした合成アイダイアグラム内の位置にある。上述したように、そのメニューは、グループ1のすべてのチャネルに関係する。たとえばグループ1[1]のみに関係するメニュー116を得るために、オペレータは、マウスポインタ(図示せず)を、そのアイダイアグラム内の或る位置に配置し、次いでクリックする。その結果生じた116のスタイルのメニューの位置は、グループ1[1]の(コンポーネント)アイダイアグラム上になる。
メニュー116に示す第3の選択肢は「電圧情報(VOLTAGE INFORMATION)」である。この選択肢を選択すると、その選択肢を告げる説明文の始まりにおけるレ点のチェックマークの存否がトグルする。このチェックマークが存在する場合、アイダイアグラム(合成であろうと、コンポーネントであろうと)は、前述したように見える状態になる。このチェックマークが存在しない場合、スクリーンのすべてのアイダイアグラムはスクリーンから削除されて、「アイファインダ」図(76、77等)を比較するためのより多くの空間が提供される。これが図15に示す状況である。図15では、しきい値に関係したすべてのテキスト情報が、見出しの説明文「しきい値及びサンプル位置(THRESHOLD AND SAMPLE POSITION)」の下の列の説明文から除去されていることにも気付くであろう。一方、「アイファインダ」ディスプレイは残存し、それらの1つを右クリックすると、その116のスタイルのメニューが表示され、その結果、必要に応じて、電圧情報のチェックマークを元に戻すことができる。それに続いて、削除されたアイダイアグラム及びテキスト電圧情報は、スクリーンに復元される。
[付録「A」(Pgm. HISTO_THRESH)]
(プログラムの構成をできるだけ維持したまま示すため、条件文を示す”If” および繰り返しを示す”For”なる表記を用いている)。
[目標]
同じしきい値電圧設定をすべてが共有するチャネルのグループに使用するための「最適な」しきい値電圧V_TH_SUGGESTEDを見つける。このグループは、ロジックアナライザの16個の入力チャネルのポッド(pod)とすることができる。
同じしきい値設定を共有するN個の入力がある。
[与えられるもの]
N個の要素を有する配列。各要素は次のものを有する。
(*)アイダイアグラム測定がそのチャネルについて行われたかどうかの標示。
(*)もしあれば、そのチャネルに対するアイダイアグラム測定の結果。
(*)測定値が取得された場合、選ばれた“選択された”アイ。
(*)“選択された”アイがある場合、それは正規化された表現である。
(*)明瞭なアイ開口の各点(ポイント)についての性能指数(FOM)。
FOMは、これらの特徴を有する浮動小数点数である。
−アイ開口のすべての点のFOMは、0.0よりも大きい。
−最も近い境界セルからの正確に1単位の電圧性能(voltage merit)及び1単位の時間性能(time merit)の点のFOMは1.0である。
−その点から最も近い境界セルへの時間及び電圧のマージンが増加するにつれて、FOMは単調増加する。
[手順]
(1)1を有する、対象となる各チャネルの正規化され選択されたアイ開口を有するリストMEASURED_EYESを構築する。次のチャネル(複数可)を除外する。すなわち、
(a)測定されなったチャネル(たとえば、ユーザが、信号に接続されていないことを知っているチャネル);
(b)測定されたが、「平坦なライン」の信号を有していたチャネル(たとえば、接地入力)。「平坦なライン」の信号は、或る電圧、たとえば200mV若しくは0.5*vSwingMinよりも小さな振幅を有する信号として定義することができる;
(c)測定されたが、使用可能なアイ開口がなかったチャネル(たとえば、使用されるクロックと同期していない信号);又は
(d)ユーザによって除外されるよう(たとえば、チェックボックスをクリックすることによって)印が付けられたチャネル。
(2)If アイが1つだけ残っている場合:
V_TH_SUGGESTED = そのアイについて提案されたしきい値――終了
If アイが残っていない場合:
V_TH_SUGGESTED = 現在のしきい値設定
(変更は何も提案されない)――終了
(3)後続の処理に有用なパラメータを見つける:
(a)VNORM_MIN:MEASURED_EYESのメンバーがその明瞭なアイ開口に少なくとも1つのセルを有する最低(最も小さな負(most negative))の正規化された電圧。
(b)VNORM_MAX:MEASURED_EYESのメンバーがその明瞭なアイ開口に少なくとも1つのセルを有する最高(最も大きな正(most positive))の正規化された電圧。
(c)VNORM_STEP_MIN:MEASURED_EYESのメンバーの正規化された電圧において、数値的に最小の正規化された電圧ステップサイズ。
(d)ステップ(a)で見つけられた値と等しいか、又はそれよりもより負である、VNORM_STEP_MINの最も小さな負の倍数となるように、VNORM_MINを調整する。
(e)ステップ(b)で見つけられた値と等しいか、又はそれよりも正である、VNORM_STEP_MINの最も大きな正の倍数となるようにVNORM_MAXを調整する。
(f)NUM_VNORM_STEPS:VNORM_MIN及びVNORM_MAX を含めて、VNORM_MINからVNORM_MAXまでの正規化された電圧ステップの数。各ステップサイズは、VNORM_STEP_MINである。これは、NUM_VNORM_STEPS = ((VNORM_MAX − VNORM_MIN) / VNORM_STEP_MIN)+1 である。
(g)NUM_CHANNELS = MEASURED_EYESリストの項目数。
(4)MEASURED_EYESリストを処理して、電圧で相互に「有用な(useful)」オーバーラップを有する、選択されたアイを見つける。(サンプル位置は、チャネルごとに独立して設定できるので、時間のオーバーラップについて心配する必要はない。)
「有用な」オーバーラップは、それぞれの明瞭なアイ開口にある、相互にオーバーラップしたアイのそれぞれにおける少なくとも1つの位置を提供する。これに加えて、少なくとも1単位の時間マージン及び1単位の電圧マージンが、各アイにおけるオーバーラップの少なくとも1つの点(ポイント)からそのアイにおける最も近い境界までに存在することが好ましい。一方、いくつかのアイは、所望のマージンを有する点(ポイント)を有しないかもしれない。その場合、それらのアイにおける最良のマージンを有する点(ポイント)が考慮される。
浮動小数点数の2次元配列CANDIDATE_VOLTAGESを作成する。第1のインデックスは、1からNUM_CHANNELSに向かう。第2のインデックスは、1からNUM_VNORM_STEPSに向かう。この浮動小数点数は、以下の2つの目的を果たす。
(*)非ゼロ値は、1つ又は複数の点が、インデックスされ正規化された電圧レベルにおいて、インデックスされたチャネルのアイに存在することを示す。
(*)その値自体は、その正規化された電圧において、そのチャネルのアイ開口のすべての点についての性能指数の最大値を示す。
整数の1次元配列BEST_FOMSを作成して、最良のマージンが1.0未満であるチャネルで見つけられた最良のマージンのVNORMを記録する。インデックスは、1からNUM_CHANNELSに向かう。この配列は、時間及び電圧の双方で少なくとも1単位のマージンを有する点を有しない特別な場合のチャネルに使用される。
CANDIDATE_VOLTAGES及びBEST_FOMSのすべての要素を0に初期化する。
CHANNEL_NUMBER = 0
For 1及びNUM_CHANNELSを含めて1からNUM_CHANNELSまでの各CHANNEL_NUMBERについて、1ずつステップして:
{
見つけられた最良のマージン全体を追跡する。いくつかのアイは、十分に小さいことから、どのロケーションも少なくとも1単位のマージンを有しない場合がある。これは、以下のループの後の特別な場合とされる。
BEST_VNORM_INDEX = 0
BEST_FOM = 0
For 1及びNUM_VNORM_STEPSを含めて1からNUM_VNORM_STEPSまでの各VNORM_INDEXについて、1ずつステップして:
{
VNORM = VNORM_MIN + ((VNORM_INDEX -1) * (VNORM_STEP_MIN)
If VNORMが、このチャネル(CHANNEL_NUMBER)の正規化されたアイ構造によって定義された、正規化された電圧の制限内にある場合、
{
ROW = VNORMに最も近いアイ構造の行
FOM_MAX = 0
COLUMN_AT_MAX = -1
NUM_COLUMNS = アイ構造のこの行の列数
For 1及びNUM_COLUMNSを含めて、1からNUM_COLUMNSまでの各COLについて、1ずつステップして:
{
If (COL, ROW)のセルが明瞭なアイ開口にある場合
{
候補電圧配列にその性能指数(FOM)を記録する:
CANDIDATE_VOLTAGES[CHANNEL_NUMBER][VNORM_INDEX] = FOM
最良なもの全体を更新する
If FOM > BEST_FOMである場合
{
BEST_FOM = FOM
BEST_VNORM_INDEX = VNORM_INDEX
}
}
}
}
}
If BEST_FOM < 1.0である場合
{
BEST_FOMS[CHANNEL_NUMBER] = BEST_VNORM_INDEX
}
}
1からNUM_VNORM_STEPSに亘るインデックスを有する整数の1次元配列である要約配列NUM_CHANNELS_HISTOGRAMを作成する。この配列は、各電圧レベルにおいて、時間及び電圧の少なくとも1単位のマージンを有するチャネルの個数を記録する。特別な場合とされたチャネルは、その最良(最高のFOM)の電圧レベルのみで追加される。
NUM_CHANNELS_HISTOGRAMのすべての要素を0に初期化する。
For 1及びNUM_CHANNELSを含めて1からNUM_CHANNELSまでの各CHANNEL_NUMBERについて、1ずつステップして:
{
If BEST_FOMS[CHANNEL_NUMBER]が0である場合(このチャネルの最良のFOMは≧1.0である)
{
For 1及びNUM_VNORM_STEPSを含めて1からNUM_VNORM_STEPSまでの各VNORM_INDEXについて、1ずつステップして:
{
If CANDIDATE_VOLTAGES[CHANNEL_NUMBER][VNORM_INDEX] >= 1.0である場合
{
1をNUM_CHANNELS_HISTOGRAM[VNORM_INDEX]に加える
}
}
}
else このチャネルは少なくとも1.0のマージンを有するロケーションを有しない場合
{
1を
CANDIDATE_VOLTAGES[CHANNEL_NUMBER][BEST_FOMS[CHANNEL_NUMBER]]に加える
}
}
(5)ヒストグラムを処理して、答えV_TH_SUGGESTEDを選択する
NUM_CHANNELS_HISTOGRAMの最大の値であるMAX_OVERLAP及びそのカウントを有するロケーションの個数であるN_WITH_MAX_OVERLAPを見つける。これは、電圧において相互に有用なオーバーラップを形成するMEASURED_EYESのチャネルの最大個数である。
MAX_OVERLAP = 0
N_WITH_MAX_OVERLAP = 0
VNORM_INDEX_AT_MAX = -1
For 1及びNUM_VNORM_STEPSを含めて1からNUM_VNORM_STEPSまでの各VNORM_INDEXについて、ステップ=1として:
{
If NUM_CHANNELS_HISTOGRAM[VNORM_INDEX] > MAX_OVERLAPである場合
{
MAX_OVERLAP = NUM_CHANNELS_HISTOGRAM[VNORM_INDEX]
N_WITH_MAX_OVERLAP = 1
VNORM_INDEX_AT_MAX = VNORM_INDEX
}
else If NUM_CHANNELS_HISTOGRAM[VNORM_INDEX] == MAX_OVERLAPである場合
{
1をN_WITH_MAX_OVERLAPに加える
}
}
If N_WITH_MAX_OVERLAPが1である場合、then 解は:
V_TH_SUGGESTED = VNORM_MIN + ((VNORM_INDEX_AT_MAX -1)*VNORM_STEP_MIN)
終了
オーバーラップにおいて同じ個数のチャネルをそれぞれが有する2つ以上の電圧レベルを有する。いずれが選択されるべきか? 選ぶために、各正規化された電圧レベル(これらは、CANDIDATE_VOLTAGES配列に記録される)においてオーバーラップしたチャネルについて、最大FOMのうちの最小のもの(the least of the maximal FOMs)を見つける。最大FOM中の該最小のもののうち、最も大きいものを有する正規化された電圧レベルが、我々が欲するものである。
FOM_MAX_MIN = 0
VNORM_INDEX_AT_MAX_MIN = -1
For 1及びNUM_VNORM_STEPSを含めて1からNUM_VNORM_STEPSまでの各VNORM_INDEXについて、step = 1として:
{
FOM_MIN = 1.0e+300
If NUM_CHANNELS_HISTOGRAM[VNORM_INDEX] == MAX_OVERLAP
{
この正規化された電圧におけるチャネルの最小のFOMを見つける。
For 1及びNUM_CHANNELSを含めて1からNUM_CHANNELSまでの各CHANNEL_NUMBERについて、step = 1として:
{
FOM = 0.0
If BEST_FOMS[CHANNEL_NUMBER]が0である場合(このチャネルの最良のFOM >= 1.0である)
{
FOM = CANDIDATE_VOLTAGES[CHANNEL_NUMBER][VNORM_INDEX]
}
else チャネルがFOM >= 1.0を有する点を有しない場合
{
FOMについて公称値0.9を使用する
FOM = 0.9
}
If FOM < FOM_MIN
{
FOM_MIN = FOM
}
}
}
If FOM_MIN > FOM_MAX_MIN
{
FOM_MAX_MIN = FOM_MIN
VNORM_INDEX_AT_MAX_MIN = VNORM_INDEX
}
}
タイブレークを適用すると、解は:
V_TH_SUGGESTED =
VNORM_MIN + ((VNORM_INDEX_AT_MAX_MIN -1) * VNORM_STEP_MIN)
終了!