Abstract:
An apparatus includes a controller capable of being coupled to a host interface and a memory device. The memory device includes two or more non-hierarchical, non-volatile memory units having different minimum addressable data unit sizes. The controller is configured to at least perform determining a workload indicator of a data object being stored in the memory device via the host interface. The controller selects one of the memory units in response to the workload indicator of the data object corresponding to the minimum addressable data unit size of the selected memory unit corresponding to the workload indicator. The data object is stored in the selected memory unit in response thereto.
Abstract:
Method and apparatus for managing data in a memory. In accordance with some embodiments, a first data object and an associated first ECC data set are generated and stored in a non-volatile (NV) main memory responsive to a first set of data blocks having a selected logical address. A second data object and an associated second ECC data set are generated responsive to receipt of a second set of data blocks having the selected logical address. The second data object and the second ECC data set are subsequently stored in the in the NV main memory responsive to a mismatch between the first ECC data set and the second ECC data set.
Abstract:
Parameters indicative of resistance variance of the memory elements are tracked. The resistance variance affects values of data stored in the resistance-based memory elements. A hash function is performed for each memory element. The hash function returns a reference to one of a plurality of counter elements. A value of each counter element is modified in response to the tracked parameter data of the associated memory element. Read operations affecting the memory elements are adjusted based on the values for the associated counter elements.
Abstract:
A data storage device may generally be constructed and operated with at least one variable resistance memory cell configured with non-factory operational parameters by a controller. The non-factory operational parameters are assigned in response to an identified variance from a predetermined threshold in at least one variable resistance memory cell.
Abstract:
Method and apparatus for managing a memory, such as but not limited to a flash memory. In accordance with some embodiments, user data and associated metadata are stored in a memory. The metadata are arranged as a first sequence of snapshots of the metadata at different points in time during the operation of the memory, and a second sequence of intervening journals which reflect updates to the metadata from one snapshot to the next. Requested portions of the metadata are recovered from the memory using a selected snapshot in the first sequence and first and second journals in the second sequence.
Abstract:
Zones of a magnetic recording medium are allocated as a respective plurality of distributed media caches arranged in a predetermined order. For each of a plurality of caching events, cache data is written to one or more of the distributed media caches. A next of the media caches in the predetermined order is selected for the next caching event.
Abstract:
Zones of a magnetic recording medium are allocated as a respective plurality of distributed media caches arranged in a predetermined order. For each of a plurality of caching events, cache data is written to one or more of the distributed media caches. A next of the media caches in the predetermined order is selected for the next caching event.
Abstract:
A data storage device includes one or more storage media that include multiple physical storage locations. The device also includes at least one cache memory having a logical space that includes a plurality of separately managed logical block address (LBA) ranges. Additionally, a controller is included in the device. The controller is configured to receive data extents addressed by a first LBA and a logical block count. The controller is also configured to identify at least one separately managed LBA range of the plurality of separately managed LBA ranges in the at least one cache memory based on LBAs associated with at least some of the received data extents. The controller stores the at least some of the received data extents in substantially monotonically increasing LBA order in at least one physical storage location, of the at least one cache memory, assigned to the identified at least one LBA range.
Abstract:
Performance data of two or more actuators of a storage device is determined. The actuators independently move respective two or more heads over one or more disks coupled to a spindle motor. The independent movement of the two or more heads causes coupling therebetween that affects tracking of the two or more heads. Based on the performance data, bit aspect ratios associated with each of the two or more heads are selected that minimize performance impacts due to the coupling.
Abstract:
Zones of a magnetic recording medium are allocated as a respective plurality of distributed media caches arranged in in a predetermined order. For each of a plurality of caching events, cache data is written to one or more of the distributed media caches. A next of the media caches in the predetermined order is selected for the next caching event if the selected caches are not a last in the predetermined order. Otherwise a first media cache is selected in the predetermined order.