Claims Analysis
Total Claims: 28
Claim 1
Independent Claim
247 words
A data memory unit comprising: a load/store unit configured to execute load and store instructions wherein said load/store unit includes a first plurality of storage locations configured to store outstanding store instructions and associated store data, and wherein each one of said plurality of storage locations is further configured to store a checked bit; and a data cache coupled to said load/store unit wherein said data cache includes a second plurality of storage locations configured to store cache lines, and wherein said data cache is configured to lock a cache line stored within said second plurality of storage locations such that said cache line remains stored within said second plurality of storage locations at least until a clock cycle in which said lock is released; wherein said checked bit is indicative, when set, that said load/store unit has performed a load instruction which accesses a same cache line, within said data cache, as a store instruction stored in said one of said first plurality of storage locations and that said load instruction hit in said data cache, and wherein said load/store unit is configured to convey said store instruction to said data cache for storage without first checking said data cache for a hit by said store instruction if said checked bit is set, and wherein said load/store unit is configured to check said data cache for a hit by said store instruction prior to conveying said store instruction for storage if said checked bit is clear.
Claim 2
Dependent Claim
247 words
A data memory unit comprising: a load/store unit configured to execute load and store instructions wherein said load/store unit includes a first plurality of storage locations configured to store outstanding store instructions and associated store data, and wherein each one of said plurality of storage locations is further configured to store a checked bit; and a data cache coupled to said load/store unit wherein said data cache includes a second plurality of storage locations configured to store cache lines, and wherein said data cache is configured to lock a cache line stored within said second plurality of storage locations such that said cache line remains stored within said second plurality of storage locations at least until a clock cycle in which said lock is released; wherein said checked bit is indicative, when set, that said load/store unit has performed a load instruction which accesses a same cache line, within said data cache, as a store instruction stored in said one of said first plurality of storage locations and that said load instruction hit in said data cache, and wherein said load/store unit is configured to convey said store instruction to said data cache for storage without first checking said data cache for a hit by said store instruction if said checked bit is set, and wherein said load/store unit is configured to check said data cache for a hit by said store instruction prior to conveying said store instruction for storage if said checked bit is clear.
Claim 3
Dependent Claim
25 words
The data memory unit as recited in claim 1 wherein said data cache is further configured to lock a plurality of said cache lines simultaneously.
Claim 4
Dependent Claim
30 words
The data memory unit as recited in claim 1 wherein each one of said first plurality of storage locations within said load/store unit is configured to store a way value.
Claim 5
Dependent Claim
97 words
The data memory unit as recited in claim 3 wherein said way value stored within one of said first plurality of storage locations is provided to said first plurality of storage locations during a first clock cycle in which a load instruction accesses said data cache with a load address which is within said same cache line as an address associated with a store instruction stored within said one of said first plurality of storage locations, and wherein said way value is a way of said data cache in which said load address is found to hit.
Claim 6
Dependent Claim
102 words
The data memory unit as recited in claim 1 wherein said checked bit stored within one of said first plurality of storage locations is set by said load/store unit during a first clock cycle in which a load instruction accesses said data cache with a load address which is within said same cache line as an address associated with a store instruction stored within said one of said first plurality of storage locations, and wherein said checked bit stored within said one of said first plurality of storage locations is set if said load address is found to hit said data cache.
Claim 7
Dependent Claim
30 words
The data memory unit as recited in claim 1 wherein said data cache is configured to set a lock bit associated with said cache line that is to be locked.
Claim 8
Dependent Claim
89 words
The data memory unit as recited in claim 6 wherein said lock bit is set by said data cache during a first clock cycle in which a load instruction accesses said data cache with a load address which is within said same cache line as an address associated with a store instruction stored within one of said first plurality of storage locations of said load/store unit, and wherein said data cache is configured to set said lock bit if said load address is found to hit said data cache.
Claim 9
Dependent Claim
27 words
The data memory unit as recited in claim 6 wherein said lock bit is cleared during a first clock cycle in which a load-op-store instruction is cancelled.
Claim 10
Dependent Claim
39 words
The data memory unit as recited in claim 1 where said checked bits stored within said first plurality of storage locations within said load/store unit are cleared during a first clock cycle in which a load-op-store instruction is cancelled.
Claim 11
Dependent Claim
45 words
The data memory unit as recited in claim 1 wherein said first plurality of storage locations within said load/store buffer are further configured to store outstanding load instructions such that said first plurality of storage locations within said load/store unit forms a unified load/store buffer.
Claim 12
Dependent Claim
30 words
The data memory unit as recited in claim 1 wherein said load instruction and said store instruction comprise a load portion and a store portion of a load-op-store instruction, respectively.
Claim 13
Independent Claim
181 words
A method for storing store data into a data cache without first having to check said data cache for a hit on an address associated with said store data comprising: storing a store instruction into a buffer within a load/store unit; clearing a checked bit upon storing said store instruction into said buffer, setting said checked bit if a load instruction to a same cache line, within said data cache, as said store instruction is performed by said load/store unit and said load instruction hits in said data cache, storing said store data into said data cache during a first clock cycle if said checked bit associated with said store data is set without checking if said store instruction hits in said data cache; and checking said data cache for a hit by said store instruction during said first clock cycle if said checked bit associated with said stored data is clear, and storing said store data into said data cache during a second clock cycle subsequent to said first clock cycle if said store instruction hits in said data cache.
Claim 14
Independent Claim
181 words
A method for storing store data into a data cache without first having to check said data cache for a hit on an address associated with said store data comprising: storing a store instruction into a buffer within a load/store unit; clearing a checked bit upon storing said store instruction into said buffer, setting said checked bit if a load instruction to a same cache line, within said data cache, as said store instruction is performed by said load/store unit and said load instruction hits in said data cache, storing said store data into said data cache during a first clock cycle if said checked bit associated with said store data is set without checking if said store instruction hits in said data cache; and checking said data cache for a hit by said store instruction during said first clock cycle if said checked bit associated with said stored data is clear, and storing said store data into said data cache during a second clock cycle subsequent to said first clock cycle if said store instruction hits in said data cache.
Claim 15
Dependent Claim
42 words
The method as recited in claim 12 further comprising storing a way value associated with said same cache line in a storage location within said buffer upon said setting said checked bit, wherein said storage location is associated with said store instruction.
Claim 16
Dependent Claim
30 words
The method as recited in claim 12 further comprising setting a lock bit associated with said same cache line upon detecting that said load instruction hits said same cache line.
Claim 17
Dependent Claim
26 words
The method as recited in claim 14 further comprising clearing said lock bit during a third clock cycle in which a load-op-store type instruction is cancelled.
Claim 18
Dependent Claim
18 words
The method as recited in claim 15 further comprising clearing said check bit during said third clock cycle.
Claim 19
Dependent Claim
34 words
The method as recited in claim 15 further comprising clearing said lock bit associated with said cache line during a fourth clock cycle in which a store instruction is executed to said cache line.
Claim 20
Dependent Claim
28 words
The method as recited in claim 12 wherein said load instruction and said store instruction comprise a load portion and a store portion of a load-op-store instruction, respectively.
Claim 21
Dependent Claim
201 words
A data memory unit comprising: a load/store unit configured to execute load and store instructions wherein said load/store unit includes a first plurality of storage locations configured to store outstanding store instructions and associated store data, and wherein each one of said plurality of storage locations is further configured to store a checked bit; and a data cache coupled to said load/store unit wherein said data cache includes a second plurality of storage locations configured to store cache lines; wherein said checked bit is indicative, when set, that said load/store unit has performed a load instruction which accesses a same cache line, within said data cache, as a store instruction stored in said one of said first plurality of storage locations and that said load instruction hit in said data cache, and wherein said load/store unit is configured to convey said store instruction to said data cache for storage without first checking said data cache for a hit by said store instruction if said checked bit is set, and wherein said load/store unit is configured to check said data cache for a hit by said store instruction prior to conveying said store instruction for storage if said checked bit is clear.
Claim 22
Dependent Claim
201 words
A data memory unit comprising: a load/store unit configured to execute load and store instructions wherein said load/store unit includes a first plurality of storage locations configured to store outstanding store instructions and associated store data, and wherein each one of said plurality of storage locations is further configured to store a checked bit; and a data cache coupled to said load/store unit wherein said data cache includes a second plurality of storage locations configured to store cache lines; wherein said checked bit is indicative, when set, that said load/store unit has performed a load instruction which accesses a same cache line, within said data cache, as a store instruction stored in said one of said first plurality of storage locations and that said load instruction hit in said data cache, and wherein said load/store unit is configured to convey said store instruction to said data cache for storage without first checking said data cache for a hit by said store instruction if said checked bit is set, and wherein said load/store unit is configured to check said data cache for a hit by said store instruction prior to conveying said store instruction for storage if said checked bit is clear.
Claim 23
Dependent Claim
30 words
The data memory unit as recited in claim 19 wherein each one of said first plurality of storage locations within said load/store unit is configured to store a way value.
Claim 24
Dependent Claim
99 words
The data memory unit as recited in claim 20 wherein said way value stored within one of said first plurality of storage locations is provided to said first plurality of storage locations during a first clock cycle in which a load instruction accesses said data cache with a load address which is within the said same cache line as an address associated with a store instruction stored within said one of said first plurality of storage locations, and wherein said way value is the a way of said data cache in which said load address is found to hit.
Claim 25
Dependent Claim
102 words
The data memory unit as recited in claim 19 wherein said checked bit stored within one of said first plurality of storage locations is set by said load/store unit during a first clock cycle in which a load instruction accesses said data cache with a load address which is within said same cache line as an address associated with a store instruction stored within said one of said first plurality of storage locations, and wherein said checked bit stored within said one of said first plurality of storage locations is set if said load address is found to hit said data cache.
Claim 26
Dependent Claim
39 words
The data memory unit as recited in claim 19 where said checked bits stored within said first plurality of storage locations within said load/store unit are cleared during a first clock cycle in which a load-op-store instruction is cancelled.
Claim 27
Dependent Claim
78 words
The data memory unit as recited in claim 19 wherein said data cache is further configured to transfer said store data into a receiving cache line stored within said second plurality of storage locations within said data cache during a first clock cycle in which said checked bit associated with said store data is set wherein said receiving cache line is identified by an address associated with said store data and a way value associated with said address.
Claim 28
Dependent Claim
45 words
The data memory unit as recited in claim 19 wherein said first plurality of storage locations within said load/store buffer are further configured to store outstanding load instructions such that said first plurality of storage locations within said load/store unit forms a unified load/store buffer.