Intel Stratix 10 高速LVDS I/O ユーザーガイド
インテル Stratix 10 デバイスの高速 LVDS I/O の概要
インテル® Stratix 10® デバイスは、すべての I/O バンク上の LVDS をサポートします。
- すべての LVDS I/O バンクは RD OCT を有する真の LVDS 入力と真の LVDS 出力バッファーをサポートします。
- デバイスはエミュレーション LVDS チャネルをサポートしません。
- デバイスは、SERDES ( シリアライザー / デシリアライザー ) を駆動する I/O PLL 用の真の差動 I/O リファレンス・クロックをサポートします。
- 各 LVDS I/O ピンのペアは、LVDS レシーバーまたは LVDS トランスミッターとして使用可能です。
- LVDS SERDES IPコアは、 Duplex Feature能オプションを使用して、トランスミッター・チャネルとレシーバー・チャネルを同じI/Oバンクに配置できます。
使用モード | クイック・ガイドライン |
---|---|
トランスミッター | このモードでは、SERDESブロックはシリアライザーとして機能します。 |
DPAレシーバー |
|
Non-DPA Receiver |
|
Soft-CDR Receiver |
|
Bypass the SERDES |
GPIO IPコアを使用して、シリアライザーをバイパスしてSERDES係数2を使用できます。
|
インテル Stratix 10 LVDS チャネルのサポート
LVDSチャネルの数について詳しくは、 インテル® Stratix® 10デバイスのピンアウト・ファイルを参照してください。
インテル Stratix 10 デバイスの GPIO バンク、SERDES、および DPA の位置
インテル Stratix 10 デバイスの高速 LVDS I/O のアーキテクチャーと機能
インテル Stratix 10 デバイスの LVDS SERDES I/O 規格のサポート
I/O 規格 | インテル® Quartus® Prime開発ソフトウェアの I/O アサインメント値 |
---|---|
True LVDS | LVDS |
mini-LVDS | mini-LVDS |
RSDS | RSDS |
LVDS トランスミッターのプログラマブル I/O 機能
機能 |
設定 |
アサインメント名 | サポートされる I/O 規格 |
---|---|---|---|
プリエンファシス | 0(ディスエーブル)、1(イネーブル)。デフォルトは1。 | プログラマブル・プリエンファシス |
|
差動出力電圧 | Low (0)、Medium low (1)、Medium high (2)、およびHigh (3)。デフォルトは2。 | プログラマブル差動出力電圧 (VOD) |
プログラマブル・プリエンファシス
ドライバーの V OD 設定と出力インピーダンスは、高速伝送の信号の出力電流制限を設定します。高周波数では、スルーレートが次のエッジの前にフル VODに達するほど高速ではないため、パターンに依存するジッターが発生します。プリエンファシスを適用した場合、スイッチング中に出力電流が瞬時に増幅され、出力スルーレートが増大します。
プリエンファシスは、出力信号の高周波数コンポーネントの振幅を増加させるため、伝送ラインにおける周波数依存の減衰を補償するのに役立ちます。余剰の電流によるオーバーシュートは、信号の反射によるオーバーシュートとは異なり、ステート・スイッチングの変更中にのみ生じ、出力スルーレートを高めます。また、リンギングは起こりません。必要なプリエンファシスの量は、伝送ラインにおける高周波数コンポーネントの減衰によって異なります。
フィールド | アサインメント |
---|---|
To | tx_out |
アサインメント名 | プログラマブル・プリエンファシス |
許容値 | 0(ディスエーブル)、1(イネーブル)。デフォルトは1。 |
プログラマブル差動出力電圧
プログラマブル VOD設定では、出力のアイ開口を調整して、トレース長と消費電力を最適化することができます。高い VODスイングはレシーバー端における電圧マージンを高め、小さい VODスイングは消費電力を削減します。差動信号の VOD は、 インテル® Quartus® Prime開発ソフトウェア Assignment Editor の VOD設定を変更することによってスタティックに調整することができます。
フィールド | アサインメント |
---|---|
To | tx_out |
アサインメント名 | プログラマブル差動出力電圧 (VOD) |
許容値 | Low (0)、Medium low (1)、Medium high (2)、およびHigh (3)。デフォルトは2。 |
SERDES 回路
LVDS SERDES インテル® FPGA IPトランスミッターおよびレシーバーには、I/O PLLからのさまざまなクロックおよびロード・イネーブル信号が必要です。 インテル® Quartus® PrimeソフトウェアはPLL設定を自動的にコンフィグレーションします。また、このソフトウェアは、入力リファレンス・クロックと選択されたデータ・レートに基づいてさまざまなクロックおよびロード・イネーブル信号を生成する役割も担っています。
インテル Stratix 10 デバイスの差動トランスミッター
専用回路 / 機能 | 概要 |
---|---|
差動 I/O バッファー | LVDS、mini-LVDS、および RSDS をサポートします。 |
SERDES | 3〜10ビット幅シリアライザー |
PLL ( フェーズ・ロック・ループ ) | ロードおよびシフトレジスターをクロックします。 |
プログラマブル VOD | スタティック |
プログラマブル・プリエンファシス | 出力電流をブーストします。 |
インテル Stratix 10 デバイスのトランスミッター・ブロック
専用回路は、真の差動バッファー、シリアライザー、およびトランスミッターとレシーバー間で共有可能な I/O PLL で構成されています。シリアライザーは、FPGA ファブリックから最大 10 ビット幅のパラレルデータを受け取ってそれをロードレジスター内にクロックし、データを差動バッファーに送信する前に I/O PLL によってクロックされたシフトレジスターを使用してシリアライズ化します。パラレルデータの MSB が最初に送信されます。
DDR および SDR 動作のためのシリアライザーのバイパス
I/Oエレメント (IOE) には、それぞれが DDR または SDR モードで動作可能な 2 個のデータ出力レジスターがあります。
DDR(2)およびSDR(1)の動作をサポートする際にはバイパスして、それぞれ2および1 のシリアライザーション・ファクタを実現できます。デシリアライザーのバイパスはGPIO インテル® FPGA IPを介してサポートされます。
- SDR モードの場合 :
- IOE データ幅は 1 ビットです。
- 出力レジスターパスはクロックを必要とします。
- データは直接 IOE 通過します。
- DDRモードの場合:
- IOEデータ幅は2ビットです。
- GPIO IPコアにはクロックが必要です。
- tx_inclockはIOEレジスターをクロックします。
インテル Stratix 10 デバイスの差動レシーバー
レシーバーは、トランスミッターとレシーバーで共有できる差動バッファーと I/O PLL、DPA ブロック、シンクロナイザー、データ・リアライメント・ブロック、およびデシリアライザーを有します。差動バッファーは LVDS、mini-LVDS、および RSDS 信号レベルを受信することができます。また、レシーバーピンの I/O 規格は、 インテル® Quartus® Prime開発ソフトウェアの Assignment Editor で LVDS、mini-LVDS、または RSDS にスタティックに設定することができます。
専用回路 / 機能 | 概要 |
---|---|
差動 I/O バッファー | LVDS、mini-LVDS、および RSDS をサポート |
SERDES | 最大 10 ビット幅のシリアライザー |
PLL ( フェーズ・ロック・ループ ) | データ・シンクロナイザーのためにクロックの異なる位相を生成 |
データ・リアラインメント ( ビットスリップ ) | ビット・レイテンシーをシリアルデータに挿入 |
DPA | シリアルデータの位相に最も近い位相を選択 |
シンクロナイザー (FIFO バッファー ) | データとレシーバーの入力リファレンス・クロック間における位相差を補償 |
スキュー調整 | マニュアル |
オンチップ終端 (OCT) | LVDS I/O 規格で100 Ω |
インテル Stratix 10 デバイスのレシーバーブロック
インテル® Stratix 10® の差動レシーバーは、次のハードウェア・ブロックを有します。
- DPA ブロック
- シンクロナイザー
- データ・リアライメント・ブロック ( ビットスリップ )
- デシリアライザー
DPA ブロック
DPA ブロックは、差動入力バッファーから高速シリアルデータを取り込み、I/O PLL が生成する 8 つの位相のうち 1 つを選択してデータをサンプリングします。DPA はシリアルデータの位相に最も近い位相を選択します。受信データと選択された位相間の最大位相オフセットは 1/8 UI1であり、これは DPA の最大量子化誤差です。クロックの 8 つの位相は均等に分割され、45° の分解能を提供します。
DPA ブロックは、入力シリアルデータの位相を継続的に監視し、必要に応じて新しいクロック位相を選択します。オプションのrx_dpa_holdポートをアサートすることで、DPA が新しいクロックフェーズを選択できないようにすることができます。これは、各チャネルで使用可能です。
DPA 回路では、8 つの位相から最適な位相にロックするにあたって固定トレーニング・パターンは必要ありません。リセットまたはパワーアップ後、最適な位相にロックするために、DPA 回路は受信データにおける遷移を必要とします。オプションの出力ポートであるRX_DPA_LOCKEDを使用して、パワーアップまたはリセット後、最適な位相に初期の DPA ロック状態を示すことができます。データを検証するには、巡回冗長検査 (CRC) や DIP-4 ( 対角インターリーブ・パリティー ) などのデータチェッカーを使用します。
独立したリセットポートのRX_RESETを使用して、DPA 回路をリセットすることができます。なお、DPA 回路はリセット後に再トレーニングする必要があります。
シンクロナイザー
シンクロナイザーは、dpa_fast_clock(DPA ブロックが選択する最適クロック ) と I/O PLL が生成するfast_clock の位相差を補償する1 ビット幅の6 ビット幅のFIFO バッファーです。シンクロナイザーは、周波数差ではなく、データとレシーバーの入力基準クロックとの間の位相差のみを補償することができます。
オプションのポートのrx_fifo_reset を内部ロジックで使用してシンクロナイザーをリセットすることができます。シンクロナイザーは、DPA が最初に着信データにロックすると自動的にリセットされます。Intelは、rx_fifo_reset を使用して、受信データが破損していることをデータチェッカーが示した時にシンクロナイザーをリセットすることを推奨します。
データ・リアラインメント・ブロック ( ビットスリップ )
リンクによって追加されるスキューと共に送信されるデータのスキューは、受信シリアル・データストリームでチャネル間スキューが生じます。DPA がイネーブルされると、受信データは各チャネル上の異なるクロック位相でキャプチャーされます。この相違によって、チャネル間で受信データのミスアライメントが生じることがあります。このチャネル間スキューを補正し、各チャネルで正しい受信ワード境界を確立するために、各レシーバーチャネルは、ビット・レイテンシーをシリアルストリームに挿入することによってデータを再びアライメントする、専用データ・リアライメント回路を備えています。
オプションのrx_bitslip_ctrlポートは、内部ロジックから個別に制御される各レシーバーのビット挿入を制御します。データはrx_bitslip_ctrlの立ち上がりエッジで 1 ビットをスリップします。rx_bitslip_ctrl信号の要件には次の項目が含まれます。
- 最小パルス幅は、ロジックアレイのパラレルクロックでの 1 周期である。
- パルス間の最小 Low 時間は、パラレルクロックでの 1 周期である。
- 信号はエッジトリガー信号である。
- 有効なデータは、rx_bitslip_ctrlの立ち上がりエッジから 4 パラレル・クロックサイクル後に使用できる。
データ・リアライメント回路は、デシリアライゼーション・ファクターに設定されるビットスリップのロールオーバー値があります。オプションのステータスポートのrx_bitslip_maxは、プリセット・ロールオーバー・ポイントに達することを示すために、各チャネルから FPGA ファブリックに使用可能です。
デシリアライザー
IOEには、DDRまたはSDRモードで動作可能な2つのデータ入力レジスターがあります。 DDR(x2)およびSDR(x1)操作をサポートするためにデシリアライザーをバイパスすることができます。デシリアライザーのバイパスは、GPIO IPコアを介してサポートされます。
- SDRモードでデシリアライザーをバイパスした場合:
- IOEデータ幅は1ビットです。
- 登録された入力経路は時計を必要とします。
- データはIOEを介して直接渡されます。
- DDRモードでデシリアライザーをバイパスした場合:
- IOEデータ幅は2ビットです。
- のGPIO IPコアにはクロックが必要です。
- rx_inclockはIOEレジスタをクロックします。クロックはrx_inと同期している必要があります。
- データからクロックへのスキューを制御する必要があります。
デシリアライザーをバイパスする際、DPA およびデータ・リアライメント回路は使用できません。
インテル Stratix 10 デバイスのレシーバーモード
インテル® Stratix 10® デバイスは、次のレシーバーモードをサポートします。
- 非 DPA モード
- DPA モード
- ソフト CDR モード
非 DPA モード
非 DPA モードは、DPA およびシンクロナイザー・ブロックをディスエーブルします。入力シリアルデータは、I/O PLL によって生成されるシリアルfast_clockクロックの立ち上がりエッジで登録されます。
I/O PLL によって生成されるfast_clockクロックは、データ・リアライメントとデシリアライザー・ブロックをクロックします。
DPA モード
DPA ブロックは、I/O PLL によって送信された 8 つの高速クロックから最良のクロック (dpa_fast_clock) を選択します。このシリアルdpa_fast_clockクロックは、シンクロナイザーへのシリアルデータの書き込みに使用されます。また、シリアルfast_clockクロックは、シンクロナイザーからのシリアルデータの読み取りに使用されます。データ・リアライメントおよびデシリアライザー・ブロックでは、同じfast_clockクロックが使用されます。
ソフト CDR モード
インテル® Stratix 10® の LVDS チャネルは、GbE および SGMII プロトコルをサポートするためにソフト CDR モードを提供します。レシーバー PLL は、リファレンスにローカル・クロック・ソースを使用します。
ソフト CDR モードでは、シンクロナイザー・ブロックは非アクティブです。DPA 回路は最適な DPA クロック位相を選択し、データをサンプリングします。このクロックはビットスリップ動作とデシリアライゼーションに使用されます。また、DPA ブロックは、選択された DPA クロック (rx_divfwdclk と呼ばれるデシリアライゼーション・ファクターで分周されている ) をデシリアライズされたデータとともに FPGA ファブリックに転送します。このクロック信号は、周辺モジュールクロック (PCLK) ネットワーク上に出力されます。
ソフト CDR モードを使用する場合、DPA がトレーニングされた後にrx_resetポートをアサートしないでください。DPA は PLL から継続的に新しい位相タップを選択し、リファレンス・クロックと着信データ間の PPM (Parts Per Million) 差をトラックします。
すべての LVDS チャネルはソフト CDR モードで使用することができ、 インテル® Stratix 10® デバイスファミリーの PCLK ネットワークを使用して FPGA ファブリックを駆動することができます。ソフト CDR モードでは、アップストリーム・トランスミッターとローカルレシーバーの入力リファレンス・クロック間の PPM 差をトラックするために DPA が継続的に位相を変更するため、rx_dpa_locked信号は無効です。ただし、rx_dpa_locked信号を使用して、DPA がデータをキャプチャーするにあたって最適な位相タップを選択したことを示す初期 DPA ロック状態を判断することができます。rx_dpa_locked信号は、ソフト CDR モードで動作中にディアサートすることが予測されます。また、I/O PLL で生成されるパラレルクロックのrx_outclockも FPGA ファブリックに転送されます。
Stratix 10 デバイスの高速 LVDS I/O デザインの考慮事項
インテル Stratix 10 デバイスの PLL とクロッキング
パラレルクロック (rx_outclockとtx_outclock) と高速クロック (diffioclk) を生成するために、 インテル® Stratix 10® デバイスは、高速差動 I/O レシーバーおよびトランスミッターのチャネルで I/O PLL を提供します。
差動トランスミッターのクロッキング
I/O PLL は、ロードおよびシフトレジスターをクロックするロードイネーブル (LVDS_LOAD_EN) 信号とdiffioclk信号 ( シリアル・データ・レートで実行するクロック ) を生成します。シリアライゼーション・ファクターは、 インテル® Quartus® Primeソフトウェアを使用して x3、x4、x5、x6、x7、x8、x9、または x10 にスタティックに設定することができます。ロードイネーブル信号はシリアライゼーション・ファクター設定からから派生します。
任意の インテル® Stratix 10® トランスミッター・データ・チャネルをコンフィグレーションして、ソース・シンクロナス・トランスミッター・クロック出力を生成することができます。この柔軟性により、出力クロックをデータ出力の近くに配置してボードレイアウトを簡略化し、クロックとデータ間のスキューを低減することができます。
アプリケーションごとに、特定のクロック - データ間のアライメントまたはデータレート - クロックレート間の係数が必要になる場合があります。これらの設定は、 インテル® Quartus® Prime Parameter Editor でスタティックに指定することができます。
- トランスミッターは、デバイスの各のスピードグレードがサポートする最大周波数と同じレートでクロック信号を出力できます。
- 出力クロックは、シリアライゼーション係数に応じて、1、2、4、6、8、または 10 の係数で分周することができます。
- データに関連するクロックの位相は、0° または 180° ( エッジまたは中央揃え ) に設定することができます。I/O PLL は、45° の増分でその他の位相シフトの追加のサポートを提供します。
- tx_outclockに180°の倍数ではない位相シフトがある場合は、それぞれを配置することしかできません。 LVDS SERDES インテル® FPGA IP単一のI/Oバンク内のトランスミッターインターフェイス 。
差動レシーバーのクロッキング
I/O PLL は外部クロック入力を受信し、同じクロックの異なる位相を生成します。DPA ブロックは、I/O PLL からのクロックの 1 つを自動的に選択し、各チャネル上の着信データをアラインメントします。
シンクロナイザー回路は、DPA クロックとデータ・リアライメント・ブロック間の位相差を補正する1 ビット幅 x 6 ビット深度の FIFO バッファーです。必要に応じて、ユーザー・コントロールのデータ・リアライメント回路は、ワード境界にアライメントするために、シリアル・ビット・ストリームに 1 ビットのレイテンシーを挿入します。デシリアライザーはシフトレジスターとパラレル・ロード・レジスターを含めており、内部ロジックに最大 10 ビットを送信します。
トランスミッターおよびレシーバー LVDS チャネルを接続する物理メディアは、シリアルデータとソース同期クロックとの間にスキューを導入することがあります。各 LVDS チャネルとクロック間の瞬間的なスキューは、レシーバーで見られるデータおよびクロック信号のジッターによって異なります。3 つの異なるモード ( 非 DPA、DPA、およびソフト CDR) は、ソース同期クロック ( 非 DPA、DPA) / リファレンス・クロック ( ソフト CDR) とシリアルデータ間のスキューを補償するにあたって異なるオプションを提供します。
非 DPA モードでは、スキューを補償するために、ソース同期クロックと受信シリアルデータ間の最適な位相をスタティックに選択することができます。DPA モードでは、ソース同期クロックと受信シリアルデータ間のスキューを補償するために、DPA 回路が自動的に最適な位相を選択します。ソフト CDR モードは、チップ間の同期および非同期アプリケーションと SGMII プロトコルの短距離ボード間アプリケーションのための機会を提供します。
ガイドライン : LVDS リファレンス・クロックソース
リファレンス・クロック入力 | 説明 | リファレンス・クロックの分配 |
---|---|---|
同じI/Oバンク内の専用リファレンス・クロック入力。 | このクロック入力ソースは、パフォーマンスおよびタイミング・クロージャーの問題を回避するための最良の選択です。 | 手動でリファレンス・クロックを進めないでください。 |
他のI/Oバンクからのリファレンス・クロック入力。 | このソースは、ハード・プロセッサー・システム(HPS)、IOPLL IP、または他のIPなどの他のソースからではなく、別のI/Oバンクからのものである必要があります。 | 手動でリファレンス・クロックを昇格する必要があります。 |
手動でリファレンス・クロックを宣伝するには、以下のステートメントを インテル® Quartus® Prime設定ファイル( .qsf )に含めることができます。
set_instance_assignment -name GLOBAL_SIGNAL GLOBAL_CLOCK -to <name of top-level reference clock input port>
ガイドライン : LVDS での整数 PLL モードの PLL の使用
ガイドライン : LVDS SERDES のみをクロックするために使用する PLL からの高速クロック
PLL から生成される高速クロックは、LVDS SERDES 回路をクロックすることのみを目的とします。コアロジックをドライブできる周波数は PLL FOUT仕様で制限されるため、その他のロジックをドライブするために高速クロックを使用しないでください。
FOUT仕様について詳しくは、デバイス・データシートを参照してください。
ガイドライン : 差動チャネルのピン配置
各 I/O バンクには独自の PLL が含まれています。I/O バンク PLL は、同じバンク内のすべてのレシーバーとトランスミッターのチャネル、および隣接する I/O バンクのトランスミッター・チャネルをドライブすることができます。ただし、I/O バンク PLL は、別の I/O バンク内のレシーバーチャネルまたは非隣接する I/O バンクのトランスミッター・チャネルをドライブすることはできません。
差動トランスミッター・チャネルをドライブする PLL
差動トランスミッターでは、PLL は独自の I/O バンクおよび隣接する I/O バンク内の差動トランスミッター・チャネルをドライブすることができます。ただし、PLL は隣接しない I/O バンクのチャネルをドライブすることはできません。
DPA がイネーブルされた差動レシーバーチャネルをドライブする PLL
差動レシーバーでは、PLL は、同じ I/O バンク内のすべてのチャネルをドライブすることができますが、バンクを渡ってドライブすることはできません。
I/O バンクの各差動レシーバーは、クロックの位相を関連するチャネルのデータ位相にアライメントするための専用DPA回路を有します。バンク内のDPAチャネルをイネーブルする場合、バンク内でシングルエンドI/Oおよび差動I/O 規格の両方を使用することができます。
DPA を使用すると、高速差動レシーバーチャネルの配置にいくつかの制約が加わります。 インテル® Quartus® Prime コンパイラーは自動的にデザインをチェックし、配置ガイドラインに違反があるとエラーメッセージを発行します。適切な高速 I/O 動作を保証するために、ガイドラインに従ってください。
複数の I/O バンクにまたがる LVDS インターフェイスの DPA がイネーブルされた差動レシーバーとトランスミッター・チャネルを駆動する PLL
差動トランスミッター・チャネルと DPA がイネーブルされたレシーバーチャネルをバンク内で同時に使用する場合、PLL は複数の隣接する I/O バンクにまたがるトランスミッターを駆動できますが、独自の I/O バンク内のレシーバーのみを駆動できます。
外部 PLL モードの LVDS インターフェイス
LVDS SERDES IP コアのパラメーター・エディターは、Use External PLLオプションでLVDSインターフェイスを実装するためのオプションを提供します。このオプションをイネーブルすると、異なるデータ・レート、ダイナミック位相シフト、およびその他の設定をサポートするためのPLLのダイナミックなリコンフィグレーションといったPLL設定を制御することができます。また、さまざまなクロックおよびロード・イネーブル信号を生成するために、IP コアをインスタンス化する必要があります。
LVDS SERDES IP コア・トランスミッターおよびレシーバーによってUse External PLLオプションをイネーブルするとき、ALTPLLメガファンクションから以下の信号が必要です。
- LVDS SERDES IP コア・トランスミッターおよびレシーバーのSERDESへのシリアル・クロック入力
- LVDS SERDES IP コア・トランスミッターおよびレシーバーのSERDESへのロード・イネーブル
- トランスミッター FPGA ファブリック・ロジックのクロックに使用されるパラレルクロック ( コアクロック ) とレシーバーに使用されるパラレルクロック
- LVDS SERDES IPコアレシーバーの非同期PLLリセットポート
- LVDS SERDES IPコアレシーバーのDPAおよびソフトCDRモード用のPLL VCO信号
LVDS SERDES IPコアパラメーター・エディターのClock Resource Summaryタブは、前のリストの信号の詳細を提供します。
IOPLLさまざまなクロックを生成してイネーブル信号をロードするIPコアをインスタンス化する必要があります。これらの設定は IOPLL IPコアパラメーター・エディターーで構成する必要があります。
- SettingsタブにあるLVDS External PLLオプション
- PLLタブにあるOutput Clocksオプション
- PLLタブにあるCompensation Modeオプション
LVDS 機能モード | IOPLL IP コアの設定 |
---|---|
TX、RX DPA、RX ソフト CDR | Direct モード |
RX、非 DPA | LVDS compensation モード |
LVDS SERDES IPコアによるIOPLL IPコア信号インターフェイス
IOPLL IP コアより | LVDS SERDES IPコアトランスミッターまたはレシーバーへ | |
---|---|---|
CPAなし | CPA付き | |
lvds_clk[0]
(シリアルクロック出力信号)
シリアル・クロック出力(outclk0)は、LVDS SERDES IPコアのトランスミッターおよびレシーバー上でext_fclkのみ駆動することができます。なお、このクロックはコアロジックを駆動することはできません。 |
ext_fclk(トランスミッターまたはレシーバーへのシリアル・クロック入力) |
ext_fclk(トランスミッターまたはレシーバーへのシリアル・クロック入力) |
loaden [0] (ロードイネーブル出力)
|
ext_loaden(トランスミッターまたはレシーバーへのロード・イネーブル) この信号は、ソフトCDRモードのLVDSレシーバーには必要ありません。 |
ext_loaden(トランスミッターまたはレシーバーへのロード・イネーブル) この信号は、ソフトCDRモードのLVDSレシーバには必要ありません。 |
outclk4 (パラレルクロック出力) Use the CPA block for improved periphery-core timingをオンにした場合、このクロックは不要です。 |
ext_coreclock (パラレル・コア・クロック) |
— |
locked |
— |
ext_pll_locked |
reset |
pll_areset(非同期PLLリセット・ポート) |
pll_areset(非同期PLLリセット・ポート) |
1119443370
|
ext_vcoph [7:0] この信号は、DPAまたはソフトCDRモードのLVDSレシーバーにのみ必要です。 |
ext_vcoph [7:0] この信号はすべてのトランスミッターまたはレシーバーモードに必要です。 |
外部 PLL モードのIOPLLパラメーター値
次の例は、IOPLL IPコアを使用してLVDS SERDES IPの出力クロックを生成するにあたってのクロッキング要件を示しています。なお、例では、クロックとデータはデバイスのピンでエッジ・アライメントされるという仮定で位相シフトを設定しています。
パラメーター |
outclk0 (LVDS SERDES IPコアのトランスミッターまたはレシーバーのext_fclkポートに接続します) |
outclk1 (LVDS SERDES IPコアのトランスミッターまたはレシーバーのext_loadenポートに接続します) |
outclk4 2 (トランスミッターとレシーバー両方のパラレル・データ・レジスターのコアクロックとして使用し、LVDS SERDES IPコアのext_coreclockポートに接続します) |
---|---|---|---|
Frequency |
データレート |
データレート / シリアライゼーション係数 |
データレート / シリアライゼーション係数 |
Phase shift |
180° |
[( デシリアライゼーション係数 – 1 ) / デシリアライゼーション係数 ] x 360° |
180 / シリアライゼーション係数 ( シリアライゼーション係数で除算した outclk0 位相シフト ) |
Duty cycle |
50% |
100 / シリアライゼーション係数 |
50% |
RSKM の式を使用する位相シフトの計算では、入力クロックとシリアルデータはエッジ・アライメントされていると仮定します。180° の位相シフトをサンプリング・クロック (outclk0) に導入すると、次の図に示されるように、入力データは outclk0 に対して確実に中央に揃えられます。
パラメーター |
outclk0 (LVDS SERDES IPコアのトランスミッターまたはレシーバーのext_fclkポートに接続します) |
outclk1 (IPコアのトランスミッターまたはレシーバーのext_loadenポートに接続します) ソフトCDRレシーバには必要ありません。 |
outclk42M512 (LVDS SERDES IPコアのトランスミッターとレシーバー両方のパラレル・データ・レジスターのコアクロックとして使用し、IPのext_coreclockポートに接続します) |
VCO周波数 (LVDS SERDES IPコアのext_vcoph[7..0]ポートに接続します) |
---|---|---|---|---|
Frequency |
データレート |
データレート / シリアライゼーション係数 | データレート / シリアライゼーション係数 |
データレート |
Phase shift |
180° |
[ ( デシリアライゼーション係数 – 1 ) / デシリアライゼーション係数 ] x 360° |
180 / シリアライゼーション係数 ( シリアライゼーション係数で除算した outclk0 位相シフト ) |
— |
Duty cycle |
50% |
100 / シリアライゼーション係数 |
50% |
— |
パラメーター |
outclk0 ( lvds_clk [0]としてLVDS SERDES IPコアのレシーバーのext_fclkポートに接続します。 ) |
outclk1 ( loaden [0]としてLVDS SERDES IPコアのレシーバーのext_loadenポートに接続します。 ) ソフトCDRレシーバーには必要ありません。 |
outclk42M512 (トランスミッターとレシーバー両方のパラレル・データ・レジスターのコアクロックとして使用し、LVDS SERDES IPコアのext_coreclockポートに接続します。) |
VCO 周波数 (LVDS SERDES IPコアのext_vcoph[7..0]ポートに接続します。) |
---|---|---|---|---|
outclk2 ( lvds_clk [1]としてLVDS SERDES IPコアのトランスミッターのext_fclkポートに接続します。 ) |
outclk3 ( loaden [1]としてLVDS SERDES IPコアのトランスミッターのext_loadenポートに接続します。 ) |
|||
Frequency |
データレート |
データレート / シリアライゼーション係数 | データレート / シリアライゼーション係数 |
データレート |
Phase shift |
180° |
[( デシリアライゼーション係数 – 1) / デシリアライゼーション係数 ] x 360° |
180 / シリアライゼーション係数 ( シリアライゼーション係数で除算した outclk0 位相シフト ) |
— |
Duty cycle |
50% |
100 / シリアライゼーション係数 |
50% |
— |
IOPLL IPコアと外部PLLモードのLVDS SERDES IPコア間の関係
ext_coreclockポートは、外部PLLモードのLVDSレシーバーで自動的にイネーブルされます。このポートが前の図に示されている通りに接続されていない場合、 インテル® Quartus® Prime コンパイラーがエラー・メッセージを出力します。
ソース・シンクロナスのタイミンバジェット
LVDS I/O規格は、より良い全体的なシステム性能が得られ、、データの高速伝送をイネーブルします。高速システム性能を活用するには、これらの高速信号のタイミングを分析する必要があります。差動ブロックのタイミング解析は、従来の同期タイミング解析技術とは異なります。
ソース・シンクロナスのタイミング解析は、クロック - 出力のセットアップ時間ではなく、データとクロック信号間のスキューに基づきます。高速差動データ伝送には、IC ベンダーによって提供されるタイミング・パラメーターを使用する必要があり、ボードスキュー、ケーブルスキュー、およびクロックジッターによる強い影響を受けます。
この項では、ソース・シンクロナスの差動データ方向タイミング・パラメーター、 インテル® Stratix 10® デバイスファミリーのタイミングバジェットの定義、およびデザインの最大性能を決定するにあたってのタイミング・パラメーターの使用方法を定義します。
差動データ方向
外部クロックと着信データの間には一定の関係があります。1 Gbps及び 10 のシリアライゼーション・ファクターでの動作では、外部クロックは 10 で逓倍されます。PLL のフェーズ・アライメントは、各データビットのサンプリング・ウィンドウと一致するよう設定することができます。データは逓倍されたクロックの立ち下がりエッジでサンプリングされます。
差動 I/O のビット位置
次の図は、チャネル動作のデータビット方向を表しています。この図は次の条件に基づいています。
- シリアライゼーション係数ーはクロックの逓倍係数に等しいです。
- フェーズ・アライメントはエッジ・アライメントを使用します。
- 動作はハード SERDES に実装されます。
その他のシリアライゼーション係数は、 インテル® Quartus® Prime開発ソフトウェア・ツールを使用してワード内のビット位置を検索します。
差動ビットの命名規則
レシーバー・チャネル・データ数 | 内部 8 ビット・パラレル・データ | |
---|---|---|
最上位ビット (MSB) の位置 | 最下位ビット (LSB) の位置 | |
1 | 7 | 0 |
2 | 15 | 8 |
3 | 23 | 16 |
4 | 31 | 24 |
5 | 39 | 32 |
6 | 47 | 40 |
7 | 55 | 48 |
8 | 63 | 56 |
9 | 71 | 64 |
10 | 79 | 72 |
11 | 87 | 80 |
12 | 95 | 88 |
13 | 103 | 96 |
14 | 111 | 104 |
15 | 119 | 112 |
16 | 127 | 120 |
17 | 135 | 128 |
18 | 143 | 136 |
トランスミッターのチャネル間スキュー
レシーバー・スキュー・マージンの計算では、ソース・シンクロナス差動インターフェイスの インテル® Stratix 10® トランスミッターに基づいた重要なパラメーターである TCCS ( トランスミッターのチャネル間スキュー ) を使用します。
- TCCS は、TCOのばらつきやクロックスキューを含む、最高速のデータ出力遷移と最低速のデータ出力遷移間の差です。
- LVDSトランスミッターでは、タイミング解析は、 インテル® Quartus® Prime Compilation ReportのTCCSレポート(report_TCCS)でTCCSの値を提供します。このレポートはシリアル出力ポートのTCCSの値を示します。
- TCCS の値はデバイス・データシートから取得することもできます。
インテル® Stratix 10® デバイスでは、840 Mbps を超えるデータレートで非 DPA レシーバーとインターフェイスする際におけるチャネル間スキューを改善するために、各 LVDS チャネルのトレース長を調整する、PCB トレース補正を実行します。 インテル® Quartus® Prime 開発ソフトウェアの Fitter Report パネルは、 インテル® Stratix 10® デバイスの各トレースに追加する必要がある遅延の量をレポートします。LVDS Transmitter / Receiver Package Skew Compensation パネルで公開されている推奨トレース遅延数を使用して PCB ボードトレースのスキューを手動で補正することにより、チャネル間のスキューを減らし、LVDS チャネル間のタイミングバジェットを満たすことができます。を満たすことができます。
非 DPA モードのレシーバー・スキュー・マージン
- DPA モードでは、RSKM ( レシーバー・スキュー・マージン ) ではなく、DPA ジッター許容値を使用します。
- 非 DPAモードでは、レシーバーのデータパスにおける高速ソース・シンクロナス差動信号に RSKM、TCCS、およびサンプリング・ウィンドウ (SW) 仕様を使用します。
RSKM の式
式に使用される規則は次の通りです。
- RSKM — レシーバーのクロック入力およびデータ入力サンプリング・ウィンドウ間のタイミングマージン、ならびにコアノイズと I/O スイッチング・ノイズが引き起こすジッター
- TUI (Time Unit Interval) — シリアルデータの時間周期
- SW — LVDS レシーバーがデータを正しくサンプリングするために、入力データが安定していることが必要な期間。SW はデバイス特性であり、デバイスのスピードグレードに応じて異なる。
- TCCS — 同じ PLL によって駆動されるチャネル間の最高速出力エッジと最低速出力エッジ間のタイミングの差。TCCS 値には tCOのばらつき、クロック、およびクロックスキューが含まれる。
データレートとデバイスに基づいて RSKM 値を計算し、LVDS レシーバーがデータをサンプリングできるかどうかを判断する必要があります。
- トランスミッター・ジッターを差し引いた後の正の RSKM 値は、LVDS レシーバーがデータを正しくサンプリングできることを示します。
- トランスミッター・ジッターを差し引いた後の負の RSKM 値は、LVDS レシーバーがデータを正しくサンプリングできないことを示します。
RSKM 計算の例
- TCCS = 100 ps
- SW = 300 ps
- TUI = 1000 ps
- 合計 RCCS = TCCS + ボードのチャネル間スキュー = 100 ps + 200 ps = 300 ps
- RSKM = (TUI – SW – RCCS) / 2 = (1000 ps – 300 ps – 300 ps) / 2 = 200 ps
トランスミッター・ジッターを差し引いた後の RSKM が0 psよりも大きくなる場合、非 DPA レシーバーが正常に動作します。
ガイドライン: LVDS SERDES IPコアのインスタンス化
ガイドライン : ソフト CDR モードの LVDS SERDES ピンペア
ガイドライン : 同じ I/O バンクにおける LVDS トランスミッターおよびレシーバー
二重機能の使用
- Duplex Feature能を使用するには、LVDS SERDES IPコアのDuplex Featureプションをオンにします。
- IP コア・インスタンスのトランスミッター・チャネル数とレシーバーチャネル数は同じです。
- 制限は、各LVDS SERDES IPコアのインスタンスにチャネルに作成できるトランスミッター・チャネルは11個、レシーバーチャネルは11個までです。
- LVDS SERDES IPコアは、IPコアのインスタンスのトランスミッターとレシーバーにPLLソースを設定します。
外部 PLL の使用
- 外部PLLを使用するには、 LVDS SERDES IPコアのパラメーター・エディターで、 Use external PLLオプションをオンにします。
- LVDS SERDES Ipコアの2つのインスタンス(レシーバーとトランスミッター)を生成できます。
- 各インスタンスで、次のチャネル数まで使用できます。
- 71トランスミッター
- 23 DPAまたは非DPAレシーバー
- 12ソフトCDRレシーバー
- 同一の PLL をトランスミッター・インスタンスとレシーバー・インスタンスの両方に接続します。
- I/O PLLのlvds_clk[1]およびloaden[1]ポートをLVDSトランスミッターのext_fclkおよびext_loadenポートに接続します。
- I / O PLLのlvds_clk[0]およびloaden[0]ポートをLVDSレシーバーのext_fclkおよびext_loadenポートに接続します。
インテル Stratix 10 デバイスの高速 LVDS I/O の実装ガイド
インテル® Quartus® Prime開発ソフトウェアを使用して、デバイス・マイグレーションの準備、ピン・アサインメントの設定、配置制限の定義、タイミング制約のセットアップ、および IP コアのカスタマイズが可能です。 インテル® Quartus® Prime開発ソフトウェアの使用について詳しくは、関連情報を参照してください。
LVDS SERDES インテル FPGA IP
LVDS SERDES IPコアでは、次の種類のLVDSアプリケーションを実装できます。
- トランスミッター専用のアプリケーション
- レシーバー専用のアプリケーション
- トランスミッターとレシーバーが混在するアプリケーション
LVDS SERDES IPコアの特長
LVDS SERDES IPコアの機能は以下の通りです。
- パラメーター化可能なデータチャネル幅
- パラメーター化可能な SERDES 係数
- レジスターされた入出力ポート
- PLL コントロール信号
- 非 DPA モード
- DPA モード
- ソフト CDR ( クロック・データ・リカバリー ) モード
- Duplex モード — 同じ I/O バンク内のトランスミッターとレシーバー
- クロック位相調整(CPA)ブロック
LVDS SERDES IPコアの機能モード
機能モード | 概要 |
---|---|
トランスミッター (TX) |
トランスミッター・モードでは、SERDES ブロックはシリアライザーとして機能します。 PLL は次の信号を生成します。
|
非 DPA レシーバー (RX Non-DPA) |
RX 非 DPA モードでは、SERDES ブロックは DPA および DPA-FIFO をバイパスするデシリアライザーとして機能します。 PLL はfast_clock 信号を生成します。着信データはfast_clock 信号でビットスリップでキャプチャーされるため、正しいクロック - データ間のアライメントを確保する必要があります。 |
DPA-FIFO レシーバー (RX DPA-FIFO) |
RX DPA-FIFO モードでは、SERDES ブロックはDPA ブロックを使用するデシリアライザーとして機能します。 DPA ブロックは、8 つの DPA クロックのセットを使用して、データのサンプリングに最適な位相を選択します。これらの DPA クロックは、fast_clock周波数で動作し、各クロックの位相シフトが 45° 離れています。循環バッファーである DPA-FIFO は、選択された DPA クロックで着信データをサンプリングし、データを LVDS クロックドメインに転送します。次に、ビットスリップ回路がデータをサンプリングし、レイテンシーを挿入して、デシリアライズ・データの望ましいワード境界に一致するようにデータを再アライメントします。 |
ソフトCDR レシーバー (RX ソフト CDR) |
RX ソフト CDR モードでは、IP コアはfast_clock 信号として最適な DPA クロック (DPACLK) を LVDS クロックドメインに転送します。IP コアは、ローカル・クロック・ジェネレーターで生成されたrx_divfwdclkを、PCLK ネットワークを介してコアに転送します。 RX インターフェイスを 1 つの I/O バンクに配置する必要があり、各バンクには 12 個の PCLK リソースしかないため、12 個のソフト CDR チャネルしか使用できません。 各バンクのソフト CDR チャネルをサポートできるピンペアについては、デバイスのピン配置ファイルを参照してください。デバイスのピン配置ファイルでは、使用可能な LVDS ピンペアが「Dedicated Tx/Rx Channel」カラムにLVDS<bank number>_<pin pair> <p or n> 形式でリストされます。 <pin pair> の値が偶数の場合、ピンペアはソフト CDR モードをサポートします。 |
Duplex (Duplex Feature) |
Duplex モードでは、IP コアはトランスミッターが自動的に有効にします。使用するレシーバーモードを選択します。トランスミッター数とレシーバー数は同じです。 duplex モードは、 IP コアはレシーバーとトランスミッターを同じ I/O バンク内に配置できます。最大 11 個のトランスミッター・チャネルと 11 個のレシーバーチャネルを有効にすることができます。 duplex モードを有効にすると、外部 PLL モードはディスエーブルになります。 |
LVDS SERDES IPコア機能説明
各LVDS SERDES IPコアのチャネルには、SERDES、ビットスリップ・ブロック、全モード用のDPA回路、高速クロックツリー(LVDSクロックツリー)、およびソフトCDRモード用の転送クロック信号が含まれています。したがって、 nチャネルLVDSインターフェイスには、 n-serdes_dpaブロックが含まれています。
I/O PLLはLVDSクロックツリーを駆動し、I/OバンクのLVDS SERDES IPコアのチャネルにクロック信号を提供します。
パス | ブロック | モード | クロックドメイン |
---|---|---|---|
TX データパス | シリアライザー | TX | LVDS |
RX データパス | DPA |
|
DPA |
DPA FIFO | DPA-FIFO | LVDS-DPA ドメイン・クロッシング | |
|
|
LVDS | |
ソフトCDR | DPA | ||
クロック生成とマルチプレクサー | ローカル・クロック・ジェネレーター | ソフト CDR | これらのモードで PCLK とload_enable を生成する |
SERDES クロック・マルチプレクサー | すべてのモード | すべてのモードで LVDS クロックソースを選択する |
シリアライザー
最初のレジスターセットは、LVDS 高速クロックを使用してコアからパラレルデータをキャプチャーします。load_enable クロックは LVDS 高速クロックとともに提供され、各coreclock の間にこれらのキャプチャーレジスターを 1 回イネーブルにします。
キャプチャーされた後のデータは、高速クロックサイクルごと 1 ビットで LSB を MSB にシフトする、シフトレジスターにロードされます。シフトレジスターの MSB が LVDS 出力バッファーに供給するため、出力ビットストリームでは、上位ビットは下位ビットに先行します。
信号 | 概要 |
---|---|
tx_in[7:0] |
シリアル化のためのデータ ( サポートされるシリアライゼーション係数は、3-10) |
fast_clock | トランスミッターのクロック |
load_enable | シリアル化のための信号をイネーブルする |
lvdsout | LVDS SERDES IPコアのチャネルからのLVDS出力データストリーム |
DPA FIFO
DPA クロックは、初期ロック期間中に位相をシフトする場合があります。FIFO 書き込みポインターが FIFO 読み出しポインターに迫ることで生じるデータのランスルー状態を回避するには、DPA がロックされるまで FIFO のリセット状態を維持する必要があります。
ビットスリップ
データは、 rx_bitslip_ctrl信号のパルスごとに1ビットスリップします。未定義データをクリアするには最低2コアクロックサイクルかかるため、データが揃っているかどうかを確認する前に最低4コアクロックサイクル待ってください。
十分なビットスリップ信号がビットスリップ・カウンターのロールオーバーに送られた後、ビットスリップ・カウンターのロールオーバー・ポイントが最大カウンター値に達したことを示すために、4 コアクロック・サイクル後にrx_bitslip_max ステータス信号がアサートされます。
デシリアライザー
load_enable は、高速クロックをデシリアライゼーション係数で割ったものに等しい周波数を持つパルス信号です。
信号 | 概要 |
---|---|
rx_in | LVDS SERDES IPコアのチャネルへのLVDS入力データストリーム |
fast_clock | レシーバーのクロック |
load_enable | デシリアル化のための信号をイネーブルする |
rx_out[7:0] | デシリアライズされたデータ |
ダイナミック・フェーズ・アライメント
このオプションをオンにすると、 LVDS SERDES IPコアはCPAブロックを使用してコアクロックとロード・イネーブル・クロックの位相を揃えます。
SERDES factor | 実際のコアクロックのデューティサイクル |
---|---|
3 | 66.6% |
4 | 50% |
5 | 40% |
6 | 33% |
7 | 40% |
8 | 50% |
9 | 40% |
10 | 40% |
以下の条件下では、選択可能なSERDESファクタに対してUse the CPA block for improved periphery-core timingオプションを使用できます。
- IPコアの機能モードは、 TX、 RX Non-DPA、またはRX DPA-FIFOです。
- tx_outclock位相シフトは180°の倍数です。
LVDS SERDES IPコアの初期化とリセット
IP コアを DPA モードまたは非 DPA モードで初期化した後、ビットスリップ制御信号を使用してワード境界アライメントを実行できます。
DPAモードのLVDS SERDES IPコアの初期化非
Intelは LVDS SERDES非DPAモードのIPコアを初期化するには、これらの手順に従うことを推奨します。
-
ユーザーモードに入る際は、pll_areset 信号を少なくとも10 ns間アサートします。
また、この手順はインターフェイスをリセットするためにユーザーモード動作でいつでも実行できます。
- 少なくとも10 ns後、pll_areset 信号をディアサートしてpll_locked ポートを監視します。
LVDS SERDES DPAモードのIPコアの初期化
PLLロックが安定する前に、 rx_dpa_reset信号を使用してDPAをリセット状態に保ってください。 DPAが最適な位相タップを決定すると、 rx_dpa_locked信号がアサートされます。LVDS SERDES IPコアは最初のDPAロックでrx_dpa_lockedポートをアサートします。Enable DPA loss of lock on one changeオプションをオンにすると、1回のフェーズ変更後にrx_dpa_lockedポートがディアサートされます。このオプションをオフにすると、2つの位相が同じ方向に変化した後にrx_dpa_locked信号がディアサートされます。
Intelは、LVDS SERDES DPAモードのIPコアを初期化およびリセットするために以下の手順を行うことを推奨します。
-
ユーザーモードに入る際は、pll_areset およびrx_dpa_reset 信号をアサートします。pll_areset 信号を少なくとも10 ns間アサートします。
また、この手順はインターフェイスをリセットするためにユーザーモード動作でいつでも実行できます。
- 少なくとも10 ns 後、pll_areset 信号をディアサートしてpll_locked ポートを監視します。
- pll_locked ポートがアサートされて安定すると、rx_dpa_reset ポートをディアサートします。
-
DPA トレーニング・パターンを適用し、DPA 回路をロックさせます。
トレーニング・パターンが利用できない場合、DPA がロックするために、トランジションを持つデータが必要です。DPA ロック時間の仕様については、関連情報を参照してください。
- rx_dpa_locked 信号がアサートされた後、rx_fifo_reset 信号を少なくとも 1 パラレル・クロックサイクル間アサートします。
- データ受信を開始するには、rx_fifo_reset 信号をディアサートします。
通常の動作中、DPA が位相タップをシフトしてリファレンス・クロック・ソースとデータとの間の変動を追跡するたびに、クロックドメイン間のデータ転送タイミングマージンが減少します。
初期化後、ワード境界 ( ビットスリップ ) をアライメントすることができます。
DPA のリセット
-
rx_dpa_reset 信号をアサートして、DPA ブロック全体をリセットします。DPA ブロック全体をリセットした後、データをキャプチャーする前に DPA を再トレーニングする必要があります。
また、DPA 回路をリセットせずに同期 FIFO のみをリセットすることで、データ破損を修正することもできます。これは、DPA を再トレーニングすることなくシステムの動作が継続されることを意味します。同期 FIFO のみをリセットするには、rx_fifo_reset 信号をアサートしてください。
-
rx_dpa_lockedがアサートされた後、 LVDS SERDES IPコアはデータをキャプチャする準備ができています。DPAは各ビットをキャプチャーするのに最適なサンプル位置を見つけます。
Intelはrx_dpa_lockedがアサートされた後にrx_fifo_reset信号をトグルすることを推奨します。rx_fifo_resetをトグルすることにより、DPA と高速 LVDS クロックドメイン間でデータを転送するのに同期 FIFOが最適なタイミングで設定されます。
-
カスタムロジックを使用してチャンネルごとにrx_bitslip_ctrl 信号を制御し、ワード境界をセットアップします。
ビットスリップ回路は、PLL または DPA 回路の動作とは無関係にいつでもリセットできます。ビットスリップ回路をリセットするには、rx_bitslip_reset 信号を使用してください。
ワード境界のアライメント
制御文字とのアライメント
データストリームに制御文字を追加することにより、ロジックは既知のパターンを検索してワード境界をアライメントさせることができます。各チャネルの受信データを比較し、制御文字を受信するまで、必要に応じてrx_bitslip_ctrl 信号をパルスすることができます。
制御文字なしでのアライメント
データストリームに制御文字がない場合は、リファレンス・クロックとデータの間に確定的な関係が必要です。確定的な関係では、タイミング・シミュレーションや実験室的測定を使用してワード境界を予測できます。非 DPA モードでのみ、確定的な関係を使用できます。
デバイスのパワーアップ時または PLL のリセット時に SERDES でのデフォルトワード位置上の確定的な関係を保証する唯一の方法は、デシリアライゼーション係数で割ったデータレートと等しいリファレンス・クロックを有することです。これは、PLL がリファレンス・クロックの立ち上がりエッジにロックするため、重要です。受信したシリアルワードごとにリファレンス・クロックの立ち上がりエッジが 1 つある場合、デシリアライザーは常に同じ位置から開始します。
例えば、データレートが800 Mbps で、デシリアライゼーション係数が 8 の場合、PLL には100-MHz のリファレンス・クロックが必要です。
タイミング・シミュレーションまたはラボ測定を使用して、受信したパラレルワードを監視し、ワード境界を設定するために必要なrx_bitslip_ctrl のパルス数を判断します。ユーザーモードに入った後、または PLL をリセットした後のいつでも、必要なパルス数を適用する簡単なステートマシンを作成できます。
ワード境界のアライメント
- rx_bitslip_reset ポートを少なくとも 1 つのパラレル・クロック・サイクルの間アサートしてから、rx_bitslip_reset ポートをディアサートします。
- 必要に応じて、rx_bitslip_ctrl ポートにパルスを適用してワード・アライメントを開始します。
ワード境界が各チャネル上に確立された後、インターフェイスは動作可能状態になります。
LVDS SERDES IP コアのタイミング
タイミング・コンポーネント | 概要 |
---|---|
ソース同期パス | ソース同期パスは、送信デバイスから受信デバイスにクロック信号およびデータ信号が送られるパスです。例えば、
|
ダイナミック・フェーズ・アライメント・サポート | DPA ブロックは、I/O キャプチャー・パスをソフト CDR モードと DPA-FIFO モードで登録します。DPA ブロックは、入力データをラッチするために、PLL VCO クロックから最適な位相を動的に選択します。 |
内部 FPGA パス |
内部 FPGA パスは、次の FPGA ファブリック内のパスです。
タイミング解析は、対応するタイミングマージンを報告します。 |
ファイル名 | 概要 |
---|---|
<variation_name>_altera_lvds_core20_<quartus_version>_<random_id>.sdc |
この.sdcファイルにより、 インテル® Quartus® Prime Fitterはタイミングドリブンコンパイルでタイミングマージンを最適化することができます。 このファイルによって、タイミング解析はデザインのタイミングを分析することもできます。 IP コアは、次の動作に.sdc を使用します。
IP 生成中に生成された.qip でこのファイルを見つけることができます。 |
sdc_util.tcl | この.tcl ファイルは、.sdc が使用する関数とプロシージャーのライブラリーです。 |
I/O タイミング解析
ソフト CDR および DPA-FIFO モードにおけるレシーバータイミング解析
DPAハードウェアはソフトCDRおよびDPA-FIFOモードで受信データを動的にキャプチャーします。これらのモードで、 タイミング解析はスタティックI/Oタイミング解析を実行しません。
非 DPA モードにおけるレシーバータイミング解析
非 DPA モードでは、レシーバーのデータパスにおける高速ソース・シンクロナス差動信号に RSKM、TCCS、およびSW ( サンプリング・ウィンドウ ) 仕様を使用します。
タイミング解析で正確なRSKMを得るにはこのコード行を.sdcに追加して、RCCS値を指定します。set ::RCCS <RCCS value in nanoseconds> .たとえば、 :: RCCS 0.0と設定します。
トランスミッターのタイミング解析
LVDSトランスミッターの場合、 タイミング解析は インテル® Quartus® PrimeコンパイルレポートでのTCCSレポート( report_TCCS )にトランスミッター・チャネル間スキュー(TCCS)値を提供します。それは、シリアル出力ポートのTCCS値を示します。 TCCS値はデバイスのデータシートからも得られます。
TCCS は、データおよび TX 出力クロックのチャネル間で観測される最大スキューであり、すなわち、TCO ばらつきやクロックスキューを含んだデータ出力遷移の最高速と最低速との差です。
RSKM レポートの取得
RSKM レポート (report_rskm) を取得するには、次の手順を実行します。
-
インテル®
Quartus® PrimeメニューのTools > Timing Analyzerを選択します。
TimeQuest Timing Analyzerページが表示されます。
- タイミング解析メニューのReports > Device Specific > Report RSKMを選択します。
TCCS レポートの取得
TCCS レポート (report_tccs) を取得するには次の手順を実行します。
-
インテル®
Quartus® PrimeメニューのTools > Timing Analyzerを選択します。
TimeQuest Timing Analyzerページが表示されます。
- タイミング解析メニューのReports > Device Specific > Report TCCSを選択します。
FPGA のタイミング解析
クロック | クロック名 |
---|---|
コアクロック | <pll_instance_name>_*_outclk[*] |
LVDS 高速クロック | <pll_instance_name>_*_lvds_clk[*] |
クロック | クロック名 |
---|---|
コアクロック | <lvds_instance_name>_core_ck_name_<channel_num> |
DPA 高速クロック | <lvds_instance_name>_dpa_ck_name_<channel_num> |
- 立ち上がりエッジのデータの場合、 <lvds_instance_name>_core_data_out_<channel_num>_<bit>
- 立ち下がりエッジのデータの場合、 <lvds_instance_name>_core_data_out_<channel_num>_<bit>_neg
これらの適切なクロック設定では、 タイミング解析はLVDS SERDES(コア・インターフェイス転送およびコア転送内のタイミング)を正しく解析できます。
外部 PLL モードのタイミング解析
SERDES制約の一部はPLLクロックから派生しています。したがって、外部PLLクロック設定は、 LVDS SERDES IPコアクロック設定プロジェクトの.qsfファイルに、 IOPLL IPコアの.qipが次の行のLVDS SERDES Ipコアの.qipの前に表示されます。.qipの前に表示されます。
内部 FPGA パスのタイミング・クロージャーのガイドライン
コアレジスターから LVDS トランスミッター・ハードウェアへのセットアップ違反がある場合は、TX core registers clock パラメーターを確認してください。
- パラメーターがinclock に設定されている場合は、tx_coreclockに変更することを考慮する必要があります。tx_coreclockを使用するコアレジスターのクロック遅延が減少します。tx_coreclock パス上の PLL 補償遅延により、ソースクロック遅延が減少し転送のセットアップ・スラックがより多くなります。
- パラメーターがtx_coreclock に設定されている場合は、データレートを下げるか SERDES 係数を増やしてコア周波数の要件を減らし、より多くのセットアップ・スラックを提供することを考慮する必要があります。
LVDS レシーバーからコアレジスターへのホールド違反が見られる場合は、転送のセットアップ・スラックを確認してください。十分なセットアップ・スラックがある場合、転送のホールドを過剰に制限できます。通常、Fitter は遅延を加えてホールド違反を修正しようとします。特定の状況下では、Fitter は、ホールド違反回避のための速いコーナーでの遅延追加が遅いコーナーで設定に悪影響を及ぼす可能性があると計算している場合があります。
ガイドライン : クロック・フェーズ・アライメントブロックを使用したタイミング・クロージャーの改善
LVDS SERDES IPコアのデザイン例
デザイン例は、次の場所から生成できます。 LVDS SERDES IPコアパラメーター・エディター必要なパラメータを設定したらGenerate Example Designをクリックします。 IPコアは、指定したディレクトリにデザイン例のソースファイルを生成します。
LVDS SERDES IPコア合成可能の インテル Quartus Primeデザイン例
デザイン例は、IP コア・パラメーター・エディターで設定したパラメーター設定を使用します。
- トランスミッターまたはレシーバーを備えた基本LVDS SERDES IPコアシステム
- トランスミッターまたはレシーバーを備えた二重LVDS SERDES IPコアシステム
- 外部PLLに接続されたトランスミッターまたはレシーバーを備えたLVDS SERDES IPコアシステム
IPコアを外部PLLを使用するようにコンフィグレーションした場合、生成されたデザイン例では正しくコンフィグレーションされたIOPLL インテル® FPGA IPを接続します。
PLLの設定方法を説明するために、デザイン例では外部PLLとして動作するように設定されたIOPLL IPコアのスタンドアロンバージョンを含むlvds_external_pll.qsys Platform Designerファイルも提供しています。lvds_external_pll.qsys(修正済みまたは未修正)を使用して、外部PLLを使用してLVDSデザインを構築できます。
デザイン例の生成と使用
合成可能な インテル® Quartus® Prime デザイン例をソースファイルから生成するには、デザイン例のディレクトリーで次のコマンドを実行します。
quartus_sh -t make_qii_design.tcl -system ed_synth
TCL スクリプトは、ed_synth.qpf プロジェクト・ファイルを含むqii ディレクトリーを作成します。 インテル® Quartus® Prime ソフトウェアでこのプロジェクトを開いてコンパイルすることができます。
make_qii_design.tcl 引数の詳細については、次のコマンドを実行します。
quartus_sh -t make_qii_design.tcl -help
シミュレーション・デザイン例の生成
デザイン例を使用すると、使用するシミュレーターに応じて、単一のコマンドを使用してシミュレーションを実行できます。 シミュレーションは、LVDS SERDES IPコアの使用方法を示しています。
デザイン例の生成と使用
Verilog シミュレーターのソースファイルからシミュレーションのデザイン例を生成するには、デザイン例のディレクトリーで次のコマンドを実行します。
quartus_sh -t make_sim_design.tcl VERILOGVHDL シミュレーターのソースファイルからシミュレーションのデザイン例を生成するには、デザイン例のディレクトリーで次のコマンドを実行します。
quartus_sh -t make_sim_design.tcl VHDLTCL スクリプトは、サポートされているシミュレーション・ツールごとにサブディレクトリーを含むsim ディレクトリーを作成します。各シミュレーション・ツールのスクリプトは、対応するディレクトリーにあります。
組み合わせたLVDS SERDES IPコアトランスミッターとレシーバーのデザイン例
LVDS SERDES IPコア・コンフィグレーションがトランスミッターを実装し、デザイン例はDPA-FIFOレシーバを追加します。LVDS SERDES IPコア・コンフィグレーションがレシーバー・インターフェイスのいずれかを実装し、デザイン例はトランスミッターを追加します。
デザイン例の生成と使用
組み合わせたトランスミッターとレシーバーのデザイン例をソースファイルから生成するには、デザイン例のディレクトリーで次のコマンドを実行します。
quartus_sh -t make_qii_design.tcl -system ed_synth_tx_rxTCLスクリプトはed_synth.qpfプロジェクトファイルを含むqiiディレクトリを作成します。 インテル® Quartus® Primeソフトウェアでこのプロジェクトを開いてコンパイルすることができます。
make_qii_design.tcl 引数の詳細については、次のコマンドを実行してください。
quartus_sh -t make_qii_design.tcl -helpLVDS SERDES IPコアのダイナミック位相シフトデザイン例
この例は、非 DPA レシーバー・キャプチャーのデバッグなど、LVDS 固有のアプリケーションで使用できます。キャプチャー・クロックを繰り返しシフトして最適な動作位相シフトを見つけることができます。
この設計例は、Signal Tapでインシステムソースおよびプローブ機能を使用してTCLスクリプティングを介してハードウェアとやり取りする一般的な例としても使用できます。この方法では、物理的に存在しなくても手動スイッチを使用してボードをテストできます。
動的位相シフトのデザイン例では、 LVDS SERDES IPコアパラメーターを設定し、IPコアを外部PLLに接続します。 PLLは、システム内の信号源およびプローブに接続する露出型ダイナミック位相シフト・インターフェイス を備えています。この接続により、In-System Sources and Probesエディターまたは提供されたSignal Tap付きTCLスクリプトを使用してPLLを制御できます。
LVDS SERDES IPコアの一部デザイン例は、インシステムソースおよびプローブにも接続されています。提供されているTCLスクリプトは、選択したPLLクロックをどのようにシフトできるかの例と、いくつかのユーティリティー機能を提供します。このサンプルスクリプトは、必要なテスト機能を実行するための出発点として使用できます。
デザイン例の生成と使用
組み合わせたダイナミック位相シフトのデザイン例をソースファイルから生成するには、デザイン例のディレクトリーで次のコマンドを実行します。
quartus_sh -t make_qii_design.tcl -system ed_synth_dpsTCLスクリプトはed_synth.qpfプロジェクトファイルを含むqiiディレクトリを作成します。 インテル® Quartus® Primeソフトウェアでこのプロジェクトを開いてコンパイルすることができます。
提供された TCL スクリプトを使用してインシステム・ソースおよびプローブをコントロールするには、次のコマンドを実行します。
quartus_stp -t dps_issp.tcl qii_ed_synth_dps/ed_synth_dpsmake_qii_design.tcl 引数の詳細については、次のコマンドを実行してください。
quartus_sh -t make_qii_design.tcl -helpArria V、 Cyclone V、および Stratix V デバイスの IP マイグレーション・フロー
このIP移行フローでは、LVDS SERDES IPコアをALTLVDS_TXYおよびALTLVDS_RX IPコアの設定と一致するように設定して、IPコアを再生成することができます。
ALTLVDS_TXおよびALTLVDS_RX IPコアの接続
ALTLVDS_TXそしてALTLVDS_RX IPコアをLVDS SERDES インテル® FPGA IPに を移行するには、次の手順を実行します。
- パラメーター・エディターのALTLVDS_TXまたはALTLVDS_RX IPコアを開きます。
- Currently selected device familyリストからStratix 10を選択します。
- FinishをクリックしてLVDS SERDES Ipコアのパラメーター・エディターを開きます。パラメーター・エディター、LVDS SERDES IPコア設定をALTLVDS_TXまたはALTLVDS_RX IPコア設定と同様に設定します。
- 2 つの IP コア間に互換性のない設定がある場合は、 new supported settingsを選択します。
- Finishをクリックして IP コアを生成します。
- LVDS SERDES IPコアでRTLでのALTDDIO_IN、ALTDDIO_OUT、ALTDDIO_BIDIR、またはALTIOBUF IPコアのインスタンシエーションを置き換えます。
インテル FPGA IP参照資料
インテル® Quartus® Primeソフトウェアは、パラメーター・エディターで設定したパラメーター・オプションに基づいてカスタマイズしたLVDS SERDES IP コアを生成します。
LVDS SERDES IPコアパラメーターの設定
LVDS SERDES IPコアの一般設定
パラメーター | 値 | 説明 |
---|---|---|
Duplex Feature | ON、OFF | 同じ I/O バンク内のトランスミッター・チャネルとレシーバーチャネルをオンにします。
|
Functional mode |
|
インターフェイスの機能モードを指定します。 Duplex Featureオプションがオンの場合、TXオプションは使用不可です。duplex モードでは、トランスミッター・チャネルはデフォルトで作成されます。 |
Number of channels |
|
インターフェイスのチャネル数を指定します。
LVDS RX デザインでは、refclkピンを同じ I/O バンク上にレシーバーとしては位置します。 LVDS TX デザインの場合 :
Duplex Feature能モードでは、この値はトランスミッターとレシーバーのそれぞれのチャネル数を指定します。たとえば、11チャネルを指定した場合、IPコアはI/Oバンクで22チャネルを使用します。 |
Data rate | 150.0 ~ 1600.0 | 単一のシリアルチャネルのデータレート (Mbps) を指定します。値はFunctional mode のパラメーター設定に依存します。 |
SERDES factor | 3、4、5、6、7、8、9、10 | LVDS インターフェイスのシリアル化レートまたはデシリアル化レートを指定します。 |
Use clock-pin drive | ON、OFF | オンにして PLL をバイパスし、クロックピンでインターフェイスを駆動します。 注: この機能は、
インテル®
Quartus® Prime開発ソフトウェアの今後のバージョンでサポートされます。
|
Use backwards-compatible port names | ON、OFF | オンにして ALTLVDS_TX および ALTLVDS_RX IP コアと互換性のある蓄積されたトップレベルの名前を使用します。 |
Use the CPA block fir improved periphery-core timing |
ON、OFF | 周辺機器とコアの間のタイミング・クロージャーを改善するためにオンにします。 IPコアは、Clock Phase Alignment(CPA)ブロックを使用してコアクロックとロード・イネーブル・クロックの位相を揃えます。次の場合に、選択可能なSERDES係数にこのオプションを使用できます。
|
LVDS SERDES IPコアPLL設定
パラメーター | 値 | 説明 |
---|---|---|
Use external PLL | ON、OFF |
オンにして外部 PLL を使用します :
このオプションを使用すると、PLL から利用可能なすべてのクロックにアクセスし、クロック・スイッチオーバー、帯域幅プリセット、ダイナミック位相ステッピング、ダイナミック・リコンフィグレーションなどの高度な PLL 機能を使用できます。 注: 2つのLVDSトランスミッターとレシーバーを組み合わせて同じI/Oバンクに配置する場合、LVDS SERDES IPコア・インスタンスの場合は、このオプションをオンにする必要があります。 General SettingsタブのDuplex Featureオプションをオンにして、トランスミッターとレシーバーを同じI/Oバンクに配置することもできます。 Duplex Featureをオンにすると、 Use external PLLオプションは無効になります。
|
Desired inclock frequency | — | inclock周波数を入力します ( 単位 MHz )。 |
Actual inclock frequency | — | インターフェイスに使用できる周波数に最も近いinclock周波数を表示します。 |
FPGA/PLL speed grade | — | PLL の動作範囲を決める FPGA/PLL スピードグレードを指定します。 |
Enable pll_areset port | ON、OFF | オンにしてpll_areset ポートを公開します。pll_areset 信号を使用して、LVDS インターフェイス全体をリセットできます。 |
Core clock resource type | — | IP コアが内部的に生成したcoreclock をエクスポートするクロック・ネットワークを指定します。 注: この機能は、
インテル®
Quartus® Prime開発ソフトウェアの今後のバージョンでサポートされます。現在は、QSF アサインメントを使用して、このパラメーターをマニュアルで指定してください。
|
LVDS SERDES IP コアのレシーバ設定
パラメーター | 値 | 説明 |
---|---|---|
Enable bitslip mode | ON、OFF |
オンにしてレシーバーのデータパスにビットスリップ・ブロックを追加し、rx_bitslip_ctrl ポート ( チャネルごとに 1 つの入力 ) を公開します。 rx_bitslip_ctrl 信号がアサートされるたびに、指定されたチャネルのデータパスに 1 ビットのシリアル・レイテンシーが追加されます。 |
Enable rx_bitslip_reset port | ON、OFF | オンにすると、ビットスリップをリセットするために使用できるrx_bitslip_reset ポート ( チャネルごとに 1 つの入力 ) が公開されます。 |
Enable rx_bitslip_max port | ON、OFF |
オンにすると、rx_bitslip_max ポート ( チャネルごとに 1 つの出力 ) が公開されます。 アサートされると、rx_bitslip_ctrl の次の立ち上がりエッジでビットスリップのレイテンシーがゼロにリセットされます。 |
Bitslip rollover value | デシリアライゼーション係数 |
ビットスリップが注入できる最大レイテンシーを指定します。 ビットスリップは指定された値に達するとロールオーバーし、rx_bitslip_max signal 信号がアサートされます。 ロールオーバー値は、デシリアライゼーション係数に自動的に設定されます。 |
パラメーター | 値 | 説明 |
---|---|---|
Enable rx_dpa_reset port | ON、OFF |
オンにすると、各チャネルの DPA ロジックを独立してリセットするために使用できるrx_dpa_reset ポートが公開されます。 ( 旧rx_reset) |
Enable rx_fifo_reset port | ON、OFF | オンにして、ロジックを使用して DPA-FIFO ブロックをリセットするためにrx_fifo_reset ポートを駆動します。 |
Enable rx_dpa_hold port | ON、OFF |
オンにすると、rx_dpa_hold 入力ポート ( チャネルごとに 1 つの入力 ) が公開されます。 High に設定すると、対応するチャネルの DPA ロジックはサンプリング位相を切り替えません。 (旧rx_dpll_hold) |
Enable DPA loss of lock on one change | ON、OFF |
rx_dpa_locked のディアサートは、データが無効であることを示していません。代わりに、DPA が位相タップを変更してinclock とrx_in データ間の変動を追跡していることを示します。 Intelは、データの正確性を検証するには、データチェッカーを使用することを推奨します。 |
Enable DPA alignment only to rising edges of data | ON、OFF |
注:
Intelはこのポートを高ジッターシステムでのみ使用し、通常のアプリケーションではオフにすることを推奨します。
|
( シミュレーションのみ ) Specify PPM drift on the recovered clock(s) | — | 位相ドリフト量を指定します。 LVDS SERDES IPコア・シミュレーション・モデルは、回復されたrx_divfwdclksに追加する必要があります。 注: この機能は
インテル®
Quartus® Primeソフトウェアの将来のバージョンでサポートされる予定です。
|
パラメーター | 値 | 説明 |
---|---|---|
Desired receiver inclock phase shift ( 度 ) | — | LVDS 高速クロックの角度で、着信シリアルデータに遷移するinclockの理想的な位相遅延を指定します。例えば、180° を指定するとinclockが着信データの中央に揃うことを意味します。 |
Actual receiver inclock phase shift ( 度 ) |
fast_clockとinclock周波数に依存します。関連情報を参照してください。 |
望ましいレシーバーinclock 位相シフトに最も近くて達成可能なレシーバーinclock 位相シフトを指定します。 |
レシーバー入力クロックのパラメーター設定
rx_in へのinclock の位相関係の値は、パラメーター設定のDesired receiver inclock phase shift ( 度 )に指定できます。値は 45 で均等に割れなければなりません。値が 45 で割れない場合は、実際の位相シフトがパラメーター設定のActual receiver inclock phase shift ( 度 )に表示されます。
rx_in へのinclock のエッジ・アライメント
立ち上がりinclock をrx_in データにエッジ・アライメントされるには、望ましいレシーバークロック位相シフトとして 0° を指定します。0° の位相シフトを指定すると、PLL はfast_clock から必要な位相シフトで SERDES レシーバーの中心に設定されます。
指定する位相シフトは、シリアルデータ・レートで動作するfast_clockを基準にしています。0° ~ 360° の間の位相シフト値を使用して、1 ビット周期内におけるinclockの立ち上がりエッジを指定します。360° より大きい位相シフト値を指定すると、パラレルデータ内の MSB の位置が変わります。
この等式は最大位相シフト値を決定します。: (inclock 期間ごとのfast_clock 期間の数 x 360 ) - 1
rx_in へのinclock の中央揃え
inclock とrx_in間の中央揃えの関係を指定するには、180° の位相シフトを指定します。
指定するrx_in へのinclock の位相シフト関係は、inclock 周波数とは無関係です。
rx_in へのinclockの中央揃え DDR 関係を指定するには、180° の位相シフトを指定します。
トランスミッター・モードのLVDS SERDES IP コア
パラメーター | 値 | 説明 |
---|---|---|
TX core registers clock |
|
コアレジスターをクロックする以下のクロックを選択します。
このパラメーターは、TX 機能モードでのみ使用できます。 |
Enable tx_coreclock port | ON、OFF |
オンにすると、トランスミッターに供給するコアロジックの駆動に使用できるtx_coreclockを公開されます。
Intelは、必要に応じたtx_coreclock出力信号の使用を推奨します。 注: このオプションは、PLL SettingsタブのUse external PLLオプションがオンの場合は無効です。Enable tx_coreclock portオプションの機能をオンまたはオフにするには、まずUse external PLLオプションをオフにします。Enable tx_coreclock portを変更した後、Use external PLLを再度オンにすることができます。
|
Enable tx_outclock port | ON、OFF |
オンにすると、tx_outclock ポートが公開されます。
このパラメーターをオンにすると、TX インターフェイスあたりの最大チャネル数が1 チャネル減少します。 |
Desired tx_outclock phase shift (degrees) | 関連情報を参照してください。 | outclock と出力シリアルデータ間の位相関係を LVDS 高速クロックの度数で指定します。 |
Actual tx_outclock phase shift (degrees) | fast_clock とtx_outclock の周波数に依存します。 関連情報を参照してください。 |
最も近い達成可能なtx_outclock位相シフトを望ましいtx_outclock位相シフトに表示します。 |
Tx_outclock division factor | シリアライゼーション係数に依存します。 | outclock 周波数に対する高速クロック周波数の比率を指定します。例えば、outclock サイクルあたりのシリアル・トランジションの最大数です。 |
トランスミッタの出力クロック・パラメーターの設定
次のパラメーターを使用することで、tx_out データへのtx_outclock の関係を指定できます。
- Desired tx_outclock phase shift ( 度 )
- Tx_outclock division factor
パラメーターは、シリアルデータ・レートで動作するfast_clock に基づいてtx_outclock の位相と周波数を設定します。fast_clock の45° インクリメントで、tx_outデータを基準にする、望ましいtx_outclock位相シフトを指定することができます。ドロップダウン・リストから利用可能な分割係数を使用して、tx_outclock の周波数を設定できます。
tx_out へのtx_outclock のエッジ・アライメント
立ち上がりtx_outclock をtx_out のシリアルデータの MSB にエッジ・アライメントさせるには、0° の位相シフトを指定します。
tx_out へのtx_outclock の中央揃え
tx_outclock とtx_outのシリアルデータの MSB との間における中央揃え関係を指定するには、180° の位相シフトを指定します。
- 0° から 315° までの位相シフト値は、tx_outclockの立ち上がりエッジをtx_out データの MSB 内に位置させます。
- 360° から始まる位相シフト値は、MSB 後のシリアルビットでtx_outclock の立ち上がりエッジを位置を決めます。例えば、540° の位相シフトは、立ち上がりエッジを MSB の後のビットの中央に位置させます。
tx_outclock division factor のドロップダウン・リストを使用してtx_outclock の周波数を設定します。
LVDS SERDES IPコア・クロック・リソースの概要
LVDS SERDES IP コアの信号
信号名 | 幅 | 入力 / 出力 | タイプ | 説明 |
---|---|---|---|---|
inclock | 1 | 入力 | クロック | PLL のリファレンス・クロック |
pll_areset | 1 | 入力 | Reset | LVDS SERDES IPコアとPLL内のすべてのブロックに対するアクティブハイの非同期リセット |
pll_locked | 1 | 出力 | コントロール | 内部 PLL がロックするとアサートします。 |
信号名 | 幅 | 入力 / 出力 | タイプ | 説明 |
---|---|---|---|---|
rx_in | N | 入力 | データ | LVDS シリアル入力データ |
rx_bitslip_reset | N | 入力 | リセット | クロック-データ・アライメント回路 ( ビットスリップ ) への非同期アクティブ High リセット |
rx_bitslip_ctrl | N | 入力 | コントロール |
|
rx_dpa_hold | N | 入力 | コントロール |
|
rx_dpa_reset | N | 入力 | リセット |
|
rx_fifo_reset | N | 入力 | リセット |
|
rx_out | N*J | 出力 | データ | レシーバーのパラレルデータ出力。
|
rx_bitslip_max | N | 出力 | コントロール |
|
rx_coreclock | 1 | 出力 | クロック |
|
rx_divfwdclk | N | 出力 | クロック |
理想的な DPA 位相によるチャンネルごとの分割クロック
rx_divfwdclk 信号は、各チャネルが異なる理想的なサンプリング位相を持つ可能性があるため、互いにエッジ・アライメントされない場合があります。各rx_divfwdclk は、同じチャネルからのデータでコアロジックを駆動する必要があります。 |
rx_dpa_locked | N | 出力 | コントロール |
DPA ブロックが理想的な位相を選択するとアサートされます。
rx_dpa_hold がアサートされた後、rx_dpa_locked 信号のトグルをすべて無視します。 |
信号名 | 幅 | 入力 / 出力 | タイプ | 説明 |
---|---|---|---|---|
tx_in | N*J | 入力 | データ | コアからのパラレルデータ |
tx_out | N | 出力 | データ | LVDS シリアル出力データ |
tx_outclock | 1 | 出力 | クロック |
|
tx_coreclock | 1 | 出力 | クロック |
シリアライザーを供給するコアロジックを駆動します。
|
信号名 | 幅 | 入力 / 出力 | タイプ | 概要 |
---|---|---|---|---|
ext_fclk | 1 | 入力 | クロック |
LVDS 高速クロック
IOPLL インテル® FPGA IPからの信号でこのポートを接続する方法の詳細については、関連情報を参照してください。 |
ext_loaden | 1 | 入力 | クロック |
LVDS ロードイネーブル
IOPLL IPコアからの信号でこのポートを接続する方法の詳細については、関連情報を参照してください。 |
ext_coreclock | 1 | 入力 | クロック |
|
ext_vcoph[7:0] | 8 | 入力 | クロック |
IOPLL IPコアからの信号でこのポートを接続する方法の詳細については、関連情報を参照してください。 |
ext_pll_locked | 1 | 入力 | データ |
PLL ロック信号
|
ext_tx_outclock_fclk | 1 | 入力 | クロック |
高速クロックの位相シフトバージョン 180° の倍数ではない TX outclock 位相シフトに必要 |
ext_tx_outclock_ loaden | 1 | 入力 | クロック |
load_enable の位相シフトバージョン 180° の倍数ではない TX outclock 位相シフトに必要 |
LVDS SERDES インテル FPGA IPと Stratix V SERDESの比較
機能 | インテル® Stratix 10® デバイス | Stratix® V デバイス |
---|---|---|
動作周波数範囲 | 150 MHz ~ 1.6 GHz | |
シリアライゼーション / デシリアライゼーション係数 | 3 ~ 10 | |
通常の DPA モードと非 DPA モード | サポート可 | |
ソフト CDR 用クロック転送 | サポート可 | |
RX リソース | I/O ペアごと (CDR では 2 つの I/O ペアごと ) |
HSSI トランシーバーのないすべての側で 2 つの I/O ペアごと |
TX リソース | I/O ペアごと | HSSI トランシーバーのないすべての側で 2 つの I/O ペアごと |
PLL リソース | TX チャネルは、中央のバンクの IOPLL によって駆動される隣接する 3 つのバンクにまたがります。 RX チャネルは同じバンク内の IOPLL によって駆動されます。 |
1 つのエッジに配置された RX チャネルと TX チャネルは、コーナーまたはセンター PLL で駆動できます。 |
DPA クロック位相の数 | 8 | |
I/O 規格 | 真の LVDS | 真の LVDS、擬似差動出力 |
MAX 10 高速LVDS I/Oユーザー・ガイドのアーカイブ
IP コアバージョン | ユーザーガイド |
---|---|
18.0 | Intel® Stratix® 高速LVDS I/O ユーザーガイド |
17.1 | Intel® Stratix® 高速LVDS I/O ユーザーガイド |
Intel Stratix 10 高速LVDS I/Oユーザーガイドの改訂履歴
ドキュメント・バージョン | バージョン | 変更内容 |
---|---|---|
2019.02.26 | 18.1 | 外部PLLモードのLVDSインターフェイスのガイドラインを更新。
|
2019.01.14 | 18.1 | 「0」のプログラム可能なVOD値はLVDS I/O規格では使用できないというステートメントを削除。 |
2018.11.12 | 18.1 |
|
2018.08.06 | 18.0 |
|
日付 | バージョン | 変更内容 |
---|---|---|
2017 年 11 月 | 2017.11.06 |
|
2017 年 5 月 | 2017.05.08 |
|
2017 年 2 月 | 2017.02.13 | Intel® Stratix® 10 TX 1650 とTX 2100 デバイスからSF48 パッケージを削除 |
2016 年 10 月 | 2016.10.31 | 初版 |