インテル® Stratix® 10 LタイルおよびHタイル・トランシーバーPHYユーザーガイド

ID 683621
日付 3/03/2020
Public
ドキュメント目次

2.3.13. PCS-Core Interfaceポート

この項では、Enhanced PCS、Standard PCS、PCIe Gen3 PCS、およびPCS Directコンフィグレーションに共通のPCS-Coreインターフェイス・ポートを定義します。
図 25. PCS-Coreインターフェイス・ポート
各トランシーバー・チャネルの送信および受信80ビットのパラレル・データ・インターフェイスのアクティブポートと非アクティブポートは、PMA幅、FPGA Fabric幅、およびダブルレート転送モードがイネーブルかディスエーブルかなどの特定のコンフィグレーション・パラメーターによって異なります。PMAおよびPCSモジュールへのラベル付き入力および出力は、個々の信号ではなくバスを表します。次の表で、変数は次のパラメーターを表します。
  • <n> - レーン数
  • <d> - シリアライゼーション・ファクター
  • <s> - シンボルサイズ
  • <p> - PLLの数
表 54.  TX PCSのパラレルデータ、コントロール、およびクロック
ポート名 入力/出力 クロックドメイン 説明

tx_parallel_data[<n>80-1:0]

入力

FIFOの書き込み側を駆動するクロック (tx_coreclkin または tx_clkout) に同期

FPGAファブリックからTX PCSへのTXパラレルデータ入力です。Transceiver Native PHY IP core Parameter EditorEnable simplified interfaceを選択すると、tx_parallel_data は、指定したコンフィグレーションに必要なビットだけを含みます。

アクティブではないデータポートは、論理状態ゼロに設定する必要があります。アクティブなポートを決定するには、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングの項を参照してください。

unused_tx_parallel_data

入力

tx_clkout Enable simplified data interfaceをイネーブルすると、ポートがイネーブルされます。これらのビットすべてを0に接続します。Enable simplified data interfaceがセットされない場合、未使用ビットは tx_parallel_data の一部になります。論理状態ゼロに設定する必要のあるポートを特定するには、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングを参照してください。
tx_control[<n><3>-1:0] または

tx_control[<n><8>-1:0]

入力

FIFOの書き込み側を駆動するクロック (tx_coreclkin または tx_clkout) に同期

tx_control ポートは、選択したEnhanced PCSのトランシーバー・コンフィグレーション・ルールに応じて、さまざまな機能を有します。Enable simplified data interfaceがセットされない場合、tx_controltx_parallel_data の一部になります。

詳細は、エンハンストPCSのTXおよびRXコントロール・ポートの項を参照してください。

特定のコンフィグレーションに基づく tx_control ポートのポートマッピングについては、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングの項を参照してください。

tx_word_marking_bit 入力 FIFOの書き込み側を駆動するクロック (tx_coreclkin または tx_clkout) に同期

このポートは、ダブルレート転送モードがイネーブルになっている場合に必要です。このポートの論理状態がZeroの場合、tx_parallel_data バス上のデータにLower Significant Wordが含まれていることを示します。このポートの論理状態がOneの場合、tx_parallel_data バス上のデータにUpper Significant Wordが含まれていることを示します。

ダブルレート転送モードをイネーブルするには、Enable simplified data interfaceをディスエーブルする必要があります。したがって、tx_word_marking ビットは常に tx_parallel_data の一部として表示されることに注意してください。

tx_word_marking_bit ポートのポートマッピングについては、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングの項を参照してください。

tx_coreclkin 入力 クロック

FPGAファブリックのクロックです。TX FIFOの書き込み側を駆動します。Interlakenプロトコルでは、このクロックの周波数をデータレート/67からデータレート/32にします。この範囲よりも低い周波数を使用すると、TX FIFOがアンダーフローし、データが破損する原因となります。

tx_coreclkin2 入力 クロック バイト・シリアライゼーションなしでPMA幅が20のダブルレート転送がイネーブルになっている場合、このクロックポートをイネーブルしてFIFO読み出しクロックを提供します。
tx_clkout

出力

クロック

ユーザーには、PCS clkout、PCS clkout x2、および pma_div_clkout の間で、このポートのクロックソースを選択するオプションがあります。目的のコンフィグレーションに基づいて、有効なクロックソースを選択する必要があります。

