- 追加された行はこの色です。
- 削除された行はこの色です。
[[Synthesijer]] ~
[[DE0-Nano/Synthesijer]] ~
#contents
* QuickStart [#e16cde72]
本稿では[[DE0-Nano/Synthesijer]]で作成した環境上で synthesijer_samples の ~
quickstart を DE0-Nano 上で動作させるまでの手順について記載します。~
** synthesijer_samples/quickstart [#g339da14]
quickstart は LED が点滅するサンプルです。 ~
[[Synthesijer の Web ページ>http://synthesijer.sourceforge.net/]]に記載されているのと同様の手順でビルドします。~
$ cd ~/synthesijer_samples/sample/quickstart/
$ java -cp $SYNTHESIJER synthesijer.Main Test.java Top.java
Output VHDL: Top.vhd
Output VHDL: Test.vhd
Output Verilog HDL: Top.v
Output Verilog HDL: Test.v
DE0-Nano System Builder でプロジェクトファイルを作成します。~
Synthesijer の quickstart に合わせてプロジェクト名は Top にします。 ~
~
#ref(SystemBuilder.png,,60%); ~
作成したプロジェクトを Ubuntu に移動します。 ~
その際プロジェクトファイル内にある Top.v はリネームしておきます。~
~
Ubuntu 上で Top.qsf をビルドした quickstart のTop.vhd にあわせて以下のように編集します。~
また上記ビルドした Top.vhd、Test.vhd をコピー同じディレクトリにコピーします。~
~
$ vi Top.vhd
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.numeric_std.all;
entity Top is
port (
clk : in std_logic;
reset : in std_logic;
flag_return : out std_logic
);
end Top;
...<略>
$ vi Top.qsf
...<略>
#============================================================
# CLOCK
#============================================================
set_location_assignment PIN_R8 -to clk
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to clk
#set_location_assignment PIN_R8 -to CLOCK_50
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to CLOCK_50
#============================================================
# LED
#============================================================
set_location_assignment PIN_A15 -to flag_return
set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to flag_return
#set_location_assignment PIN_A15 -to LED[0]
#set_instance_assignment -name IO_STANDARD "3.3-V LVTTL" -to LED[0]
...<略>
#============================================================
# End of pin assignments by Terasic System Builder
#============================================================
set_location_assignment PIN_A11 -to reset
set_instance_assignment -name IO_STANDARD 2.5V -to reset
set_global_assignment -name VHDL_FILE Test.vhd
set_global_assignment -name VHDL_FILE Top.vhd
set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "2.5 V"
Quartus を起動し、File -> Open Project から Top.qpf を選択します。 ~
$ quartus
#ref(quartus001.png,,60%); ~
Processing -> Start Complication を押下します。 ~
ここで作成した Project 内の各ファイルのコンパイル(分析・統合)を行います。 ~
注: Warning は大量に表示されますが、特に問題ありません。 ~
~
Assignments -> Pin Planner を押下し、上記変更箇所が反映されていることを確認します。~
~
#ref(quartus002.png,,60%); ~
Tools -> Programmer を押下します。~
Programmer は作成されたイメージを DE0-Nano にプログラミング(書き込む)ための機能です。 ~
またどのデバイスで書き込むかも選択します。本稿では上記で設定した USB-Blaster を選択します。 ~
~
もし No Hardware と表示されている場合、Hardware Settingsを押下し、 ~
下図のように Currently selected hardware 内の USB-Blasterを選択します。 ~
~
注:USB-Blaster の選択が表示されていない場合は再度追加した ~
udev ルールファイルを確認してください。 ~
~
完了後Programeer 内 Startを押下します。~
これで作成されたイメージを DE0-Nano に転送します。 ~
~
Progress が 100%(Successful)になることを確認し、~
その際 DE0-Nano の LED0が点滅を開始することを確認します。 ~
#ref(quartus003.png,,60%); ~
~
#ref(quickstart.JPG,,20%); ~
以上で quickstart の動作確認は完了です。~