• 検索結果がありません。

Arria 10 デバイスの差動レシーバー

5 Arria 10 デバイスにおける I/O と高速 I/O

5.6 Arria 10 デバイスにおける高速ソース・シンクロナス SERDES および DPA

5.6.4 Arria 10 デバイスの差動レシーバー

レシーバーは、トランスミッターとレシーバーで共有することができる差動バッファーと I/O PLL、DPA ブロック、シンクロナイザー、データ・リアライメント・ブロック、およびデシリアライザーを有します。差動 バッファーは LVDS、mini-LVDS、および RSDS 信号レベルを受信することができます。また、レシーバ ーピンの I/O 規格は、 Quartus Primeソフトウェア Assignment Editor で LVDS、mini-LVDS、ま たは RSDS にスタティックに設定することができます。

注意: LVDS チャネルをドライブするには、整数 PLL モードの PLL を使用する必要があります。

表 63. 差動レシーバーの専用回路および機能

専用回路 / 機能 概要

差動 I/O バッファー LVDS、mini-LVDS、および RSDS をサポート

SERDES 最大10 ビット幅のデシリアライザー

専用回路 / 機能 概要

PLL ( フェーズ・ロック・ループ ) データ・シンクロナイザーのためにクロックの異なる位相を生成

データ・リアラインメント ( ビットスリップ ) ビット・レイテンシーをシリアルデータに挿入

DPA シリアルデータの位相に最も近い位相を選択

シンクロナイザー (FIFO バッファー ) データとレシーバーの入力リファレンス・クロック間における位相差を補償

スキュー調整 マニュアル

オンチップ終端 (OCT) LVDS I/O 規格で100 Ω

関連情報

158ページの ガイドライン : LVDS に整数 PLL モードの PLL を使用する 5.6.4.1 Arria 10 デバイスのレシーバーブロック

Arria 10 の差動レシーバーは、次のハードウェア・ブロックを有します。

• DPA ブロック

• シンクロナイザー

• データ・リアライメント・ブロック ( ビットスリップ )

• デシリアライザー 図 -102: レシーバーのブロック図

次の図は、レシーバーのハードウェア・ブロックを示しています。SDR モードおよび DDR モードでは、IOE からのデータ幅はそれぞ れ 1 ビットと 2 ビットです。デシリアライザーはシフトレジスターとパラレル・ロード・レジスターを含んでおり、内部ロジックに最大 10 ビットを送信します。

rx_in DPA Circuitry

Synchronizer Bit Slip

Deserializer

rx_inclock

IOE supports SDR, DDR, or non-registered datapath LVDS Receiver

FPGA Fabric

rx_out

rx_divfwdclk rx_outclock

DPA Clock Domain LVDS Clock Domain

Retimed Data DPA Clock

DOUT DIN DIN

DOUT DIN

DOUT DIN

Clock Mux

I/O PLL

+ IOE

LVDS_diffioclk DPA_diffioclk (LOAD_EN,

diffioclk)

(DPA_LOAD_EN, DPA_diffioclk, rx_divfwdclk) 2

3 10

10

3 (LVDS_LOAD_EN,

LVDS_diffioclk, rx_outclock) 8 Serial LVDS Clock Phases 2

diffioclk 10 bits

maximum data width

5.6.4.1.1 DPA ブロック

DPA ブロックは、差動入力バッファーから高速シリアルデータを取り込み、I/O PLL が生成する 8 つの 位相のうち 1 つを選択してデータをサンプリングします。DPA はシリアルデータの位相に最も近い位相 を選択します。受信データと選択された位相間の最大位相オフセットは 1/8 UI(9)であり、これは DPA

図 -103: DPA クロック位相とシリアルデータ・タイミングの関係

次の図は、DPA クロックと着信シリアルデータ間の可能な位相関係を表しています。

45°

90°

135°

180°

225°

270°

315°

0.125Tvco Tvco

rx_in

TVCO = PLL serial clock period

D0 D1 D2 D3 D4 Dn

