RXTX_BITSLICE のポート

UltraScale アーキテクチャ SelectIO リソース ユーザー ガイド (UG571)

Document ID
UG571
Release Date
2023-08-31
Revision
1.15 日本語

この図 に RXTX_BITSLICE プリミティブを示します。この図では、黒は入力、灰色は出力を表わしています。 表: RXTX_BITSLICE のポート に RXTX_BITSLICE のポートを示します。

図 2-45: RXTX_BITSLICE プリミティブ

X-Ref Target - Figure 2-45

X16036-rxtx_bitslice-primitive.jpg

表: RXTX_BITSLICE のポート に RXTX_BITSLICE のポートを示します。

表 2-22: RXTX_BITSLICE のポート

ポート

機能 (1)

I/O

同期クロック ドメイン

説明

DATAIN

I/O

RX

入力

非同期

これは、IOB からの入力信号です。単一出力を持つ差動入力バッファー (たとえば、IBUFDS) を使用する場合、差動ペアの P 側に隣接する RX_BITSLICE が使用されます。相補出力を備える差動入力バッファー (たとえば、IBUFDS_DIFF_OUT) を使用する場合、P 入力および N 入力両方に隣接する RX_BITSLICE が使用されます。

IOB からは、データ信号、クロック信号、またはストローブを入力することができ、それらの信号のタイプは、RX_BITSLICE の DATA_TYPE 属性で選択します。

クロックとして、またはクロックとデータの両方として設定した場合、データをキャプチャする目的でほかの RX_BITSLICE へ供給するクロックを生成するために、DATAIN は BITSLICE_CONTROL を介してほかの RX_BITSLICE のクロックに転送される入力ストローブ/クロックになります。このストローブ/クロックのビット スライスは、QBC または DBC IOB サイト (ニブル内のビット スライス位置 0 に必ず配置される) に配置する必要があります。詳細は、 BITSLICE_CONTROL セクションの ネイティブ モードでのクロッキング を参照してください。

IOB からの入力信号がデータのみである場合、ニブル内の任意のビット スライス位置に配置できます。

Q[7:0]

RX

FPGA

出力

FIFO_RD_CLK

RX FIFO からのデシリアライズされた (パラレル) 出力データはインターコネクト ロジックへ出力されます。

DATA_WIDTH = 4 の場合、Q[3:0] はキャプチャされたデータを出力します。Q[7:4] は未接続のままにでき、Q5 では DATAIN に到達するシリアル データ ストリームを表します。

注記: BITSLICE 0 および 6 (上位ニブルの BITSLICE 0) では、DATAIN から Q5 までのルートスルーは DLY_RDY がアサートされた後にのみ使用可能です。

DATA_WIDTH = 8 の場合、Q[7:0] はキャプチャされたシリアル データの 8 ビットを表し、DATAIN から Q5 へのルートスルーは利用できません。

RX_RST

RX

FPGA

入力

非同期

受信側 (RX_BITSLICE) ロジック、非同期アサート、および同期ディアサートをリセットします。アクティブ High です。
Q は 0 にリセットされ、RST はアサートされます。

詳細は、 ネイティブ モードのブリングアップおよびリセット を参照してください。

RX_CLK

RX

FPGA

入力

非同期

RX_LOAD、RX_CE および RX_INC の制御に使用される遅延ライン クロックです。レシーバー ロジック内にある遅延ライン エレメントへの制御入力はすべて、クロック入力 (RX_CLK) に同期します。
遅延を VARIABLE または VAR_LOAD に設定した場合、クロックは必ずこのポートに接続してください。RX_CLK はローカル反転可能で、グローバル クロック バッファーから供給する必要があります。

RX_CE

RX

FPGA

入力

RX_CLK

遅延ライン レジスタ ロック用のクロック イネーブル信号です。

RX_RST_DLY

RX

FPGA

入力

非同期
(RX_CLK に同期してディアサートされる)

