skip to main content
research-article

Buffer optimization in multitask implementations of Simulink models

Published:08 May 2008Publication History
Skip Abstract Section

Abstract

Automatic generation of a controller implementation from a synchronous reactive model is among the best practices for software development in the automotive and aeronautics industry, because of the possibility of simulation, model checking, and error-free implementation. This paper discusses an algorithm for optimizing the single-processor multitask implementation of Simulink models with real-time execution constraints, derived from the sampling rates of the functional blocks. Existing code generation tools enforce the addition of extra buffering and latencies whenever there is a rate transition among functional blocks. This work shows how timing analysis can be used to find the cases in which additional buffering and latency can be avoided, improving the space and time performance of the application. The proposed search algorithm allows finding a solution with reduced and possibly minimal use of buffering even for very high values of processor utilization.

References

  1. Arthan, R. D., Caseley, P., O'Halloran, C., and Smith, A. 2000. Clawz: Control laws in z. In Proceedings of the 3rd IEEE International Conference on Formal Engineering Methods. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Astrom, K. J. and Wittenmark, B. 1997. Computer Controlled Systems. Prentice Hall, Englewood Cliffs NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Baleani, M., Ferrari, A., Mangeruca, L., and Vincentelli, A. S. 2005a. Efficient embedded software design with synchronous models. In Proceedings of the 5th ACM EMSOFT Conference. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Baleani, M., Ferrari, A., Mangeruca, L., Vincentelli, A. S., Freund, U., Schlenker, E., and Wolff, H. J. 2005b. Correct-by-construction transformations across design environments for model-based embedded software development. In Proceedings of the DATE Conference. Vol. 2. 1044--1049. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Benveniste, A., Caspi, P., Edwards, S., Halbwachs, N., Guernic, P. L., and de Simone, R. 2003. The synchronous languages 12 years later. In Proceedings of the IEEE 91.Google ScholarGoogle ScholarCross RefCross Ref
  6. Blazewicz, J., Dror, M., and Weglarz, J. 1991. Mathematical programming formulation for machine scheduling: A survey. Europ. J. Operational Res. 51.Google ScholarGoogle Scholar
  7. Caspi, P., Curic, A., Maignan, A., Sofronis, C., Tripakis, S., and Niebert, P. 2003. From simulink to scade/lustre to tta: a layered approach for distributed embedded applications. In Proceedings of the LCTES Conference. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Chetto, H., Silly, M., and Bouchentouf, T. 1990. Dynamic scheduling of real-time tasks under precedence constraints. J. Real-Time Syst. 2. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Cormen, T. H., Leiserson, C. E., Rivest, R. L., and Stein, C. 1990. Introduction to Algorithms. MIT Press, Cambridge, MA. and McGraw-Hill, New York. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Garey, M. and Johnson, D. 1979. Computers and Intractability: A Guide to the Theory of NP-Completeness. Freeman, San Francisco, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Harbour, M. G., Klein, M., and Lehoczky, J. 1994. Timing analysis for fixed-priority scheduling of hard real-time systems. IEEE Trans. Softw. Eng. 20, (Jan.), 1. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Lawler, E. 1983. Recent results in the theory of machine scheduling. In Mathematical Programming: The State of the Art, A. Bachen et al., Eds. Springer-Verlag, New York.Google ScholarGoogle Scholar
  13. Lee, E. and Varaiya, P. 2003. Structure and Interpretation of Signals and Systems. Addison Wesley, Reading, PA.Google ScholarGoogle Scholar
  14. Mathworks. The Mathworks Simulink and StateFlow User's Manuals. Mathworks. web page: http://www.mathworks.com.Google ScholarGoogle Scholar
  15. Scaife, N. and Caspi, P. 2004. Integrating model-based design and preemptive scheduling in mixed time- and event-triggered systems. In Proceedings of the 6th Euromicro Conference on Real-Time Systems (ECRTS'04). Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Sepe, R. B. 2001. Real-Time Motor Testing and Development—Over the Internet. Sensors Magazine Online.Google ScholarGoogle Scholar
  17. Tripakis, S., Sofronis, C., Caspi, P., and Curic, A. 2005a. Translating discrete-time simulink to lustre. Trans. Embedded Comput. Syst. 4, 4, 779--818. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Tripakis, S., Sofronis, C., Scaife, N., and Caspi, P. 2005b. Semantics-preserving and memory-efficient implementation of inter-task communication on static-priority or edf schedulers. In Proceedings of the 5th ACM EMSOFT Conference. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Buffer optimization in multitask implementations of Simulink models

      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

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!