deep

a Cross Development Platform for Java

User Tools

Site Tools


firstexample:first_example_microzed_appdev

Application Development

This is the preferred method when writing applications on the MicroZed board using the existing runtime library together with the board support package.

While you can load and test new custom applications quickly, the configuration of the FPGA is loaded from a flash device. This saves time compared to using the method System Developer. What must be done when using this method?

Step by Step Instructions

  1. Make sure that you have a suitable boot loader in your flash device, see Boot Loader. This must be done only once as long as you don't overwrite it.
  2. Set the jumpers on your MicroZed board as follows
    .
    This will boot the device from the QSPI flash.
  3. Cycle the power. The settings of the jumpers will be read only at power-on! Hence, make sure to cycle the supply power after changing the jumper settings. A soft reset (through the JTAG or by pressing the reset button on the board will reset the board but will not sample the boot mode pins connected to the jumpers.
  4. Create a deep project and setup the project configuration as given in Hello World on the Avnet MicroZed Board. Also make sure to have OpenOCD started, see Starting OpenOCD.
  5. Do not specify a configuration for the FPGA part, as it will be loaded from flash.
    .
  6. When creating the run configuration, set the target configuration to boot from QSPI flash and load program to ram .

How Does the System Boot?

  1. reset (by JTAG)
  2. load and run first stage boot loader from flash
    1. configuration of PLL, clocks, DDR
    2. load PL
    3. handoff to JTAG
  3. halt
  4. reset REBOOT_STATUS register
  5. download of bin-files to OCM and DDR
  6. download of bit-file (if specified)
  7. start at address 0x100
firstexample/first_example_microzed_appdev.txt · Last modified: 2020/12/09 21:27 by ursgraf