Dynamic and Static Views of Data Flow

Processing objects synchronously receive incoming data through their input ports and output the processed data through their output ports. Though it is many times convenient to keep this metaphor of travelling data that enters the processing, is transformed and is fed to the output, it is also important to sometimes think in terms of its ``static'' representation. Therefore two different interpretations may be given to the flow of processing data through a DSPOOM network: a dynamic view and a static view. Both of them are valid and their use will depend on the goal of the particular model.

In the dynamic view we think of a processing data as a travelling entity that enters every processing in its path and exits sometimes even in a different form. This interpretation is useful for analyzing dynamic behavior of a given system specially regarding its latency or real-time performance. It is also useful for understanding overall effect of a processing network on the input signal.

When using the static dataflow view we interpret that processing data all ``live'' in nodes or slots where different processing objects are connected. A processing always reads from the same position in memory and writes to the same position in memory so its input and output ports can be seen as a static (in space) processing data that is constantly changing. This view is interesting in order to study flow related issues and the interaction that occur between neighboring processing objects. We will later see more details about the network structure, including the definition of data nodes (see section 4.1.3), and understand more about this static view.