Download The Model-based Integrated Simulation Framework User`s Manual

Transcript
datatype referenced to be an array, pointer, etc. Other attributes allow the user to
specify the size of any arrays.
The synchronous and asynchronous dataflow and the data type modeling paradigms
are composed together according to the metamodel in Figure 4. The only new concept
is the TypeConnection connection between dataflow Ports and the TypeRefBase
abstract base class. Both this connection and the TypeRefBase itself can be inserted
into both synchronous and asynchronous components. TypeRefBase represents a
reference to data type models defined elsewhere in the MILAN application models.
TypeConnection assigns the referred type to the given port. OCL constraints ensure
that every port has exactly one type specification and that dataflow connections are
only allowed between ports having compatible data types. The DataType aspect is
used for associating component models with datatype models.
Please see the tutorials for lessons on constructing datatype models and associating
them with application models.
Figure 4: Composing data typing with the dataflow paradigms
Parameters
In order to support parametric dataflow components, such as an FFT routine with
configurable size, MILAN allows the flexible specification of parameters as shown in
Figure 5. All parameterization is done in the Parameter aspect.
Components contain ParameterPorts capturing their parameter interface. A Parameter
can be connected to a ParameterPort supplying a value to it. Each port has a default
value that is used if no Parameter is attached to it. Connections between parameter
ports are also supported to allow the propagation of a parameter value down the
dataflow hierarchy. parameterPortConn is constrained to connect ports sharing a
parent-child relation in order to prevent parameter values propagating in an
unrestricted fashion making the models hard to read. Furthermore, if a particular
Parameter needs to be used in several places in the models, using connections can
quickly become inconvenient. ParameterRef is a reference to a Parameter making it
possible for several components to refer to the same Parameter regardless of their
9