A Preview of Synchronous/Reactive Models

Synchronous/reactive systems will be the topic of a future lecture. A reactive system is one that reacts to the environment as the speed of the environment, as opposed to an interactive system that responds to the environment as its own speed or a batch system that processes requests eventually. A reactive system, such as a real-time embedded DSP system, is severely limited in memory and size.

In synchronous/reactive systems, synchronous means time, and the behavior of the system changes every clock tick. Clock ticks do not have to occur at uniformly space intervals. Within a clock tick, these systems follow the Synchronous Hypothesis which is given below:

Computations occur in zero time.

Handling simultaneous events and feedback when computation takes zero time

The key is the notion of a fixed-point iteration. During each clock tick, the behavior of each component block of the synchronous/reactive system cannot change. Therefore, there must be a set of values on the wires (arcs) that represents a unique set of values that satisfies the behavior of all component blocks. The unique set of wire values is called the (least) fixed point of the system. It represents the only stable state for the system. If x were a vector of all possible wire values, then the state x that satisfies
f(x) = x
represents the fixed-point of the system. The analogy to Synchronous Dataflow is that the repetitions vector represented the unique solution to the load balance equations, and the (least) fixed-point of the system.

Fixed-point examples


Updated 02/16/04.