CMPE 511 DATA FLOW MACHINES Mustafa Emre ERKOÇ 11/12/2003.

Post on 11-Jan-2016

219 views 0 download

Tags:

Transcript of CMPE 511 DATA FLOW MACHINES Mustafa Emre ERKOÇ 11/12/2003.

CMPE 511DATA FLOW MACHINES

Mustafa Emre ERKOÇ

11/12/2003

1)What is data flow technique?

2) History of Data Flow Machines

3)Data Flow Models

4)Types of Data Flow Systems

5)Macrodataflow

6)Conclusion

Presentation Outline

1)What is data flow technique?

Alternative computer design to stored program systems.

The Difference

Traditional Methods

An instruction executed when the previous instruction in a defined sequence has been executed

In this model,

It is executed when the operands required become available.

2)History of Data Flow Systems

Data flow technique was originally developed in 1960s by Karp and Miller as graphic means of representing computations.

In the early 1970s Denis and others began to develop computer architectures based upon the dataflow computational model.

3)Data Flow Models

It uses a directed graph called a data dependence graph or dataflow graph

+ nodes

arcs

The general flow of the model is top to down

Each node of a data graph can be represented as an activity template

Add

[ ]

[ ]

Examples of Instruction

Basic Operation

Conditional Operations

+3

5

ADD

[5]

[3]

Examples of Instruction

Loops

Some Problems with Data Flows

1)Arrays

2) Constraint of nodes/operators

4)Types of Data Flow Systems

1- Static

2- Dynamic

There is only one instance of a particular node firing at a a time

Multiple instances of node firing at a run-time is possible

4)Types of Data Flow Systems

Static Dataflow

1. Nodes fire when all input tokens appear and the previous output token have been consumed.

2.Input tokens are then removed and new output tokens are generated.

These rule allows pipeline computations and loops but not recursion or code sharing

There is a handshaking acknowledgement mechanism

4)Types of Data Flow Systems

Static Dataflow

4)Types of Data Flow Systems

Dynamic Dataflow

Dataflow graph being executed is not fixed thtough such as actoions as recursion and code sharing.

1. A node fires when all input tokens with the same tag number appear

2. More than one token is allowed on each arc and previous output tokens need not be consumed before the node van fire again

Rules

4)Types of Data Flow Systems(Cont’d)

Dynamic Dataflow

The dynamic token system needs storage for unmatch tokens.

There is no requirement of acknowlegment mechanism.

The term coloring has been used for the token labeling operation

4)Types of Data Flow Systems(Cont’d)

Dynamic Dataflow

Token Tags

To cover three situations of function and recursion, loops and array elemnets each token tag could have three fields.

Iterationlevel

Activation name

Index

4)Types of Data Flow Systems(Cont’d)

Dynamic Dataflow

4)Types of Data Flow Systems(Cont’d)

VLSI dataflow structures

Applied to VSLI arrays of interconnected cells.

Each cell performs primitive dataflow operations.

A cell will fire when all the operands for one of its stored instruction are recieved.

VLSI Dataflow Example

5)Macrodataflow

Dataflow in which each node can represent complex serial function

The nodes represent procedures/functions, the input tokens carry procedure/function parameters and the output tokens carry procedure/function results.

Rules:

1.Standard firing rule: node fires when all of the operands are recieved

2.Non-standard firing rule: node fires when certain specific operand are recieved. Each nodal operation is completed when all necessary operand are received.

5)Macrodataflow (cont’d)

6)Conclusion

Dataflow has had a fairly long development time, with a few groups studying the technique without it becoming widespread in commercial use.

Compitability with existing system inhibit the introduction of a radically different computer system requiring a different style of programming and different programming languages.

Applied to traditional stored program in the IBM 360/91.

But it were abondened after the introduction of cahce memories.