01-14-2012 09:05 AM - edited 01-14-2012 09:06 AM
I am trying to communicate with my new Spartan-3E from an Arch Linux system. However this seems more problematic than I thought.
First when I installed the ISE WebPACK(newest version 13.3) it came up with a message that it failed to install drivers. Impact just closed without any message when I tried to do something in it...
In an attempt to get this working, researching on the net etc.. I've installed libusb, fxload and other libs several times I think. Was trying Xup too but couldn't finish the installation with the message "no xilinx usb device found!" which I can recall some other program was complaining about too.
When I do lsusb one of the entries looks like this:
# Bus 004 Device 006: ID 03fd:0008 Xilinx, Inc.
Now i'm getting desperate, I want to get started with my new FPGA, is there anyone who has successfully worked their way around this?
Thanks in advance, appreciate all help I can get!
01-14-2012 04:41 PM
01-14-2012 05:59 PM
The supported distrobutions not free. Impact is the only thing not working, I'd gladly use a third party JTAG tool, however these doesn't seem to recognize the Xilinx device either. -- Guess I'm on my own then :-/
Anyways thanks for response, appreciated.
01-14-2012 06:07 PM
CentOS is based on RHEL and free, and will probably work (but I think you'd have to use CentOS 5, not 6)
Sorry, by third party JTAG tool I meant a third party hardware and software combination. There are a few very cheap options, such as NeroJTAG with the AVR Minimus (less than $10), or you could use an FX2LP development board (less than $20 on eBay), or an FTDI breakout (about $20). Note that these all may be a bit fiddlier than the Xilinx device (assuming you can get it working on your system), and you lose the ability to use ChipScope Pro, EDK debugging facilities, and a few other things.
Exactly which development board are you using?
01-14-2012 06:13 PM - edited 01-14-2012 06:16 PM
I've got this one:
If there's a good chance that CentOS works(?), I would without any doubt install it on one of my PC's right away.
01-14-2012 06:17 PM
Yeah, CentOS would be worth a try.. though there are still some threads where people have had problems with it, too (e.g. http://forums.xilinx.com/t5/Installation-and-Licensing/How-to-install-Xilinx-ISE-and-USB-drivers-CentOS-5/td-p/54250 ).
Still, this might be less frustrating than getting it working on your current system! :)
01-15-2012 02:27 PM
Well, no luck with CentOS 5.7, not with the third party tool either I was trying out either, required SDCC which is only made for CentOS 6.
I'm suprised how hard it is to communicate with my brand new Xilinx device. I'm almost about to throw it out the window.
01-15-2012 04:57 PM
Bad luck! It's not really clear from the site if CentOS 5.7 is exactly the same as RHEL Desktop 5. At least there are some threads about people's experiences with CentOS on here that might be of use to use. I must admit that I just use Windows 7 in a virtual machine and it works just fine. Linux is great, but sometimes you just want to stop messing around and get some work done.
01-22-2012 07:26 PM - edited 01-22-2012 07:31 PM
Brand new W7 64bit install on my computer. Installed ISE WebPACK everything went fine, followed the instructions in the kit's manual.
I've got a design ready, kit is on and JTAG/USB LED is green, I Open iMPACT and get this thrown at me:
GUI --- Auto connect to cable... INFO:iMPACT - Digilent Plugin: no JTAG device was found. AutoDetecting cable. Please wait. PROGRESS_START - Starting Operation. Connecting to cable (Usb Port - USB21). Checking cable driver. Driver file xusb_emb.sys found. Driver version: src=1029, dest=1029. Driver windrvr6.sys version = 10.2.1.0. WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021. Cable PID = 0008. Max current requested during enumeration is 74 mA. Type = 0x0004. Cable Type = 3, Revision = 0. Setting cable speed to 6 MHz. write cmdbuffer failed 20000015. Error reading reference voltage level. Cable connection failed. Connecting to cable (Parallel Port - LPT1). Checking cable driver. Driver windrvr6.sys version = 10.2.1.0. WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021. Cable connection failed. Connecting to cable (Parallel Port - LPT2). Checking cable driver. Driver windrvr6.sys version = 10.2.1.0. WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021. Cable connection failed. Connecting to cable (Parallel Port - LPT3). Checking cable driver. Driver windrvr6.sys version = 10.2.1.0. WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021. Cable connection failed. Connecting to cable (Parallel Port - LPT4). Checking cable driver. Driver windrvr6.sys version = 10.2.1.0. WinDriver v10.21 Jungo (c) 1997 - 2010 Build Date: Aug 31 2010 x86_64 64bit SYS 14:14:44, version = 1021. Cable connection failed. PROGRESS_END - End Operation. Elapsed time = 5 sec. Cable autodetection failed. WARNING:iMPACT:923 - Can not find cable, check cable setup !
... and now I'm tired.
Edit: I installed ISE WebPACK 13.4
01-22-2012 07:31 PM
01-26-2012 11:50 AM
So I'm back on linux, Windows 7 didn't work any better, and no help to get. Think my chanses to get it work there were even smaller than in Arch Linux, neither would it work in CentOS(as mentioned earlier in this post). I kind of doubt my linux distro is the problem here.
It's been two weeks since I got this dev board, I've spent too much time trying to get it work already, I can't believe why I still bother.
Anyways here I am trying again. This is where my iMPACT stops:
AutoDetecting cable. Please wait.
PROGRESS_START - Starting Operation.
Connecting to cable (Usb Port - USB21).
Checking cable driver.
File version of /opt/Xilinx/13.4/ISE_DS/ISE/bin/lin64/xusbdfwu.hex = 1030.
File version of /etc/hotplug/usb/xusbdfwu.fw/xusbdfwu.hex = 1030.
Kernel release = 3.2.1-2-ARCH.
Max current requested during enumeration is 74 mA.
Type = 0x0004.
Cable Type = 3, Revision = 0.
Setting cable speed to 6 MHz.
write cmdbuffer failed 20000020.
Error reading reference voltage level.
Cable connection failed.
Using the solution at http://www.rmdir.de/~michael/xilinx/ (libusb + fxload). As you can see further up I got something pretty similar in Windows too.
Another thing is, after some minor tweaking in xc3sprog/xup I got it to detect the chain (XC3S500E, XCF04S, XC2C64A), however when I tried to program the XC3S500E with different Xilinx reference designs, it didn't act like supposed to; all LEDs got turned on (including the finished programming orange LED).
The design preloaded into XCF04S seems to work all fine.
Yes I'm trying to program it with J30 in JTAG mode.
01-26-2012 05:18 PM
You don't need to set J30 for JTAG - JTAG will work in all modes. The JTAG mode just disables configuration from any other source.
Bit of a long shot - do you have J8 connected? (it should not be)
Even longer shot - you could see if there is a voltage on the J12 JTAG port VCC pin. If your board is damaged and this power rail is wrong, then maybe checking this will help. Possibly not, if the board works fine with the self-test. You could probe it at the JTAG programmer circuitry if you can work out where it is (I don't have the board, and it doesn't seem to be on the schematic).
Another option might be to use a Xilinx Platform Cable USB II or clone - not a bad investment if you're planning to do more Xilinx FPGA development in the future (hopefully this experience hasn't turned you off!)
Also, try it on another computer in case you've been doing all of this on the same one and there's some bizarre incompatibility with your USB ports.
01-26-2012 05:41 PM
J8 is not connected. and J12 isn't touched yet, brand new board.
I've been trying this on 2 computers all the way.
I really believe the problem here is bad software.
thanks for help though joelby :-) not anyone else who bothers wherever I try..
01-26-2012 05:58 PM
No worries at all!
Have you got a voltmeter that you can test J12-VCC with? If you bought the development board from a distributor, can you get them to check it/swap it if it's bad?
Another cheap-ish option if you've got a good collection of electronics components lying around and a suitably equipped computer is building a parallel port programmer (or buy one from Sparkfun for $10) but I'd probably just buy a USB one for about $50.
01-26-2012 06:18 PM - edited 01-26-2012 06:20 PM
Heh, I don't have that kind of stuff.
I don't know, I ordered the board from Digilent.
I just know I want to get started soon, if those are my only opportunities and I can't program it with this cable, what solution is most likely going to work? I'm mostly concerned about costs in terms of time; If the best solution is to buy a new Altera board for 200$ well, I wouldn't doubt.
Also, shipping anything to Northern Norway, is most likely going to take 2 weeks. (there's really no market here for such, and only the fewer people have heard of it.)
I also know I'm not the first one with this error message from iMPACT, but couldn't find out how anyone else worked around this problem though.
Could it be worth trying to install earlier versions of ISE WebPack on Linux? Tried this on Windows too but there were some compability problems; Only the newer versions works on W7 64bit.
01-26-2012 06:26 PM
It might be worth a try - or you could try something like 12.4 on Windows XP (or even 32-bit Windows 7, which I don't think is supported but works fine for me).
I use a Platform Cable USB clone and it's never failed me (except that it's cheaply built and fell apart after I disassembled it, but I've sticky-taped it back together) - but the built-in programming circuit on your board should be equally up to the task and well-supported. If no-one else here who knows more about the board is chiming in, you could try contacting Digilent support.
01-27-2012 06:12 PM - edited 01-27-2012 06:15 PM
I tried 12.4 on linux, still no luck (writing cmdbuffer 20000020 fails).
I'm considering Windows XP with some older version of ISE WebPack, it's just that I already tried one OS(W7) which was suppose work and be supported without any luck. It takes a whole day to reinstall OS find out it doesn't work and reinstall again. If someone who knew could tell me exactly which environment, ISE WebPack version etc they got it working under, it would of course be easier...
Regarding the cables I don't know how much more effort I'll put into this device... I could easily get that parallel port cable but I don't have parallel port on any of my computers. Would it make such a big difference to get a Platform Cable USB instead? If someone could tell me that this would solve my problem, sure I'd do that too.
01-27-2012 08:31 PM
I personally use 12.4 on Windows 7 32-bit and it works fine, though it's not a supported configuration, and I don't have the same development board as you so I can't say with any certainty that it will work (or that your board is not damaged).
Windows XP (32-bit) and 12.4 is a supported configuration, and probably a safe bet.
I've had no trouble with the Platform Cable USB but if the problem is with your development board's JTAG interface, it probably won't make any difference. You could try borrowing an identical, known-good board from someone else, but this may be impossible if you don't work at a university that has one, or know someone with one, etc.
Did you try testing the voltage rails on the board?
01-29-2012 03:55 PM
Just for the record: ISE WebPack 10.1 on Windows XP 32bit works perfectly fine without any tweaking.
To Joebly: Thanks for all the help, I really appreciated it, I would probably give up days ago if you didn't help.
To Xilinx: Wow...
01-29-2012 03:59 PM
Hey awesome - I'm glad you finally got it working!
I believe that you can safely install multiple versions of ISE in parallel (though the newer ones might want to install newer, less functional cable drivers - maybe there's an option not to install drivers), so you could probably use ISE 13 and still program the board using iMPACT 10. ISE 13 is probably not a big deal for Spartan-3E devices though.