Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article
Public Access

Task Transition Scheduling for Data-Adaptable Systems

Published: 11 May 2017 Publication History

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.

References

[1]
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.
[2]
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.
[3]
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.
[4]
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).
[5]
B. Bhattacharya and S. Bhattacharyya. 2001. Parameterized dataflow modeling for DSP systems. IEEE Transactions on Signal Processing 49, 10, 2408--2421.
[6]
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.
[7]
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.
[8]
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.
[9]
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.
[10]
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.
[11]
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.
[12]
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.
[13]
M. Geilen. 2010. Synchronous dataflow scenarios. ACM Transactions on Embedded Computing Systems (TECS) 10, 2, Article 16, 1--31.
[14]
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.
[15]
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.
[16]
Impulse Accelerated Technologies. 2010. Impulse CoDeveloper, www.impulseaccelerated.com.
[17]
Jacqaurd Computing. 2001. ROCCC 2.0. Retrieved from http://www.jacquardcomputing.com/roccc/.
[18]
JPEG 2000. 2004. ISO/IEC IS 15444--1: JPEG 2000 Image Coding System: Core Coding System.
[19]
G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. Lopes, J. Loingtier, and J. Irwin. 1997. Aspect-Oriented Programming. Springer Berlin.
[20]
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.
[21]
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.
[22]
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.
[23]
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.
[24]
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.
[25]
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.
[26]
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.
[27]
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.
[28]
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.
[29]
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.
[30]
M. Santambrogio. 2009. From reconfigurable architecture to self-adaptive autonomic systems. In International Conference on Computational Science and Engineering. 926--931.
[31]
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
[32]
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.
[33]
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.
[34]
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.
[35]
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.
[36]
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.
[37]
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.
[38]
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.
[39]
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.
[40]
Xilinx, Inc. 2010. Fast Simplex Link (FSL). Retrieved from www.xilinx.com/products/ipcenter/FSL.htm.
[41]
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.
[42]
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.
[43]
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.

Cited By

View all
  • (2019)A case for design space exploration of context-aware adaptive embedded systemsProceedings of the International Conference on Hardware/Software Codesign and System Synthesis Companion10.1145/3349567.3351714(1-2)Online publication date: 13-Oct-2019

Index Terms

  1. Task Transition Scheduling for Data-Adaptable Systems

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Transactions on Embedded Computing Systems
    ACM Transactions on Embedded Computing Systems  Volume 16, Issue 4
    Special Issue on Secure and Fault-Tolerant Embedded Computing and Regular Papers
    November 2017
    614 pages
    ISSN:1539-9087
    EISSN:1558-3465
    DOI:10.1145/3092956
    Issue’s Table of Contents
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Journal Family

    Publication History

    Published: 11 May 2017
    Accepted: 01 January 2017
    Revised: 01 September 2016
    Received: 01 May 2014
    Published in TECS Volume 16, Issue 4

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. Data adaptability
    2. hardware/software codesign
    3. model-based design
    4. runtime transition scheduling

    Qualifiers

    • Research-article
    • Research
    • Refereed

    Funding Sources

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)78
    • Downloads (Last 6 weeks)18
    Reflects downloads up to 01 Sep 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)A case for design space exploration of context-aware adaptive embedded systemsProceedings of the International Conference on Hardware/Software Codesign and System Synthesis Companion10.1145/3349567.3351714(1-2)Online publication date: 13-Oct-2019

    View Options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Get Access

    Login options

    Full Access

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media