Time budget
A time budget is the breakdown of an end-to-end latency constraint according to the internal structure of the constrained system. If the signal path from stimulus to response consists of a sequence of subsystems, a time budget assigns latency constraints to each of these in such a way that the original end-to-end latency constraint is not violated.
Relationships
Main Description

Short Description

A time budget is the breakdown of an end-to-end latency constraint according to the internal structure of the constrained system. If the signal path from stimulus to response consists of a sequence of subsystems, a time budget assigns latency constraints to each of these in such a way that the original end-to-end latency constraint is not violated.

For the time budget concept to be meaningful, the sequence of subsystems involved must be constructed such that the response event of one subsystem is the stimulus of the next one, and so on.

 

Links to TADL2 concepts

·         EventChain

·         ReactionConstraint

·         OrderConstraint

 

Abstraction level specific list of applicable events

The constraints can be applied to any type of events, see supporting material below.

 

Context Specific Example

To express that an event chain c actually consists of internal two segments c1 and c2 joined by a common event, one may write:

 

  c = eventChain {

          stimulus = eventFunctionFlowPort { port = PedalIn },

          response = eventFunctionFlowPort { port = BrakeOut },

          segment  = < c1, c2 >

      }

 

  c1 = eventChain {

          stimulus = eventFunctionFlowPort { port = PedalIn },

          response = eventFunctionFlowPort { port = TorqueOut },

      }

 

  c2 = eventChain {

          stimulus = eventFunctionFlowPort { port = TorqueOut },

          response = eventFunctionFlowPort { port = BrakeOut },

      }

 

If the end-to-end reaction time for chain c is given by constraint r above, a valid time budget for c might consist of the following reaction constraints:

 

  r1 = reactionConstraint {

           scope = c1,

           upper = 120 ms

       }

 

  r2 = reactionConstraint {

           scope = c2,

           upper = 80 ms

       }

 

This sequence of reaction constraints is equivalent to the end-to-end constraint r because the sum r1.upper + r2.upper equals r.upper. A similar equivalence condition applies if the lower attribute is used as well.

By using symbolic time expressions and the order constraint, it is possible to express the dependencies between attributes that makes a time budget valid:

 

  r1 = reactionConstraint {

           scope = c1,

           upper = T1

       }

 

  r2 = reactionConstraint {

           scope = c2,

           upper = T2

       }

 

  o = orderConstraint {

           left = r1.upper + r2.upper,

           right = r.upper

      }

 

T1 and T2 are variables standing for unknown (yet to be negotiated) timing parameters. They may be replaced with any values as long as constraint o is satisfied. Fixing just one of the variables results in a more direct constraint on the other one – information that may be crucial during time budget negotiations.

 

More Information