Zedboard (ii) Development of embedded applications using VIVADO+SDK-instance One

Source: Internet
Author: User
Tags vivado

The introduction of the hardware Platform +SDK Development application (Zedboard Bare Metal development) of the Zedboard Development Board built with Vivado

The process is as follows:

First, the operation of Vivado, the establishment of new projects

Specify a good project path, next, select RTL Project, tick "do not specify sources for this time" (no source files and pin constraints are added first)

  

Next select the corresponding Development Board, tick board, select Zedboard XXXX

   

The final interface shows the information about the new project:

  

Click Finish to complete.

Second, add the processor zynq-7000 (IP) Core

  Click on the left menu bar flow navigator->ip intergrstor->create Block Design

  

Fill in the name, choose the folder (in fact, the sources)

  

Click the Add IP plus sign in the development interface to search for the IP cores you want to add by entering keywords

  

When the IP core is selected, the system will display the IP core as a graphical interface:

  

Click Run Block Automation in the light green stripe

  

Tick apply board preset to map this IP-core-related input/output signal to the chip-specific pin and add the necessary constraints.

Click the OK button to start the automation, after completing the results such as:

  

You can change its internal configuration by double-clicking the IP Core in the diagram (the pattern turns orange).

The M_AXI_GP0 is enabled by default and can be controlled by connecting the PL section with AXI from the IP of the interface to PS. Here we temporarily do not have to the PL section, so disable it, otherwise the validation design will be error. Double-click the block to see

  

When the configuration is complete, right-click on the pattern and select "Validate design" for rule checking.

  

If there are no errors, the following prompt appears:

  

  The next step is to generate the output file and encapsulate it in HDL form

To generate the relevant synthesis, implementation, and simulation files for the modules added above, click Flow navigator->ip intergrstor->generator block Design

  

  

After the output file is generated, it is encapsulated as a top-level HDL file, the source window right-click on the core (added IP core name), select Create HDL Wrapper

  

When finished, the source window has an extra HDL file core_wrapper.v

  

At this point, we have completed an internal design of an IP core and encapsulated it into a basic HDL form (which can be called by other designs as a module), then RTL analysis, synthesis, implementation, and generation of hardware bitstream files

  Next, we will generate a bitstream file:

Left navigation bar Flow Navigator->program and debug->generate bitstream, if not previously synthesized and implemented, the system will prompt whether or not, click Yes.

  

Third, use the SDK to complete the software development

In the previous step we have completed the design of the processor hardware architecture, if the bitstream file is downloaded to the inside of the ZYNQ-7000 chip, then the chip will be a user's own custom processor, but it also lacks software programs.

In this section, we import the hardware platform information into the SDK

Open the project core and select implementation (this step is required, otherwise an error will be followed)

Then File->exprot->exprot Hardware for SDK, the hardware platform information, hardware bit files are all imported into the SDK platform and open the SDK software (open the SDK SYSTEM.HDF is)

  

Note Check the Add bitstream file

  

After the build is complete, we have completed the construction of the hardware platform, the next step is to enter the SDK for application software development.

File->launch SDK,SDK starts running.

The left column can see that the hardware platform information has been imported.

  

  The next step is to create a BSP (board-level driver package) and application Project (application)

BSP is an essential component for running programs on a hardware platform, select File->new->board Support packages in the SDK

* Bare Metal Development Select standalone

After clicking Finish, the configuration information for the newly created BSP will appear:

  

Here we have the default configuration, click OK

The next step is to build an application project and select File->new->Application project in the SDK.

  

Name and select information, click Next when you are done,

  

Choose Hello World as the project template, Finish. At this point the project browser on the left has just created the project folder, drop-down menu src found HELLOWORLD.C, double-click to edit the

  

Edit the code, click Save, and then compile.

  

View the compilation report in the console and compile successfully if no error occurs. The next step is to connect the Zedboard for board-level debugging.

Four, the board level debugging

  Once the application has been written and compiled successfully, the next step is to connect the PC and Zedboard for debugging.

First, 2 MICRO-USB connections are required, respectively connecting the J14 (UART) and J17 (JTAG), as shown in.

  

Here is a little explanation of the effect of the two interfaces of J14 and J17:

(1) J14 is a USB to UART serial port, here is used to output the card information (such as the simplest is the output "Hello world" statement, to connect this line in the SDK console display)

(2) J17 is the Usb-jtag configuration port, used to configure the card information

When the line is connected, the jump cap jp7-11 all ground (into JTAG mode) as shown in:

  

Switch on the Zedboard power supply, turn on the power switch on, and view the port via the PC's "Device Manager".

  

Be careful to identify which COM port is UART and use it later.

Back to SDK, right-click on Project Lidar->run as->run configurations

  

Double-click on Xilinx C + + application (GDB), the "project name Debug" appears, select the Right stdio Connection page

Tick "Connect STDIO xxxx", the port dropdown to select the UART corresponding COM number (for example, my is COM4), the following is the value set to 115200, click Apply and then close

  

After setting up, we can start the board level debugging, click the menu bar button to enter the run model (of course, the above you apply directly after the run is the same effect)

* If you want to step-by-step debugging, click the button to enter the debug mode.

* You may be prompted not to configure the FPGA, skip just fine.

You can view the output through the console.

At this point, a simple application is complete.

In retrospect, the entire process consists of the following stages:

1. Build the hardware platform (in Vivado)

2. Import hardware platform information (including bitstream files) into the SDK

3. Build the driver package and application engineering in the SDK

4. Connect the PC and Development Board for board-level commissioning

  

  

Zedboard (ii) Development of embedded applications using VIVADO+SDK-instance One

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.