Skip to main content

Automatic Development of Embedded Systems Using Model Driven Engineering and Compile-Time Virtualisation

  • Chapter
  • First Online:
Embedded and Real Time System Development: A Software Engineering Perspective

Part of the book series: Studies in Computational Intelligence ((SCI,volume 520))

Abstract

The architectures of modern embedded systems tend to be highly application-specific, containing features such as heterogeneous multicore processors, non-uniform memory architectures, custom function accelerators and on-chip networks. Furthermore, these systems are resource-constrained and are often deployed as part of safety-related systems. This necessitates the levels of certification and the use of designs that meet stringent non-functional requirements (such as timing or power). This chapter focusses upon new tools for the generation of software and hardware for modern embedded systems implemented using Java. The approach promotes rapid deployment and design space exploration, and is integrated into a fully model-driven toolflow that supports existing industrial practices. The presented approach allows the automatic deployment of architecture-neutral Java code over complex embedded architectures, with minimal overheads and a run-time support that is amenable to real-time analysis.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. J. Andersson, S. Weber, E. Cecchet, C. Jensen, V. Cahill, Kaffemik—A distributed JVM on a single address space architecture. SCI Europe 2001 Conference (2001)

    Google Scholar 

  2. Atego. Perc Pico (2011), http://www.atego.com/products/aonix-perc-pico/

  3. R. Banakar, S. Steinke, B.-S. Lee, M. Balakrishnan, P. Marwedel. Scratchpad memory: design alternative for cache on-chip memory in embedded systems. In CODES ’02 (2002), pp. 73–78

    Google Scholar 

  4. J. Bezivin. In Search of a Basic Principle for Model-Driven Engineering. UPGRADE–Eur. J. Inf. Prof. (2004)

    Google Scholar 

  5. A. Burns, B. Dobbing, G. Romanski, The ravenscar tasking profile for high integrity real-time programs. In Ada-Europe ’98 (Springer, Berlin, 1998) pp. 263–275

    Google Scholar 

  6. A. Burns, A.J. Wellings, Real-time systems and their programming languages (Addison-Wesley Longman Publishing Co., Inc., Boston, 1990)

    Google Scholar 

  7. K. Czarnecki, S. Helsen. Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), (2006)

    Google Scholar 

  8. EE Times. Under the Hood–Update: Apple iPhone 3G exposed, December (2008), http://www.eetimes.com/design/microwave-rf-design/4018424/Under-the-Hood-Update-Apple-iPhone-3G-exposed

  9. J. Eker, J. Janneck, E.A. Lee, J. Liu, X. Liu, J. Ludvig, S. Sachs, Y. Xiong, Taming heterogeneity—the Ptolemy approach. Proc. IEEE 91(1), 127–144 (2003)

    Article  Google Scholar 

  10. D.D. Gajski, J. Zhu, R. Domer, A. Gerstlauer, S. Zhao, SpecC: Specification language and design methodology (Kluwer Academic Publishers, Boston, 2000)

    Book  Google Scholar 

  11. R. Gonzalez, Xtensa: A configurable and extensible processor. Micro, IEEE 20(2), 60–70 (2000)

    Article  Google Scholar 

  12. J. Gosling, G. Bollella, The real-time specification for java (Addison-Wesley Longman Publishing Co., Inc., Boston, 2000)

    Google Scholar 

  13. I. Gray, N.C. Audsley, Developing predictable real-time embedded systems using AnvilJ. In Proceedings of The 18th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 2012) Beijing, China, April 17–19 (2012)

    Google Scholar 

  14. I. Gray, N. Audsley, Exposing non-standard architectures to embedded software using compile-time virtualisation. International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES ’09) 2009

    Google Scholar 

  15. I. Gray, N. Audsley, Supporting Islands of Coherency for highly-parallel embedded architectures using Compile-Time Virtualisation. In 13th International Workshop on Software and Compilers for Embedded Systems (SCOPES), 2010

    Google Scholar 

  16. N. Guan, M. Lv, W. Yi, G. Yu, WCET analysis with MRU caches: Challenging LRU for predictability. In Proceedings of the IEEE 18th Real-Time and Embedded Technology and Applications, Symposium (RTAS) 2012

    Google Scholar 

  17. S. Gupta, N. Dutt, R. Gupta, A. Nicolau, SPARK: a high-level synthesis framework for applying parallelizing compiler transformations. In Proceedings of 16th International Conference on, VLSI Design, pp. 461–466, Jan. 2003

    Google Scholar 

  18. J. Hutchinson, J. Whittle, M. Rouncefield, S. Kristoffersen, Empirical assessment of MDE in industry. In Proceedings of the 33rd International Conference on Software Engineering, ICSE ’11, ACM, New York, pp. 471–480 (2011)

    Google Scholar 

  19. Terracotta Inc., The Definitive Guide to Terracotta–Cluster the JVM for Spring, Hibernate and POJO Scalability (Apress, New York, 2008)

    Google Scholar 

  20. ITRS, International Technology Roadmap for Semiconductors, 2007 edn. (2007), http://www.itrs.net/

  21. F. Jouault, J. Bézivin, M. Barbero, Towards an advanced model-driven engineering toolbox (Innovations Syst. Softw, Eng, 2009)

    Google Scholar 

  22. R. Klefstad, M. Deshpande, C. O’Ryan, A. Corsaro, A.S. Krishna, S. Rao, K. Raman, The performance of ZEN: A real time CORBA ORB using real time Java (In Proceedings of Real-time and Embedded Distributed Object Computing Workshop, OMG, Sept, 2002)

    Google Scholar 

  23. L.R.R.F.P.D.S. Kolovos, Extensible platform for specification of integrated languages for model management (Epsilon) (2010), http://www.eclipse.org/gmt/epsilon

  24. J. Kwon, A. Wellings, S. King, Ravenscar-Java: A high integrity profile for real-time Java. In Joint ACM Java Grande/ISCOPE Conference (ACM Press, New York, 2002), pp. 131–140

    Google Scholar 

  25. P. Marwedel, Embedded System Design (Springer, New York, 2006)

    MATH  Google Scholar 

  26. T. Mattson, R.V. der Wijngaart, M. Riepen, T. Lehnig, P. Brett, W. Haas, P. Kennedy, J. Howard, S. Vangal, N. Borkar, G. Ruhl, S. Dighe, The 48-core SCC processor: the programmer’s view (Storage and Analysis (SC), In International Conference for High Performance Computing, Networking, 2010), p. 2010

    Google Scholar 

  27. Mentor Graphics. Catapult-C synthesis (2009), http://www.mentor.com/catapult

  28. Modeliosoft. Modelio—The open source modeling environment (2012), http://www.modeliosoft.org/

  29. P. Mohagheghi, V. Dehlen, Where Is the Proof?—A review of experiences from applying MDE, in industry, In Model Driven Architecture U Foundations and Applications, vol. 5095, Lecture Notes in Computer Science, ed. by I. Schieferdecker, A. Hartman (Springer, Berlin, 2008), pp. 432–443

    Google Scholar 

  30. Object Management Group. UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded Systems (2009), http://www.omgmarte.org/

  31. F. Pizlo, L. Ziarek, and J. Vitek, Real time Java on resource-constrained platforms with Fiji VM. In Proceedings of JTRES, JTRES ’09, ACM, New York, pp. 110–119 (2009)

    Google Scholar 

  32. A.L. Pope, The CORBA reference guide: understanding the Common Object Request Broker Architecture (Addison-Wesley Longman Publishing Co., Inc., Boston, 1998)

    Google Scholar 

  33. J. Reineke, D. Grund, C. Berg, R. Wilhelm, Timing predictability of cache replacement policies. Real-Time Syst. 37, 99–122 (2007). doi:10.1007/s11241-007-9032-3

    Article  MATH  Google Scholar 

  34. M. Rivas, M. González Harbour, MaRTE OS: An Ada Kernel for real-time embedded applications, in Reliable SoftwareTechnologies U Ada-Europe 2001, vol. 2043, ed. by D. Craeynest, A. Strohmeier (Springer, Berlin, 2001), pp. 305–316

    Chapter  Google Scholar 

  35. L.M. Rose, R.F. Paige, D.S. Kolovos, F.A. Polack. The Epsilon generation language. In ECMDA-FA ’08: Proceedings of the 4th European conference on Model Driven Architecture (Springer, Berlin, 2008), pp. 1–16

    Google Scholar 

  36. J.C.H. Roth, Digital systems design using VHDL (Pws Pub. Co., Boston, 1998)

    Google Scholar 

  37. D.C. Schmidt, D.L. Levine, S. Mungee, The design of the TAO real-time object request broker. Comput. Commun. 21(4), 294–324 (1998)

    Article  Google Scholar 

  38. Texas Instruments Inc. OMAP5430 mobile applications platform (2011), http://focus.ti.com/pdfs/wtbu/OMAP5_2011-7-13.pdf

  39. The Eclipse Foundation. Eclipse Java development tools (2011), http://www.eclipse.org/jdt/

  40. The MADES Consortium. The MADES Project (2011), http://www.mades-project.org/

  41. The Motor Industry Software Reliability Association. Guidelines for the Use of the C Language in Critical Systems. MISRA Ltd., 2004

    Google Scholar 

  42. The T-CREST Consortium. The T-CREST Project (2012), http://www.3sei.com/t-crest/

  43. T. Weilkiens, Systems engineering with SysML/UML: Modeling, analysis design (Morgan Kaufmann Publishers Inc., San Francisco, 2008)

    Google Scholar 

  44. D. Wentzlaff, P. Griffin, H. Hoffmann, L. Bao, B. Edwards, C. Ramey, M. Mattina, C.-C. Miao, J. Brown, A. Agarwal, On-chip interconnection architecture of the tile processor. Micro, IEEE 27, 15–31 (2007)

    Article  Google Scholar 

  45. D. Wiklund, D. Liu, SoCBUS: Switched Network on Chip for Hard Real Time Embedded Systems. In IPDPS ’03, p. 78.1 (2003)

    Google Scholar 

  46. Xilinx Corporation. Embedded System Tools Reference Guide—EDK 11.3.1. Xilinx Application, Notes, UG111 (2009)

    Google Scholar 

  47. Xilinx Corporation. Platform Studio and the Embedded Development Kit (EDK) (2012), http://www.xilinx.com/tools/platform.htm

  48. Xilinx Corporation. Virtex-5 FPGA Configuration User Guide. Xilinx User Guides, UG191 (2006)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Neil Audsley .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Audsley, N., Gray, I., Kolovos, D., Matragkas, N., Paige, R., Indrusiak, L.S. (2014). Automatic Development of Embedded Systems Using Model Driven Engineering and Compile-Time Virtualisation. In: Khan, M., Saeed, S., Darwish, A., Abraham, A. (eds) Embedded and Real Time System Development: A Software Engineering Perspective. Studies in Computational Intelligence, vol 520. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-40888-5_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-40888-5_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-40887-8

  • Online ISBN: 978-3-642-40888-5

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics