AR# 66592

Zynq UltraScale+ MPSoC - PS-GTR を使用した SGMII

説明

Zynq UltraScale+ MPSoC では、PS-GTR を使用した PS の SGMII はサポートされています。

PS-GTR を使用した SGMII モードを使用する場合の一般的な質問は、次のとおりです。

ソリューション


1) SGMII を介して GE PHY を GTR に接続するためのリファレンス デザインはありますか。

いいえ、ありません。


2) Marvell 88E1111 用のリファレンス デザインはありますか。

いいえ、Marvell PHY 用のリファレンス デザインはありません。


3) GTR と 88E1111 の間に AC カップリングは必要ですか。(SGMII モードでこれと同じ PHY が使用される KCU105 では、DC カップリングが使用されており、SelectIO に接続されています。)

GTR と PHY の間の TXP/TXN および RXP/RXN ピンでは、AC カップリングが必要です。


4) 125 MHz 以外の基準クロック オプションはありますか。

GTR 基準クロックは 125 MHz である必要があります。

 

5) SGMII を実行するときの GTR 基準クロックのジッター仕様を教えてください。GTR 基準クロック入力に必要な基準クロックの質について教えてください。

次の図は、DS925 から抜粋したものです。





最大クロック位相ノイズは、次のとおりです。

50 ~ 10 MHz で 140 dBc/Hz


6) MPSoC のギガビット イーサネット コントローラーは GTR 基準クロックから派生した SIOU のクロックを使用しますか。それとも、別のクロックが必要ですか。GE コントローラーで使用できるクロック ソースおよび周波数は何ですか。

MPSoC の GEM では、GTR 基準クロックから生成された SIOU のクロックを使用します。


7) このイーサネット ソリューションが機能するよう、ほかに何を実行すればクロック数を削減できますか。RJ45 でイーサネットを機能させるためには、3 つの異なるクロックが必要なようです。

デザインでは、88E1111 などの PHY コントローラーに 25 MHz クロックが必要です。GTR に対しては、専用の差動入力クロックが必要です。PS インターフェイスを動作させるためには、PS_CLK が必要です。このため、3 つの異なるクロックが必要となります。

 


8) PS_MGTRREF に特別なレイアウトの規則はありますか。


このピンは、500Ω の抵抗を介してグランドに接続する必要があります。


9) MPSoC と 88E1111 の間には、SGMII データ ピンのほかに MDIO インターフェイスは必要ですか。必要であれば、これがどのように可能なのかを説明してください。MIO または EMIO で可能なのではないかと思っています。


MDIO インターフェイスはオプションです。MDIO の要件は、サポートする必要があるシステム レベルの要件で駆動されています。

MDIO を使用して何が制御できるかは、PHY 製品ガイドを参照してください。MDIO を介してインプリメント可能な機能はシステム要件となるので、インターフェイスをインプリメントできます。

MIO または EMIO のいずれかに配線できます。

たとえば、PHY のアドレスの変更、スリープ モードのディスエーブル、オート ネゴシエーションの制御など、PHY の一部の設定は、必要に応じて MDIO インターフェイスを使用して変更できます。


10) SGMII モードを使用する際、レーンに必要な適切な初期化シーケンスはありますか。

はい、あります。SGMII プロトコルの初期化シーケンスに従う必要があります。ただし、これはツールの psu_init.tcl により自動的に処理されているはずです。

次に、psu_init.c により SGMII が設定される大まかな手順を示します。
  1. レーン キャリブレーションが実行されていることを確認します。
  2. GEM をリセット L0 ~ L2 にします。
  3. pll_ref_clk を 125 MHz に設定します (PLL_REF_SEL*)。
  4. 基準クロックを設定します (L0_L*_REF_CLK_SEL_OFFSET)。
  5. レーン プロトコルを SGMII に設定します (ICM CFG)。
  6. TX および RX バス幅を 10 に設定します (TX/RX_PORT_BUS_WIDTH)。
  7. デスクランブラーおよび 8b/10b をバイパスします。
  8. GEM コントローラーをリセット解除します。
  9. PLL ロックをチェックします (L*_PLL_STATUS_READ)。

11) マスター/スレーブに関するプリファレンスはありますか。

マスター/スレーブに関するプリファレンスはありません。


12) 有効な SGMII リンクがネゴシエーションされたことを確認する方法を教えてください。リンクの試行、レーンの質、マスター/スレーブのクロック設定などを示すレジスタはありますか。

オフセット 0x204 の PCS_STATUS レジスタは、link_status を示します。このレジスタのビット [2] を参照してください。詳細は、(UG1087) を参照してください。

 


13) SGMII の PCS 制御レジスタの使用用途および SGMII モードの詳細を教えてください。

PCS_CONTROL レジスタは、スピードの選択、オート ネゴシエーションの制御、ループバックの適用、および PCS リセットの実行に対して使用できます。

SGMII モードの場合、次のビットが適用されます。また、SGMII モードではスピードを 10/100 に変更できます。


14) GEM_CTRL (IOU_SLCR) レジスタの説明

GEM3_SGMII_SD 7:6 rw 0x0 00: PCS 信号検出を 0 に接続

                                                    01: PCS 信号検出を 1 に接続

                                                    10: FMIO を介して外部オプティカル PHY から信号検出

                                                    11: 予約済み。11: 予約済み。


14) 1 に強制すると、信号の有無は示されますか。

はい。信号を 1 に強制すると、オプティカル PHY から信号が検出されたことを意味します (このレジスタを介して強制するか、または PL から signal_detect 信号を配線します)。


15) SGMII インターフェイスはどのように検証されていますか。

SGMII は、次のフローを使用して検証されています。

  1. デフォルトの FSBL を使用して GTR mux およびトランシーバー インターフェイスを初期化します。
  2. PetaLinux を起動します。
  3. デバイス ツリーをアップデートし、phy-type を sgmii に変更します。次に抜粋を示します。
&gem2 {
        phy-handle = <&phy0>;
        phy-mode = "sgmii";
        phy0: phy@0{
                reg = <0>;
                ti,rx-internal-delay = <0x8>;
                ti,tx-internal-delay = <0xa>;
                ti,fifo-depth = <0x1>;
        };
};



添付ファイル

関連添付ファイル

タイトル サイズ ファイルタイプ
SGMIIInit_fix.tcl 14 KB TCL
AR# 66592
日付 06/08/2020
ステータス アクティブ
種類 一般
デバイス
ツール
IP