XCM-005に搭載SDRAMのMicroBlazeによるテスト |
|
弊社では、基本的にサンプル回路やテスト回路を公開しておりませんが、XCM-005などのSDRAMの操作についてのお尋ねがありますので、一例として、MicroBlazeを使って動作させた例をご紹介いたします。MicroBlazeを使用するにはEDKが必要です。 本テストはISE 9.2i+EDK9.1iを使用しました。 |
(1)SDRAMコントローラの概要 SDRAMコントローラの仕様書から下記の構成で作ることにします。 |
ISEプロジェクト画面へのリンク |
(2) XPSの画面 サンプルアプリケーションとして、TestApp_Memory.cを生成させます。(for(;;)を追加して無限ループになるようにしました。ほかはそのまま) SDRAMコントローラ(OPB_SDRAM)を追加し、DCMを2つ追加します。 UARTも必要です。 |
(3)一つめのDCM(dcm_opbと命名)の設定例 |
(SDRAMコントローラの仕様書は下の画面のDataseetボタンをクリックして確認できます) |
(4)二つめのDCM(dcm_sdramと命名)の設定例 |
(5)SDRAMコントローラの設定例 |
(6)CPUの設定例 |
(7)UCFファイルの例はこちら 注意点としては、Endianの違いを考慮して接続することです。 |
(7)テスト回路(TOP.VHD)はこちら ちなみにリセット回路はこちらのarstを使っています。 各モジュールのリセット信号の論理を合わせるの忘れないでください。今回はすべて負論理とし、TOPからARST.VHDによりコンフィグレーション完了後に自動的に供給しています。 |
(8)実行例をごらんください |
サンプルソフトは全領域をテストしないので、全領域をテストするように変更したとき、上記の一連のテストに約2分30秒かかりました。(32MBytes) |
(9)テストポイントの出力波形(ロジアナによる) |
この例は、FPGAやSDRAMの性能を十分に引き出ししていないと考えられます。 どうかみなさまはもっと上手におつくりください。 |
この例がみなさまの参考になれば幸いです。 また間違いなど見つけられましたらぜひご指摘下さい。(当方はアプリケーションを行っておりませんので、EDKやXILINXツールの操作には未熟です) |
2007.11.26追記 Virtex-4ブレッドボードXCM-009でも確認しました。XCM-009用のUCFファイルはこちらです。 |
メールでのご質問はこちらへどうぞ |