PCS clkoutは、ノンボンディング・コンフィグレーションの場合はローカルCGBにより生成され、ボンディング・コンフィグレーションの場合はマスターCGBにより生成されるパラレルクロックです。これにより、TX PCSのブロックがクロックされます。このクロックの周波数は、データレートをPCS/PMAインターフェイス幅で割った値と等しくなります。PCS clkout x2は、ダブル転送レートモードのコンフィグレーションの、PCS clkoutの2倍の周波数で生成されるパラレルクロックです。pma_div_clkout の周波数は、TX PMAパラレルクロックの分割バージョンです。

tx_clkout2 出力 クロック

ユーザーには、PCS clkout、PCS clkout x2、およびpma_div_clkoutの間で、このポートのクロックソースを選択するオプションがあります。目的のコンフィグレーションに基づいて、有効なクロックソースを選択する必要があります。例えば場合によっては、ダブルレート転送およびボンディングでは、EMIBにわたるデータ転送のためにこのポートをイネーブルする必要があります。

PCS clkoutは、ノンボンディング・コンフィグレーションの場合はローカルCGBにより生成され、ボンディング・コンフィグレーションの場合はマスターCGBにより生成されるパラレルクロックです。これにより、TX PCSのブロックがクロックされます。このクロックの周波数は、データレートをPCS/PMAインターフェイス幅で割った値と等しくなります。PCS clkout x2は、ダブル転送レートモードのコンフィグレーションの、PCS clkoutの2倍の周波数で生成されるパラレルクロックです。pma_div_clkout の周波数は、TX PMAパラレルクロックの分割バージョンです。

表 55.  RX PCS-Coreインターフェイス・ポートのパラレルデータ、コントロール、およびクロック
ポート名 入力/出力 クロックドメイン 説明

rx_parallel_data[<n>80-1:0]

出力

FIFOの読み出し側を駆動するクロック (rx_coreclkin または rx_clkout) に同期

RX PCSからFPGAファブリックへのRXパラレルデータです。トランシーバー・ネイティブPHY IPのGUIでEnable simplified data interfaceを選択すると、rx_parallel_data は、指定したコンフィグレーションに必要なビットだけを含みます。それ以外の場合には、インターフェイスは80ビット幅です。

特定のトランシーバー・コンフィグレーションでアクティブなポートを決定するには、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングを参照してください。異常なポートはフローティングまたは未接続のままにしておくことができます。

unused_rx_parallel_data

出力

rx_clkout

Enable simplified data interfaceをオンにした場合に、この信号は未使用データを指定します。simplified data interfaceがセットされない場合には、未使用ビットは rx_parallel_data の一部になります。特定のトランシーバー・コンフィグレーションでアクティブなポートを決定するには、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングを参照してください。未使用のデータ出力はフローティングまたは未接続のままにしておくことができます。
rx_control[<n> <8>-1:0] 出力

FIFOの読み出し側を駆動するクロック (rx_coreclkin または rx_clkout) に同期

rx_control ポートは、選択したEnhanced PCSのトランシーバー・コンフィグレーション・ルールに応じて、さまざまな機能を有します。Enable simplified data interfaceがセットされない場合、rx_controlrx_parallel_data の一部になります。

詳細は、エンハンストPCSのTXおよびRXコントロール・ポートの項を参照してください。

特定のトランシーバー・コンフィグレーションでアクティブなポートを決定するには、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングを参照してください。

rx_word_marking_bit 出力 FIFOの読み出し側を駆動するクロック (rx_coreclkin または rx_clkout) に同期

このポートは、ダブルレート転送モードがイネーブルになっている場合に必要です。このポートの論理状態がZeroの場合、rx_parallel_data バス上のデータにLower Significant Wordが含まれていることを示します。このポートの論理状態がOneの場合、rx_parallel_data バス上のデータにUpper Significant Wordが含まれていることを示します。

ダブルレート転送モードをイネーブルするには、Enable simplified data interfaceをディスエーブルする必要があります。したがって、rx_word_marking ビットは常に rx_parallel_data の一部として表示されることに注意してください。

rx_word_marking_bit ポートのポートマッピングについては、トランシーバーPHY PCS-to-Coreインターフェイスのポートマッピングの項を参照してください。

rx_coreclkin 入力 クロック

FPGAファブリックのクロックです。RX FIFOの読み出し側を駆動します。Interlakenプロトコルでは、このクロックの周波数をデータレート/67からデータレート/32にします。

