|
|
#### [Home](https://es.technikum-wien.at/iplat/testwiki/wikis/home) | [<Getting Started - Basys3](https://es.technikum-wien.at/iplat/testwiki/wikis/getting-started-basys3)
|
|
|
|
|
|
***
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/home/Logos.png)
|
|
|
![](./home/Logos.png)
|
|
|
|
|
|
***
|
|
|
|
... | ... | @@ -23,13 +23,13 @@ Following pre-requisites are necessary in order to work through this tutorial: |
|
|
|
|
|
### 5.2.1.2 Download the Design files
|
|
|
|
|
|
An archive with the design files can be downloaded [here](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/designfiles/GettingStartedZybo.zip). It contains following files/folders:
|
|
|
An archive with the design files can be downloaded [here](./getting-started-zybo/designfiles/GettingStartedZybo.zip). It contains following files/folders:
|
|
|
|
|
|
+ **blink_led.xdc:** Xilinx constraints file (Used to connect the top level Ports to the desired Pins).
|
|
|
+ **main.c:** Applcation source code.
|
|
|
+ **UAS_TEchnikum_Wien_user_blink_led_1.0:** Blink LED IP Core.
|
|
|
|
|
|
Furthermore, download the [board definition files](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/designfiles/BoardFilesZybo.zip) for the Zybo development Board. Extract the archive and copy the folder **zybo** to following directory:
|
|
|
Furthermore, download the [board definition files](./getting-started-zybo/designfiles/BoardFilesZybo.zip) for the Zybo development Board. Extract the archive and copy the folder **zybo** to following directory:
|
|
|
|
|
|
**$VIVADO_ROOT_DIR$/Vivado/2015.4/data/boards/board_files**
|
|
|
|
... | ... | @@ -51,39 +51,39 @@ Click on the **Create New Project** button in the quick start menu. Click **Next |
|
|
|
|
|
Select RTL Project. Make sure that the **Do not specify sources at this time** checkbox is **selected**. Click **Next**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo1.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo1.png)
|
|
|
|
|
|
In the select box click on **Boards**. Select **Zybo** and click **Next**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo2.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo2.png)
|
|
|
|
|
|
Click **Finish** to finish the project creation process.
|
|
|
|
|
|
In the **Flow Navigator** toolbar click the **Create Block Design** button which can be found in the IP Integrator subsection.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo3.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo3.png)
|
|
|
|
|
|
Set name to **blink_led_zybo_bd** and click **OK**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo4.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo4.png)
|
|
|
|
|
|
In the Diagram of the newly created block design right click anywhere. Click **Add IP** and type in **Zynq**. Double click on **ZYNQ7 Processing System**.
|
|
|
|
|
|
Click on **Run Block Automation** on the topside of the diagram pane.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo5.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo5.png)
|
|
|
|
|
|
A window pops up. Leave the default options and click **OK**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo6.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo6.png)
|
|
|
|
|
|
Click on the **IP Settings** button on the leftside.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo7.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo7.png)
|
|
|
|
|
|
Click on the **Repository Manager** tab, then click on the plus button to add the blink led IP Core.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo8.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo8.png)
|
|
|
|
|
|
Browse to the extracted GettingStartedZybo.zip folder and click **OK**. A window pops up, click **OK**. Click **OK** to leave the **Project Settings**.
|
|
|
|
... | ... | @@ -91,46 +91,46 @@ Right click on empty space in the diagram pane. Click **Add IP** and type in **b |
|
|
|
|
|
Click on **Run ConnectionAutomation** on the topside of the diagram pane. A window pops up. Leave the default options and click **OK**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo9.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo9.png)
|
|
|
|
|
|
Double Click on **processing_system7_0** block. Click on **MIO Configurations**. Click on the button shown below to expand all peripherals. Deselect all peripherals except **UART1**. Click **OK**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo10.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo10.png)
|
|
|
|
|
|
Right click on empty space in the diagram pane. Click **Create Port**. For Port name type **leds_out**. Set the **Direction** to **Output**. Leave the **Type** as **Other**. Check the **Create vector** checkbox. Type from **3** to **0**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo11.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo11.png)
|
|
|
|
|
|
Hold the mouse over the newly created **leds_out[3:0]** port until the cursor changes to apencil. Hold the left mouse down and move the cursor to the
|
|
|
**leds_out[3:0]** port of the **blink_led_0** block until the connection is established, then let go of the left mouse.
|
|
|
|
|
|
In the design tab click on **Sources**. Right click on **Constraints** and click on **Add Sources**. Make sure that **Add or create constraints** is checked. Click **Next**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo12.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo12.png)
|
|
|
|
|
|
Click on **Add Files**. Browse to the location of the downloadand extracted GettingStartedZybo.zip file. Select **blink_led.xdc** and click **OK**. Click **Finish**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo13.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo13.png)
|
|
|
|
|
|
In the **Sources** tab right click on **blink_led_zybo_bd** and click on **Generate Output Products**. A window pops up, click on **Generate**. After completion click on **OK**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo14.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo14.png)
|
|
|
|
|
|
In the **Sources** tab right click on **blink_led_zybo_bd** and click on **Create HDL wrapper**. Leave the default option, **Let Vivado manage wrapper and auto-update**. Click **OK**.
|
|
|
|
|
|
In the **Flow Navigator** toolbar click the **Generate Bitstream** button which can be found in the Program and Debug subsection. A window pops up. Click on **Save**. Another window pops up. Click on **Yes**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo15.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo15.png)
|
|
|
|
|
|
A window should pop up once the bitstream generation finished successfully. Click on **Cancel**.
|
|
|
|
|
|
Now click on **File -> Export -> Export Hardware**. Check the **Include bitstream** checkbox and leave the **Export to:** dropdown menu at **\<Local to project\>**. Click **OK**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo16.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo16.png)
|
|
|
|
|
|
Finally, click on **File -> Launch SDK**. Leave both options at **\<Local to project\>**. Click **OK**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo17.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo17.png)
|
|
|
|
|
|
This concludes the Hardware generation process.
|
|
|
|
... | ... | @@ -138,23 +138,23 @@ This concludes the Hardware generation process. |
|
|
|
|
|
Click on **File -> New -> Application Project** to create a new project. As project name enter **blink_led**. Leave all other options at their default values. Click **Next**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo18.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo18.png)
|
|
|
|
|
|
Click on the **Empty Application** Template and click **Finish**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo19.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo19.png)
|
|
|
|
|
|
Once the project is sucessfully created right click on the **blink_led** project and click on **Import**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo20.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo20.png)
|
|
|
|
|
|
Choose **General -> File System** and click **Next**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo21.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo21.png)
|
|
|
|
|
|
Browse to the location of the downloadand and extracted GettingStartedZybo.zip file. Select **main.c** and click **Finish**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo22.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo22.png)
|
|
|
|
|
|
|
|
|
### 5.2.2.3 Board Setup
|
... | ... | @@ -163,34 +163,34 @@ Make sure that **JP14** is configured to use **USB** as power source. Furthermor |
|
|
|
|
|
Finally, switch **SW4** to the on position.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/GettingStartedZyboHW.png)
|
|
|
![](./getting-started-zybo/img/GettingStartedZyboHW.png)
|
|
|
|
|
|
|
|
|
### 5.2.2.4 Test the Application
|
|
|
|
|
|
Right click on the **blink_led** project and click on **Run as -> Run Configurations**. Double click on **Xilinx C/C++ application (GDB)**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo23.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo23.png)
|
|
|
|
|
|
Click on the **STDIO Connection** tab. Check the **Connect STDIO to Console** checkbox. Choose the appropriate **Com Port** and set the Baud Rate to **115200**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo24.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo24.png)
|
|
|
|
|
|
Click **Apply**, then click **Close**. Now Click on **Xilinx Tools -> Program FPGA**. A window pops up. Leave the default options and click **Program**.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo25.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo25.png)
|
|
|
|
|
|
After the bitstream is sucessfully donwoloaded to the FPGA the **DONE LED** (**LD10**) lights up. Now click on the **run** Button the start the application.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo26.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo26.png)
|
|
|
|
|
|
The console prompts you to enter a value between 0-15. Type 8 and hit enter. **LD3** starts to blink. Type 15 and hit enter. **LD0- LD3** start to blink. Type 0 and hit enter. The LEDs stop to blink.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo27.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo27.png)
|
|
|
|
|
|
This concludes the ZyboGetting Started tutorial.
|
|
|
|
|
|
![](https://es.technikum-wien.at/iplat/testwiki/raw/master/getting-started-zybo/img/tutorial_zybo28.png)
|
|
|
![](./getting-started-zybo/img/tutorial_zybo28.png)
|
|
|
|
|
|
***
|
|
|
|
... | ... | |