Loads the volatile FPGA or the non volatile EEPROM with FPGA configuration data in the form of SVF or RPD files respectively.
GxFpgaLoad (nHandle, nTarget, szFileName nMode,, pnStatus)
Name |
Type |
Comments |
nHandle |
SHORT |
Handle for a GX3700 board. |
nTarget |
SHORT |
Target can be as follows:0. GXFPGA_LOAD_TARGET_VOLATILE.1. GXFPGA_LOAD_TARGET_EEPROM. |
szFileName |
LPCSTR |
Path and file name of the file containing the FPGA configuration data. If the programming mode is Volatile, then the file will have an SVF extension. If the programming mode is EEPROM, then the file will have an .RPD extension. |
nMode |
SHORT |
The loading mode can be as follows:0. GXFPGA_LOAD_MODE_SYNC.1. GXFPGA_LOAD_MODE_ASYNC. |
pnStatus |
PSHORT |
Returned status: 0 on success, negative number on failure. |
This function can operate in synchronous mode or asynchronous mode. Synchronous mode means that the function is blocking and does not return until after the load operation has completed. The Asynchronous mode means that the function is non-blocking and returns immediately and allows the calling program to check the load status by calling GxFpgaLoadStatus.
Use the GxFpgaLoadFromEeprom function to load the volatile memory from the EEPROM. By default when the card is powered up the volatile memory will be automatically loading the configuration from the EEPROM.
Note: Loading an incorrect firmware file (i.e. loading an RPD that targets FPGA version EP3SL50F780 when you are using FPGA version EP3SL70F780) can damage the operation of the board. Always double-check which device you are targeting in Quartus before loading an SVF or RPD.
The following example loads the volatile FPGA with a Serial Vector File (SVF) in synchronous mode
GxFpgaLoad(nHandle, GXFPGA_LOAD_TARGET_VOLATILE, “C:\\MyDesign.SVF”, GXFPGA_LOAD_MODE_SYNC &nStatus);
GxFpgaLoadStatus, GxFpgaLoadStatusMessage, GxFpgaGetEepromSummary, GxFpgaLoadFromEeprom, GxFpgaGetErrorString