はじめに
インテル®Quartus®Prime 開発ソフトウエアでは、EMIFコアの Example Design を生成することができます。
このデザインは、外部メモリに対してRTL上で定められたサイズの Write/Read テストをおこない Pass/Fail を判定して停止します。
しかし RTL 記述を変更することにより、停止せずに連続動作させることが可能です。
本記事では、その設定方法を紹介します。
なお連続動作にした場合は、Pass というステータスは無くなり、Fail 判定のみとなります。
本記事では、以下の環境にて紹介しています。
- FPGA:インテル®Arria10 ファミリ
- 作成言語:Verilog
- インテル®Quartus®Prime 開発ソフトウエア プロ/スタンダード・エディション:バージョン18.1
Example Design の生成方法
生成する Example Design の設定は、EMIF コア設定画面の Example Designs タブで行います。Synthesis、Simulationの生成の有無、および生成する言語を設定します。
設定後、右上の"Generate Example Designs..." をクリックします。
これにより、"Select Example Design Directory" の画面が開きますので、生成する箇所およびフォルダ名称を設定し、OKをクリックします。
これにより Example Design 生成が開始されます。
生成されるフォルダは、プロ・エディションとスタンダード・エディションとで異なります。
下図は、生成するフォルダ名を"emif_0_ed" という名称にして生成した結果です。
プロ・エディションンでは、"ip" というフォルダが生成されています。
生成されるデザインのブロック構成は、下図のとおりです。
Synthesis 用 Example Designは、EMIF コアの他、Traffic Generator というモジュールが付加されたています。
また Simulation 用 Example Designは、EMIF コアの他、Traffic Generator、メモリモデル、Status Checker が付加されます。
RTL記述変更方法
Example Design を連続動作させるには、Traffic Generator のRTL記述を変更します。
プロ・エディションとスタンダード・エディションでは、変更するファイルと保存フォルダが異なりますので以下を参照して下さい。
プロ・エディション
変更するファイル
- Synthesis : ed_synth_tg.v
- Simulation : ed_sim_tg.v
保存フォルダ
以下の図を参照して下さい。
スタンダード・エディション
変更するファイル
- Synthesis : ed_synth.v
- Simulation : ed_sim.v
保存フォルダ
以下の図を参照して下さい。
RTL変更箇所
RTL変更箇所は、altera_emif_avl_tg_top をインスタンスしている部分になり、"TEST DURATION" の値を変更してください。
各設定値と繰り返し回数は以下のとおりです。
設定 | 回数 |
SHORT | 1回 |
MEDIUM | 1000回 |
INFINITE | 連続動作 |
まとめ
この記事では、EMIF で生成される Example Design に対して、連続動作させる具体的な手順を紹介しました。
Example Design は簡単なカスタマイズで、動作の変更が可能ですので、製品の事前動作確認にお役立てください。