<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Discrete-Continuous Semantic Adaptations for Simulating SysML Models in VHDL-AMS</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Daniel Chaves Café</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cécile Hardebolle</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Christophe Jacquet</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Filipe Vinci dos Santos</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Frédéric Boulanger</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Supélec E3S - Computer Science Departement</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Thales Chair on Advanced Analog System Design</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2014</year>
      </pub-date>
      <fpage>11</fpage>
      <lpage>20</lpage>
      <abstract>
        <p>Our research focuses on the simulation of heterogeneous systems modeled in SysML, in particular, systems that mix different engineering domains such as mechanics, analog and digital circuits. Because of their nature, expressing multi-paradigm behavior in heterogeneous systems is a cumbersome endeavor. SysML does not provide a standard method for defining the operational semantics of individual blocks nor any intrinsic adaptation mechanism when coupling blocks of different domains. We present in this paper a way to address these obstacles. We give well-defined operational semantics to SysML blocks by using profile extensions, together with a language for the description of adaptors. We apply our approach to a test case, using a toolset for SysML to VHDLAMS transformation, capable of automated generation of VHDL-AMS code for system verification by simulation.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        In the Electronic Design Automation (EDA) industry, the need for modeling
and verification of mixed-signal systems gave rise to several system design
languages supporting Analog and Mixed Signal (AMS) extensions. Some examples
are VHDL-AMS [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and SystemC-AMS [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. These extensions support the use of
different models of computation concurrently in a single design thus enabling
the modeling of heterogeneous systems. As complexity increases, these textual
languages are no longer suitable for proper documentation and communication
among different teams. For these use cases, graphical languages are preferable,
and they play well with Model Driven Engineering workflows.
      </p>
      <p>SysML, the Systems Modeling Language, is an industry standard for systems
specification. It provides a large set of diagrams which can be used to specify
system’s requirements, model their behavior or even detail the interconnections of
structural blocks. Despite its flexibility, SysML does not provide clear semantics.
On the one hand, this can be helpful for engineers wishing to describe systems
in an early development phase, especially when some implementation details are
not yet entirely defined. In this case, SysML is a helpful communication tool.
On the other hand, the lack of clear semantics can be cumbersome if one wants
to run simulations from the SysML diagrams.</p>
      <p>For the purpose of solving the lack of semantics of SysML diagrams, we have
developed a technique to generate executable code from SysML models which
is based on two foundations : (a) Explicitly state the semantics of modeling
elements, and (b) Define the semantic adaptations between heterogeneous models.
The focus of this work is the creation of an adaptor instantiation language for
semantic adaptation for specifying interfaces precisely and without ambiguity.</p>
      <p>The organization of this article is as follows : The state of the art is presented
in section 2 detailing existing heterogeneous modeling techniques. A case study is
then introduced in section 3 to illustrate the problem. The actual implementation
of our solution is detailed in section 4. And finally we discuss the approach and
the results in sections 5 and 6.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        One of the precursors of heterogeneous modeling is the well-known Ptolemy II [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]
framework. Here, heterogeneity is handled by hierarchy. Components are nested
in black boxes called actors for which the semantics of execution and
communication are described by an entity called Director. It defines the model of
computation (MoC) of the actor. In Ptolemy, computation and communication are
defined for a large set of MoCs. These include Process Networks, Dataflow,
Discrete Event, Finite State Machines, Continuous Time and others. Unfortunately,
Ptolemy does not provide explicit ways to define adaptations between models
that use different MoCs. For example, interactions between discrete event (DE)
and synchronous dataflow (SDF) models can result in redundant events in the
DE domain if a given value does not change. In the same way, an SDF model
might not be regularly activated as discussed in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        ModHel’X [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] was developed to explore semantic adaptations in
heterogeneous models. ModHel’X improves upon the execution algorithm of Ptolemy
by introducing an adaptation phase. This yields an effective way to define the
semantics of the interactions between different models of computation. The
current implementation of ModHel’X is based on a non-standard metamodel which
makes it hard to integrate with existing toolchains.
      </p>
      <p>We propose to introduce ModHel’X’s good practices of stating the semantics
of different components and explicit modeling of the semantic adaptation
between heterogeneous components, into an industry standard modeling language:
SysML. In our approach SysML acts as a pivot language from which we
generate executable code for widely deployed languages, such as SystemC-AMS and
VHDL-AMS. We use a custom profile to extend the semantics of SysML blocks
for continuous-time and discrete-event blocks. These two domains are
generalized into two stereotypes analog and digital . A third stereotype
is dedicated to the description of adaptor blocks. Those provide explicit
behavior on how to adapt data, time and/or control. To do so, a mini-DSL was
designed to allow the instantiation of off-the-shelf types of adapters. Depending
on the target language these could either be present in standard libraries or
custom designed.</p>
      <p>
        Substantial work has been carried out to apply SysML/UML to the design of
electronic (analog and digital) systems. Many researchers focused on the
generation of VHDL-AMS code from SysML diagrams. D. Guihal [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] and J. Verriers [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
extended the VHDL metamodel proposed in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] to use AMS
constructions in their code generators. J.-M. Gautier et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] used model
transformations to generate VHDL-AMS code from SysML Block Definition Diagrams and
Internal Block Diagrams. They have used block constraints to define physical
equations in VHDL-AMS modules.
      </p>
      <p>
        Although these previous works have shown methods to generate VHDL-AMS
code from SysML diagrams, they have not dealt with the semantic inconsistencies
that heterogeneity introduces. Our previous work [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] presents a technique to deal
with this problem. It targets SystemC-AMS simulation language. The present
work is a follow-up that introduces a new adaptor instantiation language and
MoC definition mechanisms that are better suited for model driven engineering.
This is also an opportunity to show that previously developed techniques apply
to other target languages as well, namely VHDL-AMS.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>A case study of a MEMS Accelerometer</title>
      <p>Micro Electro Mechanical Systems (MEMS) motion-sensing devices are a good
example of heterogeneous systems that mix mechanical, analog and digital
components in the same system. They can be used to measure a variety of physical
quantities such as acceleration, pressure, force, or chemical concentrations. To
make such measurements, MEMS sensors can take advantage of several
transduction mechanisms, for example, piezoresistive or capacitive sensing. Here we build
a simple model of a capacitive sensing accelerometer to illustrate our proposal.
3.1</p>
      <sec id="sec-3-1">
        <title>Description of the system</title>
        <p>Our case study is a capacitive sensing accelerometer composed of two electrodes
and an intermediary membrane free to move only in the vertical axis as
illustrated in figure 1. This structure forms two capacitors between the middle
membrane and both the top and bottom walls. The vertical movement of the
membrane implies the variation of both capacitances since C ∝ 1/(g0 ±x), where
g0 is the gap distance at rest and x is the displacement of the membrane from
rest. One can either connect the membrane to ground hence fixing the middle
voltage Vmiddle to zero or one can leave it disconnected thus fixing the current
to zero. In the first case, the change in stored charge caused by the displacement
of the membrane leads to a current flow. In the second case, since the middle
electrode is disconnected, there is no current flow, and by charge conservation
the voltage across the membrane must change with the displacement.</p>
        <p>
          Using the second method, we obtain a linear relation between the membrane’s
voltage and its displacement provided that we apply a symmetric voltage on both
top and bottom electrodes (i.e. Vtop = −Vbottom = V0) as explained in [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]:
x
        </p>
        <p>Vmiddle</p>
        <p>Vtop
Vbottom</p>
        <p>d = 2 x go</p>
        <p>The membrane’s displacement depends on several forces. In our example we
consider only inertial, spring and friction ones. These are assumed to act
exclusively at the center of the membrane. The spring force is proportional to
displacement and the damping (friction) to velocity. We are here interested in
studying the behavior of this system when an external force is applied to the
membrane, typically gravity, but it could be any external force. Applying
Newton’s law, we end up with:</p>
        <p>Fexternal = −kx − cx˙ + mx¨</p>
        <p>Several precautions must be taken to accurately extract Vm. Our model uses
the most simple read-out circuit, an operational amplifier configured as a buffer.
The output of the buffer is fed to a voltage comparator, giving a one-bit output
that undergoes further processing in the digital domain. The details of the rest
of the system fall outside of the scope of the discussion.</p>
        <p>The model of the operational amplifier consists of a single piecewise equation
considering the gain and saturation. The latter assures that the output does not
exceeds the supply voltages of VDD = +15V and VSS = −15V . The piecewise
equation is as follows:</p>
        <p>Vout(Vin) =
 VSS
</p>
        <p>: Vin &lt; VSS /gain</p>
        <p>VDD : Vin &gt; VDD/gain
 Vin × gain : elsewhere
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>SysML Model</title>
        <p>In SysML, we have divided the system into five major blocks as illustrated
in figure 2: the accelerometer models the electromechanical dynamics, the
opamp models the operational amplifier, the sampler adapts analog data to
the digital world by periodic sampling, the comparator checks for a threshold
(1)
(2)
(3)
crossing generating a bit stream from the output of the sampler, and finally a
source sine wave force generator stimulates the model.</p>
        <p>While analog blocks use differential equations defined in continuous time,
digital circuitry is best modeled in the discrete domain. These two formalisms
handle different types of data and react differently to inputs. If we wish to model
and simulate a system with both of them together, we must specify not only the
operational semantics (i.e. the Model of Computation) of a particular block but
also the semantic adaptation between both domains.</p>
        <p>To solve the semantic ambiguity issue, we use custom stereotypes defined
in a separate profile. Stereotypes are element modifiers that allow us to give
precise meaning to base elements of SysML. In our case, we have chosen to
apply specific stereotypes to SysML blocks in order to specify the use of a given
model of computation. Since we are dealing with continuous-digital integration,
we have added the notion of analog and digital blocks to SysML
as seen in figure 3. We have also added one stereotype adaptor to specify
blocks that are in the frontier of two different MoCs.</p>
        <p>For an analog block, we use SysML/UML constraints to describe the physical
relations shown previously. The equations defined in SysML constraints are
considered to be continuous. The interconnections in an analog block impose other
equations that can be inferred from the topology of the system. In the case of
electrical circuits, these are the Kirchoff laws. Digital blocks on the other hand
are connected by signals that transmit events. Even though in the real world,
digital circuits have analog behavior, this formalism abstracts these electrical
phenomena making digital circuits design simpler.</p>
        <p>One particular case that is worth noting here is the definition of piecewise
equations. We have used a particular syntax in SysML constraints to describe
these kind of relations. For instance, equation 3 describes the simplified behavior
of an operational amplifier and is represented by one SysML constraint preceded
by the keywords PIECEWISE FUNCTION in our mini-DSL (see figure 4-left).
In VHDL-AMS, this is translated to USE conditions as we see in figure 4-right.</p>
        <p>We have also defined the quantities that exists between terminals, such as
voltage or current using SysML properties (see figure 3). These are translated
to VHDL-AMS quantities directly.
The adaptor stereotype defines a block whose main purpose is to adapt
data, time and/or control from one domain to another. This special block defines
the adaptation semantics of heterogeneous interfaces. If they are well defined,
then generating executable code from that model should produce the same result
regardless of the target language (VHDL-AMS in this case, but it could be any
other AMS-capable language, such as SystemC-AMS).</p>
        <p>In our example, the block sampler is an adaptor from analog to digital
domain. It samples data periodically. We do not specify the behavior of the
adaptor using our language, rather we instantiate and parameterize a pre-defined
adaptor. This is achieved using a SysML constraint starting with the ADAPTOR
keyword. Figure 5 shows our mini-DSL being used to instantiate the sampler.</p>
        <p>Analog data is generated at a dynamic timestep in VHDL-AMS simulators.
The adaptor specification guarantees that output data will be sampled at a
fixed timestep of 2 μs. This case of adaptor is interesting because we are not only
1 ADAPTOR
2 FROM analog TO digital
3 IS sampler
4 PARAMS
5 input
6 output
7 timestep
: vin,
: sampled_data,
: 2us
adapting the time base but also the data format. In the analog domain, ports are
considered to be terminals connected to nodes of a circuit. Kirchhoff equations
can be then deduced from the topology of the circuit. The adaptor must extract
the voltage between the input terminal and a reference and propagate it to
a discrete event domain as data tokens. The parameters input and output of
figure 5 indicate the analog voltage to read and the binary stream to write.</p>
        <p>Certain adaptors that we make available to system designers have
off-theshelf counterparts in the target language; others do not. In the former case, our
transformation chain chooses adaptors from a standard library; in the latter case
it defines new adaptors in the target language.</p>
        <p>In this case study, the sampler isn’t present in the VHDL-AMS library so we
generate the module responsible for this specific adaptation. The generated code
can be separated into two different VHDL processes. One for setting the time
step and a second one, triggered by the first, to model the adaptor semantics.
In this case, the semantics are fairly simple. It consists on copying the analog
voltage from input terminal and its reference to the discrete event output at a
scheduled moment in time, i.e. every 2 μs.</p>
        <p>The output of the sampler is connected to a comparator which will generate
a bit stream from its input. When the input analog voltage crosses a value given
by the threshold parameter, the digital output switches to a logical value of ‘1’,
or ‘0’ otherwise.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Model Transformation</title>
      <p>Our approach, illustrated in figure 6 consists in two separated phases. Starting
from a SysML model, we first perform a model-to-model (M2M) transformation
T1 in order to obtain a VHDL-AMS model. We then generate VHDL-AMS code
through a model-to-text (M2T) transformation T2.</p>
      <p>The model-to-model step T1 translates every SysML element into its
equivalent VHDL-AMS element. This step provides the model with semantics on how
to interpret SysML elements. For instance, UML ports are converted to
terminals while SysML flow ports are translated to quantity ports. In the same
way, a SysML constraint will be transformed into an equation with its variables
translated into VHDL-AMS quantities.</p>
      <p>
        For this first step, we have used the Atlas Transformation Language (ATL) [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
ATL is a language for defining model transformations by a set of rules. Being a
      </p>
      <p>SysML</p>
      <p>Meta-Model uses
conforms</p>
      <p>SysML
Model</p>
      <p>ATL</p>
      <p>Meta-Model
conforms</p>
      <p>M2M
T1
uses VHDL-AMS</p>
      <p>Meta-Model uses
conforms</p>
      <p>VHDL-AMS</p>
      <p>Model
model itself, the transformation has its own meta-model. ATL is based on
pattern recognition of input elements and conditions which trigger the creation of
output elements in the resulting model.</p>
      <p>
        The VHDL-AMS metamodel is an improvement from previous works [
        <xref ref-type="bibr" rid="ref1 ref14 ref9">1, 9,
14</xref>
        ]. It includes the notion of parameterizable adaptors and some slight
modifications to the general structure of how libraries are used inside a model. This
has proven to be very practical in our implementation but it introduces elements
to the metamodel that are not totally part of VHDL-AMS. Instead, a two-step
approach separating pure syntax from semantics could also be considered.
      </p>
      <p>
        Finally, transformation T2 is responsible for generating the actual code that
will be used for running the simulation. For this we use the ACCELEO [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]
model-to-text engine from Obeo. In ACCELEO we write templates that specify
the code to generate for the various model elements. The adaptors, for instance
were instantiated depending on their type. This is specified in our mini-DSL
by the keyword IS and is parameterized by the list of parameters listed after
PARAMS. The generated code is a template with two VHDL processes (as
explained in section 5).
5
      </p>
    </sec>
    <sec id="sec-5">
      <title>Simulation Results</title>
      <p>Applying both transformations (T1 and T2) to the SysML model presented in
figure 3, we obtain several VHDL-AMS files (one per block) which we use to
run simulations. In figure 7 we show the output of the Hamster VHDL-AMS
simulation tool for a sinusoidal input force.</p>
      <p>Note that, despite the non-linear variation of both top and bottom
capacitances, the output voltage is linear and follows the input stimulus, which is
conform to equation 1. The left side of figure 7 allows us to conclude that the
threshold detection mechanism described by the block comparator works
correctly as the binary stream output follows the sign of the opamp’s output.</p>
      <p>A closer look allows us to confirm that digital data is sampled at a fixed
timestep even tough the analog data is not. The signal clk generates events
every 2 μs, both on the rising and falling edge. The detail of the right part of
figure 7 shows that the output voltage was already negative several simulation
cycles before the threshold detection. This translates into a delay between the
effective crossing of the threshold (bottom left of figure 7) and its detection.
This is the expected behavior since the specification of the adaptor constraint of
figure 5 specifies a 2 μs sampling period thus there can be a delay of up to 2 μs.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusions</title>
      <p>In this paper we introduce an approach for simulating continuous-digital
interaction in SysML models. We validate the behavior through simulation and we
generate executable VHDL-AMS code using automatic model transformations.
We address the ambiguity of SysML diagrams by assigning them concrete
semantics (MoCs) using a simple profile. In order to solve the semantic adaptation
problem, we explicitly design adaptation mechanisms using a dedicated language
based on SysML constraints. These are translated into specific VHDL-AMS
constructs that enforce the specified behavior.</p>
      <p>The case study presents a typical case where integration issues occur. We
have specified not only the model of computation of individual SysML blocks
using stereotypes but also the semantic adaptations between continuous and
discrete domains using the notion of adaptors.</p>
      <p>In future work, we wish to separate the semantic parts of our transformation
from purely syntactical ones. This would allow us to focus on a more generic
approach so as to deal with heterogeneous interactions independently from the
language used to run simulations. In order to do so, we have considered using a
generic intermediary metamodel to facilitate transformations to other languages.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>V.</given-names>
            <surname>Albert</surname>
          </string-name>
          .
          <article-title>Traduction d'un modèle de système hybride basé sur réseau de Petri en VHDL-AMS</article-title>
          .
          <article-title>Master de conception en architecture de machines et systèmes informatiques</article-title>
          , Université Paul Sabatier, LAAS-CNRS,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Frédéric</given-names>
            <surname>Boulanger</surname>
          </string-name>
          and
          <string-name>
            <given-names>Cécile</given-names>
            <surname>Hardebolle</surname>
          </string-name>
          .
          <article-title>Execution of models with heterogeneous semantics</article-title>
          .
          <source>In Tutorial on critical systems simulation at CSDM'12</source>
          ,
          <year>December 2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Fabrice</given-names>
            <surname>Bouquet</surname>
          </string-name>
          ,
          <string-name>
            <surname>Jean-Marie</surname>
            <given-names>Gauthier</given-names>
          </string-name>
          , Ahmed Hammad, and
          <string-name>
            <given-names>Fabien</given-names>
            <surname>Peureux</surname>
          </string-name>
          .
          <article-title>Transformation of SysML structure diagrams to VHDL-AMS</article-title>
          .
          <article-title>In Design, Control and Software Implementation for Distributed MEMS (</article-title>
          <year>dMEMS</year>
          ), 2012 Second Workshop on, pages
          <fpage>74</fpage>
          -
          <lpage>81</lpage>
          . IEEE,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. Daniel Chaves Cafe, Filipe Vinci dos Santos, Cecile Hardebolle, Christophe Jacquet, and
          <article-title>Frederic Boulanger. Multi-paradigm semantics for simulating SysML models using SystemC-AMS</article-title>
          .
          <source>In Specification &amp; Design Languages (FDL)</source>
          ,
          <year>2013</year>
          <article-title>Forum on</article-title>
          , pages
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          . IEEE,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Franck</given-names>
            <surname>Chollet</surname>
          </string-name>
          and
          <string-name>
            <given-names>Haobing</given-names>
            <surname>Liu</surname>
          </string-name>
          .
          <article-title>A (not so) short introduction to Micro Electro Mechanical Systems</article-title>
          . http://memscyclopedia.org/introMEMS.html, pages
          <fpage>149</fpage>
          -
          <lpage>152</lpage>
          .
          <year>Nov 2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Ernst</given-names>
            <surname>Christen</surname>
          </string-name>
          and
          <string-name>
            <given-names>Kenneth</given-names>
            <surname>Bakalar</surname>
          </string-name>
          .
          <article-title>VHDL-AMS - a hardware description language for analog and mixed-signal applications</article-title>
          .
          <source>Circuits and Systems II: Analog and Digital Signal Processing</source>
          , IEEE Transactions on,
          <volume>46</volume>
          (
          <issue>10</issue>
          ):
          <fpage>1263</fpage>
          -
          <lpage>1272</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Johan</given-names>
            <surname>Eker</surname>
          </string-name>
          , Joern W. Janneck,
          <string-name>
            <given-names>Edward A.</given-names>
            <surname>Lee</surname>
          </string-name>
          , Jie Liu, Xiaojun Liu, Jozsef Ludvig, Stephen Neuendorffer, Sonia Sachs, and
          <string-name>
            <given-names>Yuhong</given-names>
            <surname>Xiong</surname>
          </string-name>
          .
          <article-title>Taming heterogeneity - the ptolemy approach</article-title>
          .
          <source>Proceedings of the IEEE</source>
          ,
          <volume>91</volume>
          (
          <issue>1</issue>
          ):
          <fpage>127</fpage>
          -
          <lpage>144</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Christoph</given-names>
            <surname>Grimm</surname>
          </string-name>
          , Martin Barnasconi, Alain Vachoux, and
          <string-name>
            <given-names>Karsten</given-names>
            <surname>Einwich</surname>
          </string-name>
          .
          <article-title>An introduction to modeling embedded analog/mixed-signal systems using SystemC AMS extensions</article-title>
          . In DAC2008 International Conference,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Guihal</surname>
            ,
            <given-names>D</given-names>
          </string-name>
          and Andrieux, L and
          <string-name>
            <surname>Esteve</surname>
          </string-name>
          , D and
          <string-name>
            <surname>Cazarre</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <article-title>VHDL-AMS model creation</article-title>
          .
          <source>In Mixed Design of Integrated Circuits and System</source>
          ,
          <year>2006</year>
          .
          <article-title>MIXDES 2006</article-title>
          .
          <source>Proceedings of the International Conference</source>
          , pages
          <fpage>549</fpage>
          -
          <lpage>554</lpage>
          . IEEE,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>Cécile</given-names>
            <surname>Hardebolle</surname>
          </string-name>
          and
          <string-name>
            <given-names>Frédéric</given-names>
            <surname>Boulanger. ModHel'X:</surname>
          </string-name>
          <article-title>A component-oriented approach to multi-formalism modeling</article-title>
          .
          <source>In Models in Software Engineering</source>
          , pages
          <fpage>247</fpage>
          -
          <lpage>258</lpage>
          . Springer,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>Frédéric</given-names>
            <surname>Jouault</surname>
          </string-name>
          and
          <string-name>
            <given-names>Ivan</given-names>
            <surname>Kurtev</surname>
          </string-name>
          .
          <article-title>Transforming models with ATL</article-title>
          .
          <source>Satellite Events at the MoDELS 2005 Conference</source>
          , pages
          <fpage>128</fpage>
          -
          <lpage>138</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>J. Musset</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Juliot</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Lacrampe</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          <string-name>
            <surname>Piers</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Brun</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          <string-name>
            <surname>Goubet</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Lussaud</surname>
            , and
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Allilaire</surname>
          </string-name>
          . Acceleo user guide,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Guillaume</surname>
            <given-names>Savaton</given-names>
          </string-name>
          , Jérôme Delatour, and
          <string-name>
            <given-names>Karl</given-names>
            <surname>Courtel</surname>
          </string-name>
          .
          <article-title>Roll your own hardware description language</article-title>
          .
          <source>In OOPSLA &amp; GPCE Workshop Best Practices for Model Driven Software Development</source>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>Jean</given-names>
            <surname>Verries</surname>
          </string-name>
          .
          <article-title>Approche pour la conception de systèmes aéronautiques innovants en vue d'optimiser l'architecture. Application au système portes passager</article-title>
          .
          <source>PhD thesis</source>
          , Université Paul Sabatier-Toulouse III,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>