2 fpga configuration, 2fpga configuration – Digilent 410-183P-KIT User Manual

Page 4

Advertising
background image

Basys3™ FPGA Board Reference Manual

2

FPGA Configuration

After power-on, the Artix-7 FPGA must be configured (or programmed) before it can perform any functions. You
can configure the FPGA in one of three ways:

1. A PC can use the Digilent USB-JTAG circuitry (portJ4, labeled “PROG”) to program the FPGA any time the

power is on.

2. A file stored in the nonvolatile serial (SPI) flash device can be transferred to the FPGA using the SPI port.
3. A programming file can be transferred from a USB memory stick attached to the USB HID port.

Figure 3 shows the different options available for configuring the FPGA. An on-board “mode” jumper (JP1) selects
between the programming modes.

M0

M1

JTAG
Port

USB

Controller

SPI Quad mode

Flash

1x6 JTAG
Header

SPI

Port

Micro-AB USB

Connector (J4)

USB-JTAG/UART Port

Artix-7

Done

PIC24

Type A USB Host

Connector (J2)

Serial
Prog. Port

2

6-pin JTAG

Header (J5)

Prog

M2

Mode (JP1)

Programming Mode

JP1

SPI Flash

JTAG

USB

Figure 3. Basys3 configuration options.

The FPGA configuration data is stored in files called bitstreams that have the .bit file extension. The Vivado
software from Xilinx can create bitstreams from VHDL, Verilog®, or schematic-based source files.

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

An Artix-7 35T bitstream is typically 17,536,096 bits and can take a long time to transfer. The time it takes to
program the Basys3 can be decreased by compressing the bitstream before programming, and then allowing the
FPGA to decompress the bitsream itself during configuration. Depending on design complexity, compression ratios
of 10x can be achieved. Bitstream compression can be enabled within the Xilinx Tools (Vivado) to occur during
generation. For instructions on how to do this, consult the Xilinx documentation for the toolset being used.

After being successfully programmed, the FPGA will cause the "DONE" LED to illuminate. Pressing the “PROG”
button at any time will reset the configuration memory in the FPGA. After being reset, the FPGA will immediately
attempt to reprogram itself from whatever method has been selected by the programming mode jumper.

The following sections provide greater detail about programming the Basys3 using the different methods available.

Copyright Digilent, Inc. All rights reserved.

Other product and company names mentioned may be trademarks of their respective owners.

Page 4 of 19

Advertising