Virtex-4 メモリインターフェイス ソリューション ザイリンクス株式会社 メモリ インターフェイス ソリューション アジェンダ • メモリ インターフェイス ソリューションの紹介 • Virtex-4 FPGAによるDDR2 SDRAMインターフェイス • メモリ インターフェイス ジェネレータ(Memory Interface Generator)の紹介 • ChipScope™ ProによるDDR2 SDRAMソリューション • サマリ 2 Virtex-4 次世代FPGA技術 AES暗号化機能装備の 高速コンフィギュレーション 技術 ASMBL™ コラム(Columnar) アーキテクチャ ギガビットSelectIO™-Ultra™ およびXCITE™技術 先進Xesium™ クロック技術 エンベデッド 3モード Ethernet MAC BRAM / FIFO APUインターフェイス 装備のPowerPC 405 次世代 XtremeDSP™スライス 技術 622Mbps-11.1 Gbps RocketIO™ シリアル マルチ ギガビット トランシーバ ChipSync™ ソース同期 インターフェイス技術 3 新しいASMBL™アーキテクチャ コラム上に配置されるファンクション ブロック • ロジック、DSP、ブロックRAM、I/O、DCM クロック、エンベデッド プロセッサ • 1つのファミリを構成 – LX / FX / SXの複 数プラットフォーム • ロジック、DSP、コネクティビティ、およ びエンベデッド プロセッサなどのアプ リケーションに合わせ最適化可能 • I/Oを分配することによりシグナルイン テグリティの向上 4 メモリ インターフェイス設計の課題 • 高バンド幅を実現 • ソースシンクロナスインターフェ イス – 読み出しデータの取り込みと 再取り込み – データ書き込み – タイミング仕様に合うか否か • • シグナル インテグリティの 解析 RLDRAM II QDR II QDR II SRAM SRAM DDR DDR2 SDRAM SDRAM – PCBと終端処理 複数のメモリ タイプにインター フェイス DDR SDRAM 5 Virtex-4は、より簡素なインター フェイス設計への要求に対応 最もタフな設計課題 • 読み出しサイクルの際には、データ バリッドウィンドウに対してクロック(ストローブ)を中央に 配置 • 高速ソースシンクロナスインターフェイスではタイミングを満たことが非常に困難 Virtex-4は最もタフな 設計課題を解決 – データとクロックを正確にそろえる – すべてのI/Oには、クリティカルなタイミングに 合わせた回路をシリコン内にビルトイン 6 Virtex- 4シリコンの特長 • 革命的なChipSync™技術は、クロックとデータのタイミング合わせに関して80 ps の精度(最大64タップ(倍)遅延=5,120 ps)を提供するので、データ取り込みの 信頼性を保証 • 500 MHzのXesium™差動グローバル クロックはスキューとジッタを最小化するの で、設計上のマージンが増大 • 500 MHzのスマートRAMブロックはFIFO機能を搭載しているので、設計サイズを 最小化 • コラム ベースのI/Oは、ピン配置の制限を除去 7 正確なデータ整列 • IDELAYブロック • • • 64個の遅延素子(タップ) で、それぞれが約80 psの 遅延をもたらす キャリブレーション用クロ ックは内部のものでも外 部のものでも使用可能 すべてのI/Oで使用可能 ChipSync ChipSync DATA FPGA Fabric IDELAY INC/DEC Controller Controller CLK IDELAY IDELAY CNTL CNTL 200 MHz (calibration) 8 ハードウェアで検証されたメモリ ソリューション • 検証済みのメモリ インターフェイスソリューションを使って設計 – 高速メモリ(DDR2、DDR、QDR II、RLDRAM II、FCRAM II)インターフェイスのためのハード ウェア検証済みのリファレンス デザインを無償提供 – 合成可能なVHDL・Verilog-HDLリファレンス デザイン • ハードウェア開発ボードを使えばカスタマイズは容易 – ユーザフレンドリーで、変更部分のインプリメンテーションが可能 – メモリ インターフェイス設計用に特別に作られた開発ボードを使って、カスタム設計の 検証が可能 ML461 9 メモリ インターフェイス ソリューション アジェンダ • メモリ インターフェイス ソリューションの紹介 • Virtex-4 FPGAによるDDR2 SDRAMインターフェイス • メモリ インターフェイス ジェネレータ(Memory Interface Generator)の紹介 • ChipScope™ ProによるDDR2 SDRAMソリューション • サマリ 10 メモリ インターフェイス ソリューション 267 MHz (534 Mbps) DDR2 • 物理層 (physical layer) インターフェイス System Clock DCM DCM CLKs • メモリ インターフェイス FPGA_clk はソースシンクロナス – 読み出しデータとスト – ローブ/クロックは、メ モリ デバイスから同エ ッジで受け取られる 書き込みデータとスト ローブ/クロックは、 センターアラインで送 信される • コントローラ • ユーザ インター フェイス FPGA_clk Addrs/ctrl Addrs/ctrl User User Interface Interface 267 267 MHz MHz DDR2 DDR2 Controller Controller State State machine machine FPGA_clk ctrl ctrl Write Write Data Data Read Read Data Data DQS DDR2 SDRAM 267MHz Addrs/ctrl Addrs/ctrl 534 534 Mbps Mbps DDR2 DDR2 physical physical layer layer interface interface Data(143:0) Data(143:0) 144 bit Interface DQS(13:0) DQS(13:0) DQS DQ DQ DATA READ DATA WRITE 11 物理層 – 読み出し • 従来困難だったリード物理層の設計は、Virtex-4内蔵の 新機能で容易に設計可能 • 読み出しデータ パスには、読み出しデータ取り込みと 再取り込みが含まれる – ダイレクト クロッキング テクニック • データの遅延時間を決めるのにメモリ ストローブを使用 • DCMクロック、CLK0を読み出しデータの中心に配置 • 読み出しデータは、入力DDRフリップフロップを使って CLK0領域で直接取り込まれる 12 メモリ ストローブのエッジ検出 • IDELAYブロック(ChipSyncの一部)へのメモリ ストローブ 入力は、タップ数を0に設定 • エッジ検出のためにDCMクロック(CLK0)を使って、IDELAY ブロックの出力をレジスタに取り込む • 最初のエッジを検出するために必要なタップ数を記録 • 2番根のエッジを検出するために必要なタップ数を記録 • 最初のエッジのタップ数と2番目エッジのタップ数の差が パルス幅となる • データ遅延は、最初のエッジのタップ数とパルス幅の半 分を加えたものになる 13 FPGAクロックの位相検出に使う ストローブ CASE 1 second edge first edge detected detected Clock / Strobe first edge taps Read Data second edge taps data delay taps data delay taps Center Aligned Delayed Read Data Internal FPGA Clock 14 FPGAクロックの位相検出に使う ストローブ CASE 2 second edge first edge detected detected Clock / Strobe first edge taps Read Data second edge taps data delay taps data delay taps Center Aligned Delayed Read Data Internal FPGA Clock 15 メモリ ストローブのエッジ検出回路の ブロック図 DQS IDELAY 64 taps Absolute Delay line D Q Edge Detection and Control Logic Data Delay Data IDELAY Tap Count Tap Control Logic IDELAY Increment/ Decrement Logic Read DQ IDELAY Increment/ Decrement Logic ChipSync IO FPGA Clock IDELAYCTRL requires 200 MHz reference clock 16 読み出しと書き込みのデータ パス Smart RAM IDELAY 64 taps Absolute Delay line DQ IDELAY Increment/ Decrement Logic Input DDR Flip Flops FPGA Clock, CLK0 User Interface Read Data FIFO Falling Edge Data IDELAY Tap Control Logic Data Delay Tap Count Tri-ctrl Write Data Rising OBUFT Read Data FIFO Rising Edge Output DDR Flip Flops Write Data Falling FPGA Clock, CLK270 Fans out to 8 DQ IOs ChipSync IO 17 読み出しデータの取り込み Internal FPGA Clock Delayed Read Data (CASE 1) 0 1 2 3 0 SAME_EDGE_PIPELINED Outputs of IDDR 2 1 3 Write Enable Rising and Falling Edge FIFOs Delayed Read Data (CASE 2) SAME_EDGE_PIPELINE D Outputs of IDDR 0 1 2 3 0 2 1 3 Write Enable Falling Edge FIFO Write Enable Rising Edge FIFO 18 読み出しデータのFIFO書き込み イネーブル • DCM CLK0の立ち上がり エッジでの最初の読み 出しデータ • 立ち上がりFIFOへの書き 込みイネーブルは、最初 のレジスタの出力 • DCM CLK0の立ち下がり エッジでの最初の読み 出しデータ First Data on Rising Edge 0 Read Enable Write enable Rising FIFO 1 D Q D Q D Q FPGA Clock Write Enable Falling FIFO • 立ち上がりFIFOへの書き 込みイネーブルは、第2の レジスタの出力 19 物理層 – 書き込み • 書き込みデータ パスは、DCM とOutput DDRにより、インプリ メントするのが容易 • 書き込みストローブ/クロック は、データの中心にそろえな ければならない • 書き込みストローブ/クロック は、CLK0 DCM出力でクロッキ ングされるOutput DDRを使っ て生成可能 • 書き込みデータは、CLK270 DCM出力でクロッキングされ るOutput DDRを使って送信可 能 DATA WRITE DQS transmitted using CLK0 and its inverse DQ transmitted using CLK270 and its inverse Tri-ctrl DQS OBUFT Output DDR Flip Flops 1 0 CLK0 Tri-ctrl DQ OBUFT Output DDR Flip Flops Write Data Rising Edge Write Data Falling Edge CLK270 20 システム タイミング マージンの定義 Leading Edge Margin Trailing Edge Margin Data Clock (Strobe) Leading Edge Uncertainties Uncertainties affecting setup time 0 Trailing Edge Uncertainties Uncertainties affecting hold time Start window TIME End Phase window 21 DDR2読み出しタイミング解析 @267 MHz Uncertainty Parameters Tclock Tmemory_dll_duty_cycle_dist Tdata_period Memory uncertainties(Tac) Uncertainities Before DQS Value Uncertainities after DQS 3750 188 188 1687 500 500 30 15 0 0 0 0 100 100 Tclock_tree_skew - Max 50 50 Tpcb_layout_skew 20 20 Tpackage_skew Tsetup - Min Thold - Max Tjitter Uncertainties 685 Meaning Clock period Duty cycle distortion from memory DLL is subtracted from clock phase (equal to half clock 188 period) to determine Tdata_period. Data period is half the clock period with 10% duty cycle distortion subtracted from it. This parameter considered the worst of all the memory parameters since there is overlap between these parameters(Tdqsq, Tqhs, Tdqsck, 500 Tac).Tac = 500ps for 267 MHz. 15 Package skew DQS edge detection is performed by registering it in the IO flip flop with a global clock. The final data delay value therefore already accounts for the setup and hold times of the IO flip flops. Hence, 0 these parameters are not considered in this 0 100 Clock jitter that indirectly causes strobe jitter Small value considered for Skew on "global clock" line since detection of DQS and associated DQ 50 are placed close to each other Skew between data lines and associated strobe 20 on the board 685 22 DDR2書き込みタイミング解析 @267 MHz Timing Analysis for 200 MHz Uncertainty Parameters Tclock Tmemory_dll_duty_cycle_dist Tdata_period Memory uncertainties(Tac) Uncertainities Before DQS Value 5000 250 Meaning Clock period 250 Duty cycle distortion from memory DLL is subtracted from clock phase (equal to half 250 clock period) to determine Tdata_period. Data period is half the clock period with 10% duty cycle distortion subtracted from it. 2250 600 600 Tdqsq 0 0 Tqhs 0 0 30 15 Tpackage_skew Uncertainities after DQS This parameter considers the worst of all the memory parameters since there is overlap between these parameters(Tdqsq, Tqhs, 600 Tdqsck, Tac).Tac = 500ps for 267 MHz. Due to overlap with other memory 0 parameters. Only the worst case parameter Due to overlap with other memory parameters. Only the worst case parameter 0 Tac being considered. 15 Package skew 23 ハードウエア検証が行われた • • • • FPGA、ボード、メモリのIBISシミュレーション 同時スイッチング出力(SSO)の検証 結果→優れた信号品質 ML 461ボードを使った267MHz(534 Mbps)DDR2のインプリメン テーション DQS DQ Read Cycle ML 461 board 24 Virtex-4を使った メモリ開発システム ML 461 •ハードウェア検証済みソリューション Data rate CLK Rate DDR2 534 Mbps 267 MHz DDR 400 Mbps 200 MHz QDR II RLDRAM II FCRAM II 1.2 Gbps 600 Mbps 600 Mbps 300 MHz 300 MHz 300 MHz Data Width 144 bit (DIMM) 144 bit (DIMM) (72+72) bit 36 bit 28 bit 28 bit I/O Standard SSTL18 SSTL 2 HSTL HSTL 36 bit SSTL18 Block Diagram RLDRAM II QDR II SRAM JTAG Interface FCRAM II DDR 2 DIMM DDR DIMM DDR 2 DDR 最大周波数は提供されたメモリ デバイスに基づく 25 メモリ インターフェイス ソリューション アジェンダ • メモリ インターフェイス ソリューションの紹介 • Virtex-4 FPGAによるDDR2 SDRAMインターフェイス • メモリ インターフェイス ジェネレータ(Memory Interface Generator)の紹介 • ChipScope™ ProによるDDR2 SDRAMソリューション • サマリ 26 メモリ インターフェイス ジェネレータ (Memory Interface Generator) •ChipSync技術 •ユーザ設計の無駄を省く • DDR2 SDRAMコントローラのHDLコードとピン割り当てを生成 • DDR2 SDRAMでの様々な設計が可能(DIMMとコンポーネント) •タイミング解析スプレッド シートを生成 27 特長 • 最大300 MHzま でのクロック周 波数 • 選択できるオプ ション – FPGAデバイス の種類 – スピード グレード – データ幅 – FPGAのバンク 28 特長 • ツールがすべての ピンを選択 – ユーザはピン選択 のための入力情 報を入力 – 選択されたピンを 無視するためのオ プション – .ucfファイルを生成 29 特長 • ツールはWASSOと すべてのピン選択 規則をチェックす る • VHDLやVerilogで コントローラを生成 • モジュール設計が 可能 30 メモリ インターフェイス ソリューション アジェンダ • メモリ インターフェイス ソリューションの紹介 • Virtex-4 FPGAによるDDR2 SDRAMインターフェイス • メモリ インターフェイス ジェネレータ(Memory Interface Generator)の紹介 • ChipScope™ ProによるDDR2 SDRAMソリューション • サマリ 31 ChipScope™ Proのインターフェイス • 追加のI/Oピンは不要 – JTAGポート経由のアクセス • Integrated Logic Analyzer(ILA)コアを使用するオンチップ システ ム バス解析 – メモリ ツール キットにはテスト ベクタ ファイルが添付されている – ユーザのPCで実行可能 JTAG インター フェイス パラレル ケーブル ML 461デモ ボード PC 32 ChipScope™ Proのデモ フロー • デモ ボードに電源を入れる • ChipScope™ Pro Analyzerソフ トウェアをスタートさせる • JTAGチェーンを介してFPGA デバイスを検出 • JTAGチェーンを介してFPGA デバイスをデモ用ビット ファ イルでプログラムする • テスト ベクタをロードしてパ ラメータ ファイルをトリガする • トリガを起動してリアルタイ ムでデータを取り込む • バス信号とデータ値を解析 DCM DCM FPGA_clk FPGA_clk Addrs/ctrl Addrs/ctrl User User Interface Interface CLKs 267 267 MHz MHz DDR2 DDR2 Controller Controller State State machine machine Addrs/ctrl Addrs/ctrl FPGA_clk ctrl ctrl Write Write Data Data Read Read Data Data 534 534 Mbps Mbps Data(143:0) Data(143:0) DDR2 DDR2 physical physical layer layer DQS(15:0) DQS(15:0) interface interface Write Data capture point Read Data capture point 33 DDR2のデモ • 内部FPGA信号、データ バスとエラー無し(バイト エラー信 号がLow)を示す波形のスクリーン ショット 34 QDRII SRAMのデモ • 書き込みアドレス/データおよび読み出しアドレスとデータ パターン(ASCIIエンコードされた)のエラーの無い状態を示 す波形のスクリーン ショット 35 メモリ インターフェイス ソリューション アジェンダ • メモリ インターフェイス ソリューションの紹介 • Virtex-4 FPGAによるDDR2 SDRAMインターフェイス • メモリ インターフェイス ジェネレータ(Memory Interface Generator)の紹介 • ChipScope™ ProによるDDR2 SDRAMソリューション • サマリ 36 サマリ • ザイリンクスのメモリ インターフェイス ソリュー ションは、困難な設計課題に対応 – 高バンド幅要求 – 物理層インターフェイス設計(読み出しデータ取り込みおよ び書き込み) – ハードウェアで検証されたコントローラの設計 – シグナル インテグリティ解析、ハードウェアの検証と特性化 – 主要なメモリ タイプ(DDR2、QDR II、DDR、RLDRAM II、 FCRAM II)へのインターフェイス ソリューション • 完全にハードウェア検証済みソリューション 37 どのようにしてスタートするか • 最初の設計を成功させるために、完全にハー ドウェア検証されたソリューションを利用 • Webサイトwww.xilinx.co.jp/vitex4にアクセスして 最新のメモリ設計ソリューションを参照 – アプリケーション ノートとリファレンス デザイン – Vritex-4の先進メモリ開発システム 回路図とgerberファイルを含むボード レベルの ソリューション シグナル インテグリティ解析ファイル 実際のデモ ボードML 461を提供 DDR2, QDR II, DDR, RLDRAM II, FCRAM II 38 ザイリンクスのロジック関連提供製品 ISEは、最小コスト、最大性能、および最高の使いやすさを提供 • Vritex-4ロジック バンドル(梱包組み合わせコース) – Virtex-4ボード、ISE Foundation、Chipscope Pro、トレー ニングわ%1175s3 • Spartan-3ロジック バンドル – Sparten-3ボード、ISE BaseX、Chipscope Pro、トレーニング 39
© Copyright 2024