レシーバー ロジック内の遅延ライン コンポーネント用のリセット ポートです。
内部遅延ラインを RX_DELAY_VALUE で指定した値にリセットします。

RX_INC

RX

FPGA

入力

RX_CLK

インクリメント/デクリメント機能は、イネーブル信号 (RX_CE) で制御されます。このインターフェイスは、遅延ラインが VARIABLE モードまたは VAR_LOAD モードの場合にのみ使用できます。CE が High を維持している間、遅延ラインは 1 クロック (RX_CLK) サイクルごとに 1 タップずつインクリメントまたはデクリメントされます。RX_INC のステートにより、遅延ラインのインクリメントまたはデクリメントが決定されます。たとえば、RX_INC = 1 のときインクリメント、RX_INC = 0 のときデクリメントします。いずれの場合もクロック (RX_CLK) に同期します。RX_CE が Low の場合、RX_INC のステートに関係なく遅延ライン全体の遅延は変化しません。

遅延ラインのプログラム可能な遅延タップはラップアラウンドします。つまり、遅延タップの最後 (RX_CNTVALUEOUT = 511) に到達すると、次のインクリメント機能はタップ 0 に戻ります。デクリメント機能についても同様で、タップ 0 に到達するとタップ 511 に戻ります。

RX_LOAD

RX

FPGA

入力

RX_CLK

VAR_LOAD モードおよび RX_UPDATE_MODE = ASYNC の場合、遅延ライン ロード ポートの RX_LOAD は、RX_CNTVALUEIN で設定した値を遅延ラインに読み込みます。RX_CNTVALUEIN[8:0] に現れる値が新しいタップ値となります。RX_LOAD は入力クロック信号 (RX_CLK) に同期したアクティブ High の信号です。新しい値を RX_CNTVALUEIN バスに適用してから LOAD 信号を適用するまで少なくとも RX_CLK の 1 クロック サイクル間待機してください。RX_LOAD 動作の間、RX_CE を Low に保つ必要があります。

RX_EN_VTC

RX

FPGA

入力

非同期

電圧、温度、プロセスによる変動のキャリブレーション/補正を有効にします。

High: BITSLICE_CONTROL が VT に対して遅延を一定に保つことができるようにする。VT の補正を有効にする間 BITSLICE_CONTROL の EN_VTC は High の必要があります。

Low: VT 補正機能が無効になる。

TIME モードを使用する場合、初期 BISC
(ビルトイン セルフ キャリブレーション) の間、RX_EN_VTC 信号を High にする必要があります。

COUNT モードを使用する場合、RX_EN_VTC 信号を Low にする必要があります。

ビット スライスがニブル内で TIME および COUNT の両モードで用られる場合、TIME モードで使用するビット スライスに対して RX_EN_VTC を High にし、COUNT モードで使用するビット スライスに対しては Low にする必要があります。

RX_CNTVALUEIN[8:0]

RX

FPGA

入力

RX_CLK

RX_CNTVALUEIN バスは、読み込み可能なタップ値を動的に変更する場合に使用します。RX_CNTVALUEIN の 9 ビット値は必要なタップ数です。新しい RX_CNTVALUEIN 値は、RX_EN_VTC が Low の場合にのみ適用する必要があります。RX_LOAD がパルスされるまで新しい RX_CNTVALUIN 値を 1 クロック サイクル間適用します。

新しい値は、LOAD 信号が適用される 1 クロック サイクル前に適用するのが最適です。遅延ラインは、一度に 1 タップ~ 8 タップに変更できます。

RX_CNTVALUEOUT[8:0]

RX

FPGA

出力

RX_CLK

RX_CNTVALUEOUT ピンは、現在のタップ値をレポートするために使用され、現在の遅延に含まれるタップ総数を読み出します。RX_EN_VTC が High になると、RX_CNTVALUEOUT は BITSLICE_CONTROL によって更新され
ます。

FIFO_RD_CLK

RX

FPGA

入力

非同期

