インテルのみ表示可能 — GUID: nik1415408064161
Ixiasoft
インテルのみ表示可能 — GUID: nik1415408064161
Ixiasoft
7.4. ユーザー・リキャリブレーション
- トランシーバー・チャネルまたはPLL をリキャリブレーションした後、特にレート変更後。CDR CMU をTX PLL として使用する場合は、CDR CMU をTX PLL として使用するチャネルのTX PMA をリキャリブレーションする必要があります。.
-
fPLL が第2 のPLL (ダウンストリーム・カスケードPLL) として接続されている場合は、fPLL をリキャリブレーションします。ダウンストリームfPLL は、アップストリームPLL (fPLL / CDR の場合もある) からリファレンス・クロックを受信します。第2 のfPLL のリキャリブレーションは、パワーアップ・キャリブレーション中にアップストリームPLL 出力クロック (ダウンストリームfPLL リファレンス・クロック) が存在しないか安定していない場合に特に重要です。
- PLL フィードバック補償ボンディングを駆動するために使用されるATX PLL またはfPLL では、パワーアップ・キャリブレーション後にPLL をリキャリブレーションします。
特定のリキャリブレーション・レジスターへ書き込みを行うことでリキャリブレーション・プロセスを開始することができます。また、ユーザー・リキャリブレーション実行後はトランシーバーをリセットする必要があります。たとえば、PLL リコンフィグレーション、PLL とチャネル・インターフェイスの切り替えを含むデータレートのオート・ネゴシエーションを実行する場合、トランシーバーをリセットしなければいけません。
キャリブレーション後には正しいリセットシーケンスが必要です。インテルは、tx_cal_busy およびrx_cal_busy 入力を備えたトランシーバーPHY リセット・コントローラーの使用と、インテルの推奨されるリセットシーケンスに従うことを推奨しています。ネイティブPHY IP コア出力からデザインのリセット・コントローラー入力にtx_cal_busy とrx_cal_busy を接続する必要があります。キャリブレーションのリセットはユーザー・リキャリブレーションを実行する際、自動で処理されます。
ユーザー・リキャリブレーションを実行するには以下の手順に従います。
- オフセットアドレス0x0[7:0]に0x2 をライトし、キャリブレーション・レジスターへ内部コンフィグレーション・バス・ユーザー・アクセスをリクエストします。
- reconfig_waitrequest がデアサート (ロジックlow) されるのを待機します。または、PreSICE Avalon-MM インターフェイス制御のケーパビリティー・レジスターが0x0 になるまで待機します。avmm_busy ステータスレジスターは、PMA チャネル・キャリブレーションの場合は0x281[2]であり、ATX PLL およびfPLL キャリブレーションの場合は0x280[2]です。
- オフセットアドレス0x100 へ適切な値をRead-Modify-Write することで必要となるキャリブレーション・イネーブルビットを設定します。PMA チャネル・キャリブレーションをイネーブルするのであれば、0x100[6]を0x0 に設定する必要があります。
- PMA のキャリブレーションのためのレート・スイッチ・フラグ・レジスターを設定します。ATX PLL およびfPLL のキャリブレーションの場合、このステップをスキップします。
- CDR レートスイッチがない場合、オフセットアドレス0x166[7]に0x1 をRead-Modify-Write する
- 異なるCDR 帯域幅設定でレートを切り替えた場合、オフセットアドレス0x166[7]に0x0 をRead-Modify-Write する
- PMA キャリブレーションがtx_cal_busy またはrx_cal_busy 出力をイネーブルまたはディスエーブルするように、ケーパビリティー・レジスター0x281[5:4]に適切な値を設定します。
- rx_cal_busy をイネーブルするには、0x281[5]に0x1 をRead-Modify-Write する
- rx_cal_busy をディスエーブルするには、0x281[5]に0x0 をRead-Modify-Write する
- tx_cal_busy をイネーブルするには、0x281[4]に0x1 をRead-Modify-Write する
- tx_cal_busy をディスエーブルするには、0x281[4]に0x0 をRead-Modify-Write する
- オフセットアドレス0x0[7:0]に0x1 を書き込むことによって、リキャリブレーションを実行するためにPreSICE に内部コンフィグレーション・バスをリリースします。cal_busy 信号はデアサート (ロジックLow) されるまで、リキャリブレーションが進行中です。
- キャリブレーションが完了するまで、*cal_busy 出力信号を定期的に確認するか、あるいは*cal_busy ステータスを確認するためにケーパビリティー・レジスターをリードします。