1 / 35

A Denotational Semantics For Dataflow with Firing

Paper Discussion for. A Denotational Semantics For Dataflow with Firing. Edward A. Lee Jike Chong Wei Zheng. Kahn Process Network Definition. Functional Nodes Unbounded FIFO Reads block Writes don’t block Signals are streams. Data-flow network Definition.

beryl
Download Presentation

A Denotational Semantics For Dataflow with Firing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Paper Discussion for A Denotational Semantics For Dataflow with Firing Edward A. Lee Jike Chong Wei Zheng

  2. Kahn Process Network Definition • Functional Nodes • Unbounded FIFO • Reads block • Writes don’t block • Signals are streams

  3. Data-flow network Definition • A collection of functional nodes • Connected and communicate over unbounded FIFO queues • Nodes are commonly called actors • The bits of information that are communicated over the queues are commonly called tokens Source: ee249 slides

  4. Question from this paper: • What is a denotational semantic? • Why is Kahn Process Networks important? • Why do we need firing?

  5. Question from this paper: • Denotational Semantic • Two approach of semantics • Denotational • Developed by Scott and Strachey • Meaning of the language is in terms of relation • Operational • Turing machine • Meaning of the language is in terms of actions taken by some abstract machine • Closer to implementation

  6. Question from this paper: • Why is Kahn Process Networks important? • General • Solid semantics • Properties: • Functional Node • Unbounded FIFO • Blocking read • No total order (concept of partial order) • No over specification • May be difficult to determine order in the real world

  7. Question from this paper: • Why do we need firing? • Basic element of dataflow networks • Provides notion of tokens passed from inputs to outputs • Enables scheduling of input to output event • Closer to real world scenarios Kahn Process Network + Firing data-flow network

  8. Formal Semantic Model –Kahn Process Network • Provides a formal semantic model to construct rigorous proofs for Process Networks properties • Need firing concepts based on the interactions of input sequences and the Process Network functional nodes

  9. Paper Outline • Kahn Process Network property • Prefix order • Complete partial order • Monotonic function • Continuous function • Composition of processes • Determinacy of processes • Least fixed point semantics • Higher Order Function Example

  10. Paper Outline • Kahn process network with Firing • Dataflow actors • Dataflow processes • Extend Monotonic property to dataflow processes • Extend Continuous property to dataflow processes • Continuity of dataflow process • Commutative firings and compositionality

  11. Prefix Order • Prefix order {$} is a prefix of {$, #} • Partially ordered set - poset {{$}, {$,#}, {#}} -- {$} is not a prefix of {#} • Empty signal l: the empty sequence • Chain – totally ordered set {{$}, {$,#},{$,#,%}}

  12. Complete Partial Order • Upper bound • where every element is a prefix • LUB – least upper bound LUB({{$}, {$,#},{$,#,%}}) = {$,#,%} Union of all sets • Complete Partial Order A poset with a bottom s.t. every chain in the set has a LUB

  13. Paper Outline • Kahn Process Network property • Prefix order • Complete partial order • Monotonic function • Continuous function • Composition of processes • Determinacy of processes • Least fixed point semantics • Higher Order Function Example

  14. Monotonic Function • untimed notion of causality

  15. Continuous Function • Response to an infinite input sequence is the limit of its response to the finite approximation of this input

  16. Paper Outline • Kahn Process Network property • Prefix order • Complete partial order • Monotonic function • Continuous function • Composition of processes • Determinacy of processes • Least fixed point semantics • Higher Order Function Example

  17. Composition of Processes And a collection

  18. Determinate Composition • A composition is determinate if given the input sequences, all other sequences are determined.

  19. Paper Outline • Kahn Process Network property • Prefix order • Complete partial order • Monotonic function • Continuous function • Composition of processes • Determinacy of processes • Least fixed point semantics • Higher Order Function Example

  20. Least Fixed Point • Composition does not deal with feedback • Feedback loops may not have deterministic behavior • Introduce the Least fixed point

  21. Least Fixed Point • A method to gain deterministic behavior in process networks with feedback topologies • Start with the empty sequence • Apply the (monotonic) function • Apply the function again to the result • Repeat forever

  22. Higher Order Function • Definition • Functions that take functions as arguments and return functions • CPO over functions • Use a similar technique to study dataflow with firing • (sm-) ? Is a CPO • Proof • All chains in the set have LUB • Bottom element

  23. Higher Order Function • Functionals • example

  24. Higher Order Function Example • Sieve of Eratosthenese • Output prime numbers by recursive filtering • mapping functionsonto functions

  25. Paper Outline • Kahn Process Network property • Kahn process network with Firing • Dataflow actors • Dataflow processes • Extend Monotonic property to dataflow processes • Extend Continuous property to dataflow processes • Continuity of dataflow process • Commutative firings and compositionality

  26. Dataflow with firings • Based on continuous functionals on POSET of functions • Dennis Dataflow • Kahn process networks where processes are made up of a sequence of atomic computations called firings • Firing can be described as functions • Firing rule

  27. Dataflow actors S needs to be finite Concatenation of the two tuples of sequences , JOIN is defined to be LUB of the two tuples. If the join exists, They are said to be joinable Dataflow actor

  28. Dataflow processes • Question: • Function F exists? • Function F unique? • Any assumption?

  29. Dataflow processes • F exists, and unique in the pointwise prefix order • We can prove that f is monotonic and continuous • least fixed point F such that f(F) = F, this F satisfied the definition in previous slides • Find a constructive procedure for finding F • F is OK to be the semantics of the dataflow process

  30. Paper Outline • Kahn process network with Firing • Dataflow actors • Dataflow processes • Extend Monotonic property to dataflow processes • Extend Continuous property to dataflow processes • Continuity of dataflow process • Commutative firings and compositionality

  31. Continuity of dataflow process • F is the least fixed point of the continuous functional f • F(s) is the LUB of the chain given by (19) • why do we care about the continuity? • guarantee the determinacy

  32. Commutative firings and Compositionality How to solve this problem? Replace rule 4 with followings:

  33. Redefine the functional

  34. Conclusion • Bridge the gap • Sequences of firings define a continuous Kahn process as the Least Fixed Point of an appropriately constructed functional

  35. References [1] A Denotational Semantics for Dataflow with Firing, Edward A. Lee, Technical Memorandum UCB/ERL M97/3, Electronics Research Laboratory, Berkeley [2] Models of Computation for Embedded System Design, L. Lavagno, A. Sangiovanni-Vincentelliand E. Sentovich, 1998 NATO ASI Proceedings on System Synthesis, Il Ciocco (Italy) 1998 [3] Dataflow Process Networks, Edward A. Lee and Thomas M. Parks, Proceedings of the IEEE, vol. 83, no. 5, pp. 773-801 May, 1995 [4] Lecture notes from ee249/ee290n.

More Related