US 10,891,223 B2
Storage class memory status
Luca Porzio, Casalnuovo di Napoli (IT); Graziano Mirichigni, Vimercate (IT); and Danilo Caraccio, Milan (IT)
Assigned to Micron Technology, Inc., Boise, ID (US)
Filed by Micron Technology, Inc., Boise, ID (US)
Filed on Mar. 19, 2020, as Appl. No. 16/824,314.
Application 16/824,314 is a continuation of application No. 15/908,545, filed on Feb. 28, 2018, granted, now 10,642,728.
Prior Publication US 2020/0218645 A1, Jul. 9, 2020
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 12/00 (2006.01); G06F 12/02 (2006.01); G06F 12/1009 (2016.01); G06F 3/06 (2006.01); G11C 29/52 (2006.01)
CPC G06F 12/0238 (2013.01) [G06F 3/064 (2013.01); G06F 3/0673 (2013.01); G06F 12/1009 (2013.01); G11C 29/52 (2013.01); G06F 2212/7201 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A device comprising:
a storage class memory array; and
a controller including processing circuitry to perform operations comprising:
maintaining a storage portion characteristics data structure that comprises:
an array of elements to be accessed as a circular array, each element sized to store a reference to a storage portion in the storage class memory array;
a first pointer to a first element in the array of elements, the first pointer pointing to a start of a first list of elements in the array of elements, the first list of elements storing references to clean pages in the storage portion;
a second pointer to a second element in the array of elements, the second pointer pointing to a start of a second list of elements in the array of elements, the second list of elements storing references to invalidated pages in the storage portion, the start of the second list of elements following an end of the first list of elements; and
a third pointer to a third element in the array of elements, the third pointer pointing to a start of a third list of elements in the array of elements, the third list of elements storing references to unencumbered pages in the storage portion, the start of the third list of elements following an end of the second list of elements, the storage portion characteristics data structure having a direction of pointer motion that determines whether any one of the first pointer, the second pointer, and the third pointer is incremented or decremented when advanced to another element in the array of elements.