Patent US781988A successfully refreshed from Google Patents.
← Back to Patent Explorer
EP0495167A2 Expired / Lapsed EP ⏱️ 0.0 years remaining

Multiple asynchronous request handling

Assignee: International Business Machines Corp
•
Filing: 1991-11-07
•
Granted: —
•
Expires: 2011-11-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Plural requests for storage accessing are processed in plural stages of a storage-request pipeline. Pipeline processing is not interrupted when one or more requests must wait for a resource to start its processing, or when a pipeline stage must process for a long period in relation to the time allocated for a processing operation in the pipeline. Waiting is done in a wait path connected to a particular processing stage in the pipeline. A request is shunted from the pipeline into a wait path when processing the request in the pipeline would delay pipeline processing. When the wait has ended, a request re-enters the pipeline from its wait path. The pipeline is provided in a multiprocessor (MP) in which storage requests are provided asynchronously to a tightly coupled system storage and usually may be handled and processed asynchronously by the pipeline. The pipeline output may direct the processed requests to a shared intermediate cache or to the system main storage.

Inventors

  • 👤 Bradford Mason Bean
  • 👤 Anne Elizabeth Bierce
  • 👤 Neal Taylor Cristensen
  • 👤 Leo James Clark
  • 👤 Christine Comins Jones
  • 👤 Matthew Anthony Krygowski
  • 👤 Kevin Franklin Reick

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-06 05:49
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/30; G06F9/38; G06F9/3824

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 161 words
A multiprocessor system having a main storage (L3) shared by a plurality of CPUs each having a private cache (L1), comprising: storage request pipeline means for respectively holding a plurality of storage requests from the L1 caches in the process of being prepared for the main storage; priority means for receiving the L1 cache requests and gating each request to the pipeline means when given priority; waiting path means connected to the pipeline means for receiving a request from the pipeline means either to wait for an unavailable resource needed by the request or to wait while a multi-cycle processing step is performed with a resource for the request, other requests being processed by the pipeline means while a request is held in a waiting path; and an output of the waiting path means providing a waiting request to the priority means when the wait time is ended for the waiting request to enable the request to reenter the pipeline means.
Claim 2
Dependent Claim 184 words
A multiprocessor system having a main storage (L3) shared by a plurality of CPUs each having a private cache (L1), and a shared cache (L2) between the main storage and the private caches for being accessed by a request having an L1 cache miss, comprising: storage request pipeline means for respectively holding a plurality of storage requests from the L1 caches in the process of being prepared for the L2 cache or main storage; priority means for receiving the L1 cache requests and gating each request to the pipeline means when given priority; waiting path means connected to the pipeline means for receiving a request from the pipeline means either to wait for an unavailable resource needed by the request or to wait while a multi-cycle processing step is performed with a resource for the request, other requests being processed by the pipeline means while a request is held in a waiting path; and an output of the waiting path means providing a waiting request to the priority means when the unavailable resource becomes available to enable the request to reenter the pipeline means.
Claim 3
Dependent Claim 195 words
A multiprocessor system having a main storage (L3) shared by a plurality of CPUs each having a private cache (L1), and a shared cache (L2) between the main storage and the private caches for being accessed by a request having an L1 cache miss, comprising: storage request pipeline means having a plurality of stages for respectively holding storage requests from the L1 caches, stages in the pipeline processing respective requests at a predetermined cycle rate for being prepared for accessing an L2 cache directory; priority means for receiving the L1 cache requests and gating each request to an entrance to the pipeline means when given priority; waiting path means connected to the pipeline means for receiving a request from the pipeline means either to wait for an unavailable resource needed by the request or to wait while a multi-cycle processing step is performed with a resource for the request; and an output of the waiting path means providing a waiting request to the priority means when the awaited resource is available to enable the request to reenter the pipeline means, all requests received by the priority means contending to enter or reenter the pipeline means.
Claim 4
Dependent Claim 33 words
A multiprocessor system as defined in Claim 3, further comprising: each stage in the pipeline means performing a processing step on a resource for a request for preparing the request to access storage.
Claim 5
Dependent Claim 64 words
A multiprocessor system as defined in Claim 4, further comprising: a connection stage in the pipeline means connected to the wait path, and means for testing the availability state of a resource needed by a request at the connection stage to determine if the request is to be processed for a step at the stage or is to be sent to the wait path.
Claim 6
Dependent Claim 48 words
A multiprocessor system as defined in Claim 5, further comprising: resource release mean for indicating when a needed resource has become available to a request waiting in the wait path, and means for enabling the request to be sent to the priority means for re-entering the pipeline means.
Claim 7
Dependent Claim 67 words
A multiprocessor system as defined in Claim 4, further comprising: a connection stage in the pipeline means connected to the wait path, and means for shunting the request into the wait path when multiple cycles of processing are required for an available resource, or for an unavailable resource, to prevent the resource processing, and any waiting for the resource, from slowing the pipeline processing of other requests.
Claim 8
Dependent Claim 44 words
A multiprocessor system as defined in Claim 7, further comprising: resource release mean for indicating when a multi-cycle resource processing step is ending for a request placed in a wait path to avoid having the multi-cycle step slow the pipeline processing of other requests.
Claim 9
Dependent Claim 47 words
A multiprocessor system as defined in Claim 4, further comprising: a plurality of wait path means having inputs respectively connected to one or more stages of the pipeline means for enabling a plurality of requests to be held while processing of other requests continues in the pipeline.
Claim 10
Dependent Claim 57 words
A multiprocessor system as defined in Claim 4, further comprising: a plurality of wait path means having inputs respectively connected to the same stage of the pipeline means for enabling a plurality of requests to be held while processing of other requests continues in the pipeline, the requests in the different wait paths addressing different storage interleaves.
Claim 11
Dependent Claim 45 words
A multiprocessor system as defined in Claim 4, further comprising: different types of wait path means having inputs respectively connected to different stages of the pipeline means for enabling a plurality of requests to be held while processing of other requests continues in the pipeline.
Claim 12
Dependent Claim 92 words
A multiprocessor system as defined in Claim 11, further comprising: fetch and store types of wait path means, the fetch type having an input connected to one stage of the pipeline means for enabling a plurality of fetch requests to be held at the same time in the fetch wait paths, and the store type having an input connected to a different stage of the pipeline means for enabling a plurality of store requests to be held simultaneously in the store wait paths, while processing of other requests continues in the pipeline.
Claim 13
Dependent Claim 44 words
A multiprocessor system as defined in Claim 12, further comprising: the fetch and store types of wait path means each having an output connected to the priority means for enabling a request ending a wait period in any waiting path to re-enter the pipeline.
Claim 14
Dependent Claim 34 words
A multiprocessor system as defined in Claim 11, further comprising: a plurality of fetch type of wait path means respectively associated with different storage interleaves for receiving requests waiting for accessing the respective interleaves.
Claim 15
Dependent Claim 34 words
A multiprocessor system as defined in Claim 11, further comprising: a plurality of store type of wait path means respectively associated with different storage interleaves for receiving requests waiting for accessing the respective interleaves.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag