A SystemC Extension for Enabling Tighter Integration of IP-XACT Platforms with Virtual Prototypes

Size: px
Start display at page:

Download "A SystemC Extension for Enabling Tighter Integration of IP-XACT Platforms with Virtual Prototypes"

Transcription

1 A SystemC Extension for Enabling Tighter Integration of IP-XACT Platforms with Virtual Prototypes Guillaume Godet-Bar, Magillem Design Services, Paris, France Jean-Michel Fernandez, Magillem Design Services, Paris, France Abstract The design possibilities offered by IoT devices in an ever-expanding market require ever-shorter virtual prototyping iteration cycles. In this context, generating at least the SystemC platform s structure, from an IP- XACT description, is a key factor for improving the iteration turnaround time. However, critical constraints such as field access type or bit width, and more generally the documentation of platform elements, are conventionally absent from the development environment. We propose in this paper a configurable SystemC extension that simplifies the syntax for expressing register and bitfield accesses, born from the integration of Magillem s Sequence Editor (MSE) with its virtual prototyping environment X-Spec. We describe in this paper how an Analog-to-Digital Converter model provided by the French Alternative Energies and Atomic Energy Commission (CEA) was re-implemented using our proposed SystemC extension. This implementation is compared to a more classical approach based on standard SystemC code. Keywords SystemC, Virtual Hardware Prototyping, IP-XACT, code generation I. INTRODUCTION Introducing a virtual hardware prototyping phase in the overall Hardware/Software prototyping flow of electronic systems is increasingly becoming a compulsory step for smart IoT systems that face short time-tomarket (TTM) constraints. Virtual hardware prototypes enable early system integration tests, as well as to introduce early embedded software development. However, this approach is impeded by the indispensable maintenance of careful synchronizations between the IP-XACT specification (when it exists), the SystemC prototype, the RTL implementation and its documentation. To this extent, what would at first seem like a major TTM reduction asset often becomes a painful development liability. In order to alleviate this problem, Magillem has recently introduced X-Spec, a virtual hardware prototyping solution based on the IP-XACT format [1]. While the use of this standard enables deploying a vendor neutral flow, it also provides a synchronization point for code as well as for documentation [2]. From individual IP descriptions to full systems, X-Spec is able to generate SystemC structures, directly compile them together with the platform s software application and simulate the resulting package. The prototyped IP s generated SystemC code provides access (accounting for restrictions captured in the IP- XACT description) to the IP s registers and bitfields, and designers may extend or replace this default behavior using a callback-based mechanism. In this paper, we describe how we augmented this mechanism, which initially relied on standard SystemC code, by extending the SystemC semantics for simplifying the expression of register accesses, and by extending eclipse s CDT [3] for keeping these register accesses synchronized with the IP-XACT description and using this description as an inline developer documentation. This system is part of the Magillem Sequence Editor (MSE) technology, which is also used in an embedded software development context. We provide in the next section an overview of comparable work. Section III details the syntax and semantics of our SystemC extension, while Section IV presents the eclipse s CDT extension that supports our SystemC extension. Finally, we show in Section V how we re-implemented an Analog-to-Digital Converter model provided by the French Alternative Energies and Atomic Energy Commission (CEA) using this approach. 1

2 II. RELATED WORK The integration of structural models such as UML [4], UML profiles such as MARTE [5][6] or IP-XACT [1] into design flows is not a new practice. Most approaches rely on generating compilable code [7] or configuration files [8], thereby separating the design phase where a high-level description is organized and defined from a phase where actually compilable code (or, more generally data formats that fit in the standard design flow tooling) is generated. In this context, any change to the higher level model (in the Model-Driven Engineering sense [9]) requires re-generating the compilable code. III. MSE SYSTEMC EXTENSION We discuss in this section the approach we adopted for specifying a SystemC extension for simplifying and clarifying the register and bitfield access syntax, before we present the syntax and semantics of our extension. A. Approach Our SystemC extension s goal is to be as minimal as possible in terms of divergence from plain SystemC. Therefore we did not introduce new keywords nor unusual syntactical elements. It is based instead on the injection of referenceable symbols extracted from the IP-XACT description into the SystemC namespace, as described below. B. SystemC extension syntax and semantics Our MSE SystemC extension defines a simple access syntax for the IP s registers and bitfields, using a simple dot notation: register and bitfield references are expressed by prefixing their IP-XACT spirit:name attribute with that of their containers, recursively up to the memory map level (non-inclusive), joined by a dot (.) character, as presented in Figure 1. Read operations from registers or bitfields are simply expressed by referencing the read register or bitfield in the right-hand side of the assignment expression. Write operations to registers or bitfields are expressed by referencing the target register or bitfield in the left-hand side of the assignment expression. Figure 1 Sample memory map and register operations using the MSE SystemC extension Multi-bitfield read (ie, simultaneous accesses to multiple bitfield values from a single register using a single read) operations or multi-bitfield write (ie, simultaneous accesses to multiple bitfield values from a single register using a single read, followed by a single write) operations are expressed by separating the simultaneous assignments by commas (Figure 2). 2

3 Figure 2 Multi-bitfield read and write operation examples The multi-bitfield read and write operations are associated with two constraints: all the referenced bitfields must be contained in the same register (in order to follow the single read, followed by a single write requirement), and all the referenced bitfields must be used for the same operation type (ie, only read operations or only write operations, though in the latter case the operation semantics allow reading from another bitfield from the same register). These constraints, as well as the translation of register and bitfield accesses into compilable code, are handled through the eclipse CDT integration described in the following Section. IV. ECLIPSE CDT INTEGRATION In this section, we detail how the MSE SystemC extension described previously was integrated into eclipse s CDT, and how environment s code editing tools such as tooltips and static checkers were extended to support the capture of register and bitfield accesses. Then, we present the code generation phase that converts this semiabstract code into compilable standard SystemC code. A. Editor support In the context of our X-Spec solution, the generated virtual hardware prototype s SystemC code is organized into a customized eclipse CDT C++ project, which includes a reference to the IP-XACT component description the virtual hardware prototype code is based on. In order to distinguish plain SystemC files from the ones using our MSE extension for register and bitfield access, we ve introduced arbitrary.mhpp and.mpp file extensions. Whenever a file bearing an.mhpp or.mpp extension is loaded, our eclipse CDT extension injects all the associated IP-XACT component s registers, bitfields, register files and enumerators into the CDT s source parser, as so-called platform object bindings. Once assimilated by the CDT environment, the syntax described in the previous section may be used for describing register and bitfield accesses in SystemC. However, beyond reference resolution, this integration also allows extracting IP-XACT data (register width, bitfield access types, offsets etc.) as tooltips whenever a component item is hovered over in the CDT editor. Since the IP-XACT component also includes references to the IP s documentation, the latter is also extracted in order to provide the user with what is effectively a live technical datasheet. Additionally, we leveraged eclipse CDT s code analysis framework (Codan) to implement static checks against the constraints defined above for multi-bitfield operations, and more generally to verify the consistency of register and bitfield authorized hardware access types with the assignments effectively implemented by the designer. B. Code generation While our MSE SystemC extension uses standard SystemC syntax, and while the platform object bindings it relies on are resolved by eclipse s CDT customization, the code thus produced is not directly compilable: by producing this environment, we ve introduced an indirection between register access declarations and their actual implementation. This indirection is resolved by a so-called register operation generator, which transforms each expression that involves platform object bindings into a compilable C++ code fragment. This tranformation takes as an input: 1. the referenced platform object binding s structural data (offset, width); 2. the expression s context (as extracted from the source file s abstract syntax tree (AST), such as whether the expression is an assignment, whether the platform object reference belongs to the lefthand side or to the right-hand side of this assignment); 3

4 3. the SystemC host framework s constraints for emitting register and bitfield accesses (X-Spec in this case, which requires referencing the SystemC module s base class, as well as an automatically generated internal class that emulates the component s memory maps). We demonstrate in the next section how this integration may be achieved. V. IMPLEMENTATION OF AN ANALOG-TO-DIGITAL CONVERTER VIRTUAL HARDWARE PROTOTYPE Our proposed MSE SystemC extension and its development environment were put to use in the larger context of a collaboration with the French Alternative Energies and Atomic Energy Commission (CEA), in which we reimplemented an Analog-to-Digital Converter (ADC) model provided by our partner, on the basis of an Atmel design. The ADC is implanted in a platform that merges analog data from three CEA SystemC-AMS sensor models. It is connected to an Imperas multicore processor model through an ST interconnect model, as shown in Figure 3. Figure 3 Integration of the ADC component in a Virtual Prototyping platform The ADC virtual hardware prototype was implemented by automatically generating its structural code with X- Spec, then implementing its behavioral code using our MSE SystemC extension. The generated SystemC structural code is composed of a base class for describing the IP s structure and registers, and an extended class that inherits from the latter. This generated SystemC code also provides a default read and write behavior for registers and bitfields, thus allowing this default hardware prototype to be both compilable and executable out of the box. The generated module s extending class may be modified by the user for customizing this default behavior, while the base class is meant to be left unmodified. In X-Spec the behavioral code is defined as a set of callbacks bound to register accesses. Callbacks may be configured to be triggered by reads and/or writes. The behavioral code may be configured to execute before, instead of, or after the default register access. Figure 4 shows such a callback implementation, in which two bitfields from the ADC s status register are cleared whenever the same status register is read. The inline documentation tooltip provides the necessary details for those constraints, thus greatly facilitating the implementation effort. Figure 4 Implementation of a callback method using the MSE SystemC extension 4

5 As detailed in the previous section, the code generation phase that converts the MSE SystemC extension code presented above into compilable SystemC code integrates three types of input. In the context of the ADC testcase, these were: 1. The IP-XACT description of the ADC component, 2. The context of every expression in which an ADC register or bitfield platform object binding was used. According to Figure 4, this would be the multi-bitfield write operation defined on l. 6, and the bitfield write operation defined on l The X-Spec constraints for implementing register access code, which include identifying the SystemC class that emulates the ADC s memory map (regs_memorymap), and the pointer to the context class dvk_tlm_register_bank::tlm_register_context. Figure 5 illustrates the result of the code generation phase: in particular, the multi-bitfield write operation is converted as a single register operation, with the combination of bitfield offsets and masks extracted from the ADC component s description, while the single bitfield write operation is converted as a simpler mask and shift combination. Figure 5 Generated SystemC code of the callback method Thanks to the combination of Magillem X-Spec solution with the MSE SystemC extension and integration into eclipse s CDT, implementing the CEA s ADC model was orders of magnitude simpler than with usual, unaugmented solutions. VI. CONCLUSION Working with synchronized documentation and implementation models is a key factor for pushing virtual hardware prototyping practices to a state where it is both sustainable in terms of development effort and efficient in terms of improving time-to-market. We have presented in this paper an extension of the SystemC standard that defines a simple register access syntax, and enables Virtual Prototyping tools such as Magillem s X-Spec to create and maintain a strong development-time link between the virtual hardware prototype s behavioral code and the target component s IP-XACT description. As the latter is also a synchronization point for the platform s documentation in X-Spec, this enables our integration of the MSE SystemC extension into eclipse s CDT to provide what is effectively an inlined technical datasheet. Our future work in this domain will bring the same type of extension to the C language for producing a Magillem Sequence Editor for embedded software development. 5

6 VII. REFERENCES [1] IEEE Standard for IP-XACT, Standard Structure for Packaging, Integrating, and Reusing IP within Tool Flows, [2] Magillem X-Spec, [3] Eclipse CDT (C/C++ Development Tooling), [4] OMG Unified Modeling Language 2.5, [5] UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded Systems, [6] F. Herrera, H. Posadas, E. Villar, and D. Calvo. Enhanced IP-XACT Platform Descriptions for Automatic Generation from UMLth MARTE of Fast Performance Models for DSE, Proceedings of the 15 Euromicro Conference on Digital System Design (DSD), [7] E. Riccobene, P. Scandurra, S. Bocchio, and L. Mantellini, SystemC/C-Based Model-Driven Design for Embedded Systems, ACM Transactions on Embedded Computing Systems, vol. 8, [8] E. de Kock, J. Verhaegh, and S. Amougou, A configurable test infrastructure using a mixed-language and mixed-level IP integration IP-XACT flow, Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, [9] F. Jouault, J. Bézivin, and M. Barbero, Towards an Advanced Model-driven Engineering Toolbox, Innovations in Systems and Software Engineering, vol. 5,

Model-Based Social Networking Over Femtocell Environments

Model-Based Social Networking Over Femtocell Environments Proc. of World Cong. on Multimedia and Computer Science Model-Based Social Networking Over Femtocell Environments 1 Hajer Berhouma, 2 Kaouthar Sethom Ben Reguiga 1 ESPRIT, Institute of Engineering, Tunis,

More information

The Automated Analysis of Header Files for Support of the Standardization Process

The Automated Analysis of Header Files for Support of the Standardization Process The Automated Analysis of Header Files for Support of the Standardization Process Eugene Novikov ISP RAS joker@ispras.ru Denis Silakov ISP RAS silakov@ispras.ru Abstract This paper considers the method

More information

Programming Languages Third Edition. Chapter 7 Basic Semantics

Programming Languages Third Edition. Chapter 7 Basic Semantics Programming Languages Third Edition Chapter 7 Basic Semantics Objectives Understand attributes, binding, and semantic functions Understand declarations, blocks, and scope Learn how to construct a symbol

More information

Code Generation for QEMU-SystemC Cosimulation from SysML

Code Generation for QEMU-SystemC Cosimulation from SysML Code Generation for QEMU- Cosimulation from SysML Da He, Fabian Mischkalla, Wolfgang Mueller University of Paderborn/C-Lab, Fuerstenallee 11, 33102 Paderborn, Germany {dahe, fabianm, wolfgang}@c-lab.de

More information

COP4020 Programming Languages. Compilers and Interpreters Robert van Engelen & Chris Lacher

COP4020 Programming Languages. Compilers and Interpreters Robert van Engelen & Chris Lacher COP4020 ming Languages Compilers and Interpreters Robert van Engelen & Chris Lacher Overview Common compiler and interpreter configurations Virtual machines Integrated development environments Compiler

More information

A MDD Methodology for Specification of Embedded Systems and Automatic Generation of Fast Configurable and Executable Performance Models

A MDD Methodology for Specification of Embedded Systems and Automatic Generation of Fast Configurable and Executable Performance Models A MDD Methodology for Specification of Embedded Systems and Automatic Generation of Fast Configurable and Executable Performance Models Int. Conf. on HW/SW codesign and HW synthesis (CODES-ISSS 2012) Embedded

More information

Implementation of F# language support in JetBrains Rider IDE

Implementation of F# language support in JetBrains Rider IDE SAINT-PETERSBURG STATE UNIVERSITY Software Engineering Evgeniy Auduchinok Implementation of F# language support in JetBrains Rider IDE Graduation Thesis Scientific supervisor: Senior lecturer Iakov Kirilenko

More information

A Solver-Independent Platform for Modeling Constrained Objects Involving Discrete and Continuous Domains

A Solver-Independent Platform for Modeling Constrained Objects Involving Discrete and Continuous Domains A Solver-Independent Platform for Modeling Constrained Objects Involving Discrete and Continuous Domains Ricardo Soto 1,2 and Laurent Granvilliers 1 1 LINA, CNRS, Université de Nantes, France 2 Escuela

More information

1 Executive Overview The Benefits and Objectives of BPDM

1 Executive Overview The Benefits and Objectives of BPDM 1 Executive Overview The Benefits and Objectives of BPDM This is an excerpt from the Final Submission BPDM document posted to OMG members on November 13 th 2006. The full version of the specification will

More information

An Implementation of the Behavior Annex in the AADL-toolset Osate2

An Implementation of the Behavior Annex in the AADL-toolset Osate2 2011 16th IEEE International Conference on Engineering of Complex Computer Systems An Implementation of the Behavior Annex in the AADL-toolset Osate2 Gilles Lasnier, Laurent Pautet Inst. TELECOM - TELECOM

More information

with openarchitectureware

with openarchitectureware Model-Driven Development with openarchitectureware Markus Völter voelter@acm.orgorg www.voelter.de Sven Efftinge sven@efftinge.de www.efftinge.de Bernd Kolb bernd@kolbware.de www.kolbware.de 2006-7 Völter,

More information

Oracle Application Development Framework Overview

Oracle Application Development Framework Overview An Oracle White Paper July 2009 Oracle Application Development Framework Overview Introduction... 1 Oracle ADF Making Java EE Development Simpler... 2 THE ORACLE ADF ARCHITECTURE... 3 The Business Services

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages

More information

Sequence Diagram Generation with Model Transformation Technology

Sequence Diagram Generation with Model Transformation Technology , March 12-14, 2014, Hong Kong Sequence Diagram Generation with Model Transformation Technology Photchana Sawprakhon, Yachai Limpiyakorn Abstract Creating Sequence diagrams with UML tools can be incomplete,

More information

G Programming Languages Spring 2010 Lecture 4. Robert Grimm, New York University

G Programming Languages Spring 2010 Lecture 4. Robert Grimm, New York University G22.2110-001 Programming Languages Spring 2010 Lecture 4 Robert Grimm, New York University 1 Review Last week Control Structures Selection Loops 2 Outline Subprograms Calling Sequences Parameter Passing

More information

Design Compiler Graphical Create a Better Starting Point for Faster Physical Implementation

Design Compiler Graphical Create a Better Starting Point for Faster Physical Implementation Datasheet Create a Better Starting Point for Faster Physical Implementation Overview Continuing the trend of delivering innovative synthesis technology, Design Compiler Graphical streamlines the flow for

More information

G Programming Languages - Fall 2012

G Programming Languages - Fall 2012 G22.2110-003 Programming Languages - Fall 2012 Lecture 4 Thomas Wies New York University Review Last week Control Structures Selection Loops Adding Invariants Outline Subprograms Calling Sequences Parameter

More information

A conceptual framework for building good DSLs. Markus Voelter independent/itemis

A conceptual framework for building good DSLs. Markus Voelter independent/itemis DSL Design A conceptual framework for building good DSLs Markus Voelter independent/itemis voelter@acm.org www.voelter.de voelterblog.blogspot.de @markusvoelter +Markus Voelter based on material from a

More information

21ST century enterprise. HCL Technologies Presents. Roadmap for Data Center Transformation

21ST century enterprise. HCL Technologies Presents. Roadmap for Data Center Transformation 21ST century enterprise HCL Technologies Presents Roadmap for Data Center Transformation june 2016 21st Century Impact on Data Centers The rising wave of digitalization has changed the way IT impacts business.

More information

A number of optimizations are already in use by the majority of companies in industry, notably:

A number of optimizations are already in use by the majority of companies in industry, notably: 1 Abstract Mechatronics products contain significant amounts of software. Most advances in embedded software development focus on specific phases of the development process. However, very little emphasis

More information

10 th AUTOSAR Open Conference

10 th AUTOSAR Open Conference 10 th AUTOSAR Open Conference Ravi Akella, Software Researcher Akihito Iwai, Director Silicon Valley Innovation Center DENSO International America, Inc. Integrating an actor based connected car platform

More information

Parley: Federated Virtual Machines

Parley: Federated Virtual Machines 1 IBM Research Parley: Federated Virtual Machines Perry Cheng, Dave Grove, Martin Hirzel, Rob O Callahan and Nikhil Swamy VEE Workshop September 2004 2002 IBM Corporation What is Parley? Motivation Virtual

More information

Single-pass Static Semantic Check for Efficient Translation in YAPL

Single-pass Static Semantic Check for Efficient Translation in YAPL Single-pass Static Semantic Check for Efficient Translation in YAPL Zafiris Karaiskos, Panajotis Katsaros and Constantine Lazos Department of Informatics, Aristotle University Thessaloniki, 54124, Greece

More information

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to UML Davide Rossi Dipartimento di Informatica Università di Bologna Modeling A model is an (abstract) representation

More information

News in RSA-RTE 10.1 updated for sprint Mattias Mohlin, March 2017

News in RSA-RTE 10.1 updated for sprint Mattias Mohlin, March 2017 News in RSA-RTE 10.1 updated for sprint 2017.10 Mattias Mohlin, March 2017 Overview Now based on Eclipse Neon-1 (4.6.1) Many general improvements since Eclipse Mars Note: Neon-2 (4.6.2) is not yet supported!

More information

Choosing IP-XACT IEEE 1685 standard as a unified description for timing and power performance estimations in virtual platforms platforms

Choosing IP-XACT IEEE 1685 standard as a unified description for timing and power performance estimations in virtual platforms platforms hoosing IP-XAT IEEE 1685 standard as a unified description for timing and power performance estimations in virtual platforms platforms Emmanuel Vaumorin (Magillem Design Services) Motivation New needs

More information

History of Compilers The term

History of Compilers The term History of Compilers The term compiler was coined in the early 1950s by Grace Murray Hopper. Translation was viewed as the compilation of a sequence of machine-language subprograms selected from a library.

More information

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE

METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE UDC:681.324 Review paper METADATA INTERCHANGE IN SERVICE BASED ARCHITECTURE Alma Butkovi Tomac Nagravision Kudelski group, Cheseaux / Lausanne alma.butkovictomac@nagra.com Dražen Tomac Cambridge Technology

More information

Model driven Engineering & Model driven Architecture

Model driven Engineering & Model driven Architecture Model driven Engineering & Model driven Architecture Prof. Dr. Mark van den Brand Software Engineering and Technology Faculteit Wiskunde en Informatica Technische Universiteit Eindhoven Model driven software

More information

Abstraction Layers for Hardware Design

Abstraction Layers for Hardware Design SYSTEMC Slide -1 - Abstraction Layers for Hardware Design TRANSACTION-LEVEL MODELS (TLM) TLMs have a common feature: they implement communication among processes via function calls! Slide -2 - Abstraction

More information

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis.

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis. SOFTWARE ENGINEERING UML FUNDAMENTALS Saulius Ragaišis saulius.ragaisis@mif.vu.lt Information source Slides are prepared on the basis of Bernd Oestereich, Developing Software with UML: Object- Oriented

More information

Papyrus: Advent of an Open Source IME at Eclipse (Redux)

Papyrus: Advent of an Open Source IME at Eclipse (Redux) Papyrus: Advent of an Open Source IME at Eclipse (Redux) Kenn Hussey Eclipse Modeling Day, Toronto November 18, 2009 A Perfect Storm for Tools Core technologies like MOF and UML are evolving Microsoft

More information

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Compiler Design

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Compiler Design i About the Tutorial A compiler translates the codes written in one language to some other language without changing the meaning of the program. It is also expected that a compiler should make the target

More information

Introduction to SystemC

Introduction to SystemC Introduction to SystemC Damien Hubaux - CETIC Outline?? A language A C++ library February 12, 2004 SystemC, an alternative for system modeling and synthesis? 2 Why SystemC? Needs Increasing complexity,

More information

technical memo Physical Mark-Up Language Update abstract Christian Floerkemeier & Robin Koh

technical memo Physical Mark-Up Language Update abstract Christian Floerkemeier & Robin Koh technical memo Physical Mark-Up Language Update Christian Floerkemeier & Robin Koh auto-id center massachusetts institute of technology, 77 massachusetts avenue, bldg 3-449, cambridge, ma 02139-4307, usa

More information

Inheritance (Chapter 7)

Inheritance (Chapter 7) Inheritance (Chapter 7) Prof. Dr. Wolfgang Pree Department of Computer Science University of Salzburg cs.uni-salzburg.at Inheritance the soup of the day?! Inheritance combines three aspects: inheritance

More information

D75AW. Delta ABAP Workbench SAP NetWeaver 7.0 to SAP NetWeaver 7.51 COURSE OUTLINE. Course Version: 18 Course Duration:

D75AW. Delta ABAP Workbench SAP NetWeaver 7.0 to SAP NetWeaver 7.51 COURSE OUTLINE. Course Version: 18 Course Duration: D75AW Delta ABAP Workbench SAP NetWeaver 7.0 to SAP NetWeaver 7.51. COURSE OUTLINE Course Version: 18 Course Duration: SAP Copyrights and Trademarks 2018 SAP SE or an SAP affiliate company. All rights

More information

Compositional Model Based Software Development

Compositional Model Based Software Development Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability

More information

ModelicaML: Getting Started Issue April 2012

ModelicaML: Getting Started Issue April 2012 ModelicaML: Getting Started Issue 1.6.5 13. April 2012 Wladimir Schamai EADS Innovation Works (Hamburg, Germany) Linkoping University (Linkoping, Sweden) Abstract: This document provides a short introduction

More information

Towards an automatic co-generator for manycores. architecture and runtime: STHORM case-study

Towards an automatic co-generator for manycores. architecture and runtime: STHORM case-study Procedia Computer Science Towards an automatic co-generator for manycores Volume 51, 2015, Pages 2809 2813 architecture and runtime: STHORM case-study ICCS 2015 International Conference On Computational

More information

A Role-based Use Case Model for Remote Data Acquisition Systems *

A Role-based Use Case Model for Remote Data Acquisition Systems * A Role-based Use Case Model for Remote Acquisition Systems * Txomin Nieva, Alain Wegmann Institute for computer Communications and Applications (ICA), Communication Systems Department (DSC), Swiss Federal

More information

MPI: A Message-Passing Interface Standard

MPI: A Message-Passing Interface Standard MPI: A Message-Passing Interface Standard Version 2.1 Message Passing Interface Forum June 23, 2008 Contents Acknowledgments xvl1 1 Introduction to MPI 1 1.1 Overview and Goals 1 1.2 Background of MPI-1.0

More information

Teiid Designer User Guide 7.7.0

Teiid Designer User Guide 7.7.0 Teiid Designer User Guide 1 7.7.0 1. Introduction... 1 1.1. What is Teiid Designer?... 1 1.2. Why Use Teiid Designer?... 2 1.3. Metadata Overview... 2 1.3.1. What is Metadata... 2 1.3.2. Editing Metadata

More information

AADL Graphical Editor Design

AADL Graphical Editor Design AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized

More information

Practical Model-Driven Development with the IBM Software Development Platform

Practical Model-Driven Development with the IBM Software Development Platform IBM Software Group Practical Model-Driven Development with the IBM Software Development Platform Osmond Ng (ong@hk1.ibm.com) Technical Consultant, IBM HK SWG 2005 IBM Corporation Overview The Challenges

More information

Generation of UVM compliant Test Benches for Automotive Systems using IP-XACT with UVM-SystemC and SystemC AMS

Generation of UVM compliant Test Benches for Automotive Systems using IP-XACT with UVM-SystemC and SystemC AMS Generation of UVM compliant Test Benches for Automotive Systems using IP-XACT with UVM-SystemC and SystemC AMS Ronan LUCAS (Magillem) Philippe CUENOT (Continental) Accellera Systems Initiative 1 Agenda

More information

Raising the Level of Development: Models, Architectures, Programs

Raising the Level of Development: Models, Architectures, Programs IBM Software Group Raising the Level of Development: Models, Architectures, Programs Dr. James Rumbaugh IBM Distinguished Engineer Why Is Software Difficult? Business domain and computer have different

More information

Oliopäivät Modelling Now and in the Future, with Acronyms or without = RSA

Oliopäivät Modelling Now and in the Future, with Acronyms or without = RSA IBM Software Group Oliopäivät 28-29.11.2006 Modelling Now and in the Future, with Acronyms or without = RSA rami.talme@fi.ibm.com 2006 IBM Corporation IBM Software Group Rational software The business-driven

More information

MarcoFlow: Modeling, Deploying, and Running Distributed User Interface Orchestrations

MarcoFlow: Modeling, Deploying, and Running Distributed User Interface Orchestrations MarcoFlow: Modeling, Deploying, and Running Distributed User Interface Orchestrations Florian Daniel, Stefano Soi, Stefano Tranquillini, Fabio Casati University of Trento, Povo (TN), Italy {daniel,soi,tranquillini,casati}@disi.unitn.it

More information

Mixed Critical Architecture Requirements (MCAR)

Mixed Critical Architecture Requirements (MCAR) Superior Products Through Innovation Approved for Public Release; distribution is unlimited. (PIRA AER200905019) Mixed Critical Architecture Requirements (MCAR) Copyright 2009 Lockheed Martin Corporation

More information

Compiling and Interpreting Programming. Overview of Compilers and Interpreters

Compiling and Interpreting Programming. Overview of Compilers and Interpreters Copyright R.A. van Engelen, FSU Department of Computer Science, 2000 Overview of Compilers and Interpreters Common compiler and interpreter configurations Virtual machines Integrated programming environments

More information

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web.

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web. Embedded Processor Types General Purpose Expensive, requires

More information

SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems

SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems SWE 760 Lecture 1: Introduction to Analysis & Design of Real-Time Embedded Systems Hassan Gomaa References: H. Gomaa, Chapters 1, 2, 3 - Real-Time Software Design for Embedded Systems, Cambridge University

More information

StarUML Documentation

StarUML Documentation StarUML Documentation Release 2.0.0 MKLab November 20, 2014 Contents 1 Basic Concepts 3 1.1 Project.................................................. 3 1.2 Model Element, View Element, and Diagram..............................

More information

A Model-Driven Framework for Domain Specific Process Design and Governance

A Model-Driven Framework for Domain Specific Process Design and Governance A Model-Driven Framework for Domain Specific Process Design and Governance Adrian Mos 1, Mario Cortes-Cornax 1, José Miguel Pérez-Álvarez1,2, María Teresa Gómez-López 2 1 Xerox Research Center, 6 Chemin

More information

Syntactic Directed Translation

Syntactic Directed Translation Syntactic Directed Translation Translation Schemes Copyright 2016, Pedro C. Diniz, all rights reserved. Students enrolled in the Compilers class at the University of Southern California have explicit permission

More information

White Paper on RFP II: Abstract Syntax Tree Meta-Model

White Paper on RFP II: Abstract Syntax Tree Meta-Model White Paper on RFP II: Abstract Syntax Tree Meta-Model OMG Architecture Driven Modernization Task Force August 18, 2004 Contributors: Philip Newcomb, The Software Revolution, Inc. Ed Gentry, Blue Phoenix,

More information

UML-BASED CO-DESIGN FOR RUN-TIME RECONFIGURABLE ARCHITECTURES

UML-BASED CO-DESIGN FOR RUN-TIME RECONFIGURABLE ARCHITECTURES Chapter 1 UML-BASED CO-DESIGN FOR RUN-TIME RECONFIGURABLE ARCHITECTURES Bernd Steinbach 1, Thomas Beierlein 2, Dominik Fröhlich 1,2 1 TU Bergakademie Freiberg Institute of Computer Science 2 Hochschule

More information

Efficient Separate Compilation of Object-Oriented Languages

Efficient Separate Compilation of Object-Oriented Languages Efficient Separate Compilation of Object-Oriented Languages Jean Privat, Floréal Morandat, and Roland Ducournau LIRMM Université Montpellier II CNRS 161 rue Ada 34392 Montpellier cedex 5, France {privat,morandat,ducour}@lirmm.fr

More information

SoC Design with UML and SystemC. Alberto Sardini Software Engineering Specialist

SoC Design with UML and SystemC. Alberto Sardini Software Engineering Specialist SoC Design with UML and SystemC Alberto Sardini Software Engineering Specialist Presentation Structure Modeling Languages for a SoC Design Process UML 2.0 Overview SystemC to UML 2 Mapping Summary 2 Modeling

More information

Compiler construction

Compiler construction Compiler construction Martin Steffen March 13, 2017 Contents 1 Abstract 1 1.1 Symbol tables. 1 1.1.1 Introduction 1 1.1.2 Symbol table design and interface.. 2 1.1.3 Implementing symbol tables 3 1.1.4

More information

OpenAccess based architecture for Neolinear s Rapid Analog Design Flow

OpenAccess based architecture for Neolinear s Rapid Analog Design Flow OpenAccess based architecture for Neolinear s Rapid Analog Design Flow Bogdan Arsintescu, David Cuthbert, Elias Fallon, Matt Phelps Abstract Developing tools for today s analog and mixed-signal design

More information

A Preprocessor Approach to Persistent C++ Cem Evrendilek, Asuman Dogac and Tolga Gesli

A Preprocessor Approach to Persistent C++ Cem Evrendilek, Asuman Dogac and Tolga Gesli A Preprocessor Approach to Persistent C++ Cem Evrendilek, Asuman Dogac and Tolga Gesli Software Research and Development Center Scientific and Technical Research Council of Türkiye E-Mail:asuman@vm.cc.metu.edu.tr

More information

Optimizing HDL IP Development with Real-World I/O. William Baars National Instruments

Optimizing HDL IP Development with Real-World I/O. William Baars National Instruments Optimizing HDL IP Development with Real-World I/O William Baars National Instruments William.baars@ni.com Agenda IP Development Process Traditional Algorithm Engineering Components required for HDL IP

More information

Language engineering and Domain Specific Languages

Language engineering and Domain Specific Languages Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh Plan 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

SCOS-2000 Technical Note

SCOS-2000 Technical Note SCOS-2000 Technical Note MDA Study Prototyping Technical Note Document Reference: Document Status: Issue 1.0 Prepared By: Eugenio Zanatta MDA Study Prototyping Page: 2 Action Name Date Signature Prepared

More information

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILING

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILING PRINCIPLES OF COMPILER DESIGN 2 MARKS UNIT I INTRODUCTION TO COMPILING 1. Define compiler? A compiler is a program that reads a program written in one language (source language) and translates it into

More information

Heap, Variables, References, and Garbage. CS152. Chris Pollett. Oct. 13, 2008.

Heap, Variables, References, and Garbage. CS152. Chris Pollett. Oct. 13, 2008. Heap, Variables, References, and Garbage. CS152. Chris Pollett. Oct. 13, 2008. Outline. Dynamic Allocation. Variables and Constants. Aliases and Problems. Garbage. Introduction. On Wednesday, we were talking

More information