デシリアライズされた受信データは、FIFO_RD_CLK 信号を使用して FIFO から読み出されます。FIFO の読み出しクロックは、PLL/MMCM で生成するか、または FIFO_WRCLK_OUT 出力から供給できます。

詳細は、 FIFO の機能 を参照してください。

FIFO_RD_EN

RX

FPGA

入力

FIFO_RD_CLK

RX FIFO からの読み出し動作を有効にします。アクティブ High です。この信号が Low の場合、FIFO の読み出しポインターは同じ位置で保持されます。これにより、Q 出力が新しいデータを 8 クロック サイクルごとに示します。 FIFO の機能 を参照してください。

FIFO_EMPTY

RX

FPGA

出力

FIFO_RD_CLK

このビットの FIFO に対する Empty フラグです。FIFO の書き込みポインターおよび読み出しポインターが同じ場合、この信号は High です。

反転および格納する場合、FIFO_EMPTY を FIFO_RD_EN に接続して FIFO から連続データ ストリームを取得します。

FIFO_WRCLK_OUT

RX

FPGA

出力

PLL_CLK (SERIAL_MODE の場合)

または DQS_IN
(ソース同期インターフェイスの場合)

(BITSLICE_CONTROL)

この信号は、ニブルの BITSLICE 0 にあるビット スライスに対してのみ有効です。 ほかの位置にあるビット スライスのこれらのピンには FPGA 内に配線がありません。

FIFO_WRCLK_OUT は、ビット スライス内部の FIFO_WR_CLK のコピーです。
これは、データ サンプル クロック/ストローブを分周したものです。このクロックによって、ビット スライス内のデシリアライズされたパラレル データが FIFO に書き込まれます。

注記: このポートの使用は、経験豊富な設計者にのみ推奨されます。

その他のタイミング制約は、 FIFO の機能 で説明します。

D[7:0]

TX

FPGA

入力

PLL_CLK

(BITSLICE_CONTROL)

送信用のインターコネクト ロジックからの入力パラレル データです。データ幅は TX_DATA_WIDTH 属性によって決定され、8 または 4 に設定できます。TX_DATA_WIDTH が 4 の場合は D[3:0] を使用し、D[7:4] を 0 に接続する必要があります。

T

TX

FPGA

入力

非同期

T は、TX_BITSLICE から出力バッファーのトライステート ピンまでの組み合わせパスを割り当てます。

トライステート制御信号をインターコネクト ロジックから供給する場合は、T ポートを使用する必要があります。ビット スライスの T 入力については、シリアル ビットストリームのブロック トライステートとしての使用が確認できます。

ニブル内の各 TX_BITSLICE には 1 つの T 入力があり、つまり、1 バイト (バイト = 2 ニブル) に 13 の T 入力が備わっていることになります。

TBYTE_IN

TX

FPGA

入力

PLL_CLK

(BITSLICE_CONTROL)

TBYTE_IN は、RXTX_BITSLICE の TX_BITSLICE 側の 1 ビット幅入力です。トライステートを使用する場合、TX_BITSLICE_TRI コンポーネントを使用して BITSLICE_CONTROL の TBYTE_IN[3:0] トライステート バス入力をシリアライズする必要があり、シリアル出力データ ストリーム内の個々のビットをトライステートできるようにします。BITSLICE_CONTROL の TBYTE_IN[3:0] ポートは処理され、BITSLICE_CONTROL を通過して TX_BITSLICE_TRI へ接続されます。TRI_OUT (TX_BITSLICE_TRI) がそれから各 TBYTE_IN (TX_BITSLICE) 入力へ接続されます。ロジック High は、データがトライステートではないことを示し、ロジック Low は、データがトライステートであることを示します。

O

I/O

TX

出力

PLL_CLK

(BITSLICE_CONTROL)

TX_BITSLICE からのシリアライズされた出力データです。出力バッファー (または双方向バッファー) に接続する必要があります。

T_OUT

