Abstract
Data-adaptable embedded systems operate on a variety of data streams, which requires a large degree of configurability and adaptability to support runtime changes in data stream inputs. Data-adaptable reconfigurable embedded systems, when decomposed into a series of tasks, enable a flexible runtime implementation in which a system can transition the execution of certain tasks between hardware and software while simultaneously continuing to process data during the transition. Efficient runtime scheduling of task transitions is needed to optimize system throughput and latency of the reconfiguration and transition periods. In this article, we provide an overview of a runtime framework enabling the efficient transition of tasks between software and hardware in response to changes in system inputs. We further present and analyze several runtime transition scheduling algorithms and highlight the latency and throughput tradeoffs for two data-adaptable systems. To evaluate the task transition selection algorithms, a case study was performed on an adaptable JPEG2000 implementation as well as three other synchronous dataflow systems characterized by transition latency and communication load.
- S. Amarasinghe, M. Gordon, M. Karczmarek, J. Lin, D. Maze, R. M. Rabbah, and W. Thies. 2005. Language and compiler design for streaming applications. International Journal of Parallel Programming 33, 2, 261--278. Google Scholar
Digital Library
- E. Anderson, J. Argon, W. Peck, J. Stevens, F. Baijot, E. Komp, R. Sass, and D. Andrews. 2006. Enabling a uniform programming model across the software/hardware boundary. In Symposium on Field-Programmable Custom Computing Machines (FCCM). 89--98. Google Scholar
Digital Library
- A. Bakshi, V. K. Prasanna, and A. Ledeczi. 2001. Milan: A model based integrated simulation framework for design of embedded systems. In ACM SIGPLAN Workshop on Optimization of Middleware and Distributed Systems. 82--93.Google Scholar
- P. Banerjee, G. Mittal, D. Zaretsky, and X. Tang. 2004. Binachip-fpga: A tool to map DSP software binaries and assembly programs onto FPGAs. In Embedded Signal Processing Conference (GSPx).Google Scholar
- B. Bhattacharya and S. Bhattacharyya. 2001. Parameterized dataflow modeling for DSP systems. IEEE Transactions on Signal Processing 49, 10, 2408--2421. Google Scholar
Digital Library
- K. Bruneel, W. Heirman, and D. Stroobandt, 2011. Dynamic data folding with parameterizable configurations. ACM Transactions on Design Automation of Electronic Systems (TODAES), 16, 4, Article 43, 1--29.Google Scholar
Digital Library
- B. Buyukkurt, Z. Guo, and W. A. Najjar. 2006. Impact of loop unrolling on area, throughput and clock frequency in ROCCC: C to VHDL compiler for FPGAs. In International Workshop on Applied Reconfigurable Computing. 401--412. Google Scholar
Cross Ref
- T. Cervero, A. Gómez, S. López, R. Sarmiento, J. Dondo, F. Rincón, and J. C. López. 2013. A hierarchical scheduling and management solution for dynamic reconfiguration in FPGA-based embedded systems. SPIE Microtechnologies. International Society for Optics and Photonics. 1--9.Google Scholar
- J. A. Clemente, J. Resano, and D. Mozos. 2014. An approach to manage reconfigurations and reduce area cost in hard real-time reconfigurable systems. ACM Transactions on Embedded Computing Systems (TECS) 13, 4, Article 90, 1--24.Google Scholar
Digital Library
- J. P. Diguet, Y. Eustache, and G. Gogniat. 2010. Closed-loop-based self-adaptive hardware/software-embedded systems: design methodology and smart cam case study. ACM Transactions on Embedded Computing Systems (TECS) 10, 3, Article 38, 1--28.Google Scholar
- E. Faure, A. Greiner, and D. Genius. 2006. A generic hardware/software communication mechanism for multi-processor system on chip, targeting telecommunication applications. In Conference on Reconfigurable Communication-Centric SoCs (ReCoSoC). 237--242.Google Scholar
- P. Garcia, K. Compton, M. Schulte, E. Blem, and W. Fu. 2006. An overview of reconfigurable hardware in embedded systems. EURASIP Journal on Embedded Systems, 2006, 1, 1--19. Google Scholar
Digital Library
- M. Geilen. 2010. Synchronous dataflow scenarios. ACM Transactions on Embedded Computing Systems (TECS) 10, 2, Article 16, 1--31.Google Scholar
Digital Library
- M. Gokhale, J. Stone, J. Arnold, and M. Kalinowski. 2000. Stream-oriented FPGA computing in the streams-C high level language. In Symposium on Field-Programmable Custom Computing Machines (FCCM). 49--56. Google Scholar
Cross Ref
- M. Huang, V. Narayana, H. Simmler, O. Serres, and T. El-Ghazawi. 2010. Reconfiguration and communication-aware task scheduling for high-performance reconfigurable computing. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 3, 4, Article 20, 1--25.Google Scholar
- Impulse Accelerated Technologies. 2010. Impulse CoDeveloper, www.impulseaccelerated.com.Google Scholar
- Jacqaurd Computing. 2001. ROCCC 2.0. Retrieved from http://www.jacquardcomputing.com/roccc/.Google Scholar
- JPEG 2000. 2004. ISO/IEC IS 15444--1: JPEG 2000 Image Coding System: Core Coding System.Google Scholar
- G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J. Loingtier, and J. Irwin. 1997. Aspect-Oriented Programming. Springer Berlin. Google Scholar
Cross Ref
- H. Kooti, E. Bozorgzadeh, S. Liao, and L. Bao. 2010. Transition-aware real-time task scheduling for reconfigurable embedded systems. In IEEE Design, Automation and Test in Europe (DATE). 232--237. Google Scholar
Cross Ref
- T. Marconi, Y. Lu, K. Bertels, and G. Gaydadjiev. 2010. 3D compaction: A novel blocking-aware algorithm for online hardware task scheduling and placement on 2D partially reconfigurable devices. In Reconfigurable Computing: Architectures, Tools and Applications. 194--206. Google Scholar
Digital Library
- S. Neema, J. Sztipanovits, G. Karsai, and K. Butts. 2003. Constraint-based design-space exploration and model synthesis. Embedded Software, Springer LNCS 2855/2003, 290--305.Google Scholar
- S. Neema, T. Bapty, J. Scott, and B. Eames. 2005. Signal processing platform: A tool chain for designing high performance signal processing applications. In IEEE SoutheastCon. 302--307. Google Scholar
Cross Ref
- K. Papadimitriou, A. Dollas, and S. Hauck. 2011. Performance of partial reconfiguration in FPGA systems: A survey and a cost model. ACM Transactions on Reconfigurable Technology and Systems (TRETS) 4, 4, Article 36, 1--24. Google Scholar
Digital Library
- D. Pnevmatikatos, T. Becker, A. Brokalakis, K. Bruneel, G. Gaydadjiev, W. Luk, K. Papadimitriou, I. Papaefstathiou, O. Pell, C. Pilato, et al. 2012. FASTER: Facilitating analysis and synthesis technologies for effective reconfiguration. In Euromicro Conference on Digital System Design (DSD), 234--241. Google Scholar
Digital Library
- V. Rana, M. D. Santambrogio, and D. Sciuto. 2007. Dynamic reconfigurability in embedded system design. In IEEE International Symposium on Circuits and Systems. 2734--2737. Google Scholar
Cross Ref
- J. Resano, J. Clemente, C. Gonzalez, D. Mozos, and F. Catthoor. 2008. Efficiently scheduling runtime reconfigurations. ACM Transactions on Design Automation of Electronic Systems (TODAES) 13, 4, Article 58, 1--12.Google Scholar
Digital Library
- N. Sandoval, C. Mackin, S Whitsitt, R. Lysecky, and J. Sprinkle. 2013a. System throughput optimization and runtime communication middleware supporting dynamic software-hardware task migration in data adaptable embedded systems. In IEEE Conference on Engineering of Computer Based Systems (ECBS). 59--68. Google Scholar
Digital Library
- N. Sandoval, C. Mackin, S. Whitsitt, R. Lysecky, and J. Sprinkle. 2013b. Runtime hardware/software task transition scheduling for runtime-adaptable embedded systems. International Conference on Field-Programmable Technology (FPT). 342--345. Google Scholar
Cross Ref
- M. Santambrogio. 2009. From reconfigurable architecture to self-adaptive autonomic systems. In International Conference on Computational Science and Engineering. 926--931. Google Scholar
Digital Library
- M. Santambrogio, S. Memik, V. Rana, U. Acar, and D. Sciuto. 2007. A novel SOC design methodology combining adaptive software and reconfigurable hardware. In International Conference on Computer-Aided Design (ICCAD). 303--308 Google Scholar
Cross Ref
- V. Sima and K. Bertels. 2009. Runtime decision of hardware or software execution on a heterogeneous reconfigurable platform. In International Symposium on Parallel and Distributed Processing (IPDPS). 1--6. Google Scholar
Digital Library
- F. Sironi, D. Bartolini, S. Campanoni, F. Cancare, H. Hoffmann, D. Sciuto, and M. Santambrogio. 2012. Metronome: Operating system level performance management via self-adaptive computing. In Design Automation Conference (DAC). 856--865. Google Scholar
Digital Library
- S. Stuijk, M. Geilen, and T. Basten. 2006. SDF∧3: SDF for free. In International Conference on Application of Concurrency to System Design (ACSD). 276--278. Google Scholar
Digital Library
- G. Venkataramani, W. Najjar, F. Kurdahi, N. Bagherzadeh, and W. Bohm. 2001. A compiler framework for mapping applications to a coarse-grained reconfigurable computer architecture. In Conference on Compiler, Architecture and Synthesis for Embedded Systems (CASES). 116--125. Google Scholar
Digital Library
- N. S. Voros, M. Hübner, J. Becker, M. Kühnle, F. Thomaitiv, and A. Grasset. 2013. MORPHEUS: A heterogeneous dynamically reconfigurable platform for designing highly complex embedded systems. ACM Transactions on Embedded Computing Systems (TECS) 12, 3, Article 70, 1--33. Google Scholar
Digital Library
- S. Whitsitt, J. Sprinkle, and R. Lysecky. 2012. An overseer control methodology for data adaptable embedded systems. In International Workshop on Multi-Paradigm Modeling (MPM). 1--6. Google Scholar
Digital Library
- J. Williams, N. Bergmann, and X. Xie. 2005. FIFO communication models in operating systems for reconfigurable computing. In Field-Programmable Custom Computing Machines (FCCM). 277--278. Google Scholar
Digital Library
- X. Xie, J. Williams, and N. Bergmann. 2007. Asymmetric multi-processor architecture for reconfigurable system-on-chip and operating system abstractions. In Field-Programmable Technology (FPT). 41--48. Google Scholar
Cross Ref
- Xilinx, Inc. 2010. Fast Simplex Link (FSL). Retrieved from www.xilinx.com/products/ipcenter/FSL.htm.Google Scholar
- M. Yuan, Z. Gu, X. He, X. Liu, and L. Jiang. 2010. Hardware/software partitioning and pipelined scheduling on runtime reconfigurable FPGAs. ACM Transactions on Design Automation of Electronic Systems (TODAES) 15, 2, Article 13, 1--41.Google Scholar
Digital Library
- M. Zeller and C. Prehofer. 2012. Timing constraints for runtime adaptation in real-time, networked embedded systems. In International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS). 73--82. Google Scholar
Cross Ref
- J. Zhu, I. Sander, and A. Jantsch. 2010. Pareto efficient design for reconfigurable streaming applications on CPU/FPGAs. In Design, Automation and Test in Europe (DATE). 1035--1040.Google Scholar
Index Terms
Task Transition Scheduling for Data-Adaptable Systems
Recommendations
Automated Software Generation and Hardware Coprocessor Synthesis for Data-Adaptable Reconfigurable Systems
ECBS '12: Proceedings of the 2012 IEEE 19th International Conference and Workshops on Engineering of Computer-Based SystemsWe present an overview of a data-adaptable reconfigurable embedded systems design methodology. The paper presents a novel paradigm for hardware/software code sign and reconfigurable computing driven by data-adaptability. The data-adaptable approach ...
System Throughput Optimization and Runtime Communication Middleware Supporting Dynamic Software-Hardware Task Migration in Data Adaptable Embedded Systems
ECBS '13: Proceedings of the 20th Annual IEEE International Conference and Workshops on the Engineering of Computer Based SystemsThe complexity of embedded applications has led to highly configurable algorithms and standards that support a wide range of data inputs. Design time optimization of these algorithms is not possible due to combinatorial explosion of data configurations--...
Modeling of Data Adaptable Reconfigurable Embedded Systems
ECBS '11: Proceedings of the 2011 18th IEEE International Conference and Workshops on Engineering of Computer-Based SystemsMany applications require high flexibility, high configurability and high processing speeds. The physical constraints of a highly flexible system's hardware implementation preclude a hardware solution that satisfies all configuration options. Similarly ...






Comments