For your convenience, a reference video is available on the TrenzElectronic's Channel at YouTube.
For further reference, please read Xilinx XAPP974: Indirect Programming of SPI Serial Flash PROMs with Spartan-3A FPGAs and this discussion (in particular for TE0630 Spartan 6 module) on the Xilinx forum.

Direct SPI configuration is supported only up to Xilinx iMPACT version 11.x. See Xilinx AR#36156.

DIP Switch Configuration

Similar to the traditional configuration memories, SPI serial Flash memories must be loaded with the configuration data. SPI serial Flash memories have a single interface for programming, but there are multiple methods to deliver the data to this interface. This section discusses the hardware setup, the PROM file generation flow and the software flow for ISP (indirect in-system programming) of a Trenz Electronic TE0300 SPI serial Flash configuration PROM through the JTAG interface of a Xilinx Spartan-3E FPGA using Xilinx iMPACT 10.1 (with other version the procedure should be almost the same).

To write the SPI Flash memory, perform the following steps:

DIPswitch

on (left)

off (right)

S1

X

X

S2

Run

 

S3

-

PON

S4

X

X

When downloading via parallel JTAG programmer to FPGA, it can happen that programming fails with Error: "'1' : Programming terminated. DONE did not go high." Try setting DIP switch S4 to JTAG-only. A bug in certain Xilinx iMPACT versions can cause this.

TE0300 Example

The following example shows the case of iMPACT 10.1.

When downloading via parallel JTAG programmer to FPGA, it can happen that programming fails with Error: "'1' : Programming terminated. DONE did not go high." Try setting DIP switch S4 to JTAG-only. A bug in certain Xilinx iMPACT versions can cause this.