Spratan3E Starter KitのDDR SDRAMコントローラの説明をしようと思う。
Spratan3E Starter KitのDDR SDRAMコントローラのトップはddr_sdram_cont.vhdだ。
まずはWriteの場合。
・input_addressに書き込むアドレスをセット
・input_maskに書き込みマスクをセット
・read_writeをwriteの0にする
・input_dataにデータをセット
この下準備の後にwrdata_fifo_wrenとaddr_fifo_wrenを1クロックの間だけ1にする。
その後でコントローラがWriteコマンドを発行してDDR SDRAMへデータを書き込む。
下の図を参照。

Readの場合
・input_addressに読み込むアドレスをセット
・read_writeをReadの1にする
この下準備の後にaddr_fifo_wrenだけを1クロックの間だけ1にする。
これでコントローラがReadコマンドを発行してDDR SDRAMからデータを読み出す。
データはoutput_dataに出てくる。output_dataが有効なのはrddata_validが1の時である。

Writeの時のレイテンシは80ns、Readの時のレイテンシは130nsのようだ。ちょっとレイテンシが大きい気もするが、チューニングはしていないのでしょうがないだろう。実際に使う場合にはもう少しチューニングできると思う。今は詳しい検討はしていない。チューニングはFPGAチップのスピードグレードや動作周波数にも影響されるし時間がかかる作業だ。
- 2006年07月07日 20:30 |
- Spartan3E Starter Kit
-
| トラックバック:0
-
| コメント:0