Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1017753.1017799acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
Article

An approach for integrating basic retiming and software pipelining

Published: 27 September 2004 Publication History
  • Get Citation Alerts
  • Abstract

    Basic retiming is an algorithm originally developed for hardware optimization. Software pipelining is a technique proposed to increase instruction-level parallelism for parallel processors. In this paper, we show that applying software pipelining alone for minimizing timings under resource constraints can lead to sub-optimal results, compared to the case if an unification of basic retiming and software pipelining is used. We propose an approach to realize this unification. The approach allows to minimize the code size of the optimized loop as well as minimizing the idleness of computational elements. We extend this approach to solve the problem of minimizing peak power consumption for time-constrained and resource-constrained software pipelined loops. Solving these problems is important for portable embedded systems as well as system-on-chip design. The approaches are tested using known benchmarks. On average, relative timing improvement is 60.19%, and relative reduction of peak power consumption is 13.17% without any trade-off in timings.

    References

    [1]
    C.E. Leiserson and J.B. Saxe, "Retiming Synchronous Circuitry," Algorithmica, pp. 5--35, Jan., 1991.
    [2]
    The LP_Solve Tool: ftp://ftp.ics.ele.tue.nl/pub/lp_solve/
    [3]
    Q. Zhuge, B. Xiao, E.H. MSha, "Code size reduction technique and implementation for software-pipelined DSP applications," ACM Trans. on Embedded Computing Systems, V.2, N.4, November 2003, pp. 590--613.
    [4]
    V. Allan, R.B. Jones, R.M. Lee, S.J. Allan, "Software Pipelining," ACM Computing Surveys, Vol. 27, No. 3, September 1995, pp. 367--432.
    [5]
    A. Dasdan, R.K. Gupta, "Faster Maximum and Minimum Mean Cycle Algorithms for System Performance Analysis," IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, V.17, N.10, Oct. 1998.
    [6]
    B.R. Rau, "Iterative Modulo Scheduling," International Journal of Parallel Programming, 24 (1), pp. 3--64, 1996.
    [7]
    L.F. Chao, A.S. LaPaugh, E.H.M. Sha, "Rotation scheduling: A loop pipelining algorithm," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, V.16, N.3, March 1997, pp. 229--239.
    [8]
    B.R. Rau, J.A. Fisher, "Instruction-level parallel processing: history, overview, and perspective," The Journal of Supercomputing, V.7, N.1, 1993, pp. 9--50.

    Cited By

    View all

    Index Terms

    1. An approach for integrating basic retiming and software pipelining

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      EMSOFT '04: Proceedings of the 4th ACM international conference on Embedded software
      September 2004
      316 pages
      ISBN:1581138601
      DOI:10.1145/1017753
      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]

      Sponsors

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 27 September 2004

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. VLIW
      2. code size
      3. embedded systems
      4. instruction-level parallelism
      5. peak power
      6. retiming
      7. software pipelining
      8. superscalar processor
      9. system-on-chip
      10. timings

      Qualifiers

      • Article

      Conference

      EMSOFT04
      Sponsor:

      Acceptance Rates

      Overall Acceptance Rate 60 of 203 submissions, 30%

      Upcoming Conference

      ESWEEK '24
      Twentieth Embedded Systems Week
      September 29 - October 4, 2024
      Raleigh , NC , USA

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)0
      • Downloads (Last 6 weeks)0

      Other Metrics

      Citations

      Cited By

      View all

      View Options

      Get Access

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media