Magnetic disk drive

The magnetic disk drive addresses ATI by using a controller to perform targeted rewrite operations with stabilization and variable ATI counter updates, enhancing data readability and reducing unnecessary refreshes.

JP2026057085APending Publication Date: 2026-04-02KK TOSHIBA +1
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-09-20
Publication Date
2026-04-02

AI Technical Summary

Technical Problem

The accumulation of adjacent track interference (ATI) effects on magnetic disk drives makes it difficult to read data from adjacent tracks, necessitating a rewrite of all data before it becomes unreadable, which existing technologies address inadequately.

Method used

A magnetic disk drive with a controller that performs a rewrite operation by adding to and decrementing counters for storage areas, including stabilization operations and varying ATI counter updates based on write quality, to manage ATI effectively.

Benefits of technology

The solution effectively manages ATI by optimizing rewrite operations, reducing the frequency of unnecessary refreshes and improving data readability by accurately tracking and updating ATI counters based on write quality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026057085000001_ABST
    Figure 2026057085000001_ABST
Patent Text Reader

Abstract

To provide a magnetic disk device capable of suitably performing rewrite operations caused by ATI (Automatic Time Indicator). [Solution] The controller performs an addition to the value of a counter corresponding to a neighboring memory area of ​​one of the multiple memory areas in response to a write operation. The rewrite operation includes a seek operation, a stabilization operation that waits for the residual vibration of the magnetic head to decay, and rewriting all the data of the first memory area to the first memory area after the stabilization operation. The controller decrements the value of the counter corresponding to the first memory area among the multiple counters in response to the rewrite operation. The controller performs an addition to the value of the counter corresponding to the second memory area among the multiple counters in response to the rewrite operation. The stabilization operation includes an operation that determines whether the stabilization operation is complete based on whether a first condition is met. The first condition differs depending on the trigger for executing the retry operation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This embodiment relates to a magnetic disk drive.

Background Art

[0002] As one of the effects on adjacent tracks when writing to a magnetic disk, adjacent track interference (Adjacent Track Interference: ATI) is known. Depending on the number of writes to one track, the ATI effect on adjacent tracks accumulates, and eventually, it becomes difficult to read the data on adjacent tracks. Therefore, before it becomes difficult to read the data on adjacent tracks, a rewrite of all the data is performed on the adjacent tracks. This rewrite is also referred to as a refresh.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] One embodiment aims to provide a magnetic disk drive that can suitably execute a rewrite operation caused by ATI.

Means for Solving the Problems

[0005] According to one embodiment, a magnetic disk device comprises a magnetic disk, a magnetic head, memory, and a controller. The magnetic disk has a plurality of storage areas arranged radially. The memory stores a plurality of counters, each corresponding to a counter in the plurality of storage areas. The controller performs a write operation to write data to one of the plurality of storage areas. In response to the write operation, the controller adds to the value of the counter corresponding to a neighboring storage area of ​​the one of the plurality of storage areas. The controller performs a rewrite operation in response to a first trigger and a second trigger different from the first trigger. The rewrite operation includes a seek operation to move the magnetic head to a first storage area among the plurality of storage areas, a stabilization operation to wait for residual vibrations of the magnetic head to dampen after the seek operation is completed, and rewriting all data from the first storage area to the first storage area after the stabilization operation. In response to the rewrite operation, the controller decrements the value of the counter corresponding to the first storage area among the plurality of counters. In response to the rewrite operation, the controller adds to the value of the counter corresponding to a second storage area among the plurality of counters. The second memory area is a memory area adjacent to the first memory area among multiple memory areas. The stabilization operation includes an operation to determine whether the stabilization operation is complete or not based on whether the first condition is met. The first condition differs between the first trigger and the second trigger. [Brief explanation of the drawing]

[0006] [Figure 1] Figure 1 is a schematic diagram showing an example of the configuration of a magnetic disk device according to an embodiment. [Figure 2] Figure 2 shows an example of the configuration of a magnetic disk according to an embodiment. [Figure 3] Figure 3 is a diagram illustrating the stabilization operation according to the embodiment. [Figure 4] Figure 4 is a diagram illustrating the amount of ATI count added according to the embodiment. [Figure 5] Figure 5 shows an example of management information stored in RAM according to the embodiment. [Figure 6] Figure 6 shows an example of the structure of quality control information according to the embodiment. [Figure 7] Figure 7 is a diagram illustrating the ATI counter update ratio according to the embodiment. [Figure 8] Figure 8 shows an example of the configuration of parameter setting information according to the embodiment. [Figure 9] Figure 9 shows an example of the relationship between the stabilization time threshold and the adjusted refresh efficiency in the forced refresh operation according to the embodiment. [Figure 10] Figure 10 shows an example of the relationship between the stabilization time threshold and the adjusted refresh efficiency in the idle refresh operation according to the embodiment. [Figure 11] Figure 11 is a flowchart showing an example of a series of operations related to the operation of the light according to the embodiment. [Figure 12] Figure 12 is a flowchart showing an example of a trigger for executing a forced refresh operation according to the embodiment. [Figure 13] Figure 13 is a flowchart showing an example of a trigger for executing an idle refresh operation according to the embodiment. [Figure 14] Figure 14 is a flowchart showing an example of a series of operations related to the refresh operation according to the embodiment. [Figure 15] Figure 15 is a flowchart showing an example of the light quality control operation according to the embodiment. [Figure 16] Figure 16 shows an example of a calculation in the light quality control operation according to the embodiment. [Modes for carrying out the invention]

[0007] The magnetic disk device according to the embodiment will be described in detail below with reference to the attached drawings. However, the present invention is not limited to these embodiments.

[0008] (Embodiment) Figure 1 is a schematic diagram showing an example of the configuration of a magnetic disk device 1 according to an embodiment.

[0009] The magnetic disk drive 1 is connected to the host 2. The magnetic disk drive 1 can receive access commands, such as write commands and read commands, from the host 2.

[0010] The magnetic disk drive 1 includes a magnetic disk 11 on which a magnetic layer is formed on its surface. The magnetic disk drive 1 writes data to the magnetic disk 11 or reads data from the magnetic disk 11 in response to access commands.

[0011] Data is written and read via the magnetic head 22. In addition to the magnetic disk 11, the magnetic disk device 1 includes a spindle motor 12, a lamp 13, an actuator arm 15, a voice coil motor (VCM) 16, a motor driver IC (Integrated Circuit) 21, a magnetic head 22, a hard disk controller (HDC) 23, a head IC 24, a read / write channel (RWC) 25, a processor 26, RAM 27, FROM (Flash Read Only Memory) 28, and a buffer memory 29.

[0012] The magnetic disk 11 is rotated at a predetermined rotational speed by a spindle motor 12 mounted coaxially. The spindle motor 12 is driven by a motor driver IC 21.

[0013] The processor 26 controls the rotation of the spindle motor 12 and the VCM 16 via the motor driver IC 21.

[0014] The magnetic head 22 writes and reads data to and from the magnetic disk 11 using its write head 22w and read head 22r. The magnetic head 22 is mounted on the tip of the actuator arm 15. The magnetic head 22 is moved radially across the magnetic disk 11 by the VCM 16. Note that either one or both of the write head 22w and read head 22r on the magnetic head 22 may be provided in multiple quantities on a single magnetic head 22.

[0015] When the rotation of the magnetic disk 11 is stopped, the magnetic head 22 is moved onto the ramp 13. The ramp 13 holds the magnetic head 22 in a position away from the magnetic disk 11.