I/O

TX

出力

PLL_CLK
(TBYTE_CTL が TBYTE_IN に
設定されている場合)

それ以外は非同期

(BITSLICE_CONTROL)

TX_BITSLICE からのトライステート出力です。出力バッファー (または双方向バッファー) に接続する必要があります。TBYTE_CTL を T に設定した場合は組み合わせ出力に、TBYTE_CTL を TBYTE_IN に設定した場合はシリアライズされた出力にできます。

TX_RST

TX

FPGA

入力

非同期

送信側 (TX_BITSLICE)、非同期アサート、および同期ディアサートをリセットします。アクティブ High です。RST がアサートされる間 O は INIT 属性値にリセットされます。

確定的なブリングアップには、 ネイティブ モードのブリングアップおよびリセット の手順に従います。

TX_CLK

TX

FPGA

入力

非同期

TX_LOAD、TX_CE、および TX_INC のサンプリングに使用する遅延ライン クロックです。RXTX_BITSLICE の TX 部分にある出力遅延エレメントへの制御入力はすべて、クロック入力 (TX_CLK) に同期します。遅延を VARIABLE または VAR_LOAD に設定した場合、クロックは必ずこのポートに接続してください。TX_CLK はローカル反転可能で、グローバル クロック バッファーから供給する必要があります。

TX_CE

TX

FPGA

入力

TX_CLK

出力遅延ライン レジスタ クロックのクロック イネーブル信号です。

TX_RST_DLY

TX

FPGA

入力

非同期

(TX_CLK に非同期でディアサートされる)

送信ロジック内の遅延ライン コンポーネント用のリセット ポートです。内部遅延ラインを TX_DELAY_VALUE 属性で指定した値にリセットします。

TX_INC

TX

FPGA

入力

TX_CLK

インクリメント/デクリメント機能は、イネーブル信号 (TX_CE) で制御されます。このインターフェイスは、遅延ラインが VARIABLE モードまたは VAR_LOAD モードの場合にのみ使用できます。TX_CE が High を維持している間、遅延ラインは 1 クロック (TX_CLK) サイクルごとに 1 タップずつインクリメントまたはデクリメントされます。TX_INC のステートにより、遅延ラインのインクリメントまたはデクリメントが決定されます。たとえば、TX_INC = 1 のときインクリメント、TX_INC = 0 のときデクリメントします。いずれの場合もクロック (TX_CLK) に同期します。TX_CE が Low の場合、TX_INC のステートに関係なく遅延ライン全体の遅延は変化しません。TX_CE が High になると、クロックの次の立ち上がりエッジからインクリメント/デクリメントが開始します。TX_CE が Low になると、クロックの次の立ち上がりエッジでインクリメント/デクリメントが終了します。

遅延ライン プリミティブのプログラム可能な遅延タップはラップアラウンドします。つまり、遅延タップの最後 (TX_CNTVALUEOUT = 511) に到達すると、次のインクリメント機能はタップ 0 に戻ります。デクリメント機能についても同様で、タップ 0 に到達するとタップ 511 に戻ります。

TX_LOAD

TX

FPGA

入力

TX_CLK

VAR_LOAD モードおよび TX_UPDATE_MODE = ASYNC の場合、この入力は、TX_CNTVALUEIN で設定された値を遅延ラインに読み込みます。 TX_CNTVALUEIN[8:0] に現れる値が新しいタップ値となります。TX_LOAD は入力クロック信号 (TX_CLK) に同期したアクティブ High の信号です。TX_LOAD 動作の間、TX_CE を Low に保つ必要があります。

TX_EN_VTC

TX

FPGA

入力

非同期

電圧、温度、プロセスによる変動の補正を有効にします。

High: BITSLICE_CONTROL が VT に対して遅延を一定に保つことができるようにする。VT の補正を有効にする間 BITSLICE_CONTROL の EN_VTC は High の必要があります。

Low: VT 補正機能が無効になる。

