[[labs.beatcraft.com]]~
[[DE0-Nano]]~
[[Synthesijer]]~
[[DE0-Nano/Synthesijer]]~
#Contents
* QuickStart [#abd7f553]
>
This article shows how to build a sample application, quickstart, on the environment, which has been created on the article of [[DE0-Nano/Synthesijer]]. This explains how to execute this sample program on DE0-Nano.
** synthesijer_samples/quickstart [#ua355892]
>
quickstart is a smple program, which enables to blink LED on DE0-Nano.
Build this sample program as it follows the directions, which is listed on [[the web page on Synthesijer>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
~
The next step is to create its project file with DE0-Nano System Builder. The project name is “Top,” which is identical to the quickstart of Synthesijer.~
#ref(SystemBuilder.png,,60%); ~
~
Transfer the created project to Ubuntu. Rename Top.v, which is located within the project file, to be something else.~
~
Edit Top.qsf as it is shown below. This is due to Top.qsf to match Top.vhd, which is part of built quickstart. Please copy Top.vhd to the same directory as 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;
...<Skip>
~
$ vi Top.qsf
...<Skip>
#============================================================
# 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"
~
Start up Quartus, and select Top.qpf from Open Project in the File, which is located at the menu bar.~
$ quartus
~
- Error message 1~
Click Start Complication in Processing at the menu bar.~
Start compiling the files, which are created in the project file.~
~
''Caution'': A lot of Warning will appear. But, there are no issues here. Please ignore it.~
~
>
Click Pin Planner in Assignments section. Then, make sure that all changes (editing the file and relocating files) shown above are effective.~
~
- Error message 2~
Click Programmer in Tools section at the menu bar. Programmer works as writing (programming) a created image to DE0-Nano. Programmer also selects a device for being written. In this article, USB-Blaster is selected.~
~
If the screen indicates No Hardware, click Hardware Setting and select USB-Blaster, which can be found in “Currently selected hardware.” Please look at the screen shot below for the reference.~
~
''Caution'': If the choice of USB-Blaster is not be displayed, please check the rule file of udev.~
>
As all process has been completed. Click Start, which is located in Programmer. Then, the created image is transferred to DE0-Nano.~
As progress reaches at 100% (successful), LED0 on DE0-Nano starts blinking.~
~
#ref(quartus003.png,,60%);~
~
#ref(quickstart.JPG,,20%);~
This is the end of operation check on quickstart.~
* Revision History [#j745fcc1]
>
- 2014/12/25 This article is initially uploaded~