Preparing to use XJFlash

Before configuring XJFlash the flash device must be categorised in the Categorise Devices screen using the installed XJEase device library. This will add the top level .xje file.

To begin configuring XJFlash open the device .xje file in the Test Device Files screen:

Additional code files now need to be added in the following order:

  • First, add XJFlash.xjmodule
  • Next, add the XJFlash<flash type>.xje file for your type of flash.

XJFlash supports the following types of NOR flash:

  • SPI - XJFlashNorSpi.xje
  • AMD - XJFlashNorAmd.xje
  • Strata - XJFlashNorStrata.xje
  • EPCQx - XJFlashNorEPCQx.xje
  • XCF128x - XJFlashNorXCF128x.xje
  • NAND flash - please contact XJTAG support to obtain XJFlashNand.xje

N.B. At present the XJEase library does not support the .xjmodule file format required for XJFlash so you will be provided with the required files by XJTAG support. Please contact us via the XJTAG website if you do not have these files and we will provide them.

Adding the above modules will cause the additional code files for the top level flash to look like this, (shown for the case of NOR SPI flash):

For SoCs like Zynq devices the additional code files list may be more complex:

Other devices may require a different set of files. The ordering of files in this list is also important - please follow any instructions provided by XJTAG alongside the files we supply.

You now need to add some definitions to the top level device file, which can be copied from the XJFlash<flash type>.xje file which matches your type of flash. In this example using NOR SPI flash, the code should be copied from XJFlashNorSpi.xje, as shown:

Note that some of the constants may need to be updated to match the configuration of your circuit.

Once the files and constants have been added, add the XJFlash functions to your test list on the XJRunner Setup screen. They will be listed under your flash device.

Add XJFlashSetup, XJFlashCreateFPGAImage and XJFlashSelectProgrammingFiles to a Configuration test, and add XJFlashRun to a Programming test (in order as shown):

The configuration functions are:

The programmer: