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!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor anirban1988
Visitor
6,686 Views
Registered: ‎08-20-2014

DONE doesn't go high on Spartan 3AN

Jump to solution

It seems a lot of people have this problem. I tried to go through them, and I believe I have made a mistake in my hardware. I am using one of the VSEL pins as I/O but missed designing a pullup resitor on the pin. I can run

 

Erase

Program FPGA Only

Readback

Read Device Status

 

but when I try to run "Program Flash and FPGA" it fails and the FPGA doesn't load from flash. It also fails at "Verify" and "Get Device Checksum". I have added the impact log for "Program Flash and FPGA"

 

I have checked the status of the device. When I erase the device the VSEL pins go high as expected, and when I program the FPGA only the VSEL(1) pins stays low, which is connected to my I/O. So I think after the initial programming of the device the VSEL pin is not getting released for reconfiguration.

 

Also my DONE pin is externally pulled up. Is there any workaround solution that I can try, or do I have to make hardware changes?

 

iMPACT Version: 14.6

iMPACT log file Started on Thu Aug 21 01:01:42 2014

Welcome to iMPACT
iMPACT Version: 14.6
Project: C:\Xilinx Projects\MB-IndepSlot-ATWD'sclk_1channel_bRAM\\auto_project.ipf created.
// *** BATCH CMD : setMode -bs
GUI --- Auto connect to cable...
// *** BATCH CMD : setCable -port auto
INFO:iMPACT - Digilent Plugin: Plugin Version: 2.4.4
INFO:iMPACT - Digilent Plugin: no JTAG device was found.
AutoDetecting cable. Please wait.
*** WARNING ***: When port is set to auto detect mode, cable speed is set todefault 6 MHz regardless of explicit arguments supplied for setting the baudrates
PROGRESS_START - Starting Operation.
Connecting to cable (Usb Port - USB21).
Checking cable driver.
 Driver file xusb_xp2.sys found.
 Driver version: src=2301, dest=2301.
 Driver windrvr6.sys version = 10.2.1.0. WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS14:14:44, version = 1021.
 Cable PID = 0008.
 Max current requested during enumeration is 300 mA.
Type = 0x0005.
 Cable Type = 3, Revision = 0.
 Setting cable speed to 6 MHz.
Cable connection established.
Firmware version = 2401.
File version of D:/Xilinx/14.6/ISE_DS/ISE/data/xusb_xp2.hex = 2401.
Firmware hex file version = 2401.
PLD file version = 200Dh.
 PLD version = 200Dh.
PROGRESS_END - End Operation.
Elapsed time =      1 sec.
Type = 0x0005.
ESN option: 00001510436401.
Attempting to identify devices in the boundary-scan chain configuration...
INFO:iMPACT - Current time: 8/21/2014 1:01:45 AM
// *** BATCH CMD : Identify -inferir
PROGRESS_START - Starting Operation.
Identifying chain contents...'0': : Manufacturer's ID = Xilinx xc3s50an, Version : 0
INFO:iMPACT:1777 -
   Reading D:/Xilinx/14.6/ISE_DS/ISE/spartan3a/data/xc3s50an.bsd...
INFO:iMPACT:501 - '1': Added Device xc3s50an successfully.
----------------------------------------------------------------------
done.
PROGRESS_END - End Operation.
Elapsed time =      0 sec.
// *** BATCH CMD : identifyMPM
// *** BATCH CMD : assignFile -p 1 -file "C:/XilinxProjects/Firmware/firmware_top.bit"
'1': Loading file 'C:/Xilinx Projects/Firmware/firmware_top.bit' ...
done.
Found sync word in bitstream.
UserID read from the bitstream file = 0xFFFFFFFF.
INFO:iMPACT:501 - '1': Added Device xc3s50an successfully.
----------------------------------------------------------------------
INFO:iMPACT - Current time: 8/21/2014 1:01:57 AM
// *** BATCH CMD : Erase -p 1
Maximum TCK operating frequency for this device chain: 10000000.
Validating chain...
Boundary-scan chain validated successfully.
'1': SPI access core not detected. SPI access core will be downloaded to thedevice to enable operations.
INFO:iMPACT - Downloading core file   D:/Xilinx/14.6/ISE_DS/ISE/spartan3a/data/xc3s50an_spi.cor.
PROGRESS_START - Starting Operation.
'1': Downloading core...
 LCK_cycle = NoWait.
LCK cycle: NoWait
done.
'1': Reading status register contents...
INFO:iMPACT:2219 - Status register values:
INFO:iMPACT - 0011 1110 1110 1100
INFO:iMPACT:2492 - '1': Completed downloading core to device.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Start block = 0 for address 0x00000000.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - End block = 31 for address 0x0000D587.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
'1': Erasing sector protect register...
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
'1': Erasing device...
done.
'1': Erasure completed successfully.
PROGRESS_END - End Operation.
Elapsed time =      1 sec.
INFO:iMPACT - Current time: 8/21/2014 1:02:03 AM
// *** BATCH CMD : Program -p 1 -e -v
Maximum TCK operating frequency for this device chain: 10000000.
Validating chain...
Boundary-scan chain validated successfully.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Start block = 0 for address 0x00000000.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - End block = 31 for address 0x0000D587.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
PROGRESS_START - Starting Operation.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
'1': Erasing device...
done.
'1': Erasure completed successfully.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in sector 0.
INFO:iMPACT - Address 0x0000D587 is not located at the start of a sector   boundary. The whole sector will be erased.
INFO:iMPACT - Address 0x0000D587 is in sector 2.
INFO:iMPACT - Address 0x00000000 is in page 0.
INFO:iMPACT - Address 0x0000D587 is in page 207.
'1': Programming Flash...done.
'1': Programming completed successfully.
INFO:iMPACT - Address 0x00000000 is in page 0.
INFO:iMPACT - Address 0x0000D587 is in page 207.
'1': Verifying device...done.
'1': Verification completed successfully.
'1': Configuration data download to FPGA was not successful. DONE did not gohigh, please check your configuration setup and spi mode settings.
PROGRESS_END - End Operation.
Elapsed time =     88 sec.

0 Kudos
1 Solution

Accepted Solutions
Visitor anirban1988
Visitor
12,129 Views
Registered: ‎08-20-2014

Re: DONE doesn't go high on Spartan 3AN

Jump to solution

SOLVED!

 

I had an external pullup resistor on the DONE pin, which was too weak.

 

I removed the external pullup resistor and set the option in the bitgen config : DriveDone -> Yes

0 Kudos
4 Replies
Visitor anirban1988
Visitor
6,684 Views
Registered: ‎08-20-2014

Re: DONE doesn't go high on Spartan 3AN

Jump to solution

My mode pins are properly set at M[2:0] = <0:1:1>

0 Kudos
Moderator
Moderator
6,680 Views
Registered: ‎01-15-2008

Re: DONE doesn't go high on Spartan 3AN

Jump to solution

check if the following AR is applicable for your situation

http://www.xilinx.com/support/answers/59572.html

  --Krishna

0 Kudos
Highlighted
Visitor anirban1988
Visitor
6,667 Views
Registered: ‎08-20-2014

Re: DONE doesn't go high on Spartan 3AN

Jump to solution

I do have one of the newer parts but the impact tool doesn't say "SPI Device not found" so not sure if that is a solution but I will give it a go anyways. I am also updating to the 14.7 ISE. Not sure if that will help.

0 Kudos
Visitor anirban1988
Visitor
12,130 Views
Registered: ‎08-20-2014

Re: DONE doesn't go high on Spartan 3AN

Jump to solution

SOLVED!

 

I had an external pullup resistor on the DONE pin, which was too weak.

 

I removed the external pullup resistor and set the option in the bitgen config : DriveDone -> Yes

0 Kudos