[0016] During read operations, the head IC 24 amplifies and outputs the signal read by the magnetic head 22 from the magnetic disk 11, and supplies it to the RWC 25. Furthermore, during write operations, the head IC 24 amplifies the signal corresponding to the data to be written, supplied by the RWC 25, and supplies it to the magnetic head 22.

[0017] HDC23 controls the transmission and reception of data between it and host 2 via the I / F bus, as well as the control of buffer memory 29.

[0018] The buffer memory 29 is used as a buffer for data sent and received between the host 2 and the system. For example, the buffer memory 29 is used to temporarily store data to be written or data read from the magnetic disk 11.

[0019] The buffer memory 29 is composed of volatile memory capable of high-speed operation. The type of memory that constitutes the buffer memory 29 is not limited to a specific type. The buffer memory 29 may be composed of, for example, DRAM (Dynamic Random Access Memory), SRAM (Static Random Access Memory), or a combination thereof. The buffer memory 29 may also be composed of any non-volatile memory.

[0020] The RWC25 modulates the data to be written, supplied from the HDC23, with error correction coding and other modulations, and supplies the modulated data to the head IC24. The RWC25 also demodulates the signal read from the magnetic disk 11 and supplied from the head IC24, including error correction processing, and outputs the demodulated signal as digital data to the HDC23.

[0021] The processor 26 is, for example, a CPU (Central Processing Unit). The processor 26 is connected to RAM 27, FROM (Flash Read Only Memory) 28, and buffer memory 29.

[0022] FROM28 is a non-volatile memory. FROM28 stores firmware (program data) and various operating parameters. The firmware may also be stored on the magnetic disk 11.

[0023] RAM27 is composed of, for example, DRAM, SRAM, or a combination thereof. RAM27 is used by the processor 26 as operating memory. RAM27 is used as an area where firmware is loaded and an area where various management data is temporarily stored.

[0024] The processor 26 controls the magnetic disk device 1 according to the firmware stored in FROM 28 or the magnetic disk 11. For example, the processor 26 loads the firmware from FROM 28 or the magnetic disk 11 into RAM 27 and controls the motor driver IC 21, head IC 24, RWC 25, HDC 23, etc., according to the loaded firmware.

[0025] The configuration including HDC23, RWC25, and processor26 can also be considered as a controller30 that controls the operation of the magnetic disk drive 1. In addition to these, the controller30 may also include other elements (e.g., RAM27, FROM28, or buffer memory29).

[0026] The firmware program may be stored on the magnetic disk 11. Some or all of the functions of the processor 26 may be implemented by hardware circuits such as an FPGA (Field-Programmable Gate Array) or an ASIC (Application Specific Integrated Circuit).

[0027] The number of magnetic disks 11 in the magnetic disk drive 1 is not limited to one. The magnetic disk drive 1 may also have a number of actuator arms 15 and magnetic heads 22 corresponding to the number of magnetic disks 11. Furthermore, if the magnetic disk drive 1 has multiple magnetic heads 22, these multiple magnetic heads 22 may be moved as a single unit, or they may constitute multiple groups that can move independently.

[0028] Figure 2 shows an example of the configuration of a magnetic disk 11 according to an embodiment. Servo data used for positioning the magnetic head 22 is written to the magnetic layer formed on the surface of the magnetic disk 11, for example, by a servowriter or by a self-servo write (SSW).

[0029] Figure 2 shows a radially arranged servo region 41 as an example of the arrangement of servo regions to which servo data has been written. In the circumferential direction, the area between two servo regions 41 is designated as a data region 42 to which data can be written. Multiple concentric tracks 50 are provided in the radial direction of the magnetic disk 11. On the tracks 50, multiple sectors of data 42 are provided, each to which data of a predetermined size is written. The predetermined size is the sector size.

[0030] Servo data is data used to estimate the current position of the magnetic head 22. The controller 30 obtains an estimated value of the current position of the magnetic head 22 by demodulating the servo data read by the magnetic head 22 from the servo region 41. Based on the estimated value of the current position of the magnetic head 22, the controller 30 moves the magnetic head 22 closer to the target position. The servo region 41 is arranged at intervals along the circumference. Therefore, the controller 30 performs the estimation of the current position of the magnetic head 22 at the frequency of the magnetic head 22 passing through the servo region 41. The frequency at which the current position of the magnetic head 22 is estimated at the frequency of the magnetic head 22 passing through the servo region 41 is called the servo sampling period.

[0031] When the controller 30 accesses (writes or reads) the magnetic disk 11 using the magnetic head 22, it first moves the magnetic head 22 radially toward the target track. The target track is the track 50 to be accessed. The operation of moving the magnetic head 22 radially toward the target track is called a seek operation.

[0032] When the magnetic head 22 is moved to the target track by the seek operation, residual vibration occurs in the magnetic head 22. Even if the seek operation is completed, if the residual vibration is large, the controller 30 may not be able to access the track correctly.

[0033] For example, during data writing, the controller 30 determines whether the magnetic head 22 is in an on-track state (i.e., a state in which the magnetic head 22 is considered to be located on the target track). If it is determined that the magnetic head 22 is not in an on-track state, the controller 30 immediately interrupts the write. Then, after the magnetic disk 11 has completed one rotation, the controller 30 retryes the write. Whether the magnetic head 22 is in an on-track state is determined by comparing the positioning error amount with the write off-track slice. The positioning error amount is the amount of deviation of the magnetic head 22 from the track center of the target track, and is an amount obtained by demodulating the servo data. If the positioning error amount exceeds the write off-slice, the controller 30 immediately interrupts the data write and retryes the write. The write retry begins when the magnetic disk 11 has completed one rotation and the magnetic head 22 has reached the circumferential position where the write was interrupted.

[0034] If lighting is started while residual vibrations are large, there is a high risk that the positioning error will exceed the light-off track slice and interrupt the lighting. Therefore, after the seek operation, the controller 30 performs a stabilization operation, waiting until the residual vibrations have sufficiently decayed. After the stabilization operation, the controller 30 performs lighting on the target track.

[0035] In the following sections, the explanation of seek and stabilization operations will be based on the seek operation during light operation.

[0036] Figure 3 is a diagram illustrating the stabilization operation according to the embodiment.

[0037] In the stabilization operation, a threshold Th is used to determine whether the residual vibration of the magnetic head 22 has been sufficiently dampened. st The threshold Th is used. st The stabilized amplitude threshold Th st This is how it is written. Note that the stabilization amplitude threshold Th st This is an example of a second threshold.

[0038] The controller 30 compares the positioning error amount with the stabilization amplitude threshold Th st and determines whether the radial position of the magnetic head 22 is within the range from -Th st to +Th st with respect to the track center of the target track.

[0039] In FIG. 3, the radial position is expressed with the outer peripheral side as the negative direction and the inner peripheral side as the positive direction. The setting of the negative direction and the positive direction in the radial position is not limited to this.

[0040] In the seek operation, when a predetermined condition regarding the positioning error amount is satisfied, the controller 30 regards the seek operation as completed and starts the stabilization operation. The condition for determining whether the seek operation is completed is referred to as the seek completion condition.

[0041] In one example, the seek completion condition is that the length of the continuous period during which the positioning error amount is maintained below the write-off track slice Th WOS reaches a predetermined threshold value (referred to as the seek completion time threshold value). The seek completion condition is not limited to this as long as it is looser than the stabilization condition described later. The threshold value compared with the positioning error amount in the seek completion condition may be different from the write-off track slice Th WOS Also, the magnetic head 22 crossing a predetermined radial position (for example, the track center of the target track) may be set as the seek completion condition.