rx_clkout

出力

クロック

ユーザーには、PCS clkout、PCS clkout x2、および pma_div_clkout の間で、このポートのクロックソースを選択するオプションがあります。目的のコンフィグレーションに基づいて、有効なクロックソースを選択する必要があります。

PCS clkoutは、トランシーバーRX PMAによって回復された低速パラレルクロックであり、RX PCSのブロックをクロックします。このクロックの周波数は、データレートをPCS/PMAインターフェイス幅で割った値と等しくなります。PCS clkout x2は、ダブル転送レートモードのコンフィグレーションの、PCS clkoutの2倍の周波数で生成されるパラレルクロックです。pma_div_clkout の周波数は、RX PMAパラレルクロックの分割バージョンです。

rx_clkout2 出力 クロック

ユーザーには、PCS clkout、PCS clkout x2、および pma_div_clkout の間で、このポートのクロックソースを選択するオプションがあります。目的のコンフィグレーションに基づいて、有効なクロックソースを選択する必要があります。

PCS clkoutは、トランシーバーRX PMAによって回復された低速パラレルクロックであり、RX PCSのブロックをクロックします。このクロックの周波数は、データレートをPCS/PMAインターフェイス幅で割った値と等しくなります。PCS clkout x2は、ダブル転送レートモードのコンフィグレーションの、PCS clkoutの2倍の周波数で生成されるパラレルクロックです。pma_div_clkout の周波数は、RX PMAパラレルクロックの分割バージョンです。

表 56.  TX PCS-CoreインターフェイスFIFO
ポート名 入力/出力 クロックドメイン 説明
tx_fifo_wr_en[<n>-1:0]

入力

FIFOの書き込み側を駆動するクロック (tx_coreclkin または tx_clkout) に同期

この信号のアサートは、TXデータが有効であることを示します。BasicおよびInterlakenの場合、FIFOがアンダーフローまたはオーバーフローしないように、TX Core FIFOフラグに基づいてこのポートを制御する必要があります。

詳細については、エンハンストPCS FIFOの動作を参照してください。

tx_enh_data_valid[<n>-1:0]

入力

FIFOの書き込み側を駆動するクロック (tx_coreclkin または tx_clkout) に同期

この信号のアサートは、TXデータが有効であることを示します。10GBASE-R、10GBASE-R 1588、10GBASE-R w/KR FEC、40GBASE-R w/KR FEC、Basic w/KR FEC、またはダブルレート転送モードを使用するトランシーバー・コンフィグレーション・ルールの場合、この信号をギアボックス比に基づいて制御する必要があります。例えば、トランシーバーのEnhanced PCSギアボックスが66:40や64:32などの1:1の比率に設定されていない場合は常に、tx_fifo_wr_en の代わりにこの信号を使用する必要があります。RX Core FIFOがInterlakenまたはBasicモードでコンフィグレーションされている場合を除き、代わりに tx_fifo_wr_en を使用する必要があります。

詳細については、エンハンストPCS FIFOの動作を参照してください。

tx_fifo_full[<n>-1:0]

出力

FIFOの書き込み側を駆動するクロック (tx_coreclkin または tx_clkout) に同期

この信号のアサートは、TX Core FIFOがフルであることを示します。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

tx_fifo_pfull[<n>-1:0]

出力

FIFOの書き込み側を駆動するクロック tx_coreclkin または tx_clkout に同期

この信号は、TX Core FIFOが、ネイティブPHY IPコアのPCS-Core Interfaceタブで設定された部分的にフルのしきい値に達すると、アサートされます。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

tx_fifo_empty[<n>-1:0]

出力

非同期

アサートされると、TX Core FIFOが空であることを示します。この信号は、2~3クロックサイクルの間アサートされます。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

tx_fifo_pempty[<n>-1:0]

出力

非同期

アサートされると、TX Core FIFOが、ネイティブPHY IPコアのPCS-Core Interfaceタブで設定された、指定された部分的に空のしきい値に達したことを示します。このオプションをオンにすると、Enhanced PCSは非同期の tx_fifo_pempty ポートをイネーブルします。この信号は、2~3クロックサイクルの間アサートされます。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

表 57.  RX PCS-CoreインターフェイスFIFO
ポート名 入力/出力 クロックドメイン 説明
rx_data_valid[<n>-1:0]

