FPGARelated.com
Forums

SPROM for Spartan II

Started by Jon Elson March 8, 2005
Hello, all,

I am working on an update for a board that now uses an original 5-V Spartan
(XCS30) part.  To reduce cost, I'm looking at using the Spartan II XC2S30
part, which is less than half the price.  (I'd go with the Spartan IIE, 
but the smallest
is 50K gates, and config bitstream is about double the 2S30's 
requirement, which
negates the price advantage.)  Anyway, there are some 512KBit serial PROMs
available from some other makers that are 1/10th the cost of the Xilinx 
parts.
But, they max out at 400 Kbits/second, and the SpartanII starts 
configuring at
2.5 MBits /second in master serial mode.  I think I have come up with a very
simple circuit to divide my system clock down and sync INIT/  to it, so 
that I can
run the SpartanII in slave serial mode with a clock rate appropriate for 
the slow
SPROM.  I think I can do it in 2 74HCxx packages.  Does anyone have any 
comments
on this?  Have you done something similar?

(This particular product has no CPU onboard.  I suppose I could come up 
with a way
to configure the FPGA from a host CPU, but there are a few reasons I 
might want
to avoid that.)

Thanks,

Jon

Worth looking at Platform Flash for size and price. Usually much cheaper
than the older programming prom families.

If this is a new board then go the further stage and use Spartan-3 your
design. You will have to protect the Spartan-3 against 5V and may need 5V
level shift if you have 5V CMOS level logic but you will benefit still from
cost savings etc.  Spartan-2E will need the similar protection and level
shifting so no advantage over Spartan-3 in this respect. Spartan-2E is
generally dearer than Spartan-3.

It is also worth getting in contact with the Xilinx University Program if
you are a student or within an academic department. They can help out
various aspects FPGA selection etc.

John Adair
Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development
Board.
http://www.enterpoint.co.uk


