Short Description
A time budget slack is a portion of an end-to-end constraint that is not allocated to any time budget segment. Slack is generally not communicated to suppliers, but rather serves as reserve for interference from other, not yet implemented, functionality.
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
A time budget without slack may be defined as below:
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 },
}
r1 = reactionConstraint {
scope = c1,
upper = T1
}
r2 = reactionConstraint {
scope = c2,
upper = T2
}
o = orderConstraint {
left = r1.upper + r2.upper,
right = r.upper
}
To express a slack of 20 ms in the timed budget example above, one just modifies the order constraint:
o = orderConstraint {
left = r1.upper + r2.upper,
right = r.upper - 20 ms
}
|