Magnetic disk drive

The magnetic disk drive optimizes write operations by evaluating track damage in SMR systems, reducing protection operations and enhancing performance by minimizing unnecessary interruptions and data integrity issues.

JP2026013948APending Publication Date: 2026-01-29KK TOSHIBA +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024114717
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-18
Publication Date
2026-01-29

AI Technical Summary

Technical Problem

Magnetic disk drives face challenges in maintaining high performance during write operations due to potential data damage on adjacent tracks caused by the narrower track width and head vibrations in Shingled Magnetic Recording (SMR) systems, leading to frequent protection operations that degrade write operation efficiency.

Method used

The magnetic disk drive incorporates a controller that calculates and compares evaluation amounts of damage to adjacent tracks during write operations, using position error signals to determine if the write operation should continue or if a protection operation is needed, thereby optimizing write operations and reducing unnecessary interruptions.

Benefits of technology

This approach enhances write operation performance by minimizing unnecessary protection operations, ensuring data integrity while maintaining high recording density and reducing the frequency of write operation interruptions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026013948000001_ABST
    Figure 2026013948000001_ABST
Patent Text Reader

Abstract

To provide a magnetic disk device having high performance of write operation.SOLUTION: The controller calculates an evaluation amount of damage received by the data of the adjacent track due to the write operation based on the position error signal, and compares a first amount, which is the evaluation amount calculated based on the position error signal, with a first threshold value corresponding to a correction limit of error correction in track units. The controller suspends the write operation in response to determining that the first amount is greater than the first threshold value. Then, the controller executes a read operation on the adjacent track, acquires a metric representing signal quality of the data of the adjacent track read by the read operation, calculates an evaluation amount based on the metric, and compares a second amount, which is the evaluation amount calculated based on the metric, with a first threshold value. In response to determining that the second amount is less than the first threshold value, the controller continues the write operation.SELECTED DRAWING: Figure 11
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This embodiment relates to a magnetic disk device. [Background technology]

[0002] Some magnetic disk drives have the ability to protect data written to each track on a track-by-track basis. Track-by-track error correction is referred to as track error correction. When a magnetic disk drive with track error correction functionality detects that writing to a target track could cause data on adjacent tracks to become uncorrectable even with track error correction, the magnetic disk drive terminates writing to the target track and executes a protection operation to protect the data on the adjacent tracks. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2023-119547 Summary of the Invention [Problem to be solved by the invention]

[0004] An object of one embodiment is to provide a magnetic disk drive with high performance in write operations. [Means for solving the problem]

[0005] According to one embodiment, a magnetic disk drive includes a magnetic disk, a magnetic head, and a controller. The magnetic disk includes a plurality of tracks. A plurality of servo sectors, on which servo information is recorded, are arranged at intervals in the circumferential direction on the plurality of tracks. The plurality of tracks includes a first track and a second track radially adjacent to the first track and written before the first track. Each of the first track and the second track includes a plurality of data sectors. The plurality of data sectors includes a data sector in which an error correction code for track-by-track error correction is stored. The magnetic head writes and reads data to the magnetic disk. The controller reads the servo information when the magnetic head passes over each of the plurality of servo sectors, obtains a position error signal of the magnetic head based on the read servo information, and performs a write operation on the first track while positioning the magnetic head over the first track based on the position error signal. During a write operation, the controller performs a first operation in response to the magnetic head passing over the first servo sector, which is one of the plurality of servo sectors. The first operation is an operation of calculating an evaluation amount of damage caused to data on the second track by the write operation based on the position error signal, and comparing a first amount, which is the evaluation amount calculated based on the position error signal, with a first threshold value corresponding to a correction limit of error correction on a track-by-track basis. If the first operation determines that the first amount is greater than the first threshold value, the controller interrupts the write operation and executes a second operation. The second operation is an operation of performing a read operation on the second track, acquiring a metric representing the signal quality of data on the second track read by the read operation, calculating an evaluation amount based on the metric, and comparing a second amount, which is the evaluation amount calculated based on the metric, with the first threshold value. If the first operation determines that the first amount is smaller than the first threshold value or if the second operation determines that the second amount is smaller than the first threshold value, the controller continues the write operation on the first track. If the second operation determines that the second amount is greater than the first threshold value, the controller executes a protection operation to protect data on the first track. [Brief explanation of the drawings]

[0006] [Figure 1] FIG. 1 is a schematic diagram showing an example of the configuration of a magnetic disk device according to an embodiment. [Figure 2] FIG. 2 is a schematic diagram showing an example of the configuration of a magnetic disk according to the embodiment. [Figure 3] FIG. 3 is a schematic diagram for explaining the SMR method used in the magnetic disk device of the embodiment. [Figure 4] FIG. 4 is a diagram showing an example of a plurality of band areas provided on the magnetic disk of the embodiment. [Figure 5] FIG. 5 is a diagram illustrating an error correction function provided in the controller of the embodiment. [Figure 6] FIG. 6 is a diagram illustrating an example of a protection operation according to the embodiment. [Figure 7] FIG. 7 is another diagram for explaining an example of the protection operation according to the embodiment. [Figure 8] FIG. 8 is a diagram for explaining another example of the protection operation according to the embodiment. [Figure 9] FIG. 9 is a diagram illustrating an example of a method for determining a sector read error boundary according to an embodiment. [Figure 10] FIG. 10 is a diagram illustrating an example of the configuration of correspondence information according to the embodiment and a second calculation method using the correspondence information. [Figure 11] FIG. 11 is a flowchart showing an example of the operation of the magnetic disk device 1 according to the embodiment. [Figure 12] FIG. 12 is a diagram showing an example of a history of when the first squeeze amount exceeds the squeeze amount threshold value. [Figure 13] FIG. 13 is a diagram showing an example of a history of when the second squeeze amount exceeds the squeeze amount threshold value. [Figure 14] FIG. 14 is a diagram illustrating an example of a transition of the cumulative damage evaluation amount according to the embodiment. [Figure 15]FIG. 15 is a diagram illustrating an example of a transition of the average damage evaluation amount according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0007] A magnetic disk drive according to an embodiment will be described in detail below with reference to the accompanying drawings, but the present invention is not limited to this embodiment.

[0008] (Embodiment) FIG. 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 device 1 is connected to a host 2. The magnetic disk device 1 can receive access commands such as write commands and read commands from the host 2.

[0010] The magnetic disk device 1 includes a magnetic disk 11 having a recording surface formed on its surface. The magnetic disk device 1 writes and reads data to and from the magnetic disk 11 (more precisely, the recording surface of the magnetic disk 11) in response to an access command. Although the magnetic disk device 1 may include multiple magnetic disks 11, in this embodiment, for the sake of simplicity of explanation and illustration, the magnetic disk device 1 is shown to include one magnetic disk 11.

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

[0012] The magnetic disk 11 is rotated at a predetermined rotation speed by a spindle motor 12 attached to the rotation shaft of the magnetic disk 11. The spindle motor 12 is driven by a motor driver IC 21.

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

[0014] The magnetic head 22 uses a write element 22w and a read element 22r provided therein to write and read data to and from the magnetic disk 11. The magnetic head 22 is attached to the tip of an actuator arm 15. The magnetic head 22 is moved in the radial direction of the magnetic disk 11 by a VCM 16 driven by a motor driver IC 21.

[0015] When the magnetic disk 11 is stopped from rotating, the magnetic head 22 is moved onto the ramp 13. The ramp 13 is configured to hold the magnetic head 22 at a position spaced apart from the magnetic disk 11.

[0016] During a read operation, the head IC 24 amplifies and outputs a signal read from the magnetic disk 11 by the magnetic head 22, and supplies the signal to the RWC 25. During a write operation, the head IC 24 amplifies a signal corresponding to the data to be written, which is supplied from the RWC 25, and supplies the signal to the magnetic head 22.

[0017] The HDC 23 controls the transmission and reception of data to and from the host 2 via the I / F bus, and controls the buffer memory 29, etc.

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

[0019] The buffer memory 29 is configured, for example, by a volatile memory capable of high-speed operation. The type of memory that configures the buffer memory 29 is not limited to a specific type. The buffer memory 29 can be configured, for example, by a dynamic random access memory (DRAM), a static random access memory (SRAM), or a combination of these.

[0020] The RWC 25 performs modulation, including error correction coding, on the data to be written that is supplied from the HDC 23, and supplies the modulated data to the head IC 24. The RWC 25 also performs demodulation, including error correction, on the signal that is read from the magnetic disk 11 and supplied from the head IC 24, and outputs the data obtained by the demodulation to the HDC 23.

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

[0022] The FROM 28 is a non-volatile memory. Firmware (program data), various operating parameters, etc. are stored in the FROM 28. The firmware may be stored on the magnetic disk 11.

[0023] The RAM 27 is configured by, for example, DRAM, SRAM, or a combination of these. The RAM 27 is used as an operating memory by the processor 26. The RAM 27 is used as an area into which firmware is loaded and an area in which various management data is held.

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

[0025] The configuration including the RWC 25, the processor 26, and the HDC 23 can also be considered as the controller 30. The controller 30 may be configured as a SoC (System-On-a-Chip). The controller 30 does not necessarily have to be configured as an SoC. In addition to these, the controller 30 may also include other elements (for example, a RAM 27, a FROM 28, a buffer memory 29, or the RWC 25).

[0026] 2 is a schematic diagram showing an example of the configuration of the magnetic disk 11 according to the embodiment. This diagram shows an example of the rotation direction of the magnetic disk 11. The magnetic head 22 moves relative to the magnetic disk 11 as the magnetic disk 11 rotates. Therefore, the write / read direction, i.e., the direction in which data is written or read by the magnetic head 22 along the circumferential direction, is opposite to the rotation direction of the magnetic disk 11.

[0027] During the manufacturing process, servo information is written to the magnetic disk 11 by, for example, a servo writer or by self-servo writing (SSW). Fig. 2 shows radially arranged servo areas 42 as an example of the arrangement of servo areas in which servo information is written. Data areas 43 in which data can be written are provided between the servo areas 42.

[0028] Based on servo information, a plurality of concentric tracks 41 are set in the radial direction of the magnetic disk 11. In a plurality of data areas 43, a plurality of data sectors in which data is written are arranged along the tracks 41.

[0029] The servo information includes servo marks, gray codes, burst patterns, and post codes. When writing data to or reading data from a data sector, the controller 30 generates a position error signal (PES) based on the servo information read by the magnetic head 22 from the servo area 42. The PES indicates the radial deviation of the target track from the track center. The controller 30 performs positioning of the magnetic head 22, i.e., seek control and tracking control, based on the PES obtained each time the magnetic head 22 passes through the servo area 42. For example, before starting a write operation, the controller 30 performs seek control to move the magnetic head 22 to the track 41 to be written. Then, it performs tracking control to keep the magnetic head 22 on the track 41 to be written from just before the start of the write operation until the end of the write operation.

[0030] Hereinafter, a portion of a track 41 that is separated by a servo area 42 will be referred to as a servo sector SV. Because multiple servo areas 42 are arranged radially, each track 41 can be thought of as having multiple servo sectors SV arranged at intervals in the circumferential direction.

[0031] Hereinafter, data written in units of data sectors will be referred to as data pieces.

[0032] Known methods for writing data to a magnetic disk include a method called SMR (Shingled Magnetic Recording) and a method called CMR (Conventional Magnetic Recording). In this embodiment, the controller 30 is configured to write data requested to be written by the host 2 to the magnetic disk 11 using the SMR method.

[0033] 3 is a schematic diagram illustrating the SMR method used in the magnetic disk device 1 of the embodiment. In the SMR method, when data (referred to as first data) on a certain track 41 is written and then data (referred to as second data) on a track 41 radially adjacent to the track 41 is written, the tracks 41 are arranged so that the second data overlaps a portion of the first data. In other words, according to the SMR method, data on one of two tracks 41 radially adjacent to each other on the magnetic disk 11 is written so as to overlap a portion of data on the other of the two tracks 41.

[0034] For example, data on track #2 is written so that it overlaps part of the data already written on track #1. Similarly, data on track #3 is written so that it overlaps part of the data already written on track #2. In other words, according to the SMR method, data on one track repeatedly overlaps part of the data already written on an adjacent track.

[0035] This makes each track width TW narrower than the width (WHw) of the write element 22w, improving the recording density.

[0036] However, with the SMR system, because the track width TW is narrower than the width WHw of the write element 22w, updating a portion of the data for multiple tracks destroys the data on tracks adjacent to the updated data. To prevent this data destruction, the data for multiple tracks, including the portion of the data, is updated in a lump. The area of ​​multiple tracks that is updated in a lump is called a band area.

[0037] Furthermore, according to the SMR method, writing to a plurality of tracks 41 within one band area is permitted only from a predetermined end of the outer periphery or the inner periphery of the magnetic disk to the predetermined other end. In the example shown in Fig. 3, writing is performed for each track 41 from the outer periphery end toward the inner periphery end. The controller 30 may also be configured to perform writing for each track 41 from the inner periphery end toward the outer periphery end. Furthermore, the order of writing may be set individually for each band area.

[0038] In the following explanation, it is assumed that each track 41 included in the band area is given a track number corresponding to the arrangement order in the radial direction, and in the SMR method, writing is performed for each track 41 in the order of the track numbers.

[0039] Furthermore, when the track 41 on which writing is performed later of two adjacent tracks 41 is taken as a reference, the track 41 on which writing is performed earlier of the two tracks 41 is simply referred to as the adjacent track in this specification. In other words, when track #p is taken as a reference, track #(p-1) corresponds to the track adjacent to track #p.

[0040] FIG. 4 is a diagram showing an example of a plurality of band areas provided on the magnetic disk 11 according to the embodiment.

[0041] The recording surface 100 of the magnetic disk 11, i.e., the area where tracks 41 can be arranged, is divided radially into multiple storage areas 110. The multiple storage areas 110 include one media cache area 120 and multiple band areas 130. Areas called guard areas that cannot be specified as write destinations by the host 2 are provided between the storage areas 110. Note that the guard areas are not shown in FIG. 4.

[0042] The storage area 110 provided on the outermost radial side of the recording surface 100 is set as a media cache area 120. The media cache area 120 is a storage area used as a temporary storage location for data. Note that the location of the media cache area 120 is not limited to the outermost radial side. Two or more media cache areas 120 may be provided on the recording surface. Data can be written to the media cache area 120 using the CMR method.

[0043] The CMR method is a method in which data is written so that data on two tracks 41 adjacent to each other in the radial direction of the magnetic disk 11 does not overlap each other. According to the CMR method, the width of each track 41 is the same as the width (WHw) of the write element 22w, so data at any position can be updated.

[0044] Each band area 130 has a plurality of tracks 41. Data is written in each band area 130 using the SMR method. The maximum amount of user data that can be written to each band area 130, i.e., the storage capacity, is the same for all band areas 130.

[0045] Note that some of the multiple band areas 130 may be configured so that data is written using the CMR method.

[0046] When a write operation is being performed on one track 41, the magnetic head 22 may vibrate due to external factors. If the magnetic head 22 deviates from the track center toward an adjacent track during a write operation on the target track 41, the width of the adjacent track is narrowed according to the amount of deviation of the magnetic head 22 toward the adjacent track. Alternatively, if the trajectory of the adjacent track deviates toward the target track 41, the width of the adjacent track is narrowed even if the magnetic head 22 does not deviate toward the adjacent track during the write operation on the target track 41. The amount by which the width of the adjacent track is reduced from the design width due to a write operation is referred to as the squeeze amount.

[0047] If the squeeze amount is greater than a predetermined amount, the magnetic field of the magnetic head 22 may interfere with data written on adjacent tracks, potentially damaging the data. Furthermore, with the SMR system, the track width TW is narrower than with the CMR system, so vibrations of the magnetic head 22 have a greater effect on data on adjacent tracks.

