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

FAST: Frequency-aware static timing analysis

Published: 01 February 2006 Publication History

Abstract

Energy is a valuable resource in embedded systems as the lifetime of many such systems is constrained by their battery capacity. Recent advances in processor design have added support for dynamic frequency/voltage scaling (DVS) for saving energy. Recent work on real-time scheduling focuses on saving energy in static as well as dynamic scheduling environments by exploiting idle time and slack because of early task completion for DVS of subsequent tasks. These scheduling algorithms rely on a priori knowledge of worst-case execution times (WCET) for each task. They assume that DVS has no effect on the worst-case execution cycles (WCEC) of a task and scale the WCET according to the processor frequency. However, for systems with memory hierarchies, the WCEC typically does change under DVS because of requency modulation. Hence, current assumptions used by DVS schemes result in a highly exaggerated WCET. This paper contributes novel techniques for tight and flexible static timing analysis, particularly well-suited for dynamic scheduling schemes. The technical contributions are as follows: (1) We assess the problem of changing execution cycles owing to scaling techniques. (2) We propose a parametric approach toward bounding the WCET statically with respect to the frequency. Using a parametric model, we can capture the effect of changes in frequency on the WCEC and, thus, accurately model the WCET over any frequency range. (3) We discuss design and implementation of the frequency-aware static timing analysis (FAST) tool based on our prior experience with static timing analysis. (4) We demonstrate in experiments that our FAST tool provides safe upper bounds on the WCET, which are tight. The FAST tool allows us to capture the WCET of six benchmarks using equations that overestimate the WCET by less than 1%. FAST equations can also be used to improve existing DVS scheduling schemes to ensure that the effect of frequency scaling on WCET is considered and that the WCET used is not exaggerated. (5) We leverage three DVS scheduling schemes by incorporating FAST into them and by showing that the energy consumption further decreases. (6) We compare experimental results using two different energy models to demonstrate or verify the validity of simulation methods. To the best of our knowledge, this study of DVS effects on timing analysis is unprecedented.

References

[1]
Anantaraman, A., Seth, K., Patil, K., Rotenberg, E., and Mueller, F. 2003. Virtual simple architecture (VISA): Exceeding the complexity limit in safe real-time systems. In International Symposium on Computer Architecture. 250--261.
[2]
Aydin, H., Melhem, R., Mosse, D., and Mejia-Alvarez, P. 2001. Dynamic and agressive scheduling techniques for power-aware real-time systems. In IEEE Real-Time Systems Symposium.
[3]
Ball, T. and Larus, J. R. 1993. Branch prediction for free. In ACM SIGPLAN Conference on Programming Language Design and Implementation. 300--313.
[4]
Benitez, M. E. and Davidson, J. W. 1988. A portable global optimizer and linker. In ACM SIGPLAN Conference on Programming Language Design and Implementation. 329--338.
[5]
Bernat, G. and Burns, A. 2000. An approach to symbolic worst-case execution time analysis. In 25th IFAC Workshop on Real-Time Programming.
[6]
Brooks, D., Tiwari, V., and Martonosi, M. 2000. Wattch: A framework for architectural-level power analysis and optimizations. In Proceedings of the 27th Annual International Symposium on Computer Architecture. IEEE Computer Society and ACM SIGARCH, Vancouver, British Columbia, 83--94.
[7]
Burger, D., Austin, T. M., and Bennett, S. 1996. Evaluating future microprocessors: The simplescalar tool set. Technical Report CS-TR-1996-1308, (July) University of Wisconsin, Madison.
[8]
C-Lab. Wcet benchmarks. Available from http://www.c-lab.de/home/en/download.html.
[9]
Chandrakasan, A., Sheng, S., and Brodersen, R. W. April, 1992. Low-power cmos digital design. In IEEE Journal of Solid-State Circuits, vol. 27, 473--484.
[10]
Chapman, R., Burns, A., and Wellings, A. 1996. Combining static worst-case timing analysis and program proof. Real-Time Systems 11, 2, 145--171.
[11]
Chetto, H. and Chetto, M. 1989. Some results of the earliest deadline scheduling algorithm. IEEE Transactions on Software Engineering 15, 10 (Oct.), 1261--1269.
[12]
Corp., I. Intel StrongARM processors. http://www.intel.com/design/strong.
[13]
Dudani, A., Mueller, F., and Zhu, Y. 2002. Energy-conserving feedback edf scheduling for embedded systems with real-time constraints. In ACM SIGPLAN Joint Conference Languages, Compilers, and Tools for Embedded Systems (LCTES'02) and Software and Compilers for Embedded Systems (SCOPES'02). 213--222.
[14]
Gruian, F. 2001. Hard real-time scheduling for low energy using stochastic data and dvs processors. In Proceedings of the International Symposium on Low-Power Electronics and Design ISLPED'01.
[15]
Healy, C. A., Whalley, D. B., and Harmon, M. G. 1995. Integrating the timing analysis of pipelining and instruction caching. In IEEE Real-Time Systems Symposium. 288--297.
[16]
Healy, C. A., Arnold, R. D., Mueller, F., Whalley, D., and Harmon, M. G. 1999. Bounding pipeline and instruction cache performance. IEEE Transactions on Computers 48, 1 (Jan.), 53--70.
[17]
Intel. 2000. Intel XScale Microarchitecture Technical Summary.
[18]
Li, Y.-T. S., Malik, S., and Wolfe, A. 1996. Cache modeling for real-time software: Beyond direct mapped instruction caches. In IEEE Real-Time Systems Symposium. 254--263.
[19]
Lim, S.-S., Bae, Y. H., Jang, G. T., Rhee, B.-D., Min, S. L., Park, C. Y., Shin, H., and Kim, C. S. 1994. An accurate worst case timing analysis for RISC processors. In IEEE Real-Time Systems Symposium. 97--108.
[20]
Liu, C. and Layland, J. 1973. Scheduling algorithms for multiprogramming in a hard-real-time environment. J. of the Association for Computing Machinery 20, 1 (Jan.), 46--61.
[21]
Mosse, D., Aydin, H., Childers, B., and Melhem, R. 2000. Compiler-assisted dynamic power-aware scheduling for real-time applications. In Workshop on Compilers and Operating Systems for Low Power.
[22]
Mueller, F. 2000. Timing analysis for instruction caches. Real-Time Systems 18, 2/3 (May), 209--239.
[23]
Park, C. Y. 1993. Predicting program execution times by analyzing static and dynamic program paths. Real-Time Systems 5, 1 (Mar.), 31--61.
[24]
Pillai, P. and Shin, K. 2001. Real-time dynamic voltage scaling for low-power embedded operating systems. In Symposium on Operating Systems Principles.
[25]
Seth, K., Anantaraman, A., Mueller, F., and Rotenberg, E. 2003. Fast: Frequency-aware static timing analysis. In IEEE Real-Time Systems Symposium. 40--51.
[26]
Vivancos, E., Healy, C., Mueller, F., and Whalley, D. 2001. Parametric timing analysis. In ACM SIGPLAN Workshop on Language, Compiler, and Tool Support for Embedded Systems. ACM SIGPLAN Notices, vol. 36, 88--93.
[27]
Wegener, J. and Mueller, F. 2001. A comparison of static analysis and evolutionary testing for the verification of timing constraints. Real-Time Systems 21, 3 (Nov.), 241--268.
[28]
White, R. T., Mueller, F., Healy, C., Whalley, D., and Harmon, M. G. 1999. Timing analysis for data and wrap-around fill caches. Real-Time Systems 17, 2/3 (Nov.), 209--233.
[29]
Zyuban, V. and Kogge, P. 1998. The energy complexity of register files. In Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED-98). ACM Press, New York. 305--310.

Cited By

View all
  • (2022)A Power-Aware Real-Time System for Multi-Video Treatment on FPGA with Dynamic Partial Reconfiguration and Voltage ScalingEngineering, Technology & Applied Science Research10.48084/etasr.509912:4(8996-9004)Online publication date: 7-Aug-2022
  • (2019)Work-in-Progress: Probabilistic System-Wide DVFS for Real-Time Embedded Systems2019 IEEE Real-Time Systems Symposium (RTSS)10.1109/RTSS46320.2019.00051(508-511)Online publication date: Dec-2019
  • (2019)Modeling and Timing Analysis for Microkernel-Based Real-Time Embedded SystemIEEE Access10.1109/ACCESS.2019.29060117(39547-39563)Online publication date: 2019
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 5, Issue 1
February 2006
258 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/1132357
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 01 February 2006
Published in TECS Volume 5, Issue 1

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Real-time systems
  2. dynamic voltage scaling
  3. scheduling
  4. worst-case execution time analysis

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)16
  • Downloads (Last 6 weeks)4
Reflects downloads up to 25 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2022)A Power-Aware Real-Time System for Multi-Video Treatment on FPGA with Dynamic Partial Reconfiguration and Voltage ScalingEngineering, Technology & Applied Science Research10.48084/etasr.509912:4(8996-9004)Online publication date: 7-Aug-2022
  • (2019)Work-in-Progress: Probabilistic System-Wide DVFS for Real-Time Embedded Systems2019 IEEE Real-Time Systems Symposium (RTSS)10.1109/RTSS46320.2019.00051(508-511)Online publication date: Dec-2019
  • (2019)Modeling and Timing Analysis for Microkernel-Based Real-Time Embedded SystemIEEE Access10.1109/ACCESS.2019.29060117(39547-39563)Online publication date: 2019
  • (2018)A QoS-enhanced intelligent stochastic real-time packet scheduler for multimedia IP trafficMultimedia Tools and Applications10.1007/s11042-017-4912-677:10(12725-12748)Online publication date: 1-May-2018
  • (2017)Determining Application-Specific Peak Power and Energy Requirements for Ultra-Low-Power ProcessorsACM Transactions on Computer Systems10.1145/314805235:3(1-33)Online publication date: 26-Dec-2017
  • (2017)Determining Application-specific Peak Power and Energy Requirements for Ultra-low Power ProcessorsACM SIGARCH Computer Architecture News10.1145/3093337.303771145:1(3-16)Online publication date: 4-Apr-2017
  • (2017)Determining Application-specific Peak Power and Energy Requirements for Ultra-low Power ProcessorsACM SIGPLAN Notices10.1145/3093336.303771152:4(3-16)Online publication date: 4-Apr-2017
  • (2017)Determining Application-specific Peak Power and Energy Requirements for Ultra-low Power ProcessorsACM SIGOPS Operating Systems Review10.1145/3093315.303771151:2(3-16)Online publication date: 4-Apr-2017
  • (2017)Determining Application-specific Peak Power and Energy Requirements for Ultra-low Power ProcessorsProceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3037697.3037711(3-16)Online publication date: 4-Apr-2017
  • (2017)System-Level Design Optimization for Security-Critical Cyber-Physical-Social SystemsACM Transactions on Embedded Computing Systems10.1145/292599116:2(1-21)Online publication date: 14-Apr-2017
  • 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

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media