[0042] In the example shown in FIG. 3, at timing t1, the positioning error amount first becomes below the write-off track slice Th WOS Accordingly, the controller 30 starts measuring the length of the continuous period during which the positioning error amount is maintained below the write-off track slice Th WOS And at timing t2, the positioning error amount is below the write-off track slice Th WOSWhen the length of the continuous period maintained below reaches the seek completion time threshold, the controller 30 determines that the seek operation is complete. Then, the controller 30 starts the stabilization operation.

[0043] During stabilization, the controller 30 sets the positioning error amount to the stabilization amplitude threshold Th st The length of the continuous period maintained is measured below. Positioning error amount is the stabilization amplitude threshold Th st When the length of the continuous period maintained below reaches a predetermined time (referred to as the stabilization time threshold), the controller 30 terminates the stabilization operation and becomes capable of performing a light operation on the target track. The stabilization time threshold is an example of a third threshold.

[0044] In the example shown in Figure 3, the positioning error amount is the stabilization amplitude threshold Th st For a continuous period from timing t3, when the following occurs, to timing t4, when the stabilization time threshold has elapsed, the positioning error amount is equal to the stabilization amplitude threshold Th. st The following is maintained. Therefore, the stabilization operation ends at timing t4.

[0045] As mentioned above, the controller 30 acquires the positioning error amount based on the servo data read from the magnetic disk 11. In other words, the controller 30 sequentially acquires the positioning error amount at the period during which the magnetic head 22 demodulates the servo data, i.e., the servo sampling period.

[0046] Therefore, the controller 30 determines that the positioning error amount is the light off-track slice Th WOS The following quantities correspond to the length of the continuous period maintained, and the continuous light-off track slice Th WOS Count the number of times the following positioning error amounts were obtained: consecutively, light off track slice Th WOSWhen the number of times the following positioning error amounts have been acquired reaches a count value corresponding to the seek completion time threshold (n0 in the example shown in Figure 3), the controller 30 determines that the seek operation is complete.

[0047] Similarly, the controller 30 sets the positioning error amount to the stabilization amplitude threshold Th st The following quantities correspond to the length of the continuous period maintained: the continuously stabilized amplitude threshold Th st The number of times the following positioning error amounts are obtained is counted. Continuously, the stabilization amplitude threshold Th st When the number of times the following positioning error amounts have been acquired reaches a count value corresponding to the stabilization time threshold (n1 in the example shown in Figure 3), the controller 30 determines that the stabilization operation is complete.

[0048] In this specification, the time from the completion of the seek operation to the completion of the stabilization operation is referred to as the stabilization condition establishment time, or stabilization condition establishment time T. st This is expressed as follows. In the example shown in Figure 3, the length of the period from timing t2 to timing t4 is the time when the stability condition is met T. st This corresponds to the positioning error amount, which is the stabilization amplitude threshold Th. st The stabilization condition is defined as the length of a continuous period maintained below reaching the stabilization time threshold. That is, the controller 30 considers the stabilization operation to be complete when it determines that the stabilization condition has been met. Once the stabilization operation is complete, the controller 30 can start writing data.

[0049] Furthermore, the amount of positional error during light operation, that is, the amount of displacement of the magnetic head 22 from the track center of the target track, expressed as a ratio with the track pitch set to 100%, is referred to as the "light-off track amount."

[0050] In the example shown in Figure 3, the right-off track slice Th WOS The stabilization amplitude threshold Th st It is considered to be larger than, but the right off track slice ThWOS and stabilization amplitude threshold Th st The relative sizes are not limited to this. Light off track slice Th WOS and stabilization amplitude threshold Th st It may be the same as this.

[0051] As mentioned above, writing data to the target track affects the adjacent track 50 with an ATI (Automatic Track Interference). The ATI effect on track 50 is accumulated within that track. If the accumulated ATI effect on track 50 becomes too large, it becomes difficult to read the data stored in that track.

[0052] The controller 30 performs a rewrite operation before data reading becomes difficult due to the effects of ATI on track 50. The rewrite operation is an operation that writes all the data stored on track 50 back to track 50. This rewrite operation, which is performed to prevent data reading from becoming difficult due to the effects of ATI, is referred to as a refresh operation, meaning that it restores the state of track 50 from a state where the effects of ATI have accumulated to a state where the effects of ATI have not accumulated (in other words, refreshes it).

[0053] The controller 30 estimates the degree of influence of ATI accumulated in each track 50 using an ATI counter. The value of the ATI counter is considered numerical information indicating the degree of influence of ATI accumulated in the track 50 corresponding to that ATI counter. The controller 30 performs a refresh operation on track 50 before the value of the ATI counter exceeds a threshold (hereinafter referred to as the guaranteed number of times) corresponding to the upper limit of the range in which it is possible to obtain the expected data from track 50.

[0054] The guaranteed number of cycles is an example of a first threshold. Multiple tracks 50 are an example of multiple memory areas arranged radially. Each memory area is a unit on which an ATI counter is provided. The memory area that is a unit on which an ATI counter is provided is not limited to one track 50. An ATI counter may be provided for each memory area containing two or more tracks 50 arranged radially consecutively.

[0055] In the examples described below, it will be assumed that an ATI counter is provided for each track 50. The ATI counter used to estimate the impact of ATI accumulated on a particular track 50 will be referred to as the ATI counter for that track 50.

[0056] The effects of ATI can extend not only to adjacent tracks but also to tracks 50 that are far from the target track. Therefore, the controller 30 adds to the ATI counters of tracks 50 that are far from the target track. In other words, the controller 30 also adds to the ATI counters of tracks 50 that are close to the target track.

[0057] Figure 4 is a diagram illustrating the amount of ATI count added according to the embodiment. The horizontal axis of this figure represents the radial position with the target track position as the origin. Here, the radial position is represented as numerical information in units of 50 tracks. The vertical axis represents the amount of ATI counter added for the track 50 at the position shown on the horizontal axis. The amount of ATI counter added for the track 50 shown in this figure is expressed as a percentage obtained by dividing it by the guaranteed number of operations set for that track 50 for normalization purposes.

[0058] As shown in this figure, the amount added to the ATI counter is highest on adjacent tracks, and the amount added to the ATI counter decreases as the track is further from the target track. The information shown in this figure, which represents the amount added for each of the 50 tracks as a percentage of the guaranteed number of counts, is recorded as setting information in the counter addition information 105 described later.

[0059] There are several types of refresh operations. These types of refresh operations include forced refresh operations and idle refresh operations. Each type of refresh operation is triggered by a different condition.

[0060] A forced refresh operation is a refresh operation that is performed when the value of an ATI counter reaches a guaranteed number of cycles. Even if the controller 30 is in the process of processing a command from host 2, if an ATI counter has reached a guaranteed number of cycles, it will interrupt the processing of the command from host 2 and perform a refresh operation targeting the track 50 corresponding to that ATI counter.

[0061] The idle refresh operation is a refresh operation that is initiated when the magnetic disk drive 1 is in an idle state. The idle state is a state in which all commands received from the host 2 have been processed and there are no unprocessed commands. When the magnetic disk drive 1 enters an idle state, the controller 30 sequentially selects tracks 50 and performs a refresh operation on the selected tracks 50, even if there are no ATI counters whose values ​​have reached the guaranteed number of cycles. The method of selecting tracks 50 is arbitrary. For example, the controller 30 may select tracks 50 in order from those with large ATI counter values ​​as targets for the refresh operation.

[0062] Furthermore, the multiple types of refresh operations may include any other types of refresh operations besides those mentioned above. For example, the multiple types of refresh operations may include a periodic refresh operation that is triggered periodically, regardless of whether or not a command from host 2 is being processed.

