FPGARelated.com
Forums

Free Spartan3 download program for GNU/Linux

Started by Andrew Rogers August 13, 2004
I, like others, am a little upset by the lack of a free (ISE Webpack) 
version of impact for GNU/Linux.

As discussed in an earlier thread impact will not run under wine, it 
will not access the parallel port. However it can be made to produce SVF 
files.

Using information from XAPP188 I was able to configure the Xilinx 
Spartan3 Starter Kit (the FPGA, not the Flash yet).

I am not able to compare the speed with impact, but I can tell you that 
I configured a xc3s200 in about 4.3 seconds.


http://www.rogerstech.co.uk/XC3Sprog.tar.gz

This software is at it's early stage of development and I have only 
tested it on the Xilinx Spartan3 Starter Kit. It doesn't need to run as 
root since it uses /dev/parport0. Oh, it doesn't need its own kernel 
module driver either, unlike some programs!

With ISE WebPack running on wine and now being able to configure the 
FPGA from GNU/Linux, do we have a complete tool chain for GNU/Linux that 
is free?

Regards
Andrew Rogers

Hi

Tested and working on my board (Avnet kit). A small patch was needed :

diff -urN XC3Sprog.org/devlist.txt XC3Sprog/devlist.txt
--- XC3Sprog.org/devlist.txt    2004-08-14 11:08:44.334268136 +0200
+++ XC3Sprog/devlist.txt        2004-08-14 11:09:04.034273280 +0200
@@ -1,3 +1,4 @@
 # IDCODE    IR Length  Text
 01414093       6       XC3S200
