skip to main content
research-article

System-scenario-based design of dynamic embedded systems

Published:23 January 2009Publication History
Skip Abstract Section

Abstract

In the past decade, real-time embedded systems have become much more complex due to the introduction of a lot of new functionality in one application, and due to running multiple applications concurrently. This increases the dynamic nature of today's applications and systems, and tightens the requirements for their constraints in terms of deadlines and energy consumption. State-of-the-art design methodologies try to cope with these novel issues by identifying several most used cases and dealing with them separately, reducing the newly introduced complexity. This article presents a generic and systematic design-time/run-time methodology for handling the dynamic nature of modern embedded systems, which can be utilized by existing design methodologies to increase their efficiency. It is based on the concept of system scenarios, which group system behaviors that are similar from a multidimensional cost perspective—such as resource requirements, delay, and energy consumption—in such a way that the system can be configured to exploit this cost similarity. At design-time, these scenarios are individually optimized. Mechanisms for predicting the current scenario at run-time, and for switching between scenarios, are also derived. This design trajectory is augmented with a run-time calibration mechanism, which allows the system to learn on-the-fly during its execution, and to adapt itself to the current input stimuli, by extending the scenario set, changing the scenario definitions, and both the prediction and switching mechanisms. To show the generality of our methodology, we show how it has been applied on four very different real-life design problems. In all presented case studies, substantial energy reductions were obtained by exploiting scenarios.

