2017年5月19日金曜日

DE0nanoでQuartus Prime Lite Editionを使う: 備忘録

新規プロジェクトの作成

  • File ⇒ New ⇒ New Quartus Prime Project ⇒(New Project Wizard画面)
  • Directory, Name, Top-Level Entity⇒ プロジェクトのディレクトリ、プロジェクト名、トップレベルモジュールの名前 ⇒ Next
  • Project Type: Empty project ⇒ Next
  • Add Files: (空白のまま)⇒ Next
  • Family, Device & Board Settings ⇒ Family: Cyclone IV E, Available devices: EP4CE22F17C6を指定 ⇒ Finish

Verilogファイルの新規作成

  • File ⇒ New ⇒ verilog HDL File
  • File ⇒ Save As ⇒ (ファイル名を確認して)保存 ⇒ (プロジェクトにファイルが追加されました)


Verilogファイルのサンプルコード

DE0nano搭載の50MHzクロックを分周してLEDを光らせてみます。
module DE0nano
(
CLOCK_50,
KEY0,
LED
);
 
input CLOCK_50;
input KEY0;
output [7:0] LED;
 
reg [27:0] count; 
always @(posedge CLOCK_50 or negedge KEY0)
begin
if (~KEY0)
count <= 0;
else if (count == 28'hFFFFFFF)
count <= 0;
else
count <= count + 1'b1;
end
 
assign LED = count[27:20]; 
endmodule

FPGAのピンアサイン

  • 事前作業としてデザイン情報を作成します。Processing ⇒ Start ⇒ Start Analysis & Elaboration
  • Assignments ⇒ Pin Planner



ピンアサインするには、Node Nameをパッケージのピン番号にドラッグ&ドロップするか、Locationにピン番号を直接記入します。I/O規格も適宜変更します。


コンパイルの実行

  • Processing ⇒ Start Compilation
  • コンパイルが無事終了したらコンパイラレポートで最大周波数などが見られます

FPGAに書き込み



ROMに書き込み

  • (Quartusで)File ⇒ Convert Programming File 
  • Programming file type: JTAG Indirect Configuration File (.jic), Configuration device: EPCS64(基板のバージョンによりEPCS16の場合あり)
  • Input files to convert: Flash Loaderをクリック ⇒ Add Device ⇒ Cyclone IV E ⇒ EP4CE22 ⇒ OK
  • Input files to convert: SOF Dataをクリック ⇒ Add File ⇒ 変換元のsofファイルを指定
  • Generate をクリック ⇒ jic ファイルが生成される
  • Convert Programming File を終了
  • Programmer を起動
  • Add File ⇒ 先ほど生成した jic ファイルを指定
  • Program/Configure と Verifyにチェックを入れる 
  • Start で書き込み開始


0 件のコメント:

コメントを投稿