[0048] The controller 30 has an error correction function so that the original data can be restored when reading even if the data on the adjacent tracks is damaged due to the narrowing of the adjacent track width. Specifically, the controller 30 has a sector error correction function and a track error correction function.

[0049] 5 is a diagram for explaining the error correction function provided in the controller 30 of the embodiment. This diagram shows an example of the configuration of one track 41. The error correction function will be explained based on the configuration of this track 41.

[0050] A plurality of servo sectors SV are arranged at intervals in the circumferential direction on the track 41. A servo sector ID is assigned to each servo sector SV. A servo sector SV assigned a servo sector ID of "X" is represented as servo sector SV#X. In the example shown in FIG. 5, eight servo sectors SV are arranged on one track 41. Numerical information corresponding to the positional order of the eight servo sectors SV, with the circumferential position at which a write operation to the track 41 starts as the reference position, is assigned as a servo sector ID to each of the eight servo sectors SV.

[0051] A large number of data sectors DS are arranged on one track 41. A data sector ID is assigned to each data sector DS in the track 41. A data sector DS assigned a data sector ID of "Y" is represented as data sector DS#Y. In the example shown in FIG. 5, 17 data sectors DS are arranged on one track 41. The 17 data sectors DS are assigned numerical information as a data sector ID corresponding to their positional order along the track 41 from the reference position.

[0052] Hereinafter, a data fragment that is scheduled to be written to data sector DS#Y and a data fragment that has been written to data sector DS#Y will be referred to as data fragment #Y.

[0053] In the circumferential direction of the track 41, the beginning and end are defined based on the reference position and the write / read direction.

[0054] For example, the position that the magnetic head 22 passes first in the section from when it passes the reference position until it passes the reference position again is referred to as the track head. The position that the magnetic head 22 passes last in the section from when it passes the reference position until it passes the reference position again is referred to as the track end. The data sector DS located at the start of the track, i.e., data sector DS#0, is referred to as the first data sector DS. The data sector DS located at the end of the track, i.e., data sector DS#16, is referred to as the last data sector DS.

[0055] The data fragments written to each data sector DS are error-correction coded by the RWC25. In other words, the data fragments stored in each data sector DS contain error-correction codes. The RWC25 can correct errors in units of data sectors DS using error-correction codes for data fragments read from a single data sector DS. This error correction in units of data sectors DS is referred to as sector error correction. A sector error correction failure is referred to as a sector read error. Note that an error correction failure means that the read data cannot be restored to data equivalent to the original data through error correction.

[0056] The error correction coding method for correcting sector errors is not limited to a specific method. In one example, a low-density parity-check code is applied as the error correction coding method for correcting sector errors.

[0057] The last data sector DS, data sector DS#16, is used exclusively for parity. Writing to track 41 is performed as follows: First, data pieces are written to data sectors DS#0 to DS#15 in the order of their data sector numbers. Parity calculated based on the group of data pieces written to data sectors DS#0 to DS#15 is written to data sector DS#16.

[0058] The parity written to data sector DS#16 protects the group of data pieces written to data sectors DS#0 to DS#15 from errors. Even if a sector read error occurs in some of the data pieces among data sectors DS#0 to DS#15, the data pieces in which the sector read error occurred can be restored by error correction using the parity written to data sector DS#16. In other words, the parity written to data sector DS#16 protects data on a track-by-track basis. This parity written to data sector DS#16 is referred to as track parity. Error correction using track parity is referred to as track error correction.

[0059] The method for calculating the track parity is not limited to a specific method. In one example, the track parity is generated by performing an XOR for each bit position on a group of data pieces written to data sectors DS#0 to DS#15.

[0060] Track error correction has a correction limit. Therefore, track error correction may fail. A failure of track error correction is referred to as a track read error. If a track read error occurs, it may ultimately become impossible to restore data. Therefore, the controller 30 performs various controls during write operations to prevent track read errors. When a state is reached in which it is estimated that a track read error will occur, the controller 30 immediately terminates the write operation on the write target track 41 and performs an operation to protect data on adjacent tracks from becoming unrecoverable. The operation to protect data on adjacent tracks from becoming unrecoverable is referred to as a protection operation.

[0061] Various types of protective actions can be performed, two examples of which are described below.

[0062] 6 and 7 are diagrams for explaining an example of a protection operation according to an embodiment. These diagrams illustrate the protection operation in a write operation on track #k, taking track #(k−1) and track #k as examples.

[0063] 6 shows the transition of the position error signal PES#(k-1) during a write operation on track #(k-1). The position error signal PES#(k-1) represents the actual trajectory of the magnetic head 22 during a write operation on track #(k-1). In other words, the position error signal PES#(k-1) indicates the write position of data on the adjacent track, track #(k-1).

[0064] In the initial state, the controller 30 sets the dynamic drift-off level DDOL#k based on the write position of the data on track #(k-1), i.e., the locus indicated by the position error signal PES#(k-1). Specifically, the controller 30 sets the dynamic drift-off level DDOL#k at a position offset by a predetermined fixed length L1 toward the track #k side from the locus indicated by the position error signal PES#(k-1).

[0065] The dynamic drift-off level is the boundary line of the write permitted range that is determined based on the position of data on adjacent tracks.

[0066] Furthermore, the controller 30 sets a sector read error boundary based on the locus indicated by the position error signal PES#(k-1). Specifically, the controller 30 sets the sector read error boundary at a position offset from the locus indicated by the position error signal PES#(k-1) by a predetermined fixed length L2 (where L2>L1) toward the track #k side.

[0067] The sector read error boundary is a boundary where it is believed that a sector read error will not occur in an adjacent track unless the magnetic head 22 passes over it toward the adjacent track during a write operation. In other words, the sector read error boundary is a radial boundary line corresponding to the sector read error correction limit.

[0068] Whether a track read error occurs in an adjacent track depends on the cumulative damage evaluation CDE and the track read error threshold Th. CDE The cumulative damage evaluation amount CDE is the amount of damage evaluation amount DE accumulated in the circumferential section where the write operation was performed. The damage evaluation amount DE is the amount of damage that exceeds the level at which a sector read error occurs, which is caused by the write operation to the data piece of the data sector DS of the adjacent track, and is quantified. When the cumulative damage evaluation amount CDE is compared with the track read error threshold value Th CDE If the cumulative damage evaluation amount CDE is smaller than the track read error threshold value Th, it is estimated that no track read error will occur in the adjacent track. CDE If it is larger, it is estimated that a track read error may occur in the adjacent track.

[0069] The sector read error boundary is used as one of the criteria for calculating the damage evaluation amount DE.

[0070] If the magnetic head 22 exceeds the dynamic drift-off level DDOL toward an adjacent track during a write operation, or if it is estimated that a track read error may occur in the adjacent track, a protective operation is performed.

[0071] 6, during a write operation on track #k, the magnetic head 22 exceeds the dynamic drift-off level DDOL toward the adjacent track at circumferential position CP1, so the controller 30 executes a protection operation at circumferential position CP1.

[0072] 6 and 7, the controller 30 tightens the dynamic drift-off level DDOL#k as a protective operation. Specifically, the dynamic drift-off level DDOL#k from the circumferential position CP1 to the end of the track is moved toward the track #k side.

[0073] 7 shows the operation when the dynamic drift-off level DDOL#k is tightened. The controller 30 sets the dynamic drift-off level DDOL#k after the circumferential position CP1 to a position offset toward track #k by a fixed length L3 from the locus indicated by the position error signal PES#(k-1). Note that L3 is longer than L2. This prevents sector read errors from occurring in the data sectors DS of adjacent tracks in the section after the circumferential position CP1, preventing the data on the adjacent tracks from ultimately becoming unrecoverable.

