Symbolic system-level design methodology for multi-mode reconfigurable systems

Modern embedded systems provide a variety of functionality as operational modes, each corresponding to a mutually exclusive phase of operation. This paper provides a system level design methodology tailored for such multi-mode systems. By incorporating knowledge about the temporal behavior, it is possible to share hardware by means of partial reconfiguration on sophisticated Field Programmable Gate Arrays (FPGAs), and thus, reduce costs and improve performance. The presented methodology is based on an exploration model, which specifies the temporal behavior of the system functionality as well as the architectural characteristics of nowadays reconfigurable technology. We develop a symbolic encoding of this system specification, which enables unified system synthesis by applying sophisticated optimization techniques to perform allocation, binding, placement of partially reconfigurable modules, and routing the on-chip communication.The presented system-level design methodology complies with the state-of-the-art synthesis tools and communication technologies for partially reconfigurable systems. We demonstrate this by experiments on test cases from the image processing domain applying state-of-the-art technology. The results give evidence of the efficiency of the methodology and show the superiority in terms of runtime and quality of the found solutions compared to existing system-level synthesis approaches.

[1]  Jürgen Teich,et al.  Placing Multimode Streaming Applications on Dynamically Partially Reconfigurable Architectures , 2012, Int. J. Reconfigurable Comput..

[2]  Jürgen Teich,et al.  Minimizing Internal Fragmentation by Fine-Grained Two-Dimensional Module Placement for Runtime Reconfiguralble Systems , 2009, 2009 17th IEEE Symposium on Field Programmable Custom Computing Machines.

[3]  Luca P. Carloni,et al.  Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis , 2012 .

[4]  Giorgio C. Buttazzo,et al.  HARD REAL-TIME COMPUTING SYSTEMS Predictable Scheduling Algorithms and Applications , 2007 .

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

[6]  Wayne Luk,et al.  Energy-Aware Optimisation for Run-Time Reconfiguration , 2010, 2010 18th IEEE Annual International Symposium on Field-Programmable Custom Computing Machines.

[7]  Henry Hoffmann,et al.  Self-Aware Adaptation in FPGA-based Systems , 2010, 2010 International Conference on Field Programmable Logic and Applications.

[8]  Martin Lukasiewycz,et al.  Designing heterogeneous ECU networks via compact architecture encoding and hybrid timing analysis , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[9]  Giorgio C. Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications (Real-Time Systems Series) , 2010 .

[10]  Jeff Mason,et al.  Invited Paper: Enhanced Architectures, Design Methodologies and CAD Tools for Dynamic Reconfiguration of Xilinx FPGAs , 2006, 2006 International Conference on Field Programmable Logic and Applications.

[11]  Rajesh K. Gupta,et al.  Leakage aware dynamic voltage scaling for real-time embedded systems , 2004, Proceedings. 41st Design Automation Conference, 2004..

[12]  Jens Teubner,et al.  FPGA: what's in it for a database? , 2009, SIGMOD Conference.

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

[14]  Martin Lukasiewycz,et al.  Opt4J: a modular framework for meta-heuristic optimization , 2011, GECCO '11.

[15]  Peter F. Patel-Schneider,et al.  DLP System Description , 1998, Description Logics.

[16]  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.

[17]  Petru Eles,et al.  Cosynthesis of energy-efficient multimode embedded systems with consideration of mode-execution probabilities , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[18]  Daniel Le Berre,et al.  The Sat4j library, release 2.2 , 2010, J. Satisf. Boolean Model. Comput..

[19]  Martin Lukasiewycz,et al.  Exploiting data-redundancy in reliability-aware networked embedded system design , 2009, CODES+ISSS '09.

[20]  Qiang Xu,et al.  Energy-efficient task allocation and scheduling for multi-mode MPSoCs under lifetime reliability constraint , 2010, 2010 Design, Automation & Test in Europe Conference & Exhibition (DATE 2010).

[21]  Jürgen Teich,et al.  System-Level Synthesis Using Evolutionary Algorithms , 1998, Des. Autom. Embed. Syst..

[22]  Martin Lukasiewycz,et al.  SAT-decoding in evolutionary algorithms for discrete constrained optimization problems , 2007, 2007 IEEE Congress on Evolutionary Computation.

[23]  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.

[24]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[25]  Michael Glaß,et al.  Improving platform-based system synthesis by satisfiability modulo theories solving , 2010, 2010 IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

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

[27]  Jürgen Teich,et al.  Symbolic design space exploration for multi-mode reconfigurable systems , 2011, 2011 Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[28]  Sachin S. Sapatnekar,et al.  Proceedings of the Asia and South Pacific Design Automation Conference, ASP-DAC , 2006 .

[29]  Ed F. Deprettere,et al.  An Approach for Quantitative Analysis of Application-Specific Dataflow Architectures , 1997, ASAP.

[30]  Marco Laumanns,et al.  Combining Convergence and Diversity in Evolutionary Multiobjective Optimization , 2002, Evolutionary Computation.

[31]  Mario Porrmann,et al.  INDRA – Integrated Design Flow for Reconfigurable Architectures , 2007 .

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

[33]  Jürgen Teich,et al.  Unifying Partitioning and Placement for SAT-Based Exploration of Heterogeneous Reconfigurable SoCs , 2011, 2011 21st International Conference on Field Programmable Logic and Applications.

[34]  John D. Davis,et al.  BLAS Comparison on FPGA, CPU and GPU , 2010, 2010 IEEE Computer Society Annual Symposium on VLSI.

[35]  Peter Barth Logic-Based 0-1 Constraint Programming , 2011 .

[36]  Petru Eles,et al.  A co-design methodology for energy-efficient multi-mode embedded systems with consideration of mode execution probabilities , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[37]  Wayne Luk,et al.  Design Optimizations for Tiled Partially Reconfigurable Systems , 2011, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[38]  Martin Lukasiewycz,et al.  Efficient symbolic multi-objective design space exploration , 2008, 2008 Asia and South Pacific Design Automation Conference.

[39]  Martin Lukasiewycz,et al.  Combined system synthesis and communication architecture exploration for MPSoCs , 2009, 2009 Design, Automation & Test in Europe Conference & Exhibition.

[40]  Karem A. Sakallah,et al.  Pueblo: A Hybrid Pseudo-Boolean SAT Solver , 2006, J. Satisf. Boolean Model. Comput..

[41]  Martin Lukasiewycz,et al.  Concurrent topology and routing optimization in automotive network integration , 2008, 2008 45th ACM/IEEE Design Automation Conference.