Observable temporal behavior independent from pysical execution.
LET means that the observable temporal behavior of a task is independent from its physical execution. It is only assumed that physical task execution is fast enough to fit somewhere within the logical start and end points. Thus, LET has to be greater or equal than the Worst Case Execution Time (WCET) of the function. The following figure shows the relationship between logical and physical task execution.
The inputs of a task are read at the release event and the newly calculated outputs are available at the terminate event. Between these, the outputs have the value of the previous execution.
LET as explained above introduces a delay for observable outputs, which might be considered a disadvantage. On the other hand, however, LET provides the cornerstone to deterministic behavior, platform abstraction as basis of portability and well-defined interaction semantics between parallel activities. It is always defined which value is in use at which time instant and there are no race conditions or priority inversions involved.
We have recently extended the LET abstraction in TDL to allow the avoidance of delays within a TDL component for the benefit of digital controller applications:
A task’s functionality code may be split in two parts, (1) a fast step and (2) a slow step, where the fast step is executed in logical zero time right at the release time of the task and the slow step is executed regularily. Output ports updated in the fast step are available immediately for actuator updates in such task sequences.