DPA ブロックは、入力シリアルデータの位相を継続的に監視し、必要に応じて新しいクロック位相を選 択します。オプションのrx_dpa_holdポートをアサートすることで、DPA が新しいクロックフェーズ を選択できないようにすることができます。これは、各チャネルで使用可能です。

DPA 回路では、8 つの位相から最適な位相にロックするにあたって固定トレーニング・パターンは必要 ありません。リセットまたはパワーアップ後、最適な位相にロックするために、DPA 回路は受信データに おける遷移を必要とします。オプションの出力ポートであるRX_DPA_LOCKEDを使用して、パワーアッ プまたはリセット後、最適な位相に初期の DPA ロック状態を示すことができます。データを検証するに は、巡回冗長検査 (CRC) や DIP-4 ( 対角イ ンターリーブ・パリティー) などのデータチェッカーを使 用します。

独立したリセットポートのRX_RESETを使用して、DPA 回路をリセットすることができます。なお、

DPA 回路はリセット後に再トレーニングする必要があります。

注意: DPA ブロックは非 DPA モードでバイパスされます。

関連情報

158ページの ガイドライン : LVDS に整数 PLL モードの PLL を使用する 5.6.4.1.2 シンクロナイザー

シンクロナイザーは、dpa_fast_clock(DPA ブロックが選択する最適クロック)と I/O PLL が生 成するfast_clock の位相差を補償する1 ビット幅の6 ビット幅のFIFO バッファーです。シンク ロナイザーは、周波数差ではなく、データとレシーバーの入力基準クロックとの間の位相差のみを補償す ることができます。

オプションのポートのrx_fifo_reset を内部ロジックで使用してシンクロナイザーをリセットする ことができます。シンクロナイザーは、DPA が最初に着信データにロックすると自動的にリセットされま す。インテルは、rx_fifo_reset を使用して、受信データが破損していることをデータチェッカーが 示した時にシンクロナイザーをリセットすることを推奨します。

注意: シンクロナイザー回路は、非 DPA およびソフト CDR モードでバイパスされます。

関連情報

158ページの ガイドライン : LVDS に整数 PLL モードの PLL を使用する 5.6.4.1.3 データ・リアラインメント・ブロック ( ビットスリップ )

リンクによって追加されるスキューと共に送信されるデータのスキューは、受信シリアル・データストリー ムでチャネル間スキューが生じます。DPA がイネーブルされると、受信データは各チャネル上の異なるク ロック位相でキャプチャーされます。この相違によって、チャネル間で受信データのミスアライメントが生 じることがあります。このチャネル間スキューを補正し、各チャネルで正しい受信ワード境界を確立する ために、各レシーバーチャネルは、ビット・レイテンシーをシリアルストリームに挿入することによってデ ータを再びアライメントする、専用データ・リアライメント回路を備えています。

オプションのrx_bitslip_ctrlポートは、内部ロジックから個別に制御される各レシーバーのビ ット挿入を制御します。データはrx_bitslip_ctrlの立ち上がりエッジで 1 ビットをスリップしま す。rx_bitslip_ctrl信号の要件には次の項目が含まれます。

• 最小パルス幅は、ロジックアレイのパラレルクロックでの 1 周期である

• パルス間の最小 Low 時間は、パラレルクロックでの 1 周期である

• 信号はエッジトリガー信号である。

• 有効なデータは、rx_bitslip_ctrlの立ち上がりエッジから 4 パラレル・クロックサイクルの 間使用可能です。

図 -104: データ・リアライメントのタイミング

次の図に、デシリアライゼーション・ファクターを4に設定した状態での、1 ビット・スリップ・パルスの後のレシーバー出力 (rx_out) を示します。

rx_inclock rx_in rx_coreclock rx_bitslip_ctrl rx_out

3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0 3 2 1 0

3210 321x 32x1 3x21 xx21 0321

データ・リアライメント回路は、デシリアライゼーション・ファクターに設定されるビットスリップのロール オーバー値があります。オプションのステータスポートのrx_bitslip_maxは、プリセット・ロールオ ーバー・ポイントに達することを示すために、各チャネルから FPGA ファブリックに使用可能です。

