BISC を実行するのに必要な属性は、SELF_CALIBRATE = ENABLE のみです。次の表に、BISC 関連の属性と、BISC を使用しない場合 (SELF_CALIBRATE = DISABLE) の影響を示します。属性の詳細は、属性 を参照してください。
属性 | 説明 | SELF_CALIBRATE = DISABLE の場合の影響 |
---|---|---|
CRSE_DLY_EN | CRSE 遅延を有効にします。 | CRSE 遅延は使用しません。 |
DELAY_VALUE_<0-5> | 各 NIBBLESLICE の入力および出力遅延ラインの初期値を設定します。 | DELAY_VALUE_<0-5> にロードされる入力および出力の遅延値は 0 です。ただし、PL から遅延をロードすることは可能です。 |
DIS_IDLY_VT_TRACK | 入力遅延に対する VTC を無効にします。 | 入力遅延に対する VTC を無効にします。 |
DIS_ODLY_VT_TRACK | 出力遅延に対する VTC を無効にします。 | 出力遅延に対する VTC を無効にします。 |
DIS_QDLY_VT_TRACK | QTR 遅延に対する VTC を無効にします。 | QTR 遅延に対する VTC を無効にします。 |
RX_CLK_PHASE_N、RX_CLK_PHASE_P | ソース同期インターフェイスの場合、ストローブ (この場合は P 側クロックと N 側クロック) のセンタリングを制御します。 | RX_CLK_PHASE_N と RX_CLK_PHASE_P は SHIFT_90 には設定できません。 |
次の表に、BISC の制御方法を示します。
BISC の手順 | 制御方法 | その他の注意事項 | 全体に共通 |
---|---|---|---|
アライメント |
|
|
|
遅延キャリブレーション |
|
||
VTC |
|
|
重要: REFCLK_FREQUENCY が 500MHz 未満の場合、DELAY_VALUE_x 属性と VTC はサポートされません。この場合、EN_VTC は 0 に接続してください。
次の図に示すように、遅延を変更する手順は PHY_RDY の最初のアサートより前か後かで異なります。VTC を使用しない場合の遅延値の変更方法は、遅延の制御 を参照してください。
次に、PHY_RDY が最初にアサートされた後に NIBBLESLICE[x] の遅延値を変更する場合の手順とタイミング図を示します。
- 最初の状態では、EN_VTC、RX_EN_VTC、および TX_EN_VTC がアサートされています。
- RX_EN_VTC と TX_EN_VTC をディアサートします。
- RX_EN_VTC と TX_EN_VTC がディアサートされてから、CTRL_CLK の 10 サイクル待ちます。
- 遅延値を変更します (遅延の制御 参照)。
- さらに CTRL_CLK の 10 サイクル待ってから、RX_EN_VTC と TX_EN_VTC を再びアサートします。
- これで、XPHY は VTC が可能な状態となり、通常どおり動作できます。
図 1. PHY_RDY が最初にアサートされた後に遅延値を変更
次に、PHY_RDY が最初にアサートされる前に NIBBLESLICE[x] の遅延値を変更する場合の手順とタイミング図を示します。
- 最初の状態では、EN_VTC がディアサートされ、RX_EN_VTC と TX_EN_VTC がアサートされています。
- DLY_RDY をアサートした後、RX_EN_VTC と TX_EN_VTC をディアサートします。
- 関連する RX_EN_VTC および TX_EN_VTC がディアサートされてから、CTRL_CLK の 10 サイクル待ちます。
- 遅延値を変更します (遅延の制御 参照)。
- さらに CTRL_CLK の 10 サイクル待ってから、EN_VTC、RX_EN_VTC、および TX_EN_VTC をアサートします。
- PHY_RDY がアサートされると、XPHY は VTC が可能な状態となり、通常どおり動作できます。
図 2. PHY_RDY が最初にアサートされる前に遅延値を変更