[Fpga-synth] Try out spartan3e projects, questions

Magnus Danielson magnus at rubidium.dyndns.org
Sat Aug 16 13:04:56 CEST 2008


> I'm currently working on a design with two Virtex-5 330T parts and while 
> it is true the primitives may be rated at 500MHz, those primitives must 
> be connected to each other.  If you have any significant combinational 
> depth and route complexity the max clock speed will rapidly drop to a 
> few hundred MHz even with significant pipelining and floorplanning.  I'm 
> not saying it is impossible, but running a complex design at the rated 
> speed of the device is difficult.  125MHz is easy, 250MHz isn't bad, 
> 300+ starts to get hard.

Agree.

The trick to go upspeed and succseed is not attempting to fill the FPGA. 
We consider 70% as "full". Beyond that will placement become more and 
more lengthy and unpredictable, both in convergance and convergance time.

BRAMs and MULT blocks can be fully utilized most of the time, but LUTs 
is harder, they require headroom.

Fiddeling with synthesis options can be a worthwhile process. You can 
trade between area and speed. Duplicating circuits can make route and 
placement easier and thus allow higher speeds. Avoiding it means less 
area but lower speed. There are many things like that. Taking time to 
make some designs "fit" better is certainly worthwhile. That's where 
much of the engineering time goes. Small resource usage and much 
functionality. It is always rewarding when one finds that combination. 
But you have to start early in trying to make the big picture fit. Also 
trying to get all of the key aspects on the table, or the redesigns will 
take both more time and resources than a propper design. It is also 
important to have a clear view of the nitty gritty aspects so that not 
too much is hacked in later.

Cheers,
Magnus


More information about the Fpga-synth mailing list