[0074] 7, the controller 30 interrupts the write operation and tightens the dynamic drift-off level DDOL#k when the magnetic head 22 passes the circumferential position CP1. Then, when the magnetic disk 11 rotates once and the magnetic head 22 approaches the circumferential position CP1 again, the controller 30 determines whether the position of the magnetic head 22 exceeds the post-tightening dynamic drift-off level DDOL#k. Because the position of the magnetic head 22 does not exceed the post-tightening dynamic drift-off level DDOL#k, the controller 30 resumes the write operation from the circumferential position CP1.

[0075] 8 is a diagram for explaining another example of a protection operation of an embodiment. In this diagram, data fragments #0 to #9 and track parity are shown as an example of one track's worth of data written to track #k. This one track's worth of data is referred to as data for track #k. In the example shown in this diagram, a sector slip operation is executed as the protection operation.

[0076] The controller 30 determines that the conditions for starting the protection operation are met when writing of data fragments #0 through #6 of the data for track #k is completed. The controller 30 ends the write operation for track #k and executes a sector slip operation.

[0077] In the sector slip operation, the controller 30 writes data fragments #7 to #9, which are data fragments of the data for track #k that have not yet been written to track #k, to track #(k+1). For example, the controller 30 writes data fragments #7 to #9 to data sectors #0 to #2 of track #(k+1). In addition, the controller 30 writes track parity of the data for track #k to a system area (not shown). The system area is located in a position different from the band area 130 where user data is written. The system area may be located on the magnetic disk 11 or in a non-volatile memory such as FROM 28.

[0078] By performing a sector slip operation, writing is suspended in the section of track #k from the circumferential position where the write operation ended to the end of the track, thereby preventing track read errors from occurring on adjacent tracks.

[0079] A large number of data sectors DS are provided on the magnetic disk 11, but the quality of these data sectors DS usually varies. The causes of the variation in the quality of the data sectors DS are various, such as unevenness of the recording surface 100 and unevenness of the quality of the servo sectors SV. Then, the sector error boundary is determined so that a sector data error does not occur even in the data sector DS with the worst quality.

[0080] Specifically, the controller 30 selects at least one track 41 as a target (target track). After completing the data write to the adjacent track, the controller 30 executes one or more write operations on the target track 41, varying the squeeze amount for each write operation. Each time the controller 30 completes a write operation on the target track, it executes a read operation on the adjacent track and determines whether a sector read error has occurred. The controller 30 determines the upper limit of the squeeze amount at which no sector read error occurs in any data sector DS, and determines the length L2 based on that upper limit of the squeeze amount.

[0081] For example, the design value of the track pitch is TP, and the upper limit of the squeeze amount at which a sector read error does not occur in any data sector DS is V. SQ1 If so, the length L2 is determined by the following formula (1): L2=TP-V SQ1 ···(1)

[0082] 9 is a diagram illustrating an example of a method for determining the length L2, i.e., the sector read error boundary, in an embodiment. In this diagram, the horizontal axis indicates the position of the data sector DS within the track 41, and the vertical axis indicates the bit error rate obtained by sector error correction when data is read from the data sector DS. R1 is the upper limit bit error rate at which a sector read error does not occur.

[0083] 9 shows the bit error rate for each data sector DS when the squeeze amount (denoted as SQ) is 1 nm and the bit error rate for each data sector DS when the squeeze amount is 2 nm. In this example, due to the heterogeneity in the quality of the data sectors DS included in the target track, the bit error rate for the first data sector tends to be the highest on the target track, and the bit error rate for the second data sector tends to be the lowest on the target track. As the squeeze amount increases, these trends are maintained and the bit error rate for each data sector DS increases.

[0084] When the squeeze amount SQ is 2 nm, the first data sector reaches the upper limit R1. Therefore, V in Equation (1) SQ1 The length L2 is determined by substituting 2 nm into

[0085] The sector read error boundary may be defined by the length L2 or by the upper limit V of the squeeze amount SQ. SQ1 Here, the upper limit V of the squeeze amount SQ SQ1 is set as the set value that defines the sector read error boundary. Also, the upper limit V of the squeeze amount SQ is SQ1 is used to determine whether the magnetic head 22 has crossed the sector read error boundary toward the adjacent track by comparing it with the squeeze amount SQ. SQ1 Squeeze amount threshold Th SQ It is written as follows.

[0086] The squeeze amount threshold ThSQ (Upper limit of squeeze amount SQ V SQ1 The method for determining the squeeze amount threshold Th is not limited to the above method. As long as it corresponds to or can be considered to correspond to the correction limit of the sector read error, any method can be used to determine the squeeze amount threshold Th. SQ can be determined.

[0087] Squeeze amount threshold Th SQ is determined in the manufacturing process and stored in a non-volatile storage area in the magnetic disk device 1 (for example, FROM 28 or magnetic disk 11).

[0088] Squeeze amount threshold Th SQ may be set individually for each track 41, or may be set individually for each of a plurality of tracks 41 arranged consecutively in the radial direction.

[0089] There are cases where the recording surface 100 is divided into multiple zones in the radial direction, and the recording density is set individually for each zone. In such cases, the squeeze amount threshold Th SQ may be set separately for each zone.

[0090] A technique to be compared with the embodiment will be described. The technique to be compared with the embodiment will be referred to as a comparative example. In the comparative example, the controller SQ The amount exceeding the squeeze amount SQ is acquired as the damage evaluation amount DE. SQ If it does not exceed the threshold value, the damage evaluation amount DE is set to 0, and the squeeze amount SQ is set to the squeeze amount threshold value Th SQ When the squeeze amount SQ exceeds the squeeze amount threshold Th SQ The controller accumulates the damage evaluation amount DE for the section in the track where the write operation has been completed, and uses the amount obtained by the accumulation as the cumulative damage evaluation amount CDE.

[0091] According to the comparative example, it is possible to prevent track read errors from occurring in adjacent tracks, but there is still room for reducing the frequency of execution of the protection operation.

[0092] Squeeze amount threshold Th SQ is set based on the data sector DS with the worst quality. Therefore, considering the variation in quality of the data sectors DS within the track 41, the cumulative damage evaluation amount CDE obtained by the comparative example can be considered to be an overestimation of the damage suffered by the data on the adjacent tracks.

[0093] For example, in the first data sector DS shown in Figure 9, if the squeeze amount SQ exceeds 2 nm, the damage evaluation amount DE becomes larger than 0. However, since the second data sector DS is of high quality, even if the squeeze amount SQ in the second data sector DS slightly exceeds 2 nm, the damage will not be greater than the level at which a sector read error occurs. In other words, the squeeze amount SQ is calculated based on the squeeze amount threshold Th SQ In the calculation method for obtaining the damage evaluation amount DE by subtracting , the damage to the data piece of the second data sector DS is overestimated.

[0094] In this embodiment, the controller 30 performs a read operation on the adjacent track to obtain a metric (referred to as a signal quality metric) representing the signal quality of data on the adjacent track for each data sector DS. Then, the controller 30 converts the signal quality metric into a damage evaluation amount DE. The controller 30 accumulates the damage evaluation amounts DE obtained by the conversion to obtain a cumulative damage evaluation amount CDE.

[0095] The signal quality metric obtained by reading data from adjacent tracks directly corresponds to the damage to the data, regardless of variations in the quality of the data sectors DS. Therefore, compared to the comparative example that overestimates the damage to data on adjacent tracks, the frequency with which track read errors are estimated to occur on adjacent tracks is reduced, and the frequency with which protection operations are performed is reduced.

[0096] If a protection operation is performed frequently, the performance of the write operation will be degraded. For example, if the dynamic drift-off level (DDOL) is tightened as a protection operation, the write permission range will be narrowed, which will increase the frequency of interruptions to the write operation, thereby reducing the rate at which data is written to the magnetic disk 11. If a sector slip operation is performed as a protection operation, data pieces will not be written to some data sectors DS at the end of the track 41 on which the sector slip operation was performed. Therefore, if the sector slip operation is performed frequently, there is a risk that the capacity of one band area will be insufficient.

[0097] That is, according to the comparative example, the performance of the write operation decreases as the frequency of execution of the protection operation increases.

[0098] According to the embodiment, the frequency of execution of the protection operation is reduced, and therefore the performance of the write operation is improved compared to the comparative example.

[0099] The signal quality metric of the data of the adjacent track is obtained by a read operation on the adjacent track. Therefore, the signal quality metric of the adjacent track cannot be acquired during a write operation. During a write operation, the controller 30, like the comparative example, determines whether the squeeze amount SQ is greater than the squeeze amount threshold Th SQ That is, the controller 30 acquires the amount of damage DE exceeding the squeeze amount threshold Th SQ If it does not exceed the threshold value, the damage evaluation amount DE is set to 0, and the squeeze amount SQ is set to the squeeze amount threshold value Th SQ When the squeeze amount SQ exceeds the squeeze amount threshold Th SQ The value obtained by subtracting is obtained as the damage evaluation amount DE. SQ The method of obtaining the damage evaluation amount DE exceeding the track read error threshold value Th is referred to as the first calculation method. CDEIf the cumulative damage evaluation amount CDE obtained using the second calculation method is greater than the track read error threshold Th, the controller 30 executes a read operation on the adjacent track and acquires a signal quality metric of the data of the adjacent track. Then, the controller 30 acquires a damage evaluation amount DE based on the signal quality metric. The method of acquiring the damage evaluation amount DE based on the signal quality metric is referred to as the second calculation method. When the cumulative damage evaluation amount CDE obtained using the second calculation method is greater than the track read error threshold Th, the controller 30 acquires a damage evaluation amount DE based on the signal quality metric. CDE If it becomes greater, the controller 30 takes protective action.

[0100] The signal quality metric can be a bit error rate, a Viterbi internal operation margin, or an FIR filter waveform equalization error. During a read operation, the RWC 25 can output the bit error rate, the Viterbi internal operation margin, and the FIR filter waveform equalization error for each data sector DS. The controller 30 can use one of these pieces of information output from the RWC 25 as the signal quality metric. Note that the signal quality metric is not limited to these, as long as it is a numerical value that represents the signal quality of the read data piece.

[0101] The controller 30 converts the signal quality metric into the damage assessment amount DE based on the correspondence information 200.

[0102] FIG. 10 is a diagram illustrating an example of the configuration of the correspondence information 200 according to the embodiment and a second calculation method using the correspondence information 200. In FIG.

[0103] The correspondence information 200 indicates the correspondence relationship between the squeeze amount SQ and the signal quality metric for a data sector DS of a predetermined quality. In the example shown in Fig. 10, information recording the correspondence relationship between the squeeze amount SQ and the signal quality metric for the first data sector DS is used as the correspondence information 200. Note that the correspondence information 200 is not limited to the first data sector DS, and may record the correspondence relationship between the squeeze amount SQ and the signal quality metric for a data sector DS selected by any method.

[0104] 10, the correspondence between the squeeze amount SQ and the signal quality metric for the second data sector is shown by a dotted line. The squeeze amount for the second data sector obtained based on the position error signal PES is V SQ2 and V SQ2 is the squeeze amount threshold Th SQ If it is larger than V, the damage assessment amount DE of the second data sector is calculated as follows: SQ2 -Th SQ )

[0105] A read operation on the second data sector results in a signal quality metric for the data piece in the second data sector of V MT1 In the second calculation method, the controller 30 calculates the signal quality metric value V by referring to the correspondence information 200. MT1 is converted into the corresponding squeeze quantity SQ value. The signal quality metric value V MT1 The value of the squeeze amount SQ corresponding to V SQ3 and V SQ3 is the squeeze amount threshold Th SQ In this case, the controller 30 sets SQ3 -Th SQ ) is the damage evaluation quantity DE. In other words, in the second calculation method, the value of the signal quality metric V MT1 is the damage evaluation amount DE (V SQ3 -Th SQ ) is converted to

[0106] Hereinafter, the damage evaluation amount DE obtained by the first calculation method will be referred to as the first damage evaluation amount DE1, and the damage evaluation amount DE obtained by the second calculation method will be referred to as the second damage evaluation amount DE2.

[0107] Also, the above-mentioned V SQ2 The squeeze amount obtained based on the position error signal PES is referred to as a first squeeze amount SQ1. SQ3The squeeze amount SQ obtained by converting the signal quality metric using the correspondence information 200 as above is referred to as a second squeeze amount SQ2.

[0108] The correspondence information 200 is determined in the manufacturing process and stored in a non-volatile storage area in the magnetic disk device 1 (for example, the FROM 28 or the magnetic disk 11).

[0109] 11 is a flowchart showing an example of the operation of the magnetic disk device 1 according to the embodiment. This diagram shows a series of processes for a write operation to track #k.

[0110] First, the controller 30 initializes a variable n and a variable CDE to 0 (S101). The variable n is a variable in which the ID of the servo sector SV is stored. The variable CDE is a variable in which the calculated value of the cumulative damage evaluation amount CDE is stored.

[0111] Next, the controller 30 executes a write operation for the section from immediately after the servo sector SV#n to immediately before the servo sector SV next to the servo sector SV#n (S102). At this time, the controller 30 reads servo information from the servo sector SV next to the servo sector SV#n and acquires a PES based on the read servo information.

[0112] It is determined whether the servo sector SV#n is the last servo sector SV (S103). For example, according to the configuration of the track 41 shown in Fig. 5, the servo sector SV#7 is the last servo sector SV.

[0113] If the servo sector SV#n is the last servo sector SV (S103: Yes), the write operation for the track #k is completed.

[0114] If the servo sector SV#n is not the last servo sector SV (S103: No), the controller 30 determines whether the squeeze amount SQ1 in the servo sector SV#n(n+1) is equal to or greater than the squeeze amount threshold Th SQIt is determined whether it is greater than (S104).

[0115] In S104, the controller 30 calculates the difference between the position error signal PES#(k-1), which is the position error signal PES of the adjacent track, and the position error signal PES#k, to obtain the first squeeze amount SQ1 for the servo sector SV#n(n+1). Alternatively, the controller 30 may simply obtain the amount of deviation of the magnetic head 22 from the track center of track #k, represented by the position error signal PES#k, toward the adjacent track as the first squeeze amount SQ1.

[0116] The first squeeze amount SQ1 in the servo sector SV#n(n+1) is the squeeze amount threshold Th SQ If it is greater than (S104: Yes), the controller 30 calculates the first squeeze amount SQ1 for each data sector DS included in the section from servo sector SV#n to servo sector SV#(n+1) of track #(k-1) (S105). The section from servo sector SV#n to servo sector SV#(n+1) is referred to as the first section.

[0117] As described above, the position error signal PES is obtained each time the magnetic head 22 passes over a servo sector SV. Therefore, the first squeeze amount SQ1 at each servo sector SV can be directly calculated based on the position error signal PES. The controller 30 estimates the first squeeze amount SQ1 for each data sector DS of the adjacent track based on the first squeeze amount SQ1 at each servo sector SV.

[0118] In one example, the controller 30 calculates the first squeeze amount SQ1 for each data sector DS of the adjacent track by interpolating the first squeeze amount SQ1 for each servo sector SV. The positional relationship between each servo sector SV and each data sector DS of the adjacent track is known. The controller 30 calculates the first squeeze amount SQ1 for each data sector DS of the adjacent track by linearly interpolating the first squeeze amount SQ1 for each servo sector SV using this positional relationship. That is, in S105, the controller 30 obtains the first squeeze amount SQ1 for each data sector DS included in the first section by linearly interpolating the first squeeze amount SQ1 for servo sector SV#n and the first squeeze amount SQ1 for servo sector SV#(n+1). The interpolation method is not limited to linear interpolation. The controller 30 may perform interpolation by approximation using a polynomial of second degree or higher.

[0119] In another example, the controller 30 regards the first squeeze amount SQ1 of all data sectors DS between two circumferentially adjacent servo sectors SV as equal to the larger of the first squeeze amounts SQ1 at the two servo sectors SV. That is, in S105, the controller 30 regards the larger of the first squeeze amount SQ1 at servo sector SV#n and the first squeeze amount SQ1 at servo sector SV#(n+1) as the first squeeze amount SQ1 of all data sectors DS included in the first section of track #(k-1).

