Hello World’ with the Vitis Unified IDE and the Zynq 7000
In this post we create and run a ‘Hello World’ program on the Zynq 7000 SoC using the Vitis Unified IDE.
Creating the Workspace
We start by launching the Vitis Unified IDE. From the Starting Page, we select the ‘Open Workspace’ option.
In the dialog window that opens, we select the folder where our Vitis Workspace and Projects will be stored. We then click the ‘Ok’ button in the bottom-right corner of the dialog window to confirm our changes.
The Vitis Inified IDE will relaunch from the folder we entered, and the Starting Page will be shown again. Now we are ready to create our Platform Component.
Creating the Platform Component
We select the ‘Create Platform Component’ option in the ‘Embedded Development’ section, which opens the ‘Create Platform Component’ dialog.
The ‘Create Platform Component’ window consists of four sections: Name and Location, Flow, OS and Processor, and Summary.
In the Name and Location section, we enter a name for our platform component and the folder where it will be stored.
In the Flow section, we’ll add a hardware design as an XSA file exported from Vivado. We can use the ‘Browse’ button to search for our custom hardware design; however, the Vitis Unified IDE includes hardware designs for several development boards, including the Zedboard, which is the one we’ll use. So in this case, we can select ‘zed’ from the drop-down menu.
In the OS and Processor section, we can specify which operating system (Linux, standalone) we’d like to use, and on which processor (MicroBlaze, ARM R, ARM A) the OS will run. We want to use a standalone OS running on the A9 with boot components, so we won’t make any changes in this section.
Finally, the Summary section shows all the settings for our Platform component on a single page. After reviewing this information, we click ‘Finish’ on the lower right corner of the ‘Create Platform Component’ window. Vitis will then start generating the Platform component.
Creating the Application Component
After the Platform component has been generated, we can create our application. We’ll use the ‘Hello World’ application from the examples included in Vitis.
After selecting the Hello World application from the examples list, the ‘Create Application Component – Hello World’ window is shown. The Create Application Component consists of four sections: Name and Location, Hardware, Domain, Sysroot (for Linux systems), and Summary.
In the Name and Location section, we enter the name of our application project and the folder where it will be stored.
In the Hardware section, we select the Platform Component that we created earlier. Since our component only supports a standalone OS, the Sysroot section disappears when we select it.
In the Domain section, we can either select the domain created by default with our Platform Component or add a new domain. Here, we select the existing domain.
Finally, the Summary section displays all the settings for our Hello World Application component on a single page. After reviewing this information, we click ‘Finish’ on the lower right corner of the ‘Create Application Component’ window. Vitis will then start generating the Application component.
Building and Debugging the Application
After the Application component has been generated, we run the Build step from the Flow section in the lower-left corner of the Vitis window. This will generate the executable files for our application.
We can start debugging by running the Debug step in the Flow section in the lower-left corner of the Vitis window. Vitis will connect to our board and launch a debug session. We can then step through the code running on the A9 processor in real time.
Cheers,
Isaac