Patent US5623628A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5623628A Expired / Lapsed US ⏱️ 0.0 years remaining

Computer system and method for maintaining memory consistency in a pipelined, non-blocking caching bus request queue

Assignee: Intel Corp
•
Filing: 1994-03-02
•
Granted: 1997-04-22
•
Expires: 2014-03-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer system, and a method performed by it, having a mechanism for ensuring consistency of data among various level(s) of caching in a multi-level hierarchical memory system. The cache consistency mechanism includes an external bus request queue which and associated mechanism, which cooperate to monitor and control the issuance of data requests, such as read requests and write requests, onto an external bus. The computer system includes one or more CPUs each having this consistency mechanism.

Inventors

  • 👤 James M. Brayton
  • 👤 Michael W. Rhodehamel
  • 👤 Nitin V. Sarangdhar
  • 👤 Glenn J. Hinton

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 20:15
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/0815; G06F12/0831; G06F13/00; G06F13/14; G06F13/16; G06F13/18; G06F9/00; G06F9/06; G06F9/30; G06F9/3017; G06F9/38; G06F9/3824; G06F9/3826; G06F9/3828; G06F9/3834

Claims Analysis

Total Claims: 17
Claim 1
Independent Claim 107 words
A computer system including: a bus; a multi-level memory system coupled to the bus; a CPU coupled to the bus and to the multi-level memory system, and including, a cache consistency mechanism for ensuring consistency of data among various level(s) of cache within the multi-level memory system, the cache consistency mechanism including, an external bus request queue for ensuring that requests to a same address are issued and serviced on the bus according to a predetermined memory ordering scheme, wherein the external bus request queue maintains status information regarding both read and write requests which are to be issued to various levels of the multi-level memory system.
Claim 2
Dependent Claim 107 words
A computer system including: a bus; a multi-level memory system coupled to the bus; a CPU coupled to the bus and to the multi-level memory system, and including, a cache consistency mechanism for ensuring consistency of data among various level(s) of cache within the multi-level memory system, the cache consistency mechanism including, an external bus request queue for ensuring that requests to a same address are issued and serviced on the bus according to a predetermined memory ordering scheme, wherein the external bus request queue maintains status information regarding both read and write requests which are to be issued to various levels of the multi-level memory system.
Claim 3
Dependent Claim 20 words
The computer system of claim 1 wherein the external bus request queue comprises: a FIFO for queuing external bus requests.
Claim 4
Independent Claim 160 words
A method of operating a computer system to maintain memory consistency, the computer system including a pipelined external bus, one or more CPUs coupled to the external bus and including an external bus request queue, a memory system including a main memory and one or more levels of cache and coupled to the external bus, the method comprising the steps of: executing a program on the CPU, the program including a plurality of memory data requests which the program expects will be serviced according to a predetermined ordering, wherein the plurality of memory data requests includes both read and write requests; issuing the plurality of data requests onto the external bus in a pipelined ordering; queuing the issued data requests in entries of the external bus request queue to monitor status information regarding each issued data request; and updating the entries to maintain memory consistency, ensure that each request receives current data, and service requests according to the predetermined ordering.
Claim 5
Independent Claim 160 words
A method of operating a computer system to maintain memory consistency, the computer system including a pipelined external bus, one or more CPUs coupled to the external bus and including an external bus request queue, a memory system including a main memory and one or more levels of cache and coupled to the external bus, the method comprising the steps of: executing a program on the CPU, the program including a plurality of memory data requests which the program expects will be serviced according to a predetermined ordering, wherein the plurality of memory data requests includes both read and write requests; issuing the plurality of data requests onto the external bus in a pipelined ordering; queuing the issued data requests in entries of the external bus request queue to monitor status information regarding each issued data request; and updating the entries to maintain memory consistency, ensure that each request receives current data, and service requests according to the predetermined ordering.
Claim 6
Dependent Claim 79 words
The method of claim 3 wherein the CPU includes a bus agent (DCU, IFU) having L1 cache memory, and wherein: the issuing step includes the bus agent issuing a request specifying given data and indicating that it has not looked in the L1 cache for the given data; and the method further includes the step of, responsive to the bus agent indicating that it has not looked in the L1 cache, self-snooping the L1 cache at a later time.
Claim 7
Dependent Claim 114 words
The method of claim 4 wherein the external bus request queue includes a FIFO having a start and an end, wherein: the queuing step includes entering requests at the start of the FIFO; the updating step includes advancing requests from the start toward the end of the FIFO; and the method further comprises the steps of, looking for same address conflicts between a current request in the external bus request queue and a previously issued request which has been entered into the external bus request queue and has passed an L2 cache, and if a same address conflict is found, blocking the current request by sending it back to the start of the FIFO.
Claim 8
Independent Claim 95 words
An apparatus for use in a computer system having a multi-level memory system, the apparatus comprising: a cache consistency mechanism for ensuring consistency of data among various level(s) of cache within the multi-level memory system, the cache consistency mechanism including, an external bus request queue for ensuring that requests to a same address are issued and serviced on the bus according to a predetermined memory ordering scheme, wherein the external bus request queue maintains status information regarding both read and write requests which are to be issued to various levels of the multi-level memory system.
Claim 9
Independent Claim 95 words
An apparatus for use in a computer system having a multi-level memory system, the apparatus comprising: a cache consistency mechanism for ensuring consistency of data among various level(s) of cache within the multi-level memory system, the cache consistency mechanism including, an external bus request queue for ensuring that requests to a same address are issued and serviced on the bus according to a predetermined memory ordering scheme, wherein the external bus request queue maintains status information regarding both read and write requests which are to be issued to various levels of the multi-level memory system.
Claim 10
Dependent Claim 20 words
The apparatus of claim 6 wherein the external bus request queue comprises: a FIFO queue for queuing external bus requests.
Claim 11
Dependent Claim 51 words
The apparatus of claim 6, further comprising: a bus agent having an L1 cache memory; and a self-snooping logic for self-snooping the L1 cache memory at a later time in response to a request received from the bus agent which indicates that it has not looked in the L1 cache memory.
Claim 12
Dependent Claim 74 words
The apparatus of claim 6, further comprising: a control logic, coupled to the external bus request queue, to look for same address conflicts between a current request in the external bus request queue and a previously issued request which has been entered into the external bus request queue and has passed an L2 cache memory; and blocking logic, coupled to the external bus request queue and the control logic, to block the current request.
Claim 13
Dependent Claim 44 words
The apparatus of claim 9, wherein the external bus request queue includes a FIFO queue having a start and an end, and wherein the blocking logic is for blocking the current request by sending the current request to the start of the FIFO queue.
Claim 14
Independent Claim 156 words
An apparatus for use in a computer system to maintain memory consistency, the computer system including a pipelined external bus, one or more CPU's coupled to the external bus and including an external bus request queue, a memory system including a main memory and one or more levels of cache memory and coupled to the external bus, the apparatus comprising: means for executing a program on the CPU, the program including a plurality of data requests which the program expects will be serviced according to a predetermined ordering, wherein the plurality of memory data requests includes both read and write requests; means for issuing the plurality of data requests onto the external bus in a pipelined ordering; means for queuing data requests to monitor status information regarding each issued data request; and means for updating the entries to maintain memory consistency, ensure that each request receives current data, and service requests according to the predetermined ordering.
Claim 15
Independent Claim 156 words
An apparatus for use in a computer system to maintain memory consistency, the computer system including a pipelined external bus, one or more CPU's coupled to the external bus and including an external bus request queue, a memory system including a main memory and one or more levels of cache memory and coupled to the external bus, the apparatus comprising: means for executing a program on the CPU, the program including a plurality of data requests which the program expects will be serviced according to a predetermined ordering, wherein the plurality of memory data requests includes both read and write requests; means for issuing the plurality of data requests onto the external bus in a pipelined ordering; means for queuing data requests to monitor status information regarding each issued data request; and means for updating the entries to maintain memory consistency, ensure that each request receives current data, and service requests according to the predetermined ordering.
Claim 16
Dependent Claim 83 words
The apparatus of claim 11, wherein the CPU includes a bus agent (DCU,IFU) having L1 cache memory, and wherein: the means for issuing includes means for the bus agent issuing a request specifying given data and indicating that it has not looked in the L1 cache memory for the given data; and the apparatus further including means, responsive to the bus agent indicating that it has not looked in the L1 cache memory, for self-snooping the L1 cache memory at a later time.
Claim 17
Dependent Claim 108 words
The apparatus of claim 12 wherein: the means for queuing includes a FIFO having a start and an end; the means for updating includes means for advancing requests from the start toward the end of the FIFO; and the apparatus further comprises, means for entering requests at the start of the FIFO; means for looking for same address conflicts between a current request in the FIFO and a previously issued request which has been entered into the FIFO and has passed an L2 cache, and means for blocking, if a same address conflict is found, the current request by sending it back to the start of the FIFO.

References Cited (Backward Citations)

US5283890A Cited
US5317720A Cited
US5193163A Cited
US5261071A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-04-21 2000-10-21 2001-04-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-04-21 2004-10-21 2005-04-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-04-21 2008-10-21 2009-04-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag