Claims Analysis
Total Claims: 10
Claim 1
Independent Claim
271 words
Cache controls associated with central processors (CPs) in a multiprocessor (MP), in which the CPs share a main storage (MS), each CP having a cache and a CP directory with a plurality of line entries, each directory line entry including a change (CH) flag, a valid (V) flag and a MS address field for a corresponding line of data in the associated cache, the MP cache controls comprising: each directory line entry also including a sharing (SH) flag settable to a sharing or non-sharing state, CP storage control means having line fetch means for fetching a line from MS when a store request or fetch request misses in the cache when a requested MS address field is not found in the associated CP cache directory, store-in-cache means with the CP storage control means for storing only into a selected line in the associated cache addressed by a CP store request when a selected SH flag is in a non-sharing state in a selected line entry in the cache directory, store-through means with the CP storage control means for enabling the CP to store into a selected line in both the cache and MS only if the SH flag is set to sharing state for the selected cache line entry, cross-interrogation (XI) means for broadcasting the MS address for a fetch request having a cache miss or for a store request either having a cache miss or having a cache hit with the selected SH flag being in a sharing state, the XI means signalling if any conflicting copy of the line is found in any other CP cache in the MP.
Claim 2
Dependent Claim
271 words
Cache controls associated with central processors (CPs) in a multiprocessor (MP), in which the CPs share a main storage (MS), each CP having a cache and a CP directory with a plurality of line entries, each directory line entry including a change (CH) flag, a valid (V) flag and a MS address field for a corresponding line of data in the associated cache, the MP cache controls comprising: each directory line entry also including a sharing (SH) flag settable to a sharing or non-sharing state, CP storage control means having line fetch means for fetching a line from MS when a store request or fetch request misses in the cache when a requested MS address field is not found in the associated CP cache directory, store-in-cache means with the CP storage control means for storing only into a selected line in the associated cache addressed by a CP store request when a selected SH flag is in a non-sharing state in a selected line entry in the cache directory, store-through means with the CP storage control means for enabling the CP to store into a selected line in both the cache and MS only if the SH flag is set to sharing state for the selected cache line entry, cross-interrogation (XI) means for broadcasting the MS address for a fetch request having a cache miss or for a store request either having a cache miss or having a cache hit with the selected SH flag being in a sharing state, the XI means signalling if any conflicting copy of the line is found in any other CP cache in the MP.
Claim 3
Dependent Claim
87 words
Cache controls for an MP as defined in claim 1, the CP control means further comprising: means for setting the selected SH flag to a non-sharing state when a store request or a fetch request misses in the associated cache directory and no conflicting line is found by the XI means, but the setting means setting the SH flag to sharing state for a selected line entry in the associated cache directory when the XI means detects a conflicting copy of the line in another CP cache.
Claim 4
Dependent Claim
110 words
Cache controls for a MP as defined in claim 2, the CP storage control means further comprising: the XI means requiring the SH flags for the conflicting line and the selected line to each be in a sharing state for a CP fetch request, the store-through means in each CP causing CP data stored into a selected line by a subsequent CP store request to also be stored into a corresponding line in MS and the change (CH) flag for the selected line remaining in unchanged state to indicate that the selected line is the same in both the selected cache and MS after the CP store request is completed.
Claim 5
Dependent Claim
52 words
Cache controls for a MP as defined in claim 3, the CP storage control means further comprising: the XI means causing an associated V bit to be set to invalid state for a conflicting line found in a remote CP cache in response to a store request to a local CP cache.
Claim 6
Dependent Claim
95 words
Cache controls for a MP as defined in claim 4, the CP storage control means further comprising: castout means with each CP cache directory for detecting if the CH flag is set to a changed state for a conflicting line and the castout means casting out the line to MS only if the line is in a changed state, and no further castout of the requested line being required from any cache in the MP during fetches and stores by plural CPs to the selected line while associated SH flags are set to sharing state.
Claim 7
Dependent Claim
58 words
Cache controls for an MP as defined in claims 1, 2, 3, 4, or 5, the XI means further comprising: a plurality of copy directories in the MP respectively corresponding to the CP cache directories, a sharing (SH) flag being provided in each line entry in each copy directory for being tested during broadcasts by the XI means.
Claim 8
Dependent Claim
476 words
Cache controls associated with central processors (CPs) in a multiprocessor (MP) system, in which the CPs share a main storage (MS), each CP having a cache and a CP cache directory with a plurality of line entries, each line entry including a change (CH) flag, a valid (V) flag and an MS address field for representing states of a corresponding line of data in the associated cache, the MP cache controls comprising: each line entry also including a sharing (SH) flag settable to a sharing or non-sharing state, means for detecting the states of the SH, CH and V flags in any line entry selected by an MS address of a CP store or fetch request, store-in-cache means with each cache directory for enabling any fetch or store request to fetch or store data into a requested line found in the cache regardless of the state of the SH flag, store-through means with each cache directory for enabling the CP to also store data of a store request into MS when the SH flag for a requested cache line is set to sharing state and the CH flag then being set to indicate an unchanged state, but the store-through means not storing data of a store request into MS when the SH flag is set to non-sharing state and the CH flag then being set to indicate a changed state of the line in the cache different from the corresponding line in MS, CP storage control means having line fetch means for fetching a requested line from MS into a requested cache upon a cache miss by a request, the V flag being set to valid state for the requested line fetched into the cache, cross-interrogation (XI) means for broadcasting the MS address field for a fetch or store request missing in the requested cache or a store request finding a requested line in the requested cache when the SH flag is set to sharing state in the selected line entry even though the store request does not miss in the requested cache, the XI means detecting if the requested line has a conflicting copy in any other CP cache in the MP, remote means for setting a V flag to invalid state in a remote CP cache directory entry for any conflicting line entry found in the remote cache directory due to a storage request, remote castout means for casting out any conflicting line only if a corresponding CH flag indicates a changed state for the conflicting line, local means for setting the SH flag to a shared state for the requested line being accessed by the fetch or store request to enable store-through operations on the requested cache line and the corresponding line in MS, so that any subsequent request to the line by another processor avoids requiring a subsequent castout of the line.
Claim 9
Dependent Claim
476 words
Cache controls associated with central processors (CPs) in a multiprocessor (MP) system, in which the CPs share a main storage (MS), each CP having a cache and a CP cache directory with a plurality of line entries, each line entry including a change (CH) flag, a valid (V) flag and an MS address field for representing states of a corresponding line of data in the associated cache, the MP cache controls comprising: each line entry also including a sharing (SH) flag settable to a sharing or non-sharing state, means for detecting the states of the SH, CH and V flags in any line entry selected by an MS address of a CP store or fetch request, store-in-cache means with each cache directory for enabling any fetch or store request to fetch or store data into a requested line found in the cache regardless of the state of the SH flag, store-through means with each cache directory for enabling the CP to also store data of a store request into MS when the SH flag for a requested cache line is set to sharing state and the CH flag then being set to indicate an unchanged state, but the store-through means not storing data of a store request into MS when the SH flag is set to non-sharing state and the CH flag then being set to indicate a changed state of the line in the cache different from the corresponding line in MS, CP storage control means having line fetch means for fetching a requested line from MS into a requested cache upon a cache miss by a request, the V flag being set to valid state for the requested line fetched into the cache, cross-interrogation (XI) means for broadcasting the MS address field for a fetch or store request missing in the requested cache or a store request finding a requested line in the requested cache when the SH flag is set to sharing state in the selected line entry even though the store request does not miss in the requested cache, the XI means detecting if the requested line has a conflicting copy in any other CP cache in the MP, remote means for setting a V flag to invalid state in a remote CP cache directory entry for any conflicting line entry found in the remote cache directory due to a storage request, remote castout means for casting out any conflicting line only if a corresponding CH flag indicates a changed state for the conflicting line, local means for setting the SH flag to a shared state for the requested line being accessed by the fetch or store request to enable store-through operations on the requested cache line and the corresponding line in MS, so that any subsequent request to the line by another processor avoids requiring a subsequent castout of the line.
Claim 10
Dependent Claim
82 words
Cache controls for an MP as defined in claim 7, the MP cache controls further comprising: the CP storage control means setting the SH flag to a non-sharing state for a requested line in a local cache when a fetch or store request does not find a requested line entry and the XI means does not find any conflicting line, but setting the SH flag to a sharing state if the XI means finds a conflicting line in a remote cache directory.