A Data Flow Multiprocessor
- 1 February 1977
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Computers
- Vol. C-26 (2) , 138-146
- https://doi.org/10.1109/tc.1977.5009292
Abstract
This paper presents the architecture of a highly concurrent multiprocessor which runs programs expressed in data flow notation. Sequencing of data flow instruction execution depends only on the availability of operands required by instructions. Because data flow instructions have no side effects, unrelated instructions can be executed concurrently without interference if each has its required operands. The data flow multiprocessor is hierarchically constructed as a network of simple modules. All module interactions are asynchronous. The principal working elements of the machine are a set of activation processors, each of which performs the execution of one invocation of a data flow procedure held in a local memory within the processor. A pipeline of logical units within each processor executes several concurrently active instructions. All data flow operations are performed within single processors except procedure calls, which cause the creation of new activations in other processors, and operations on large data structures, which are performed by structure controller modules using values stored in a central memory. Concurrency within a data flow procedure provides a processor with something to do while a slow operation is being processed. The behavior of the machine has been specified by a formal description language and has been shown to correctly implement the data flow language. The principal advantages of the data flow multiprocessor over conventional designs are reduced complexity of the processor-memory connection, greater use of pipelining, and a simpler representation and implementation of concurrent activity.Keywords
This publication has 4 references indexed in Scilit:
- A computer architecture for highly parallel signal processingPublished by Association for Computing Machinery (ACM) ,1974
- The working set model for program behaviorCommunications of the ACM, 1968
- Programming semantics for multiprogrammed computationsCommunications of the ACM, 1966
- A multiprocessor system designPublished by Association for Computing Machinery (ACM) ,1963