Patentable/Patents/US-6779086
US-6779086

Symmetric multiprocessor systems with an independent super-coherent cache directory

PublishedAugust 17, 2004
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A multiprocessor data processing system comprising, in addition to a first and second processor having an respective first and second cache and a main cache directory affiliated with the first processor's cache, a secondary cache directory of the first cache, which contains a subset of cache line addresses from the main cache directory corresponding to cache lines that are in a first or second coherency state, where the second coherency state indicates to the first processor that requests issued from the first processor for a cache line whose address is within the secondary directory should utilize super-coherent data currently available in the first cache and should not be issued on the system interconnect. Additionally, the cache controller logic includes a clear on barrier flag (COBF) associated with the secondary directory, which is set whenever an operation of the first processor is issued to said system interconnect. If a barrier instruction is received by the first processor while the COBF is set, the contents of the secondary directory are immediately flushed and the cache lines are tagged with an invalid state.

Patent Claims
12 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A multiprocessor data processing system comprising: a first and second processor having an associated first and second cache, respectively, with shared cache lines; coupling means for interconnecting said first and second processor; a main cache directory affiliated with said first processor and said first cache; and a secondary cache directory of said first cache, which contains a subset of cache line addresses from said main cache directory corresponding to cache lines that are in a first or second coherency state, wherein said second coherency state indicates to said first processor that requests issued from said first processor for a cache line whose address is within said secondary directory should utilized data currently available in said first cache and should not be issued on said coupling means.

2

2. The data processing system of claim 1 , further comprising: means for snooping a request for data held within a shared cache line on a system bus of said data processing system, wherein said request is issued by a requesting processor and is snooped by a second processor of said data processing system whose cache contains an updated copy of said shared cache line; means, responsive to said snooping of said request by said second processor, for issuing a first response on said system bus indicating to the requesting processor that said requesting processor may utilize data currently stored within the shared cache line of a cache of said requesting processor.

3

3. The data processing system of claim 2 , further comprising: control logic for forwarding said cache line address in said first coherency state to said secondary directory.

4

4. The data processing system of claim 3 , further comprising: control logic for directing a transition from said first coherency state to said second coherency state.

5

5. The data processing system of claim 4 , further comprising: a coherency protocol that directs a transition from said first coherency state and said second coherency state to other coherency states defined within said protocol.

6

6. The data processing system of claim 5 , further comprising: means, responsive to a receipt of a predetermined condition, for changing said second coherency state to a third coherency state that indicates that said cache line is not valid.

7

7. The data processing system of claim 4 , further comprising: a clear on barrier flag (COBF) associated with said secondary directory; means for setting said COBF whenever an operation of said first processor is issued to said system bus; and means, responsive to a receipt of a barrier instruction at said first processor when said COBF is set, for dynamically flushing all contents of said secondary directory.

8

8. The data processing system of claim 1 , further comprising: means for setting a cache line of a first processor to a first coherency state that indicates that modification of data within a shared cache line of a second cache of a second processor has been snooped on a system bus of said data processing system; means for issuing a request for said cache line as a Z 1 read on a system bus, responsive to said cache line being in said first coherency state; means, responsive to a response indicating that said first processor should utilize data currently available within said cache line, for changing said first coherency state to said second coherency state that indicates to said first processor that subsequent request for said cache line should utilize the data within the cache and not be sent to said system bus; and means for providing said request with data of said cache line when said cache line indicates said second coherency state.

9

9. The data processing of claim 8 , further comprising: means, responsive to a subsequent request for said cache line when said cache line is in said second coherency state, for immediately providing said data within said cache line to said processor.

10

10. The data processing system of claim 9 , further comprising: means for monitoring a response to said request; and means, when said response indicates that said first processor should utilize new data and that a lock has been acquired for the cache line, for: retrying said Z 1 read until said shared cache line is provided to said first processor from said second processor; and changing said first coherency state to a fourth coherency state when said data is provided to said first processor.

11

11. The data processing system of claim 1 , further comprising means for removing said cache line address from within said secondary directory when said cache line is no longer in said first or second coherency state.

12

12. The data processing system of claim 11 , further comprising a logic component that removes a first entered cache line address out of said secondary directory when a new cache line address is received at said secondary directory while said secondary directory is full.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

October 16, 2001

Publication Date

August 17, 2004

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Symmetric multiprocessor systems with an independent super-coherent cache directory” (US-6779086). https://patentable.app/patents/US-6779086

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.