Patent ID: 12197738

DETAILED DESCRIPTION

Conventional techniques for tracking hard-disk drive (HDD) wear or life expectancy often provide only a high-level view of actual drive usage, such as hours of operation or a number of sectors relocated within a drive. As noted, HDDs are a complex system of interlinked mechanical, electrical, and magnetic parts that operate in concert to facilitate the storage and access of data. With each generation of HDD release, this complexity and drive component tolerances become more critical as write density and storage capacity of the drives increase. Outside of catastrophic events, such as being dropped, these mechanical, electrical, and magnetic parts of the HDD wear gradually during the operating life of the HDD until a critical part failure occurs and the HDD dies. The loss of the HDD may be extremely expensive in terms of data loss, data recovery costs, service downtime (e.g., cloud resources), drive replacement costs, and so on. With the high-level view of drive usage provided by conventional techniques, users and other storage clients (e.g., data centers) are often unable to accurately estimate when the HDD will fail during its expected service life. As such, many HDDs fail unexpectedly before drive replacement or data backup are implemented, resulting in the loss of stored data or reduced availability of data storage services.

This disclosure describes apparatuses and techniques of health management for magnetic storage media. In contrast with conventional magnet writing techniques, the described apparatuses and techniques use metrics provided by a read channel that may more-accurately capture, directly or indirectly, gradual wear or degradation of components of a media drive. Generally, a read channel of a storage media drive processes and decodes signals when data is read from a storage media disk. The signal processing and decoding of the read signal by the read channel may include signal conditioning, sampling, equalization, detection, error-correction, or the like. As such, the read channel may determine or generate a wide variety of metrics (e.g., low-level analog and error-correction metrics) that reflect respective conditions of the electrical, mechanical, or magnetic components of the storage media drive.

Based on the metrics provided by the read channel, a media health manager may determine or update a health score for a portion or zone of magnetic storage media with a neural network. In some aspects, the neural network is pre-trained to classify a large volume of storage media metrics to a few or several health scores, which are useful to determine health of the magnetic storage media or health of a storage media drive. By so doing, internal operations of a storage media drive may be optimized to avoid areas of magnetic storage media with poor health or the storage media drive may be replaced based on this prediction of health. For example, most data centers or cloud service providers run millions of HDDs, which may be deployed across one or more locations. With the health scores provided by aspects of health management for magnetic storage media, data center administrators may efficiently implement HDD replacement or access redirection (e.g., to another HDD) before the HDD fails. This may enable the administrators to protect mission critical data and better ensure 24/7 availability of data server HDDs for compliance with various service level agreements (SLAs) for data access. In other cases, a media health manager may determine a probability of failure for one or more sectors of magnetic storage media. When a read of a sector is likely to fail, the media health manager may implement more aggressive error correction or notify a service provider (e.g., cloud) that the data will likely not be available, enabling the provider to obtain the desired data from another drive. In some cases, this may be effective to enable the service provider to meet the conditions of an SLA by providing the desired from an alternate location before waiting until an eventual read failure occurs with the low probability sector.

In various aspects of health management for magnetic storage media, a media health manager may determine, with a read channel, read metrics for a sector of the magnetic storage media that resides in a zone of magnetic storage media. The media health manager accesses read metrics of the zone and updates the read metrics of the zone based on the read metrics determined for the sector to provide updated read metrics for the zone of magnetic storage media. The media health manager then determines a health score for the zone of magnetic storage media with a neural network based on the updated read metrics of the zone of magnetic storage media. By so doing, gradual wear of the magnetic storage media may be predicted using the health score, enabling replacement of a magnetic storage media device before failure to improve reliability or availability of data stored to the magnetic storage media device.

The following discussion describes an operating environment, techniques that may be employed in the operating environment, and a System on Chip (SoC) in which components of the operating environment may be embodied. In the context of the present disclosure, reference is made to the operating environment by way of example only.

Operating Environment

FIG.1illustrates an example operating environment100having a computing device102, capable of storing or accessing various forms of data or information. Examples of a computing device102may include a laptop computer104, desktop computer106, and server108, any of which may be configured as part of a storage network or cloud storage. Further examples of a computing device102(not shown) may include a tablet computer, a set-top-box, a data storage appliance, wearable smart-device, television, content-streaming device, high-definition multimedia interface (HDMI) media stick, smart appliance, home automation controller, smart thermostat, Internet-of-Things (IoT) device, mobile-internet device (MID), a network-attached-storage (NAS) drive, aggregate storage system, gaming console, automotive entertainment device, automotive computing system, automotive control module (e.g., engine or power train control module), and so on.

Generally, the computing device102may provide, communicate, or store data for any suitable purpose, such as to enable functionalities of a particular type of device, provide a user interface, enable network access, implement gaming applications, playback media, provide navigation, edit content, provide data storage, or the like. Alternatively or additionally, the computing device102is capable of storing various data, such as databases, user data, multimedia, applications, operating systems, and the like. One or more computing devices102may be configured to provide remote data storage or services, such as cloud storage, archiving, backup, client services, records retention, and so on.

The computing device102includes a processor110and computer-readable storage media (CRM)112. The processor110may be implemented as any suitable type or number of processors, either single-core or multi-core (e.g., ARM or x86 processor cores), for executing instructions or commands of an operating system or other programs of the computing device102. The CRM112includes memory media114and a media drive116. The memory media or system memory of the computing device102may include any suitable type or combination of volatile memory or nonvolatile memory. For example, volatile memory of the computing device102may include various types of random-access memory (RAM), dynamic RAM (DRAM), static RAM (SRAM) or the like. The non-volatile memory may include read-only memory (ROM), electronically erasable programmable ROM (EEPROM) or Flash memory (e.g., NOR Flash or NAND Flash). These memories, individually or in combination, may store data associated with applications and/or an operating system of computing device102.

The media drive116of the computing device102may include one or more media drives or be implemented as part of a data storage system with which the computing device102is associated. In this example, the media drive116includes a hard-disk drive (HDD)118, which is capable of storing data and is described with reference to various aspects of health management for magnetic storage media. Alternatively or additionally, the media drive116may be configured as any suitable type of data storage drive or system, such as a storage device, storage drive, storage array, storage volume, or the like. Although described with reference to the computing device102, the media drive116may also be implemented separately as a standalone device or as part of a larger storage collective, such as a data center, server farm, or virtualized storage system (e.g., for cloud-based storage or services) in which aspects of health management for magnetic storage media are implemented.

The computing device102may also include I/O ports120, a graphics processing unit (GPU, not shown), and data interfaces122. Generally, the I/O ports120allow a computing device102to interact with other devices, peripherals, or users. For example, the I/O ports120may include or be coupled with a universal serial bus, human interface devices, audio inputs, audio outputs, or the like. The GPU processes and renders graphics-related data for computing device102, such as user interface elements of an operating system, applications, or the like. In some cases, the GPU accesses a portion of local memory to render graphics or includes dedicated memory for rendering graphics (e.g., video RAM) of the computing device102.

The data interfaces122of the computing device102provide connectivity to one or more networks and other devices connected to those networks. The data interfaces122may include wired interfaces, such as Ethernet or fiber optic interfaces for data communicated over a local network, intranet, or the Internet. Alternatively or additionally, the data interfaces122may include wireless interfaces that facilitate communication over wireless networks, such as wireless local-area-networks (WLANs), wide-area wireless networks (WANs, e.g., cellular networks), and/or wireless personal-area-networks (WPANs). Any of the data communicated through the I/O ports120or the data interfaces122may be written to or read from the storage system of the computing device102in accordance with one or more aspects of health management for magnetic storage media.

Returning to the media drive116, the computing device102may include the hard-disk drive118as shown and/or other types of storage media for which aspects of health management may be implemented. Although not shown, other configurations of the media drive116are also contemplated, such as a solid-state drive (SSD), a magnetic tape drive, optical media drives, HDD/SSD hybrid drives, and other storage systems that write data to storage media (e.g., magnetic or optical storage media). Alternatively or additionally, the computing device102may include an array of media drives or serve as a media drive aggregation device or host for multiple media drives in which aspects of health management may be implemented.

In this example, the disk drive118includes a head-disk assembly (HDA)124and drive control module126to implement or enable functionalities of the hard-disk drive118. In some cases, the drive control module126is implemented as a printed circuit board assembly (PCBA) with semiconductor devices, logic, or other circuitry. The HDA124includes one or more media disks128(or platters) mounted on an integrated spindle and motor (e.g., voice coil motor (VCM)) assembly130. The spindle and motor assembly130may rotate the media disk128under (or over) read/write heads132coupled with a head assembly (not shown) of the HDA124. The media disks128may be coated with a magnetically hard material (e.g., a particulate surface or a thin-film surface) and may be written to, or read from, a single side or both sides. The read/write heads132may be operably coupled with a pre-amplifier/writer module134(pre-amp/writer134) of the HDA124that includes pre-amplifier circuitry and other logic for amplifying write signals or read signals, respectively. The pre-amp/writer134may receive or store head selection, amplification, or sense current values useful for writing data to, or reading data from, the magnetic media202.

As shown inFIG.1, the example drive control module126of the hard-disk drive118may include a storage media controller136, a servo control unit138, and a read/write channel140(read channel140). The storage media controller136enables the computing device102to access contents of magnetic storage media of the media drive116, such as an operating system, applications, or data for applications or other services. The storage media controller may also write and read data of the computing device102to and from the magnetic storage media of the media drive. Generally, the drive control module126may direct or use the servo control unit138to control mechanical operations, such as read/write head132positioning through the HDA124and rotational speed control through the spindle and motor assembly130.

The read/write channel140may include digital-to-analog and analog-to-digital paths for converting write data to a write signals or converting read signals to read data, respectively. For example, the read channel140may process and decode signals when data is read from the media disk128. This signal processing and decoding of the read signal may include signal conditioning, sampling, equalization, detection, error-correction, or the like. How the read channel140is implemented and used varies and is described throughout this disclosure. The drive control module126or components thereof may be implemented as one or more IC chips, a System-on-Chip, a System-in-Package, or a microprocessor provided with or implementing a hard-disk-drive controller. The drive control module126may also include drive electronics (not shown) and/or include various interfaces, such as a host-bus interface, storage media interface, spindle interface, or a pre-amp/writer interface.

In some aspects, the read channel140includes or is associated with a media health manager142, neural networks144, and media health data146. The media health manager142may obtain metrics from the read channel140for a sector of magnetic storage media from which data is read. Based on the metrics provided by the read channel140, the media health manager142may determine or update a health score for a portion or zone of magnetic storage media, such as by using the neural networks144. One or more of these neural networks144may be pre-trained to classify a large volume of storage media metrics to a few or several health scores, which are useful to determine health of the magnetic storage media or health of a storage media drive. The media health data146may include previously computed health scores for zones or portions of the magnetic storage media, as well as averages of read channel metrics for sectors or tracks of the magnetic storage media. In some cases, the media health manager142stores the determined health scores for the portions or zones of the magnetic storage media to the media health data146, which may be part of an information table for the zones or the portions of magnetic storage media. How the media health manager142, neural networks144, or media health data146are implemented and used varies and is described throughout this disclosure.

By way of example, considerFIG.2which provides an example configuration of the hard-disk drive118, illustrated generally at200(shown without a protective enclosure). As shown inFIG.2, the HDA124of the hard-disk drive118includes an integrated spindle and motor assembly130by which media disks128(or platters) of magnetic storage media202are supported and/or operated. Generally, each of the media disks128may be portioned or divided into predefined zones or regions of the magnetic storage media202. In this example, a surface204of the media disk128is divided into or includes three zones206(e.g., circular belts/rings or wedges) that include a respective subset of tracks208and sectors210of the magnetic storage media202. Others of the media disks128or surfaces of those disks may be configured similarly to or differently (e.g., different number of zones) from those illustrated inFIG.2. In some aspects, the media health manager maintains a state of drive health in the form of zone health score cards for one or more of the zones206of the magnetic storage media.

During operation, an arm212may maneuver, and thus position a read/write head132(or multiple read/write heads132) over a desired track208or sector210of the magnetic storage media202on the media disk128. In various aspects, the read/write head132may include various numbers of head elements with combined or separate functions (e.g., dedicated R/W functions). For example, the read/write head132may include one or more readers (read heads/elements) and one writer (write head/element). In other cases, the read/write head132may include a dedicated write head (element) and one or more separate, additional dedicated read heads (elements). Alternatively or additionally, although multiple arms212are shown inFIG.2, the HDA124or spindle and motor assembly may be implemented with a single arm212or other suitable structures for positioning the read/write head132.

The HDA124and the drive control module126may be implemented separately, on separate substrates, and/or as separate PCBAs of a media drive. Signals or data communicated between the HDA124and the drive control module126may be carried through a flexible printed cable or other suitable connective structures, such as traces, connectors, bond wires, solder balls, or the like. The HDA124of the hard-disk drive118may be configured to perform write operations in accordance with any suitable recording technology, such as perpendicular magnetic recording (PMR), shingled magnetic recording (SMR), heat-assisted magnetic recording (HAMR), microwave assisted magnetic recording (MAMR), or the like.

FIG.2also illustrates at214a plan view of a media disk128with zones206of magnetic storage media202that are implemented in accordance with one or more aspects. In this example, tracks208and sectors210of a surface204of a platter216are organized or divided into three zones of magnetic storage media that include zone1206-1, zone2206-2, and zone3206-3. Although illustrated with three zones206, a platter216or surface204of a media disk128may be organized into or include any suitable number of zones206, such as zone1206-1to zone n206-n, where n is any suitable number. Generally, each zone206may be configured to include a subset of tracks208and sectors210of magnetic storage media202of a surface204. In some cases, the zones206are configured such that each zone includes an approximately equal number of sectors210or surface area of the platter216.

In various aspects of health management of magnetic storage media, the media health manager142may maintain health scores for the zones206of the media disk128. Generally, a zone health score may be updated based on metrics provided by the read channel140when a sector210of that zone206is accessed to read data from the sector210of magnetic storage media. The health score for the zone of magnetic storage media may indicate of a level of wear, a level of degradation, or a level of reliability of the zone of magnetic storage media. Alternatively or additionally, these zone health scores may also be compiled for multiple media disks128of a hard-disk drive118to enable determination of a drive health score for the hard-disk drive118.

FIG.3illustrates example configurations of a read channel and pre-amplifier generally at300, which are implemented in accordance with one or more aspects of health management for magnetic storage media. In this example, the media health manager142and an analog front-end302are operably coupled with the read channel140. Additionally, the neural networks144and media health data146operably coupled with or accessible by the media health manager142of the read channel140. Although shown inFIG.3as separate components or circuitry, the read channel140and media health manager142may be integrated as one component, separated among other components of the hard-disk drive118, and/or integrated with other microelectronics or circuitry of the pre-amp134and/or the read channel140.

In this example, the read channel140and other components are described in the context of reading data from sectors of the magnetic storage media202(magnetic media202). For example, a host system or computing device102may issue a read command for data stored to one or more sectors210of the media disk128. As the media disk128rotates under the read head132, the read head132senses magnetic fields304of data stored to the magnetic media202, which induce analog signals306at the read head132. The pre-amplifier134(pre-amp134) amplifies the analog signals306received from the read head132and provides amplified signals308to the analog front-end302of the read channel140.

Generally, the analog front-end302conditions and samples the amplified signals308(e.g., a read-back continuous time signal) provided by the pre-amp134. The read channel140converts the sampled signals into digital signal and recovers decoded data310, which is provided to the storage media controller136. The read channel140may include any suitable combination of an equalizer module, a detector module, an adaptation module, or a gain module for detection, equalization, and/or decoding of data310from signals received from the pre-amp134. Concluding the present example, the storage controller136may then send the decoded data310to a host interface314as read data312to fulfill the read command issued by the host system or computing device102.

In relation to various data access operations, such as read operations for data stored to one or more sectors210of the media disk128, the media health manager142may implement aspects of health management for magnetic storage media. Generally, a table of zone information and/or the media health data may include calibrated parameters associated with or useful to access a particular zone of magnetic storage media. The media health manager142or read channel140may maintain a state of magnetic storage media health in the form of zone health scores or score cards, such as by grading health of a zone on a scale of 1 (e.g., poor) to 5 (e.g., excellent). The health score for a zone may be updated or recalculated any time a sector is read from that particular zone. In some aspects, the media health manager generates or updates the health score by obtaining various internal metrics from the read channel for a given sector of the zone (e.g., during a read operation) and uses a machine learning algorithm or neural network to determine the health score based on the internal metrics. These internal metrics may include unrecovered sectors, retry method count, average errors corrected by error-correcting code, log likelihood ratio (LLR) probability density function (PDF) statistics, sync mark errors, various loop errors, or the like.

For example, when the media disk128seeks to a particular zone206to read one or more sectors210, the media health manager142may read previously computed zone metrics from the media health data146, which may be implemented as part of a table of zone information (not shown). Based on current metrics for the sectors210of the zone206being read, the media health manager updates both long-term and short-term averages of the metrics for these sectors210. The media health manager may then determine, with a neural network, a health score for the zone206based on the updated long-term and short-term metrics. The neural network may be pre-trained to map a wide variety of read channel metrics to a few or several health condition state. The updated health score for the zone206and updated metrics may also be written back to the media health data146or table of zone information on exit from a given zone.

Various aspects of health management for magnetic storage media described throughout the disclosure may be implemented by a media health manager142that interacts with the neural networks144(e.g.,FIGS.4and5) or any suitable artificial intelligence (AI) engine, AI models, or AI driver of or associated with a storage system controller or read channel With respect to processing various metrics of a storage media drive or system (e.g., read metrics, signal metrics, or electro-mechanical metrics), one or more of the neural networks144may be implemented with machine-learning that is based on one or more neural networks (e.g., pre-trained) for media health scoring, component wear estimation, or predicting drive health. Any AI model, AI algorithm, or neural network of the media health manager142may include a group of connected nodes, such as neurons or perceptrons, which are organized into one or more layers.

An instance of a neural network144associated with the media health manager142may be implemented with a deep neural network that includes an input layer, an output layer, and one or more hidden intermediate layers positioned between the input layer and the output layers of the neural network. Each node of the deep neural network may in turn be fully connected or partially connected between the layers of the neural network. A neural network144may be any deep neural network (DNN), such as a convolutional neural network (CNN) including one of AlexNet, ResNet, GoogleNet, MobileNet, or the like. Alternatively or additionally, a neural network144may include any suitable recurrent neural network (RNN) or any variation thereof. Generally, an AI model or neural network employed by the media health manager142may also include any other supervised learning, unsupervised learning, reinforcement learning algorithm, or the like.

In various aspects, a neural network144may be implemented as a recurrent neural network with connections between nodes forming a cycle to retain information from a previous portion of an input data sequence for a subsequent portion of the input data sequence (e.g., internal metrics of a read channel). Alternately, a neural network144may be implemented as a feed-forward neural network having connections between the nodes that do not form a cycle between input data sequences. In yet other cases, a neural network144of the media health manager142may include a convolutional neural network (CNN) with multilayer perceptrons where each neuron in a given layer is connected with all neurons of an adjacent layer. In some aspects, a neural network144is based on a convolutional neural network that may be applied to previous media health scoring to predict or forecast some form of subsequent or future health trend of the magnetic storage media. Alternately or additionally, the neural network144may include or utilize various regression models, such as multiple linear regression models, a single linear regression model, logistical regression models, stepwise regression models, multi-variate adaptive regression models, locally estimated scatterplot models, or the like.

By way of example, considerFIG.4in which an example configuration of a neural network is illustrated generally at400. This example neural network144is implemented in accordance with one or more aspects to compute health scores for a zone of magnetic storage media. Generally, the neural network144is configured to map or classify internal metrics402of the read channel140(read metrics402) to zone health scores404for the zones of magnetic storage media.

As shown inFIG.4, the inputs of the neural network144may include any suitable number of the internal metrics402of the read channel140. In some aspects, the neural network144is pre-trained to map the read metrics402to one of five zone health scores404that range from bad, caution, fair, good, and excellent. The read channel140may generate or have access to a wide variety of internal metrics, which may be useful in computing or determining a health score for a zone of magnetic storage media. In this example, the read metrics include an unrecovered sector rate406, an average retry method rate408, an average of off-track detections410, an average number of seek errors412, an average number of errors corrected by error-correcting code (ECC)414, an average syndrome weight in ECC416, an average number of ECC iterations418, an average of log likelihood ratio (LLR) probability density function (PDF) statistics420, an average mean square error (MSE) of front-end loop signals422, an average length of detected media defects424, an average length of analog-to-digital converter (ADC) saturation426, an average delta of an adaptive parameter428, an average of sync mark (SM) errors430, or other various metrics432. As such, based on the detailed internal metrics available to the media health manager142, the neural network144may determine zone health scores that predict storage media drive wear or reliability with much more accuracy than conventional techniques for tracking drive life by hours or sector re-mappings.

FIG.5illustrates at500an example configuration of a neural network implemented in accordance with one or more aspects to compute a probability of failure for a sector of magnetic storage media. In some aspects, a probability of sector failure may be useful to optimize queue management for data or select a particular pipeline for decoding data of a sector. For example, a front-end section of the read channel may classify each sector into one of three or five levels of signal-to-noise ratio, this classification may be used by a back-end section of the read channel to select a pipeline for decoding each sector to improve decoding efficiency. In this example, the neural network144is configured to determine for a sector, based on front-end metrics502, a probability of sector failure504. Using this probability of sector failure504, a back-end of the read channel140may select a pipeline for decoding the sector that is more likely to succeed than a default progression through multiple pipelines as initial attempts of decoding the sector fail. Alternatively or additionally, the media health manager may notify a service provider (e.g., cloud) that the data will likely not be available from the low probability sector, enabling the provider to obtain the desired data from another drive instead of waiting until the read operation eventually fails.

As shown inFIG.5, the front-end of the read channel140may generate or have access to a wide variety of internal metrics, which may be useful in computing or determining a probability of sector failure. In this example, the front-end metrics include an indication of sync mark found506, sync mark distribution508, off-track detected510, delta feed ahead finite impulse response (FAFIR) filter taps512, delta FIR-3T taps514, baseline accumulator516, frequency accumulator518, mutual information from Vmm and non-return to zero (NRZ)520, Vmm count with various thresholds522, MSE computed from error signal524, length of defect flags detected526, delta gain change528, delta ASC change530, or other various metrics532. As such, based on the detailed internal metrics available to the read channel140, the neural network144may predict a probability of sector failure504that is useful to alter or optimize pipeline selection to improve decoding of less-than-optimal sectors.

Techniques of Health Management for Magnetic Storage Media

The following discussion describes techniques of health management for magnetic storage media, which may enable improved data reliability or availability (e.g., uptime) by predicting or tracking health (e.g., wear) of magnetic storage media components. These techniques may be implemented using any of the environments and entities described herein, such as the read channel140, media health manager142, neural networks144, or media health data146. These techniques include methods600through900illustrated inFIGS.6-9, each of which is shown as a set of operations performed by one or more entities.

These methods are not necessarily limited to the orders of operations shown in the associated figures. Rather, any of the operations may be repeated, skipped, substituted, or re-ordered to implement various aspects described herein. Further, these methods may be used in conjunction with one another, in whole or in part, whether performed by the same entity, separate entities, or any combination thereof. For example, aspects of the methods described may be combined to implement health scores of various granularities for magnetic storage media, such as respective health scores for zones, surfaces, disks, or drives of magnetic storage media. In portions of the following discussion, reference will be made to the operating environment100ofFIG.1and entities ofFIGS.2-5. Such reference is not to be taken as limiting described aspects to the operating environment100, entities, configurations, or implementations, but rather as illustrative of one of a variety of examples. Alternatively or additionally, operations of the methods may also be implemented by or with entities described with reference to the System-on-Chip ofFIG.10and/or the storage media controller ofFIG.11.

FIG.6depicts an example method600for determining a health score for a zone of magnetic storage media, including operations performed by or with the read channel140, media health manager142, neural networks144, and/or media health data146.

At602, a request to read a sector of magnetic storage media is received. The sector of magnetic storage media may reside in a zone of magnetic storage media. In some cases, a read channel receives the request to read the sector (or data from the sector) from a storage media controller. The request may be one of multiple requests that result in multiple respective sectors being read from a particular sector of a media disk or platter of magnetic storage media. Alternatively or additionally, the media health manager may determine, from multiple zones of magnetic storage media, a zone of magnetic storage media in which the sector resides.

At604, read metrics are determined for the sector with a read channel. The read metrics are determined for the sector that is read based on the request. In some cases, the read metrics include internal metrics of the read channel, such as an unrecovered sector rate, an average retry method rate, an average number of off-track detections, an average number of seek errors, an average number of errors corrected by error-correcting code (ECC), an average syndrome weight in ECC, an average number of ECC iterations, an average of log likelihood ratio (LLR) probability density function (PDF) statistics, an average mean square error (MSE) of front-end loop signals, an average length of detected media defects, an average length of analog-to-digital converter (ADC) saturation, an average delta of an adaptive parameter, or an average of sync mark errors.

At606, read metrics of the zone of magnetic storage media are accessed. These read metrics may include previously determined or computed read metrics for sectors of the zone. In some cases, a table of zone information or repository of media health data is accessed to obtain the read metrics of the zone. Generally, the read metrics of the zone may include respective read metrics for the sector being read, as well as other sectors that reside in the zone of magnetic storage media. Alternatively or additionally, read metrics for a sector may include a long-term average of a particular read metric and a short-term average of the particular read metric.

At608, the read metrics of the zone of magnetic storage media are updated based on the read metrics determined for the sector of magnetic storage media. Read metrics for each sector read from the zone may be updated based on current respective read metrics provided by the read channel for that sector. In some cases, the updating may include updating both long-term and short-term averages of a metric of the sector.

At610, a health score is determined for the zone of magnetic storage media with a neural network. The neural network determines the health score based on the updated read metrics of the zone of magnetic storage media. The neural network may be configured or pre-trained to map the updated read metrics of the read channel to one of at least three health score classifications to determine the health score for the zone of magnetic storage media. The health score for the zone of magnetic storage media may indicate of a level of wear, a level of degradation, or a level of reliability of the zone of magnetic storage media.

Optionally at612, the health score of the zone of magnetic storage media is stored. The health score for the zone of magnetic storage media may be written to a table of zone information or repository of media health data. Alternatively or additionally, the updated read metrics for the sectors of the zone may also be written back to the table of zone information or repository of media health data.

Optionally at614, the health score of the zone of magnetic storage media is transmitted to a storage media controller. In some cases, sending the health score of the zone of the magnetic storage media to the storage media controller enables the storage media controller to compile the health score with other metrics to determine a health score for a media drive or higher-level storage entity with which the storage media controller is associated.

FIG.7depicts an example method700for determining a health score for a zone based on an average of read metrics provided by a read channel, including operations performed by or with the read channel140, media health manager142, neural networks144, and/or media health data146.

At702, read metrics for a sector of magnetic storage media are determined with a read channel. The sector of magnetic storage media may reside or be in a zone of magnetic storage media. In some cases, respective read metrics are determined for multiple sectors that are being read from the zone of magnetic storage media. Alternatively or additionally, the media health manager may determine, from multiple zones of magnetic storage media, a zone of magnetic storage media in which the sector resides.

At704, previously determined read metrics of the zone are read from a table of zone information. Generally, the previously determined read metrics of the zone may include respective read metrics for the sector being read, as well as other sectors that reside in the zone of magnetic storage media. Alternatively or additionally, read metrics for a sector may include a long-term average of a particular read metric and a short-term average of the particular read metric.

Optionally at706, a short-term average of the zone's read metrics is updated based on the read metrics determined for the sector. Generally, the short-term average of a read metric for the sector is updated based on the current read metric provided by the read channel In cases of multiple sectors read from the zone, respective short-term averages of read metrics may be updated for each of the multiple sectors read from the zone.

Optionally at708, a long-term average of the zone's read metrics is updated based on the read metrics determined for the sector. Generally, the long-term average of a read metric for the sector is updated based on the current read metric provided by the read channel In cases of multiple sectors read from the zone, respective long-term averages of read metrics may be updated for each of the multiple sectors read from the zone.

At710, a health score is determined for the zone of magnetic storage media with a neural network. The neural network determines the health score based on the updated short-term and/or long-term averages of the zone's read metrics. The neural network may be configured or pre-trained to map the updated short-term and/or long-term averages of the zone's read metrics to one of at least three health score classifications to determine the health score for the zone of magnetic storage media. The health score for the zone of magnetic storage media may indicate of a level of wear, a level of degradation, or a level of reliability of the zone of magnetic storage media.

At712, the health score of the zone of magnetic storage media is stored to the table of zone information. Alternatively or additionally, the health score for the zone of magnetic storage media may be written to a repository of media health data. At714, the updated short-term and long-term averages of the zone's read metrics are stored to the table of zone information. In some cases, the updated short-term and long-term averages of the zone's read metrics may be written to a repository of media health data.

Optionally at716, the health score of the zone of magnetic storage media is transmitted to a storage media controller. In some cases, sending the health score of the zone of the magnetic storage media to the storage media controller enables the storage media controller to compile the health score with other metrics (e.g., electro-mechanical or signal metrics) and use the combined metrics to determine a health score for a media drive or higher-level storage entity with which the storage media controller is associated.

FIG.8depicts an example method800for determining a storage media drive health score in accordance with one or more aspects, including operations performed by or with the read channel140, media health manager142, neural networks144, and/or media health data146.

At802, respective health scores for one or more zones of magnetic storage media are received from a read channel of a storage media drive. The respective health scores may be received from a media health manager or read channel associated with a platter or surface of a media disk on which the zones are embodied or organized.

At804, electro-mechanical metrics for the storage media drive are received from a spindle and voice coil motor assembly of the storage media drive. The electro-mechanical metrics may include any suitable metrics related to parameters, calibration information, or performance data associated with the spindle, voice coil motor, or other electro-mechanical components of the storage media drive.

At806, signal metrics for the storage media drive are received from a pre-amplifier of the storage media drive. The signal metrics may include various amplification or gain settings of the pre-amplifier. In some cases, the signal metrics include respective signal metrics for multiple platters or surfaces of magnetic storage media of the storage media drive.

At808, a drive health score is determined for the storage media drive based on the respective health scores of the zones, the electro-mechanical metrics, and the signal metrics. In some cases, at least two of the health scores, electro-mechanical metrics, or signal metrics are used to determine an overall or final health score for the storage media drive. The health score for the storage media drive may indicate of a level of wear, a level of degradation, or a level of reliability of the storage media drive.

FIG.9depicts an example method900for determining a probability of failure for a sector of magnetic storage media, including operations performed by or with the analog front-end302, media health manager142, neural networks144, and/or media health data146.

At902, a request to read a sector of magnetic storage media is received. The request may be received from a storage media controller associated with the media disk on which the sector resides. In some cases, the storage media controller requests that multiple sectors be read as part of a read command received from a host system or computing device.

At904, signal metrics for the sector of magnetic storage media are received from a front-end of a read channel. The front-end of the read channel140may generate or have access to a wide variety of internal metrics, which may be useful in computing or determining a probability of sector failure. For example, the front-end metrics may include an indication of sync mark found, sync mark distribution, off-track detected, delta FAFIR filter taps, delta FIR-3T taps, baseline accumulator, frequency accumulator, mutual information from Vmm and NRZ, Vmm count with various thresholds, MSE computed from error signal, length of defect flags detected, delta gain change, delta ASC change, or other various metrics.

At906, a probability of failure for the sector is determined with a neural network based on the signal metrics of the sector. The neural network144may be configured or pre-trained to determine for a probability of sector failure based on the signal metrics provided by the front-end.

At908, the probability of failure for the sector is provided to a back-end of the read channel. The back-end may use the probability of sector failure to select decoding parameters for the sector to improve decoding, detection, or error-correcting operations of the back-end. In some cases, a back-end of the read channel may select a pipeline for decoding the sector that is more likely to succeed than a default progression through multiple pipelines as initial attempts of decoding the sector fail.

System-On-Chip

FIG.10illustrates an exemplary System-on-Chip (SoC)1000that may implement various aspects of health management for magnetic storage media. The SoC1000may be implemented in any suitable device, such as a smart-phone, netbook, tablet computer, access point, network-attached storage, camera, smart appliance, printer, set-top box, server, solid-state drive (SSD), magnetic tape drive, hard-disk drive (HDD), storage drive array, memory module, storage media controller, storage media interface, head-disk assembly, magnetic media pre-amplifier, automotive computing system, or any other suitable type of device (e.g., others described herein). Although described with reference to a SoC, the entities ofFIG.10may also be implemented as other types of integrated circuits or embedded systems, such as an application-specific integrated-circuit (ASIC), memory controller, a read channel component, storage controller, communication controller, application-specific standard product (ASSP), digital signal processor (DSP), programmable SoC (PSoC), system-in-package (SiP), or field-programmable gate array (FPGA).

The SoC1000may be integrated with electronic circuitry, a microprocessor, memory, input-output (I/O) control logic, communication interfaces, firmware, and/or software useful to provide functionalities of a computing device or magnetic storage system, such as any of the devices or components described herein (e.g., hard-disk drive). The SoC1000may also include an integrated data bus or interconnect fabric (not shown) that couples the various components of the SoC for data communication or routing between the components. The integrated data bus, interconnect fabric, or other components of the SoC1000may be exposed or accessed through an external port, parallel data interface, serial data interface, peripheral component interface, or any other suitable data interface. For example, the components of the SoC1000may access or control external storage media or magnetic read circuitry through an external interface or off-chip data interface.

In this example, the SoC1000is shown with various components that include input-output (I/O) control logic1002and a hardware-based processor1004(processor1004), such as a microprocessor, processor core, application processor, DSP, or the like. The SoC1000also includes memory1006, which may include any type and/or combination of RAM, SRAM, DRAM, non-volatile memory, ROM, one-time programmable (OTP) memory, multiple-time programmable (MTP) memory, Flash memory, and/or other suitable electronic data storage. In some aspects, the processor1004and code (e.g., firmware) stored on the memory1006are implemented as a read/write channel module or as part of a storage media interface to provide various functionalities associated with health management for magnetic storage media. In the context of this disclosure, the memory1006stores data, code, instructions, or other information via non-transitory signals, and does not include carrier waves or transitory signals. Alternatively or additionally, SoC1000may comprise a data interface (not shown) for accessing additional or expandable off-chip storage media, such as magnetic memory or solid-state memory (e.g., Flash or NAND memory).

The SoC1000may also include firmware1008, applications, programs, software, and/or operating system, which may be embodied as processor-executable instructions maintained on the memory1006for execution by the processor1004to implement functionalities of the SoC1000. In this example the SoC1000includes a pre-amplifier interface1010to receive signals corresponding to data read from sectors of magnetic storage media in accordance with one or more aspects. The SoC1000may also include other communication interfaces, such as a transceiver interface for controlling or communicating with components of a local on-chip (not shown) or off-chip communication transceiver. Alternatively or additionally, the transceiver interface may also include or implement a signal interface to communicate radio frequency (RF), intermediate frequency (IF), or baseband frequency signals off-chip to facilitate wired or wireless communication through transceivers, physical layer transceivers (PHYs), or media access controllers (MACs) coupled to the SoC1000. For example, the SoC1000may include a transceiver interface configured to enable storage over a wired or wireless network, such as to provide a network attached storage (NAS) device with media health management features.

The SoC1000also includes an analog front-end302and read channel logic1012(e.g., front end section) for processing signals received from a pre-amplifier through the pre-amplifier interface1010. Generally, the analog front-end302conditions and samples a read signal (e.g., a read-back continuous time signal) provided by the pre-amplifier. The read channel logic1012may include any suitable combination of an equalizer module, a detector module, an adaptation module, or a gain module for detection, equalization, and decoding of data from read signals received from the pre-amplifier. In some aspects, the SoC1000includes a media health manager142, neural networks144, and media health data146, which may be implemented separately as shown or combined with a processing component or data interface. Alternatively or additionally, the SoC1000may include interfaces to a storage media controller or a spindle/motor assembly of a magnetic media disk drive.

