GxFpgaLoad

Purpose

Loads the volatile FPGA or the non volatile EEPROM with FPGA configuration data in the form of SVF or RPD files respectively.

Syntax

GxFpgaLoad (nHandle, nTarget, szFileName nMode,, pnStatus)

Parameters

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.

Comments

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.

Example

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);

 

See Also

GxFpgaLoadStatus, GxFpgaLoadStatusMessage, GxFpgaGetEepromSummary, GxFpgaLoadFromEeprom, GxFpgaGetErrorString