モノ創りで国造りを

ハード/ソフト問わず知見をまとめてます

Intel FPGAのSimulationの手順

Intel FPGAのSimulation

FPGAの設計は時間がかかる。
特にデバッグに時間がかかるので、コードの誤りは早い段階で検知しておきたい。
そのためにはSimulationを使いましょう。
ここではIntel FPGAのModelsim-Alteraの使い方を簡単にまとめる。

流れ

  1. プロジェクトの作成
  2. verilog fileの作成
  3. テストベンチのテンプレートの作成
  4. テストベンチの作成
  5. Modelsimの起動とSimulationの実行

プロジェクトの作成

Quartus PrimeのFile > New Project Wizardをクリック
適当に進めてProjectを作成する
この画面でModelsim-alteraを選択する f:id:yuji2yuji:20190809105131p:plain

verilog fileの作成

  1. Quartus PrimeのFile > Newをクリック
  2. Design Files > Verilog HDL Fileをクリック
    f:id:yuji2yuji:20190809104738p:plain

  3. Verilogで書く。

  4. Start Analysys & Synthesisをクリックし、エラーが出ないことを確認する。
    f:id:yuji2yuji:20190809104944p:plain

テストベンチのテンプレート作成

  1. Quartus PrimeのProcessing > Start > Start Test Bench Template Writerをクリックする。
    f:id:yuji2yuji:20190809105600p:plain

  2. プロジェクトフォルダ/simulation/modelsimフォルダ内に、"モジュール名".vtのファイルが生成される。
    これがテストベンチのテンプレート。
    入出力と内部信号が記載されている。便利。

テストベンチの作成

  1. 生成されたテストベンチテンプレートファイルを編集する。
    ご丁寧にinitialとalwaysまで記載されているので、そこにinput信号の記載。

  2. プロジェクトを右クリックしてSettinsを選択。
    f:id:yuji2yuji:20190809111218p:plain

  3. EDA Tool SettingsのSimulationを選択。
    f:id:yuji2yuji:20190809111121p:plain

  4. NativeLink settingsのCompile test benchをチェックし。Test Benchesをクリック。
    f:id:yuji2yuji:20190809111102p:plain

  5. Newをクリック。
    f:id:yuji2yuji:20190809111615p:plain

  6. テストベンチ名を適当に入力し、Test bench and simulation filesのFile nameに作成したテストベンチを選択して入力してOKをクリック。
    f:id:yuji2yuji:20190809111025p:plain

  7. 再びプロジェクトを右クリックしてSettingsを選択し、以下の画面のFilesをクリック。File名に先ほど作成したテストベンチを選択して追加する。
    f:id:yuji2yuji:20190809112048p:plain

Modelsimの起動とSimulationの実行

  1. ModelSimのPathを設定するため、Quartsu Primeの Tools > Optionをクリック。
    f:id:yuji2yuji:20190809115057p:plain

  2. GeneralのEDA Tool OptionsのMdelSim-AlteraにPathを選択して記入する。
    自分の場合は"C:\intelFPGA_lite\17.1\modelsim_ase\win32aloem\" f:id:yuji2yuji:20190809114958p:plain

  3. Modelsim-alteraを起動するため、Quartus Primeの Tools > Run Simulation Tool > RTL Simulationをクリック。 f:id:yuji2yuji:20190809111855p:plain

  4. workの中にテストベンチがある事を確認する。
    f:id:yuji2yuji:20190809113615p:plain

  5. 記述に誤りがありコンパイルができず表示されない。
    その場合はテストベンチを修正し、Compile > Complieをクリックし、テストベンチをコンパイルする。
    f:id:yuji2yuji:20190809113532p:plain

  6. Simulationを実行するため作成したテストベンチのファイル名をダブルクリックする。
    Waveタブをクリックし波形を表示する。
    f:id:yuji2yuji:20190809114003p:plain

  7. 閲覧したいネットをドラッグしWaveにドロップする(まだ波形は表示されない)。
    f:id:yuji2yuji:20190809114132p:plain

  8. 閲覧したい波形の最大時間を設定し、Runボタンをクリックする。
    f:id:yuji2yuji:20190809114449p:plain

  9. 波形が表示される。
    f:id:yuji2yuji:20190809114514p:plain

まとめ

手順が多いので地味に大変。基本は以下の3つ。

  1. テストベンチファイルを記述
  2. テストベンチの作成
  3. プロジェクトにテストベンチファイルを追加

2と3のいずれかをうっかり忘れてしまいがちなので
上手くいかない場合は、2か3をやり忘れていないか要確認。