deep

a Cross Development Platform for Java

User Tools

Site Tools


firstexample:first_example_microzed_deploy

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
firstexample:first_example_microzed_deploy [2021/12/28 15:09] ursgraffirstexample:first_example_microzed_deploy [2022/08/22 08:35] ursgraf
Line 1: Line 1:
 ====== Deploying ====== ====== Deploying ======
 <box green 100%> <box green 100%>
-As soon as you are done with your development, you can deploy it. This means to load it together with a FPGA configuration onto a SD card. Alternatively, you can program it into the on-board flash device.+As soon as you are done with your development, you can deploy it. This means loading it onto a SD card together with a FPGA configuration. Alternatively, you can program it into the on-board QSPI flash device. We strongly recommend using the SD card and reserving the QSPI flash for use with [[firstexample:first_example_microzed_appdev|Application Development]].
 </box> </box>
    
-The application together with the configuration of the FPGA is loaded upon power-up from the SD card or the flash device. What must be done using this method?+The application and configuration of the FPGA are loaded from the SD card or the flash device upon power-up. Make sure to specify a PL configuration, see 2. below.
    
 ===== Step by Step Instructions ===== ===== Step by Step Instructions =====
-  - Set the jumpers on your MicroZed board as follows \\ {{ jtagboot.png?200 |}}. \\ This will boot the device from the JTAG.  
-  - 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]].    - Create a deep project and setup the project configuration as given in [[first_example_microzed|Hello World on the Avnet MicroZed Board]]. 
-  - Choose a configuration for the FPGA part to be included into the resulting image. \\ {{ chooseplfile.png?400 |}}. \\ Available configurations can be found under [[https://wiki.bu.ost.ch/infoportal/embedded_systems/zynq7000/microzed#configuration_files|Configuration Files]].+  - Choose a configuration for the FPGA part to be included into the resulting image. \\ {{ chooseplfile.png?350 |}}. \\ Available configurations can be found under [[https://wiki.bu.ost.ch/infoportal/embedded_systems/zynq7000/microzed#configuration_files|Configuration Files]].
   - When creating the run configuration, set the target configuration to //boot from flash memory// {{ runconfigurationmicrozedflash.png?400 |}}.   - When creating the run configuration, set the target configuration to //boot from flash memory// {{ runconfigurationmicrozedflash.png?400 |}}.
-  - Running the configuration will create flash file. Its location is given by the image file setting in the configuration. It carries the name //*.ExternalFlash.mcs//. Running the configuration will try to open a connection to the target if a programmer is chosen, such as //OpenOCD//. Make sure to remove the programmer, if you have no programmer present.   +  - Running the configuration will create two flash files. Its location is given by the image file setting in the configuration. They carry the names //*.ExternalFlash.mcs// and //BOOT.bin//. Running the configuration will try to open a connection to the target if a programmer is chosen, such as //OpenOCD//. Make sure to remove the programmer, if you have no programmer present.   
-  - Switch the driver for your JTAG-HS3 adapter to //FTDI CDM//, see [[https://wiki.bu.ost.ch/infoportal/embedded_systems/jtaghs3/start]]IMPORTANT: You must close OpenOCD before switching the driver, else the //WinUSB// cannot be unloaded+  - Now, you have to choose between using a SD card or the QSPI flash. 
-  - The program to download can be found in the binaries of //Vivado// or the //Xilinx SDK//You have to either install //Vivado// or //Xilinx SDK// which doesn't require a license. As //Vivado// uses lots of disk space we strongly recommend to install //Xilinx SDK//For the installation see [[https://wiki.bu.ost.ch/infoportal/embedded_systems/zynq7000/xsdk|Installing Xilinx SDK]]. After installationopen a command shell and run the command (Change the command so that the right configuration file is loaded, see [[https://wiki.bu.ost.ch/infoportal/embedded_systems/zynq7000/microzed]]). The corresponding files can be found in your target runtime library in the directory ///rsc//. Please make sure that the paths in the following command does not include spaces! <code shell>cmd /C C:\Xilinx\SDK\2019.1\bin\program_flash -f MyProject\App.ExternalFlash.mcs -offset 0 -flash_type qspi-x4-single -fsbl M:\EUser\JCC\org.deepjava.trglib\rsc\FSBL.elf -cable type xilinx_tcf url TCP:127.0.0.1:3121 </code> Make sure that the programming was successful with the program printing <code>Flash Operation Successful</code> +  
-  - Switch the driver for the JTAG-HS3 back to //WinUSB//see [[https://wiki.bu.ost.ch/infoportal/embedded_systems/jtaghs3/start]].+==== Using the SD Card ==== 
 +  Copy the above generated file //BOOT.bin// onto a SD cardThe card must be formatted with FAT32 
 +  - Set the jumpers on your MicroZed board as follows \\ {{ sdboot.png?200 |}}\\ This will boot the device from the SD card.  
 +  - 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 settingsA 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. 
 + 
 +==== Using the QSPI Flash ==== 
 +  - Follow the steps given in [[firstexample:boot_loader#flashing_a_new_boot_loader|Flashing a new Boot Loader]]. Howeverinstead of loading the configuration file <code shell>-f \\ost.ch\dfs\bsc.sys\public-programme\deep\lib\rsc\BOOTflink2.mcs</code>you have to load your own binary image <code shell>-f MyProject\App.ExternalFlash.mcs</code>. 
 +  - 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! Hencemake sure to cycle the supply power after changing the jumper settingsA 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. 
  
 ===== How Does the System Boot? ===== ===== How Does the System Boot? =====
firstexample/first_example_microzed_deploy.txt · Last modified: 2022/11/17 15:03 by ursgraf