Specialized Virtual Configurable Arrays Dominique Lavenier - Frederic Raimbault IRISA Rennes, France UBS Vannes, France
SVCA Specialized Virtual Configurable Arrays Warning –Just ideas - no work (yet) performed The talk mainly aims to –get feedback - positive or negative ! –open discussion / collaborations ?
Overview Introduction –exemplified from F. Raimbault talk Virtual Configurable Arrays –implementation - Advantages / Disadvantages Specialized Virtual Configurable Arrays –2 examples : Genome / hyperspectral images Conclusion
FPGA support for Java PC Hardware JAVA machine network hardware support: any reconfigurable boards Boards are different architecture FPGA family power computation We want to define a hardware support independent of the FPGA boards allowing fast implementation
Architecture PE CTRL Application dependant Nb of PEs PE functionality
Java Hardware Support We want an hardware support with the following features: –platform independent all FPGA boards can be targeted –fast implementation depending on the application and the available resources, an architecture must be synthesize in a very short time
Challenge The hardware support must provide: –A platform independent hardware –A fast design implementation Virtual Configurable Array Specialization
Virtual Configurable Array Introduction Fixe implementation (Application independent) Application dependent implementation Virtual Configurable Array
Virtual Configurable Array Implementation (1) Virtual CLBs –one virtual CLB is made of several physical CLBs
Virtual Configurable Array Implementation (2) Routing –physical CLBs are used as switches
Virtual Configurable Arrays Advantages –applications are portables –common design tools - open architecture Disadvantages –less resources / lower speed (how much ?) –no concept evolution still the same problems for programming, routing,...
Virtual Configurable Arrays Platform independent Fast implementation YES NO
Specialized Virtual Configurable Arrays Introduction Specialization of Virtual Configurable Arrays CLB functionality CLB interconnection
2 Examples Genome Computation Hyperspectral image processing
Genome Computation Data –DNA or Protein sequences –large databases Computation –data retrieval, classification,... –mostly based on sequence comparison –time consuming but highly parallel
Genome Computation Needs: –high computation power –rapid test of new algorithms Features: –integer arithmetic 8,12,16 bits - no multiplication –efficient parallelization on linear arrays
Specialized Virtual Configurable Array for Genome Computation CLB: N-bit operators Regular Routing N-bit wires
VCLB VCLB i CM n-bit operator (32 operations) 5 bits7 bits from i+3 from i+2 from i+1 to i+3 to i+2 to i+1 to i-1 to i-2 to i-3 from i-1 from i-2 from i-3 routing switch configuration memories
Hyperspectral images processing Data –3D cube –one image = qq 100 Mbytes Computation –compression, segmentation, … –very time consuming, but high level of parallelsim A few hundred spectrum
HyperSpectral Image Processing Needs: –high computation power –rapid test of new algorithms Features: –integer arithmetic –efficient parallelization on 2D arrays
Specialized Virtual Configurable Array for Hyperspectral Image Processing Memory VCLB Routing
Specialized Virtual Configurable Array Conclusion SVCA FPGA Architecture
Specialized Virtual Configurable Arrays Conclusion One SVCA class of algorithms Advantages –platform independent - fast programming Disadvantages –small array - slow