"Jon Elson" <jmelson@artsci.wustl.edu> wrote in message
news:422E2EC2.6000401@artsci.wustl.edu...
> Hello, all, > > I am working on an update for a board that now uses an original 5-V
Spartan
> (XCS30) part. To reduce cost, I'm looking at using the Spartan II XC2S30 > part, which is less than half the price. (I'd go with the Spartan IIE, > but the smallest > is 50K gates, and config bitstream is about double the 2S30's > requirement, which > negates the price advantage.) Anyway, there are some 512KBit serial PROMs > available from some other makers that are 1/10th the cost of the Xilinx > parts. > But, they max out at 400 Kbits/second, and the SpartanII starts > configuring at > 2.5 MBits /second in master serial mode. I think I have come up with a
very
> simple circuit to divide my system clock down and sync INIT/ to it, so > that I can > run the SpartanII in slave serial mode with a clock rate appropriate for > the slow > SPROM. I think I can do it in 2 74HCxx packages. Does anyone have any > comments > on this? Have you done something similar? > > (This particular product has no CPU onboard. I suppose I could come up > with a way > to configure the FPGA from a host CPU, but there are a few reasons I > might want > to avoid that.) > > Thanks, > > Jon >
Jon Elson wrote:
> Hello, all, > > I am working on an update for a board that now uses an original 5-V
Spartan
> (XCS30) part. To reduce cost, I'm looking at using the Spartan II
XC2S30
> part, which is less than half the price. (I'd go with the Spartan
IIE,
> but the smallest > is 50K gates, and config bitstream is about double the 2S30's > requirement, which > negates the price advantage.)
Be sure your design fits in the part you are choosing, first. Note that the XCS30 has a lot more CLB's than the XC2S30. The "30" K-gate number in the Spartan II comes partially from the block RAM you didn't have in the older part. Look at PlatformFlash (1 Mbit minimum size at about $3 in quantity). If you go this way the Spartan IIE looks better unless you have 5V interfacing issues. Using a cheaper PROM loses its advantage if you need to add a CPLD to interface it. Also the PlatformFlash is easy to program in system using iMPACT.
> Anyway, there are some 512KBit serial PROMs > available from some other makers that are 1/10th the cost of the
Xilinx
> parts. > But, they max out at 400 Kbits/second, and the SpartanII starts > configuring at > 2.5 MBits /second in master serial mode. I think I have come up with
a very
> simple circuit to divide my system clock down and sync INIT/ to it,
so
> that I can > run the SpartanII in slave serial mode with a clock rate appropriate
for
> the slow > SPROM. I think I can do it in 2 74HCxx packages. Does anyone have
any
> comments > on this? Have you done something similar? >
Before the PlatformFlash came along I used Atmel Dataflash parts for large bitstreams (16Mbits +), but in that case I had a tiny micro to help with the job. For something like a 2-wire serial EEPROM (24C512) you could add a PIC micro for under $1 and get the job done if you're not too worried about the total configuration time.
> (This particular product has no CPU onboard. I suppose I could come
up
> with a way > to configure the FPGA from a host CPU, but there are a few reasons I > might want > to avoid that.) > > Thanks, > > Jon

John Adair wrote:

>Worth looking at Platform Flash for size and price. Usually much cheaper >than the older programming prom families. > >If this is a new board then go the further stage and use Spartan-3 your >design. You will have to protect the Spartan-3 against 5V and may need 5V >level shift if you have 5V CMOS level logic but you will benefit still from >cost savings etc. Spartan-2E will need the similar protection and level >shifting so no advantage over Spartan-3 in this respect. Spartan-2E is >generally dearer than Spartan-3. > >
Spartan-3 only comes in even bigger sizes than Spartan-IIe! The SPROM kills the cost advantage. I'm loading my XCS30 FPGA from a 256 KBit SPROM. I have to go to a 512 KBit SPROM to use the XC2S30, but the smallest Spartan-IIe part is the XC2S50xxE, which bumps you up to 1 MegaBit.
>It is also worth getting in contact with the Xilinx University Program if >you are a student or within an academic department. They can help out >various aspects FPGA selection etc. > >
Nope, not a university project. This email is my "day job", the project in question is for my own business. Anyway, the design fits just fine in the XCS30 chip, so I don't want to be forced into a larger array needing more config bits. Thanks, Jon

Gabor wrote:

>Be sure your design fits in the part you are choosing, first. Note >that >the XCS30 has a lot more CLB's than the XC2S30. The "30" K-gate number >in the Spartan II comes partially from the block RAM you didn't have >in the older part. >
Yikes! I didn't realize this! Thanks for bringing it to my attention!
> >Look at PlatformFlash (1 Mbit minimum size at about $3 in quantity). >
Does this emulate a serial PROM? Or, do I need address counters and shift registers to make a serial stream? (I guess if it is byte-wide, I could use the parallel configure mode.)
>If you >go this way the Spartan IIE looks better unless you have 5V interfacing >issues. >
Everything external is 5V. But, I can buy a lot of level translators for the $15+ difference between 5V Spartan and Spartan-II.
> Using a cheaper PROM loses its advantage if you need to add a >CPLD to interface it. >
Clearly. And, another part to program, too! But, if I can do the interface with only 2 74HC-type chips, that is not too bad.
> Also the PlatformFlash is easy to program in >system >using iMPACT. > > > >Before the PlatformFlash came along I used Atmel Dataflash parts for >large bitstreams (16Mbits +), but in that case I had a tiny micro >to help with the job. For something like a 2-wire serial EEPROM >(24C512) you could add a PIC micro for under $1 and get the job >done if you're not too worried about the total configuration time. > >
Well, as I said, I think I've figured out a way to use slave serial mode to do a slightly slower config with only 2 74HC chips. Nothing to program but the PROM, and it can go as fast as the PROM can spit it out (400 KHz). But, I'll look into this PlatformFlash. Thanks, Jon
But are you using a dedicated SPROM?  The Spartan-3E is designed explicitly
to gluelessly take advantage of cheap SPI memories allowing a very low
configuration cost even if it takes more configuration bits.  Lower than the
other solutions you appear to be considering.  If you were making 500k units
in the end of 2006, your price for the XC3S100E plus an SPI PROM would be
about $2.50.

"Jon Elson" <jmelson@artsci.wustl.edu> wrote in message
news:4230D706.8030007@artsci.wustl.edu...
<snip>
> Spartan-3 only comes in even bigger sizes than Spartan-IIe! The SPROM
kills
> the cost advantage. I'm loading my XCS30 FPGA from a 256 KBit SPROM. > I have to go to a 512 KBit SPROM to use the XC2S30, but the smallest > Spartan-IIe part is the XC2S50xxE, which bumps you up to 1 MegaBit.
<snip>
> I don't want to be forced into a larger array needing more config bits. > > Thanks, > > Jon

John_H wrote:

>But are you using a dedicated SPROM? The Spartan-3E is designed explicitly >to gluelessly take advantage of cheap SPI memories allowing a very low >configuration cost even if it takes more configuration bits. Lower than the >other solutions you appear to be considering. If you were making 500k units >in the end of 2006, your price for the XC3S100E plus an SPI PROM would be >about $2.50. > >
This particular product has no CPU on the board, and no other FPGA. So, the PROM is dedicated just for this one purpose. As it turns out, the Spartan-II XC2S30 is not big enough (A big thanks to Gabor for pointing this out - it never even ocurred to me that a Spartan-II 30K gates had no relation to a 5 V Spartan 30 K gates.) So, the smallest XC2S50E is about the right size. This product will NEVER, ever see thousands of units made, no less half a million! And, if I do the conversion, I'd need to be testing in a couple of weeks. By 2006, it might be obsolete. Thanks for the info, though. Jon