[0120] The method for calculating the first squeeze amount SQ1 for each data sector DS of the adjacent track is not limited to the above method.

[0121] Following S105, the controller 30 calculates a first damage assessment amount DE1 for each data sector DS included in the first section of track #(k-1) (S106).

[0122] In S106, the controller 30 performs the following process for each data sector DS included in the first section of the track #(k-1). That is, the controller 30 first calculates the difference between the first squeeze amount SQ1 and the squeeze amount threshold Th SQ Subtract the value (SQ1-Th SQ If the value (SQ1-Th SQ ) is greater than 0, the controller 30 SQ ) is the first damage evaluation quantity DE1.

[0123] The controller 30 calculates the sum (denoted as dCDE1) of the first damage assessment amounts DE1 of the data sectors DS included in the first section of the track #(k-1) (S107). Then, the controller 30 adds dCDE1 to the value of the variable CDE, and updates the value of the variable CDE with the value obtained by the addition (S108).

[0124] The variable CDE indicates the cumulative damage evaluation amount CDE. The controller 30 calculates the value of the variable CDE, i.e., the cumulative damage evaluation amount CDE, based on the track read error threshold value Th CDE It is determined whether it is greater than the specified value (S109).

[0125] The value of the variable CDE is the track read error threshold Th CDE If it is greater (S109: Yes), the controller 30 suspends the write operation to track #k and executes a read operation to track #(k-1) (S110).

[0126] During a read operation on track #(k-1), the RWC 25 outputs a signal quality metric for each data sector DS of track #(k-1). The controller 30 acquires the signal quality metric output for each data sector DS of track #(k-1) (S111).

[0127] The controller 30 acquires a second squeeze amount SQ2 for each data sector DS of the track #(k-1) (S112) based on the signal quality metric for each data sector DS of the track #(k-1) and the correspondence information 200. Then, the controller 30 calculates a second damage assessment amount DE2 for each data sector of the track #(k-1) (S113).

[0128] In S113, the controller 30 calculates the second damage evaluation amount DE2 in the same manner as in S106, except that the controller 30 uses the second squeeze amount SQ2 instead of the first squeeze amount SQ1.

[0129] The controller 30 calculates the sum (referred to as CDE2) of the second damage assessment amounts DE2 of the data sectors DS included in the section from servo sector SV#0 to servo sector SV#(n+1) of track #(k-1) (S114). Then, the controller 30 updates the variable CDE with the obtained sum CDE2 (S115). The section from servo sector SV#0 to servo sector SV#(n+1) of track #(k-1) is referred to as the second section.

[0130] The controller 30 calculates the value of the variable CDE, i.e., the cumulative damage evaluation amount CDE, based on the track read error threshold value Th CDE It is determined whether it is greater than the specified value (S116).

[0131] The value of the variable CDE is the track read error threshold Th CDE If it is greater (S116: Yes), the controller 30 executes a protective operation (S117), and the series of operations ends.

[0132] The value of the variable CDE is the track read error threshold Th CDE If it is not greater than n (S116: No), the controller 30 increments the value of the variable n by 1 (S118), and the control transitions to S102.

[0133] In this way, the controller 30 calculates the cumulative damage evaluation amount CDE based on the first calculation method (S105 to S108). CDE If it is greater than the track error threshold value Th (S109: Yes), the controller 30 does not immediately execute a protective operation, but updates the cumulative damage evaluation amount CDE based on the second calculation method (S110 to S115). CDE If the cumulative damage evaluation amount CDE based on the second calculation method is not greater than the track error threshold value Th (S116: No), the controller 30 continues the write operation without performing a protection operation (S118, S102). CDE If it is greater (S116: Yes), the controller 30 executes a protective operation (S117).

[0134] In the example shown in FIG. 11, the squeeze amount SQ1 in the servo sector SV#n(n+1) is set to the squeeze amount threshold Th SQ If the squeeze amount SQ1 in the servo sector SV#n(n+1) is equal to the squeeze amount threshold value Th, the control proceeds to S118. SQ If it is equal to, the squeeze amount SQ1 in the servo sector SV#n(n+1) is equal to the squeeze amount threshold Th SQ As in the case where it is greater, the control may transition to S105.

[0135] In addition, in S109, the value of the variable CDE is set to the track read error threshold value Th CDE If the value of the variable CDE is equal to the track read error threshold value Th, the control proceeds to step S118. CDE If the value of the variable CDE is equal to the track read error threshold Th CDE As in the case where it is greater, control may transition to S110.

[0136] In addition, in S116, the value of the variable CDE is equal to the track read error threshold value Th CDEIf the value of the variable CDE is equal to the track read error threshold value Th, the control proceeds to step S118. CDE If the value of the variable CDE is equal to the track read error threshold Th CDE As in the case where it is greater, the control may transition to S117.

[0137] 11, the operations of S105 to S109 are an example of a first operation. The operations of S110 to S116 are an example of a second operation. In addition, in S101 to S116, servo sector SV#(n+1) is an example of a first servo sector and a second servo sector. Track #k is an example of a first track. Track #(n-1) is an example of a second track. The value of variable CDE obtained by calculation in S108 is an example of a first quantity. The value of variable CDE obtained by calculation in S115 is an example of a second quantity. Track error threshold Th CDE is an example of the first threshold value. The first squeeze amount SQ1 is an example of the third amount and the fifth amount. The squeeze amount threshold value Th SQ is an example of the second threshold value. The second squeeze amount SQ2 is an example of the fourth amount.

[0138] FIG. 12 shows the state when the first squeeze amount SQ1 is equal to or exceeds the squeeze amount threshold Th when the process of S106 shown in FIG. 11 is performed. SQ The vertical axis shows an example of the history of when the first squeeze amount SQ1 exceeds the squeeze amount threshold Th SQ 10 shows the first damage assessment amount DE1 of the data sector DS exceeding 100%.

[0139] In the example shown in FIG. 12, the first squeeze amount SQ1 in seven data sectors DS is equal to or greater than the squeeze amount threshold Th SQ Since the first damage assessment amounts DE1 of the data sectors DS other than these seven are 0, the sum of the first damage assessment amounts DE1 of these seven data sectors DS is obtained as the cumulative damage assessment amount CDE.

[0140] The cumulative damage evaluation amount CDE is calculated based on the track error threshold value Th CDE If it exceeds this, the controller 30 calculates the second damage evaluation amount DE2 based on the second calculation method (see S113 in FIG. 11).

[0141] FIG. 13 shows the state in which the second squeeze amount SQ2 is equal to or exceeds the squeeze amount threshold value Th when the process of S113 shown in FIG. 11 is performed. SQ The vertical axis shows an example of the history of when the second squeeze amount SQ2 exceeds the squeeze amount threshold value Th SQ 10 shows the second damage assessment amount DE2 of the data sector DS exceeding .

[0142] In the example shown in FIG. 13, the second squeeze amount SQ2 is equal to the squeeze amount threshold value Th SQ The number of data sectors DS exceeding the squeeze threshold value Th is 4, and the first squeeze amount SQ1 is SQ The sum of the second damage evaluation amounts DE2 of these four data sectors DS is obtained as the cumulative damage evaluation amount CDE based on the second calculation. The cumulative damage evaluation amount CDE obtained based on the second squeeze amount SQ2 is calculated based on the track error threshold value Th CDE If it is less, the controller 30 continues the write operation.

[0143] 14 is a diagram showing an example of the transition of the cumulative damage evaluation amount CDE according to the embodiment. The horizontal axis represents the number of times that the squeeze amount SQ exceeds the squeeze amount threshold value ThSQ in a write operation on a certain track 41. The vertical axis represents the cumulative damage evaluation amount CDE.

[0144] In the example shown in Fig. 14, the write operation is suspended twice in response to the process determination in S109 of Fig. 11, and then resumed twice in response to a negative determination in S116. The write operation up to the first suspension of the write operation is referred to as the first write, the write operation from the first restart of the write operation to the second suspension of the write operation is referred to as the second write, and the write operation after the second restart of the write operation is referred to as the third write.

[0145] 14 also shows the upper limit of the cumulative damage evaluation amount CDE at which no track read error occurs. From this figure, it can be seen that the track read error threshold Th is a value with a slight margin up to the upper limit of the cumulative damage evaluation amount CDE at which no track read error occurs. CDE It can be seen that it is set as

[0146] In the first write, the cumulative damage evaluation amount CDE is calculated based on the first calculation method. Then, in the first write, the cumulative damage evaluation amount CDE is calculated based on the track read error threshold value Th CDE The cumulative damage evaluation quantity CDE is calculated based on the second calculation method in response to the difference between the first and second damage evaluation quantities.

[0147] According to the cumulative damage evaluation quantity CDE based on the second calculation method, the squeeze quantity SQ is equal to the squeeze quantity threshold value Th SQ In the example shown in FIG. 14, the squeeze amount SQ is closer to the squeeze amount threshold Th at the start of the second write than at the end of the first write. SQ The number of times it is exceeded decreases, and the cumulative damage evaluation (CDE) also decreases.

[0148] In the second write, the damage evaluation amount CD in the section where the first write is completed (for example, the second section described with reference to FIG. 11) calculated based on the second calculation method is accumulated with the damage evaluation amount CD in the section where the new write is performed (for example, the first section when S105 to S108 are performed after the processing of S110 to S115 is performed in the flowchart shown in FIG. 11). In the second write, the damage evaluation amount CD is calculated based on the track read error threshold value Th. CDE In response to the fact that the cumulative damage evaluation amount CDE exceeds the threshold, a cumulative damage evaluation amount CDE is calculated based on the second calculation method for the section where the first write and the second write are completed.

[0149] In the example shown in FIG. 14, the cumulative damage evaluation amount CDE based on the second calculation method in the section where the first write and the second write are completed is calculated as follows: CDE No larger than the third light will be initiated.

[0150] According to the comparative example, the cumulative damage evaluation amount CDE calculated by the first calculation method and the track read error threshold Th CDE Therefore, according to the comparative example, the protection operation is executed upon completion of the first write.

[0151] In contrast to this, according to the embodiment, the cumulative damage evaluation amount CDE is recalculated by the second calculation method. In contrast to the first calculation method, which overestimates the damage suffered by the data fragment in a high-quality data sector DS, the second calculation method can properly evaluate the damage suffered by the data fragment regardless of the quality of the data sector DS. Therefore, even if the cumulative damage evaluation amount CDE calculated by the first calculation method is less than the track read error threshold Th CDE Even if the cumulative damage evaluation amount CDE calculated by the first calculation method exceeds the track read error threshold Th CDE If it is smaller, the write operation continues without any protection operation being performed.

[0152] In the above example, the damage to the data on the adjacent track is expressed as the cumulative damage evaluation amount DE of the data pieces in the data sectors DS of the adjacent track. The amount of damage to the data on the adjacent track is not limited to this.

[0153] For example, the controller 30 may use the amount obtained by dividing the damage evaluation amount DE of the data pieces of the data sectors DS of the adjacent tracks by the number of data sectors DS whose squeeze amount SQ (the first squeeze amount SQ1 or the second squeeze amount SQ2) exceeds the squeeze amount threshold ThSQ, i.e., the average value of the damage evaluation amounts DE, as the amount representing the damage suffered by the data of the adjacent tracks. The average value of the damage evaluation amounts DE is referred to as the average damage evaluation amount ADE.

[0154] 15 is a diagram showing an example of the transition of the average damage assessment amount ADE according to the embodiment. The horizontal axis represents the number of times that the squeeze amount SQ exceeds the squeeze amount threshold value ThSQ in a write operation for a certain track 41. The vertical axis represents the average damage assessment amount ADE.

[0155] FIG. 15 shows the upper limit of the average damage assessment amount ADE where no track read error occurs. A value with a slight margin up to the upper limit of the average damage assessment amount ADE where no track read error occurs is the track read error threshold Th ADE is set as

[0156] The average damage assessment amount ADE obtained based on the first calculation method is calculated based on the track read error threshold value Th ADE If it is greater than the average damage assessment amount ADE, the controller 30 suspends the write operation and recalculates the average damage assessment amount ADE based on the second calculation method. If the average damage assessment amount ADE obtained based on the recalculation based on the second calculation method is less than the track read error threshold value Th ADE If the average damage assessment amount ADE obtained based on the second calculation method is not greater than the track error threshold value Th, the controller 30 continues the write operation without performing a protection operation. ADE If so, the controller 30 takes protective action.

[0157] In this way, the damage suffered by the data on the adjacent track can be expressed by various statistical quantities, such as the cumulative amount of damage evaluation amounts DE suffered by the data fragments of the data sectors DS of the adjacent track, or the average amount of damage evaluation amounts DE suffered by the data fragments of the data sectors DS of the adjacent track.

[0158] In the above description, the controller 30 accumulates the damage assessment amounts DE (the first damage assessment amount DE1 and the second damage assessment amount DE2) calculated for each data sector DS of the adjacent tracks in the section where writing was performed (i.e., the second section) to obtain the cumulative damage assessment amount CDE, which is the assessment amount of damage suffered by the data of the adjacent tracks. The unit of accumulation is not limited to the unit of the data sector DS of the adjacent tracks.

[0159] In the first calculation, the controller 30 may simply calculate the damage evaluation amount for each servo sector SV based on the squeeze amount in each servo sector SV, and calculate the damage evaluation amount obtained for each servo sector SV.

[0160] Alternatively, in the first calculation, the controller 30 may simply obtain the squeeze amount at the position of each data sector DS included in the track 41 to be written by interpolation based on the squeeze amount at each servo sector SV, and calculate the damage evaluation amount based on the obtained squeeze amount.

[0161] As described above, according to the embodiment, the controller 30 executes a first operation (see, for example, S105 to S109 in FIG. 11) in response to passing a servo sector SV during a write operation. The first operation calculates an evaluation amount of damage caused to data on an adjacent track by the write operation based on the position error signal PES (see, for example, S105 to S108 in FIG. 11), and compares the cumulative damage evaluation amount CDE calculated based on the position error signal PES with the track error threshold value Th CDE In the first operation, the controller 30 compares the cumulative damage evaluation amount CDE with the track error threshold value Th CDEIf it is determined that the value is greater than the threshold value, the write operation is interrupted (see, for example, S110 in FIG. 11), and a second operation is performed (see, for example, S110 to S116 in FIG. 11). The second operation performs a read operation on the adjacent track (see, for example, S110 in FIG. 11), acquires a signal quality metric that is a metric representing the signal quality of the data of the adjacent track read by the read operation (see, for example, S111 in FIG. 11), calculates a cumulative damage evaluation amount CDE based on the signal quality metric (see, for example, S112 to S115), and compares the cumulative damage evaluation amount CDE calculated based on the signal quality metric with the track error threshold value Th CDE In the first operation, the controller 30 compares the cumulative damage evaluation amount CDE with the track error threshold value Th CDE (for example, see the negative determination in S109 in FIG. 11), or the cumulative damage evaluation amount CDE is determined to be smaller than the track error threshold value Th CDE In the second operation, the controller 30 determines whether the cumulative damage evaluation amount CDE is smaller than the track error threshold value Th CDE In response to a determination that the detected voltage is greater than the reference voltage (for example, see the positive determination in S116 of FIG. 11), a protective action is executed.

[0162] Therefore, the frequency of execution of the protection operation is reduced, and the performance of the write operation is improved compared to the comparative example.

[0163] According to the embodiment, data pieces that have been subjected to error correction for sector error correction are written to each data sector DS. In the first operation, the controller 30 acquires the first squeeze amount SQ1 for each data sector DS of the adjacent track (see, for example, S105 in FIG. 11), and calculates whether the first squeeze amount SQ1 is equal to the squeeze amount threshold Th SQA first damage evaluation amount DE1, which is an amount exceeding the above, is calculated (see, for example, S106 in FIG. 11), and the first damage evaluation amount DE1 is accumulated or averaged to obtain a cumulative damage evaluation amount CDE (see, for example, S107 and S108 in FIG. 11).

[0164] Therefore, it is possible to evaluate the damage suffered by the data in the adjacent track based on the damage suffered by the data piece in the data sector DS of the adjacent track, which exceeds the level at which a sector read error occurs.

[0165] Furthermore, according to the embodiment, in the second operation, the controller 30 acquires the signal quality metric for each data sector DS of the adjacent track (see, for example, S111 in FIG. 11), converts the signal quality metric into a second squeeze amount SQ2 based on the correspondence information 200 (see, for example, S112 in FIGS. 10 and 11), and calculates the second squeeze amount SQ2 as a squeeze amount threshold Th, which is a threshold corresponding to the correction limit of sector error correction. SQ A second damage evaluation amount DE2, which is an amount exceeding the above, is calculated (see, for example, S113 in FIG. 11), and the second damage evaluation amount DE2 is accumulated or averaged to obtain a cumulative damage evaluation amount CDE (see, for example, S114 and S115 in FIG. 11).

[0166] Therefore, it is possible to evaluate the damage suffered by the data in the adjacent track based on the damage suffered by the data piece in the data sector DS of the adjacent track, which exceeds the level at which a sector read error occurs.

[0167] In the above description, the controller 30 determines whether the cumulative damage evaluation amount CDE is equal to or smaller than the track error threshold value Th in the second operation. CDEIf it is determined that the read error is greater than the write error (see, for example, the positive determination in S116 in FIG. 11), the write operation is resumed from the point where the write operation was interrupted (see, for example, S118 and S102 in FIG. 11). However, the position where the write operation is resumed is not limited to this. The controller 30 may start the write operation from a circumferential position that is a space equal to or greater than the circumferential length of one data sector DS from the point where the write operation was interrupted (for example, the circumferential position of servo sector SV#(n+1) in FIG. 11).

[0168] Furthermore, every time the magnetic head 22 passes over a servo sector SV, the controller 30 calculates a first squeeze amount SQ1 based on the position error signal PES acquired in the servo sector SV that the magnetic head 22 has last passed over. SQ , the first operation is executed (for example, see the affirmative determination in S104 in FIG. 11). CDE If the write operation is interrupted in response to determining that the track is greater than 1, the controller 30 may be configured to determine whether to perform a read operation on the adjacent track in response to the circumferential position at which the write operation was interrupted.

[0169] For example, if the circumferential length from the circumferential position where the write operation was interrupted to the end of the track is smaller than a predetermined threshold, the controller 30 may execute a protection operation without executing a read operation on an adjacent track, etc. If the circumferential length from the circumferential position where the write operation was interrupted to the end of the track is greater than the predetermined threshold, the controller 30 may execute a second operation.

[0170] Although several embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be embodied in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included within the scope and spirit of the invention, and are also included in the scope of the invention and its equivalents as defined in the claims. [Explanation of symbols]

[0171] 1 magnetic disk device, 2 host, 11 magnetic disk, 12 spindle motor, 13 lamp, 14 VCM, 15 actuator arm, 21 motor driver IC, 22 magnetic head, 22r read element, 22w write element, 24 head IC, 25 RWC, 26 processor, 27 RAM, 28 FROM, 29 buffer memory, 30 controller, 41 track, 42 ​​servo area, 43 data area, 100 recording surface, 110 storage area, 120 media cache area, 130 band area, 200 correspondence information.

Claims

1. a magnetic disk comprising a plurality of tracks, on which a plurality of servo sectors, on which servo information is recorded, are arranged at intervals in a circumferential direction, the plurality of tracks comprising a first track and a second track, the second track being adjacent to the first track in a radial direction and written before the first track, the first track and the second track each comprising a plurality of data sectors, the plurality of data sectors including a data sector in which an error correction code for error correction in a track unit is stored; a magnetic head for writing data to and reading data from the magnetic disk; reading servo information when the magnetic head passes through each of the plurality of servo sectors, acquiring a position error signal of the magnetic head based on the read servo information, and performing a write operation on the first track while positioning the magnetic head over the first track based on the position error signal; a first operation is performed in response to the magnetic head passing a first servo sector that is one of the plurality of servo sectors during the write operation; the first operation is an operation of calculating an evaluation amount of damage caused to data of the second track by the write operation based on the position error signal, and comparing a first amount, which is the evaluation amount calculated based on the position error signal, with a first threshold value corresponding to a correction limit of error correction in units of tracks; interrupting the write operation and executing a second operation in response to determining that the first amount is greater than the first threshold value in the first operation; the second operation is an operation of performing a read operation on the second track, acquiring a metric representing a signal quality of data of the second track read by the read operation, calculating the evaluation amount based on the metric, and comparing a second amount, which is the evaluation amount calculated based on the metric, with the first threshold value; continuing the write operation on the first track in response to the first amount being determined to be smaller than the first threshold value in the first operation or the second amount being determined to be smaller than the first threshold value in the second operation; performing a protection operation to protect data on the first track in response to determining that the second amount is greater than the first threshold value in the second operation; A controller; A magnetic disk device comprising:

2. A data fragment that has been error-corrected for error correction in units of data sectors is written in each of the plurality of data sectors; In the first operation, the controller: a third amount, which is an amount by which the width of the second track is narrowed, is obtained for each data sector of the second track; and acquiring the first amount by accumulating or averaging the amount by which the third amount exceeds a second threshold corresponding to a correction limit of the error correction in units of data sectors.

2. The magnetic disk drive according to claim 1.

3. A data fragment that has been error-correction coded for error correction in units of data sectors is written in each of the plurality of data sectors; In the second operation, the controller: obtaining the metric for each data sector of the second track; converting the metric into an amount by which the width of the second track is narrowed based on the set correspondence information; and acquiring the second amount by accumulating or averaging the amount by which the fourth amount, which is the amount obtained by conversion from the metric, exceeds a second threshold corresponding to a correction limit of the error correction in units of data sectors.

2. The magnetic disk drive according to claim 1.

4. the controller, in response to determining in the second operation that the second amount is smaller than the first threshold value, resumes the write operation from a circumferential position spaced from the first servo sector by a distance equal to or greater than the circumferential length of one data sector; 4. The magnetic disk drive according to claim 1.

5. A data fragment that has been error-corrected for error correction in units of data sectors is written in each of the plurality of data sectors; The controller calculating a fifth amount, which is an amount by which the width of the second track is narrowed, based on a position error signal acquired at a second servo sector, which is the servo sector last passed by the magnetic head, each time the magnetic head passes over each of the plurality of servo sectors during the write operation; When the fifth amount exceeds a second threshold value corresponding to a correction limit of the error correction in units of the data sector, the second servo sector is regarded as the first servo sector and the first operation is executed; if the write operation is interrupted in response to the determination that the first amount is greater than the first threshold value in the first operation, determining whether or not to execute the read operation in response to the circumferential position of the first servo sector; 4. The magnetic disk drive according to claim 1.

6. a magnetic disk comprising a plurality of tracks, on which a plurality of servo sectors, on which servo information is recorded, are arranged at intervals in a circumferential direction, the plurality of tracks comprising a first track and a second track, the second track being radially adjacent to the first track and written before the first track, each of the first track and the second track comprising a plurality of data sectors; a magnetic head for writing data to and reading data from the magnetic disk; reading servo information when the magnetic head passes through each of the plurality of servo sectors, and acquiring a position error signal of the magnetic head based on the servo information that has been read; calculating an estimate of damage to the data piece for each data sector of the second track; A controller; A magnetic disk device comprising:

Citation Information

Patent Citations

  • Magnetic disk device and write processing method

    JP2023119547A