Real Time Systems

Time-triggered Communication

Time-Triggered Communication: In a time-triggered communication system, the sender and receiver(s) agree a priori bon a cyclic time-controlled conflict-free communication schedule for the sending of time-triggered messages. This cyclic communication schedule can be expressed in the cyclic model of time, where the send and receive instants of a message, the message cycles, are represented by a period and phase. In every period, a message is sent at exactly the same phase. Since the communication system can be aware of the schedule, it can allocate the resources such that a timetriggered message is transported without any intermediate delay or buffering.

In some sense, time-triggered communication resembles time-controlled circuit switching (TCCS), where a time-controlled dedicated channel between a sender and receiver is established for the short duration of a single message transport.

Example: A coordinated set of traffic lights along a road that establishes periodically a green wave is a good metaphor for time-controlled circuit switching

We can distinguish the following three types of time-controlled circuit switching:

  1. Collision Avoidance Time-Controlled Circuit Switching (CA-TCCS). In CATCCS, it is assumed that there are two message classes, the scheduled timetriggered messages and the sporadic event-triggered messages. The switch, knowing beforehand the conflict-free schedule of the time-triggered messages can shift the event-triggered messages such that conflicts between the eventtriggered and time-triggered messages are avoided.
  2. Preemptive Time-Controlled Circuit Switching (P-TCCS). In P-TCCS, it is assumed that there are two message classes, the scheduled time-triggered messages and the sporadic event-triggered messages. In case of a conflict between an event-triggered message and a time-triggered message, the switch preempts the event-triggered message and sends the time-triggered message with a small delay and minimal jitter.
  3. Collision Tolerant Time-Controlled Circuit Switching (CT-TCCS). In CTTCCS, it is assumed that there are two message classes, the scheduled timetriggered messages and other uncontrollable messages or interfering signals, a situation characteristic for wire-less scenarios. The time-triggered communication controller will send multiple replicas of the same time-triggered message on diverse frequency channels at different preplanned instants, hoping that one of the replicas will reach the receiver unharmed.

The sparse model of time ensures that messages that are sent at the same active interval of the sparse time base over independent (replicated) channels will arrive at the receivers at the same future active interval of the sparse time base. The jitter is bounded by the precision of the clock synchronization,which is usually in the sub-microsecond range. Time-triggered control requires that the temporal control signals within a domain be derived from a single time source. This time source can be the synchronized global time (this is preferable) or the period of a single leading process, i.e., a process that establishes a basic period autonomously. In case a leading process establishes the time, the temporal control signals of all other cycles must be derived from the period of this leading process. The generation of the schedules is simple, if all periods are in a harmonic relationship.

Example: If, within single synchronization domain, two processes are activated by unrelated control signals from two different unsynchronized time sources, then the phase relationship between these two processes will vary such that eventually the process executions will overlap.

The precise phase control of time-triggered communication makes it possible to align the processing actions and communication actions tightly within a distributed
transaction and thus minimize the duration (the dead-time) of a control loop. This tight phase control is also performed if a cascade of switches must be traversed by a time-triggered message.

Example: In the smart power grid timely end-to-end transport guarantees must be provided over an entire grid. Time-triggered communication minimizes the transport delay, supports fault-tolerance, and thus enables the realization of tight direct digital control loops over a wide area.

Time-Triggered Protocol: The Time-Triggered Protocol TTP, following the CA-TCCS schema, integrates time-triggered communication, temporal error detection, a fault-tolerant clock- synchronization service, and a membership service in a single protocol with minimal protocol overhead [Kop93]. The system integrator must set up the parameters for the transmission slots of the end systems a priori. Event-triggered communication can be implemented by an overlay protocol on top of TTP.
Fault-tolerant clock synchronization is achieved by taking the difference between the measured and specified arrival time of every message as a measure for the difference of the clocks of the sender and receiver and by applying the faulttolerant average algorithm on these differences to calculate a correction factor for each local clock.

The membership service of TTP informs all connected nodes about the healthstate of every cluster node and of the violation of the fault-hypothesis (should it occur) such that a never-give up (NGU) strategy can be activated quickly. The membership is encoded in a membership vector that contains as many bits as there are nodes in a cluster. A specified bit position of the membership vector is assigned to each node. When this bit is set to TRUE, a node is operating, if this bit is set to FALSE, this node is not operating correctly. The membership instant of a node is the periodic send instant of a message by this node. The state of a TTP controller (Cstate) consists of the current time and the node membership vector. To enforce agreement on the C-state of all nodes of an ensemble, TTP calculates the CRC at the sender over the message contents concatenated with the C-state of the sender. The CRC at the receiver is calculated from the received message contents concatenated with the C-state of the receiver. If the result of the CRC check at the receiver is negative then either the message was corrupted during transmission or there is a disagreement between the C-states of the sender and receiver. In both cases, the message is discarded and the receiving node assumes that the sender has been faulty. We call this assumption the self-confidence principle. The self-confidence principle ensures that a single faulty node cannot kill a correct node in a system that is assumed to contain at most one faulty node.

If, in the above scenario, the sender has been correct – all other working nodes have received the message correctly – then the receiving node must have been faulty. An algorithm must tolerate that a faulty node makes further faulty decisions. It will send a message with a wrong membership vector and will be taken out of the membership by all other working nodes. If the receiving node had been right, a correct decision would have been taken and the sender of the original message would have been taken out of the membership. TTP operates on two physical channels and has an independent bus guardian at every node that protects the bus from babbling idiots – even a faulty node can send a message during its assigned time slot only. It fails silently outside its time slot.

Time-Triggered Ethernet: Time-Triggered Ethernet (TTEthernet) is an extension of the switched Ethernet standard IEEE 802.3 that supports standard Ethernet traffic on one side and provides a deterministic message transport on the other side [Kop08]. While the protocol controllers of the end systems can be standard Ethernet controllers, a TTEthernet switch distinguishes two message classes, the standard (event-triggered) Ethernet messages (ET-messages) and the deterministic time-triggered messages (TT-messages). Both ET-messages and TT-message formats are fully compliant with the Ethernet standard. The distinction between ET-messages and TT-messages can be made on the basis of the contents of the standard Ethernet type field or on other information in the standard Ethernet header (e.g., the address fields). The TTEthernet switch transports TT-messages with a constant small delay without intermediate storage in buffers, while ET-messages are transported during the time-intervals when no TT traffic is occurring. In case of conflict between an ET and TT messages, different conflict resolution strategies are applied.