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