Template-based AADL automatic code generation

Kai HU, Zhangbo DUAN, Jiye WANG, Lingchao GAO, Lihong SHANG

PDF(660 KB)
PDF(660 KB)
Front. Comput. Sci. ›› 2019, Vol. 13 ›› Issue (4) : 698-714. DOI: 10.1007/s11704-017-6477-y
RESEARCH ARTICLE

Template-based AADL automatic code generation

Author information +
History +

Abstract

Embedded real-time systems employ a variety of operating system platforms. Consequently, for automatic code generation, considerable redevelopment is needed when the platform changes. This results in major challenges with respect to the automatic code generation process of the architecture analysis and design language (AADL). In this paper, we propose a method of template-based automatic code generation to address this issue. Templates are used as carriers of automatic code generation rules from AADL to the object platform. These templates can be easily modified for different platforms. Automatic code generation for different platforms can be accomplished by formulating the corresponding generation rules and transformation templates. We design a set of code generation templates from AADL to the object platform and develop an automatic code generation tool. Finally, we take a typical data processing unit (DPU) system as a case study to test the tool. It is demonstrated that the autogenerated codes can be compiled and executed successfully on the object platform.

Keywords

real-time system / template / formal methods / AADL / automatic code generation

Cite this article

Download citation ▾
Kai HU, Zhangbo DUAN, Jiye WANG, Lingchao GAO, Lihong SHANG. Template-based AADL automatic code generation. Front. Comput. Sci., 2019, 13(4): 698‒714 https://doi.org/10.1007/s11704-017-6477-y

References

[1]
Hu K, Zhang T, Yang Z, Tsai W T. Simulation of real-time systems with clock calculus. Simulation Modelling Practice & Theory, 2015, 51: 69–86
CrossRef Google scholar
[2]
Lewis B. Architecture based model driven software and system development for real-time embedded systems. Lecture Notes in Computer Science, 2004, 2941: 249–260
CrossRef Google scholar
[3]
Hu K, Lei L, Tsai W T. Multi-tenant Verification-as-a-Service (VaaS) in a cloud. Simulation Modelling Practice & Theory, 2016, 60: 122–143
CrossRef Google scholar
[4]
SAE AS5506. Architecture Analysis and Design Language (AADL). SAE International, 2005
[5]
SAE AS5506A. Architecture Analysis and Design Language (AADL) Standard, Version 2. SAE International, 2008
[6]
Hu K, Zhang T, Yang Z, Tsai W T. Exploring AADL verification tool through model transformation. Journal of Systems Architecture, 2015, 61(3–4): 141–156
CrossRef Google scholar
[7]
SAE AS5506 Annex: Behavior Specification v2.0. 2011
[8]
Franca R B, Bodeveix J P, Filali M, Rolland J F. The AADL behaviour annex – experiments and roadmap. In: Proceedings of the 12th IEEE International Conference on Engineering Complex Computer Systems. 2007, 377–382
CrossRef Google scholar
[9]
Hu K, Zhang T, Yang Z. Multi-threaded code generation from Signal program to OpenMP. Frontiers of Computer Science, 2013, 7(5): 617–626
CrossRef Google scholar
[10]
Lundqvist K, Asplund L, Mitchell S. A formal model of the Ada Ravenscar tasking profile; protected objects. In: Proceedings of the International Conference on Reliable Software Technologies. 1999, 12–25
CrossRef Google scholar
[11]
Brun M, Delatour J, Trinquet Y. Code generation from aadl to a realtime operating system: an experimentation feedback on the use of model transformation. In: Proceedings of the 13th IEEE International Conference on Engineering of Complex Computer Systems. 2008: 257–262
[12]
Dissaux P, Singhoff F. Stood and cheddar: AADL as a pivot language for analysing performances of real time architectures. In: Proceedings of the European Real Time System Conference. 2008
[13]
Tao Y. Model verification and code generation technology of AADL. Chengdu: University of Electronic Science and Technology of China, 2009
[14]
Varona-Gomez R, Villar E. AADL simulation and performance analysis in SystemC. In: Proceedings of the 14th IEEE International Conference on Engineering of Complex Computer Systems. 2009: 323–328
CrossRef Google scholar
[15]
Jahier E, Halbwachs N, Raymond P, Nicollin X, Lesens D. Virtual execution of AADL models via a translation into synchronous programs. In: Proceedings of the 7th ACM & IEEE International Conference on Embedded Software. 2007, 134–143
CrossRef Google scholar
[16]
Ouimet M, Lundqvist K, Nolin M. The timed abstract state machine language: an executable specification language for reactive real-time systems. In: Proceedings of the 15th International Conference on Real- Time and Network Systems. 2007
[17]
Börger E, Stärk R. Abstract State Machines: A Method for High-Level System Design and Analysis. Springer Science & Business Media, 2012
[18]
Yang Z, Hu K, Ma D, Pi L. Towards a formal semantics for the AADL behavior annex. In: Proceedings of the Conference on Design, Automation and Test in Europe. 2009, 1166–1171
[19]
Pi L, Yang Z, Bodeveix J P, Filali M, Hu K, Ma D. A comparative study of FIACRE and TASM to define AADL real time concepts. In: Proceedings of the 14th IEEE International Conference on Engineering of Complex Computer Systems. 2009, 347–352
CrossRef Google scholar
[20]
Pi L, Bodeveix J P, Filali M. A comparative study of different formalisms to define AADL data communication. Seminaire, 2009
[21]
Bodeveix J P, Chemouil D, Filali M, Strecker M. Towards formalising AADL in proof assistants. Electronic Notes in Theoretical Computer Science, 2005, 141(3): 153–169
CrossRef Google scholar
[22]
Filali-Amine M, Lawall J. Development of a synchronous subset of AADL. In: Proceedings of the International Conference on Abstract State Machines, Alloy, B and Z. 2010, 245–258
CrossRef Google scholar
[23]
Farail P, Gaufillet P, Canals A, Camus C L, Sciamma D, Michel P, Crégut X, Pantel M. The TOPCASED project: a toolkit in open source for critical aeronautic systems design. European Congress Embedded Real Time Software, 2006, 781(55–59): 82
[24]
Yang Z, Hu K, Ma D, Bodeveix J P, Pi L, Talpin J P. From AADL to timed abstract state machines: a verified model transformation. Journal of Systems and Software, 2014, 93: 42–68
CrossRef Google scholar

RIGHTS & PERMISSIONS

2018 Higher Education Press and Springer-Verlag GmbH Germany, part of Springer Nature
AI Summary AI Mindmap
PDF(660 KB)

Accesses

Citations

Detail

Sections
Recommended

/