References

  1. Arenaz, M., Touriño, J., and Doallo, R. 2004. An inspector-executor algorithm for irregular assignment parallelization. In Proceedings of the 2nd International Symposium on Parallel and Distributed Processing and Applications (ISPA). Hong Kong, China, 4--15.Google ScholarGoogle Scholar
  2. Bougard, B., Dejonghe, A., and Dehaene, W. 2006. Cross-layer power management in wireless networks and consequences on system-level architecture. Signal Proces. 86, 8, 1792--1803. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Burd, T., Pering, T., Stratakos, A., and Brodersen, R. 2000. A dynamic voltage scaled microprocessor system. IEEE J. Solid-State Circ. 35, 11, 1571--1580.Google ScholarGoogle ScholarCross RefCross Ref
  4. Calzarossa, M. and Serazzi, G. 1993. Workload characterization: a survey. Proc. IEEE 81, 8, 1136--1150.Google ScholarGoogle ScholarCross RefCross Ref
  5. Carroll, J. M., Ed. 1995. Scenario-Based Design: Envisioning Work and Technology in System Development. John Wiley & Sons Inc. NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Catthoor, F., Ed. 2000. Unified Low-Power Design Flow for Data-Dominated Multi-Media and Telecom Applications. Kluwer Academic Publishers, Boston, MA.Google ScholarGoogle Scholar
  7. Choi, K., Dantu, K., Cheng, W.-C., and Pedram, M. 2002. Frame-based dynamic voltage and frequency scaling for a MPEG decoder. In Proceedings of the IEEE/ACM International Conference on Computer-Aided Design (ICCAD). ACM Press, New York, NY, 732--737. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Chung, E.-Y., De Micheli, G., and Benini, L. 2002. Contents provider-assisted dynamic voltage scaling for low energy multimedia applications. In Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED). ACM Press, New York, NY, 42--47. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Daylight, E. G., Wuytack, S., Ykman-Couvreur, C., and Catthoor, F. 2002. Analyzing energy friendly steady state phases of dynamic application execution in terms of sparse data structures. In Proceedings of the International Symposium on Low Power Electronics and Design (ISLPED'02). ACM Press, New York, NY, 76--79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. De Sutter, B., De Bus, B., and De Bosschere, K. 2006. Link-time binary rewriting techniques for program compaction. ACM Trans. Program. Lang. Syst. 27, 5, 882--945. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Debray, S., Evans, W., Muth, R., and De Sutter, B. 2002. Compiler techniques for code compaction. ACM Trans. Program. Lang. Syst. 22, 2, 378--415. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Douglass, B. P. 2004. Real Time UML: Advances in the UML for Real-Time Systems. Addison Wesley Publishing Company, Reading, MA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Dumont, G. A. and Huzmezan, M. 2002. Concepts, methods and techniques in adaptive control. In Proceedings of the American Control Conference (ACC). Vol. 2. IEEE, 1137--1150.Google ScholarGoogle Scholar
  14. Ferrari, D. 1972. Workload charaterization and selection in computer performance measurement. Computer 5, 4, 18--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Fowler, M. 2003. Use cases. In UML Distilled: A Brief Guide to the Standard Object Modeling Language, 3rd. Ed. Addison Wesley Publishing Company, Reading, MA, Chapter 9, 99--106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Geilen, M. C. W., Basten, T., Theelen, B. D., and Otten, R. H. J. M. 2007. An algebra of pareto points. Fundamenta Informaticae 78, 1, 35--74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Gheorghita, S. V., Basten, T., and Corporaal, H. 2005. Intra-task scenario-aware voltage scheduling. In Proceedings of the International Conference on Compilers, Architecture and Synthesis for Embedded Systesms (CASES). ACM Press, New York, NY, 177--184. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Gheorghita, S. V., Basten, T., and Corporaal, H. 2006. Application scenarios in streaming-oriented embedded system design. In Proceedings of the International Symposium on System-on-Chip (SoC). IEEE Press, Piscataway, NJ, 175--178. Revised version to appear as {Gheorghita et al. 2008a}.Google ScholarGoogle Scholar
  19. Gheorghita, S. V., Basten, T., and Corporaal, H. 2008a. Application scenarios in streaming-oriented embedded system design. IEEE Design & Test of Computers. Invited. Best paper of SoC 2006. To appear. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Gheorghita, S. V., Basten, T., and Corporaal, H. 2008b. Scenario selection and prediction for DVS-aware scheduling. J. Sign. Proces. Syst. 50, 2, 137--161. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Gheorghita, S. V., Stuijk, S., Basten, T., and Corporaal, H. 2005. Automatic scenario detection for improved WCET estimation. In Proceedings of the 42nd Design Automation Conference DAC. ACM Press, New York, NY, 101--104. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Goossens, K., Dielissen, J., van Meerbergen, J., Poplavko, P., Radulescu, A., Rijpkema, E., Waterlander, E., and Wielage, P. 2003. Guaranteeing the quality of services in networks on chip. In Networks on chip. Kluwer Academic Publishers, Hingham, MA, Chapter 4, 61--82. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Hamers, J. and Eeckhout, L. 2007. Resource prediction for media stream decoding. In Proc. of Design, Automation and Test in Europe (DATE). IEEE, 594--599. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Hamers, J. and Eeckhout, L. 2008. Exploiting media stream similarity for energy-efficient decoding and resource prediction. ACM Transactions on Embedded Computing Systems. To appear.Google ScholarGoogle Scholar
  25. Hamers, J., Eeckhout, L., and De Bosschere, K. 2007. Exploiting video stream similarity for energy-efficient decoding. In Proceedings of the 13th International Multimedia Modeling Conference, (MMM). Lecture Notes in Computer Science, vol. 4352. Springer, Berlin, Germany, 11--22. Extended version to appear as {Hamers and Eeckhout 2008}.Google ScholarGoogle Scholar
  26. Hansson, A., Coenen, M., and Goossens, K. 2007. Undisrupted quality-of-service during reconfiguration of multiple applications in networks on chip. In Proceedings of Design, Automation, and Test in Europe (DATE). IEEE Press, 954--959. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Huang, M., Renau, J., and Torrellas, J. 2003. Positional adaptation of processors: Application to energy reduction. In Proceedings of the International Symposium on Computer Architecture (ISCA). IEEE CS Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Hughes, C. J., Srinivasan, J., and Adve, S. V. 2001. Saving energy with architectural and frequency adaptations for multimedia applications. In Proceedings of the 34th Annual International Symposium on Microarchitecture (MICRO). IEEE Computer Society, 250--261. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. IEEE. 2000. IEEE standard 1471: Recommended practice for architectural description of software-intensive systems.Google ScholarGoogle Scholar
  30. Intel Corporation. 2003. Intel XScale microarchitecture for the PXA255 processor: Useris manual. Order No. 278796.Google ScholarGoogle Scholar
  31. Ionita, M. T. 2005. Scenario-based system architecting: a systematic approach to developing future-proof system architectures. Ph.D. thesis, Technische Universiteit Eindhoven, The Netherlands.Google ScholarGoogle Scholar
  32. Jha, N. K. 2001. Low power system scheduling and synthesis. In Proceedings of the IEEE/ACM International Conference on Computer Aided Design. 259--263. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Kotz, D. and Essien, K. 2005. Analysis of a campus-wide wireless network. Wirel. Net. 11, 1, 115--133. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Lee, R. 1991. An introduction to workload characterization. http://support.novell.com/techcenter/articles/ana19910503.html.Google ScholarGoogle Scholar
  35. Lee, S., Yoo, S., and Choi, K. 2002. An intra-task dynamic voltage scaling method for SoC design with hierarchical FSM and synchronous dataflow model. In Proceedings of the International Symposium on Low Power Electronics and Design. ACM Press, 84--87. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Mamagkakis, S., Soudris, D., and Catthoor, F. 2007. Middleware design optimization of wireless protocols based on the exploitation of dynamic input patterns. In Proceedings of Design, Automation, and Test in Europe (DATE). IEEE Press, 118--123. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Marchal, P., Wong, C., Prayati, A., Cossement, N., Catthoor, F., Lauwereins, R., Verkest, D., and De Man, H. 2000. Dynamic memory oriented transformations in the MPEG4 IM1-Player on a low power platform. In Proceedings of the 1st International Workshop on Power-Aware Computer Systems. Springer-Verlag, 40--50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Murali, S., Coenen, M., Radulescu, A., Goossens, K., and De Micheli, G. 2006a. Mapping and configuration methods for multi-use-case networks on chips. In Proceedings of the Asia South Pacific Design Automation Conference (ASPDAC). ACM Press, 146--151. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Murali, S., Coenen, M., Radulescu, A., Goossens, K., and De Micheli, G. 2006b. A methodology for mapping multiple use-cases onto networks on chips. In Proceedings of Design, Automation and Test in Europe (DATE). IEEE, 118--123. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. Okabe, T., Jin, Y., and Sendhoff, B. 2003. A critical survey of performance indices for multi-objective optimisation. In Proceedings of the Congress on Evolutionary Computation. Vol. 2. IEEE Press, 878--885.Google ScholarGoogle Scholar
  41. Palkovic, M., Brockmeyer, E., Vanbroekhoven, P., Corporaal, H., and Catthoor, F. 2006. Systematic preprocessing of data dependent constructs for embedded systems. J. Low Power Elect. 2, 1, 9--17.Google ScholarGoogle ScholarCross RefCross Ref
  42. Palkovic, M., Corporaal, H., and Catthoor, F. 2005. Global memory optimisation for embedded systems allowed by code duplication. In Proceedings of the 9th International Workshop on Software and Compilers for Embedded Systems (SCOPES). ACM, 72--79. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Pareto, V. 1906. Manuale di Economia Politica. Piccola Biblioteca Scientifica, Milan. Translated into English by A.S. Schwier (1971), Manual of Political Economy, MacMillan, London.Google ScholarGoogle Scholar
  44. Paul, J. M., Thomas, D. E., and Bobrek, A. 2006. Scenario-oriented design for single-chip heterogeneous multiprocessors. IEEE Trans. VLSI Syst. 14, 8, 868--880.Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Peon-Quiros, M., Bartzas, A., Mamagkakis, S., Catthoor, F., Mendias, J., and Soudris, D. 2007. Direct memory access optimization in wireless terminals for reduced memory latency and energy consumption. In Proceedings of the 17th International Workshop in Power and Timing Modeling, Optimization and Simulation (PATMOS). Springer, 373--383.Google ScholarGoogle Scholar
  46. Pollin, S., Mangharam, R., Bougard, B., Van der Perre, L., Moerman, I., Rajkumar, R., and Catthoor, F. 2007. MEERA: Cross-layer methodology for energy efficient resource allocation in wireless networks. IEEE Trans. Wirel. Comm. 6, 2, 617--628.Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Poplavko, P., Basten, T., and van Meerbergen, J. 2007. Execution-time prediction for dynamic streaming applications with task-level parallelism. In Proceedings of the 10th EUROMICRO Conference on Digital System Design (DSD). IEEE Computer Society Press, 228--235. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Raman, B. and Chakraborty, S. 2006. Application-specific workload shaping in multimedia-enabled personal mobile devices. In Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). ACM, 4--9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Sachs, D. G., Adve, S. V., and Jones, D. L. 2003. Cross-layer adaptive video coding to reduce energy on general-purpose processors. In Proceedings of the IEEE International Conference on Image Processing. IEEE Press, 109--112.Google ScholarGoogle Scholar
  50. Saltz, J. H., Mirchandaney, R., and Crowley, K. 1991. Run-time parallelization and scheduling of loops. IEEE Trans. Comput. 40, 5, 603--612. Google ScholarGoogle ScholarDigital LibraryDigital Library
  51. Sanz, C., Prieto, M., Papanikolaou, A., Miranda, M., and Catthoor, F. 2006. System-level process variability compensation on memory organizations of dynamic applications: a case study. In Proceedings of the 7th International Symposium on Quality Electronic Design (ISQED), 376--382. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Sasanka, R., Hughes, C. J., and Adve, S. V. 2002. Joint local and global hardware adaptations for energy. ACM SIGARCH Computer Architecture News 30, 5, 144--155. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Sherwood, T., Perelman, E., Hamerly, G., and Calder, B. 2002a. Automatically characterizing large scale program behavior. In Proceedings of the 10th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). ACM Press, 45--57. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Shin, D. and Kim, J. 2005. Optimizing intra-task voltage scheduling using data flow analysis. In Proceedings of the 10th Asia and South Pacific Design Automation Conference (ASPDAC). ACM Press, 703--708. Google ScholarGoogle ScholarDigital LibraryDigital Library
  55. Tack, K., Lafruit, G., Catthoor, F., and Lauwereins, R. 2006. Platform independent optimisation of multi-resolution 3D content to enable universal media access. Visual Computer 22, 8, 577--590.Google ScholarGoogle ScholarCross RefCross Ref
  56. Temmerman, M., Daylight, E. G., Catthoor, F., Demeyer, S., and Dhaene, T. 2007. Optimizing data structures at the modeling level in embedded multimedia. J. Syst. Arch. 53, 8, 539--549. Google ScholarGoogle ScholarDigital LibraryDigital Library
  57. Theelen, B. D., Geilen, M. C. W., Basten, T., Voeten, J. P. M., Gheorghita, S. V., and Stuijk, S. 2006. A scenario-aware data flow model for combined long-run average and worst-case performance analysis. In Proceedings of the 4th ACM-IEEE International Conference on Formal Methods and Models for Codesign (MEMOCODE). IEEE Computer Society Press, 185--194.Google ScholarGoogle Scholar
  58. van der Mark, P., Wolters, L., and Cats, G. 2004. Using semi-lagrangian formulations with automatic code generation for environmental modeling. In Proceedings of the ACM Symposium on Applied Computing (SAC). ACM, 229--234. Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. Vandeputte, F., Eeckhout, L., and De Bosschere, K. 2005a. A detailed study on phase predictors. In Proceedings of the 11th International Euro-Par Conference, J. Cunha and P. Medeiros, Eds. LNCS, vol. 3648. Springer, 571--581.Google ScholarGoogle ScholarDigital LibraryDigital Library
  60. Vandeputte, F., Eeckhout, L., and De Bosschere, K. 2007. Exploiting program phase behavior for energy reduction on multi-configuration processors. J. Syst. Arch. 53, 8, 489--500. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Vogel, A., Kerherve, B., von Bochmann, G., and Gecsei, J. 1995. Distributed multimedia and QoS: a survey. IEEE Multimedia 2, 2, 10--19. Google ScholarGoogle ScholarDigital LibraryDigital Library
  62. Wandeler, E. and Thiele, L. 2005. Characterizing workload correlations in multi processor hard real-time systems. In Proceedings of the 11th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS). IEEE Computer Society Press, 46--55. Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. Wegener, I. 2000. Integer-Valued DDs. In Branching Programs and Binary Decision Diagrams: Theory and Applications. SIAM Monographs on Discrete Mathematics and Applications. Society for Industrial and Applied Mathematics, Philadelphia, PA, Chapter 9.Google ScholarGoogle ScholarCross RefCross Ref
  64. Yang, P. 2004. Pareto-optimization based run-time task scheduling for embedded systems. Ph.D. thesis, Catholic University of Leuven, Belgium.Google ScholarGoogle Scholar
  65. Yang, P. and Catthoor, F. 2003. Pareto-optimization-based run-time task scheduling for embedded systems. In Proceedings of the 1st IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS). ACM Press, NY, 120--125. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. Yang, P., Marchal, P., Wong, C., Himpe, S., Catthoor, F., David, P., Vounckx, J., and Lauwereins, R. 2002. Managing dynamic concurrent tasks in embedded real-time multimedia systems. In Proceedings of the 15th ACM/IEEE International Symposium on System-Level Synthesis (ISSS). IEEE Computer Society, 112--119. Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. Yang, P., Wong, C., Marchal, P., Catthoor, F., Desmet, D., Verkest, D., and Lauwereins, R. 2001. Energy-aware runtime scheduling for embedded-multiprocessor socs. IEEE Des. Test 18, 5, 46--58. Google ScholarGoogle ScholarDigital LibraryDigital Library
  68. Ykman-Couvreur, C., Brockmeyer, E., Nollet, V., Marescaux, T., Catthoor, F., and Corporaal, H. 2005. Design-Time application exploration for MP-SoC customized run-time management. In Proceedings of the International Symposium on System-on-Chip (SoC). IEEE Press, 66--69.Google ScholarGoogle Scholar
  69. Ykman-Couvreur, C., Nollet, V., Catthoor, F., and Corporaal, H. 2006. Fast multi-dimension multi-choice knapsack heuristic for MP-SoC run-time management. In Proceedings of the International Symposium on System-on-Chip (SoC). IEEE Press, 1--4.Google ScholarGoogle Scholar
  70. Yokota, D., Chiba, S., and Itano, K. 2002. A new optimization technique for the inspector-executor method. In Proceedings of the International Conference on Parallel and Distributed Computing Systems (PDCS). Acta Press, 706--711.Google ScholarGoogle Scholar

Index Terms

  1. System-scenario-based design of dynamic embedded systems

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM Transactions on Design Automation of Electronic Systems
            ACM Transactions on Design Automation of Electronic Systems  Volume 14, Issue 1
            January 2009
            444 pages
            ISSN:1084-4309
            EISSN:1557-7309
            DOI:10.1145/1455229
            Issue’s Table of Contents

            Copyright © 2009 ACM

            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

            Publication History

            • Published: 23 January 2009
            • Accepted: 1 June 2008
            • Revised: 1 April 2008
            • Received: 1 October 2007
            Published in todaes Volume 14, Issue 1

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Research
            • Refereed

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader