Abstract:
A system includes a first memory configured to store a first lookup table (LUT) with first metadata. A second memory is configured to store a second LUT with second metadata, wherein the first metadata includes a first mapping between logical addresses and physical addresses. The second metadata includes a second mapping between the logical addresses and the physical addresses. A control module is configured to update the first metadata. The control module is configured to update segments of the second metadata based on the first metadata at respective predetermined times. Each of the segments refers to a predetermined number of entries of the second LUT.
Abstract:
A system includes a selection module, a control module, an erasing module, and a read/write module. The selection module is configured to select X of Y memory blocks (i) based on fullness of the X memory blocks and (ii) in response to a write command, where X and Y are integers greater than or equal to 1. The Y memory blocks are located in first memory. The control module is configured to store first data from the X memory blocks in second memory. The erasing module is configured to erase the first data from the X memory blocks. The read/write module is configured to write second data to the X memory blocks based on the write command.
Abstract:
Methods, systems, and apparatus, including computer program products are described for calibrating servos, and in some implementations, calibrating spiral servos for use in self-servo-write SSW processes. In one aspect, a method is provide that includes rotating a machine readable medium, and detecting a spiral on the machine readable medium. Detecting a spiral on the machine readable medium includes detecting magnitudes of the spiral and a timing mark, storing a timestamp from a clock signal that corresponds to the timing mark of the spiral, determining a peak of the spiral from the magnitudes, and locking the clock signal to the peak of the spiral using the timestamp.
Abstract:
Methods, systems, and apparatus, including computer program products, are described for calibrating servos, and in some implementations for calibrating spiral servos for use in self-servo-write processes. In one aspect, a method is provided that includes determining a measured slope of a spiral, and calibrating radial spacing between servo tracks using the measured slope and a target slope.
Abstract:
Methods, systems and computer program products for detecting an end of a reference spiral band are described. A first portion of servo information may be written on a disk using the reference spiral band. By detecting an end of a reference spiral band, a new reference spiral band may be launched. A read/write head of a hard disk drive may subsequently use the new spiral band to write the remaining portion of the servo information, which aids the writing of data tracks on the disk.
Abstract:
A method of defining storage format in a data storage device having a plurality of storage media and a plurality of corresponding data transducer heads, each transducer head for recording on and playback of information from a corresponding storage medium. A storage format is defined in at least one region on each storage medium, wherein each region includes a plurality of concentric tracks for recording on and playback of information. The method includes: moving each storage medium with respect to the corresponding transducer head and reading data from each storage medium with the corresponding transducer head; measuring a record/playback performance capability of each transducer head; selecting a group of track densities, one track density for each region on a storage medium, based on the measured record/playback performance capability of the corresponding transducer head.
Abstract:
A solid state drive (SSD) includes an SSD control module configured to determine frequencies corresponding to how often data stored in respective logical addresses associated with the SSD is updated and form groups of the logical addresses according to the frequencies, and a memory control module configured to rewrite the data to physical addresses in blocks of an SSD storage region based on the groups.
Abstract:
Methods, systems and computer program products for detecting an end of a reference spiral band are described. A first portion of servo information may be written on a disk using the reference spiral band. By detecting an end of a reference spiral band, a new reference spiral band may be launched. A read/write head of a hard disk drive may subsequently use the new spiral band to write the remaining portion of the servo information, which aids the writing of data tracks on the disk.
Abstract:
Methods, systems, and apparatus, including computer program products, are described for calibrating servos, and in some implementations for calibrating spiral servos for use in self servo write processes. In one aspect, a method is provided that includes measuring a slope of a spiral written to a machine readable medium, and adjusting a parameter in accordance with the measured slope to calibrate spacing of servo tracks, with respect to variation between a target slope and the measured slope for the spiral, for writing the servo tracks to the machine readable medium using the spiral as a reference and the adjusted parameter to generate a same radial spacing between servo tracks from spirals with different slopes.
Abstract:
A drive control module of a solid-state drive (SSD) includes a first module that receives host commands from one of a host command buffer and a drive interface of the SSD, converts the host commands to stage commands, and determines whether to store the stage commands in a stage slot of a staging memory or leave the stage slot empty. A second module transfers data between a buffer and a flash memory based on the stage commands. The flash memory comprises flash arrays. A third module detects a first empty stage of one of the flash arrays and based on an empty stage timer value triggers at least one of an end of the first empty stage, a start of an at least partially full stage of the one of the flash arrays, or a start of a second empty stage of the one of the flash arrays.