Index. Symbols. /**, symbol, 73 >> symbol, 21

Index. Symbols. /**, symbol, 73 >> symbol, 21 17_Carlson_Index_Ads.qxd 1/12/05 1:14 PM Page 281 Index Symbols /**, 73 @ symbol, 73 >> symbol, 21 A Add JARs option, 89 additem() method, 65 agile development, 14 team ownership, 225-226 Agile Manifesto,

More information

MIDTERM EXAM (Solutions)

MIDTERM EXAM (Solutions) MIDTERM EXAM (Solutions) Total Score: 100, Max. Score: 83, Min. Score: 26, Avg. Score: 57.3 1. (10 pts.) List all major categories of programming languages, outline their definitive characteristics and

More information

Hardware/Software Co-design

Hardware/Software Co-design Hardware/Software Co-design Zebo Peng, Department of Computer and Information Science (IDA) Linköping University Course page: http://www.ida.liu.se/~petel/codesign/ 1 of 52 Lecture 1/2: Outline : an Introduction

More information

On the link between Architectural Description Models and Modelica Analyses Models

On the link between Architectural Description Models and Modelica Analyses Models On the link between Architectural Description Models and Modelica Analyses Models Damien Chapon Guillaume Bouchez Airbus France 316 Route de Bayonne 31060 Toulouse {damien.chapon,guillaume.bouchez}@airbus.com

More information

Oracle Big Data SQL brings SQL and Performance to Hadoop

Oracle Big Data SQL brings SQL and Performance to Hadoop Oracle Big Data SQL brings SQL and Performance to Hadoop Jean-Pierre Dijcks Oracle Redwood City, CA, USA Keywords: Big Data SQL, Hadoop, Big Data Appliance, SQL, Oracle, Performance, Smart Scan Introduction

More information

An Architecture for Semantic Enterprise Application Integration Standards

An Architecture for Semantic Enterprise Application Integration Standards An Architecture for Semantic Enterprise Application Integration Standards Nenad Anicic 1, 2, Nenad Ivezic 1, Albert Jones 1 1 National Institute of Standards and Technology, 100 Bureau Drive Gaithersburg,

More information

Statechart Modeling with Fujaba

Statechart Modeling with Fujaba GraBaTs 04 Preliminary Version Statechart Modeling with Fujaba Leif Geiger Albert Zündorf University of Kassel, Software Engineering Research Group, Wilhelmshöher Allee 73, 34121 Kassel, Germany {leif.geiger

More information

Code Structure Visualization

Code Structure Visualization TECHNISCHE UNIVERSITEIT EINDHOVEN Department of Mathematics and Computer Science MASTER S THESIS Code Structure Visualization by G.L.P.M. Lommerse Supervisor: Dr. Ir. A.C. Telea (TUE) Eindhoven, August

More information

Chapter 1: Getting Started. You will learn:

Chapter 1: Getting Started. You will learn: Chapter 1: Getting Started SGML and SGML document components. What XML is. XML as compared to SGML and HTML. XML format. XML specifications. XML architecture. Data structure namespaces. Data delivery,

More information

Certification Authorities Software Team (CAST) Position Paper CAST-25

Certification Authorities Software Team (CAST) Position Paper CAST-25 Certification Authorities Software Team (CAST) Position Paper CAST-25 CONSIDERATIONS WHEN USING A QUALIFIABLE DEVELOPMENT ENVIRONMENT (QDE) IN CERTIFICATION PROJECTS COMPLETED SEPTEMBER 2005 (Rev 0) NOTE:

More information

Persiform: Performance Engineering Based on

Persiform: Performance Engineering Based on Persiform: Performance Engineering Based on Simulation of Formal Functional Models Olivier Constant, Marius Bozga, Susanne Graf -- Verimag, Grenoble Nicolas Moteau, Wei Monin -- France Telecom R&D 2007

More information

An MDD Process for IEC based Industrial Automation Systems

An MDD Process for IEC based Industrial Automation Systems An MDD Process for IEC 61131-based Industrial Automation Systems Kleanthis Thramboulidis Member, IEEE Electrical & Computer Engineering University of Patras, Greece thrambo@ece.upatras.gr Geog Frey, Senior

More information

Computer-Aided Recoding for Multi-Core Systems

Computer-Aided Recoding for Multi-Core Systems Computer-Aided Recoding for Multi-Core Systems Rainer Dömer doemer@uci.edu With contributions by P. Chandraiah Center for Embedded Computer Systems University of California, Irvine Outline Embedded System

More information

EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools

EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools Wen-Yen Lin, Ph.D. Department of Electrical Engineering Chang Gung University Email: wylin@mail.cgu.edu.tw March 2013 Agenda Introduction

More information

An Integrated Test Framework to Reduce Embedded Software Lifecycle Costs

An Integrated Test Framework to Reduce Embedded Software Lifecycle Costs White Paper An Integrated Test Framework to Reduce Embedded Software Lifecycle Costs Version 1.0: August 23, 2012 Presented by: Chris Domin, Business Dev. Mgr. Engineering Services, sales@danlawinc.com

More information

Guidelines for Writing C Code

Guidelines for Writing C Code Guidelines for Writing C Code Issue 01-bugfix Martin Becker Institute for Real-Time Computer Systems (RCS) Technische Universität München becker@rcs.ei.tum.de June 9, 2014 Contents 1 Introduction 1 2 Pragmatic

More information

Alternatives for semantic processing

Alternatives for semantic processing Semantic Processing Copyright c 2000 by Antony L. Hosking. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies

More information

UML 2.5: Specification Simplification

UML 2.5: Specification Simplification A division of Data Access Technologies, Inc. UML 2.5: Specification Simplification Presented at the Third Biannual Workshop on Eclipse Open Source Software and OMG Open Specifications Ed Seidewitz Timeline

More information

News in RSA-RTE 10.1 updated for sprint Mattias Mohlin, April 2017

News in RSA-RTE 10.1 updated for sprint Mattias Mohlin, April 2017 News in RSA-RTE 10.1 updated for sprint 2017.16 Mattias Mohlin, April 2017 Overview Now based on Eclipse Neon.3 (4.6.3) Many general improvements since Eclipse Mars Contains everything from RSARTE 10 and

More information

Laboratorio di Programmazione. Prof. Marco Bertini

Laboratorio di Programmazione. Prof. Marco Bertini Laboratorio di Programmazione Prof. Marco Bertini marco.bertini@unifi.it http://www.micc.unifi.it/bertini/ How the compiler works Programs and libraries The compiler In C++, everytime someone writes ">>

More information

OTT Services Balancing Innovation, Investment and Competition

OTT Services Balancing Innovation, Investment and Competition OTT Services Balancing Innovation, Investment and Competition Executive Summary CANTO has, in this document, provided a context for understanding the current development where some Caribbean network operators

More information

Informal Semantics of Data. semantic specification names (identifiers) attributes binding declarations scope rules visibility

Informal Semantics of Data. semantic specification names (identifiers) attributes binding declarations scope rules visibility Informal Semantics of Data semantic specification names (identifiers) attributes binding declarations scope rules visibility 1 Ways to Specify Semantics Standards Documents (Language Definition) Language

More information

What do Compilers Produce?

What do Compilers Produce? What do Compilers Produce? Pure Machine Code Compilers may generate code for a particular machine, not assuming any operating system or library routines. This is pure code because it includes nothing beyond

More information

IBM Rational Software

IBM Rational Software IBM Rational Software Development Conference 2008 Architecture and Customization of the IBM Rational Team Concert Connectors for ClearCase and ClearQuest John Vasta ClearQuest Connector Lead, IBM jrvasta@us.ibm.com

More information

The Application of SystemC to the Design and Implementation of a High Data Rate Satellite Transceiver

The Application of SystemC to the Design and Implementation of a High Data Rate Satellite Transceiver The Application of SystemC to the Design and Implementation of a High Data Rate Satellite Transceiver The MITRE Corporation Approved for public release. Distribution unlimited. Case #07-0782 Contract No.

More information

The main website for Henrico County, henrico.us, received a complete visual and structural

The main website for Henrico County, henrico.us, received a complete visual and structural Page 1 1. Program Overview The main website for Henrico County, henrico.us, received a complete visual and structural overhaul, which was completed in May of 2016. The goal of the project was to update

More information

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language Plan Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

Applying UML Modeling and MDA to Real-Time Software Development

Applying UML Modeling and MDA to Real-Time Software Development Michael Benkel Aonix GmbH www.aonix.de michael.benkel@aonix.de Applying UML Modeling and MDA to Real-Time Software Development The growing complexity of embedded real-time applications requires presentation

More information

NordiaSoft SCA Architect 2016

NordiaSoft SCA Architect 2016 SCA Architect NordiaSoft SCA Architect is the modeling tool used by developers to compose and assemble software components into applications. Based on a Model-Driven Development (MDD) concept, SCA Architect

More information

March 2, Homepage:

March 2, Homepage: Action Semantics for an Executable UML Thomas Feng March 2, 2003 Email: thomas@email.com.cn Homepage: http://moncs.cs.mcgill.ca/people/tfeng/ Why are we interested in semantics? Other than syntax, the

More information

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes Presented at Design Automation Conference (DAC) San Francisco, CA, June 4, 2012. Presented by Chuck Cruse FPGA Hardware

More information

Knowledge Discovery: How to Reverse-Engineer Legacy Systems

Knowledge Discovery: How to Reverse-Engineer Legacy Systems Knowledge Discovery: How to Reverse-Engineer Legacy Systems Hugo Bruneliere, Frédéric Madiot INRIA & MIA-Software 1 Context of this work Knowledge Discovery: How To Reverse-Engineer Legacy Sytems The present

More information