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

Multitasking on reconfigurable architectures: microarchitecture support and dynamic scheduling

Published: 01 May 2004 Publication History

Abstract

Dynamic scheduling for system-on-chip (SoC) platforms has become an important field of research due to the emerging range of applications with dynamic behavior (e.g., MPEG-4). Dynamically reconfigurable architectures are an interesting solution for this type of applications. Scheduling for dynamically reconfigurable architectures might be classified in two major broad categories: (1) static scheduling techniques or (2) use of an operating system (OS) for reconfigurable computing. However, research efforts demonstrate a trend to move tasks traditionally assigned to the OS into hardware (thus increasing performance and reducing power).In this paper, we introduce a methodology for dynamically reconfigurable architectures. The dynamic scheduling of tasks to several reconfigurable units is performed by a hardware-based multitasking support unit. Two different versions of the microarchitecture are possible (with or without a hardware configuration prefetch unit). The dynamic scheduling algorithms are also explained. Both algorithms try to minimize the reconfiguration overhead by overlapping the execution of tasks with device reconfigurations.An exhaustive study (using the developed simulation and performance analysis framework) of this novel proposal is presented, and the effect of the microarchitecture parameters has been studied. Results demonstrate the benefits of our approach (achieving similar performance to a static configuration solution but using half of the resources). The hardware configuration prefetch unit is useful (i.e., minimize the execution time) in applications with low level of parallelism.

References