TIME モードを使用する場合、初期 BISC の間、TX_EN_VTC 信号を High にする必要があります。

COUNT モードで使用する場合、TX_EN_VTC 信号を Low にする必要があります。

ビット スライスがニブル内で COUNT および TIME の両モードで用られる場合、TIME モードで使用するビット スライスに対して TX_EN_VTC を High にし、COUNT モードで使用するビット スライスに対しては Low にする必要があります。

TX_CNTVALUEIN[8:0]

TX

FPGA

入力

TX_CLK

TX_CNTVALUEIN バスは、読み込み可能なタップ値を動的に変更する場合に使用します。TX_CNTVALUEIN バスの 9 ビット値は、TX_LOAD 後に遅延ラインが設定される新しいタップ値です。TX_LOAD 前にこのバスに値を 1 クロック サイクル以上供給します。遅延ラインは、一度に 1 タップ~ 8 タップに変更できます。

注記: TX_EN_VTC を使用して VT 補正を実行する場合、RXTX_BITSLICE は入力遅延値のみを補正します。出力遅延の補正が必要なアプリケーションでは、入力遅延と出力遅延を同じにする必要があります。

TX_CNTVALUEOUT[8:0]

TX

FPGA

出力

TX_CLK

TX_CNTVALUEOUT ピンは、現在のタップ値をレポートするために使用され、現在の遅延に含まれるタップ総数を読み出します。TX_EN_VTC が High になると、TX_CNTVALUEOUT は BITSLICE_CONTROL によって更新されます。

次の RX/TX_BIT_CTRL_OUT ピンおよび RX/TX_BIT_CTRL_IN ピンは、RXTX_BITSLICE (RX_BITSLICE および/または TX_BITSLICE) と BITSLICE_CONTROL との間の 40 ビット バス接続です。これらの 40 ビット バスは、RXTX_BITSLICE (RX_BITSLICE、TX_BITSLICE)、TX_BITSLICE_TRI、および BITSLICE_CONTROL との間 (逆方向も可) でデータ、クロック、RIU、およびステータスの各信号を伝送します。

ビット スライスを使用する場合は、これらのバスを適切な BITSLICE_CONTROL の入力バスおよび出力バスに接続する必要があります。

例:

RXTX_BITSLICE_2 を使用する場合、その RXTX_BITSLICE の RX/TX_BIT_CTRL_OUT を BITSLICE_CONTROL RX/TX_BIT_CTRL_IN2 に接続し、RXTX_BITSLICE バスの RX/TX_BIT_CTRL_IN を BITSLICE_CONTROL RX/TX_BIT_CTRL_OUT2 バスに接続する必要があります。

これらのバスは、BITSLICE_CONTROL とビット スライス間の専用配線で構成されており、FPGA 内のロジックからアクセスや使用はできません。また、これらのバスへは ILA や VIO を接続できず、バスのコンテンツおよびビット名は開示されていないため、シミュレーションでこれらのバスを表示させても意味はありません。

RX_BIT_CTRL_IN[39:0]

入力

N/A

BITSLICE_CONTROL からの入力バスです。

RX_BIT_CTRL_OUT[39:0]

出力

N/A

BITSLICE_CONTROL への出力バスです。

TX_BIT_CTRL_IN[39:0]

入力

N/A

BITSLICE_CONTROL からの入力バスです。

TX_BIT_CTRL_OUT[39:0]

出力

N/A

BITSLICE_CONTROL への出力バスです。

注記:

1. I/O RX: RXTX_BITSLICE の RX_BITSLICE 側と I/O バッファー間の接続です。
I/O TX: RXTX_BITSLICE の TX_BITSLICE 側と I/O バッファー間の接続です。
RX FPGA: RXTX_BITSLICE の RX_BITSLICE 側と FPGA ロジック間の双方向の接続です。
TX FPGA: RXTX_BITSLICE の TX_BITSLICE 側と FPGA ロジック間の双方向の接続です。