図 -105: レシーバー・データ・リアラインメント・ロールオーバー

次の図は、ロールオーバーが発生する前の 4 ビット時間のプリセット値を表しています。ロールオーバーが発生したことを示すため に、rx_cda_max信号は 1rx_outclockサイクルの間パルスします。

rx_inclock rx_bitslip_ctrl rx_coreclock rx_bitslip_max 5.6.4.1.4 デシリアライザー

デシリアライゼーション・ファクターは、 Quartus Prime ソフトウェアを使用して、スタティックに x3、 x4、x5、x6、x7、x8、x9、または x10 に設定できます。

IOE は、DDR モードまたは SDR モードで動作できる 2 つのデータ入力レジスターを備えています。

DDR (×2) および SDR (×1) 動作をサポートするために、デシリアライザーをバイパスすることがで きます。デシリアライザーのバイパスは、アルテラ GPIO IP コアを介してサポートされています。

図 -106: デシリアライザーのバイパス

この図は、デシリアライザーのバイパスのパスを示しています。

rx_in DPA Circuitry

Synchronizer Bit Slip

Deserializer

IOE supports SDR, DDR, or non-registered datapath

LVDS Receiver

FPGA Fabric

rx_out

rx_divfwdclk rx_coreclock

注:ディスエーブルされるブロックと信号は グレーアウトされています。

Retimed DPA ClockData

DIN

DOUT DIN

DOUT DIN

DOUT DIN

Clock Mux

I/O PLL

+– IOE

fast_clock dpa_diffioclk (load_enable,

fast_clock)

(dpa_load_en, dpa_diffioclk, rx_divfwdclk) 2

3 10

2

3 (load_enable,

fast_clock, rx_coreclock) 8 Serial LVDS Clock Phases 2

fast_clock

デシリアライザーをバイパスする際、DPA およびデータ・リアライメント回路を使用することはできませ ん。

5.6.4.2 Arria 10 デバイスのレシーバーモード

Arria 10 デバイスは、次のレシーバーモードをサポートします。

• 非 DPA モード

• DPA モード

• ソフト CDR モード

注意: DPA モードを使用する場合は、推奨された初期化及びリセットフローに従って実行します。推奨フロー

は、DPA 回路が PLL からの最適な位相タップを検出してレシーバーでデータをキャプチャーできるよう にします。

関連情報

Recommended Initialization and Reset Flow

アルテラの LVDS SERDES IP コアを初期化し、リセットするための推奨手順を提供します。

5.6.4.2.1 非 DPA モード

非 DPA モードは、DPA およびシンクロナイザー・ブロックをディスエーブルします。入力シリアルデータ

は、I/O PLL によって生成されるシリアルfast_clockクロックの立ち上がりエッジで登録されます。

立ち上がりエッジのオプションは、 Quartus Prime Parameter Editorで選択することができます。

I/O PLL によって生成されるfast_clockクロックは、データ・リアライメントとデシリアライザー・ブ

ロックをクロックします。

図 -107: 非 DPA モードのレシーバーデータパス

次の図は、非 DPA データパスのブロック図を表しています。SDR および DDR モードでは、IOE からのデータ幅はそれぞれ 1 ビッ トおよび 2 ビットです。

rx_in DPA Circuitry

Synchronizer Bit Slip

Deserializer

rx_inclock

IOE supports SDR, DDR, or non-registered datapath LVDS Receiver

FPGA Fabric

rx_out

rx_divfwdclk rx_coreclock 10 bits

maximum data width

注:ディスエーブルされるブロックと信号は グレーアウトされています。

LVDS Clock Domain

Retimed Data DPA Clock DOUT DIN DIN

DOUT DIN

DOUT DIN

Clock Mux

I/O PLL

+– IOE

fast_clock dpa_diffioclk (load_enable,

fast_clock)

(dpa_load_en, dpa_diffioclk, rx_divfwdclk) 2

3 10

10

3 (load_enable,

fast_clock, rx_coreclock) 8 Serial LVDS Clock Phases 2

fast_clock