[1]
Balarin, F. et al. 1998. Scheduling for embedded real-time systems. IEEE Des. Test Comput. 15 (Jan.--Mar.), 1.]]
[2]
Benini, L., Bogliolo, A., and De Micheli, G. 2000. A survey of design techniques for system-level dynamic power management. IEEE Trans. VLSI Syst. 8, 3.]]
[3]
Brebner, G. 1996. A virtual hardware operating system for the Xilinx XC6200. In Proceedings of the 6th International Workshop on. Field Programmable Logic and Applications (FPL'96), Darmstadt, Germany.]]
[4]
Cepba---European Center for Parallelism of Barcelona. 2003. http://www.cepba.upc.es/]]
[5]
Chatta, K., and Vemuri, R., 1999. Hardware--software codesign for dynamically reconfigurable architectures. In Proceedings of the 9th International Workshop on Field Programmable Logic and Applications (FPL'99), Glasgow, Scotland.]]
[6]
Dick, R. P. and Jha, N. K. 1998. CORDS: Hardware--software co-synthesis of reconfigurable real-time distributed embedded systems. In Proceedings of International Conference Computer Aided Design (ICCAD'98), San Jose, CA, USA.]]
[7]
Dick, P., Rhodes, D.L., and Wolf, W. 1998. TGFF: Task graphs for free. In Proceedings International. Workshop Hardware/Software Codesign, Seattle, WA, USA.]]
[8]
Dick, R. P., Lakshminarayana, G., Raghunathan, A., and Jha, N. K. 2000. Power analysis of embedded operating systems. In Proceeding Design Automation Conference (DAC), Los Angeles, CA, USA.]]
[9]
Diessel O., Elgindy H., Middendorf M., Schmeck H., and Schmidt B. 2000. Dynamic scheduling of tasks on partially reconfigurable FPGAs. IEE Proceedings---Computers and Digital Techniques, Institution of Electrical Engineers, 147(3).]]
[10]
Hauck, S. 1998. Configuration prefetch for single context reconfigurable coprocessors. In Proceedings of ACM International Symposium on Field-Programmable Gate Arrays (FPGA'98), Monterey, CA, USA.]]
[11]
Hartenstein, R. 2001. A decade of reconfigurable computing: A visionary retrospective. In Proceedings of Design Automation and Test in Europe (DATE'2001), Munich, Germany.]]
[12]
Jeong, B. et al. 2000. Hardware--software cosynthesis for run-time incrementally reconfigurable FPGAs. In Proceedings of the Asia and South Pacific Design Automation Conference (ASP-DAC'2000), Yokohama, Japan.]]
[13]
Kalavade, A. et al. 1999. Software environment for a multiprocessor DSP. In Proceedings of Design Automation Conference (DAC), New Orleans, LA, USA.]]
[14]
Levinson, L., Männer, R., Sessler, M., and Simmler, H. 2000. Preemptive multitasking on FPGAs. In Proceedings Symposium on Field-Programmable Custom Computing Machines (FCCM'00), Napa, CA, USA.]]
[15]
Maestre, R. et al. 1999. Kernel scheduling in reconfigurable computing. In Proceedings of Design Automation and Test in Europe (DATE'99), Munich, Germany.]]
[16]
Moon, S. W., Rexford, J., and Shin, K. G. 2000. Scalable hardware priority queue architectures for high-speed packet switches. IEEE Trans. Comput. 49, 11.]]
[17]
Noguera, J. and Badia, R. M. 2000. Run-time HW/SW codesign for discrete event systems using dynamically reconfigurable architectures. In Proceedings of International Symposium on System Synthesis (ISSS'2000), Madrid, Spain.]]
[18]
Noguera, J. and Badia, R. M. 2001. A HW/SW partitioning algorithm for dynamically reconfigurable architectures. In Proceedings of Design Automation and Test in Europe (DATE'2001), Munich, Germany.]]
[19]
Noguera, J. and Badia, R. M. 2002. HW/SW codesign techniques for dynamically reconfigurable architectures. IEEE Trans. VLSI Syst. 10, 4.]]
[20]
Noguera, J. and Badia, R. M. 2002. Dynamic run-time HW/SW scheduling techniques for dynamically reconfigurable architectures. In Proceedings of International Symposium on Hardware/Software Codesign (CODES'02), Estes Park, CO, USA.]]
[21]
Purna, K. and Bhatia, D. 1999. Temporal partitioning and scheduling data flow graphs for re-configurable computers. IEEE Trans. Comput. 48, 6.]]
[22]
Ryu, K., Shin, E., and Mooney, V. 2001. A comparison of five different multiprocessor SoC bus architectures. In Proceedings of the EUROMICRO Symposium on Digital Systems Design (EUROMICRO'01), Warsaw, Poland.]]
[23]
Saglam, B. E. and Mooney, V. 2001. System-on-a-chip processor synchronization support in hardware. In Proceedings of Design Automation and Test in Europe (DATE'2001), Munich, Germany.]]
[24]
Shirazi, N., Luk, W., and Cheung, P. 1998. Automating production of run-time reconfigurable designs. In Proceedings of International Symposium Field-Programmable Custom Computing Machines (FCCM'98), Napa, CA, USA.]]
[25]
Simmler, H., Levinson, L., AND Männer, R. 2000. Multitasking on FPGA coprocessors. In Proceedings of 10th International Conference Field Programmable Logic and Applications (FPL'2000), Villach, Austria.]]
[26]
Vasilko, M. and Ait-Boudaoud, D. 1995. Scheduling for dynamically reconfigurable FPGAs. In Proceedings of International Workshop on Logic and Architecture Synthesis. IFIP TC10 WG10.5, Grenoble, France.]]
[27]
Walder, H. and Platzner, M. 2002. Non-preemptive multitasking on FPGAs: Task placement and footprint rransform. In Proceedings of 2nd International Conference on Engineering of Reconfigurable Systems and Architectures (ERSA'02), Las Vegas, NV.]]
[28]
Wigley, G. B. and Kearney, D. A. 2002. Research issues in operating systems for reconfigurable computing. In Proceedings of the International Conference on Engineering of Reconfigurable Systems and Algorithms (ERSA'02), Las Vegas, NV.]]
[29]
Wong, C. et al. 2001. Task concurrency management methodology to schedule the MPEG4 IM1 player on a highly parallel processor platform. In Proceedings of International Symposium on Hardware/Software Codesign (CODES'01), Copenhagen, Denmark.]]
[30]
Xilinx Corporation. 2003. http://www.xilinx.com/virtex2pro]]
[31]
Xyron Semiconductor. 2003. http://www.xyronsemi.com/DataSheets/.]]

Cited By

View all
  • (2024)An Exploration of Multitasking Scheduling Considering Interruptible Job Assignments, Machine Aging Effects, the Influence of Deteriorating Maintenance, and SymmetrySymmetry10.3390/sym1603038016:3(380)Online publication date: 21-Mar-2024
  • (2021)A two-agent one-machine multitasking scheduling problem solving by exact and metaheuristicsComplex & Intelligent Systems10.1007/s40747-021-00355-48:1(199-212)Online publication date: 15-Apr-2021
  • (2018)Cross-Language Interoperability in a Multi-Language RuntimeACM Transactions on Programming Languages and Systems10.1145/320189840:2(1-43)Online publication date: 28-May-2018
  • Show More Cited By

Index Terms

  1. Multitasking on reconfigurable architectures: microarchitecture support and dynamic scheduling

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image ACM Transactions on Embedded Computing Systems
        ACM Transactions on Embedded Computing Systems  Volume 3, Issue 2
        May 2004
        225 pages
        ISSN:1539-9087
        EISSN:1558-3465
        DOI:10.1145/993396
        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: 01 May 2004
        Published in TECS Volume 3, Issue 2

        Permissions

        Request permissions for this article.

        Check for updates

        Author Tags

        1. Adaptable architectures and microarchitectures
        2. dynamic scheduling
        3. runtime support for dynamic reconfiguration

        Qualifiers

        • Article

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • Downloads (Last 12 months)14
        • Downloads (Last 6 weeks)2
        Reflects downloads up to 12 Feb 2025

        Other Metrics

        Citations

        Cited By

        View all
        • (2024)An Exploration of Multitasking Scheduling Considering Interruptible Job Assignments, Machine Aging Effects, the Influence of Deteriorating Maintenance, and SymmetrySymmetry10.3390/sym1603038016:3(380)Online publication date: 21-Mar-2024
        • (2021)A two-agent one-machine multitasking scheduling problem solving by exact and metaheuristicsComplex & Intelligent Systems10.1007/s40747-021-00355-48:1(199-212)Online publication date: 15-Apr-2021
        • (2018)Cross-Language Interoperability in a Multi-Language RuntimeACM Transactions on Programming Languages and Systems10.1145/320189840:2(1-43)Online publication date: 28-May-2018
        • (2018)Algorithmic Analysis of Qualitative and Quantitative Termination Problems for Affine Probabilistic ProgramsACM Transactions on Programming Languages and Systems10.1145/317480040:2(1-45)Online publication date: 28-May-2018
        • (2018)Analysis of the reconfiguration latency and energy overheads for a Xilinx Virtex‐5 field‐programmable gate arrayIET Computers & Digital Techniques10.1049/iet-cdt.2016.009512:4(150-157)Online publication date: 15-Mar-2018
        • (2018)Towards Dynamically Reconfigurable SoCs (DRSoCs) in industrial automation: State of the art, challenges and opportunitiesMicroprocessors and Microsystems10.1016/j.micpro.2018.07.00262(20-40)Online publication date: Oct-2018
        • (2018)Algorithms for reducing reconfiguration overheads using prefetch, reuse, and optimal mapping of tasksConcurrency and Computation: Practice and Experience10.1002/cpe.501933:7(1-1)Online publication date: 28-Nov-2018
        • (2017)A Clustering Algorithm for Communication-Aware Scheduling of Task Graphs on Multi-Core Reconfigurable SystemsIEEE Transactions on Parallel and Distributed Systems10.1109/TPDS.2017.270312328:10(2718-2732)Online publication date: 7-Sep-2017
        • (2016)Research and Teaching Opportunities in Project ManagementOptimization Challenges in Complex, Networked and Risky Systems10.1287/educ.2016.0146(329-388)Online publication date: 4-Nov-2016
        • (2016)Model-Based Design of Correct Controllers for Dynamically Reconfigurable ArchitecturesACM Transactions on Embedded Computing Systems10.1145/287305615:3(1-27)Online publication date: 23-May-2016
        • Show More Cited By

        View Options

        Login options

        Full Access

        View options

        PDF

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader

        Figures

        Tables

        Media

        Share

        Share

        Share this Publication link

        Share on social media