Abstract
In the HW/SW interface domain, specification of memory architecture and software-accessible hardware registers are both relevant for the implementation of hardware and the firmware running on it. Automated code generation of both HW and SW artifacts from a shared data source is a well-established method to ensure consistency. Metamodeling is a key technology to ease such code generation and to formalize the data structures target code is generated from. While this can be utilized for a wide range of automation and generation tasks, it is particularly useful for bridging the HW/SW design gap.
Metamodeling is the basis for the construction of large model-driven automation solutions that go far beyond simple code generation solutions. Based on the formalization metamodels provide, models can be incrementally transformed and combined to create more refined models for particular design tasks. IP-XACT and UML /SysML can be utilized within the scope of metamodeling . The utilization of these standards and the development of custom metamodels – targeted to specific design tasks – have proven to be highly successful and promise large potential for further productivity increase.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Abbreviations
- AHB:
-
Advanced High-performance Bus
- APB:
-
Advanced Peripheral Bus
- API:
-
Application Programming Interface
- AST:
-
Abstract Syntax Tree
- AXI:
-
Advanced eXtensible Interface
- BNF:
-
Backus-Naur Form
- CIM:
-
Computation Independent Model
- CPU:
-
Central Processing Unit
- DMA:
-
Direct Memory Access
- EBNF:
-
Extended Backus-Naur Form
- EDA:
-
Electronic Design Automation
- EMF:
-
Eclipse Modeling-Framework
- GUI:
-
Graphical User Interface
- HDL:
-
Hardware Description Language
- HLS:
-
High-Level Synthesis
- HTML:
-
Hypertext Markup Language
- HW:
-
Hardware
- IEEE:
-
Institute of Electrical and Electronics Engineers
- IP:
-
Intellectual Property
- JSON:
-
JavaScript Object Notation
- MDA:
-
Model-Driven Architecture
- MoC:
-
Model of Computation
- MOF:
-
Meta Object Facility
- OCL:
-
Object Constraint Language
- OMG:
-
Object Management Group
- PIM:
-
Platform Independent Model
- PSM:
-
Program State Machine
- RTL:
-
Register Transfer Level
- SoC:
-
System-on-Chip
- SPI:
-
Serial Peripheral Interface
- SW:
-
Software
- TLM:
-
Transaction-Level Model
- UML:
-
Unified Modeling Language
- VHDL:
-
VHSIC Hardware Description Language
- VHSIC:
-
Very High Speed Integrated Circuit
- XMI:
-
XML Metadata Interchange
- XML:
-
Extensible Markup Language
- XSD:
-
XML Schema
- XSLT:
-
Extensible Stylesheet Language Transformations
References
Bachrach J, Vo H, Richards B, Lee Y, Waterman A, Avizienis R, Wawrzynek J, Asanovic K (2012) Chisel: constructing hardware in a scala embedded language. In: DAC, pp 1216–1225
Bergé JM, Levia O, Rouillard J (eds) (1996) Meta-modeling – performance and information modeling. Kluwer Academic Publishers, Dordrecht
shan Chen PP (1976) The entity-relationship model: toward a unified view of data. ACM Trans Database Syst 1:9–36
Czarnecki K, Eisenecker U (eds) (2000) Generative programming: methods, tools, and applications. ACM Press/Addison-Wesley Publishing Co., New York
Ecker W (1998) Generative structural modeling using a VHDL pre-processor. In: Proceedings of the forum on design languages (FDL), Lausanne
Ecker W, Müller W, Domer R (eds) (2009) Hardware-dependent software: principles and practice. Springer, Berlin. http://opac.inria.fr/record=b1129256
Ecker W, Velten M, Zafari L, Goyal A (2014) The metamodeling approach to system level synthesis. In: Fettweis G, Nebel W (eds) DATE. European Design and Automation Association, pp 1–2
Ecker W, Velten M, Zafari L, Goyal A (2014) Metasynthesis for designing automotive SoCs. In: DAC. ACM, p 6. doi:10.1145/2593069.2602974
Eclipse Foundation (2016) Eclipse modeling framework. https://eclipse.org/modeling/emf
Eclipse Foundation (2016) ECORE relations. http://download.eclipse.org/modeling/emf/emf/javadoc/2.9.0/org/eclipse/emf/ecore/doc-files/EcoreRelations.gif
Eclipse Foundation (2016) Papyrus – modeling environment. https://eclipse.org/papyrus
Eker J, Janneck JW, Lee EA, Liu J, Liu X, Ludvig J, Neuendorffer S, Sachs S, Xiong Y (2003) Taming heterogeneity – the ptolemy approach. In: Proceedings of the IEEE, pp 127–144
Geisler NL (ed) (1999) Baker encyclopedia of Christian apologetics. Baker Books, Grand Rapids
Guimale C, Kahn H (1995) Information models of VHDL. In: Proceedings of the 32nd annual ACM/IEEE design automation conference
Guiney M, Leavitt E (2006) An introduction to openaccess: an open source data model and API for ic design. In: Proceedings of the 2006 Asia and South Pacific design automation conference. IEEE Press, pp 434–436
IEEE standard for IP-XACT, standard structure for packaging, integrating, and reusing IP within tool flows. doi:10.1109/ieeestd.2014.6898803. http://standards.ieee.org/getieee/1685/download/1685-2014.pdf
Infineon Technologies (2014) XMC1100 AA-step reference manual. http://www.infineon.com/dgdl/Infineon-xmc1100-AA_rm-UM-v01_01-EN.pdf?fileId=db3a30433cfb5caa013d1600856033eb
Kahn H (ed) (1995) EDIF version 350/400 and information modelling. EDIF Technical Centre, Manchester University
Kruijtzer W, Van der Wolf P, De Kock E, Stuyt J, Ecker W, Mayer A, Hustin S, Amerijckx C, De Paoli S, Vaumorin E (2008) Industrial IP integration flows based on IP-XACT standards. In: Design, automation and test in Europe (DATE 2008). IEEE, pp 32–37
MetaCase (2016) MetaCase. https://www.metacase.com/de/
Nikolic B (2015) Simpler, more efficient design. In: ESSCIRC conference 2015 – 41st European solid-state circuits conference, Graz, 14–18 Sept 2015, pp 20–25. doi:10.1109/ESSCIRC.2015.7313819
Object Management Group (2015) OMG meta object facility (MOF) core specification. http://www.omg.org/spec/MOF/2.5
OMG (2016) MDA – the architecture of choice for a changing world. http://www.omg.org/mda
Pagès B, de Freitas LG, Yeşilyurt H (2016) DoUML. https://github.com/DoUML/douml
Preis V, Henftling R, Schütz M, März-Rössel S (1995) A reuse scenario for the VHDL-based hardware design flow. In: Proceedings EURO-DAC’95, European design automation conference with EURO-VHDL, Brighton, 18–22 Sept 1995, pp 464–469. doi:10.1109/EURDAC.1995.527445
Schenck DA, Wilson PR (eds) (1993) Information modeling the EXPRESS way. Oxford University Press, New York
Schneider C (1997) A parallel/serial trade-off methodology for look-up table based decoders. In: DAC, pp 498–503. doi:10.1145/266021.266213
Shacham O, Azizi O, Wachs M, Richardson S, Horowitz M (2010) Rethinking digital design: why design must change. IEEE Micro 30(6):9–24
Smith J, Smith D (1977) Database abstractions: aggregation. ACM Trans Database Syst (TODS) 2(2):105–133
Steinberg D, Budinsky F, Paternostro M, Merks E (eds) (2008) EMF: eclipse modeling framework. Pearson Education
Tampere University of Technology (2016) Kactus2. http://funbase.cs.tut.fi/
Truyen F (2006) The fast guide to model driven architecture. http://www.omg.org/mda/mda_files/Cephas_MDA_Fast_Guide.pdf
Warmer J, Kleppe A (eds) (2003) The object constraint language: getting your models ready for MDA 2. Addison-Wesley Longman Publishing Co., Inc., Boston
Wikipedia (2016) Backus-naur form – Wikipedia, the free encyclopedia. https://en.wikipedia.org/wiki/Backus-Naur_Form?oldid=717943564#Further_examples
van der Wolf P (1994) Cad frameworks: principles and architecture. The Springer international series in engineering and computer science. Springer, Boston. https://books.google.de/books?id=R4BRAAAAMAAJ
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer Science+Business Media Dordrecht
About this entry
Cite this entry
Ecker, W., Schreiner, J. (2017). Metamodeling and Code Generation in the Hardware/Software Interface Domain. In: Ha, S., Teich, J. (eds) Handbook of Hardware/Software Codesign. Springer, Dordrecht. https://doi.org/10.1007/978-94-017-7267-9_32
Download citation
DOI: https://doi.org/10.1007/978-94-017-7267-9_32
Published:
Publisher Name: Springer, Dordrecht
Print ISBN: 978-94-017-7266-2
Online ISBN: 978-94-017-7267-9
eBook Packages: EngineeringReference Module Computer Science and Engineering