-05045093       8       XCF02S
\ No newline at end of file
+0141c093       6       XC3S400
+05045093       8       XCF02S
diff -urN XC3Sprog.org/ioparport.cpp XC3Sprog/ioparport.cpp
--- XC3Sprog.org/ioparport.cpp  2004-08-14 11:08:44.362263880 +0200
+++ XC3Sprog/ioparport.cpp      2004-08-14 11:09:21.670592152 +0200
@@ -80,7 +80,7 @@
 bool IOParport::txrx(bool tms, bool tdi)
 {
   unsigned char ret;
-  unsigned char data=0;
+  unsigned char data=0x10;
   if(tdi)data|=1; // D0 pin2
   if(tms)data|=4; // D2 pin4
   ioctl(fd, PPWDATA, &data);



Sylvain Munaut




Andrew Rogers wrote:
> I, like others, am a little upset by the lack of a free (ISE Webpack) > version of impact for GNU/Linux. > > As discussed in an earlier thread impact will not run under wine, it > will not access the parallel port. However it can be made to produce SVF > files. > > Using information from XAPP188 I was able to configure the Xilinx > Spartan3 Starter Kit (the FPGA, not the Flash yet). > > I am not able to compare the speed with impact, but I can tell you that > I configured a xc3s200 in about 4.3 seconds. > > > http://www.rogerstech.co.uk/XC3Sprog.tar.gz > > This software is at it's early stage of development and I have only > tested it on the Xilinx Spartan3 Starter Kit. It doesn't need to run as > root since it uses /dev/parport0. Oh, it doesn't need its own kernel > module driver either, unlike some programs! > > With ISE WebPack running on wine and now being able to configure the > FPGA from GNU/Linux, do we have a complete tool chain for GNU/Linux that > is free? > > Regards > Andrew Rogers >
> Using information from XAPP188 I was able to configure the Xilinx Spartan3 > Starter Kit (the FPGA, not the Flash yet).
Can you tell me if your program works also for Spartan2 FPGA's ? Regards, Martin
Already I have received a few bug reports, thanks Sylvain.

A new release, Release 0.3, can be found at

http://www.rogerstech.co.uk/XC3Sprog.tar.gz

I have included more Spartan3 devices in the device list.

Regards
Andrew

Martin Maurer wrote:
>>Using information from XAPP188 I was able to configure the Xilinx Spartan3 >>Starter Kit (the FPGA, not the Flash yet). > > > Can you tell me if your program works also for Spartan2 FPGA's ? > > Regards, > > Martin > >
I think the programming algorithm is different, but try it and let us know. I have included some XC2Sxxx definitions in the device list to make easier to try. Unfortunately I only have the Xilinx Spartan3 Starter Kit and cannot verify its operation with other devices. Donations will be appreciated! Thanks Andrew
In article <411d7665$1_1@127.0.0.1>,
Andrew Rogers  <andrew@_NO_SPAM_rogerstech.co.uk> wrote:
>I, like others, am a little upset by the lack of a free (ISE Webpack) >version of impact for GNU/Linux. > >As discussed in an earlier thread impact will not run under wine, it >will not access the parallel port. However it can be made to produce SVF >files. > >Using information from XAPP188 I was able to configure the Xilinx >Spartan3 Starter Kit (the FPGA, not the Flash yet).
Not sure what you mean by "the FPGA, not the Flash yet". Can you explain? Does this imply that we can now use the $99 board that Xilinx is selling with Linux now? What limitations are implied by "not the Flash yet"?
> >I am not able to compare the speed with impact, but I can tell you that >I configured a xc3s200 in about 4.3 seconds. > > >http://www.rogerstech.co.uk/XC3Sprog.tar.gz > >This software is at it's early stage of development and I have only >tested it on the Xilinx Spartan3 Starter Kit. It doesn't need to run as >root since it uses /dev/parport0. Oh, it doesn't need its own kernel >module driver either, unlike some programs! >
Good work! Phil
Hi

> > Not sure what you mean by "the FPGA, not the Flash yet". Can you explain? > Does this imply that we can now use the $99 board that Xilinx is selling > with Linux now? What limitations are implied by "not the Flash yet"? >
The flash is the little PROM on board, the non-volatile memory. The FPGA need to reload its config each time it's powered. It can download it's config from a little flash on the board (so that the board is autonomous) and this PROM is on the JTAG chain too, but you can't program it with this application yet. Personnaly, I'm now doing all my Xilinx work under Linux. I use wine for the WebPack. That's sometimes a little slow when "compiling" but that's OK. And this prog to program the bitstream. The only thing I can't do is program the PROM. Sylvain
Sylvain Munaut wrote:
> Hi > >> >> Not sure what you mean by "the FPGA, not the Flash yet". Can you >> explain? >> Does this imply that we can now use the $99 board that Xilinx is >> selling with Linux now? What limitations are implied by "not the >> Flash yet"? >> > > The flash is the little PROM on board, the non-volatile memory. The FPGA > need to reload its config each time it's powered. It can download it's > config from a little flash on the board (so that the board is > autonomous) and this PROM is on the JTAG chain too, but you can't > program it with this application yet. > > > Personnaly, I'm now doing all my Xilinx work under Linux. > > I use wine for the WebPack. That's sometimes a little slow when > "compiling" but that's OK. And this prog to program the bitstream. > The only thing I can't do is program the PROM. >
In due course I'll be working on programming the PROM. At the moment I'm struggling to find a datasheet on the XCF02S PROM that gives the programming algorithm. Even without the datasheet I will not give up. Can anyone tell me where I can find the programming algorithm for the XCF02S PROM? Thanks Andrew
Andrew Rogers wrote:
> Sylvain Munaut wrote: > >> Hi >> >>> >>> Not sure what you mean by "the FPGA, not the Flash yet". Can you >>> explain? >>> Does this imply that we can now use the $99 board that Xilinx is >>> selling with Linux now? What limitations are implied by "not the >>> Flash yet"? >>> >> >> The flash is the little PROM on board, the non-volatile memory. The >> FPGA need to reload its config each time it's powered. It can download >> it's config from a little flash on the board (so that the board is >> autonomous) and this PROM is on the JTAG chain too, but you can't >> program it with this application yet. >> >> >> Personnaly, I'm now doing all my Xilinx work under Linux. >> >> I use wine for the WebPack. That's sometimes a little slow when >> "compiling" but that's OK. And this prog to program the bitstream. >> The only thing I can't do is program the PROM. >> > > In due course I'll be working on programming the PROM. At the moment I'm > struggling to find a datasheet on the XCF02S PROM that gives the > programming algorithm. Even without the datasheet I will not give up. > > Can anyone tell me where I can find the programming algorithm for the > XCF02S PROM? > > Thanks > Andrew >
http://www.xilinx.com/xlnx/xweb/xil_publications_display.jsp?sGlobalNavPick=&sSecondaryNavPick=&category=-18786&iLanguageID=1 One would think that the "Complete data sheet for Platform Flash In-System Programmable Configuration PROMs" would have details on the "In-System Programmable" features. I think the marketing department has been at work here! It does give: Instruction register length. IDCODE. Instruction capture values. JTAG signals timing. It does not tell me about "In-System Programmable"! "Complete" ? Regards Andrew -- Spartan3 configuration download tool for GNU/Linux available from http://www.rogerstech.co.uk
"Andrew Rogers" <andrew@_NO_SPAM_rogerstech.co.uk> wrote in message
news:411f6623_1@127.0.0.1...
> Sylvain Munaut wrote: > In due course I'll be working on programming the PROM. At the moment I'm > struggling to find a datasheet on the XCF02S PROM that gives the > programming algorithm. Even without the datasheet I will not give up. > > Can anyone tell me where I can find the programming algorithm for the > XCF02S PROM?
I think its not published! but that doesnt mean it cant be programmed. just generated SVF and look what is done there :) Antti http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&rd=1&item=3833881729