← Back to Patent Explorer
US5590328A Expired / Lapsed US ⏱️ 0.0 years remaining

Protocol parallel processing apparatus having a plurality of CPUs allocated to process hierarchical protocols

Assignee: Mitsubishi Electric Corp
•
Filing: 1995-03-06
•
Granted: 1996-12-31
•
Expires: 2015-03-06
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A protocol processing apparatus is presented having a plurality of CPUs for processing communication protocol data in parallel so as to achieve a high measure of efficiency. The apparatus provides a common memory including a CPU state table that is accessible by the plurality of CPUs. The CPU state table associates an idle flag, a remote node identifier, and a process start time with each of the plurality of CPUs. At least one line interface selects a CPU from the plurality of CPUs according to the contents of the CPU state table, selecting an idle CPU if one is available, selecting a CPU with the oldest process start time if no idle CPU is available, or selecting a busy CPU if the communication data to be processed is related to communication data already running on the busy CPU.

Inventors

  • 👤 Shoichiro Seno
  • 👤 Tetsuo Ideguchi

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-25 15:12
CPC Classifications
H; H04; H04L; H04L9/00; H04L9/40

Claims Analysis

Total Claims: 26
Claim 1
Independent Claim 180 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table, that associates each of the plurality of CPUs with an idle flag indicative of whether a CPU is currently processing a protocol data unit, a remote address indicative of a remote node identified by a protocol data unit, and a process start time indicative of a time at which each CPU begins processing a protocol data unit; and at least one line interface, coupled to the shared memory, including means for writing a remote address into the CPU state table when a protocol data unit is processed, and means for requesting one of the plurality of CPUs whose idle flag indicates that the CPU is idle to process the protocol data unit, and, means operative when no CPU is idle, for requesting a CPU with an oldest process start time to process the protocol data unit if none of the plurality of CPUs is idle.
Claim 2
Dependent Claim 180 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table, that associates each of the plurality of CPUs with an idle flag indicative of whether a CPU is currently processing a protocol data unit, a remote address indicative of a remote node identified by a protocol data unit, and a process start time indicative of a time at which each CPU begins processing a protocol data unit; and at least one line interface, coupled to the shared memory, including means for writing a remote address into the CPU state table when a protocol data unit is processed, and means for requesting one of the plurality of CPUs whose idle flag indicates that the CPU is idle to process the protocol data unit, and, means operative when no CPU is idle, for requesting a CPU with an oldest process start time to process the protocol data unit if none of the plurality of CPUs is idle.
Claim 3
Dependent Claim 45 words
A protocol parallel processing apparatus of claim 1, further comprising a host processor coupled to the at least one line interface and the shared memory, for receiving a protocol data unit and selecting one of the plurality of CPUs to process the protocol data unit.
Claim 4
Dependent Claim 46 words
The protocol processing apparatus of claim 1, wherein the at least one line interface further searches the CPU state table and selects one of the plurality of CPUs for processing the protocol data unit whose remote address matches the remote address of the protocol data unit.
Claim 5
Dependent Claim 40 words
The protocol processing apparatus of claim 1, wherein the CPU state table in the shared memory further associates each of the plurality of CPUs with a logical channel number indicative of a remote node identified by the protocol data unit.
Claim 6
Dependent Claim 133 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table that associates each of the plurality of CPUs with an idle flag, a connection number, and a process start time; and at least one line interface, coupled to the shared memory, including means for writing a connection number into the CPU state table, and requesting one of the plurality of CPUs whose idle flag indicates that it is idle to process the protocol data unit, and means, operative when no CPU is idle, for requesting a CPU having an oldest process start time to process the protocol data unit if none of the plurality of CPUs is idle.
Claim 7
Dependent Claim 133 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table that associates each of the plurality of CPUs with an idle flag, a connection number, and a process start time; and at least one line interface, coupled to the shared memory, including means for writing a connection number into the CPU state table, and requesting one of the plurality of CPUs whose idle flag indicates that it is idle to process the protocol data unit, and means, operative when no CPU is idle, for requesting a CPU having an oldest process start time to process the protocol data unit if none of the plurality of CPUs is idle.
Claim 8
Dependent Claim 45 words
A protocol parallel processing apparatus of claim 5, further comprising a host processor coupled to the at least one line interface and the shared memory, for receiving a protocol data unit and selecting one of the plurality of CPUs to process the protocol data unit.
Claim 9
Dependent Claim 46 words
The protocol processing apparatus of claim 5, wherein the at least one line interface further searches the CPU state table and selects one of the plurality of CPUs for processing the protocol data unit whose connection number matches the connection number of the protocol data unit.
Claim 10
Dependent Claim 146 words
A computer-implemented process for allocating a plurality of parallel CPUs, that share a common memory and network line interface, to process protocol data units (PDUs) in a network communication system, comprising the steps, performed by at least one of the plurality of CPU's, of: A) writing, by each CPU, an idle flag in the common memory to indicate whether the CPU is presently processing a PDU; B) writing, by each CPU, a process starting time in the common memory to indicate a time at which the CPU begins processing a PDU, the method further comprising the steps of: C) allocating, by the line interface in response to at least one CPU being idle, a received PDU to an idle CPU; and D) allocating, by the line interface in response to no CPUs being idle, the received PDU to a CPU with an oldest process starting time.
Claim 11
Dependent Claim 146 words
A computer-implemented process for allocating a plurality of parallel CPUs, that share a common memory and network line interface, to process protocol data units (PDUs) in a network communication system, comprising the steps, performed by at least one of the plurality of CPU's, of: A) writing, by each CPU, an idle flag in the common memory to indicate whether the CPU is presently processing a PDU; B) writing, by each CPU, a process starting time in the common memory to indicate a time at which the CPU begins processing a PDU, the method further comprising the steps of: C) allocating, by the line interface in response to at least one CPU being idle, a received PDU to an idle CPU; and D) allocating, by the line interface in response to no CPUs being idle, the received PDU to a CPU with an oldest process starting time.
Claim 12
Dependent Claim 33 words
The method of claim 8, further comprising the step of: storing a remote node identifier to identify an origin of a PDU being processed, if any, for each of the plurality of CPUs.
Claim 13
Dependent Claim 40 words
The method of claim 9, wherein, upon completion of processing a PDU, the method further comprises the step of storing constant values for the idle flag, the processor start time, and the remote node identifier indicative of an idle state.
Claim 14
Dependent Claim 131 words
A parallel data processing apparatus, comprising: a plurality of CPUs joined together by a common bus; a common memory coupled to the common bus; means for determining, within the common memory, whether each of the plurality of CPUs is busy processing a protocol data unit (PDU); means for recording, within the common memory, a process start time for each of the plurality of CPUs, indicative of a time at which each CPU began processing a PDU; means for searching the common memory for a CPU from the plurality of CPUs that is idle; means, responsive to the means for searching, for selecting a CPU that is idle, if one is found, and for selecting a CPU having an oldest process start time, if each of the plurality of CPUs is busy.
Claim 15
Dependent Claim 131 words
A parallel data processing apparatus, comprising: a plurality of CPUs joined together by a common bus; a common memory coupled to the common bus; means for determining, within the common memory, whether each of the plurality of CPUs is busy processing a protocol data unit (PDU); means for recording, within the common memory, a process start time for each of the plurality of CPUs, indicative of a time at which each CPU began processing a PDU; means for searching the common memory for a CPU from the plurality of CPUs that is idle; means, responsive to the means for searching, for selecting a CPU that is idle, if one is found, and for selecting a CPU having an oldest process start time, if each of the plurality of CPUs is busy.
Claim 16
Dependent Claim 40 words
The apparatus of claim 11, further comprising: means for recording an address, for each of the plurality of CPUs, into the common memory, indicative of a remote node designated by a PDU processed by each of the plurality of CPUs.
Claim 17
Dependent Claim 42 words
The apparatus of claim 12, further comprising: means for determining whether an address conveyed by a PDU matches an address recorded by the means for recording; and means for selecting a CPU whose recorded address matches the address conveyed by the PDU.
Claim 18
Dependent Claim 168 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table, that associates each of the plurality of CPUs with an idle flag indicative of whether a CPU is currently processing a protocol data unit, an identifier indicative of a remote node of a protocol data unit, and a process start time indicative of a time at which each CPU begins processing a protocol data unit; at least one line interface, coupled to the shared memory, including means for writing a remote address into the CPU state table when a protocol data unit is processed, and means for requesting one of the plurality of CPUs whose idle flag indicates that the CPU is idle to process the protocol data unit; and means, operative when no CPU is idle, for requesting a CPU with an oldest process start time to process the protocol data unit.
Claim 19
Dependent Claim 168 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table, that associates each of the plurality of CPUs with an idle flag indicative of whether a CPU is currently processing a protocol data unit, an identifier indicative of a remote node of a protocol data unit, and a process start time indicative of a time at which each CPU begins processing a protocol data unit; at least one line interface, coupled to the shared memory, including means for writing a remote address into the CPU state table when a protocol data unit is processed, and means for requesting one of the plurality of CPUs whose idle flag indicates that the CPU is idle to process the protocol data unit; and means, operative when no CPU is idle, for requesting a CPU with an oldest process start time to process the protocol data unit.
Claim 20
Dependent Claim 17 words
The apparatus of claim 14, wherein the identifier indicative of a remote node is a remote address.
Claim 21
Dependent Claim 17 words
The apparatus of claim 14, wherein the identifier indicative of a remote node is a connection number.
Claim 22
Dependent Claim 148 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table, that associates each of the plurality of CPUs with an idle flag indicative of whether a CPU is currently processing a protocol data unit, an identifier indicative of a remote node of a protocol data unit, and a process start time indicative of a time at which each CPU begins processing a protocol data unit; and at least one line interface, coupled to the shared memory, including means for writing a remote address into the CPU state table when a protocol data unit is processed, and means, responsive to no CPU being idle, for requesting one of the plurality of CPUs with an oldest process start time to process the protocol data unit.
Claim 23
Dependent Claim 148 words
A protocol parallel processing apparatus, comprising: a plurality of CPUs for processing a plurality of protocol data units; a shared memory accessible by each of the plurality of CPUs for storing a CPU state table, that associates each of the plurality of CPUs with an idle flag indicative of whether a CPU is currently processing a protocol data unit, an identifier indicative of a remote node of a protocol data unit, and a process start time indicative of a time at which each CPU begins processing a protocol data unit; and at least one line interface, coupled to the shared memory, including means for writing a remote address into the CPU state table when a protocol data unit is processed, and means, responsive to no CPU being idle, for requesting one of the plurality of CPUs with an oldest process start time to process the protocol data unit.
Claim 24
Dependent Claim 39 words
The apparatus of claim 17, further including means, responsive to at least one of the plurality of CPUs being idle, for requesting a CPU whose idle flag indicates that the CPU is idle to process the protocol data unit.
Claim 25
Dependent Claim 17 words
The apparatus of claim 17, wherein the identifier indicative of a remote node is a remote address.
Claim 26
Dependent Claim 17 words
The apparatus of claim 17, wherein the identifier indicative of a remote node is a connection number.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-12-31 2000-07-01 2000-12-31 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-12-31 2004-07-01 2004-12-31 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-12-31 2008-07-01 2008-12-31 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag