beautypg.com

Configuration, Spartan6 – Digilent 410-182P-KIT User Manual

Page 2

background image

Nexys3 Reference Manual

Doc: 502-182

page 2 of 22

Configuration


After power-on, the Spartan-6 FPGA board must be configured (or programmed) before it can perform
any functions. The FPGA can be configured in one of four ways: a PC can use the Adept "USB Prog"
port to program the FPGA any time power is on; a configuration file stored in the non-volatile parallel
PCM device can be transferred to the FPGA at power-on using the BPI-UP port; a file stored in the
non-volatile serial (SPI) PCM device can be transferred to the FPGA using the SPI port; or a
programming file can be transferred from a USB memory stick attached to the USB HID port. An on-
board "mode" jumper (J8) selects between the programming modes as shown in the J8 Mode legend
in the figure below. JTAG Mode can be accessed at any time without changing jumpers.

M0
M1

JTAG
Port

USB

Controller

Micron SPI Quad

mode PCM (P5Q)

1x6 JTAG
Header

SPI

Port

Micro-AB USB

Connector

Adept “USB Prog” Port

Spartan6

Done

PIC24

Type A USB

Connector

Host Port

Serial
Prog. Port

2

Micron Parallel

PCM (P8P)

BPI

Port

J8

Programming

Mode

SLV Serial

SPI

BPI UP

M0 M1

6-pin JTAG

Header (J7)

Prog


Programming files are stored in SRAM-based memory cells within the FPGA. This data defines the
FPGA’s logic functions and circuit connections, and it remains valid until it is erased by removing
board power, by pressing the reset button attached to the PROG input, or by writing a new
configuration file using the JTAG port.

FPGA configuration files transferred via the JTAG port use the .bin or .svf file types, files transferred
from a USB stick use the .bit file type, and BPI or SPI programming files can use .bit, .bin, or .mcs
types. The ISE/WebPack or EDK software from Xilinx can create bit, svf, bin, or mcs files from VHDL,
Verilog, or schematic-

based source files (EDK is used for MicroBlaze™ embedded processor-based

designs). Digilent's Adept software or Xilinx's iMPACT software can be used to program the FPGA or
ROMs using the Adept USB port.

During JTAG programming, a .bit or .svf file is transferred from the PC to the FPGA using the Adept
USB port. When programming a non-volatile PCM device, a .bit, .bin, or .mcs file is transferred to the
in a two-step process. First, the FPGA is programmed with a circuit that can program PCM devices,
and then data is transferred to the PCM device via the FPGA circuit (this complexity is hidden from
the user

– a simple “program ROM” interface is presented by the programming software. Note the

PCM devices are next-generation Flash ROM devices, and they are often referred to as "Flash" or
"ROM" memory). After the PCM device has been programmed, it can automatically configure the
FPGA at a subsequent power-on or reset event as determined by the J8 jumper setting. Programming
files stored in the PCM devices will remain until they are overwritten, regardless of power-cycle
events.

The FPGA can be programmed from a memory stick attached to the USB-HID port if the stick
contains a single .bit configuration file in the root directory, the J8 Programming Mode jumper is set to