以前、DPのAUXコントローラを試作したことを記事にしました。
今回は、試作したAUXコントローラに、DP Sink ジッタトレランステストのためのコマンドを追加してみましたので、その動作確認を行ってみます。
1. DPにおけるジッタトレランステストについて
DP Sink機器のコンプライアンステストの中には、ジッタトレランステストが含まれています。
ジッタの入ったDP信号を問題なく受信できるかを確認する主要なテストの1つで、Failする場合はフィルタ設定の見直しや、それでも改善しない場合はPCB・部品の見直しが必要になることもあります。
そのため、試作の段階においてジッタトレランステストをPassできることを確認しておくことがとても重要となります。
信号発生器としてビットエラーレートテスター(BERT)を使用します。周期的ジッタやランダムジッタ、ISIジッタなどのストレスをかけたDP信号を入力し、DUTが問題なくリンクトレーニングできるかやビットエラーが規定内かどうかを確認しますが、そのためにはAUXコントローラを用いてSinkが持つDPCDにアクセスする必要があります。
2. AUXコントローラを用いたジッタトレランステストの実施
2.1. DUTの接続
では、試作したAUXコントローラを用いてジッタトレランステストを試してみましょう。DP SinkとしてDellのHBR2対応モニタを使用しました。
AUXコントローラとBERTを接続したDP用フィクスチャをDUTに挿入します。
AUXコントローラはHPD=Highを検出しログに出力します。
2.2. クロックリカバリシーケンス
HPDを検出できたら、リンクトレーニングを開始します。まずはD10.2のクロックパターン(TPS1)を入力しクロックリカバリを行います。
“lt cr 2 3″はHBR2のLane3をクロックリカバリさせるというコマンドです。テストパターンの設定や、Sinkが要求するVoltage Swingなどの設定をAUXコントローラで行い、現在のリンクの状態を示すDPCD 0x00202から2バイトを確認します。最終的に0x00202 = 11 11となっています。各レーンのCR_Doneビットが立ったことを意味しており、クロックリカバリが成功しています。
2.3. シンボルロックシーケンス
続いてシンボルロック用のパターンを入力します。HBR2対応の場合はテストパターンとしてTPS3を用いてシンボルロックのトレーニングを行います。
最終的に0x00202 = 77 77となっています。各レーンのClock Recovery, Symbol Lock, Interlane Alignのビットが立ったことを意味しており、シンボルロックが成功しています。
2.4. ビットエラーテスト
リンクトレーニングが完了したらいよいよビットエラーのテストです。ビットエラー計測用のテストパターンを入力し、指定された時間内のエラー数を確認します。
“ec 3″はレーン3のエラーカウントを読み出すためのコマンドです。
0x00216 = 00 80となっており、レーン3のエラーが0となっています。(ビッグエンディアン。MSBはエラーカウンタが有効であることを示すビットです)
わざとエラーを3回入れると、0x00216 = 03 80となり、正常にエラーカウントが機能していることが確認できます。
3. まとめ
試作したAUXコントローラを用いてジッタトレランステストを行うことができました。DP1.2まではチップベンダが提供するテスト用ツールなどを使用してビットエラーを確認してもよかったのですが、DP1.4からはそれが認められなくなりDPCDでの対応が必須となりました。そのためAUXコントローラの出番は今後ますます増えていくことになりそうです。アリオン日本ラボでは複数のAUXコントローラを持っていますが、今後は、このAUXコントローラでもBERTと連動させた測定の自動化をしたいと考えています。