Desynchronization of Dataflow Process Networks
This tool offers algorithms to check whether a given DPN node can be desynchronized. The DPN node is given in terms of firing rules (as indicated by the given examples) where ⊡ denotes the absent value in the synchronous version of the DPN (note that synchronous DPNs can safely react to absent values since absence can be decided by the clock information).
The desynchronized version of the node is obtained by removing the absent values. The given node is endochronous if the desynchronized node has no overlapping firing rules, and it is weakly endochronous if there all overlapping firing rules can be closed by a weak diamond.
Here are some further interesting examples: