Method for completing full cacheline stores with address-only bus operations
First Claim
1. In a data processing system having multiple processors each having a processor core, store queue (STQ) mechanism, RC mechanism, and associated processor cache, a method for facilitating cache line updates responsive to processor-issued store operations, said method comprising:
- determining when a store queue entry selected for dispatch by an RC machine provides an update to an entire cache line; and
completing said update to said entire cache line with address-only operations, wherein no data tenure is requested when an entire cache line is being overwritten.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and processor system that substantially eliminates data bus operations when completing updates of an entire cache line with a full store queue entry. The store queue within a processor chip is designed with a series of AND gates connecting individual bits of the byte enable bits of a corresponding entry. The AND output is fed to the STQ controller and signals when the entry is full. When full entries are selected for dispatch to the RC machines, the RC machine is signaled that the entry updates the entire cache line. The RC machine obtains write permission to the line, and then the RC machine overwrites the entire cache line. Because the entire cache line is overwritten, the data of the cache line is not retrieved when the request for the cache line misses at the cache or when data goes state before write permission is obtained by the RC machine.
-
Citations
22 Claims
-
1. In a data processing system having multiple processors each having a processor core, store queue (STQ) mechanism, RC mechanism, and associated processor cache, a method for facilitating cache line updates responsive to processor-issued store operations, said method comprising:
-
determining when a store queue entry selected for dispatch by an RC machine provides an update to an entire cache line; and
completing said update to said entire cache line with address-only operations, wherein no data tenure is requested when an entire cache line is being overwritten. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A processor chip for utilization within a data processing system having a memory hierarchy, said processor chip comprising:
-
a processor core;
a store queue having multiple entries, each entry including registers for storing address and data of store operations issued by the processor core and byte-enable bits, one for each smallest storage granule of data that may be stored by a store operation;
a store queue (STQ) controller that monitors and controls said store queue;
arbitration logic associated with said STQ controller that selects an entry from among multiple eligible entries available for dispatch to be stored in a lower level cache; and
an RC mechanism that perform updates to cache lines within said lower level cache utilizing data from the entry selected for dispatch; and
first logic for determining when all storage granules within a store queue entry have received data from said processor core before said entry is selected for dispatch; and
second logic within an RC machine of said RC mechanism assigned to update a target cache line with data of said entry for completing said update of the target cache line without initiating a data tenure on the system bus, wherein said update is completed regardless of whether said cache line is present in said lower level cache or said cache line data is stale. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
-
16. A data processing system comprising:
-
a processor chip having a processor core, store queue (STQ) mechanism, RC mechanism, and associated processor cache;
a memory hierarchy coupled to said processor chip and providing coherent memory operation;
means for completing updates to a cache line of the processor cache with data from processor-issued stores, wherein when all storage granules of said cache line are being updated by a single RC machine tenure, the update is completed without requiring a data tenure on the system bus, regardless of whether the cache line being updated is present in the processor cache or the cache line is present but contains stale data. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification