製品仕様 - 1.1 日本語

Versal ACAPs Transceivers Wizard v1.1 LogiCORE IP 製品ガイド (PG331)

Document ID
PG331
Release Date
2022-04-29
Version
1.1 日本語

Versal® ACAPs Transceivers Wizard ソリューションには、次の 2 つのコアが含まれます。

Versal ACAPs Transceivers Wizard
GT*_QUAD プリミティブのラッパー。1 個の GT クワッド (gt_quad_base IP) を含みます。マルチレーン (>4 レーン) デザインでは、複数の Transceivers Wizard をインスタンシエートします。
GT Quad base IP
GT Quad base IP は、 Vivado® IP カタログで Versal ACAPs Transceivers Wizard (gt_quad_base) として利用できます。1 個の GT*_QUAD プリミティブをインスタンシエート、コンフィギュレーション、および接続します。GT クワッドの各種機能を確認できるように、シミュレーションがサポートされています。GT Quad base IP は、それぞれが複数のライン レートをサポートするプロトコル IP を複数個共有するように構成できます。サンプル デザインを作成してシミュレーションを実行することにより、ライン レートの動的変更および複数のプロトコル IP による GT クワッドの共有についての理解を深めることができます。この IP のポート一覧と定義は、 『Versal ACAP GTY および GTYP トランシーバー アーキテクチャ マニュアル』 (AM002) および 『Versal ACAP GTM トランシーバー アーキテクチャ マニュアル』 (AM017) を参照してください。
Versal ACAP Transceivers Bridge
Transceivers Wizard のパラメーターを設定するリファレンス親 IP (Bridge IP) です。
Bridge IP
Versal ACAPs Transceivers Bridge IP (gt_bridge_ip) は、IP インテグレーターのキャンバスで利用できます。カスタム デザイン エントリは、Bridge IP でのみ作成できます。Bridge IP は、GT Quad base IP (gt_quad_base) を構成するためのコンフィギュレーション可能なラッパーです。

Bridge IP には、次の 2 つの動作モードがあります。

デフォルト モード: FPGA ボード上でのスタンドアロン Transceivers Wizard のシミュレーションと検証には、このモードを使用します。このモードでは、プログラムした設定に基づいて Bridge IP がデータ ジェネレーター、チェッカー ロジックおよびリセット ロジックをカプセル化します。

パススルー モード: Bridge IP をパススルー モードにコンフィギュレーションすると、GT クワッドに関連するすべての信号がアプリケーション インターフェイスに引き出されます。GT のすべてのパラメーターを設定したら、1 つまたは複数の GT Quad base IP (gt_quad_base) をインスタンシエート、コンフィギュレーション、および接続します。

IP インテグレーターで Versal ACAPs Transceivers Bridge IP (gt_bridge_ip) を追加し、レーン数などのパラメーターを GUI で設定し (gt_quad_base のパラメーターは gt_bridge_ip から継承)、Block Automation をクリックします。gt_bridge_ip で設定したレーン数に基づいて複数の gt_quad_base がインスタンシエートされ、必要なすべての接続が作成されます。次の図に、IP インテグレーターのキャンバスで生成可能な Bridge IP と GT Quad base IP で構成されるシステムを示します。各 Bridge IP は、GUI で複数のライン レートを設定できます。Bridge IP の要件によっては、複数の Bridge IP で 1 つの GT Quad base IP を共有できます。詳細は、IP インテグレーターによるカスタム IP のデザイン エントリ を参照してください。
図 1. パススルー モードの Bridge IP
図 2. 1 個の Bridge IP と GT クワッドのデザイン
図 3. 複数の Bridge IP で GT クワッドを共有
Bridge IP でサポートされる機能は、次のとおりです。
  • シンプレックスおよびデュプレックス構成。
    • 一般的な規格に対応したプリセット設定
    • パラメーターの完全な制御により、微調整が可能
    • ブロック オートメーションによる 1 つまたは複数の GT クワッドの接続をサポート
  • ライン レートの動的変更をネイティブにサポート。APB3 コントローラーの再プログラムやビルドは不要。1 方向あたり、1 チャネルにつき最大 16 のライン レートを設定可能

次に、パススルー モードの Bridge IP のポートを示します。

表 1. パススルー モードの Bridge IP のポート
名称 方向 クロック ドメイン 説明
gtreset_in 入力 1 非同期

トランシーバー プリミティブの PLL (位相ロック ループ) およびアクティブなデータ方向をリセットするユーザー信号です。

このアクティブ High の非同期信号を apb3clk の少なくとも 1 周期間パルスすると、プロセスが初期化されます。

reset_tx_pll_and_datapath_in 入力 1 非同期

トランシーバー プリミティブの送信データ方向および関連する PLL をリセットするユーザー信号です。

このアクティブ High の非同期信号を apb3clk の少なくとも 1 周期間パルスすると、プロセスが初期化されます。

reset_rx_pll_and_datapath_in 入力 1 非同期

トランシーバー プリミティブの受信データ方向および関連する PLL をリセットするユーザー信号です。

このアクティブ High の非同期信号を apb3clk の少なくとも 1 周期間パルスすると、プロセスが初期化されます。

reset_tx_datapath_in 入力 1 非同期

トランシーバー プリミティブの送信データ方向をリセットするユーザー信号です。

このアクティブ High の非同期信号を apb3clk の少なくとも 1 周期間パルスすると、プロセスが初期化されます。

reset_rx_datapath_in 入力 1 非同期

トランシーバー プリミティブの受信データ方向をリセットするユーザー信号です。

このアクティブ High の非同期信号を apb3clk の少なくとも 1 周期間パルスすると、プロセスが初期化されます。

txresetdone_out 出力 1 apb3clk トランシーバー プリミティブのトランスミッター リセット シーケンスが正しく完了したことを示すアクティブ High の信号です。
rxresetdone_out 出力 1 apb3clk トランシーバー プリミティブのレシーバー リセット シーケンスが完了したことを示すアクティブ High の信号です。
ch*_txdata_ext 入力 128/256 TXUSRCLK トランシーバー チャネルで送信するデータ用のユーザー インターフェイスです (GTYE5/GTYP では 128 ビット、GTME5 では 256 ビット)。
ch*_rxdata_ext 出力 128/256 RXUSRCLK トランシーバー チャネルで受信するデータ用のユーザー インターフェイスです (GTYE5/GTYP では 128 ビット、GTME5 では 256 ビット)。
ch*_rxgearboxslip_ext 入力 1 RXUSRCLK トランシーバー プリミティブの RXGEARBOXSLIP へ接続されます。
ch*_txheader_ext 入力 6 TXUSRCLK トランシーバー プリミティブの TXHEADER へ接続されます。
ch*_txsequence_ext 入力 7 TXUSRCLK トランシーバー プリミティブの TXSEQUENCE へ接続されます。
ch*_rxstartofseq_ext 出力 2 RXUSRCLK トランシーバー プリミティブの RXSTARTOFSEQ へ接続されます。
ch*_rxheader_ext 出力 6 RXUSRCLK トランシーバー プリミティブの RXHEADER へ接続されます。
ch*_rxheadervalid_ext 出力 2 RXUSRCLK トランシーバー プリミティブの RXHEADERVALID へ接続されます。
ch*_rxdatavalid_ext 出力 2 RXUSRCLK トランシーバー プリミティブの RXDATAVALID へ接続されます。
ch*_txctrl0_ext 入力 16 TXUSRCLK トランシーバー プリミティブの TXCTRL0 へ接続されます。
ch*_txctrl1_ext 入力 16 TXUSRCLK トランシーバー プリミティブの TXCTRL1 へ接続されます。
ch*_txctrl2_ext 入力 16 TXUSRCLK トランシーバー プリミティブの TXCTRL2 へ接続されます。
ch*_rxctrl0_ext 出力 16 RXUSRCLK トランシーバー プリミティブの RXCTRL0 へ接続されます。
ch*_rxctrl1_ext 出力 16 RXUSRCLK トランシーバー プリミティブの RXCTRL1 へ接続されます。
ch*_rxctrl2_ext 出力 8 RXUSRCLK トランシーバー プリミティブの RXCTRL2 へ接続されます。
ch*_rxctrl3_ext 出力 8 RXUSRCLK トランシーバー プリミティブの RXCTRL3 へ接続されます。
ch*_rxchbondi_ext 入力 5 RXUSRCLK トランシーバー プリミティブの RXCHBONDI へ接続されます。
ch*_rxchanbondseq_ext 出力 1 RXUSRCLK トランシーバー プリミティブの RXCHANBONDSEQ へ接続されます。
ch*_rxchanisaligned_ext 出力 1 RXUSRCLK トランシーバー プリミティブの RXCHANISALIGNED へ接続されます。
ch*_rxchanrealign_ext 出力 1 RXUSRCLK トランシーバー プリミティブの RXCHANREALIGN へ接続されます。
ch*_rxchbondo_ext 出力 5 RXUSRCLK トランシーバー プリミティブの RXCHBONDO へ接続されます。
ch*_txbufstatus_ext 出力 2 TXUSRCLK トランシーバー プリミティブの TXBUFSTATUS へ接続されます。
ch*_rxbufstatus_ext 出力 3 RXUSRCLK トランシーバー プリミティブの RXBUFSTATUS へ接続されます。
ch*_rxcommadet_ext 出力 1 RXUSRCLK トランシーバー プリミティブの RXCOMMADET へ接続されます。
ch*_rxbyteisaligned_ext 出力 1 RXUSRCLK トランシーバー プリミティブの RXBYTEISALIGNED へ接続されます。
ch*_rxbyterealign_ext 出力 1 RXUSRCLK トランシーバー プリミティブの RXBYTEREALIGN へ接続されます。
gpio_enable 入力 1 apb3clk ライン レートの切り替え中、GT REFCLK の値が変化したときにアサートするユーザー信号です。*resetdone 信号が High になるまでアサートする必要があります。詳細は、第 5 章の「gpio_enable ポートの使用」を参照してください。
gpo_in 入力 1 apb3clk この信号は gpio_enable と組み合わせて使用します。ブロック オートメーションで自動的に接続されます。この信号を使用しない場合、駆動する必要はありません。
gpi_out 出力 1 apb3clk この信号は gpio_enable と組み合わせて使用します。ブロック オートメーションで自動的に接続されます。
rate_sel[3:0] 入力 4 apb3clk GT クワッドの ch*_txrate[7:0] および ch*_rxrate [7:0] ポートを制御する入力レート設定ポートです。ここでの入力幅は、Bridge/GT Quad IP の入力レベルで取得可能なコンフィギュレーション入力の数 (16) に対応して 4 ビットです。
Link_status_out 出力 1 apb3clk この信号はドントケアで、パススルー モードが有効な場合、無視できます。パススルー モードが無効な場合は、サンプル デザインのシミュレーションまたは検証中のリンク アップ ステータスを示します。TX と RX の PRBS パターンが一致した場合、この信号はアクティブ (High) です。
  1. gt_lcpll_lockgt_rpll_lockch_phystatus_in、および ilo_resetdone 入力はドントケアで、無視できます。
  2. gt_ilo_resetgt_pll_resetrpll_lock_outlcpll_lock_outpcie_rstb、および reset_mask の出力値は使用しないため、無視できます。監視には、各 gt_quad_base IP の hsclk0_lcplllockhsclk1_lcplllockhsclk0_rplllock、および hsclk1_rplllock 信号を使用することを推奨します。
  3. デフォルト モードの Bridge IP にも、表 1 に示したのと同じポートがあります (ただし gpio_enable を除く)。これらの信号は Bridge IP と GT クワッドの間で処理され、Bridge IP のアプリケーション インターフェイスでは利用できません。内部リセット シーケンスの詳細は、 『Versal ACAP GTY および GTYP トランシーバー アーキテクチャ マニュアル』 (AM002) および 『Versal ACAP GTM トランシーバー アーキテクチャ マニュアル』 (AM017) を参照してください。

