Abstract
Embedded systems are increasingly complex, function-rich and required to perform tasks that are mission- or safety-critical. The use of models to specify the functional contents of the system and its execution platform is today the most promising solution to reduce the productivity gap and improve the quality, correctness and modularity of software subsystems and systems. Models allow to advance the analysis, validation, and verification of properties in the design flow, and enable the exploration and synthesis of cost-effective and provably correct solutions. While there is (relative) consensus on the use of models, competing (and not necessarily compatible) approaches are explored in the academic and industrial domain, each with its distinctive features, strengths, and weaknesses. Modeling languages (and the accompanying methodologies) are today roughly divided as belonging to the Model-Based Design (MBD) or Model-Driven Engineering (MDE) approach. Component-based development is a desirable paradigm that applies to both modeling styles. Research work tries to define (and possibly widen) the range of model properties that can be analyzed and demonstrated as correct, providing methods and tools to this purpose. Time properties are an important subset, since they apply to the majority of the complex and distributed systems in the automotive, avionics, and controls domains. A synthesis path, with the methods and tools to generate a (provably correct) software or hardware implementation of a model is a necessary complement to the use of an analyzable modeling language, not only to improve efficiency, but to avoid the introduction of unwanted errors when the model is refined into its implementation.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
The MathWorks Inc.: Simulink User’s Guide (2005). http://www.mathworks.com
Esterel Technologies: SCADE suite. http://www.esterel-technologies.com/products/scade-suite/
Andrade, H.A., Kovner, S.: Software synthesis from dataflow models for G and LabVIEW. In: Proceedings of the IEEE Asilomar Conference on Signals, Systems, and Computers, 1705–1709 (1998)
Modelica Association: Modelica and the modelica association. http://www.modelica.org/
Eker, J., Janneck, J.W., Lee, E.A., Liu, J., Liu, X., Ludvig, J., Neuendorffer, S., Sachs, S., Xiong, Y.: Taming heterogeneity-the Ptolemy approach. Proc. IEEE 91(1), 127–144 (2003)
Davare, A., Densmore, D., Meyerowitz, T., Pinto, A., Sangiovanni-Vincentelli, A., Yang, G., Zeng, H., Zhu, Q.: A next-generation design framework for platform-based design. DVCon, In (2007)
Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126(2), 183–235 (1994). http://dx.doi.org/10.1016/0304-3975(94)90010--8
Object Management Group: Omg model driven architecture. http://www.omg.org/mda/
Unified Modeling Language, 2.0. http://www.omg.org/uml
System Modeling Language. http://www.omg.org/sysml
Object Management Group: Concrete syntax for uml action language (action language for foundational uml - alf). http://www.omg.org/spec/ALF
Object Management Group: Semantics of a foundational subset for executable uml models (fuml). http://www.omg.org/spec/FUML
Object Management Group: UML profile for modeling and analysis of real-time and embedded systems (MARTE), version 1.1, formal/2011-06-02 (June 2011). http://www.omg.org/spec/MARTE/1.1/
Kienhuis, B., Deprettere, E.F., Wolf, P.v.d., Vissers, K.A.: A methodology to design programmable embedded systems–the y-chart approach. In: Embedded Processor Design Challenges: Systems, Architectures, Modeling, and Simulation–SAMOS, pp. 18–37. Springer-Verlag, London, UK, (2002)
Keutzer, K., Newton, A., Rabaey, J., Sangiovanni-Vincentelli, A.: System-level design: orthogonalization of concerns and platform-based design. Comput.-Aided Des. Integr. Circuits Syst., IEEE Trans. on 19(12), 1523–1543 (2000)
Mukerji, J., Miller, J.: Overview and guide to omg’s, architecture. http://www.omg.org/cgi-bin/doc?omg/03-06-01
Balarin, F., Watanabe, Y., Hsieh, H., Lavagno, L., Passerone, C., Sangiovanni-Vincentelli, A.L.: Metropolis: An integrated electronic system design environment. IEEE Comput. 36(4), 45–52 (2003)
Object Management Group: Home page. http://www.omg.org/
T., B.: Current trends in the design of automotive electronic systems. Proceedings of the Design Automation and Test in Europe Conference (2001)
AUTOSAR consortium: automotive open system architecture. http://www.autosar.org
Edwards, S., Lavagno, L., Lee, E.A., Sangiovanni-Vincentelli, A.: Design of embedded systems: Formal models, validation and synthesis. Proc. IEEE 85(3), 366–390 (1997)
Alur, R., Henzinger, T.A.: Logics and models of real time: A survey. Real-Time: Theory in Practice, REX Workshop, LNCS 600pp, 74–106 (1991)
Lee, E., Sangiovanni-Vincentelli, A.: A framework for comparing models of computation. Comput.-Aided Des. Integr. Circuits Syst., IEEE Trans. on 17(12), 1217–1229 (1998)
Benveniste, A., Caspi, P., Edwards, S.A., Halbwachs, N., Guernic, P.L., Robert, Simone, D.: The synchronous languages 12 years later. In: Proceedings of The IEEE, pp. 64–83 (2003)
Berry, G., Gonthier, G.: The esterel synchronous programming language: design, semantics, implementation. Sci. Comput. Program. 19(2), 87–152 (1992)
Boussinot, F., De Simone, R.: The esterel language. Proc. IEEE 79(9), 1293–1304 (1991)
Caspi, P., Pilaud, D., Halbwachs, N., Plaice, J.A.: Lustre: a declarative language for real-time programming. In: Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages, POPL ’87, pp. 178–188. ACM (1987)
Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous dataflow programming language lustre. In: Proceedings of the IEEE, pp. 1305–1320 (1991)
Harel, D.: Statecharts: A visual formalism for complex systems. Sci. Comput. Program. 8(3), 231–274 (1987)
Berthomieu, B., Diaz, M.: Modeling and verification of time dependent systems using time petri nets. Softw. Eng., IEEE Trans. 17(3), 259–273 (1991)
Yovine, S.: Kronos: A verification tool for real-time systems. (kronos user’s manual release 2.2). Int. J. Softw. Tools Technol. Transf. 1, 123–133 (1997)
Behrmann, G., David, A., Larsen, K.G.: A tutorial on uppaal. In: M. Bernardo, F. Corradini (eds.) Formal methods for the design of real-time systems: 4th International School on Formal Methods for the Design of Computer, Communication, and Software Systems, SFM-RT 2004, no. 3185 in LNCS, pp. 200–236. Springer-Verlag (2004)
Wozniak, E., Mraidha, C., Gerard, S., Terrier, F.: A guidance framework for the generation of implementation models in the automotive domain. In: Software Engineering and Advanced Applications (SEAA), 2011 37th EUROMICRO Conference on, pp. 468–476 (2011)
Koudri, A., Cuccuru, A., Gerard, S., Terrier, F.: Designing heterogeneous component based systems: evaluation of MARTE standard and enhancement proposal. In: Model Driven Engineering Languages and Systems, pp. 243–257 (2011)
EAST-ADL Overview. http://www.atesst.org/home/liblocal/docs/ConceptPresentations/01_EAST-ADL_OverviewandStructure.pdf
Department of Defense: DoD architecture framework v2.02. http://dodcio.defense.gov/Portals/0/Documents/DODAF/DoDAF_v2-02_web.pdf
Vanderperren, Y., Dehaene, W.: From uml/sysml to matlab/simulink: current state and future perspectives. In: Proceedings of the conference on Design, automation and test in Europe, DATE ’06. Leuven, Belgium (2006)
Berry, G., Gonthier, G.: The synchronous programming language esterel: Design, semantics, implementation. Sci. Comput. Program. 19(2), 87–152 (1992)
Ledeczi, A., Maroti, M., Bakay, A., Karsai, G., Garrett, J., Thomason, C., Nordstrom, G., Sprinkle, J., Volgyesi, P.: The generic modeling environment. Workshop on Intelligent Signal Processing, In (2001)
Sangiovanni-Vincentelli, A., Shukla, S., Sztipanovits, J., Yang, G., Mathaikutty, D.: Metamodeling: An emerging representation paradigm for system-level design. Special Section on Meta-Modeling, IEEE Des. Test 26(3), 54–69 (2009)
Alfaro, L., Henzinger, T.A.: Interface automata. In: Proceedings of ESEC/SIGSOFT FSE’01, pp. 109–120. ACM Press (2001)
Lee, E., Sangiovanni-Vincentelli, A.: A unified framework for comparing models of computation. In. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 17, 1217–1229 (1998)
Liu, C.L., Layland, J.W.: Scheduling algorithms for multiprogramming in a hard-real-time environment. J. ACM 20, 46–61 (1973)
Lehoczky, J.P., Sha, L., Ding, Y.: The rate-monotonic scheduling algorithm: exact characterization and average case behavior. In: Proceedings of the 10th IEEE RTSS, pp. 166–171. Santa Monica, CA USA (1989)
Benveniste, A., Caillaud, B., Carloni, L.P., Caspi, P., Sangiovanni-Vincentelli, A.L., Tripakis, S.: Communication by sampling in time-sensitive distributed systems. In: EMSOFT, pp. 152–160 (2006)
Zheng, W., Natale, M.D., Pinello, C., Giusto, P., Sangiovanni-Vincentelli, A.: Synthesis of task and message activation models in real-time distributed automotive systems. In: DATE’07: Proceedings of the Design, Automation and Test in Europe Conference. Nice, France (2007)
Davare, A., Zhu, Q., Natale, M.D., Pinello, C., Kanajan, S., Sangiovanni-Vincentelli, A.: Period optimization for hard real-time distributed automotive systems. In: DAC ’07: Proceedings of the 44th annual conference on Design automation, pp. 278–283. ACM, New York, NY, USA (2007) http://doi.acm.org/10.1145/1278480.1278553
Tindell, K.W.: Holistic schedulability analysis for distributed hard real-time systems. Tech. Rep. YCS 197, Department of Computer Science, University of York (1993)
Palencia, J., Harbour, M.G.: Schedulability analysis for tasks with static and dynamic offsets. In: 19th IEEE Real-Time Systems Symposium. Madrid, Spain (1998)
Di Natale, M., Zheng, W., Pinello, C., Giusto, P., Sangiovanni Vincentelli, A.: Optimizing end-to-end latencies by adaptation of the activation events in distributed automotive systems. In: Proceedings of the IEEE Real-Time Application Symposium. Bellevue, WA (2007)
Hamann, A., Henia, R., Jerzak, M., Racu, R., Richter, K., Ernst, R.: SymTA/S symbolic timing analysis for systems. available at http://www.symta.org (2004)
RTCA: Do-178b: Software considerations in airborne systems and equipment certification. http://www.rtca.org/
ISO: Iso 26262 road vehicles-functional safety. http://www.iso.org/
Benveniste, A., Caspi, P., Guernic, P.L., Marchand, H., Talpin, J.P., Tripakis, S.: A protocol for loosely time-triggered architectures. In: Proceedings of the Second International Conference on Embedded Software, EMSOFT ’02, pp. 252–265. Springer-Verlag, London, UK, (2002)
Sangiovanni-Vincentelli, A., Damm, W., Passerone, R.: Taming Dr. Frankenstein: Contract-based design for cyber-physical systems. Eur. J. Control 18(3), 217–238 (2012). doi:10.3166/EJC.18.217-238
B., M.: An overview of Eiffel. In: The Handbook of Programming Languages, vol. 1, Object-Oriented Languages, ed. Peter H. Salus, Macmillan Technical Publishing (1998)
Audsley, N.C., Burns, A., Davis, R., Tindell, K.W., Wellings, A.J.: Fixed priority pre-emptive scheduling: an historical prespective. Real-Time Syst. 8, 173–198 (1995)
George, L., Rivierre, N., Spuri, M.: Preemptive and Non-Preemptive Real-Time UniProcessor Scheduling. Research Report RR-2966, INRIA (1996)
Mok, A.K.: Fundamental design problems of distributed systems for the hard-real-time environment. Ph.d. thesis, Cambridge, MA, USA (1983)
Hamann, A., Racu, R., Ernst, R.: Multi-dimensional robustness optimization in heterogeneous distributed embedded systems. In: Proceedings of the 13th IEEE Real Time and Embedded Technology and Applications Symposium, RTAS ’07, pp. 269–280. IEEE Computer Society, Washington, DC, USA (2007)
Ghattas, R., Dean, A.G.: Preemption threshold scheduling: Stack optimality, enhancements and analysis. In: Proceedings of the 13th IEEE Real Time and Embedded Technology and Applications Symposium, RTAS ’07, pp. 147–157. IEEE Computer Society, Washington, DC, USA (2007)
Cervin, A., Henriksson, D., Lincoln, B., Eker, J., Arzen, K.: How does control timing affect performance? analysis and simulation of timing using jitterbug and truetime. Control Syst., IEEE 23(3), 16–30 (2003)
Velasco, M., Martí, P., Bini, E.: Control-driven tasks: Modeling and analysis. In: Proceedings of the 2008 Real-Time Systems Symposium, RTSS ’08, pp. 280–290. IEEE Computer Society, Washington, DC, USA (2008)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer Science+Business Media New York
About this chapter
Cite this chapter
Sangiovanni-Vincentelli, A., Zeng, H., Di Natale, M., Marwedel, P. (2014). Introduction: Modeling, Analysis and Synthesis of Embedded Software and Systems. In: Sangiovanni-Vincentelli, A., Zeng, H., Di Natale, M., Marwedel, P. (eds) Embedded Systems Development. Embedded Systems, vol 20. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-3879-3_1
Download citation
DOI: https://doi.org/10.1007/978-1-4614-3879-3_1
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-3878-6
Online ISBN: 978-1-4614-3879-3
eBook Packages: EngineeringEngineering (R0)