IP Library Granted Patent US 10,360,151
Granted Patent B2
US 10,360,151 · App. 15/262,692 · Granted Jul 23, 2019

Cache memory system including first cache memory and second cache memory having multiple regions with different access speed and processor system

Inventors: Hiroki Noguchi (Kanagawa, JP); Shinobu Fujita (Tokyo, JP)
Assignee: Kabushiki Kaisha Toshiba
G06F12/0811G06F12/0804G06F12/0866G06F12/0897G06F12/123G06F2212/1024G06F2212/222G06F2212/225G06F2212/62Y02D10/13
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 10,360,151
App. No.
15/262,692
Granted
Jul 23, 2019
Kind
B2
Abstract

A cache memory system has a first cache memory, a second cache memory which comprises a nonvolatile memory capable of generating a plurality of regions having different access speeds and has access priority lower than the first cache memory, and a cache controller which carries out a control where data to be stored in the second cache memory is sorted to the plurality of regions and stored thereto in accordance with access conditions with respect to the first cache memory.

Claims (48)

1. A cache memory system comprising:

a first cache memory;

a second cache memory which comprises a nonvolatile memory capable of generating a plurality of regions having different access speeds and has access priority lower than the first cache memory; and

a cache controller which carries out a control where data to be stored in the second cache memory is sorted to the plurality of regions and stored thereto in accordance with access conditions with respect to the first cache memory,

wherein the plurality of regions comprises a first region and a second region whose access speed is lower than access speed of the first region,

the cache memory system comprises first access frequency measurement circuitry which measures access frequency of data stored in the first cache memory, and

the cache controller stores, in the first region, data whose write access frequency measured by the first access frequency measurement circuitry exceeds a predetermined threshold and stores, in the second region, data whose access frequency does not exceed the threshold, determines whether data to be read is stored in the first cache memory and the first region, and evicts the data determined to be stored in the first cache memory and the first region from the first region to store the data in the second region.

2. The cache memory system according to claim 1 , wherein the cache controller stores data in any one of the plurality of regions, when evicting the data from the first cache memory to the second cache memory, in accordance with access conditions of the data in the first cache memory.

3. The cache memory system according to claim 1 , wherein the plurality of regions comprises a first region and a second region whose access speed is lower than access speed of the first region, and

the cache controller moves a part of data stored in the first region to the second region when no space is left in the first region.

4. The cache memory system according to claim 1 , wherein the plurality of regions comprises a first region and a second region whose access speed is lower than access speed of the first region, and

the cache controller moves data from the first region to the second region when a readout request is issued with respect to the data stored in the first region.

5. The cache memory system according to claim 1 , wherein the first access frequency measurement circuitry is provided per cache line to access the first cache memory.

6. The cache memory system according to claim 5 , wherein the first access frequency measurement circuitry increments a measurement value whenever a corresponding cache line is accessed until the access frequency reaches a predetermined value, and after the access frequency reaches the predetermined value, in a case where another access occurs, the first access frequency measurement circuitry decrements a measurement value of the first access frequency measurement circuitry other than the first access frequency measurement circuitry whose access frequency has reached the predetermined value.

7. The cache memory system according to claim 1 , comprising:

a third cache memory which has access priority lower than the second cache memory;

second access frequency measurement circuitry which measures access frequency of data with next highest possibility of eviction in the second cache memory; and

third access frequency measurement circuitry which measures access frequency of data with next lowest possibility of eviction in the third cache memory,

wherein the cache controller controls memory sizes of the plurality of regions based on the access frequency measured by the second access frequency measurement circuitry and the access frequency measured by the third access frequency measurement circuitry.

8. The cache memory system according to claim 7 , wherein the second cache memory comprises a plurality of ways, the way comprising a plurality of cache lines, and

the cache controller comprises a way allocation controller which controls allocation of the plurality of ways to the plurality of regions, based on the access frequency measured by the second access frequency measurement circuitry and the access frequency measured by the third access frequency measurement circuitry.

9. The cache memory system according to claim 1 ,

wherein the second cache memory comprises a memory cell array comprising a plurality of memory cells, the memory cell comprising a transistor and a variable resistance device, and a region switch which switches a number of the memory cells used for readout and writing of 1-bit data, and

the cache controller controls the region switch in accordance with the access conditions with respect to the first cache memory.

10. A processor system comprising:

a first cache memory;

a second cache memory which comprises a nonvolatile memory capable of generating a plurality of regions having different access speeds and has access priority lower than the first cache memory; and

a cache controller which carries out a control where data to be stored in the second cache memory is sorted to the plurality of regions and stored thereto in accordance with access conditions with respect to the first cache memory,

wherein the plurality of regions comprises a first region and a second region whose access speed is lower than access speed of the first region,

the cache memory system comprises first access frequency measurement circuitry which measures access frequency of data stored in the first cache memory, and

the cache controller stores, in the first region, data whose write access frequency measured by the first access frequency measurement circuitry exceeds a predetermined threshold and stores, in the second region, data whose access frequency does not exceed the threshold, determines whether data to be read is stored in the first cache memory and the first region, and evicts the data determined to be stored in the first cache memory and the first region from the first region to store the data in the second region.

11. The processor system according to claim 10 , wherein the cache controller stores data in any one of the plurality of regions, when evicting the data from the first cache memory to the second cache memory, in accordance with access conditions of the data in the first cache memory.

12. The processor system according to claim 10 , wherein the plurality of regions comprises a first region and a second region whose access speed is lower than access speed of the first region, and

the cache controller moves a part of data stored in the first region to the second region when no space is left in the first region.

13. The processor system according to claim 10 , wherein the plurality of regions comprises a first region and a second region whose access speed is lower than access speed of the first region, and

the cache controller moves data from the first region to the second region when a readout request is issued with respect to the data stored in the first region.

14. The processor system according to claim 10 , wherein the first access frequency measurement circuitry is provided per cache line to access the first cache memory.

15. The processor system according to claim 14 , wherein the first access frequency measurement circuitry increments a measurement value whenever a corresponding cache line is accessed until the access frequency reaches a predetermined value, and after the access frequency reaches the predetermined value, in a case where another access occurs, the first access frequency measurement circuitry decrements a measurement value of the first access frequency measurement circuitry other than the first access frequency measurement circuitry whose access frequency has reached the predetermined value.

16. The processor system according to claim 10 , comprising:

a third cache memory which has access priority lower than the second cache memory;

second access frequency measurement circuitry which measures access frequency of data with next highest possibility of eviction in the second cache memory; and

third access frequency measurement circuitry which measures access frequency of data with next lowest possibility of eviction in the third cache memory,

wherein the cache controller controls memory sizes of the plurality of regions based on the access frequency measured by the second access frequency measurement circuitry and the access frequency measured by the third access frequency measurement circuitry.

17. The processor system according to claim 16 , wherein the second cache memory comprises a plurality of ways, the way comprising a plurality of cache lines, and

the cache controller comprises a way allocation controller which controls allocation of the plurality of ways to the plurality of regions, based on the access frequency measured by the second access frequency measurement circuitry and the access frequency measured by the third access frequency measurement circuitry.

18. The processor system according to claim 10 ,

wherein the second cache memory comprises a memory cell array comprising a plurality of memory cells, the memory cell comprising a transistor and a variable resistance device, and a region switch which switches a number of the memory cells used for readout and writing of 1-bit data, and

the cache controller controls the region switch in accordance with the access conditions with respect to the first cache memory.

Assignments (4)
DE-MERGER Recorded Dec 12, 2019
From: KABUSHIKI KAISHA TOSHIBA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 051260/0291 →
MERGER Recorded Dec 12, 2019
From: TOSHIBA MEMORY CORPORATION; K.K PANGEA
To: TOSHIBA MEMORY CORPORATION
Reel/Frame 051262/0776 →
CHANGE OF NAME AND ADDRESS Recorded Dec 12, 2019
From: TOSHIBA MEMORY CORPORATION
To: KIOXIA CORPORATION
Reel/Frame 051262/0881 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2016
From: NOGUCHI, HIROKI; FUJITA, SHINOBU
To: KABUSHIKI KAISHA TOSHIBA
Reel/Frame 040469/0316 →
Priority Claims (1)
JP 2015-183218 · Sep 16, 2015 · national
Continuity (1)
Related Publication 20170075808A1 · Mar 16, 2017