[Fpga-synth] Modular approach

Rainer Buchty rainer at buchty.net
Sat Jan 24 15:14:24 CET 2009


On Fri, 23 Jan 2009, Eric Brombaugh wrote:

> Sounds like a useful and interesting concept. I agree that figuring 
> out how to implement this in an FPGA will be a challenge without 
> requiring resynthesis of the FPGA design.

That definitely is possible, assuming that you can manage to fit the 
modules into chunks of equal size.

The Virtex parts support partial-dynamic reconfiguration, and using a 
"read-modifiy-write" approach you can do the same with Spartans.

There's one institute at the Univ. Karlsruhe which is concentrating on 
these things and developed concepts on how to do this partial-dynamic 
reconfiguration from within, requiring as little control as saying "put 
this over there".

Have a look at

 	http://itec.uka.de/~buchty/fpga-synth/recosoc_08_organic_conf.pdf

which also references this one

 	http://itec.uka.de/~buchty/fpga-synth/artNoC_FPL_07.pdf

> * Reconfiguration with macros. This would use recently introduced 
> run-time reconfiguration features of modern FPGAs and 
> relationally-place and/or hard macro to pre-allocate chunks of logic 
> into the FPGA and drop them in place real-time. Difficulty here is 
> that this is using new/untested features of the technologies and would 
> need some fairly complex FPGA configuration software.

Partial-dynamic reconfiguration seems to work well these days, the 
problem is still in generating the modules if you don't wanna do 
individual synthesis runs where you constrain each module to one 
distinct spot.

AFAIK, the cited chair still uses some homebrew software where you mark 
desired areas in the FPGA floorplan (requiring the PlanAhead software) 
and where the marked area then gets cut out of the main bitstream and 
stored as a module.

This one

 	XAPP290 - Difference-based Partial Reconfiguration

is probably the grandfather of all. And I remember that with ISE6.1 this 
was a major PITA.

I need to ask my colleague again, this week he told me that they sneaked 
in some App note showing a reconfigurable filter so that you e.g. can 
replace a band pass by a low pass filter by partial reconfiguration. 
However, I was unable to find it in the App notes right now.

Rainer



More information about the Fpga-synth mailing list