[0063] This section describes technologies that are comparable to the embodiments. These technologies are referred to as comparative examples.

[0064] In the comparative example, the controller clears the ATI counter of the refreshed track to zero upon completion of the refresh operation. Then, in response to writes to nearby tracks of the refreshed track, the controller adds to the ATI counter of the refreshed track starting from zero.

[0065] In recent years, with the increase in recording density of magnetic disks, the quality of write operations as part of a refresh operation (hereinafter referred to as write quality) has had a greater impact on the activation of the next refresh operation. For example, in a write operation performed as part of a refresh operation, if the amount of data written off-track is large, the ATI (Automatic Track Interference) effect on adjacent tracks to the target track will be greater. In addition, the target track itself will also be more affected by the ATI from subsequent writes to adjacent tracks.

[0066] However, according to the comparative example, the target track's ATI counter is reset to zero regardless of the write quality during the refresh operation. Therefore, a discrepancy arises between the value of the ATI counter and the actual ATI effect received. Since the value of the ATI counter cannot be said to accurately represent the ATI effect received by the track, safety measures such as setting a large margin for the guaranteed number of refreshes must be taken, which may unnecessarily increase the frequency of refresh operations.

[0067] Furthermore, in order to reduce the frequency of refresh operations, it is necessary to maximize the write quality during refresh operations. However, forced refresh operations interrupt the processing of commands from the host. Therefore, from the perspective of response performance to the host, forced refresh operations require not only improved write quality but also completion of the refresh operation as quickly as possible. In contrast, idle refresh operations are performed when the magnetic disk drive is idle, so they can utilize ample time compared to forced refresh operations. Therefore, idle refresh operations can utilize ample time to improve write quality.

[0068] However, according to the comparative example, the light quality is not controlled according to the type of refresh operation. Therefore, there is room for improvement regarding the refresh operation.

[0069] In this embodiment, the controller 30 changes the control of the light quality according to the type of refresh operation. Furthermore, the controller 30 monitors the actual light quality during the refresh operation and updates the value of the ATI counter of the target track variably based on the actual light quality.

[0070] Figure 5 shows an example of management information stored in the RAM 27 according to the embodiment. The RAM 27 stores ATI counter information 100, first quality control information 101, second quality control information 102, parameter setting information 103, counter update information 104, and counter addition information 105.

[0071] ATI counter information 100 is information that records the value of the ATI counter for each track 50.

[0072] The first quality control information 101 is information for managing the quality of the forced refresh operation. The second quality control information 102 is information for managing the quality of the idle refresh operation. The second quality control information 102 has the same structure as the first quality control information 101.

[0073] Note that the first quality control information 101 and the second quality control information 102 may be collectively referred to as quality control information 110.

[0074] Parameter setting information 103 is information that records the parameter settings for each type of refresh operation. Specific examples of the setting values ​​that can be recorded in parameter setting information 103 will be described later.

[0075] The counter update information 104 will be explained later.

[0076] Counter addition information 105 is information that records the amount added to the ATI counter for every 50 tracks, based on the target track.

[0077] Figure 6 shows an example of the configuration of quality control information 110 according to the embodiment. In this figure, an example of the configuration of the first quality control information 101 is shown as an example of quality control information 110.

[0078] Each time a refresh operation is performed, the ATI counter update ratio R upd ATI counter addition ratio R inc , time T when the stability condition is met st Processing time T op The amount of light off track is obtained and recorded in the first quality control information 101.

[0079] Figure 7 shows the ATI counter update ratio R according to the embodiment. upd This is a diagram to explain the concept.

[0080] If the amount of write-off tracks is 0% when the refresh operation is performed, the controller 30 sets the value of the target track's ATI counter to 0. If the amount of write-off tracks is greater than 0% when the refresh operation is performed, the controller 30 updates the value of the target track's ATI counter to a value corresponding to the amount of write-off tracks.

[0081] When the controller 30 performs a refresh operation, it variably updates the value of the ATI counter of the target track according to the actual light quality during the refresh operation, in this case the amount of light off the track.

[0082] Figure 7 shows the updated values ​​of the ATI counter for the target track of the off-track amount and refresh operation, corresponding to the refresh operation.

[0083] The guaranteed number of refreshes may vary depending on the track 50. Therefore, the updated value corresponding to the refresh operation is expressed as a percentage divided by the guaranteed number of refreshes for normalization purposes. The relationship shown in this figure is recorded in the counter update information 104 as setting information. The controller 30 determines the value of the ATI counter of the target track after the refresh operation based on the relationship recorded in the counter update information 104. The controller 30 may also use the counter update information 104 during normal write operations.

[0084] ATI counter update ratio R upd This is numerical information obtained by subtracting the updated value of the ATI counter from the guaranteed number of cycles, and then dividing that value by the guaranteed number of cycles for normalization, resulting in a percentage.

[0085] For example, if the amount of light off track is "d", the controller 30 normalizes the value of the target track's ATI counter to α based on the relationship shown in Figure 7. d Update to (100-α d The value obtained by the calculation of the ATI counter update ratio R upd It will be acquired as follows.

[0086] Even if the ATI counter value of the target track at the start of the refresh operation is less than the guaranteed number of times, the ATI counter update ratio R will be based on the guaranteed number of times. updThe following is calculated. Also, as shown in Figure 7, the lower the actual write quality during the refresh operation (i.e., the larger the amount of light off tracks), the larger the value of the target track's ATI counter is updated to. Therefore, the higher the actual write quality during the refresh operation (i.e., the smaller the amount of light off tracks), the higher the ATI counter update ratio R. upd It approaches 100%.

[0087] Let's return to the explanation in Figure 6. ATI counter addition ratio R inc This value is obtained by normalizing the amount added to the ATI counter of each track 50 in the vicinity of the target track, which is added in accordance with the refresh operation, by the guaranteed number of times for each track 50, and then summing them up. Based on the relationship shown in Figure 4, the controller 30 sets the ATI counter addition ratio R inc The following is calculated. Note that for the ATI counters of adjacent tracks among the tracks near the target track, the controller 30 may increase the amount added depending on the amount of track write-off.

[0088] Time T for stability condition to be met st As mentioned above, this is the time from when the seek operation is completed until the stabilization operation is completed.

[0089] Processing time T op This is the time from when the seek operation is completed until the refresh operation is completed. If a write retry occurs during the refresh operation, the processing time T includes the time required for the write retry. op It will be acquired as follows.

[0090] As mentioned above, the light-off track amount is a quantity expressed as a ratio of the positioning error of the magnetic head 22 to the track pitch, which is set to 100%. The positioning error of the magnetic head 22 may fluctuate during lighting on the target track. The controller 30 calculates the light-off track amount using the maximum value of the positioning error during lighting on the target track. However, the method of calculating the light-off track amount is not limited to this.

[0091] When the controller 30 performs a refresh operation a predetermined number of times (100 times in the example shown in Figure 6), the ATI counter update ratio R recorded in the first quality control information 101 for each forced refresh operation is recorded. upd ATI counter addition ratio R inc , time T when the stability condition is met st Processing time T op The controller 30 calculates the average value for each of the light-off track amounts. Based on these average values, the controller 30 calculates the refresh effect EFT, simple refresh efficiency EFY1, and adjusted refresh efficiency EFY2. The controller 30 then records the refresh effect EFT, simple refresh efficiency EFY1, and adjusted refresh efficiency EFY2 obtained from the calculations in the first quality control information 101.

[0092] The refresh effect EFT is the ATI counter update ratio R upd From ATI counter addition ratio R inc This is numerical information obtained by subtracting [a certain value]. The refresh effect EFT indicates how much the impact of ATI accumulated on each track 50 was reduced by the refresh operation for the magnetic disk drive 1 as a whole. In other words, the refresh effect EFT is a value that corresponds to the effect of the refresh operation.

