![]() ![]() |
||||
|
||||
This analysis plug-in determines the latency of flow implementations declared for components
and compares it to the latency specified by the corresponding flow specification of the
component. A detailed description of its current implementation can be found in Section 10.
The analysis performs this check for all flow implementations and their corresponding flow
specifications for all component classifier declarations. This analysis may be invoked on a
system instance or a component implementation using “Analyses > Check Flow Latency” or
the
![]() The latency of a flow implementation is determined as the sum of all:
The connection latencies in the flow implementation; the connection latency is determined by
the Latency property value—if not declared, it is assumed to be zero.
The resulting latency value is then stored as a Latency property association
of the flow
implementation.
Finally, the latency value is compared to the latency value of the flow specification with the
same name in the component type corresponding to the component implementation. If the flow
implementation latency value exceeds that of the flow specification an error is reported.
A second form of flow latency analysis is performed for end-to-end flow specifications across
components. This can take place in two ways. First, it can analyze flows across system
components that play the role of system partitions that are scheduled as virtual processors, and
that do not have to be further elaborated. The latency contribution due to partition execution is
determined by the property SEI::Partition_Latency. This permits early latency analysis
of integrated systems through a high-level model of major subsystems based on specification
information without expanding into subsystem details.
Second, end-to-end flow through threads, devices, and processor can be analyzed. In this
case, both the flow specification latency and the latency due to execution characteristics such as
period, deadline, and immediate or delayed connection, are taken into account in calculating the
total latency.
Communication latency is currently taken into account if specified as connection latency.
In the future, the analysis will include communication latencies due to specific bindings of the
application system to the execution platform. |
||||