[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