Free Spartan3 download program for GNU/Linux

A

Andrew Rogers

Guest
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
 
"Andrew Rogers" <andrew@_NO_SPAM_rogerstech.co.uk> wrote in message
news:411fb0f8$1_1@127.0.0.1...

[snip]
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
[snip]

I'm not sure if the links contain the information that you're after, but it
may be a start. The 18V00 family is not the same as Platform Flash, but the
general approach is similar.

Answer Record #10423
18V00 PROM's - Is the programming algorithm available?
http://support.xilinx.com/xlnx/xil_ans_display.jsp?getPagePath=10423

XAPP058: Xilinx In-System Programming Using an Embedded Microcontroller
http://direct.xilinx.com/bvdocs/appnotes/xapp058.pdf

---------------------------------
Steven K. Knapp
Applications Manager, Xilinx Inc.
General Products Division
Spartan-3/II/IIE FPGAs
http://www.xilinx.com/spartan3
---------------------------------
Spartan-3: Make it Your ASIC
 
In article <411f0666$0$306$ba620e4c@news.skynet.be>,
Sylvain Munaut <tnt_at_246tNt_dot_com@reducespam.com> 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.
Ok, so in otherwords its merely an inconvenience, not a show stopper.

Personnaly, I'm now doing all my Xilinx work under Linux.
good to hear. Up till now I was hesitant to buy the Spartan3 starter kit
(the $99 board) because I didn't want to waste my money on something that
would just sit around because I couldn't get it working under Linux. Now
I'm probably goint to order it in the next few days. Thanks for your work
on this!

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.
Isn't there a free Linux version of the WebPack that only lacks the Impact
programming tool? (maybe not, as I recall someone said that Xilinx used to
the MainWin tool to port to Linux and MainWin requires a per/seat
license).

Is there a particular version of Wine that you're running the Xilinx tools
under? Any special tweaks to know about?

Phil
 

Welcome to EDABoard.com

Sponsor

Back
Top