出力

FIFOの読み出し側を駆動するクロック rx_coreclkin または rx_clkout に同期

アサートされると、rx_parallel_data が有効であることを示します。rx_enh_data_valid 信号がLowの場合は、無効なRXパラレルデータを破棄します。

詳細については、エンハンストPCS FIFOの動作を参照してください。

rx_enh_data_valid[<n>-1:0]

出力

FIFOの読み出し側を駆動するクロック rx_coreclkin または rx_clkout に同期

アサートされると、rx_parallel_data が有効であることを示します。rx_enh_data_valid がLowの場合は、無効なRXパラレルデータを破棄します。例えば、トランシーバーのEnhanced PCSギアボックスが66:40や64:32などの1:1の比率に設定されていない場合は常に、rx_data_valid の代わりにこの信号を使用する必要があります。RX Core FIFOがInterlakenまたはBasicモードでコンフィグレーションされている場合を除き、代わりに rx_data_valid を使用する必要があります。

詳細については、エンハンストPCS FIFOの動作を参照してください。

rx_fifo_full[<n>-1:0]

出力

非同期

アサートされると、RX Core FIFOがフルであることを示します。この信号は、2~3クロックサイクルの間アサートされます。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

rx_fifo_pfull[<n>-1:0]

出力

非同期

アサートされると、RX Core FIFOが指定された部分的にフルのしきい値に達したことを示します。この信号は、2~3クロックサイクルの間アサートされます。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

rx_fifo_empty[<n>-1:0]

出力

FIFOの読み出し側を駆動するクロック rx_coreclkin または rx_clkout に同期

アサートされると、RX Core FIFOが空であることを示します。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

rx_fifo_pempty[<n>-1:0]

出力

FIFOの読み出し側を駆動するクロックrx_coreclkinまたはrx_clkoutに同期

アサートされると、RX Core FIFOが指定された部分的に空のしきい値に達したことを示します。位相補償モードでは、深度が常に一定であるためこの信号を無視できます。

詳細については、エンハンストPCS FIFOの動作を参照してください。

rx_fifo_del[<n>-1:0]

出力

FIFOの読み出し側を駆動するクロック rx_coreclkin または rx_clkout に同期

アサートされると、ワードがRX Core FIFOから削除されたことを示します。この信号は2~3クロックサイクルの間アサートされます。この信号は10GBASE-Rプロトコルに使用されます。

rx_fifo_insert[<n>-1:0]

出力

FIFOの読み出し側を駆動するクロック rx_coreclkin または rx_clkout に同期

アサートされると、ワードがRX Core FIFOに挿入されたことを示します。この信号は10GBASE-Rプロトコルに使用されます。

rx_fifo_rd_en[<n>-1:0]

入力

FIFOの読み出し側を駆動するクロック rx_coreclkin または rx_clkout に同期

RX Core FIFO InterlakenおよびBasicコンフィグレーションで、この信号がアサートされると、RX Core FIFOからワードが読み出されます。FIFOがアンダーフローまたはオーバーフローしないように、RX Core FIFOフラグに基づいてこの信号を制御する必要があります。
rx_fifo_align_clr[<n>-1:0]

入力

FIFOの読み出し側を駆動するクロック rx_coreclkin または rx_clkout に同期

FSR 15

アサートされるとRX Core FIFOはリセットされ、新たなアライメント・パターンの検索を開始します。この信号は、Interlakenプロトコルに対してのみ有効です。この信号は少なくとも4サイクルの間アサートします。

表 58.  レイテンシー測定/調整
ポート名 入力/出力 クロックドメイン 説明
latency_sclk 入力 クロック レイテンシー測定入力リファレンス・クロックです。
tx_fifo_latency_pulse 出力 tx_coreclkin レイテンシー測定からのTXコアFIFOのレイテンシー・パルスです。
tx_pcs_fifo_latency_pulse 出力 tx_clkout レイテンシー測定からのTX PCS FIFOのレイテンシー・パルスです。
rx_fifo_latency_pulse 出力 rx_coreclkin レイテンシー測定からのRXコアFIFOのレイテンシー・パルスです。
rx_pcs_fifo_latency_pulse; 出力 rx_clkout レイテンシー測定からのRX PCS FIFOのレイテンシー・パルスです。
15 FSRおよびSSR信号の詳細については、非同期データ転送の項を参照してください。