パススルー モードにコンフィギュレーションしない場合、Bridge IP には各種エンコード/デコード オプションをサポートするパターン ジェネレーターおよびチェッカーが含まれます。これは、主にシミュレーションに使用します。この場合、アプリケーション インターフェイスは利用できません。サンプル デザインのシミュレーションは、サンプル デザイン を参照してください。

図 4. デフォルト モードの Bridge IP

チャネル ボンディングのポート

チャネル ボンディングのポートは GT Bridge IP では利用できませんが、CHANNEL_BONDING パラメーターを使用してクワッド レベルで有効にできます。

IP コアの生成時に、コア生成の一部として次の Tcl コマンドを dict に含めます。

set CHANNEL_BONDING true

次に、Quad IP のチャネル ボンディングのポートを示します。

表 2. Quad IP のチャネル ボンディングのポート
名称 方向 クロック ドメイン 説明
ch*_rxchanbond_en 入力 1 apb3clk CH*_RX_ELASTIC_BUF_CFG7 レジスタの EB8B10B_CHAN_BOND_EN ビットを更新します。
ch*_rxchanbond_master 入力 1 apb3clk CH*_RX_ELASTIC_BUF_CFG7 レジスタの EB8B10B_CHAN_BOND_MASTER ビットを更新します。
ch*_rxchanbond_slave 入力 1 apb3clk CH*_RX_ELASTIC_BUF_CFG7 レジスタの EB8B10B_CHAN_BOND_SLAVE ビットを更新します。
ch*_rxchanbond_level 入力 3 apb3clk CH*_RX_ELASTIC_BUF_CFG7 レジスタの EB8B10B_CHAN_BOND_LEVEL ビットを更新します。
ch*_rxchanbond_busy 出力 1 apb3clk レジスタ ビットに対するチャネル ボンディング ポート値の更新ステータスを示します。

マスター リセット シーケンスの詳細は、 『Versal ACAP GTY および GTYP トランシーバー アーキテクチャ マニュアル』 (AM002) および 『Versal ACAP GTM トランシーバー アーキテクチャ マニュアル』 (AM017) を参照してください。