lect4 - Lecture 4 Lecture 4 Data-Flow Scheduling Data-Flow...

Info iconThis preview shows pages 1–13. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: Lecture 4 Lecture 4 Data-Flow Scheduling Data-Flow Scheduling Forrest Brewer Data Flow Model Hierarchy Data Flow Model Hierarchy Kahn Process Networks (KPN) (asynchronous task network) Dataflow Networks special case of KPN actors, tokens and firings Static Data Flow (Clocked Automata) special case of DN static scheduling code generation buffer sizing (resources!!) Other Clocked Data Flow models Boolean Data Flow Dynamic Data Flow Sequence Graphs, Dependency Graphs, Data Flow Graphs Control Data Flow Data Flow Models Data Flow Models Powerful formalism for data-dominated system specification Partially-ordered model (over-specification) Deterministic execution independent of scheduling Used for simulation scheduling memory allocation code generation for Digital Signal Processors (HW and SW) Data Flow Networks Data Flow Networks A Data Flow Network is a collection of actors which are connected and communicate over unbounded FIFO queues Actors firing follows firing rules Firing rule: number of required tokens on inputs Function: number of consumed and produced tokens Actors are functional i.e. have no internal state Breaking processes of KPNs down into smaller units of computation makes implementation easier (scheduling) Tokens carry values integer, float, audio samples, image of pixels Network state: number of tokens in FIFOs Intuitive semantics Intuitive semantics At each time, one actor is fired Can fire more but one is always safe (atomic firing) When firing, actors consume input tokens and produce output tokens Actors can be fired only if there are enough tokens in the input queues Filter example Filter example Example: FIR filter single input sequence i(n) single output sequence o(n) o(n) = c1 i(n) + c2 i(n-1) * c1 + o i * c2 i(-1) Filter example Filter example Example: FIR filter single input sequence i(n) single output sequence o(n) o(n) = c1 i(n) + c2 i(n-1) * c1 + o i * c2 i(-1) Filter example Filter example Example: FIR filter single input sequence i(n) single output sequence o(n) o(n) = c1 i(n) + c2 i(n-1) * c1 + o i * c2 i(-1) Filter example Filter example Example: FIR filter single input sequence i(n) single output sequence o(n) o(n) = c1 i(n) + c2 i(n-1) * c1 + o i * c2 i(-1) Filter example Filter example Example: FIR filter single input sequence i(n) single output sequence o(n) o(n) = c1 i(n) + c2 i(n-1) * c1 + o i * c2 i(-1) Filter example Filter example Example: FIR filter single input sequence i(n) single output sequence o(n) o(n) = c1 i(n) + c2 i(n-1) * c1 + o i * c2 i(-1) Filter example Filter example Example: FIR filter single input sequence i(n) single output sequence o(n) o(n) = c1 i(n) + c2 i(n-1) * c1 + o i * c2 i(-1) Filter example...
View Full Document

Page1 / 80

lect4 - Lecture 4 Lecture 4 Data-Flow Scheduling Data-Flow...

This preview shows document pages 1 - 13. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online