Flashing
From time to time it may be necessary to reprogram the FPGA configuration FLASH memory on the LimeSDR XTRX board. This may be required when upgrading to a newer gateware version, or in case of corrupted FLASH memory.
It should usually be possible to program the LimeSDR XTRX board using software only, with the device connected via the PCIe interface. However, in case of corrupted FLASH memory or other issues, JTAG programming may be required.
To start with download a pre-compiled programming file (.bin). Then proceed to use the pure software programming method described below, unless it has been determined that JTAG programming is necessary.
Software Programming
This section describes how to program the FPGA configuration FLASH memory on the LimeSDR XTRX board using Lime software.
Software
The Lime Suite NG software is required for programming the FPGA configuration FLASH memory.
Programming Modes
Lime Suite NG provides three modes of FPGA flash memory writing:
FPGA/user-image. Writes an image at the user image offset in configuration flash.
FPGA/gold-image. Writes an image at the bottom of the configuration flash.
FPGA/FLASH. In gateware versions 1.13 and newer, this functions like FPGA/user-image, whereas in gateware versions 1.12 and older this functions like FPGA/gold-image.
Note
Options FPGA/user-image and FPGA/gold-image are not supported in gateware versions 1.12 and older.
Programming via the GUI
The programming options can be accessed in the limeGUI application under Modules->Programming.
Illustrations of the three modes can be found below.
To program, select the image .bin file you wish to use by pressing Open and initiate programming by pressing Program.
Figure 4: FPGA/user-image mode in GUI
Figure 5: FPGA/gold-image mode in GUI
Figure 6: FPGA/FLASH mode in GUI
Programming via the CLI
Programming can also be achived using the CLI application limeFLASH that is built alongside limeGUI.
The relevant options are (path/to/image.bin should be replaced by the actual path to your chosen .bin file):
limeFlash --device XTRX --target FPGA/user-image path/to/image.bin
limeFlash --device XTRX --target FPGA/gold-image path/to/image.bin
limeFlash --device XTRX --target FPGA/FLASH path/to/image.bin