UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 21680

Spartan-3E - Multi-boot configuration does not work when the STARTUP_SPARTAN3E schematic symbol is used

Description

When using the Multi-boot trigger (MBT) pin on the STARTUP_SPARTAN3E schematic symbol, multi-boot configuration does not work.

Solution

The STARTUP_SPARTAN3E has the MBT and the Global 3-state (GTS) swapped on the schematic symbol. This problem is visible in the FPGA Editor view, as you will see the MBT signal routed to GTS and, if used, you will see the GTS signal routed to the MBT pin on the STARTUP_SPARTAN3E block.

There are two possible ways to work around this issue:

- You can manually swap the MBT and GTS routes in the schematic. However, when the software is fixed, you will have to remember to route these signals correctly.

- Xilinx recommends instantiating the STARTUP_SPARTAN3E component in HDL, as this is only a problem with the schematic symbol. By using this method, you will not have to remember to manually fix the schematic routes when this problem is fixed in the software.

VHDL

-- STARTUP_SPARTAN3E: Startup primitive for GSR, GTS,

-- startup sequence and Multi-Boot Configuration

-- Trigger. Spartan-3E

-- Xilinx HDL Libraries Guide version 7.1i

STARTUP_SPARTAN3E_inst : STARTUP_SPARTAN3E

port map (

CLK => CLK, -- Clock input for start-up sequence

GSR => GSR_PORT, -- Global Set/Reset input (GSR can

-- not be used as a port name

GTS => GTS_PORT, -- Global 3-state input (GTS can

-- not be used as a port name)

MBT => MBT -- Multi-Boot Trigger input

);

Verilog

// STARTUP_SPARTAN3E: Startup primitive for GSR, GTS,

// startup sequence and Multi-Boot Configuration

// Trigger. Spartan-3E

// Xilinx HDL Libraries Guide version 7.1i

STARTUP_SPARTAN3E STARTUP_SPARTAN3E_inst (

.CLK(CLK), // Clock input for start-up sequence

.GSR(GSR_PORT), // Global Set/Reset input (GSR can

// not be used as a port name

.GTS(GTS_PORT), // Global 3-state input (GTS cannot

// be used as a port name)

.MBT(MBT) // Multi-Boot Trigger input

);

This problem has been fixed in 8.1i.

AR# 21680
Date Created 09/04/2007
Last Updated 12/15/2012
Status Active
Type General Article