Dataflow Architecture
Dataflow Architecture
Dataflow Architecture
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
XexecutionXSWITCHTFTexecutionSWITCHTFXexecutionXSWITCHTFFexecutionSWITCHTFMERGE nodeSWITCH node
xniSWITCHT FbPnjnkfgX
Describes dataflowgraph Data tokenspropagate along thearc Single AssignmentRule: variables canonly be assignedonce Examples: VAL,LUCID, …Mean = (x + y + z)/3;StDev = SQRT( (x^2 + y^2 + z^2 )/3– Mean^2);z y x2 2 2++÷3-++2÷3MeansqrtStDev
Static Dynamic
Allows at most 1 data tokenon the arc of data flow To Ensure 1 token per arc,must use hand shaking Can only run 1 iteration of aloop at a time Static Pipeline:o Check instructions foroperandso Select subset of availableinstructiono Update instructions that arecompleteExample: MIT Static <strong>Dataflow</strong>Machinesx2*sqrtdata tokenacknowledge signaldata arcz3n in jyacknowledgement arc
Pros:Simple ModelCons:Loops can not be run in parallelToken Traffic DoubleHand shaking wastes timeNo support for procedure calls
Allows multiple data tokens on the arc of dataflow Allows multiple loop iterations at one time An extra tag is added to tokens and containsaddress context and loop number Instruction Cells are changed to acceptmultiple tokens of different tags Overall effect is the creation of reentrant subgraphs Examples: MIT Tagged-Token Data Flow,Manchester <strong>Dataflow</strong>
Pros:Greater Performance( No handshaking,multiple tokens/arc, loops can run in parallel)Supports procedure callsCons:Tokens need to be buffered because matchingtokens takes LOTS of time(Large BufferNeeded)No instruction locality (can’t use registers)
Threaded <strong>Dataflow</strong>- subgraphs with lowdegrees of parallelisms are converted intosequential thread Monsoon- Replaces associative memory withram◦ Uses eight stage pipeline to inject instructions andexecute enabled instructions
Lack of locality make current storagehierarchy ineffective Matching tokens takes a large amount of timeand requires buffering Building CAMs large enough to holddependencies of a real program Data Structures are difficult to implement
Main problem: everywrite to a structurerequires the entirestructure to be rewritten Solution:◦ Define size of datastructure◦ Each element has a seriesof status bits (states)◦ Can only write an elementonce
Digital Signal Processing Network routing Graphics processing Telemetry Data warehousing Everywhere Parallel computing is used
Potential to unlock the inherent parallelism ofthe algorithm Naturally eliminates data hazards Current technologies in CAM are notadvanced enough to machines based in RAM Serious Problems still remain such asimplementing data structures
SILC, JURIJ , BORUT ROBIC, and THEO UNGERER, eds. "DATAFLOWARCHITECTURES."DATAFLOW ARCHITECTURES. Jožef Stefan Institute. Web. 7May 2013.Wikipedia contributors. "DATAFLOW ARCHITECTURES." Wikipedia, The FreeEncyclopedia. .Wikipedia contributors. "Out of Order Execution."Wikipedia, The FreeEncyclopedia. .K. Pagiamtzis, A. Sheikholeslami, “Content-Addressable Memory (CAM) Circuitsand <strong>Architecture</strong>s: A Tutorial and Survey,” IEEE J. of Solid-state circuits.March 2006 Rajaraman, V. Elements of Parallel Computing. EE. New Delhi: PHI Learning, 1990.86-108. Web.