(57)【要約】【課題】上記ネットワーク・リンク・トレーニング・セッションを迅速かつ簡単に監視及び分析する。【解決手段】オシロスコープ１３０は、リンク・トレーニング・フレーム・マーカと、その後のネゴシエーショ要求／応答データ値をパターン・マッチングすることによって、全二重レーンの両側を表す複数のアナログ信号を連続的に監視することで、シリアル・ネットワークのリンク・トレーニング・ネゴシエーションの完全な履歴を捕捉する。上記オシロスコープ１３０は、最初に、入力信号のデジタル化したものを公称パターンと比較してフレーム・マーカと制御チャンネル・データを見つけ、現在の比較パターンと合致しない制御チャンネル・データ値のみを記憶し、更に、現在の比較パターンを、受けたばかりの新しいパターンへと更新することによって、データ値中の遷移のみが記憶され、それによって、ユーザに提示するデータ量を大幅に低減するが、それにもかかわらず、リンク・トレーニング・ネゴシエーションの履歴を実質的に完全に保持する。【選択図】図１
2017142238.tif 000002
【特許請求の範囲】
【請求項１】
リンク・トレーニング情報を保持する複数のアナログ入力信号を受ける入力部と、
上記入力部に結合され、複数の上記アナログ入力信号から制御チャンネル・データを含む特定リンク・トレーニング情報を選択するリンク・トレーニング情報抽出部と
を具え、
上記リンク・トレーニング情報抽出部が、
制御チャンネル・データ値を記憶するメモリと、
上記アナログ入力信号からの制御チャンネル・データ値を記憶された上記制御チャンネル・データ値に対して評価するよう構成される比較部と、
上記アナログ入力信号からのチャンネル値が記憶された上記制御チャンネル・データ値と合致しない場合に、上記アナログ入力信号からの新しい制御チャンネル・データ値を上記メモリへ記憶させるループバック機関と
を含む試験測定装置。
【請求項２】
上記情報抽出部が、上記アナログ入力信号からの上記制御チャンネル・データ値が記憶された制御チャンネル・データ値と合致しない場合に、上記アナログ入力信号からの制御チャンネル・データ値を出力する出力待ち行列を更に有する請求項１による試験測定装置。
【請求項３】
上記アナログ入力信号からの上記制御チャンネル・データ値が記憶された制御チャンネル・データ値と合致しない場合に、トリガ信号を生成するよう構成されるトリガ回路を更に具える請求項２の試験測定装置。
【請求項４】
シリアル・データ・リンクの少なくとも１つのレーンに結合される試験測定装置において、特定リンク・トレーニング情報を選択する方法であって、
少なくとも１つの上記シリアル・データ・リンクから受けた制御データ値を記憶する処理と、
少なくとも１つの上記シリアル・データ・リンクについて新しく取り込まれた制御データ値を先に記憶された上記制御データ値に対して比較する処理と、
新しく取り込まれた上記制御データ値を、先に記憶された上記制御データ値と合致しない場合にのみ記憶する処理と
を具える方法。
【請求項５】
少なくとも１つの上記シリアル・データ・リンクについての新しく取り込まれた上記制御データ値が記憶された上記制御データ値と合致しない場合に、記憶された上記制御データ値を、少なくとも１つの上記シリアル・データ・リンクについての新しく取り込まれた上記制御データ値と交換する処理を更に具える請求項４による特定リンク・トレーニング情報を選択する方法。
【請求項６】
少なくとも１つの上記シリアル・データ・リンクから上記制御データ値が記憶された上記制御データ値と合致しない場合に、トリガ信号を生成する処理を更に具える請求項４又は５による特定リンク・トレーニング情報を選択する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、試験測定装置と、シリアル通信を試験、測定及び分析する方法に関する。
【背景技術】
【０００２】
情報技術や、普及しているオンライン・ソーシャル・メディアから、いわゆるクラウド・コンピューティング、モバイル・ゲーム、ストリーミング・ビデオ・オン・デマンド等に至るトレンドは、どれも、より高い、高レベルの通信ネットワーク・パフォーマンスに関する消費者の要求を増大させるのを助長するものである。このために、ネットークの運営者、オンライン・サービス・プロバイダ及び電子機器製造メーカの全てが、かつてない大容量のデータをユーザに配信するためのかつてない高い帯域幅を実現するネットワーク・プロトコルを開発するように動機付けられている。
【０００３】
多くの最新のシリアル・データ通信ネットワーク・プロトコルは、通常、ワイヤ又は光ファイバで互いにリンクされた２つのトランシーバを含む。これらリンクは、多くの場合、図１に描かれるように「全２重（full-duplex）」レーンを有する。１００Ｇｂｐｓイーサネットのような最新の高速プロトコルは、プロトコルがリンク・トレーニング・プロシージャ（procedure：手順）を特定し、このとき、２つのトランシーバが通信と、種々の設定を取り決めるプロセスに関与し、リンクを通して通信されるデータに関する帯域幅と信号インテグリティ（integrity）を最適化する。有り得るリンク・トレーニング・プロセスの一例については、例えば、米国特許公開第２０１３／０３４３４００号（２０１３年１２月２６日）参照。また、１００Ｇｂｐｓイーサネット規格のオリジナル・バージョンについては、ＩＥＥＥ８０２.３ｂａ−２０１０（その後の改定バージョンも）を参照。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許公開第２０１３／０３４３４００号明細書
【非特許文献】
【０００５】
【非特許文献１】「100ギガビット・イーサネット」の記事、Wikipedia、［online］、［２０１７年１月１７日検索］、インターネット<https://ja.wikipedia.org/wiki/100ギガビット・イーサネット>
【非特許文献２】「DPOJETデータ・シート」、テクトロニクス、［online］、［２０１７年１月１９日検索］、インターネット<http://jp.tek.com/datasheet/dpojet-datasheet-1>
【発明の概要】
【発明が解決しようとする課題】
【０００６】
エンジニアは、トレーニング中に発生する可能性のあるエラーをトラブル・シューティングし、エラーの原因を突き止めて修正するために、これらのネットワーク・リンクのトレーニング・セッションを迅速かつ簡単にモニタ及び分析できる必要がある。リンク・トレーニング・セッションのデバッグは、リンク・トレーニングの障害がどこにあるかを判断するのに、相互運用で問題解決が必要な場合（つまり、リンクの一方の側が第１のベンダー製のデバイスによって制御され、リンクの他方の側が第２のベンダー製のデバイスによって制御される場合）に、特に関心が持たれる。
【０００７】
本発明の実施形態は、従来技術のこれら及び他の制約に取り組むものである。
【課題を解決するための手段】
【０００８】
本発明は、例えば、以下のように記述しても良い。
【０００９】
本発明の概念１は、試験測定装置であって、
リンク・トレーニング情報を保持する複数のアナログ入力信号を受ける入力部と、
上記入力部に結合され、複数の上記アナログ入力信号から制御チャンネル・データを含む特定リンク・トレーニング情報を選択するリンク・トレーニング情報抽出部と
を具え、
上記リンク・トレーニング情報抽出部が、
制御チャンネル・データ値を記憶するメモリと、
上記アナログ入力信号からの制御チャンネル・データ値を記憶された上記制御チャンネル・データ値に対して評価するよう構成される比較部と、
上記アナログ入力信号からのチャンネル値が記憶された上記制御チャンネル・データ値と合致しない場合に、上記アナログ入力信号からの新しい制御チャンネル・データ値を上記メモリへ記憶させるループバック機関とを含んでいる。
【００１０】
本発明の概念２は、上記概念１による試験測定装置であって、上記情報抽出部が、上記アナログ入力信号からの上記制御チャンネル・データ値が記憶された制御チャンネル・データ値と合致しない場合に、上記アナログ入力信号からの制御チャンネル・データ値を出力する出力待ち行列を更に有している。
【００１１】
本発明の概念３は、上記概念２による試験測定装置であって、上記アナログ入力信号からの上記制御チャンネル・データ値が記憶された制御チャンネル・データ値と合致しない場合に、トリガ信号を生成するよう構成されるトリガ回路を更に具えている。
【００１２】
本発明の概念４は、上記概念３による試験測定装置であって、このとき、上記試験測定装置は、上記トリガ信号が生成された後に、複数の上記アナログ信号から生成されたデジタル化データを記憶するよう構成される。
【００１３】
本発明の概念５は、上記概念４による試験測定装置であって、上記トリガ信号が生成されたときに、上記トリガ回路が、記憶された上記デジタル化データにタイムスタンプを付けるよう構成される。
【００１４】
本発明の概念６は、上記概念２による試験測定装置であって、上記試験測定装置が特定チャンネルに関するリンク・トレーニング情報を受けている限り、特定チャンネルに関するトリガ信号を抑制するよう構成されるトリガ回路を更に具えている。
【００１５】
本発明の概念７は、上記概念３による試験測定装置であって、上記トリガ回路は、複数の上記アナログ入力信号が最初のリンク・トレーニング・フレーム又は最後のリンク・トレーニング・フレームを示すものを含む場合に、上記トリガ信号を生成するよう構成される。
【００１６】
本発明の概念８は、上記概念１による試験測定装置であって、記憶されたリンク・トレーニング・データのテーブル（表）を生成するよう構成されるリンク・トレーニング情報生成部を更に具えている。
【００１７】
本発明の概念９は、上記概念１による試験測定装置であって、上記装置は、リアルタイム・オシロスコープであり、上記リンク・トレーニング・データは、イーサネット・プロトコルに従ったものである。
【００１８】
本発明の概念１０は、上記概念１による試験測定装置であって、上記装置は、４チャンネル入力を有するリアルタイム・オシロスコープであり、上記４チャンネルのそれぞれは、４つの半二重レーンのデータにそれぞれ結合される。
【００１９】
本発明の概念１１は、シリアル・データ・リンクの少なくとも１つのレーンに結合される試験測定装置において特定リンク・トレーニング情報を選択する方法であって、上記方法は、
少なくとも１つの上記シリアル・データ・リンクから受けた制御データ値を記憶する処理と、
少なくとも１つの上記シリアル・データ・リンクについて新しく取り込まれた制御データ値を先に記憶された制御データ値に対して比較する処理と、
新しく取り込まれた上記制御データ値を、先に記憶された上記制御データ値と合致しない場合にのみ記憶する処理と
を具えている。
【００２０】
本発明の概念１２は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、記憶された上記制御データ値のテーブルを形成する処理を更に具えている。
【００２１】
本発明の概念１３は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、少なくとも１つの上記シリアル・データ・リンクについての新しく取り込まれた上記制御データ値が記憶された上記制御データ値と合致しない場合に、記憶された上記制御データ値を、少なくとも１つの上記シリアル・データ・リンクについての新しく取り込まれた上記制御データ値と交換する処理を更に具えている。
【００２２】
本発明の概念１４は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、少なくとも１つの上記シリアル・データ・リンクから上記制御データ値が記憶された上記制御データ値と合致しない場合に、トリガ信号を生成する処理を更に具えている。
【００２３】
本発明の概念１５は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、上記トリガ信号が生成された後に、少なくとも１つの上記シリアル・データ・リンクから生成されたデジタル化データをアクイジション・メモリ中に記憶する処理を更に具えている。
【００２４】
本発明の概念１６は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、上記トリガ信号が生成されたときに、記憶された上記デジタル化データにタイムスタンプを付ける処理を更に具えている。
【００２５】
本発明の概念１７は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、少なくとも１つの上記シリアル・データ・リンクから受けたデータが、最初のリンク・トレーニング・フレーム又は最後のリンク・トレーニング・フレームを示すものを含む場合に、トリガ信号を生成する処理を更に具えている。
【００２６】
本発明の概念１８は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、少なくとも１つの上記シリアル・データ・リンクの最初のものから受けたデータが、最初のシリアル・データ・リンクがリンク・トレーニングを完了したことを示すものを含む場合に、トリガ信号を生成する処理を更に具えている。
【００２７】
本発明の概念１９は、上記概念１１による特定リンク・トレーニング情報を選択する方法であって、上記装置は、イーサネット・プロトコルに従って送信される２つのレーンに結合されたリアルタイム・オシロスコープである。
【図面の簡単な説明】
【００２８】
【図１】図１は、本発明による実施形態によって分析される典型的なシリアル通信ネットワークのブロック図である。
【図２】図２は、本発明による実施形態に従った試験測定装置のブロック図である。
【図３】図３は、本発明による実施形態に従ったトリガ回路部分の詳細なブロック図である。
【図４】図４は、本発明による実施形態に従ったユーザ・インタフェース表示のスクリーン・ショットである。
【図５】図５は、本発明による実施形態に従ったリンク・トレーニング制御ウィンドウのスクリーン・ショットの例である。
【図６】図６は、本発明による実施形態に従った分析結果の表示の詳細図である。
【図７】図７は、係数アップデート要求に関する従来の制御チャンネル・データの例である。
【図８】図８は、ステータス・レポート応答に関する従来の制御チャンネル・データの例である。
【発明を実施するための形態】
【００２９】
１００Ｇｂｐｓイーサネット・ネットワークのような高速シリアル通信ネットワークにおけるリンク・トーニング・セッションを監視するための一般的な環境は、図１に示されており、これは、典型的なネットワーク１００の単一の２５Ｇｂｐｓレーンを示し、このとき、第１トランシーバ１１０には、送信（Ｔｘ）部１１２とレシーバ（Ｒｘ）部１１４とがあり、これらは、第２トランシーバ１２０の受信（Ｒｘ）部１２２及び送信（Ｔｘ）部１２４に、例えばワイヤによって、物理的にそれぞれ接続される。この構成では、ネットワークのこのレーンは全二重であり、これらネットワーク装置は、２つの「会話」を互いに同時に行うことができる。このレーン上のリンク・トレーニング・プロセスは、２つのトランシーバ１１０及び１２０の間のワイヤに、オシロスコープ１３０などの適切な試験測定装置を接続し、２つのデバイスによって送受信される信号を観察することによって監視できる。
【００３０】
伝統的に、リンク・トレーニング・プロセスは、まず、オシロスコープ１３０を使用して、リンク・トレーニング・プロセス中に通信された信号を取得し、続いて、取得後、取得したデータを特殊な分析ソフトウェアに渡すことによって分析されている。特に、この取得後分析技術は、リンク・トレーニング・プロセス中に交換される制御チャンネル情報を分析及び抽出するために使用されてきた。
【００３１】
しかし、この従来の、オシロスコープ内でデジタル化されたアナログ信号からのリンク・トレーニング制御チャンネル情報の取得後の抽出は、非常に時間がかかる。非常に短い時間であっても、デジタル化されたバージョンのデータを保存するには、大きなレコード長が必要となる。例えば、オシロスコープの最大サンプリングレート未満であっても４０ｍｓの時間範囲をカバーする１Ｇバイトのデジタル化された波形の取得及び後処理（例えば、フィルタ、補間、マーク、デコードなど）には、オシロスコープの現在のマルチコアＣＰＵを使って、５分以上かかる。例えば、１００Ｇｂのイーサネット・リンク・トレーニング・セッションは、完了するのに１桁多い時間（つまり、５００ｍｓ）かかることがあるので、従来の取得後分析を用いたこうしたセッションの分析には、１時間近くかかることが有り得る。さらに、これらの時間は全二重通信レーンの半分のみの分析を考慮している。リンク・トレーニング・セッションの完全なステータスを得るためには、複数全部のレーンを監視する必要があり、従来の方法を使用すると、必要な分析時間がさらに長くなる。
【００３２】
従来の後処理手法は、高機能検索及びマーク（Advanced Search and Mark）、バス・デコーダ（Bus Decoders）、ＤＰＯＪＥＴ（テクトロニクス社製のジッタ、タイミング及びアイ・ダイアグラム分析ツール）などのソフトウェア・ツールでマーキング、デコード、測定可能な波形を捕捉（キャプチャ）するのに、依然として大変有益なものではあるが、この後処理アプローチに必要な全体的な時間は、リンク・トレーニングの適切なデバッグ作業用としては、あまりにも長く、多くのユーザにとって非常に望ましくない可能性がある。
【００３３】
更に、伝統的な分析方法を使用して生成されたリンク・トレーニング制御チャンネル情報の大部分は冗長であり、オシロスコープのユーザに情報の過剰な負荷を引き起こすことに留意されたい。例えば、１つの１００Ｇｂｐｓイーサネット・レーンは、１つのリンク・トレーニング・セッション中に５００万以上の制御チャンネル・データ・ブロックを送信することがあり、人間のユーザがマニュアルで閲覧するにはあまりにも多くのレコードである。
【００３４】
これら過剰な分析時間及び情報過負荷の問題に対処するために、図２は、テクトロニクス社によって製造されたＤＰＯ７００００ＳＸシリーズ・オシロスコープのような試験測定装置２００の一実施例のブロック図を示し、これは、アナログ信号からリンク・トレーニング制御チャンネル情報を抽出して分析する新しいリアルタイムの方法を可能にする。
【００３５】
オシロスコープ２００には、フロント・エンド部２１０（例えば、プリアンプ）への４つのアナログ入力チャンネルＣＨ１〜ＣＨ４  ２０１〜２０４がある。フロント・エンド部２１０は、入力信号２０１〜２０４について増幅と信号調整（signal conditioning）を行い、入力信号２０１〜２０４を２つのアナログ信号パス２１１、２１２に分ける。一方のアナログ信号パス２１１は、複数のアナログ信号２１１のデジタル化のために、アナログ・デジタル変換（ＡＤＣ）部２２０への経路がとられる。ＡＤＣ部２２０の複数の出力信号は、続いて、アクイジション・メモリに記憶するために、デマルチプレクサ（demux）部２３０へ送られる。デマルチプレクサ部２３０は、既知の方法に従って、トリガ論理回路部２６０からのトリガ信号に応答して、ＡＤＣ部２２０からのデジタル化信号を、表示スクリーン上で表示するために、アクイジション・メモリ２７０へと取り込ませる。第２のアナログ信号パス２１２は、トリガ回路２４０、２５０、２６０への経路がとられる。最初、アナログ入力信号２０１〜２０４は、等化処理アナログ・バッファ部２４０へ渡される。バッファ部２４０は、高速な信号２１２の等化処理とバッファ処理を行い、高速な信号２１２は、次にシリアル・トリガＦＰＧＡ２５０へ送られる。以下で更に述べるように、シリアル・トリガ回路２５０は、データ・ストリーム２１２から、分析及び表示のために、リンク・トレーニング情報を抽出すると共に、もしある設定変更可能な基準が満たされたことを検出すると、トリガ出力信号２５１を生成するようにもして良い。トリガ信号２５１をトリガ論理回路２６０に入力して、既知の方法によって、他のトリガ・イベント組み合わせ、オシロスコープ２００が波形にトリガをかけてメモリに取込むための総合的なトリガ信号２６１を生成するようにしても良い。
【００３６】
図３は、図２のシリル・トリガ回路２５０の例示的な実施形態の構造のブロック図を示す。シリアル・トリガ回路２５０は、アナログ・シリアル・データ・ストリーム２４１〜２４４の合計４チャンネルを入力として受け入れる。各チャンネルは、シリアライザ・デシリアライザ（ＳｅｒＤｅｓ）デジタイザ部３１１〜３１４へそれぞれ入力される。各ＳｅｒＤｅｓデジタイザ部３１１〜３１４は、連続的にアナログ・データ・ストリーム２４１〜２４４をサンプリングして、デジタル・データ・ストリームへと変換し、これらは、続いて、対応するフレーム・マーカ検出部３２１〜３２４によって連続的に監視（モニタ）される。各フレーム・マーカ検出部が制御チャンネル情報の開始部分を特定すると、対応するパターン比較部３３１〜３３４へと渡される。各パターン比較部３３１〜３３４は、最初に、差分マンチャスタ符号化制御チャンネル・データ（differential Manchester encoded 制御チャンネル・データ）を、図７のテーブルや図８のテーブ中に夫々示されるもののように、１６ビット係数アップデート（coefficient update）と１６ビット・ステータス・レポート値（status report values）へとデコードし、続いて、これらは、記憶されたパターンと比較される。
【００３７】
各パターン比較部３３１〜３３４は、続いて、デコードされたデータを記憶されたパターンと連続的に比較する。もしデータと記憶パターンが合致しなければ、データは出力待ち行列（queue：キュー）に蓄積される。言い換えると、各パターン比較部３３１〜３３４が、デコード・データ中に遷移があるのを見つけた場合、データは、いつ変化が生じたかを記録する最新のタイムスタンプと共に、それぞれの出力待ち行列３４１〜３４４に蓄積される。重要なことは、各パターン比較部３３１〜３３４は、それぞれのループバック・パス３３５〜３３８を通して、記憶パターンを新しいデコード・データ値にアップデートも行うことである。よって、データ値中の遷移のみがメモリに記憶される。データ値中の遷移が検出された場合に、各パターン・デコード及び比較部３３１〜３３４が、統合（consolidated）論理回路部３５０へ信号を出力するようにしても良く、これは、次にトリガ信号２５１を生成しても良い。各パターン・デコード及び比較部３３１〜３３４は、また、統合論理回路部３５０へ「リンク・トレーニング状態」を出力するように構成されても良い。このリンク・トーニング状態は、各パターン・デコード及び比較ブロック３３１〜３３４が制御チャンネル・データを受けているときは常にアサートされる。制御チャンネル・データが引き続き受信される限り、統合論理回路３５０への出力信号はアサートされたままである。もし制御チャンネル・データが止まり、プリセット・タイマが満了すると、「リンク・トレーニング状態」はデアサート状態（deasserted state）へと戻る。これによって、論理回路部３５０が、任意の特定チャンネルにおける最初又は最後のリンク・トレーニング・フレームにおいて、トリガ出力信号２５１を出力するよう構成可能になる。
【００３８】
図２及び３は、シリアル・トリガ回路２５０がＦＰＧＡで実現されるとして示しているが、これは、単に１つの実施形態に過ぎない。シリアル・トリガ回路は、これに代えて、ＡＳＩＣ、プログラマブル・ロジック・デバイス、ディスクリート回路、ファームウェア、ソフトウェア、又は、これらの任意の組み合わせで実現されても良い。
【００３９】
図２及び３に示されるトリガ信号パスの構造を用いて、オシロスコープ２００は、トレーニング・フレーム・マーカと、それに続くネゴシエーション要求／応答データ値とのパターン・マッチングにより、全二重レーンの両側を表す複数のアナログ信号を連続的にリアルタイムで監視することによって、リンク・トレーニング・ネゴシエーションの完全な履歴を捕捉できる。入力信号のデジタル化したものをパターンに対して比較し、現在の比較パターンを合致しないこれらの制御チャンネル・データ値のみを記憶することによって、データ値中の遷移のみが記憶される。これは、ユーザに提示される必要のあるデータの量を、１レーン当たり約５００万から５０個の制御チャンネル・データへと５桁低減するが、それにもかかわらず、リンク・トレーニング・ネゴシエーションの実質的に完全な履歴を保持する。
【００４０】
出力待ち行列３４１〜３４４に蓄積された遷移データ値は、オシロスコープ２００において、ソフトウェアでアクセス可能である。リンク・トレーニング・データは、リアルタイムに、分析及びフィルタ処理されるか、又は、ふるいにかけられる（簡略化される）ので、冗長でないデータだけを含む結果のテーブルが、リンク・トレーニング・ネゴシエーションが完了するとほぼ直ぐにユーザに提示される。従って、５００ｍｓの長さの１００Ｇｂｐｓイーサネット・ネゴシエーションに関して、従来の取得後分析法を用いて必要とされる約1時間のリンク・トレーニング分析時間と比較して、この新しい分析方法の実施形態は、ユーザに数秒でデータを提示できる。
【００４１】
更に、１台の４チャンネル・オシロスコープ２００で２つの全二重レーンを監視でき、テクトロニクス社製のUltraSyncのような同期技術を用いて、２台のこうしたオシロスコープ２００を同期させて一緒に利用できるので、例えば、１００Ｇｂｐｓイーサネット・リンク・トレーニング・セッションの４レーン全部を監視でき、全セッションに関する結果を数秒で提供できる。こうした迅速なフィードバックは、リンク・トレーニングのデバックを簡素化するのに効果的である。
【００４２】
図４は、図２のオシロスコープ２００用のリンク・トレーニング情報の分析及び抽出結果を表示するためのユーザ・インタフェース表示例４００を示す。表示４００の上側には、波形部分４１０及び４１５があり、リンク・トレーニング・データが抽出された実際のアナログ信号のトリガされた表示を示す。表示４００の下側は、結果テーブル部分４２０を示し、オシロスコープ２００によってリアルタイムに抽出、デコード及びフィルタ処理されたリンク・トレーニング制御チャンネル情報を示す。
【００４３】
図５は、本発明のある実施形態によるリンク・トレーニング制御ウィンドウ５００のスクリーン・ショットの実施例の例である。この例では、監視するレーンを１つ以上選択できる。また、ユーザは、フレーム・マーカ、制御チャンネル、又はトレーニング・データにマークを付けるか選択できる。
【００４４】
図６は、結果テーブル（Results Table）４２０の結果テーブルの例示的な実施形態の詳細図を示す。図６の結果テーブル４２０は、データの１レーンに関する複数の結果の１つのタブだけを示している。更なるレーンについては、追加のタブ上に表示できる。結果テーブル４２０をユーザが読むのをもっと簡単にするため、テーブルは、例えば、一方のトランシーバが、他方のトランシーバからの要求に応じた係数アップデート値の設定に失敗したというような場合に、ある複数の制御チャンネル・データ値を色分けしたり、あるいは、強調表示しても良い。ここで省略は、次の通りである。
Inc: Increment（増加）,   Dec: Decrement（現象）,   Int: Initialize（初期化）, 
C [+１]: Coefficient [+１],   C [０]: Coefficient [０],   C [-１]: Coefficient [-１]
【００４５】
上述のように、図２及び３のシリアル・トリガ回路２５０は、リンク・トレーニングを監視する過程では、リンク・トレーニング・プロセス中に生じるある特定のイベントに応答してトリガ信号を生成しても良い。例えば、図２のオシロスコープ２００は、オプションで、制御チャンネル・データが変化するときはいつも、通常のやり方で、デジタル化波形を捕捉するようにトリガされても良い。特に、「高速フレーム」（セグメント化アクイジション・メモリ）ユーティリティを有するオシロスコープ２００は、固定長のフレーム・マーカ／制御チャンネル・ブロック／トレーニング・データ・シーケンスのデジタル化波形の複数の短いレコードを捕捉するのに利用でき、これらは、ＤＰＯＪＥＴ又は他のスコープ分析ツールを使用して分析し、アイ・クロージャー、ジッターなどの量を決定するために、これら波形セクションの輪郭を描ように通常のやり方でマークが付けられ、デコードされても良い。実際、ＤＰＯＪＥＴの測定は、その時点での動作における実際のプリエンファシスや他の信号特性を与える特定のトランスミッタ係数を測定するためのマークや波形カーソルを用いることによって、単一のリンク・トレーニング（例えば、ＰＲＢＳ）データ・セクションに制限できる。オシロスコープ上で実現される場合、特定のリンク・トレーニング・イベント後の信号特性と、リンク・トレーニング中のイベントの論理的なシーケンスの両方の詳細な分析を提供するのは、信号波形のリアルタイムの捕捉と、制御チャンネル係数のアップデート要求及びステータス・レポート応答との組み合わせであることに留意されたい。
【００４６】
制御チャンネル・カウントダウン値がゼロに達し、所与のレーンのリンク・トレーニングが完了したことを示す場合のような、制御チャンネル・データ内で生じる更なるイベントも、オシロスコープ２００をトリガするのに利用できる。制御チャンネル・フレーム・マーカの最後の発生についてトリガをかけたり、そのリンク・トレーニングが完了した最初のレーンについてトリガをかけたり、全てのチャンネルについてトレーニングが完了した場合にのみトリガをかけたり、又は、特定のレーンで制御チャンネル係数が変化した場合やいくつかのレーンが要求する係数の変化が履行されないままリンク・トレーニングが完了した場合にトリガをかけたりというような、更なるトリガ基準を利用しても良い。
【００４７】
更に、所与のネットワーク・プロトコルの仕様によっていくつかのリンク・トレーニング制御チャンネル・データの遷移を不正に与えて、これら不正なイベント（illegal events）を用いてオシロスコープにトリガをかけたり、結果テーブル中で強調表示したりして、ユーザにこの違反を知らせても良い。
【００４８】
このようにして、基本的なリンク・トレーニング・ネゴシエーション履歴（トランスミッタ係数のアップデート及びステータスに関する要求及び応答）と、リンク・トレーニング（例えば、ＰＲＢＳ）波形データの両方を、リンク・トレーニング・プロセス自身が完了するのにかかる時間よりそれほど多くない程度で、オシロスコープ２００によって正確に追跡及び記録でき、それによって、分析時間とユーザが調査しなければならないデータ量を大幅に低減し、高速シリアル・ネットワークのデバッグ作業をずっと実行容易なものにする。
【００４９】
複数の実施例
本願で開示した技術の例示的な実施例を以下で示す。この技術の実施形態は、以下に記述する１つ以上の実施例と、任意の組み合わせを含んでも良い。
【００５０】
実施例１としては、リンク・トレーニング情報を保持する複数のアナログ入力信号を受ける入力部と、上記入力部に結合され、複数の上記アナログ入力信号から制御チャンネル・データを含む特定リンク・トレーニング情報を選択するリンク・トレーニング情報抽出部とを具える試験測定装置があり、上記リンク・トレーニング情報抽出部は、制御チャンネル・データ値を記憶するメモリと、上記アナログ入力信号からの制御チャンネル・データ値を記憶された上記制御チャンネル・データ値に対して評価するよう構成される比較部と、上記アナログ入力信号からのチャンネル値が記憶された上記制御チャンネル・データ値と合致しない場合に上記アナログ入力信号からの新しい制御チャンネル・データ値を上記メモリへ記憶させるループバック機関とを含んでいる。
【００５１】
実施例２としては、実施例１の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、このとき、上記情報抽出部が、上記アナログ入力信号からの上記制御チャンネル・データ値が記憶された制御チャンネル・データ値と合致しない場合に、上記アナログ入力信号からの制御チャンネル・データ値を出力する出力待ち行列を更に有している。
【００５２】
実施例３としては、実施例２の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、上記アナログ入力信号からの上記制御チャンネル・データ値が記憶された制御チャンネル・データ値と合致しない場合に、トリガ信号を生成するよう構成されるトリガ回路を更に具えている。
【００５３】
実施例４としては、実施例３の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、このとき、上記試験測定装置は、上記トリガ信号が生成された後に複数の上記アナログ信号から生成されたデジタル化データを記憶するよう構成される。
【００５４】
実施例５としては、実施例４の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、このとき、上記トリガ信号が生成されたときに、上記トリガ回路が、記憶された上記デジタル化データにタイムスタンプを付けるよう構成される。
【００５５】
実施例６としては、実施例３の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、上記試験測定装置が特定チャンネルに関するリンク・トレーニング情報を受けている限り、上記特定チャンネルに関するトリガ信号を抑制するよう構成されるトリガ回路を更に具えている。
【００５６】
実施例７としては、実施例３の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、このとき、上記トリガ回路は、複数の上記アナログ入力信号が最初のリンク・トレーニング・フレーム又は最後のリンク・トレーニング・フレームを示すものを含む場合に、上記トリガ信号を生成するよう構成される。
【００５７】
実施例８としては、実施例１〜７の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、記憶されたリンク・トレーニング・データのテーブル（表）を生成するよう構成されるリンク・トレーニング情報生成部を更に具えている。
【００５８】
実施例９としては、実施例１〜８の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、このとき、上記装置は、リアルタイム・オシロスコープであり、上記リンク・トレーニング・データは、イーサネット・プロトコルに従ったものである。
【００５９】
実施例１０としては、実施例１〜９の上記試験測定装置、又は、本願に記述した他の例示的な試験測定装置があり、このとき、上記装置は、４チャンネル入力を有するリアルタイム・オシロスコープであり、上記４チャンネルのそれぞれは、４つの半二重レーンのデータにそれぞれ結合される。
【００６０】
実施例１１は、シリアル・データ・リンクの少なくとも１つのレーンに結合される試験測定装置において特定リンク・トレーニング情報を選択する方法に関し、上記方法は、少なくとも１つの上記シリアル・データ・リンクから受けた制御データ値を記憶する処理と、少なくとも１つの上記シリアル・データ・リンクについて新しく取り込まれた制御データ値を先に記憶された制御データ値に対して比較する処理と、新しく取り込まれた上記制御データ値を、先に記憶された上記制御データ値と合致しない場合にのみ記憶する処理とを具えている。
【００６１】
実施例１２は、実施例１１の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、記憶された上記制御データ値のテーブルを形成する処理を更に具えている。
【００６２】
実施例１３は、実施例１１〜１２の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、少なくとも１つの上記シリアル・データ・リンクについての新しく取り込まれた上記制御データ値が記憶された上記制御データ値と合致しない場合に、記憶された上記制御データ値を、少なくとも１つの上記シリアル・データ・リンクについての新しく取り込まれた上記制御データ値と交換する処理を更に具えている。
【００６３】
実施例１４は、実施例１１〜１３の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、少なくとも１つの上記シリアル・データ・リンクについての新しく取り込まれた上記制御データ値が記憶された上記制御データ値と合致しない場合に、トリガ信号を生成する処理を更に具えている。
【００６４】
実施例１５は、実施例１１〜１４の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、上記トリガ信号が生成された後に、少なくとも１つの上記シリアル・データ・リンクから生成されたデジタル化データをアクイジション・メモリ中に記憶する処理を更に具えている、を更に具えている。
【００６５】
実施例１６は、実施例１１〜１５の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、上記トリガ信号が生成されたときに、記憶された上記デジタル化データにタイムスタンプを付ける処理を更に具えている。
【００６６】
実施例１７は、実施例１１〜１６の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、少なくとも１つの上記シリアル・データ・リンクから受けたデータが、最初のリンク・トレーニング・フレーム又は最後のリンク・トレーニング・フレームを示すものを含む場合に、トリガ信号を生成する処理を更に具えている。
【００６７】
実施例１８は、実施例１１〜１７の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、少なくとも１つの上記シリアル・データ・リンクの最初のものから受けたデータが、最初のシリアル・データ・リンクがリンク・トレーニングを完了したことを示すものを含む場合に、トリガ信号を生成する処理を更に具えている。
【００６８】
実施例１９は、実施例１１〜１８の試験測定装置において特定リンク・トレーニング情報を選択する方法、又は、本願に記述した他の例示的な方法に関し、このとき、上記装置は、イーサネット・プロトコルに従って送信される２つのレーンに結合されたリアルタイム・オシロスコープである。
【００６９】
本願で用いた用語「コントローラ」及び「プロセッサ」は、マイクロプロセッサ、マイクロコンピュータ、ＡＳＩＣ及び専用ハードウェア・コントローラを含むことを意図している。本発明の１つ以上の態様は、１つ以上のコンピュータ（モニタリング・モジュールを含む）又は他のデバイスによって実行される、１つまたは複数のプログラム・モジュールなどのコンピュータ利用可能データ及びコンピュータ実行可能命令で実施することができる。一般に、プログラム・モジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含み、これらは、コンピュータまたは他の電子デバイス内のプロセッサによって実行されるときに、特定のタスクを実行するか、又は、特定の抽象データ型を実現する。
【００７０】
コンピュータ実行可能命令は、ハードディスク、光ディスク、リムーバブル記憶媒体、ソリッド・ステートメモリ、ＲＡＭ等のような非一時的なコンピュータ可読媒体に格納されてもよい。当業者には理解されるように、上記プログラム・モジュールの機能は、種々の実施形態において、要求に応じて、組み合わせたり、分散させることができる。更に、上記機能は、集積回路、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）などのようなファームウェア又はハードウェアの等価物で、全体又は一部分が実現されてもよい。本発明の１つ又は複数の態様をより効果的に実施するために特定のデータ構造を利用しても良く、こうしたデータ構造は、本願に記載されたコンピュータ実行可能命令及びコンピュータ使用可能データの範囲内にあると考えられる。
【００７１】
本発明の好ましい実施形態において、本発明の原理を説明し、図示してきたが、本発明は、こうした原理から逸脱することなく構成及び詳細を変更できることは明らかである。
【符号の説明】
【００７２】
１００  シリアル通信ネットワーク
１１０  第１トランシーバ
１１２  送信部
１１４  受信部
１２０  第２トランシーバ
１２２  送信部
１２４  受信部
１３０  オシロスコープ
２００  オシロスコープ
２０１  アナログ入力チャンネル
２０２  アナログ入力チャンネル
２０３  アナログ入力チャンネル
２０４  アナログ入力チャンネル
２１０  プリアンプ
２１１  第１アナログ信号パス
２１２  第２アナログ信号パス
２２０  ＡＤＣ
２３０  デマルチプレクサ（demux）部
２４０  等化処理アナログ・バッファ
２４１  アナログ・シリアル・データ・ストリーム
２４２  アナログ・シリアル・データ・ストリーム
２４３  アナログ・シリアル・データ・ストリーム
２４４  アナログ・シリアル・データ・ストリーム
２５０  シリアル・トリガ回路
２５１  トリガ出力信号
２６０  トリガ論理回路
２６１  総合的なトリガ信号
２７０  アクイジション・メモリ
３１１  シリアライザ・デシリアライザ（SerDes）デジタイザ部
３１２  シリアライザ・デシリアライザ（SerDes）デジタイザ部
３１３  シリアライザ・デシリアライザ（SerDes）デジタイザ部
３１４  シリアライザ・デシリアライザ（SerDes）デジタイザ部
３２１  フレーム・マーカ検出部
３２２  フレーム・マーカ検出部
３２３  フレーム・マーカ検出部
３２４  フレーム・マーカ検出部
３３１  パターン比較部
３３２  パターン比較部
３３３  パターン比較部
３３４  パターン比較部
３４１  出力待ち行列
３４２  出力待ち行列
３４３  出力待ち行列
３４４  出力待ち行列
３５０  統合論理回路部
４００  ユーザ・インタフェース表示
４１０  上側波形部分
４１５  下側波形部分
４２０  結果テーブル部
５００  リンク・トレーニング制御ウィンドウ
７００  テーブル
８００  テーブル
【図１】
2017142238.tif 000003
【図２】
2017142238.tif 000004
【図３】
2017142238.tif 000005
【図４】
2017142238.tif 000006
【図５】
2017142238.tif 000007
【図６】
2017142238.tif 000008
【図７】
2017142238.tif 000009
【図８】
2017142238.tif 000010
【外国語明細書】
【発明の名称】Test and measurement instrument and method of selecting certain link training information
【技術分野】
【０００１】
This invention relates to a test and measurement instrument and a method for testing, measuring, and analyzing serial communications.
【背景技術】
【０００２】
Information technologies and trends, from pervasive online social media, to so-called cloud computing, to mobile gaming, to streaming video on-demand, as well as others, are all helping to drive ever-increasing consumer demands for higher and higher levels of communication network performance. Accordingly, network operators, online service providers, and electronics manufacturers are all motivated to develop network protocols that achieve ever-higher bandwidth to deliver ever-larger amounts of data to users.
【０００３】
Many contemporary serial data communication network protocols generally include two transceivers linked together by wire or optical fiber. These links often comprise “full-duplex” lanes, as depicted in FIGURE 1. Modern high-speed protocols, such as 100 Gbps Ethernet, operate at such high speeds that the protocols specify a link training procedure, in which the two transceivers engage in communication and a process of negotiating various settings to optimize the bandwidth and signal integrity for the data communicated over the link. See, e.g., U.S. Pat. App. Pub. No. 2013/0343400 (Dec. 26, 2013), for one example of a possible link training process. See also IEEE 802.3ba-2010 for the original version of the 100Gbs Ethernet standard, as well as subsequent revised versions.
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許公開第２０１３／０３４３４００号明細書
【非特許文献】
【０００５】
【非特許文献１】「100ギガビット・イーサネット」の記事、Wikipedia、［online］、［２０１７年１月１７日検索］、インターネット<https://ja.wikipedia.org/wiki/100ギガビット・イーサネット>
【非特許文献２】「DPOJETデータ・シート」、テクトロニクス、［online］、［２０１７年１月１９日検索］、インターネット<http://jp.tek.com/datasheet/dpojet-datasheet-1>
【発明の概要】
【発明が解決しようとする課題】
【０００６】
Engineers need to be able to quickly and easily monitor and analyze these network link training sessions to troubleshoot any errors that may occur during the training, and to pinpoint and correct the source of the error. Debugging link training sessions is of particular interest when interoperable solutions are needed (that is, when one end of the link is controlled by a device made by a first vendor, and the other end of the link is controlled by a device made by a second vendor) to determine where a link training fault may lie.
【０００７】
Embodiments of the invention address these and other limitations of the prior art.
【課題を解決するための手段】
【０００８】
The present invention may be described as below for example.
【０００９】
A concept 1 of the present invention is a test and measurement instrument, comprising:
inputs for receiving a plurality of analog input signals carrying link training information; and
a link training information extractor coupled to the inputs and structured to select particular link training information from the plurality of analog signals, the particular link training information including control channel data, the information extractor including:
memory to store control channel data values, 
a comparator structured to evaluate control channel values from the analog input signals against the stored control channel values, and
a loopback facility structured to store new control channel values from the analog input signals into the memory when channel values from the analog input signals do not match the stored control channel data values.
【００１０】
A concept 2 of the present invention is the test and measurement instrument according to the concept 1, in which the information extractor further comprises an output queue structured to output control channel values from the analog input signals when the control channel values from the analog input signals do not match stored control channel data values. 
【００１１】
A concept 3 of the present invention is the test and measurement instrument of the concept 2, further comprising trigger circuitry structured to generate a trigger signal when the control channel values from the analog input signals do not match stored control channel data values.
【００１２】
A concept 4 of the present invention is the test and measurement instrument of the concept 3, wherein the test and measurement instrument is structured to store digitized data created from the plurality of analog signals after the trigger signal is generated.  
【００１３】
A concept 5 of the present invention is the test and measurement instrument of the concept 4, wherein the trigger circuitry is structured to timestamp the stored digitized data when the trigger signal is generated.
【００１４】
A concept 6 of the present invention is the test and measurement instrument of the concept 2, further comprising trigger circuitry structured to suppress a trigger signal for a particular channel so long as the test and measurement instrument is receiving link training information for the particular channel.
【００１５】
A concept 7 of the present invention is the test and measurement instrument of the concept 3, wherein the trigger circuitry is structured to generate the trigger signal when the plurality of analog input signals include an indication of a first link training frame or a last link training frame.
【００１６】
A concept 8 of the present invention is the test and measurement instrument according to the concept 1, further comprising a link training information generator structured to create a table of stored link training data. 
【００１７】
A concept 9 of the present invention is the test and measurement instrument according to the concept 1 in which the instrument is a RealTime oscilloscope and in which the link training data accords to an Ethernet protocol.
【００１８】
A concept 10 of the present invention is the test and measurement instrument according to the concept 1 in which the instrument is a RealTime oscilloscope having a four-channel input, in which each of the four channels is respectively coupled to four half-duplex lanes of data.
【００１９】
A concept 11 of the present invention is a method of selecting certain link training information in a test and measurement instrument coupled to at least one lane of a serial data link, the method comprising:
storing control data values received from the at least one serial data link;
comparing newly acquired control data values about the at least one serial data link to the previously stored control data values; and
storing the newly acquired control data values only when they do not match the previously stored control data values.
【００２０】
A concept 12 of the present invention is the method of selecting certain link training information according to the concept 11, further comprising building a table of the stored control data values.
【００２１】
A concept 13 of the present invention is the method of selecting certain link training information according to the concept 11, further comprising replacing the stored control data values with the newly acquired control data values about the at least one serial data link when the newly acquired control data values about the at least one serial data link does not match the stored control data values.
【００２２】
A concept 14 of the present invention is the method of selecting certain link training information according to the concept 11, further comprising generating a trigger signal when the control channel values from the at least one serial data link do not match stored control channel data values.
【００２３】
A concept 15 of the present invention is the method of selecting certain link training information according to the concept 11, further comprising storing digitized data created from the at least one serial data link in an acquisition memory after the trigger signal is generated.  
【００２４】
A concept 16 of the present invention is the method of selecting certain link training information according to the concept 11, further comprising timestamping the stored digitized data when the trigger signal is generated.
【００２５】
A concept 17 of the present invention is the method of selecting certain link training information according to the concept 11, further comprising generating a trigger signal when received data from the at least one serial data link includes an indication of a first link training frame or a last link training frame.
【００２６】
A concept 18 of the present invention is the method of selecting certain link training information according to the concept 11, further comprising generating a trigger signal when received data from a first of the at least one serial data links includes an indication that the first serial data link has finished link training.
【００２７】
A concept 19 of the present invention is the method of selecting certain link training information according to the concept 11, in which the instrument is a RealTime oscilloscope coupled to two lanes of data transmitted according to an Ethernet protocol.
【図面の簡単な説明】
【００２８】
【図１】FIGURE 1 is a block diagram of a typical serial communications network that is analyzed by certain implementations according to the present invention.
【図２】FIGURE 2 is a block diagram of a test and measurement instrument in accordance with certain implementations according to the present invention.
【図３】FIGURE 3 is a detailed block diagram of a portion of trigger circuitry in accordance with certain implementations according to the present invention.
【図４】FIGURE 4 is a screenshot of a user interface display in accordance with certain implementations according to the present invention.
【図５】FIGURE 5 is an example of a screen shot of a Link Training Control Window in accordance with certain implementations according to the present invention.
【図６】FIGURE 6 is a detailed illustration of a display of analysis results in accordance with certain implementations according to the present invention.
【図７】FIGURE 7 is an example of conventional control channel data concerning coefficient update requests.
【図８】FIGURE 8 is an example of conventional control channel data concerning status report responses.
【発明を実施するための形態】
【００２９】
The general environment for monitoring a link training session in a high-speed serial communications network, such as a 100Gbps Ethernet network, is depicted in FIGURE 1, which illustrates a single 25 Gbps lane of a typical network 100 in which a first transceiver 110 has a transmit (Tx) portion 112 and a receive (Rx) portion 114 that are physically connected, respectively, to a receive (Rx) portion 122 and a transmit (Tx) portion 124 of a second transceiver 120, e.g., by wire. In this configuration, this lane of the network is full-duplex, and the network devices are able to carry on two simultaneous “conversations” with each other. A link training process on this lane may be monitored by connecting an appropriate test and measurement instrument, such as an oscilloscope 130, to the wires between the two transceivers 110 and 120 and observing the signals being sent and received by the two devices.
【００３０】
Traditionally, the link training process has been analyzed by first using the oscilloscope 130 to acquire the signals that are communicated during the link training process, then, post-acquisition, passing this acquired data to specialized analysis software. In particular, this acquire-then-analyze technique has been used to analyze and extract the Control Channel information that is exchanged during the link training process.
【００３１】
However, this traditional post-acquisition extraction of Link Training Control Channel information from a digitized analog signal in an oscilloscope is very time consuming. Large record lengths are needed to store the digitized version of the data, even for a very short time spans. For example, acquiring and post-processing (e.g. filter, interpolate, mark, decode, etc.) a 1 Gbyte digitized waveform covering a 40 ms time span, even at less than the maximum sampling rate of the oscilloscope, can take 5 minutes or more, using contemporary multi-core CPUs in an oscilloscope. Since, for example, 100Gb Ethernet Link Training sessions may take up to an order of magnitude more time to complete−i.e., 500ms−analysis of such a session using the traditional post-acquisition analysis may take close to an hour. Moreover, these times reflect the analysis of only half of a full duplex communication lane. Multiple complete lanes may need to be monitored to give a complete status of a Link Training session, which further increases the required analysis time using traditional methods.
【００３２】
Although the traditional post-processing approach is still very valuable to capture waveforms that can be marked, decoded, and measured by software tools such as Advanced Search and Mark, Bus Decoders, and DPOJET (a jitter, timing, and eye diagram analysis tool made by Tektronix, Inc.), the overall time required for this post-processing approach is just too great for reasonable Link Training debugging tasks, and can be highly undesirable for many users. 
【００３３】
Furthermore, it is noted that the vast majority of the Link Training Control Channel information produced using the traditional analysis method is redundant, causing information overload for the oscilloscope user. For example, a single 100 Gbps Ethernet lane may transmit over 5 million control channel data blocks during a single link training session−far too many records for a human user to manually view.
【００３４】
To address these problems of excessive analysis time and information overload, FIGURE 2 illustrates a block diagram of one example embodiment of a test and measurement instrument 200, such as a DPO70000SX series oscilloscope manufactured by Tektronix, Inc., that enables a new real-time method for extracting and analyzing Link Training Control Channel information from analog signals.
【００３５】
The oscilloscope 200 has four analog input channels CH1-CH4 201-204 into a front end block 210, e.g., a preamplifier. The front end block 210 performs amplification and signal conditioning on the input signals 201-204, and splits the input signals 201-204 into two analog signal paths 211, 212. One analog signal path 211 is routed to an analog-to-digital conversion (ADC) block 220 for digitizing of the analog signals 211.  The outputs of the ADC block 220 are then routed to a demultiplexer (demux) block 230 for storage in acquisition memory 270.  The demux block 230, in response to a trigger signal from a trigger logic block 260, acquires the digitized signals from the ADC block 220 into the acquisition memory 270 for display on a display screen, according to known methods. The second analog signal path 212 is routed to trigger circuitry 240, 250, 260. First, the analog input signals 201-204 are passed to an equalizing analog buffer block 240. The buffer block 240 performs equalization and buffering of the high-speed signals 212 which are then routed to a serial trigger FPGA 250.  As described further below, the serial trigger circuit 250 extracts link training information from the data stream 212 for analysis and display, and may also generate a trigger output signal 251 if it detects that certain configurable criteria are met. The trigger signal 251 may be input to the trigger logic circuit 260 to be combined with other trigger events, according to known methods, to produce an overall trigger signal 261 for causing the oscilloscope 200 to trigger and acquire a waveform into memory.
【００３６】
FIGURE 3 illustrates a block diagram of the structure of an example embodiment of the serial trigger circuit 250 of FIGURE 2. The serial trigger circuit 250 accepts as inputs the total of four channels of analog serial data streams 241-244. Each channel is input, respectively, to a Serializer-Deserializer (SerDes) digitizer block 311-314. Each SerDes digitizer block 311-314 continuously samples the analog data streams 241-244 to convert into digital data streams, which are then continuously monitored by the corresponding frame marker detector 321-324.  Once each frame marker detector locates the start of the control channel information, it is passed on to the corresponding pattern compare block 331-334. Each pattern compare block 331-334 first decodes the differential Manchester encoded control channel data to the 16-bit coefficient update and 16-bit status report values, such as those shown in table 700 in FIGURE 7 and table 800 in FIGURE 8, respectively, which are then compared to a stored pattern.
【００３７】
Each pattern compare block 331-334 then continuously compares the decoded data to the stored pattern.  If the data and the stored pattern do not match, the data is stored in the output queue.  In other words, when each pattern compare block 331-334 finds that there has been a transition in the decoded data, the data is stored in the respective Output Queue 341-344, along with the current timestamp to record when the change occurred. Importantly, each pattern compare block 331-334 also updates the stored pattern to the new decoded data value, through the respective loopback path 335-338.  Thus, only the transitions in the data values are stored to memory.  When a transition in the data values is detected, each pattern decode and compare block 331-334 may also output a signal to a consolidated logic block 350, which may then generate the trigger output signal 251.  Each pattern decode and compare block 331-334 can also be configured to output a “link training state” to the consolidated logic block 350 also.  This link training state is asserted whenever each pattern decode and compare block 331-334 is receiving any control channel data.  As long as control channel data continues to be received the output to the consolidated logic 350 stays asserted.  If the control channel data stops and a preset timer expires then the “link training state” returns to a deasserted state.  This allows the logic block 350 to be configured to generate the trigger output signal 251 on the first or last link training frame on any specified channel.
【００３８】
Although FIGURES 2 and 3 show the serial trigger circuit 250 as being implemented in an FPGA, this is merely one embodiment. The serial trigger circuit may alternatively be implemented in an ASIC, a programmable logic device, discrete circuitry, firmware, software, or a combination of any of these.
【００３９】
With the structure of the trigger signal path illustrated in FIGURES 2 and 3, the oscilloscope 200 can capture a complete history of the Link Training negotiations by continuously monitoring multiple analog signals representing both sides of full duplex lanes in real-time by pattern matching the Link Training Frame Marker and the subsequent negotiation request/response data values. By comparing the digitized version of the incoming signal against a pattern and by storing only those Control Channel data values that do not match the current compare pattern, only the transitions in the data values are stored. This reduces the amount of data needing to be presented to the user by five orders of magnitude, from approximately 5 million to 50 control channel data values per lane, but nonetheless retains the complete substantive history of the Link Training negotiations.
【００４０】
The transitioned data values that are stored in the Output Queue 341-344 are accessible by the software on the oscilloscope 200. Since the Link Training data is analyzed and filtered, or sifted (condensed), in real-time, a Results Table containing only the non-redundant data can be presented to a user almost immediately after completion of the Link Training negotiation. Therefore, in comparison to the approximately one hour link training analysis time required using traditional post-acquisition analysis methods, embodiments of this new analysis method allow the data to be presented to the user in a few seconds for a 100 Gbps Ethernet negotiation that is 500ms long.
【００４１】
Further, since one 4-channel oscilloscope 200 can monitor two full-duplex lanes, and since two such oscilloscopes 200 can be synchronized and used together, using synchronization technologies such as UltraSync made by Tektronix, Inc., all four lanes of a 100 Gbps Ethernet Link Training session, for example, can be monitored and the results for the entire session posted in a a few seconds.  Such immediate feedback is effective in simplifying Link Training debugging.
【００４２】
FIGURE 4 illustrates an example of a user interface display 400 for the oscilloscope 200 of FIGURE 2 for displaying the results of the analysis and extraction of the link training information. The upper portion of the display 400 includes waveform portions 410 and 415, showing triggered display of the actual analog signals from which the link training data was extracted. The lower portion of the display 400 shows a Results Table portion 420, showing the Link Training Control Channel Information that was extracted, decoded, and filtered in real-time by the oscilloscope 200. 
【００４３】
FIGURE 5 is an example of an example of a screen shot of a Link Training Control Window 500 in accordance with certain implementations of the present invention. In the example, a user can select one or more lanes to be monitored. The user can also select whether to mark a frame marker, control channel, or training data, for example.
【００４４】
FIGURE 6 illustrates a detailed view of an example embodiment of the Results Table 420. The Results Table 420 in FIGURE 6 shows only one tab of results for one lane of data. Additional lanes may be displayed on additional tabs. To make reading the Results Table 420 even easier for a user, the table may color-coded, or otherwise highlight, certain control channel data values, such as, for example where one transceiver fails to set a coefficient update value in response to a request from the other transceiver.  Wherein abbreviations are as follow.
Inc: Increment,   Dec: Decrement,   Int: Initialize, 
C [+1]: Coefficient [+1],   C [0]: Coefficient [0],   C [-1]: Coefficient [-1]
【００４５】
As mentioned above, the serial trigger circuit 250 of FIGURES 2 and 3 may, in the course of monitoring the link training, generate trigger signals in response to certain specified events occurring during the link training process. For example, the oscilloscope 200 of FIGURE 2 can optionally be triggered to capture digitized waveforms in the usual fashion whenever the Control Channel data changes. In particular, the oscilloscope 200 with a “Fast Frame” (segmented acquisition memory) utility may be used to capture multiple short records of the digitized waveform of the fixed-length Frame Marker/Control Channel blocks/Training Data sequence, which may be marked and decoded in the usual way to delineate these waveform sections for analysis with DPOJET, or other scope analysis tools, to determine the amount of eye closure, jitter, etc. In fact, DPOJET measurements can be restricted to a single Link Training (e.g., PRBS) data section by using the Marks and/or Waveform Cursors to measure the actual pre-emphasis values or other signal characteristics given the particular transmitter coefficients in operation at that time.  It should be noted that when implemented on an oscilloscope, it is the combination of real-time capture of signal waveforms and control channel coefficient update requests and status report responses that provides detailed analysis of both the signal characteristics after specific Link Training events, and the logical sequence of events during Link Training. 
【００４６】
Additional events occurring within the Control Channel data can also be used to trigger the oscilloscope 200, such as when the Control Channel countdown value reaches zero, indicating completion of a given lane’s Link Training. Additional trigger criteria may be applied, such as to trigger on the last occurrence of a Control Channel Frame Marker, or to trigger on the first lane to complete its Link Training, or to trigger only when training is complete on all channels, or to trigger when a Control Channel coefficient changes on a specific lane, or when Link Training completes without some lane’s requested coefficient change having been honored.
【００４７】
Further, some Link Training Control Channel data transitions are termed illegal by a given network protocol’s specification, and these illegal events can be used to trigger the scope or be highlighted in the results table to inform the user of the infraction.
【００４８】
In this way, both the essential Link Training negotiation history (requests and responses for transmitter coefficient updates and status, and the Link Training (e.g., PRBS) waveform data can be exactly tracked and recorded by the oscilloscope 200 in not much more time than it takes for the Link Training process itself to complete, thereby significantly reducing analysis time and the quantity of data a user must sift through, making debugging high-speed serial network operation much more feasible.
【００４９】
EXAMPLES
Illustrative examples of the technologies disclosed herein are provided below.  An embodiment of the technologies may include any one or more, and any combination of, the examples described below.
【００５０】
Example 1 includes a test and measurement instrument, comprising inputs for receiving a plurality of analog input signals carrying link training information; and a link training information extractor coupled to the inputs and structured to select particular link training information from the plurality of analog signals, the particular link training information including control channel data, the information extractor including        memory to store control channel data values, a comparator structured to evaluate control channel values from the analog input signals against the stored control channel values, and a loopback facility structured to store new control channel values from the analog input signals into the memory when channel values from the analog input signals do not match the stored control channel data values.
【００５１】
Example 2 includes the test and measurement instrument of Example 1, or any other example test and measurement instrument described herein, in which the information extractor further comprises an output queue structured to output control channel values from the analog input signals when the control channel values from the analog input signals do not match stored control channel data values. 
【００５２】
Example 3 includes the test and measurement instrument of Example 2, or any other example test and measurement instrument described herein, further comprising trigger circuitry structured to generate a trigger signal when the control channel values from the analog input signals do not match stored control channel data values.
【００５３】
Example 4 includes the test and measurement instrument of Example 3, or any other example test and measurement instrument described herein, in which the test and measurement instrument is structured to store digitized data created from the plurality of analog signals after the trigger signal is generated.  
【００５４】
Example 5 includes the test and measurement instrument of Example 4, or any other example test and measurement instrument described herein, in which the trigger circuitry is structured to timestamp the stored digitized data when the trigger signal is generated.
【００５５】
Example 6 includes the test and measurement instrument of Example 3, or any other example test and measurement instrument described herein, further comprising trigger circuitry structured to suppress a trigger signal for a particular channel so long as the test and measurement instrument is receiving link training information for the particular channel.
【００５６】
Example 7 includes the test and measurement instrument of Example 3, or any other example test and measurement instrument described herein, in which the trigger circuitry is structured to generate the trigger signal when the plurality of analog input signals include an indication of a first link training frame or a last link training frame.
【００５７】
Example 8 includes the test and measurement instrument of any of Examples 1-7, or any other example test and measurement instrument described herein, further comprising a link training information generator structured to create a table of stored link training data. 
【００５８】
Example 9 includes the test and measurement instrument of any of Examples 1-8, or any other example test and measurement instrument described herein in which the instrument is a RealTime oscilloscope and in which the link training data accords to an Ethernet protocol.
【００５９】
Example 10 includes the test and measurement instrument of any of Examples 1-9, or any other example test and measurement instrument described herein in which the instrument is a RealTime oscilloscope having a four-channel input, in which each of the four channels is respectively coupled to four half-duplex lanes of data.
【００６０】
Example 11 is directed to a method of selecting certain link training information in a test and measurement instrument coupled to at least one lane of a serial data link, the method comprising storing control data values received from the at least one serial data link; comparing newly acquired control data values about the at least one serial data link to the previously stored control data values; and storing the newly acquired control data values only when they do not match the previously stored control data values.
【００６１】
Example 12 is directed to the method of selecting certain link training information in a test and measurement instrument of Example 11, or any other example method described herein, further comprising building a table of the stored control data values.
【００６２】
Example 13 is directed to the method of selecting certain link training information in a test and measurement instrument of Examples 11-12, or any other example method described herein, further comprising replacing the stored control data values with the newly acquired control data values about the at least one serial data link when the newly acquired control data values about the at least one serial data link does not match the stored control data values.
【００６３】
Example 14 is directed to the method of selecting certain link training information in a test and measurement instrument of Examples 11-13, or any other example method described herein, further comprising generating a trigger signal when the control channel values from the at least one serial data link do not match stored control channel data values.
【００６４】
Example 15 is directed to the method of selecting certain link training information in a test and measurement instrument of Examples 11-14, or any other example method described herein, further comprising further comprising storing digitized data created from the at least one serial data link in an acquisition memory after the trigger signal is generated.  
【００６５】
Example 16 is directed to the method of selecting certain link training information in a test and measurement instrument of Examples 11-15, or any other example method described herein, further comprising timestamping the stored digitized data when the trigger signal is generated.
【００６６】
Example 17 is directed to the method of selecting certain link training information in a test and measurement instrument of Examples 11-16, or any other example method described herein, further comprising generating a trigger signal when received data from the at least one serial data link includes an indication of a first link training frame or a last link training frame.
【００６７】
Example 18 is directed to the method of selecting certain link training information in a test and measurement instrument of Examples 11-17, or any other example method described herein, further comprising generating a trigger signal when received data from a first of the at least one serial data links includes an indication that the first serial data link has finished link training.
【００６８】
Example 19 is directed to the method of selecting certain link training information in a test and measurement instrument of Examples 11-18, or any other example method described herein, in which the instrument is a RealTime oscilloscope coupled to two lanes of data transmitted according to an Ethernet protocol.
【００６９】
The term “controller” and “processor” as used herein is intended to include microprocessors, microcomputers, ASICs, and dedicated hardware controllers.  One or more aspects of the invention may be embodied in computer-usable data and computer-executable instructions, such as in one or more program modules, executed by one or more computers (including monitoring modules), or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other electronic device.
【００７０】
The computer executable instructions may be stored on a non-transitory computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, RAM, etc. As will be appreciated by one of skill in the art, the functionality of the program modules may be combined or distributed as desired in various embodiments. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA), and the like. Particular data structures may be used to more effectively implement one or more aspects of the invention, and such data structures are contemplated within the scope of computer executable instructions and computer-usable data described herein.
【００７１】
Having described and illustrated the principles of the present invention in a preferred embodiment thereof, it should be apparent that the present invention can be modified in arrangement and detail without departing from such principles.
【符号の説明】
【００７２】
100  Serial Communication Network
110  First Transceiver
112  Transmit Portion
114  Receive Portion
120  Second Transceiver
122  Transmit Portion
124  Receive Portion
130  Oscilloscope
200  Oscilloscope
201  Analog Input Channel
202  Analog Input Channel
203  Analog Input Channel
204  Analog Input Channel
210  Pre-Amplifier
211  First analog signal path
212  Second analog signal path
220  ADC
230  Demultiplexer (demux) block
240  Equalizing Analog Buffer
241  analog serial data stream
242  analog serial data stream
243  analog serial data stream
244  analog serial data stream
250  Serial trigger circuit
251  trigger output signal
260  trigger logic circuit
261  Overall trigger signal
270  acquisition memory
311  Serializer-Deserializer (SerDes) digitizer block
312  Serializer-Deserializer (SerDes) digitizer block
313  Serializer-Deserializer (SerDes) digitizer block
314  Serializer-Deserializer (SerDes) digitizer block
321  frame marker detector
322  frame marker detector
323  frame marker detector
324  frame marker detector
331  pattern compare block
332  pattern compare block
333  pattern compare block
334  pattern compare block
341  Output Queue
342  Output Queue
343  Output Queue
344  Output Queue
350  consolidated logic block
400  user interface display
410  Upper waveform portions
415  Lower waveform portions
420  Results Table portion
500  Link Training Control Window
700  Table
800  Table
【請求項１】
A test and measurement instrument, comprising:
inputs for receiving a plurality of analog input signals carrying link training information; and
a link training information extractor coupled to the inputs and structured to select particular link training information from the plurality of analog signals, the particular link training information including control channel data, the information extractor including:
memory to store control channel data values, 
a comparator structured to evaluate control channel values from the analog input signals against the stored control channel values, and
a loopback facility structured to store new control channel values from the analog input signals into the memory when channel values from the analog input signals do not match the stored control channel data values.
【請求項２】
The test and measurement instrument according to claim 1, in which the information extractor further comprises an output queue structured to output control channel values from the analog input signals when the control channel values from the analog input signals do not match stored control channel data values.
【請求項３】
The test and measurement instrument of claim 2, further comprising trigger circuitry structured to generate a trigger signal when the control channel values from the analog input signals do not match stored control channel data values.
【請求項４】
A method of selecting certain link training information in a test and measurement instrument coupled to at least one lane of a serial data link, the method comprising:
storing control data values received from the at least one serial data link;
comparing newly acquired control data values about the at least one serial data link to the previously stored control data values; and
storing the newly acquired control data values only when they do not match the previously stored control data values.
【請求項５】
The method of selecting certain link training information according to claim 4, further comprising replacing the stored control data values with the newly acquired control data values about the at least one serial data link when the newly acquired control data values about the at least one serial data link does not match the stored control data values.
【請求項６】
The method of selecting certain link training information according to claim 4 or 5, further comprising generating a trigger signal when the control channel values from the at least one serial data link do not match stored control channel data values.
【要約】
【課題】 Quickly and easily monitor and analyze the network link training sessions.
【解決手段】 An oscilloscope 130 captures a complete history of serial network Link Training negotiations by continuously monitoring multiple analog signals representing both sides of full duplex lanes in real-time by pattern matching the Link Training Frame Marker and the subsequent negotiation request/response data values. The oscilloscope 130 compares the digitized version of the incoming signal against a nominal pattern at the start to find the Frame Markers and Control Channel data, storing only those Control Channel data values that do not match the current compare pattern, and further by updating the current compare pattern to the new pattern just received, so that only the transitions in the data values are stored, thereby vastly reducing the amount of data presented to the user, but nonetheless retaining the complete substantive history of the Link Training negotiations.
【選択図】図１
【図１】
2017142238.tif 000011
【図２】
2017142238.tif 000012
【図３】
2017142238.tif 000013
【図４】
2017142238.tif 000014
【図５】
2017142238.tif 000015
【図６】
2017142238.tif 000016
【図７】
2017142238.tif 000017
【図８】
2017142238.tif 000018