[0093] The simple refresh efficiency EFY1 is the refresh effect EFT over processing time T. opThis is numerical information obtained by division. The simple refresh efficiency EFY1 indicates the refresh effect EFT per unit time. Here, as an example, the simple refresh efficiency EFY1 is expressed as a percentage.

[0094] The adjusted refresh efficiency EFY2 is calculated based on the processing time T. op This shows the refresh effect EFT per unit time when the weight of the stability condition attainment time Tst included in is adjusted based on the type of refresh operation. Specifically, the adjusted refresh efficiency EFY2 is obtained by the calculation of equation (1) below. EFY2 = EFT / (T op -T st *(1-C)) ···(1)

[0095] In equation (1), C is a coefficient provided for the type of refresh operation. In the denominator of the right-hand side of equation (1), the processing time T op Of these, the time T at which the stability condition is met st The weights of the components are adjusted by the coefficient C.

[0096] The controller 30 controls the light quality during refresh operation by controlling the stabilization time threshold. The stabilization time threshold controls not only the actual light quality but also the time T required to achieve stabilization. st It also affects that.

[0097] Specifically, increasing the stabilization time threshold reduces the residual vibration of the magnetic head 22 after the completion of the seek operation, thus improving the actual light quality observed as the amount of light off-track. However, increasing the stabilization time threshold increases the time required for the stabilization condition to be met, i.e., the stabilization condition establishment time T. st This process becomes longer. When the stabilization time threshold is reduced, the opposite phenomenon occurs compared to when the stabilization time threshold is increased.

[0098] As mentioned above, for forced refresh operations, both reducing the time required for the refresh operation and improving the light quality are required. In contrast, for idle refresh operations, the need to reduce the time required for the refresh operation is not as high as for forced refresh operations.

[0099] Therefore, in the case of idle refresh operation, the time required to establish a stable condition T is longer compared to forced refresh operation. st The coefficient C is set for both forced refresh operation and idle refresh operation so that the weight acting on it is reduced. Therefore, by using the adjusted refresh efficiency EFY2, it becomes possible to evaluate the idle refresh operation with more emphasis on write quality compared to the forced refresh operation. Also, by using the adjusted refresh efficiency EFY2, it becomes possible to evaluate the forced refresh operation with more emphasis on the time required for the refresh operation compared to the idle refresh operation.

[0100] The refresh effect EFT is an example of a second value. The denominator on the right side of equation (1), that is, the time from the completion of the stabilization operation, which includes the time at which the weighted stability condition is met, until the completion of the refresh operation, is an example of a third value. The denominator on the right side of equation (1) is expressed as the adjustment processing time. The adjustment rewrite efficiency EFY2 is an example of a fourth value.

[0101] Multiple sets of first quality control information 101 and second quality control information 102 may be stored in the RAM 27. For example, the controller 30 may divide the recording surface of the magnetic disk 11 into multiple zones in the radial direction and manage the first quality control information 101 and second quality control information 102 for each zone. Alternatively, the controller 30 may manage the first quality control information 101 and second quality control information 102 for each magnetic head 22. Here, we assume that one set of first quality control information 101 and second quality control information 102 is stored in the RAM 27.

[0102] Figure 8 shows an example of the configuration of parameter setting information 103 according to the embodiment. The parameter setting information 103 records the set value of coefficient C and the set range of the stabilization time threshold for each type of refresh operation.

[0103] In the example shown in Figure 8, the coefficient C is set to 1.0 for the forced refresh operation. Therefore, according to equation (1), the adjusted refresh efficiency EFY2 takes the same value as the simple refresh efficiency EFY1.

[0104] In contrast, for the idle refresh operation, the coefficient C is set to 0.3. Therefore, according to equation (1), the component of the processing time Top that corresponds to the time when the stable condition is met (Tst) is multiplied by 0.7. Thus, it becomes possible to evaluate the write quality more favorably compared to the forced rewrite operation. Specific examples will be explained using Figures 9 and 10.

[0105] Figure 9 shows an example of the relationship between the stabilization time threshold and the adjusted refresh efficiency EFY2 in a forced refresh operation according to the embodiment. Figure 10 shows an example of the relationship between the stabilization time threshold and the adjusted refresh efficiency EFY2 in an idle refresh operation according to the embodiment. In Figures 9 and 10, the horizontal axis represents the stabilization time threshold. The vertical axis represents the magnitude of the adjusted refresh efficiency EFY2, the refresh effect EFT, and the adjustment processing time. Note that the adjustment processing time is the processing time T after the stabilization condition establishment time Tst has been weighted. op This shows that the adjustment processing time is the value in the denominator of the right-hand side of equation (1). Note that the setting value of coefficient C exemplified in Figure 8 is applied to the calculation of the adjustment refresh efficiency EFY2 and adjustment processing time shown in Figures 9 and 10.

[0106] The larger the stabilization time threshold, the better the write quality. Therefore, as shown in Figures 9 and 10, the refresh effect EFT improves as the stabilization time threshold increases. If the stabilization time threshold is too small, rewrites occur frequently during the write operation, making it impossible to perform a refresh operation. Therefore, the refresh effect EFT is obtained when the stabilization time threshold exceeds a certain value (th0 in Figures 9 and 10).

[0107] In a forced refresh operation, the adjustment processing time is processing time T. op This is equivalent to the given expression. As shown in Figure 9, the adjustment processing time decreases as the stabilization time threshold becomes greater than th0, and then increases as the stabilization time threshold increases once it exceeds a certain value. The adjustment refresh efficiency EFY2 takes its maximum value when the stabilization time threshold is th1.

[0108] In idle refresh operation, as shown in Figure 10, the adjustment processing time decreases as the stabilization time threshold becomes greater than th0, and then increases as the stabilization time threshold increases once it exceeds a certain value. However, the gradient of the adjustment processing time when the adjustment processing time increases is gentler than in the case of forced refresh operation. As a result, the adjustment refresh efficiency EFY2 takes its maximum value when the stabilization time threshold is th2, which is greater than th1.

[0109] In the example shown in Figure 9, the controller 30 sets th1, which maximizes the adjusted refresh efficiency EFY2, as the stabilization time threshold for the forced refresh operation. In the example shown in Figure 10, the controller 30 sets th2, which maximizes the adjusted refresh efficiency EFY2, as the stabilization time threshold for the idle refresh operation.

[0110] The stabilization time threshold is defined as a value that is an integer multiple of the servo sampling period. The controller 30 shifts the stabilization time threshold by a predetermined step size each time it acquires the adjusted refresh efficiency EFY2. The predetermined step size is, for example, the servo sampling period. The predetermined step size may be 2 or more servo sampling periods. The controller 30 shifts the stabilization time threshold by a predetermined step size for both the forced refresh operation and the idle refresh operation. The controller 30 then adjusts the stabilization time threshold so that it approaches th1 for the forced refresh operation. The controller 30 adjusts the stabilization time threshold so that it approaches th2 for the idle refresh operation.

[0111] Next, we will explain the operation of the magnetic disk drive 1.

[0112] Figure 11 is a flowchart showing an example of a series of operations related to the operation of the light according to the embodiment.

[0113] First, the controller 30 performs a write operation on the target track (S101). The amount of track that was written off when the process in S101 was performed is obtained (S102). The controller 30 obtains a value (denoted as α) corresponding to the amount of track that was written off in S102 by referring to the counter update information 104 (S103).

[0114] The controller 30 determines whether the light range covers the entire target track (S104).

