Placing Streaming Applications with Similarities on Dynamically Partially Reconfigurable Architectures

By means of partial reconfiguration, parts of the hardware can be dynamically exchanged during operation what allows to adapt the system to changing requirements, and even enables the implementation of self-managing systems. This however requires sophisticated system architectures as well as proper algorithmic runtime support. In this paper, we present an algorithm for placing streaming applications at runtime. The approach considers the heterogeneity of common FPGAs, such as Block-RAMs, as well as the routing restrictions of on-chip streaming interconnections. To reduce reconfiguration time, we extend the data flow graphs by OR-nodes to describe differing parts of applications while keeping their similarities. This allows us to model systems which only reconfigure differing parts when switching between applications. The proposed algorithm is implemented as runtime support on an FPGA-based system-on-chip.

[1]  Jürgen Teich,et al.  DyNoC: A dynamic infrastructure for communication in dynamically reconfugurable devices , 2005, International Conference on Field Programmable Logic and Applications, 2005..

[2]  Jürgen Teich,et al.  ReCoBus-Builder — A novel tool and technique to build statically and dynamically reconfigurable systems for FPGAS , 2008, 2008 International Conference on Field Programmable Logic and Applications.

[3]  Georgi Gaydadjiev,et al.  An efficient algorithm for free resources management on the FPGA , 2008, 2008 Design, Automation and Test in Europe.

[4]  Christian Haubelt,et al.  Efficient Reconfigurable On-Chip Buses for FPGAs , 2008, 2008 16th International Symposium on Field-Programmable Custom Computing Machines.

[5]  Hartmut Schmeck,et al.  RMB-a reconfigurable multiple bus network , 1996, Proceedings. Second International Symposium on High-Performance Computer Architecture.

[6]  Jürgen Teich,et al.  A Bus-Based SoC Architecture for Flexible Module Placement on Reconfigurable FPGAs , 2010, 2010 International Conference on Field Programmable Logic and Applications.

[7]  Chia-Chun Tsai,et al.  Adaptive Free Space Management of Online Placement for Reconfigurable Systems , 2010 .

[8]  Majid Sarrafzadeh,et al.  Fast Template Placement for Reconfigurable Computing Systems , 2000, IEEE Des. Test Comput..

[9]  Haibo Wang,et al.  A novel approach to minimizing reconfiguration cost for LUT-based FPGAs , 2005, 18th International Conference on VLSI Design held jointly with 4th International Conference on Embedded Systems Design.

[10]  Wayne Luk,et al.  Automating production of run-time reconfigurable designs , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[11]  Jürgen Teich,et al.  Self-organizing Computer Vision for Robust Object Tracking in Smart Cameras , 2010, ATC.

[12]  Oliver Diessel,et al.  On the placement and granularity of FPGA configurations , 2004, Proceedings. 2004 IEEE International Conference on Field- Programmable Technology (IEEE Cat. No.04EX921).

[13]  Mario Porrmann,et al.  Design of Homogeneous Communication Infrastructures for Partially Reconfigurable FPGAs , 2007, ERSA.

[14]  Markus Rullmann,et al.  Design Methods and Tools for Improved Partial Dynamic Reconfiguration , 2010, Dynamically Reconfigurable Systems.

[15]  Jürgen Teich,et al.  A communication architecture for complex runtime reconfigurable systems and its implementation on spartan-3 FPGAs , 2009, FPGA '09.