IP Library › Granted Patent US 11,615,030
Granted Patent B2
US 11,615,030 · App. 17/304,117 · Granted Mar 28, 2023

Cache memory system and cache memory control method

Inventor: Shohei Onishi (Kawasaki, JP)
Assignee: Kioxia Corporation
G06F12/0893G06F12/0238G06F12/084G06F12/0833G06F13/1668
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,615,030
App. No.
17/304,117
Granted
Mar 28, 2023
Kind
B2
Abstract

According to one embodiment, a cache memory system includes a cache memory and a cache controller. The cache memory can store first data to be read or written by a processor. The cache controller is configured to execute a refresh. The refresh includes reading the first data stored in the cache memory and writing the read first data to the cache memory. When executing the refresh, the cache controller is configured to exchange the first data stored in a first area of the cache memory for second data stored in a second area of the cache memory.

Claims (44)

1. A cache memory system comprising:

a cache memory capable of storing first data to be read or written by a processor; and

a cache controller configured to execute a refresh, the refresh including reading the first data stored in the cache memory and writing the read first data to the cache memory, wherein

when executing the refresh, the cache controller is configured to exchange the first data stored in a first area of the cache memory for second data stored in a second area of the cache memory,

a first index is assigned to the first area,

the cache controller is configured to select the second area as an exchange destination from a plurality of areas to which the first index is assigned,

the cache memory includes the first area and the second area to which the first index is assigned and includes a third area and a fourth area to which a second index is assigned, and

when an information processing device including the processor is activated or when the information processing device returns from a sleep state, the cache controller is configured to assign the second index to the first area and the second area, and assign a third index to the third area and the fourth area.

2. The cache memory system according to claim 1 , wherein

when receiving a read request or a write request and an address from the processor, the cache controller is configured to read data from the cache memory or write data to the cache memory by using an index derived from the address.

3. The cache memory system according to claim 1 , wherein

the cache controller is configured to manage first deterioration information corresponding to the first area and second deterioration information corresponding to the second area, and select the first area and the second area for exchange based on the first deterioration information and the second deterioration information.

4. The cache memory system according to claim 3 , wherein

the first deterioration information is the number of times of first write for the first area,

the second deterioration information is the number of times of second write for the second area, and

the cache controller is configured to select the first area as an exchange source in a case where the number of times of the first write is equal to or more than a first threshold, and select the second area as an exchange destination in a case where the number of times of the second write is equal to or less than a second threshold.

5. The cache memory system according to claim 1 , wherein

the cache controller is configured to manage the number of times of write for each of the areas, select the first area with a maximum number of times of write as an exchange source among the areas to which the first index is assigned, and select the second area with a minimum number of times of write as the exchange destination among the areas to which the first index is assigned.

6. The cache memory system according to claim 1 , wherein

the cache controller is configured to:

manage a plurality of pieces of deterioration information for each of a plurality of areas of the cache memory; and

select the first area and the second area for exchange based on the pieces of deterioration information.

7. The cache memory system according to claim 1 , wherein

the cache controller is configured to:

select the first area and the second area and executes a refresh of exchange the first data for the second data in a case where a condition for determining whether or not to perform the exchange is satisfied; and

execute a refresh of writing the first data stored in the first area in the cache memory to the first area in a case where the condition is not satisfied.

8. The cache memory system according to claim 1 , wherein

in a case where the first data is written to a write unit area of the cache memory, the cache controller reads third data corresponding to the write unit area from a main memory, writes the third data to the write unit area of the cache memory, and executes a read-modify-write for updating the write unit area with the first data received from the processor.

9. The cache memory system according to claim 1 , wherein

the cache controller is configured to write the first data including a tag which is an identifier of data stored in a cache line, valid information, update information, history information, and the data to a cache line of the cache memory.

10. The cache memory system according to claim 1 , wherein

the cache memory includes a first table and a second table,

the first table is a table for managing tag information including a tag which is an identifier of data stored in a cache line included in the cache memory, valid information, update information, and history information, and

the second table is a table for managing the data corresponding to the tag information.

11. The cache memory system according to claim 1 , wherein the cache memory is an N-way set-associative cache memory.

12. A cache memory system comprising:

a cache memory capable of storing first data to be read or written by a processor; and

a cache controller configured to control the cache memory, wherein

the cache memory includes a first area and a second area to which a first index is assigned and includes a third area and a fourth area to which a second index is assigned, and

when an information processing device including the processor is activated or when the information processing device returns from a sleep state, the cache controller is configured to assign the second index to the first area and the second area, and assign a third index to the third area and the fourth area.

13. The cache memory system according to claim 12 , wherein

the cache controller is configured to perform replacement of a plurality of indexes for a plurality of areas of the cache memory randomly, or based on a translation equation or a translation table.

14. The cache memory system according to claim 12 , wherein

the cache controller is configured to manage deterioration information for each of a plurality of areas of the cache memory, and perform replacement of a plurality of indexes for the plurality of areas based on the deterioration information.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2021
From: ONISHI, SHOHEI
To: KIOXIA CORPORATION
Reel/Frame 057104/0872 →
Priority Claims (1)
JP JP2020-156370 · Sep 17, 2020 · national
Continuity (1)
Related Publication 20220083475A1 · Mar 17, 2022
Cited By (1)
US 12,454,053