Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

DIP Switches 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:

  • Check the configuration switches against the following table:

DIPswitch

on (left)

off (right)

S1

X

X

S2

Run

 

S3

-

PON

S4

X

X

Note

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. If

Check the configuration switches against the previous table.

Connect the host computer to the micromodule through both the SPI flying leads cable and the USB cable.

Start Xilinx ISE iMPACT and follow this procedure for the creation of .mcs file and this procedure for the Indirect ISP.

 If the "iMPACT Project" window pops up, press the "Cancel" button.

Scroll pdf title
title "iMPACT Project" window pops up

Image Added

Double click the "Boundary Scan" option in the "Modes" panel.

Scroll pdf title
titleDouble click the "Boundary Scan" option in the "Modes" panel.
Image Added

Right click the "Boundary Scan" to initialize the chain and select "Initialize Chain".

Scroll pdf title
titleRight click the "Boundary Scan" to initialize the chain and select "Initialize Chain"
Image AddedImage Added

An "Assign New Configuration File" dialog window should pop up automatically. You can now select the file corresponding to your design. In the following example, we will show how to select the micromodule reference design "blinking.bit" in the "TE0300" folder. Do not forget to select the "Enable Programming of SPI Flash Device Attached to this FPGA" option in the same window.

Scroll pdf title
titleAn "Assign New Configuration File" dialog window should pop up automatically.
Image Added

An "Add PROM File" dialog window should pop up automatically. You can now select the file corresponding to your design. In the following example, we will show how to select the micromodule reference design "blinking.mcs" in the "TE0300" folder.

Scroll pdf title
titleAn "Add PROM File" dialog window should pop up automatically.
Image Added

Select now the SPI Flash corresponding to the one present on the module (STMicroelectronics M25P32 in the example, a 32 Mbit (4M x 8) Serial Flash memory).

Scroll pdf title
titleSelect now the SPI Flash corresponding to the one present on the modul
Image Added

iMPACT should now look like this.

Scroll pdf title
titleiMPACT should now look like this
Image Added

Right click the "Flash" device and select the "Program" operation.

In the "Device Programming Properties" window, just leave the default settings and press the "OK" button.

iMPACT will first erase the SPI Flash memory 

Scroll pdf title
titleErase the SPI Flash memory
Image Added

and then write it. the bitstream in the SPI Flash memory. 

Scroll pdf title
titleWrite the bitstream in the SPI Flash memory.
Image Added

After successful programming, you should read the message "Program Succeeded" popping up for a few seconds in the "Boundary Scan" panel.

Image Added

Switch S3 back to the "FX PON" position. In case you uploaded the reference design, you should see the on-board led blinking at 0.5 Hz.
For further information about indirect (SPI over JTAG) in-system programming of SPI Flash memories, please see Xilinx Application Note XAPP974 "Indirect Programming of SPI Serial Flash PROMs with Spartan-3A FPGAs".