[0115] If the light range is the entire target track (S104: Yes), the value of the target track's ATI counter is updated with the value α (S105). Furthermore, the controller 30 adds to the values ​​of the ATI counters of each neighboring track 50 of the target track according to the counter addition information 105 (S106). Then the series of operations is completed.

[0116] If the light range is not the entire target track (S104: No), that is, if the light range is only a part of the target track, the controller 30 determines whether the current value of the target track's ATI counter is less than the value α (S107). If the current value of the target track's ATI counter is less than the value α (S107: Yes), control transitions to S105.

[0117] If the current value of the target track's ATI counter is not less than the value α (S107: No), control proceeds to S106.

[0118] Thus, during write operations, the controller 30 may update the value of the target track's ATI counter according to the write quality. By variably updating the value of the target track's ATI counter according to the write quality during write operations, it is possible to reduce the discrepancy between the value of the ATI counter and the actual ATI influence that the track 50 experiences.

[0119] In the example shown in Figure 11, if the current value of the target track's ATI counter is equal to value α, the control transitions to S106. If the current value of the target track's ATI counter is equal to value α, the control may also transition to S105.

[0120] Figure 12 is a flowchart showing an example of a trigger for executing a forced refresh operation according to the embodiment.

[0121] The controller 30 monitors the ATI counter information 100 and determines whether there are any ATI counters whose values ​​have reached a guaranteed number of cycles (S201). If there are ATI counters whose values ​​have reached a guaranteed number of cycles (S201: Yes), the controller 30 performs a forced refresh operation on the track 50 corresponding to the ATI counter whose value has reached a guaranteed number of cycles (S202). Even if the controller 30 is processing a command from the host 2, it interrupts the processing of the command from the host 2 and performs the forced refresh operation. Then, the controller 30 performs the process in S201 again.

[0122] If there is no ATI counter whose value has reached the guaranteed number of cycles (S201: No), the controller 30 repeats the process of S201.

[0123] Figure 13 is a flowchart showing an example of a trigger for executing an idle refresh operation according to the embodiment.

[0124] The controller 30 determines whether the magnetic disk drive 1 is in an idle state (S301). If the magnetic disk drive 1 is in an idle state (S301: Yes), the controller 30 performs an idle refresh operation (S302). Then, the controller 30 repeats the process in S301. If the magnetic disk drive 1 is not in an idle state (S301: No), the controller 30 repeats the process in S301.

[0125] Figure 14 is a flowchart showing an example of a series of operations related to the refresh operation according to the embodiment.

[0126] First, the controller 30 reads one track's worth of data from the target track (S401). The controller 30 temporarily stores the one track's worth of data read from the target track in, for example, RAM 27 or buffer memory 29.

[0127] Note that the processing of S401 can be completed in advance. For example, in an idle refresh operation, if a command is received from host 2 after the execution of S401, controller 30 may interrupt subsequent processing (specifically, operations from S403 onwards, etc.) and execute the processing of the command. After the processing of the command is completed, controller 30 may resume subsequent operations (specifically, operations from S403 onwards, etc.).

[0128] After S401, the controller 30 performs a light operation as part of the refresh operation.

[0129] Specifically, the controller 30 obtains a stabilization time threshold setting value depending on the type of refresh operation to be performed (S402). The controller 30 performs a seek operation to move the magnetic head 22 (more specifically, the light head 22w) to the target track (S403). Then, the controller 30 determines whether the seek operation is complete or not (S404). In S404, the controller 30 determines whether the seek completion condition has been met. If the seek operation is not complete (S404: No), the controller 30 repeats the process in S404.

[0130] If the seek operation is completed (S404: Yes), the controller 30 starts the stabilization operation. The controller 30 uses the stabilization time threshold setting obtained in S402 to determine whether the stabilization conditions have been met (S405). If the stabilization conditions have not been met (S405: No), the controller 30 repeats the process in S405.

[0131] If the stabilization conditions are met (S405: Yes), the controller 30 identifies the shortest accessible data sector on the target track (S406). The controller 30 then waits until the magnetic head 22 reaches the identified data sector (S407: No).

[0132] When the magnetic head 22 reaches the identified data sector (S407: Yes), the controller 30 performs a write operation to write the data for one track read by the process in S401 to the target track (S408).

[0133] The controller 30 obtains the amount of write-off tracks during the processing in S408 (S409). Then, the controller 30 obtains a value α corresponding to the amount of write-off tracks obtained in S409 by referring to the counter update information 104 (S410). The controller 30 updates the value of the ATI counter of the target track with the value α (S411). Furthermore, the controller 30 adds to the values ​​of the ATI counters of each track 50 in the vicinity of the target track according to the counter addition information 105 (S412).

[0134] The controller 30 performs a light quality control operation (S413), and the series of operations ends.

[0135] Figure 15 is a flowchart showing an example of the light quality control operation according to the embodiment.

[0136] Controller 30 controls the ATI counter update ratio R upd ATI counter addition ratio R inc , time T when the stability condition is met st Processing time T op The controller 30 acquires the value of the light off track and the amount of light off (S501). The controller 30 records this acquired numerical information in the quality control information 110 (S502). The controller 30 records the numerical information acquired in response to the forced refresh operation in the first quality control information 101. The controller 30 records the numerical information acquired in response to the idle refresh operation in the second quality control information 102.

[0137] The controller 30 determines whether numerical information for a predetermined number of refresh operations has been recorded in any of the quality control information 110 (S503). If numerical information for a predetermined number of refresh operations has not been recorded in any of the quality control information 110 (S503: No), the write quality control operation ends.

[0138] If numerical information for a predetermined number of refresh operations is recorded in any of the quality control information 110 (S503: Yes), the controller 30 calculates the refresh effect EFT, simple refresh efficiency EFY1, and adjusted refresh efficiency EFY2 based on the numerical information for the predetermined number of refresh operations (S504).

[0139] The controller 30 determines whether the current adjusted refresh efficiency EFY2 value is greater than or equal to the previous adjusted refresh efficiency EFY2 value (S505).

[0140] If the current adjusted refresh efficiency EFY2 value is greater than or equal to the previous adjusted refresh efficiency EFY2 value (S505: Yes), the controller 30 shifts the stabilization time threshold by a predetermined step width in the same direction as the previous shift (S506).

[0141] If the current adjusted refresh efficiency EFY2 value is not greater than or equal to the previous adjusted refresh efficiency EFY2 value (S505: No), the controller 30 shifts the stabilization time threshold by a predetermined step width in the opposite direction to the previous shift direction (S507).

[0142] Furthermore, when the controller 30 shifted the stabilization time threshold in the previous process S506 or S507, it remembers the direction in which the stabilization time threshold was shifted, that is, whether it was shifted in the positive or negative direction. In the current process S506 or S507, the controller 30 determines the direction of the current shift based on the previously remembered direction of the shift.

[0143] As mentioned above, the predetermined step size is arbitrary. The predetermined step size may be, for example, one servo sampling period.

[0144] After processing S506 or S507, the controller 30 determines whether the stabilization time threshold is within the setting range recorded in the parameter setting information 103 (S508). If the stabilization time threshold is not within the setting range recorded in the parameter setting information 103 (S508), the controller 30 changes the value of the stabilization time threshold to the boundary value of the setting range (S509). Then the light quality control operation ends.

[0145] If the stabilization time threshold falls within the setting range recorded in parameter setting information 103 (S508: Yes), the process in S509 is skipped and the write quality control operation ends.

[0146] Figure 16 shows an example of calculations in the light quality control operation according to the embodiment. In the example shown in this figure, the calculations are shown when the series of processes from S504 onwards shown in Figure 15 are executed four times.

[0147] In the first processing, the previous adjustment rewrite efficiency EFY2 was 80, and the current adjustment rewrite efficiency EFY2 is 90. Therefore, the judgment result of S505 is a positive judgment. In other words, the stabilization time threshold is shifted by a predetermined step size in the same direction as the previous shift. The previous shift amount of the stabilization time threshold was assumed to be +16 (us). Here, the stabilization time threshold is assumed to be shifted in steps of 16 (us). Therefore, the controller 30 sets the current shift amount of the stabilization time threshold to +16 (us). The old stabilization time threshold was assumed to be 224 (us), so the controller 30 sets 240 (us), obtained by adding 16 (us) to the old stabilization time threshold, as the new stabilization time threshold.

[0148] In the second processing, the adjustment rewrite efficiency EFY2 from the previous (i.e., the first) processing was 90, and the adjustment rewrite efficiency EFY2 from the current processing is 100. Therefore, the judgment result of S505 is a positive judgment. In other words, the stabilization time threshold is shifted by a predetermined step size in the same direction as the previous shift. The previous shift amount of the stabilization time threshold was +16 (us). Therefore, the controller 30 sets the current shift amount of the stabilization time threshold to +16 (us). Since the old stabilization time threshold was said to be 240 (us), the controller 30 sets 256 (us), obtained by adding 16 (us) to the old stabilization time threshold, as the new stabilization time threshold.

[0149] In the third processing, the adjustment rewrite efficiency EFY2 from the previous (i.e., second) processing was 100, and the adjustment rewrite efficiency EFY2 from the current processing is 95. Therefore, the judgment result in S505 is a negative judgment. In other words, the stabilization time threshold is shifted by a predetermined step size in the opposite direction to the previous shift direction. The previous shift amount of the stabilization time threshold was +16 (us). Therefore, the controller 30 sets the current shift amount of the stabilization time threshold to -16 (us). Since the old stabilization time threshold was said to be 256 (us), the controller 30 sets 240 (us), obtained by subtracting 16 (us) from the old stabilization time threshold, as the new stabilization time threshold.

[0150] In the fourth processing, the previous (i.e., third) adjustment rewrite efficiency EFY2 was 95, and the current adjustment rewrite efficiency EFY2 is 85. Therefore, the judgment result of S505 is a negative judgment. In other words, the stabilization time threshold is shifted by a predetermined step size in the opposite direction to the previous shift direction. The previous shift amount of the stabilization time threshold was -16 (us). Therefore, the controller 30 sets the current shift amount of the stabilization time threshold to +16 (us). Since the old stabilization time threshold was said to be 240 (us), the controller 30 sets 256 (us), obtained by adding 16 (us) to the old stabilization time threshold, as the new stabilization time threshold.

[0151] In this way, the controller 30 adjusts the stabilization time threshold at predetermined increments, thereby bringing the stabilization time threshold closer to the value at which the adjusted rewrite efficiency EFY2 takes its maximum value.

[0152] In the example described above, the controller 30 adjusted the stabilization time threshold among the stabilization conditions. The controller 30 adjusted the stabilization amplitude threshold Th among the stabilization conditions. st It may be configured to be adjustable.

[0153] Furthermore, the controller 30 may be configured to adjust the setting range of the stabilization time threshold. For example, if the average number of retries recorded in the quality control information 110 is smaller than a predetermined threshold, the lower limit of the setting range of the stabilization time threshold may be lowered, and if the average value is larger than the predetermined threshold, the lower limit of the setting range of the stabilization time threshold may be raised.

[0154] (Summary) According to the embodiment, the controller 30 adds to the value of a counter corresponding to a nearby track 50 among the multiple tracks 50 that has been written to, in response to a write operation (see, for example, S106 in Figure 11). The controller 30 performs a refresh operation in response to at least two triggers (see, for example, Figures 12 and 13). For example, the refresh operation includes, for example, a forced refresh operation and an idle refresh operation, each triggered by different events. In the refresh operation, the controller 30 performs a seek operation to move the magnetic head 22 to the target track, a stabilization operation to wait for the residual vibration of the magnetic head 22 to decay after the seek operation is completed, and rewrites all the data of the target track to the target track after the stabilization operation is completed (see, for example, S403 to S408 in Figure 14). The controller 30 decrements the value of the counter of the target track in response to the refresh operation (see, for example, S410 to S411 in Figure 14). The controller 30 performs an addition to the value of the ATI counter of the track 50 adjacent to the target track in response to the refresh operation (see, for example, S412 in Figure 14). The stabilization operation includes an operation to determine whether the stabilization operation is complete based on whether the stabilization conditions are met (see, for example, Figure 3 and S405 in Figure 14). The stabilization conditions differ for each refresh operation (see, for example, Figures 9 and 10).

[0155] Therefore, it is possible to control the write quality according to the type of refresh operation. In other words, it becomes possible to suitably execute rewrite operations caused by ATI.

[0156] Furthermore, according to the embodiment, the forced refresh operation is performed when the value of the ATI counter reaches the guaranteed number of times. The idle refresh operation is performed when the magnetic disk device 1 enters an idle state.

[0157] Furthermore, according to the embodiment, the stabilization time threshold is set higher in idle refresh operation compared to forced refresh operation. In other words, the stabilization conditions are made stricter in idle refresh operation compared to forced refresh operation. Specifically, the stabilization conditions are such that the magnitude of the positioning error of the magnetic head 22 is set to the stabilization amplitude threshold Th st The following is the case: the length of the continuous period maintained reaches the stabilization time threshold.

[0158] Therefore, in the case of idle refresh operation, it is possible to achieve higher write quality compared to the case of forced refresh operation. Also, in the case of forced refresh operation, it is possible to reduce the time required for the series of operations including the refresh operation compared to the case of idle refresh operation.

[0159] Furthermore, according to the embodiment, the controller 30 acquires the results of the refresh operation for both the forced refresh operation and the idle refresh operation (see, for example, S501 to S504 in Figure 15). The controller 30 adjusts the stabilization conditions according to the results of the refresh operation (see, for example, S505 to S509 in Figure 15 and Figure 16).

[0160] Therefore, it becomes possible to improve the light quality for both forced refresh operations and idle refresh operations. As a result, it becomes possible to reduce the frequency of refresh operations.

[0161] Furthermore, according to the embodiment, the controller 30 reduces the value of the ATI counter of the target track to a value α corresponding to the amount of the write-off track in response to the refresh operation. The controller 30 then sets at least the ATI counter update ratio R, which is numerical information corresponding to the value α. upd Use this to adjust the stabilization time threshold.

[0162] More specifically, the controller 30 controls the ATI counter update ratio R updAnd the ATI counter addition ratio R is numerical information corresponding to the amount added by the ATI counter of track 50, which is adjacent to the target track. inc Based on this, the refresh effect EFT is calculated. The controller 30 processes the processing time T op Of these, the time T at which the stability condition is met st The adjustment processing time is calculated by applying weights to the adjustment processing time. The controller 30 calculates the adjusted refresh efficiency EFY2 by dividing the refresh effect EFT by the adjustment processing time. The controller 30 adjusts the stabilization time threshold so that the adjusted refresh efficiency EFY2 is large.

[0163] Therefore, it becomes possible to improve the light quality for both forced refresh operations and idle refresh operations. As a result, it becomes possible to reduce the frequency of refresh operations.

[0164] Furthermore, according to the embodiment, the time T for establishing a stable condition in the case of idle refresh operation is st The weights applied are determined by the time T when the stabilization condition is met in the case of a forced refresh operation. st Smaller than the weight applied to it.

[0165] Therefore, in the case of idle refresh operation, it is possible to achieve higher write quality compared to the case of forced refresh operation. Also, in the case of forced refresh operation, it is possible to reduce the time required for the series of operations including the refresh operation compared to the case of idle refresh operation.

[0166] Furthermore, according to the embodiment, the controller 30 also variably updates the value of the target track's ATI counter during a write operation. More specifically, the controller 30 calculates a value α corresponding to the amount of track that is written off during a write operation (see, for example, S103 in Figure 11). If the value of the target track's ATI counter is less than the value α, the controller 30 updates the value of the target track's ATI counter with the value α (see, for example, the positive judgment case in S107 in Figure 11). If the value of the target track's ATI counter is greater than the value α, and the area that is written by the write operation is only a part of the target track, the controller 30 maintains the value of the target track's ATI counter (see, for example, the negative judgment case in S107 in Figure 11). If the area that is written by the write operation is the entire target track, the controller 30 updates the value of the target track's ATI counter with the value α (see, for example, the positive judgment case in S104 in Figure 11).

[0167] In this way, even during write operations, the value of the target track's ATI counter is variably updated according to the actual write quality (in this case, the amount of track write-off), making it possible to reduce the discrepancy between the value of the ATI counter and the actual ATI influence that track 50 experiences.

[0168] While several embodiments of the present invention have been described, these embodiments are presented as examples only and are not intended to limit the scope of the invention. These novel embodiments can be carried out in a variety of other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their variations are included in the scope and spirit of the invention, as well as in the claims and their equivalents. [Explanation of Symbols]

[0169] 1 Magnetic disk drive, 2 Host, 11 Magnetic disk, 12 Spindle motor, 13 Ramp, 15 Actuator arm, 16 VCM, 21 Motor driver IC, 22 Magnetic head, 22r Read head, 22w Write head, 23 HDC, 24 Head IC, 25 RWC, 26 Processor, 27 RAM, 28 FROM, 29 Buffer memory, 30 Controller, 41 Servo area, 42 Data area, 50 Track, 100 ATI counter information, 101 First quality control information, 102 Second quality control information, 103 Parameter setting information, 104 Counter update information, 105 Counter addition information, 110 Quality control information, C coefficient, EFT refresh effect, EFY1 Simple refresh efficiency, EFY2 Adjusted refresh efficiency, R inc ATI counter addition ratio, R upd ATI counter update rate, Th st Stabilization amplitude threshold, Th WOS Light off track slice, T op Processing time, T st Time required for the conditions to be met to stabilize.

Claims

1. A magnetic disk having multiple storage areas arranged radially, Magnetic head and A memory in which a group of counters, each corresponding to one of the aforementioned multiple storage areas, is stored, A write operation is performed to write data to one of the aforementioned multiple memory areas. In response to the write operation, an addition is performed to the value of a counter corresponding to a nearby storage area among the plurality of storage areas, A rewrite operation is performed in accordance with a first trigger and a second trigger different from the first trigger, and the rewrite operation includes a seek operation to move the magnetic head to a first storage area among the plurality of storage areas, a stabilization operation to wait for the residual vibration of the magnetic head to decay after the completion of the seek operation, and rewriting all the data in the first storage area to the first storage area after the completion of the stabilization operation. In response to the rewrite operation, the value of the counter corresponding to the first storage area among the plurality of counters is reduced, In response to the rewrite operation, an addition is performed to the value of the counter corresponding to the second storage area among the plurality of counters, the second storage area being a storage area near the first storage area among the plurality of storage areas, The stabilization operation includes an operation to determine whether the stabilization operation has been completed based on whether the first condition has been met. The first condition differs between the first trigger and the second trigger. Controller and A magnetic disk drive equipped with the following features.

2. The first trigger is when the value of the counter corresponding to the first memory area reaches a first threshold, The second trigger is that the magnetic disk drive is in an idle state. The magnetic disk device according to claim 1.

3. The aforementioned controller, When the rewrite operation is performed in response to the first trigger, the second condition is used as the first condition. When the rewrite operation is performed in response to the second trigger, a third condition stricter than the second condition is used as the first condition. The magnetic disk device according to claim 2.

4. The first condition is that the length of the continuous period during which the magnitude of the positioning error of the magnetic head is maintained at or below the second threshold reaches the third threshold. The third threshold is different for the first trigger and the second trigger. The magnetic disk device according to claim 1.

5. The aforementioned controller, The first rewrite operation, which is the rewrite operation performed in response to the first trigger, and the second rewrite operation, which is the rewrite operation performed in response to the second trigger, each have their results obtained, and the first condition is adjusted based on the results. The magnetic disk device according to claim 1.

6. The aforementioned controller, In response to the rewrite operation, the value of the first counter, which is the counter corresponding to the first storage area, is reduced to a first value corresponding to the positioning error amount of the magnetic head during the rewrite operation. Adjust the first condition using at least the first value. The magnetic disk device according to claim 5.

7. The aforementioned controller, Based on the first value and the amount added to the value of the counter corresponding to the second storage area, a second value corresponding to the effect of the rewrite operation is calculated. A third value is calculated, which is the sum of the time during which the weight required for the stabilization operation was applied and the time from the completion of the stabilization operation until the completion of the rewrite operation. The weight differs between the first trigger and the second trigger. By dividing the second value by the third value, a fourth value representing the efficiency of the rewrite operation is calculated. Adjust the first condition so that the fourth value becomes larger. The magnetic disk device according to claim 6.

8. The first trigger is when the value of the counter corresponding to the first memory area reaches a first threshold, The second trigger is that the magnetic disk device is in an idle state. The weight associated with the second trigger is smaller than the weight associated with the first trigger. The magnetic disk device according to claim 7.

9. The aforementioned controller, In response to the write operation, the value of a second counter, which is a counter corresponding to the one storage area on which data was written by the write operation, is variably updated according to the amount of positioning error of the magnetic head during the write operation. A magnetic disk device according to any one of claims 1 to 8.

10. The aforementioned controller, A fifth value is calculated corresponding to the positioning error of the magnetic head during the aforementioned light operation. If the value of the second counter is less than the fifth value, the value of the second counter is updated with the fifth value. If the value of the second counter is greater than the fifth value, and the range in which the data is written by the write operation is a part of the second storage area, the value of the second counter is maintained. If the range over which the data is written by the write operation is the entire second storage area, the value of the second counter is updated with the fifth value. The magnetic disk device according to claim 9.

11. A magnetic disk having multiple storage areas arranged radially, Magnetic head and A memory in which a group of counters, each corresponding to one of the aforementioned multiple storage areas, is stored, A controller performs a write operation to write data to a first storage area, which is one of the plurality of storage areas; updates the value of a first counter, which is one of the plurality of counters corresponding to the first storage area, variably according to the amount of positioning error of the magnetic head during the write operation; and performs an addition to the value of a counter among the plurality of counters corresponding to a second storage area, which is a storage area near the first storage area, according to the write operation. A magnetic disk drive equipped with the following features.

12. The aforementioned controller, A first value is calculated corresponding to the positioning error of the magnetic head during the aforementioned light operation. If the value of the first counter is less than the first value, the value of the first counter is updated with the first value. If the value of the first counter is greater than the first value, and the range in which the data is written by the write operation is a part of the first storage area, the value of the first counter is maintained. If the range over which the data is written by the write operation is the entire first storage area, the value of the first counter is updated with the first value. The magnetic disk device according to claim 11.

Citation Information

Patent Citations

  • Disk device that updates write counts of tracks based on a head offset during writing of adjacent tracks

    US20180088838A1