deep

a Cross Development Platform for Java

User Tools

Site Tools


first_example_microzed_appdev

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Last revisionBoth sides next revision
first_example_microzed_appdev [2020/11/19 19:54] – created ursgraffirst_example_microzed_appdev [2020/12/01 14:28] – [Step by Step Instructions] ursgraf
Line 1: Line 1:
 ====== Application Development ====== ====== Application Development ======
 +<box green 100%>
 +This is the preferred method when writing applications on the MicroZed board using the existing runtime library together with the board support package.  
 +</box>
 + 
 +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 [[first_example_microzed_sysdev|System Developer]]. What must be done when using this method?
 + 
 +===== Step by Step Instructions =====
 +  - Make sure that you have a default boot loader in your flash device, see [[boot_loader]]. This must be done only once as long as you don't overwrite it. 
 +  - Set the jumpers on your MicroZed board as follows \\ {{ :qspiboot.png?200 |}}. \\ This will boot the device from the QSPI flash. 
 +  - 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.
 +  - Create a deep project and setup the project configuration as given in [[first_example_microzed|Hello World on the Avnet MicroZed Board]]. 
 +  - Do not specify a configuration for the FPGA part, as it will be loaded from flash. you must select a configuration file for the PL. \\ {{ ::choosenoplfile.png?300 |}}.
 +  - When creating the run configuration, set the target configuration to //boot from QSPI flash and load program to ram// {{ :runconfigurationmicrozedflashram.png?400 |}}.
 +
 +===== How Does the System Boot? =====
 +  - reset (by JTAG)
 +  - load and run first stage boot loader from flash
 +    - configuration of PLL, clocks, DDR by host system
 +    - load PL
 +    - handoff to JTAG
 +  - halt
 +  - reset REBOOT_STATUS register
 +  - download of bin-files to OCM and DDR
 +  - download of bit-file (if specified)
 +  - start at address 0x100