|
|
|
| United States Patent | 5590284 |
| Link to this page | http://www.wikipatents.com/5590284.html |
| Inventor(s) | Crosetto; Dario B. (DeSoto, TX) |
| Abstract | The present device provides for a dynamically configurable communication
network having a multi-processor parallel processing system having a
serial communication network and a high speed parallel communication
network. The serial communication network is used to disseminate commands
from a master processor (100) to a plurality of slave processors (200) to
effect communication protocol, to control transmission of high density
data among nodes and to monitor each slave processor's status. The high
speed parallel processing network is used to effect the transmission of
high density data among nodes in the parallel processing system. Each node
comprises a transputer (104), a digital signal processor (114), a parallel
transfer controller (106), and two three-port memory devices. A
communication switch (108) within each node (100) connects it to a fast
parallel hardware channel (70) through which all high density data arrives
or leaves the node. |
|
|
|
Title Information  |
|
|
|
|
|
Drawing from US Patent 5590284 |
|
|
Parallel processing data network of master and slave transputers
controlled by a serial control network |
|
|
|
|
|
| Publication Date |
December 31, 1996 |
|
|
|
|
|
| Filing Date |
September 26, 1994 |
|
|
|
|
|
|
|
|
|
|
|
| Parent Case |
This is a continuation of application Ser. No. 07/856,622, filed Mar. 24,
1992, now abandoned. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Title Information  |
|
|
References  |
|
|
| *references marked with an asterisk below are user-added references |
|
U.S. References |
|
|
| Add a new US reference: |
| | Reference | Relevancy | Comments | Reference | Relevancy | Comments | 5418970 Gifford 712/20 May,1995 |      Your vote accepted [0 after 0 votes] | | 5280474 Nickolls 370/389 Jan,1994 |      Your vote accepted [0 after 0 votes] | | 5111399 Armitage 702/17 May,1992 |      Your vote accepted [0 after 0 votes] | | 5109226 MacLean, Jr. 341/95 Apr,1992 |      Your vote accepted [0 after 0 votes] | | 5056006 Acharya 711/147 Oct,1991 |      Your vote accepted [0 after 0 votes] | | 5051982 Brown 370/381 Sep,1991 |      Your vote accepted [0 after 0 votes] | | 5029331 Heichler 714/790 Jul,1991 |      Your vote accepted [0 after 0 votes] | | 5014189 Tamitani 712/13 May,1991 |      Your vote accepted [0 after 0 votes] | | 5005151 Kurkowski 710/36 Apr,1991 |      Your vote accepted [0 after 0 votes] | | 4992933 Taylor 712/22 Feb,1991 |      Your vote accepted [0 after 0 votes] | | 4990985 Kamata 257/241 Feb,1991 |      Your vote accepted [0 after 0 votes] | | 4989202 Soto 370/244 Jan,1991 |      Your vote accepted [0 after 0 votes] | | 4975913 Watanabe 370/535 Dec,1990 |      Your vote accepted [0 after 0 votes] | | 4912704 Bonicioli 370/359 Mar,1990 |      Your vote accepted [0 after 0 votes] | | 4891751 Call 712/6 Jan,1990 |      Your vote accepted [0 after 0 votes] | | 4876641 Cowley 712/13 Oct,1989 |      Your vote accepted [0 after 0 votes] | | 4858177 Smith 712/16 Aug,1989 |      Your vote accepted [0 after 0 votes] | | 4816993 Takahashi 712/28 Mar,1989 |      Your vote accepted [0 after 0 votes] | | 4811210 McAulay 710/317 Mar,1989 |      Your vote accepted [0 after 0 votes] | | 4811361 Bacou 375/242 Mar,1989 |      Your vote accepted [0 after 0 votes] | | 4800441 Sato 358/426.12 Jan,1989 |      Your vote accepted [0 after 0 votes] | | 4752777 Franaszek 340/2.24 Jun,1988 |      Your vote accepted [0 after 0 votes] | | 4641238 Kneib 710/110 Feb,1987 |      Your vote accepted [0 after 0 votes] | | 4610013 Long 714/11 Sep,1986 |      Your vote accepted [0 after 0 votes] | | 4591976 Webber 714/20 May,1986 |      Your vote accepted [0 after 0 votes] | | 4514807 Nogi 712/21 Apr,1985 |      Your vote accepted [0 after 0 votes] | | 4355354 Kempf 709/237 Oct,1982 |      Your vote accepted [0 after 0 votes] | | 4320452 Kempf 710/107 Mar,1982 |      Your vote accepted [0 after 0 votes] | | |
|
|
|
|
U.S. References |
|
|
Foreign References |
|
|
|
|
|
|
Foreign References |
|
|
Other References |
|
|
|
|
|
|
Other References |
|
|
|
|
|
References  |
|
|
|
|
|
| Market Size |
|
Estimate the gross annual revenues of the relevant market
sector:
|
| | |
| |
|
|
| Market Share |
|
Estimate the percentage of the relevant market sector this invention will capture:
|
| | |
| |
|
|
| Reasonable Royalty |
|
What percentage of gross sales should the inventor or assignee be paid?
|
| | |
| |
|
|
|
Public's "Guesstimation" of Royalty Value
|
| Market Size | N/A | [No votes] | | x | Market Share | N/A | [No votes] | | x | Reasonable Royalty | N/A | [No votes] |
| | N/A | |
| |
|
|
|
|
|
|
|
|
|
|
|
|
Market Review  |
|
|
Technical Review  |
|
|
Claims  |
|
|
I claim:
1. A parallel data transfer network for the transfer of data controlled by
a serial communication network to effect direct point to point
communication between processing nodes arranged in an n-dimensional array,
independent of physical or logical location of the processing nodes within
the array, said parallel data transfer network comprising:
(a) a plurality of processing nodes, each adapted for processing, sending
and receiving data and commands; one of said nodes acting as a master node
and at least one of said nodes acting as a slave node; each processing
node further comprising a transputer connected to (i) at least one serial
link for serial transmission of commands to and from the processing node,
(ii) at least one memory for retaining data being transferred to and from
the processing node, and (iii) a switch connecting the at least one
memory, through at least one parallel data bus, to a hardware parallel
channel for transmission of data to and from the processing node;
(b) a plurality of serial links connecting at least two of said processing
nodes for the serial transmission of commands between said at least two
processing nodes;
(c) a parallel hardware channel connected to said processing nodes by a
plurality of parallel data buses for the transmission of data between said
processing nodes in response to the commands serially transmitted over the
serial links; and
(d) a plurality of parallel data buses, each parallel data bus connecting
one of said processing nodes to the parallel hardware channel.
2. The network of claim 1 wherein said nodes each further comprise a
parallel transfer controller coupled between the at least one memory and
the transputer for controlling the flow of data in and out of the at least
one memory to and from the parallel hardware channel and to and from the
transputer.
3. The network of claim 1 wherein said processing nodes each further
comprise a digital signal processor coupled between the at least one
memory, the transputer, and the parallel hardware channel for processing
the data in the at least one memory prior to transmitting the data on the
parallel hardware channel and for processing the data in the at least one
memory after receiving it from the parallel hardware channel.
4. The network of claim 1 wherein the serial links of at least part of said
plurality of processing nodes are connected by a serial link crossbar
switch to effect direct point to point serial communication of parallel
data transmission control commands between processing nodes, arranged in
an n-dimensional array, independent of physical or logical location of the
processing nodes within the parallel processing array.
5. A parallel processing system comprising:
(a) a plurality of processing nodes, each adapted for processing, sending
and receiving data and commands; at least one of said processing nodes
acting as a master node and at least one of said processing nodes acting
as a slave node; each processing node further comprising a transputer
connected to (i) at least one serial link for serial transmission of
commands to and from the processing node, (ii) at least one memory for
retaining data being transferred to and from the processing node, and
(iii) a switch connecting the at least one memory, through at least one
parallel data bus, to a hardware parallel channel for transmission of data
to and from the processing node;
(b) a plurality of serial links connecting at least two of said processing
nodes for the serial transmission of commands between said at least two
processing nodes;
(c) a parallel hardware channel connected to said processing nodes by a
plurality of parallel data buses for the transmission of data between said
processing nodes under the control of the commands serially transmitted
over the serial links; and
(d) a plurality of parallel data buses, each parallel data bus connecting
one of said processing nodes to the parallel hardware channel.
6. The system of claim 5 further comprising a parallel transfer controller
coupled between the processing node and the parallel channel for
controlling the transfer of data over the parallel channel.
7. The system of claim 6 wherein
(a) the plurality of serial links is dedicated solely to the serial
transfer of control commands between the processing nodes and
(b) the parallel channel is dedicated solely to the transfer of data so
that the total time required to send control signals and to transfer data
is minimized.
8. The system of claim 7 wherein the transfer of control commands is
effected using a software protocol simplified to process only control
commands.
9. The system of claim 7 wherein the transfer of data is effected using a
protocol simplified to transmit and receive only data.
10. The system of claim 6 wherein each of the processing nodes comprises a
means for applying pattern recognition to the data.
11. The system of claim 5 wherein each of the processing nodes each
comprises a transputer.
12. The system of claim 5 wherein each of the processing nodes comprises a
means for compacting and expanding the data.
13. The system of claim 5 wherein each of the processing nodes comprises a
means for filtering and pattern recognition of the data.
14. A communication network in the parallel processing system of claim 5
comprising: a parallel network for parallel transfer of data controlled by
commands serially transmitted on a serial network to effect direct point
to point communication between at least two processing nodes of the
parallel processing system, arranged in an n-dimensional array,
independent of physical or logical location of the processing nodes within
the array. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
TECHNICAL FIELD OF THE INVENTION
The present invention relates in general to parallel processing systems and
in particular to the communication of commands and high density data
transfer among the dynamically configurable topologies of the processing
nodes of such systems.
BACKGROUND OF THE INVENTION
Large scientific data processing applications can often be partitioned such
that they may be carried out by several concurrently operating (parallel)
processors, each of which handles a different portion of the problem so as
to reduce the total processing time required. In a concurrent parallel
processing system, for a given topology, any node processor can be
attributed the task of "master processor" for a given time or application.
The master processor controls the distribution of tasks among the slave
processors and monitors and directs their progress. The slave processors
often share large volumes of data among themselves as required by the
particular tasks assigned to each.
The master processor typically provides the primary user interface to the
parallel processing system and as such may require rapid access to a large
volume of data. These system level functional requirements in turn place
the following requirements on the communication network serving the
parallel processing system: (1) flexibility to support dynamic
re-configuration and asynchronous communication; (2) wideband
communication to support rapid transmission of high density data; and (3)
real time communication of system commands and system status with reduced
software transmission overhead. These requirements are independent of the
parallel processing system configuration used (i.e,, fixed, dynamic, tree,
mesh, cubic, hypercubic) but do become increasingly critical as the
system's configuration increases in complexity. Increased communication
efficiency with respect to time has been a focus of the prior art.
Prior art solutions have taken a variety of approaches to improving data
communication speed in the demanding parallel processing environment. The
solutions have called for trade offs between speed, flexibility, the
maximum number of nodes permitted, and cost. For example, Cowley U.S. Pat.
No. 4,876,641 discloses a parallel processing network with a plurality of
processors located on a plurality of chips in multiple rows and columns.
The processors are interconnected with a first switching of logic means
(multiplexer) on each chip which interconnects the processors in parallel
data paths. The processor is also interconnected with a second switching
logic means (multiplexer) external to the chips which connect selective
rows and columns between chips in serial data paths.
The Cowley patent system involves communications between parallel
processing elements in both parallel and serial data paths. The processing
elements are envisioned as simple shift registers with the multiplexer
switching between serial and parallel data paths; this is considerably
different from the parallel transfer controller envisioned by the present
invention. There is no apparent distinction made between the types of
information flowing over serial and parallel paths. There is apparently no
discussion of transmitting command messages over the serial links and data
information over the parallel links.
Call U.S. Pat. No. 4,891,751 patent discloses a massively parallel
processing system which includes a transputer interfacing with a
processing node to other processing nodes. A separate peripheral
processing network of peripheral processing nodes are also interconnected
to transfer data back and forth. One network may interface with the other
or may bypass the other network as desired. However, data is transferred
by serial link transfers between nodes rather than on fast parallel
channels.
Kneib U.S. Pat. No. 4,641,238 shows a network of parallel processing nodes
communicating with each other over a serial bus. The nodes also
communicate over a serial bus to a central global memory which feeds to a
master processor. An arbiter controls which of the nodes is to be utilized
in various computations required by the master processor. Kneib shows
serial interconnection between the nodes. However they communicate by
parallel only indirectly through the global memory under the control of
master processor and arbiter. The local nodes do not determine the
transmission of data over the parallel bus. Moreover, there is no
distinction between transferring control commands on the serial bus and
data on the parallel bus as in the present invention.
Therefore a need exists for an efficient communication solution to support
a parallel processing network having a plurality of processing nodes. The
present invention meets this need through an optimized transfer of data
between processing nodes over a fast parallel channel in response to
control commands being sent between processing nodes over serial links.
The approach of the present invention facilitates efficient
reconfiguration of parallel system topology, re-distribution of tasks
among the nodes, and maintains maximum data transfer rates.
SUMMARY OF THE INVENTION
The present invention is a real-time high density data communication system
designed to operate efficiently in a dynamically configurable,
multi-processor parallel processing environment. In a concurrent parallel
processing system, for any one given topology, any one processor node can
be attributed the task of "master processor" for a given time or
application. The invention utilizes a serial communication network to
disseminate commands from the master processor to the slave processors, to
effect communication protocol to control transmission of high density data
among nodes, and to monitor the status of each slave processor. In a
concurrent parallel processing system, for a given topology, any node
processor can be attributed the task of "master processor" for a given
time or application. The invention utilizes a parallel channel
communication network in conjunction with two triple port memories at each
processor node (master or slaves) in the system to efficiently transmit
high density data for sustained or burst intervals without having to
interleave communication control messages. The reduced processing and cost
overhead of this invention is an improvement over general purpose
communication schemes such as Scalable Coherent Interface (SCI) and High
Performance Parallel Interface (HIPPI) which may also be used to provide a
communication for parallel processing systems.
Each processor node preferably includes a transputer for the purpose of
accomplishing the parallel processing task assigned to it within the
parallel processing system and initializing and controlling all devices
associated with that node. Each processor node preferably includes a
digital signal processor for the purpose of compacting, filtering the data
and implementing other mathematical algorithms. Each processor node also
preferably includes a parallel transfer controller for the purpose of
preparing its host node to send or receive parallel data in response to
control commands received or sent over the serial communication link by
the host transputer from or to other nodes.
In conjunction with the parallel transfer controller and the communication
data switch, the transputer directs the flow of data traffic within the
node and to or from the rest of the system. Each processor node also
preferably includes two triple port memories, memory x and memory y, for
the purpose of storing large volumes of data for transmission and
supporting read/write access by the transputer, digital signal processor,
and parallel transfer controller.
The transputer determines how memory X and memory Y should be allocated to
meet the memory requirements of the node. Upon the transputer's command,
the parallel transfer controller allocates memory X and memory Y resources
such that they may be accessed by the transputer or digital signal
processor (DSP) as required by the transaction or may send or receive data
to or from the fast parallel hardware channel. The parallel transfer
controller also monitors (counts number of words and keeps track of
starting and ending addresses) traffic over the parallel data bus
connecting the node to the fast parallel transfer channel.
The system of the present invention fulfills the requirements mentioned
earlier for a parallel processing system of flexibility, wide band
communication and real time transmission of the system commands and
status. A particular characteristic of the invention is the very low
software overhead time for starting and ending the transfer of data. This
characteristic of the present invention is in contrast with a SCI
(scalable coherent interface) system which is more suitable for connecting
processing nodes for general purpose applications and which has the
disadvantage of a high software protocol overhead time (25% of each
transmission is devoted to communication protocol).
The system of the present invention is extremely fast because the parallel
bus segments between the processors do not need any control lines (only
clock and data lines are used) and need not have arbitration, since this
functionality is provided by the processors communicating over the serial
links. Moreover, because the serial and parallel communication networks
are each-dedicated to the transmission of control information and data
respectively, the software processing of transmitted data is further
reduced. The system is structured around the concept of dedicated purpose
networks and as a result there is less processing time required to parse
and interpret each transmission.
If desired, a parallel processing system utilizing the approach of the
present invention could interface with a SCI or a HIPPI network through
the assignment of a processing node in the parallel processing system to
provide that interface. Exchange of communication control commands among
nodes over the serial link network is controlled by transputers using a
simplified software protocol which anticipates transmission or receipt of
such communication control commands. One is not prevented from using the
parallel processing system on the serial network with all the features
provided by conventional operating systems and languages, such as OCCAM (A
trademark of INMOS Group of Companies). Upon direction by the active
node's transputer, data is transmitted or received by the node under the
control of a parallel transfer controller utilizing a simplified protocol
which is essentially a hardware protocol.
In the preferred embodiment of the present invention the fast parallel
channel is dedicated solely to the transfer of data so that the hardware
protocol is minimized. Likewise, the serial links are dedicated solely to
the transfer of control signals so that the software protocol is
minimized. As a result, the total transfer time of the data, including
starting and ending protocols is minimized so that data may be transferred
at very high speeds between nodes. Thus, the system of the present
invention is particularly useful for image processing and pattern
recognition, speech recognition, measurement correlation of different
instruments at different sites, large bandwidth data acquisition systems,
data correlation for trigger decisions and data acquisition/compression in
high energy physics experiments.
The system is economical in that it can be implemented using standard
highly advanced economical components such as commercially available
processors, operating systems, higher order language compilers, serial
links and cross bar switches. The system is also simple in that it can be
implemented using only common digital circuits having counters and
buffers, and it requires simple protocols with only one handshake to
establish the necessary connections. Moreover, the command and control
flow is completely separated from the data flow. The system is also
versatile in that many different topologies can be realized by combining
various processors and different supporting languages on a modular
hardware structure. This advantage makes the invention easy to integrate
with existing operating systems for parallel processing and makes possible
the use of any of several conventional languages such as OCCAM, Parallel
C, Pascal, and ADA.
BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the present invention, and for further
details and advantages thereof, reference is now made to the following
Detailed Description taken in conjunction with the accompanying drawings,
in which:
FIG. 1 is a block diagram illustrating the application of the present
Parallel Data Transfer Network Controlled by a Serial Network to a fixed
mesh parallel processing configuration consisting of a master processor
node and three slave nodes;
FIG. 2 is a block diagram illustrating the application of a Parallel Data
Transfer Network Controlled by a Dynamically ReConfigurable Serial Network
to a dynamically configurable parallel processing system with one master
and a plurality of slave nodes;
FIG. 3 is a block diagram illustrating the configuration of a typical
processing node in a fixed parallel processing system applying the
Parallel Data Transfer Network Controlled by a Serial Network; and
FIG. 4 is a block diagram illustrating the configuration of a typical
processing node in an N-dimensional, dynamically configurable, parallel
processing system applying the Parallel Data Transfer Network Controlled
by a Dynamically Re-Configurable Serial Network.
FIG. 5 is a block diagram illustrating a preferred embodiment of the
parallel transfer controller.
FIG. 6 is a block diagram illustrating the transmission of communication
control commands using the Simplified Communication Control Command
Protocol over the Serial Communication Network to control the transmission
of data between processing nodes using the Simplified Parallel Data
Transfer Protocol over the Parallel Communication Network.
DETAILED DESCRIPTION OF THE DRAWINGS
The present invention relates to a method and apparatus for implementing
serial control of parallel data communication in a parallel processing
system which overcomes many of the disadvantages found in the prior art.
The present invention maximizes high density data communication speed and
yet maintains the flexibility of dynamic reconfiguration of the parallel
processing network topography.
FIG. 1 illustrates a typical multiple-instruction-multiple-data (MIMD)
parallel processing system consisting of a first master processor node 100
and first, second and third slave processor nodes 200, 202, 204 in a fixed
mesh configuration. This configuration utilizes the novel ap | | |