FC2カウンター FPGAの部屋 CORE Generatorで分散RAM(SLICEM)の同期FIFOを生成1

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

CORE Generatorで分散RAM(SLICEM)の同期FIFOを生成1

現在、キャラクタ生成コントローラを作製中だ。
まだ中身はほとんど作っていないが、Char_Gen_Controller.vとCommand_FIFO.v を作った。今回の同期FIFOと非同期FIFOはCoreGenを使って生成する予定のなので、FIFO Generatorで生成する。
自分のブログを見返してみるとCORE Generatorのことを書いていなかったので、やり方を書いてみようと思った。たぶん、だれでも使えると思うんだけど、チュートリアル的な物として書いておこう。

まずはISE11.4のProject NavigatorのSourceウインドウで右クリックをして、右クリックメニューの中からNew Source...を選択する。
Core_Gen_1_100120.png

New Source Wizardダイアログが開く。左のペインから”IP(CORE Generator & Architecture Wizard)”をクリックする。File Name のテキストボックスにファイル名を入力する。”Next >”ボタンをクリックする。
Core_Gen_2_100120.png

今回は同期FIFOを生成するので、Memories & Storage Elements を展開し、その下のFIFOsを展開するとFifo Generator 5.3が出てくるので、これを選択し、”Next >”ボタンをクリックする。
Core_Gen_3_100120.png

Summaryが出るので、Finishボタンをクリックする。
Core_Gen_4_100120.png

Fifo Generatorが立ち上がる。今回は分散RAM、つまりルックアップテーブルのうちのSLICEMを使用する16深度の同期FIFOを作るので、Common ClockのDistributed RAMのラジオボタンをクリックする。これがBlock RAMだと、当然ながらBRAMを使用する。Independent Clocksを使うと非同期FIFOが生成される。”Next >”ボタンをクリックする。
Core_Gen_5_100120.png

Read ModeはFirst-Word Fall-Throughを選択する。First-Word Fall-Throughについては、”Virtex4のFIFO(FWFTモード)”で説明している。Standard FIFOを選ぶとRD_ENを1にした1クロック後にReadデータが出てくるが、First-Word Fall-Throughを選ぶと、emptyでなければ、すでにReadデータが出ている。RD_ENは、データを読んだというイネーブルで、1にすると次のクロックで、次のデータが出てくる(emptyでなければ?)。First-Word Fall-Throughの方が使い易いので、いつもFirst-Word Fall-Throughを使っている。
Data Port Parameters を選択する。Write Widthを32に、Write Depthを16に設定する。これで32個のSLICEMが使用されることになる。”Next >”ボタンをクリックする。
Core_Gen_6_100120.png

(2010/01/21:追記 以前の画像は、First-Word Fall-ThroughでなくStandard FIFOだったので変更しました。)

今日はこの辺で終了とする。
  1. 2010年01月20日 05:40 |
  2. Core Generator
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
http://marsee101.blog19.fc2.com/tb.php/1359-4a2e3a93
この記事にトラックバックする(FC2ブログユーザー)