自作USBブラスター用FPGAの続きです。
記事を4つに分けて書いています。
- ファイルの展開 ~ デバイス指定
- ピン制約(ピン定義)
- PLL設定・タイミング制約
- コンパイル・デバイスへの書き込み ←現在地
目次
- 1. コンパイル
- 2. FPGAへダウンロード(書き込み)
- 2-1. Programmer 起動
- 2-2. Hardware Setup
- 2-3. sofファイルの書き込み
- 2-4. pofファイルの書き込み
- 3. とりあえず終了
コンパイル
コンパイル実行
制約ができたのでコンパイルしましょう。
図の位置の 三角アイコンをクリックか 、Tasksの中の Compile Design をダブルクリックしてコンパイルを実行します。


コンパイルが完了するとTasksはこんな感じになります。

私の環境では(ノートパソコン)、 45秒で完了しました。
レポート確認
最低限、クロックの部分のレポートだけは確認しておきます。
Timing Analyzer → Unconstrained Paths → Summary と開いて
Unconstrained Clocks が、Setup/Hold ともに 0 となっていることを確認できたらOK。
(ここが 0 じゃないときは、制約できていないクロックがあります。)

FPGAへダウンロード(書き込み)
Programmer 起動
書き込みは Quartus Programmer を使います。
Tasks か メニューアイコンから起動します。MAX1000 はUSBケーブルでPCに接続しましょう。


起動したところ。

Hardware Setup
Hardware Setup の右側が No Hardware となっていると思うので、
- Hardware Setup をクリック
- 新しく開いた Hardware Setup ウィンドウで、Currently selected hardware を No Hardware から Arrow-USB-Blaster に変更
- Closeをクリック
で、Arrow USB Blaster に変更します。

sofファイルの書き込み
MAX1000 がPCに接続されていることを確認して、Auto Detect ボタンをクリックします。
下に 10M08SAU169 が表示されています。
File が jtag_logic.sof となっていることと、Program/Configuration にチェックが入っていることを確認します。
File が空白の時は、その空白をダブルクリックしてダイアログからファイルを選択します。

左の Start ボタンをクリックします。
数秒で右上の Progress が100%になって、書き込みが完了します。

MAX1000 はこんな状態です。LEDは点灯したまま動かない。

pofファイルの書き込み
sofファイルを選択するのと同じ手順でpofファイルを選択すると、pofファイルを書き込むことができます。
sofを書き込むと電源を切ったときに書き込んだ内容が消えてしまいますが、pofなら内容が保持されます。
基板を組み立てて、sofで動作確認してからpofファイルを書き込むことにします。
とりあえず終了
現状ではデバッグができていませんが、とりあえずFPGAの作成からデバイスへの書き込みまでできました。
コメントを残す