As described herein, the media health manager may receive read metrics from a read channel (e.g., internal read channel or analog front-end metrics) and determine or update health scores of magnetic storage media zones based on the metrics and/or using a neural network to implement aspects of health management for magnetic storage media. Any of these entities may be embodied as disparate or combined components, as described with reference to various aspects presented herein. Examples of these components and/or entities, or corresponding functionality, are described with reference to the respective components or entities of the environment100ofFIG.1or respective configurations illustrated inFIGS.2-5. The media health manager142, either in whole or part, may be implemented as digital logic, circuitry, and/or processor-executable instructions maintained by the memory1006and executed by the processor1004to implement various aspects or features of health management for magnetic storage media.

The media health manager142, may be implemented independently or in combination with any suitable component or circuitry to implement aspects described herein. For example, media health manager may be implemented as part of a DSP, processor/storage bridge, I/O bridge, graphics processing unit, memory controller, storage controller, arithmetic logic unit (ALU), or the like. The media health manager142may also be provided integral with other entities of SoC1000, such as integrated with the processor1004, memory1006, a storage media interface, or firmware1008of the SoC1000. Alternatively or additionally, the media health manager142, and/or other components of the SoC1000may be implemented as hardware, firmware, fixed logic circuitry, or any combination thereof.

As another example, considerFIG.11which illustrates an example storage media controller1100in accordance with one or more aspects of health management for magnetic storage media. Generally, the storage media controller1100enables the computing device102to access contents of magnetic storage media, such as an operating system, applications, or data for applications or other services. The storage media controller may also write and read data of the computing device102to and from the magnetic storage media with which the controller is associated.

In various aspects, the storage media controller1100or any combination of components thereof may be implemented as a storage drive controller (e.g., HDD controller or HDD chipset), storage media controller, NAS controller, storage media interface, storage media endpoint, storage media target, or a storage aggregation controller for magnetic storage media, solid-state storage media, or the like (e.g., hybrid SSD/HDD storage systems). In some cases, the storage media controller1100is implemented similarly to or with components of the SoC1000as described with reference toFIG.10orFIG.1(e.g., storage media controller136). In other words, an instance of the SoC1000may be configured as a storage media controller (or sub-system of the controller), such as the storage media controller1100to manage magnetic storage media. In this example, the storage media controller1100includes input-output (I/O) control logic1102and a processor1104, such as a microprocessor, microcontroller, processor core, application processor, DSP, or the like. The storage media controller also includes a host interface1106(e.g., SATA, PCIe, NVMe, or Fabric interface) and a storage media interface1108(e.g., magnetic media interface or head-disk assembly (HDA) interface), which enable access to a host system (or fabric) and storage media, respectively. In this example, the storage media interface includes separate instances of a spindle/VCM interface1110, a pre-amp interface1112, and read/write channel interface1114, such as to enable communication with a head-disk assembly and read channel of a media drive. As shown inFIG.11, the storage media controller1100may also include a servo control unit138. In some cases, the servo control unit is operably coupled to the spindle interface1110and provides spindle or voice coil control for media drive operation.

In some aspects, the storage media controller1100implements aspects of health management for magnetic storage media when managing or enabling access to storage media (e.g., media disks) that is coupled to the storage media interface1108. In this example, the storage media controller1100includes a drive health manager1016that may include media health data146for multiple zones of magnetic storage media. In some aspects, the drive health manager1016receives read metrics or zone health scores from a read/write channel through the read/write channel interface1114. Using the read metrics or zone health scores from multiple media disks or media disk surfaces, the drive health manager1016may determine or update a health score for magnetic storage media (e.g., multiple disks) of a media drive (e.g., an overall health score for a HDD). Thus, the drive health manager1016may monitor and track respective health scores across multiple disks or surfaces of magnetic storage media of the media drive. Alternatively or additionally, the drive health manager1016may manage access to particular disks or surfaces based on a respective health score of those disks or surfaces. For example, if one disk of a media drive has a poor health score, the drive health manager1016may direct data access to other disks (e.g., with better health scores) of the media drive to improve data reliability and availability (e.g., uptime) of the media drive. In some aspects, the processor1104and firmware or logic of the storage media controller1100are implemented to provide various data writing or processing functionalities associated with health management for magnetic storage media.

The drive health manager1016of the storage media controller1100may be implemented separately as shown or combined with the processor1104, read/write channel interface1114, or storage media interface1108. In accordance with various aspects, the drive health manager1016may receive zone health scores from a read channel through the read/write channel interface1114, signal metrics from a pre-amplifier through the pre-amp interface1112, or electro-mechanical metrics from a spindle and VCM assembly from the spindle/VCM interface1110. The drive health manager1016may compile the zone health scores, signal metrics, and/or electro-mechanical metrics and compute an overall media drive health score for a HDD in which the storage media controller1100is embodied. This media drive health score may indicate an overall amount of wear on internal components of the HDD or a reliability of the HDD, enabling replacement of the HDD or data migration (or redirection) to another HDD before the HDD fails. Examples of these components and/or entities, or corresponding functionality, are described with reference to the respective components or entities of the environment100ofFIG.1or respective configurations illustrated inFIGS.2-5. The drive health manager1016(or media health manager142), either in whole or part, may be implemented as processor-executable instructions maintained by memory of the controller and executed by the processor1104to implement various aspects and/or features of health management for magnetic storage media.

Although the subject matter has been described in language specific to structural features and/or methodological operations, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific examples, features, or operations described herein, including orders in which they are performed.