Magnetic disk drive
The magnetic disk drive system addresses data corruption on adjacent tracks by using a controller to adaptively set thresholds based on sector quality, reducing errors through intelligent write operation management and error correction.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-19
- Publication Date
- 2026-04-01
AI Technical Summary
Existing magnetic disk drives face challenges in preventing data corruption on adjacent tracks due to the narrowing of track widths during Shingled Magnetic Recording (SMR), which can lead to unrecoverable errors without effective protective measures.
A magnetic disk drive system that includes a controller to calculate individual threshold values based on the quality of each data sector, using servo information to determine when to interrupt write operations and perform protective actions to prevent data corruption on adjacent tracks, employing error correction functions and adaptive threshold settings.
The system effectively reduces the frequency of protective actions and minimizes data corruption on adjacent tracks by accurately assessing sector quality and adjusting thresholds, ensuring reliable data integrity.
Smart Images

Figure 2026056028000001_ABST
Abstract
Description
[Technical Field]
[0001] This embodiment relates to a magnetic disk drive. [Background technology]
[0002] Generally, magnetic disk drives are configured to allow error correction of data written to each track. If writing to a track in question could render data on an adjacent track uncorrectable, the magnetic disk drive performs a protective action to protect the data on the adjacent track by interrupting the write operation to the track in question. [Prior art documents] [Patent Documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2020-47328 [Overview of the project] [Problems that the invention aims to solve]
[0004] One embodiment aims to provide a high-performance magnetic disk device. [Means for solving the problem]
[0005] According to one embodiment, a magnetic disk drive comprises a magnetic disk, a magnetic head, and a controller. The magnetic disk comprises a plurality of tracks. A plurality of servo sectors, on which servo information is recorded, are arranged at circumferential intervals on the plurality of tracks. The plurality of tracks comprises a first track and a second track radially adjacent to the first track and written to before the first track. The magnetic head writes to and reads data from the magnetic disk. The controller calculates a first threshold value for each of the plurality of first positions in the circumferential direction, individually for each first position, based on the quality of each of the one or more second positions corresponding to each first position among the plurality of second positions in the circumferential direction. The controller initiates a write operation on the first track and performs a first operation when the magnetic head passes through the servo sectors during the write operation. In the first operation, the controller calculates a first quantity based on the servo information read each time the magnetic head passes through a servo sector. This first quantity is the cumulative amount over which the squeeze amount—the amount by which the width of the second track is narrowed from the design value by the light operation—exceeds a first threshold, and is accumulated across all second positions within the range adjacent to the circumferential portion of the second position where the light operation has been completed. The controller then compares this first quantity with the second threshold. Based on the comparison between the first quantity and the second threshold, the controller performs protective actions to interrupt the light operation and protect the data on the second track. [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 the first embodiment. [Figure 2] Figure 2 is a schematic diagram showing an example of the configuration of a magnetic disk according to the first embodiment. [Figure 3] Figure 3 is a schematic diagram illustrating the SMR method used in the magnetic disk device according to the first embodiment. [Figure 4] Figure 4 shows an example of multiple band regions provided on a magnetic disk according to the first embodiment. [Figure 5] Figure 5 is a diagram illustrating the error correction function provided by the controller according to the first embodiment. [Figure 6] Figure 6 is a diagram illustrating an example of the protective operation according to the first embodiment. [Figure 7] Figure 7 is another diagram illustrating an example of the protective operation according to the first embodiment. [Figure 8] Figure 8 is a diagram illustrating another example of the protective operation according to the first embodiment. [Figure 9] Figure 9 shows an example of the bit error rate of each data sector included in an adjacent track during a write operation according to the first embodiment. [Figure 10] Figure 10 shows an example of correspondence information according to the first embodiment. [Figure 11] Figure 11 shows an example of the information stored in FROM according to the first embodiment. [Figure 12] Figure 12 is a flowchart showing an example of the operation of a magnetic disk device according to the first embodiment. [Figure 13] Figure 13 is a diagram illustrating an example of the configuration of a long-distance sector according to the first embodiment. [Figure 14] Figure 14 is a diagram illustrating an example of interleaving operation according to the second embodiment. [Figure 15] Figure 15 is a diagram illustrating an example of deinterleaving operation according to the second embodiment. [Figure 16] Figure 16 shows an example of the positional relationship between the long-distance sector and each servo sector SV according to the second embodiment. [Figure 17] Figure 17 shows an example of the bit error rate of each long-distance sector included in track 41, which is considered an adjacent track, during a write operation according to the second embodiment. [Figure 18] Figure 18 shows an example of correspondence information according to the second embodiment. [Figure 19]Figure 19 is a flowchart showing an example of the operation of a magnetic disk device according to the second 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] (First embodiment) Figure 1 is a schematic diagram showing an example of the configuration of a magnetic disk device 1 according to the first 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 comprises a magnetic disk 11 on which a recording surface is formed. The magnetic disk drive 1 writes and reads data to the magnetic disk 11 (more precisely, to the recording surface of the magnetic disk 11) in response to access commands. Although the magnetic disk drive 1 may have multiple magnetic disks 11, in the first embodiment, for the sake of simplicity in explanation and illustration, the magnetic disk drive 1 comprises only one magnetic disk 11.
[0011] Data is written and read via the magnetic head 22. Specifically, the magnetic disk device 1 includes, in addition to the magnetic disk 11, 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 lamp 13, a head IC 24, a read / write channel (RWC) 25, RAM 27, 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 rotational speed by a spindle motor 12 attached to the rotation axis of the magnetic disk 11. The spindle motor 12 is driven by a motor driver IC 21.
[0013] The motor driver IC21 controls the rotation of the spindle motor 12 and the VCM 16.
[0014] The magnetic head 22 writes and reads data to and from the magnetic disk 11 using its write element 22w and read element 22r. The magnetic head 22 is mounted on the tip of the actuator arm 15. The magnetic head 22 is moved along the radial direction of the magnetic disk 11 by a VCM 16 driven by a motor driver IC 21.
[0015] When the rotation of the magnetic disk 11 is stopped, the magnetic head 22 is moved onto the ramp 13. The ramp 13 is configured to hold the magnetic head 22 in a position away from the magnetic disk 11.
[0016] During read operations, the head IC 24 amplifies the signal read by the magnetic head 22 from the magnetic disk 11 and outputs it to the RWC 25. During write operations, the head IC 24 also 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 written to or read from the magnetic disk 11.
[0019] The buffer memory 29 is composed of, for example, 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.
[0020] The RWC25 modulates the data to be written, supplied from the HDC23, including error correction coding, 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, and outputs the demodulated data to the HDC23.
[0021] The processor 26 is, for example, a CPU (Central Processing Unit). RAM 27, FROM (Flash Read Only Memory) 28, and buffer memory 29 are connected to the processor 26.
[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 where various management data is 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 RWC25, processor 26, and HDC23 can also be considered as controller 30. Controller 30 may be configured as a System-On-a-Chip (SoC). Controller 30 does not necessarily have to be configured as an SoC. In addition to these, controller 30 may include other elements (e.g., RAM27, FROM28, buffer memory29, or RWC25).
[0026] Figure 2 is a schematic diagram showing an example of the configuration of a magnetic disk 11 according to the first embodiment. This figure 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, for example, by a servo writer or by self-servo writing (SSW). As shown in Figure 2, a radial arrangement of servo regions 42 is shown as an example of the arrangement of servo regions to which servo information has been written. Between the servo regions 42, data regions 43 to which data can be written are provided.
[0028] Multiple concentric tracks 41 are set in the radial direction of the magnetic disk 11.
[0029] The servo information includes a servo mark, Gray code, burst pattern, and postcode. When the controller 30 writes data to or reads data from a data sector, it generates a Positional Error Signal (PES) based on the servo information read by the magnetic head 22 from the servo area 42. The PES indicates the amount of radial deviation from the track center of the target track. Based on the PES acquired each time the magnetic head 22 passes through the servo area 42, the controller 30 performs positioning of the magnetic head 22, i.e., seek control and tracking control. For example, before the start of a write operation, the controller 30 performs seek control to move the magnetic head 22 to the track 41 to be written to. Then, it performs tracking control to keep the magnetic head 22 on the track 41 to be written to from just before the start of the write operation until the end of the write operation.
[0030] Hereafter, the portion of track 41 separated by the servo region 42 will be referred to as a servo sector SV. Since multiple servo regions 42 are arranged radially, it can be considered that multiple servo sectors SV are arranged circumferentially on each track 41 with spacing between them.
[0031] Multiple data areas 43 contain multiple data sectors on which data is written, arranged along track 41. Hereafter, the data written to each data sector will be referred to as a data fragment.
[0032] Two methods are known for writing data to magnetic disks: SMR (Shingled Magnetic Recording) and CMR (Conventional Magnetic Recording). In the first embodiment, the controller 30 is configured to write data requested by the host 2 to the magnetic disk 11 using the SMR method.
[0033] Figure 3 is a schematic diagram illustrating the SMR method used in the magnetic disk device 1 according to the first embodiment. In the SMR method, when writing data to a track 41 (referred to as the first data) and then writing data to a track 41 radially adjacent to that track 41 (referred to as the second data), each track 41 is arranged such that a portion of the second data overlaps with a portion of the first data. In other words, according to the SMR method, data from one of two radially adjacent tracks 41 of the magnetic disk 11 is written over a portion of the data from the other track 41.
[0034] For example, the data on track #2 is written so as to overlap with a portion of the data on track #1 that has already been written. Similarly, the data on track #3 is written so as to overlap with a portion of the data on track #2 that has already been written. In other words, with the SMR method, the data on one track 41 repeatedly overlaps with a portion of the data on an adjacent track that has already been written. This narrows the width of each track TW to less than the width of the write element 22w (WHw), improving the recording density.
[0035] In the SMR method, because the track width TW is narrower than the width WHw of the 22w light element, updating a portion of the 41 minutes of data across multiple tracks will corrupt the data in tracks adjacent to the updated data. To prevent data corruption, the data for multiple tracks, including the portion of data in question, is updated simultaneously. The area of multiple tracks that is updated simultaneously is called the band area.
[0036] Furthermore, according to the SMR method, for multiple tracks 41 within a single band region, writing can only be performed from one predetermined end (outer side) to the other predetermined end (inner side) of the magnetic disk. In the example shown in Figure 3, writing is performed in units of track 41 from the outer side to the inner side. The controller 30 may be configured so that writing is performed in units of track 41 from the inner side to the outer side. In addition, the writing order may be set individually for each band region.
[0037] In the following explanation, each track 41 included in the band region is assigned a track number corresponding to its arrangement order in the radial direction, and in the SMR method, writing is performed in units of track 41 in the order of the track numbers.
[0038] Furthermore, when using two radially adjacent tracks 41 as a reference, the track 41 that is lit later is used as the reference, and the track 41 that is lit earlier is simply referred to as the adjacent track in this specification. In other words, when using track #a as the reference, track #(a-1) corresponds to the adjacent track of track #a.
[0039] Figure 4 shows an example of multiple band regions provided on the magnetic disk 11 according to the first embodiment.
[0040] The recording surface 100 of the magnetic disk 11, that is, the area where track 41 can be placed, is divided radially into multiple storage areas 110. Each of the multiple storage areas 110 includes one media cache area 120 and multiple band areas 130. Between the storage areas 110, there are areas called guard areas that cannot be designated as write destinations from the host 2. Note that the guard areas are not shown in Figure 4.
[0041] The storage area 110 located on the outermost radial side of the recording surface 100 is set as the 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 side. In addition, 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.
[0042] The CMR method is a method in which data from two tracks 41 adjacent to each other in the radial direction of the magnetic disk 11 is written so that they do not overlap. With 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.
[0043] Each band area 130 is provided with multiple tracks 41. Data is written to each band area 130 using the SMR method. The maximum amount of user data written to each band area 130, i.e., the storage capacity, is common to all band areas 130.
[0044] Furthermore, some of the multiple band regions 130 may be configured so that data is written using the CMR method.
[0045] When a write operation is performed on a single track 41, the magnetic head 22 may vibrate due to external factors. If the magnetic head 22 shifts 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 by the amount of displacement of the magnetic head 22 toward the adjacent track. Alternatively, if the trajectory of the adjacent track is shifted toward the target track 41, the width of the adjacent track will be narrowed even if the magnetic head 22 does not shift toward the adjacent track during a 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 the write operation is denoted as the squeeze amount SQ. Furthermore, a write operation that narrows the width of the adjacent track from the design width is denoted as a squeeze write.
[0046] If the squeeze amount SQ is greater than a predetermined amount, the magnetic field of the magnetic head 22 may interfere with data written to adjacent tracks, potentially damaging that data. Furthermore, with the SMR method, the track width TW is narrower compared to the CMR method, so the vibration of the magnetic head 22 has a greater impact on data in adjacent tracks.
[0047] Even if data on adjacent tracks is damaged by squeeze write, the controller 30 is equipped with error correction functions to allow the original data to be restored during reading. Specifically, the controller 30 is equipped with sector error correction functions and track error correction functions.
[0048] Figure 5 is a diagram illustrating the error correction function of the controller 30 according to the first embodiment. This figure 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.
[0049] Track 41 has multiple servo sectors SV arranged at intervals in the circumferential direction. Each servo sector SV is assigned a servo sector ID. A servo sector SV assigned the servo sector ID "X" is denoted as servo sector SV#X. In the example shown in Figure 5, eight servo sectors SV are arranged on one track 41. Each of the eight servo sectors SV is assigned a servo sector ID that corresponds to a positional order with the circumferential position where the light operation on track 41 begins as the reference position.
[0050] A single track 41 contains numerous data sectors DS. Each data sector DS within track 41 is assigned a data sector ID. A data sector DS assigned the data sector ID "Y" is denoted as data sector DS#Y. In the example shown in Figure 5, 17 data sectors DS are located on a single track 41. Each of these 17 data sectors DS is assigned a numerical information corresponding to its positional order along track 41 from a reference point, which is then assigned as its data sector ID.
[0051] Hereafter, data fragments that are scheduled to be written to data sector DS#Y, and data fragments that have been written to data sector DS#Y, will be denoted as data fragment #Y.
[0052] In the circumferential direction of track 41, the beginning and end are defined based on the reference position and the write / read direction.
[0053] For example, the position that the magnetic head 22 passes first in the section from when it passes a reference position until it passes the next reference position is referred to as the track start. The position that the magnetic head 22 passes last in the section from when it passes a reference position until it passes the next reference position is referred to as the track end. The data sector DS located at the track start, i.e., data sector DS#0, is referred to as the first data sector DS. The data sector DS located at the track end, i.e., data sector DS#16, is referred to as the last data sector DS.
[0054] Each data fragment written to a data sector DS is error-corrected by RWC25. That is, each data fragment stored in a data sector DS contains error correction codes. RWC25 can perform error correction on a per-data sector DS basis using error correction codes for data fragments read from a single data sector DS. This per-data sector DS error correction is referred to as sector error correction. A failure of sector error correction is referred to as a sector read error. Error correction failure means that the read data cannot be restored to an equivalent value to the original data through error correction.
[0055] The error correction coding scheme for sector error correction is not limited to a specific scheme. For example, a low-density parity-check code may be applied as the error correction coding scheme for sector error correction.
[0056] The last data sector DS, data sector DS#16, is designated as a data sector DS dedicated to parity. Writing to track 41 is performed as follows: First, data fragments are written to data sectors DS#0 to DS#15 in the order of their data sector numbers. Then, the parity calculated based on the group of data fragments written to data sectors DS#0 to DS#15 is written to data sector DS#16.
[0057] The parity written to data sector DS#16 protects the group of data fragments written to data sectors DS#0 through DS#15 from errors. Even if a sector read error occurs for some of the data fragments among data sectors DS#0 through DS#15, the data fragments affected by the sector read error can be recovered through 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.
[0058] The method for calculating track parity is not limited to any particular method. For example, track parity is generated by performing a bit-position-by-bit XOR on the group of data fragments written to data sectors DS#0 through DS#15.
[0059] Track error correction has a correction limit. Therefore, track error correction may fail. This failure of track error correction is referred to as a track read error. When a track read error occurs, it may ultimately become impossible to recover the data. Therefore, the controller 30 performs various controls during write operations to prevent track read errors. When a condition is expected to occur where a track read error is likely to occur, the controller 30 immediately terminates the write operation on the target track 41 and performs an operation to protect the data on adjacent tracks from becoming unrecoverable. This operation to protect the data on adjacent tracks from becoming unrecoverable is referred to as a protection operation.
[0060] Various actions can be performed as protective measures. Two examples of protective measures are described below.
[0061] Figures 6 and 7 illustrate an example of protective operation according to the first embodiment. These figures illustrate protective operation during a light operation on track #(k-1) and track #k.
[0062] Figure 6 illustrates the progression of the position error signal PES#(k-1) during a write operation for track #(k-1). The position error signal PES#(k-1) represents the actual trajectory of the magnetic head 22 during a write operation for track #(k-1). In other words, the position error signal PES#(k-1) indicates the write position of the data on the adjacent track, track #(k-1).
[0063] In its initial state, the controller 30 sets the dynamic drift off level DDOL#k based on the write position of the data for track #(k-1), that is, the trajectory 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 track #k from the trajectory indicated by the position error signal PES#(k-1).
[0064] The dynamic drift-off level is the boundary of the light permission range, determined based on the position of data on adjacent tracks.
[0065] Furthermore, the controller 30 sets the sector read error boundary based on the trajectory indicated by the position error signal PES#(k-1). Specifically, the controller 30 sets the sector read error boundary at a position offset by L2 (where L2 > L1) towards track #k from the trajectory indicated by the position error signal PES#(k-1).
[0066] The sector read error boundary is the boundary where, if the magnetic head 22 does not cross into the adjacent track during a write operation, a sector read error is not expected to occur in the adjacent track. In other words, the sector read error boundary is a radial boundary line corresponding to the correction limit of sector read errors.
[0067] Whether or not a track read error occurs in an adjacent track depends on the cumulative damage evaluation amount (CDE) and the track read error threshold (Th). CDE This can be estimated by comparing the following. The cumulative damage evaluation amount CDE is the amount obtained by accumulating the damage evaluation amount DE over the circumferential interval in which the write operation was performed. The damage evaluation amount DE is a numerical value that represents the amount of damage that exceeds the level at which a data fragment of the adjacent track's data sector DS receives due to a squeeze write, resulting in a sector read error. The cumulative damage evaluation amount CDE is equal to the track read error threshold Th CDE If the value is smaller, it is estimated that no track read errors will occur in adjacent tracks. The cumulative damage evaluation amount CDE is the track read error threshold Th CDE If the value is larger, it is estimated that a track read error may occur in the adjacent track.
[0068] The damage evaluation amount DE is obtained as the sector read error boundary. If the magnetic head 22 crosses the sector read error boundary towards the adjacent track, the radial distance between the magnetic head 22 and the sector read error boundary is obtained as the damage evaluation amount DE. If the magnetic head 22 does not cross the sector read error boundary towards the adjacent track, the damage evaluation amount DE is set to 0.
[0069] The sector read error boundary may be defined by length L2 or by a threshold value for the squeeze amount SQ. Here, the sector read error boundary will be defined by a threshold value for the squeeze amount SQ. This threshold value will be defined as the first squeeze amount threshold Th SQ1 This is how it is written. Furthermore, the first squeeze threshold Th SQ1 There is a relationship between TP and length L2, which is expressed by equation (1). TP is the design value for both the track pitch and the track width. Th SQ1 =TP-L2 ···(1)
[0070] The controller 30 obtains, as the damage evaluation amount DE, the amount by which the squeeze amount SQ exceeds the first squeeze amount threshold Th SQ1 When the first squeeze amount SQ does not exceed the squeeze amount threshold Th SQ1 , it is assumed that the damage evaluation amount DE is 0. When the squeeze amount SQ exceeds the first squeeze amount threshold Th SQ1 , the controller 30 obtains, as the damage evaluation amount DE, the value obtained by subtracting the first squeeze amount threshold Th from the squeeze amount SQ SQ1 .
[0071] During the write operation, if the magnetic head 22 exceeds the dynamic drift-off level DDOL toward the adjacent track, or if it is estimated that a track read error may occur in the adjacent track, the write operation is interrupted and a protection operation is executed
[0072] In the example shown in FIG. 6, during the write operation for track #k, the magnetic head 22 exceeds the dynamic drift-off level DDOL toward the adjacent track at the circumferential position CP1. Therefore, the controller 30 interrupts the write operation at the circumferential position CP1 and executes a protection operation
[0073] In the examples shown in FIGS. 6 and 7, as a protection operation, the controller 30 tightens the write permission range (specifically, the dynamic drift-off level DDOL#k). The controller 30 moves the dynamic drift-off level DDOL#k from the circumferential position CP1 to the end of the track toward track #k
[0074] Figure 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 to track #k by a fixed length L3 from the trajectory indicated by the position error signal PES#(k-1). However, L3 is longer than L2. This prevents sector read errors from occurring in the data sector DS of adjacent tracks in the portion after the circumferential position CP1, thus preventing the data of adjacent tracks from becoming ultimately unrecoverable.
[0075] In the example shown in Figure 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 completes one rotation 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 tightened dynamic drift-off level DDOL#k. Since the position of the magnetic head 22 does not exceed the tightened dynamic drift-off level DDOL#k, the controller 30 resumes the write operation from the circumferential position CP1.
[0076] Figure 8 illustrates another example of the protection operation according to the first embodiment. This figure shows data fragments #0 to #9 and track parity 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 the data for track #k. In the example shown in this figure, a sector slip operation is performed as the protection operation.
[0077] Assume that the conditions for initiating the protection operation are met when the writing of data fragments #0 to #6 of the data for track #k is completed. At that time, the controller 30 terminates the write operation for track #k and executes the sector slip operation, which is a protection operation.
[0078] In a sector slip operation, the controller 30 writes data fragments #7 to #9 of the data for track #k, which 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). It also writes the track parity of the data for track #k to a system area (not shown). The system area is located in a different location from the band area 130 where user data is written. The system area may be located on the magnetic disk 11 or on a non-volatile memory such as FROM 28.
[0079] The sectus slip operation prevents writes from being made to the portion of track #k from the circumferential position where the write operation ended to the end of the track. This prevents track read errors from occurring on adjacent tracks.
[0080] Furthermore, in a sector slip operation performed on track #k, the controller 30 may write the track parity to the parity sector of track #k instead of the system area. In other words, in a sector slip operation, the controller 30 refrains from writing data to the section from the circumferential position where the write operation was interrupted to a predetermined circumferential position. The predetermined circumferential position is either the circumferential position immediately preceding the parity sector or the end of the track.
[0081] Here, we will describe technologies that are comparable to the first embodiment. Technologies that are comparable to the first embodiment will be referred to as comparative examples.
[0082] The magnetic disk 11 is provided with numerous data sectors DS, but typically there is variation in the quality of these data sectors DS. The causes of this variation in data sector DS quality are various, including non-uniformity of the recording surface 100 and non-uniformity of the servo sector SV. In a comparative example, the first squeeze amount threshold Th SQ1 This is determined based on the lowest quality data sector DS and the first squeeze amount threshold ThSQ1 This is considered common within a single track.
[0083] In the comparative example, it is possible to prevent track read errors from occurring in adjacent tracks. However, the first squeeze amount threshold Th SQ1 This value is determined based on a low-quality, poor-quality data sector DS and is a common value for all data sector DS within a track. Therefore, considering the variation in the quality of data sector DS within track 41, the cumulative damage evaluation amount CDE obtained by the comparative example can be considered to overestimate the damage suffered by data in adjacent tracks. In other words, there is room to reduce the frequency of protection operations.
[0084] In the first embodiment, the controller 30 sets a first squeeze threshold Th within track 41 according to the quality of each data sector DS in adjacent tracks. SQ1 This changes the value. As a result, the controller 30 can obtain a value as the cumulative damage evaluation amount CDE that more accurately represents the damage received by the data of the adjacent track compared to the comparative example. By using the cumulative damage evaluation amount CDE obtained in this way, the frequency in which a track read error is estimated to occur in the adjacent track is reduced, and the frequency of execution of protective actions is reduced.
[0085] The bit error rate when reading a data fragment stored in an adjacent track is used as an indicator of the quality of that data sector DS. The bit error rate is the ratio of the number of bits changed due to errors to the total number of bits contained in the read data fragment. A smaller bit error rate indicates higher quality. Hereafter, the bit error rate when reading a data fragment stored in a data sector DS will be simply referred to as the bit error rate of the data sector DS.
[0086] Based on the bit error rate of the data sector DS, the first squeeze threshold Th SQ1 Examples of the setting process are explained using Figures 9 and 10.
[0087] Figure 9 shows an example of the bit error rate of each data sector DS included in track 41, which is considered an adjacent track, during a write operation according to the first embodiment. In this figure, the horizontal axis represents the position of each data sector DS within track 41, which is an adjacent track. The vertical axis represents the bit error rate.
[0088] Figure 9 shows that the bit error rate of data sectors DS varies within track 41. For example, the bit error rate of the first data sector is the highest within track 41. In other words, the first data sector has the lowest quality within track 41. Also, for example, the bit error rate of the second data sector is the lowest within track 41. In other words, the second data sector has the highest quality within track 41.
[0089] The controller 30 determines a first squeeze threshold Th based on the bit error rate of each data sector DS in the adjacent track and the following equations (2) and (3). SQ1 Set it. SQbase This is the largest possible value within the numerical range that guarantees that an error-free data unit set can be obtained from the data sector DS with the highest bit error rate in the adjacent track through sector error correction. base This is set during the manufacturing process. Th SQbase =TP-Mar base ...(2) Th SQ1 =Th SQbase +Mar1 ···(3)
[0090] In equation (3), Mar1 is a relaxation amount determined according to the bit error rate of the data sector DS. The controller 30 calculates the threshold relaxation amount Mar1 for each data sector DS of an adjacent track based on the pre-configured correspondence information 281.
[0091] Figure 10 shows an example of correspondence information 281 according to the first embodiment. In this figure, the horizontal axis represents the bit error rate of the data sector DS of the adjacent track, and the vertical axis represents the threshold relaxation amount Mar1.
[0092] As shown in Figure 10, according to correspondence information 281, the relationship between the bit error rate and the threshold relaxation amount Mar1 is defined such that the smaller the bit error rate, the larger the threshold relaxation amount Mar1. Therefore, for example, the threshold relaxation amount Mar1 at the circumferential position of the second data sector DS is larger than the threshold relaxation amount Mar1 at the circumferential position of the first data sector DS. According to this correspondence information 281, the higher the quality of the data sector DS of the adjacent track, the larger the first squeeze amount threshold Th SQ1 Therefore, even if the squeeze amount SQ is the same value, it becomes possible to estimate the damage evaluation amount DE, which represents the damage to the data sector DS of a high-quality adjacent track, as smaller than the damage evaluation amount DE, which represents the damage to the data sector DS of a low-quality adjacent track.
[0093] Furthermore, when a third data sector DS and a fourth data sector DS with a higher bit error rate than the third data sector DS are included, the relationship between the threshold relaxation amount Mar1 for the fourth data sector DS and the bit error rate, as long as the threshold relaxation amount Mar1 for the fourth data sector DS is smaller than the threshold relaxation amount Mar1 for the third data sector DS, is not limited to the example shown in Figure 10. In the example shown in Figure 10, the threshold relaxation amount Mar1 is represented as a linear function of the bit error rate. The relationship between the threshold relaxation amount Mar1 and the bit error rate is not limited to a linear function. For example, the threshold relaxation amount Mar1 may change in a step-like manner depending on the bit error rate. The threshold relaxation amount Mar1 may also be represented as a polynomial of order two or higher of the bit error rate. An upper or lower limit may be set for the threshold relaxation amount Mar1.
[0094] The correspondence information 281 described above is pre-stored in a predetermined non-volatile storage area within the magnetic disk device 1. Furthermore, the bit error rate of each data sector DS on the magnetic disk 11 is measured during the manufacturing process and pre-stored in a predetermined non-volatile storage area within the magnetic disk device 1. For example, the manufacturing process includes an inspection process in which data is written to all tracks 41, and then data is read from all tracks 41 to check for defects in the magnetic disk 11. During this inspection process, when data is read from all tracks 41, the bit error rate is measured for each data sector DS, and the measured bit error rate for each data sector DS is recorded in the measurement BER information 282 described later.
[0095] Figure 11 shows an example of information stored in FROM 28 according to the first embodiment. In the example shown in this figure, correspondence information 281 and measured BER information 282 are stored in FROM 28. The measured BER information 282 is information in which the measured bit error rate of each data sector DS provided on the magnetic disk 11 is recorded. Note that the non-volatile storage area in which the correspondence information 281 is stored is not limited to FROM 28. The non-volatile storage area in which the measured BER information 282 is stored is not limited to FROM 28.
[0096] The controller 30 can acquire PES each time the magnetic head 22 passes through a servo sector SV. However, as can be seen from the explanation in Figure 5, there is not necessarily only one data sector between servo sectors SV. Therefore, the controller 30 calculates the squeeze amount SQ and damage evaluation amount DE at the circumferential position of each data sector DS in adjacent tracks based on the PES at each servo sector. A specific example of how to calculate the squeeze amount SQ and damage evaluation amount DE at the circumferential position of each data sector DS in adjacent tracks will be described later.
[0097] Alternatively, the controller 30 may simply calculate the squeeze amount SQ and the damage evaluation amount DE for each circumferential position of the servo sector SV. The controller 30 may also obtain a cumulative damage evaluation amount CDE by accumulating the damage evaluation amounts DE calculated for each circumferential position of the servo sector SV.
[0098] Similarly, when the controller 30 performs a light operation on the track 41 to be lit, it sets a first squeeze amount threshold Th SQ1 The first squeeze amount threshold Th may be changed for each adjacent track's data sector DS, or SQ1 This may be changed for each servo sector SV. First squeeze amount threshold Th SQ1 When changing the value for each servo sector SV, the controller 30 calculates a first squeeze amount threshold Th for each data sector DS of an adjacent track. SQ1 The first squeeze amount threshold Th for each servo sector SV SQ1 Convert to the first squeeze threshold Th. SQ1 Specific examples of the conversion method will be described later.
[0099] Figure 12 is a flowchart showing an example of the operation of the magnetic disk device 1 according to the first embodiment. This figure shows a series of processes for a write operation on track #k.
[0100] In the example shown in Figure 12, the controller 30 calculates the squeeze amount SQ and the damage evaluation amount DE for each data sector SS of an adjacent track. Furthermore, the controller 30 calculates a first squeeze amount threshold Th for each servo sector SV. SQ1 I will change it.
[0101] First, the controller 30 acquires the position error signal PES#(k-1) of the adjacent track, i.e., track#(k-1) (S101).
[0102] The method for acquiring the position error signal PES#(k-1) is not limited to a specific method. For example, when the controller 30 performs a light operation on track #(k-1), it stores the position error signal PES#(k-1) for one rotation of track #(k-1) in a predetermined memory area. Then, in S101, the controller 30 acquires the position error signal PES#(k-1) for one rotation of track #(k-1) that is stored in the predetermined memory area.
[0103] The controller 30 obtains the bit error rate of each data sector DS of track #(k-1) by referring to the measured BER information 282 (S102).
[0104] The controller 30 determines a first squeeze amount threshold Th for each servo sector SV based on the position error signal PES#(k-1), the bit error rate of each data sector DS of track#(k-1), and the corresponding information 281. SQ1 The first squeeze amount threshold Th is calculated for each data sector DS of an adjacent track using equations (2) and (3). SQ1 The controller 30 then calculates the first squeeze amount threshold Th calculated for each data sector DS of an adjacent track. SQ1 The first squeeze amount threshold Th for each servo sector SV SQ1 Convert to.
[0105] For example, the controller 30 selects a certain servo sector SV as the target servo sector SV. The controller 30 then determines a first squeeze threshold Th of all data sectors DS of adjacent tracks that are included in the interval between the servo sector SV that the magnetic head 22 passes immediately before the target servo sector SV and the servo sector SV that the magnetic head 22 passes immediately after the target servo sector SV. SQ1 The minimum value of the first squeeze amount threshold Th applied to the target servo sector SV is set. SQ1The controller 30 sets each servo sector SV sequentially as the target servo sector SV, thereby setting the first squeeze amount threshold Th at the circumferential position of each servo sector SV. SQ1 The first squeeze threshold Th is calculated. SQ1 The method of conversion is not limited to this method.
[0106] Furthermore, the first squeeze threshold Th SQ1 The conversion method is not limited to this method. The controller 30 sets a first squeeze amount threshold Th for all data sectors DS of adjacent tracks included in a predetermined length section containing the target servo sector SV. SQ1 The minimum, average, or median value of the first squeeze amount threshold Th at the circumferential position of the target servo sector SV is used. SQ1 You can set it as such.
[0107] Furthermore, if we denote the circumferential position of each servo sector SV as the first position, and the circumferential position of each data sector DS of an adjacent track as the second position, then the processing in S103 can be considered as a process that calculates individually for each first position based on the quality of one or more second positions corresponding to each first position among multiple second positions in the circumferential direction.
[0108] Following the processing in S103, the controller 30 initializes the variables n and CDE to 0 (S104). Variable n is a variable that stores the ID of the servo sector SV. Variable CDE is a variable that stores the calculated value of the cumulative damage evaluation amount CDE.
[0109] The controller 30 performs a write operation for the section from immediately after servo sector SV#n to immediately before the next servo sector SV after servo sector SV#n (S105). At this time, the controller 30 reads servo information from the next servo sector SV after servo sector SV#n and acquires PES based on the read servo information.
[0110] The controller 30 determines whether servo sector SV#n is the last servo sector SV (S106). For example, according to the configuration of track 41 shown in Figure 5, servo sector SV#7 is the last servo sector SV.
[0111] If servo sector SV#n is the last servo sector SV (S106:Yes), the write operation for track #k is completed.
[0112] If servo sector SV#n is not the last servo sector SV (S106: No), the controller 30 determines that the squeeze amount SQ in servo sector SV#(n+1) is the first squeeze amount threshold Th applied to servo sector SV#(n+1). SQ1 Determine whether it is greater than or less than (S107).
[0113] In S107, the controller 30 calculates the difference between the position error signal PES#(k-1) at servo sector SV#n and the position error signal PES#k at servo sector SV#n to obtain the squeeze amount SQ at servo sector SV#(n+1).
[0114] The squeeze amount SQ in servo sector SV#(n+1) is the first squeeze amount threshold Th applied to servo sector SV#(n+1). SQ1 If it is not greater than (S107: No), the control transitions to S105.
[0115] The squeeze amount SQ in servo sector SV#(n+1) is the first squeeze amount threshold Th applied to servo sector SV#(n+1). SQ1 If it is greater than (S107: Yes), the controller 30 calculates the squeeze amount SQ for each data sector DS included in the section from servo sector SV#n to servo sector SV#(n+1) of track #(k-1) (S108). The section from servo sector SV#n to servo sector SV#(n+1) is referred to as the first section.
[0116] As described above, the position error signal PES is acquired each time the magnetic head 22 passes through a servo sector SV. Therefore, the squeeze amount SQ at each servo sector SV can be directly calculated based on the position error signal PES. The controller 30 estimates the squeeze amount SQ for each data sector DS of the adjacent track based on the squeeze amount SQ at each servo sector SV.
[0117] In one example, the controller 30 calculates the squeeze amount SQ for each data sector DS of an adjacent track by interpolating the squeeze amount SQ at each servo sector SV. The positional relationship between each servo sector SV and each data sector DS of an adjacent track is known. The controller 30 calculates the squeeze amount SQ for each data sector DS of an adjacent track by linear interpolation of the squeeze amount SQ at each servo sector SV using this positional relationship. In other words, in S108, the controller 30 obtains the squeeze amount SQ for each data sector DS included in the first interval by linear interpolation of the squeeze amount SQ at servo sector SV#n and the squeeze amount SQ at servo sector SV#(n+1). The interpolation method is not limited to linear interpolation. The controller 30 may also perform interpolation by approximation using a polynomial of order two or higher.
[0118] In another example, the controller 30 considers the squeeze amount SQ of all data sectors DS between two adjacent servo sectors SV in the circumferential direction to be equal to the larger of the squeeze amounts SQ at those two servo sectors SV. In other words, in S108, the controller 30 considers the larger of the squeeze amount SQ at servo sector SV#n and the squeeze amount SQ at servo sector SV#(n+1) to be the squeeze amount SQ of all data sectors DS included in the first section of track#(k-1).
[0119] Furthermore, the method for calculating the squeeze amount SQ for each data sector DS of an adjacent track is not limited to the method described above.
[0120] Following S108, the controller 30 calculates the damage evaluation amount DE for each data sector DS included in the first section of track #(k-1) (S109).
[0121] In S109, the controller 30 performs the following processing for each data sector DS included in the first section of track #(k-1): That is, the controller 30 first calculates the first squeeze amount threshold Th applied from the squeeze amount SQ to the servo sector SV#(n+1). SQ1 Subtract the value (SQ-Th). SQ1 If the value (SQ-Th) is 0 or less, the controller 30 assumes that the damage evaluation amount DE is 0. SQ1 If the value (SQ-Th) is greater than 0, the controller 30 will set the value (SQ-Th SQ1 Let DE be the damage evaluation amount.
[0122] The controller 30 calculates the sum of the damage evaluation amounts DE of the data sectors DS included in the first section of track #(k-1) (denoted as dCDE) (S110). Then, the controller 30 adds dCDE to the value of the variable CDE and updates the value of the variable CDE with the value obtained by the addition (S111).
[0123] The variable CDE represents the cumulative damage valuation CDE. Controller 30 sets the value of the variable CDE, i.e., the cumulative damage valuation CDE, to the track read error threshold Th CDE Determine whether it is greater than or less than (S112).
[0124] The value of the variable CDE is the track read error threshold Th CDE If it is not greater than (S112: No), the controller 30 increments the value of variable n by 1 (S113), and control transitions to S105.
[0125] The value of the variable CDE is the track read error threshold Th CDEIf it is greater than (S112: Yes), the controller 30 interrupts the write operation for track #k (S114). Then, the controller 30 performs a protective action (S115), and the series of operations ends.
[0126] The controller 30 may tighten the dynamic drift-off level DDOL#k or perform a sector slip operation as a protective action. If the dynamic drift-off level DDOL#k is tightened as a protective action, the controller 30 resumes the write operation when the magnetic head 22 approaches the interruption position after the magnetic disk 11 has completed one rotation since the interruption of the write operation.
[0127] In the series of operations shown in Figure 12, in the judgment process of S112, the cumulative damage evaluation amount CDE is set to the track read error threshold Th CDE If equal to the value, the process in S113 was executed. In the determination process in S112, the cumulative damage evaluation amount CDE is equal to the track read error threshold Th CDE If it is equal to the above, the process in S114 may be executed.
[0128] The processes S107 to S111 in the series of operations shown in Figure 12 are an example of the first operation. Furthermore, the first squeeze amount threshold Th SQ1 This is an example of the first threshold. Track read error threshold Th CDE This is an example of a second threshold. The cumulative damage evaluation amount CDE is an example of a first quantity.
[0129] Thus, according to the first embodiment, the controller 30 sets a first squeeze amount threshold Th for each servo sector SV which is the first position. SQ1 The controller 30 calculates this individually for each servo sector SV based on the quality of one or more data sectors DS of adjacent tracks, which are one or more second positions corresponding to each first position. During write operation, when the magnetic head 22 passes through the servo sector SV, the controller 30 calculates the squeeze amount to a first squeeze amount threshold Th SQ1The first quantity, the cumulative damage evaluation amount CDE, is obtained by accumulating the damage evaluation amount DE, which is the amount exceeding the limit, over all data sectors DS included in the range adjacent to the circumferential portion where the write has been completed. The controller 30 then calculates the cumulative damage evaluation amount CDE and the track read error threshold Th. CDE By comparing the two, protective actions are taken to prevent interruption of the write operation and protect the data of the second track, using the cumulative damage evaluation (CDE) and the track read error threshold (Th). CDE Execute based on the comparison result.
[0130] Therefore, the frequency of protective actions is reduced. When protective actions are performed, the time required to complete a write operation increases. By reducing the frequency of protective actions, the increase in the time required for write operations is suppressed. In other words, performance improves.
[0131] According to the first embodiment, the frequency of protective operations is reduced, which allows for a smaller design value for the track width (or track pitch). By reducing the design value for the track width (or track pitch), it becomes possible to increase the storage capacity of the magnetic disk device 1.
[0132] Furthermore, the first squeeze amount threshold Th according to the first embodiment illustrated in the explanation of the process in S103 SQ1 According to this conversion method, the first squeeze threshold Th is applied to one or more data sectors DS of adjacent tracks that have high quality servo sectors SV. SQ1 This is the first squeeze threshold Th applied to one or more low-quality servo sectors SV of adjacent tracks, which are data sectors DS. SQ1 It will become larger than that.
[0133] Therefore, the controller 30 can properly evaluate the damage to the data of adjacent tracks, and the frequency of protective actions is reduced.
[0134] Furthermore, according to the first embodiment, the controller 30 determines that the cumulative damage evaluation amount CDE is equal to the track read error threshold Th CDE If it is greater, the controller 30 will interrupt the light operation and perform protective actions. The controller 30 will determine when the cumulative damage evaluation amount CDE is greater than the track read error threshold Th CDE If the value is smaller, the light will continue to operate.
[0135] Therefore, it becomes possible to prevent squeeze write from rendering data on adjacent tracks unrecoverable.
[0136] Furthermore, in the above explanation, the multiple first positions were defined as a group of circumferential positions of each servo sector SV. In other words, the first squeeze amount threshold Th for each servo sector SV SQ1 The following was calculated. The multiple first positions do not necessarily have to be a group of circumferential positions of each servo sector SV.
[0137] For example, the multiple first positions may be a group of circumferential positions of each data sector DS of an adjacent track. That is, the controller 30 sets a first squeeze amount threshold Th for each data sector DS of an adjacent track. SQ1 You may calculate this and use it to calculate the damage evaluation amount DE.
[0138] In the first embodiment, the multiple second positions are a group of circumferential positions of each data sector DS of an adjacent track. When one servo sector SV is considered as the target servo sector SV, the controller 30 sets a first squeeze amount threshold Th for all data sectors DS of an adjacent track that are included in any part of the interval between the servo sector SV that the magnetic head 22 passes immediately before the target servo sector SV and the servo sector SV that the magnetic head 22 passes immediately after the target servo sector SV. SQ1 Based on this, the first squeeze amount threshold Th for the target servo sector SV is determined. SQ1 Calculate.
[0139] Furthermore, according to the first embodiment, the cumulative damage evaluation amount CDE is a value corresponding to the error correction limit of track 41 units.
[0140] Therefore, it becomes possible to prevent squeeze write from rendering data on adjacent tracks unrecoverable.
[0141] Furthermore, according to the first embodiment, the controller 30 restricts the radial light permission range during protective operation, and resumes light operation after restricting the light permission range.
[0142] Alternatively, according to the first embodiment, the controller 30 refrains from writing data to a predetermined circumferential position in the protection operation, from the circumferential position where the write operation was interrupted to a predetermined circumferential position.
[0143] Furthermore, according to the first embodiment, the controller 30 uses the bit error rate as an indicator of quality. The indicator of quality is not limited to the bit error rate.
[0144] (Second embodiment) A known method for arranging data on a magnetic disk involves writing data to an area longer than the length corresponding to the size of the units transmitted and received between the host and the disk. Such an area is referred to as a long-distance sector. A long-distance sector has a length that spans multiple servo sectors in the circumferential direction.
[0145] In the second embodiment, a technique is described for changing the threshold value of the protection operation determination criterion according to the quality of the long-distance sectors in a magnetic disk drive having a configuration in which multiple long-distance sectors are provided on each track. In the second embodiment, matters that differ from the first embodiment will be described. Matters that are the same as in the first embodiment will be described briefly or omitted.
[0146] Figure 13 is a diagram illustrating an example of the configuration of a long-distance sector according to the first embodiment. Note that the servo sector SV is not shown in this figure.
[0147] A single track 41 contains a number of data sectors DS. In the example shown in Figure 4, a single track 41 contains 16 data sectors DS. Each data sector DS has a capacity corresponding to the unit size of data transferred between the host 2 and the magnetic disk device 1.
[0148] For example, if host 2 supports 4K sectors, data is transferred between host 2 and magnetic disk device 1 in units of 4K bytes. In such a case, each data sector DS has a capacity corresponding to 4K bytes. More specifically, controller 30 performs predetermined data processing, such as error correction coding for sector error correction, on the 4K byte data units from host 2, and writes the data units after the predetermined data processing to magnetic disk 11. Due to the predetermined data processing, the size of the data unit becomes larger than 4K bytes. Each data sector DS has a capacity to store data units that are larger than 4K bytes after the predetermined data processing.
[0149] A single long-distance sector is composed of multiple data sectors DS arranged consecutively along track 41. Similar to the data sectors DS, each long-distance sector is assigned a numerical ID corresponding to its positional order along track 41.
[0150] In the example shown in Figure 13, one long-distance sector is composed of four data sectors DS. Specifically, long-distance sector #0 is composed of data sectors DS#0 to DS#3, long-distance sector #1 is composed of data sectors DS#4 to DS#7, long-distance sector #2 is composed of data sectors DS#8 to DS#11, and long-distance sector #3 is composed of data sectors DS#12 to DS#15.
[0151] The remaining data sector #16 is set as the parity sector, which is the sector on which track parity is written. Note that track parity may also be included in the last long-distance sector (long-distance sector #3 in the example shown in Figure 13).
[0152] Similar to the first embodiment, the method for calculating track parity is not limited to a specific method. For example, parity is generated by performing a bit-position XOR on the group of data units written to data sectors DS#0 to DS#15. If the interleaving operation described later is performed, the track parity is calculated before the interleaving operation.
[0153] In the second embodiment, data written to a single data sector DS, or such data before error correction coding for sector error setting, is referred to as a data unit. A set containing four data units written to long-distance sectors is referred to as a data unit set.
[0154] In the second embodiment, the controller 30 is further configured to perform interleaving and de-interleaving operations on the data unit set.
[0155] Figure 14 is a diagram illustrating an example of interleaving operation according to the second embodiment. This figure shows an example of interleaving operation performed on a data unit set written to a long-distance sector #m. The long-distance sector #m is assumed to be composed of data sectors #n to #(n+3). Note that both n and m are integers.
[0156] The set of data units written to long-distance sector #m consists of, for example, data units #0 to #3.
[0157] In interleaved operation, the controller 30 divides each of data units #0 to #3 into four sub-data units. The controller 30 then rearranges the order of the 16 sub-data units generated by the division of data units #0 to #3 and writes them to long-distance sector #m. Specifically, the controller 30 distributes the four sub-data units generated from data unit #0 to data sectors #n to #(n+3). Similarly, the controller 30 distributes the four sub-data units generated from data unit #1 to data sectors #n to #(n+3), the four sub-data units generated from data unit #2 to data sectors #n to #(n+3), and the four sub-data units generated from data unit #3 to data sectors #n to #(n+3).
[0158] In other words, with interleaved operation, one data unit is distributed across multiple data sectors DS that make up a long-distance sector.
[0159] Figure 15 is a diagram illustrating an example of deinterleaving operation according to the second embodiment. This figure shows an example of deinterleaving operation for data read from a long-distance sector #m.
[0160] Within the long-distance sector #m, each data unit is distributed as sub-data units within an area corresponding to four data sectors DS. In the deinterleaving operation, the controller 30 restores the arrangement of each sub-data unit to its original state for the data unit set whose arrangement has been changed by sub-data units read from the long-distance sector #m. This restores the data unit set before the interleaving operation, in which data unit #0, data unit #1, data unit #2, and data unit #3 are arranged in that order.
[0161] In this way, the interleaving and deinterleaving operations enhance the long-distance sector #m's resistance to burst errors. For example, even if data read from a data sector DS contains a burst error, the deinterleaving operation distributes the burst error across multiple data units. Since each data unit is individually error-corrected, the distributed burst error is corrected by sector error correction for each data unit.
[0162] Burst errors can also occur when the width of adjacent tracks is narrowed by a write operation. This narrowing of adjacent track width is called a squeeze write. When the track width is significantly narrowed by a squeeze write, it becomes difficult to read data without errors, and as a result, burst errors may occur in the data read from that section. Interleaving and deinterleaving operations allow for the correction of burst errors of a length less than or equal to data sector DS, even if these burst errors occur due to a local squeeze write of a length less than or equal to data sector DS.
[0163] As mentioned above, the long-distance sector has a length that spans multiple servo sectors SV in the circumferential direction.
[0164] Figure 16 shows an example of the positional relationship between the long-distance sector and each servo sector SV according to the second embodiment.
[0165] In the example shown in Figure 16, the range between the two ends in the circumferential direction of the long-distance sector #m of track #(k-1) includes four servo sectors SV#p to SV#(p+3). Servo sector SV#p is located at the beginning of data sector DS#n (more precisely, immediately before data sector DS#0), servo sector SV#(p+1) is located in the middle of data sector DS#(n+1), servo sector SV#(p+2) is located in the middle of data sector DS#(n+2), and servo sector SV#(p+3) is located in the middle of data sector DS#(n+3).
[0166] In a write operation that writes data to the long-range sector #m of track #k, which is the portion adjacent to the long-range sector #m of track #(k-1), the controller 30 performs tracking control based on servo information read from at least four servo sectors SV#p to SV#(p+3).
[0167] Furthermore, the controller 30 sets the dynamic drift-off level DDOL#k based on the trajectory indicated by the position error signal PES#(k-1), similar to the first embodiment.
[0168] As mentioned above, long-distance sectors have a length that spans multiple servo sectors SV, and furthermore, interleaving is performed on the data unit sets written to long-distance sectors. Even in situations where the width of adjacent tracks is significantly narrowed in a certain part of a long-distance sector, causing a burst error due to squeeze write in that part during a subsequent read operation, if data can be read without errors from other parts of that long-distance sector, it is possible to obtain error-free data through sector error correction.
[0169] In other words, in order to estimate as accurately as possible whether error-free data can be obtained through sector error correction, it is necessary to make a judgment based on the squeeze amount SQ in all of the multiple servo sectors SV that are included in the range between the two ends of a long-distance sector, rather than just a portion of those multiple servo sectors SV.
[0170] Therefore, when the controller 30 performs a write operation on the first part, which is the part of the track 41 adjacent to the second part that is to be written to, it performs the operation described below. Here, the second part is the part between the two circumferential ends of a certain long-distance sector (referred to as the adjacent long-distance sector) of the adjacent track.
[0171] To prevent data in adjacent long-distance sectors from becoming uncorrectable due to squeeze writing, the controller 30 calculates the squeeze amount SQ at the location of each sector (each servo sector SV or each data sector DS) in adjacent tracks based on the servo data read from each servo sector SV in the range from the beginning to the end of the first part. The operation of obtaining the squeeze amount SQ at the location of each sector (each servo sector SV or each data sector DS) in adjacent tracks is referred to as the acquisition operation. If there is a sector (each servo sector SV or each data sector DS) in the second part that is adjacent to a part of the first part that the magnetic head 22 has not yet passed through, the controller 30 predicts the squeeze amount SQ in the sector adjacent to the part that the magnetic head 22 has not yet passed through. Then, the controller 30 sums the squeeze amounts SQ of all sectors (servo sector SV or data sector DS) included in the adjacent long-distance sector and obtains the total squeeze amount SQ value SQsum. The sum of the squeeze amounts SQ, SQsum, is considered numerical information representing the damage received by the data of adjacent long-range sectors. Controller 30 uses the sum of the squeeze amounts SQsum and a threshold (second squeeze amount threshold Th SQ2 Compare it with (which is written as ).
[0172] The second squeeze threshold Th is the largest possible value within the numerical range that guarantees that error-free data unit sets can be obtained from adjacent long-distance sectors through sector error correction. SQ2 It is set as follows. Therefore, the sum of the squeeze amounts SQ is the second squeeze amount threshold Th SQ2If it is smaller than this, it can be estimated that error-free data can be obtained from adjacent long-range sectors. Also, the sum of the squeeze amounts SQ is the second squeeze amount threshold Th SQ2 If the value is greater than this, it can be estimated that it may be difficult to obtain error-free data from adjacent long-distance sectors.
[0173] When the controller 30 performs a write operation on track #k, each time the magnetic head 22 passes through the servo sector SV, it calculates the sum of the squeeze amounts SQ for the long-distance sector of track #(k-1) at the position corresponding to the position of the magnetic head 22, and calculates the sum of the squeeze amounts SQsum and the second squeeze amount threshold Th SQ2 Perform a comparison with and then execute the following.
[0174] In the example shown in Figure 16, as indicated by the position error signal #k, the magnetic head 22 passes through servo sectors SV#p and SV#(p+1) while writing data. Then, the magnetic head 22 reaches servo sector SV#(p+2).
[0175] When the magnetic head 22 reads servo information from servo sector SV#(p+2), the controller 30 determines the squeeze amount SQ in data sector DS#n of track #(k-1). n Squeeze amount SQ in data sector DS#(n+1) of track #(k-1) n+1 , and the squeeze amount SQ in data sector DS#(n+2) of track #(k-1) n+2 This is calculated based on the read servo information.
[0176] The controller 30 predicts the squeeze amount SQ in the data sector DS#(n+3) of track #(k-1), which is adjacent to the portion that the magnetic head 22 has not yet passed through. The predicted value SQE is the squeeze amount SQ in the data sector DS#(n+3) of track #(k-1). n+3 Various methods can be considered for calculating this.
[0177] For example, the maximum squeeze amount SQ in all data sectors DS adjacent to the portion of data sector DS in the long-distance sector #m of track #(k-1) that the magnetic head 22 has already passed through (i.e., the portion from servo sector SV#p to servo sector #(p+2) of track #k) is the predicted squeeze amount SQE. n+3 It is said that...
[0178] In another example, the average of the squeeze amount SQ in all data sectors DS adjacent to the portion of data sector DS in long-distance sector #m of track #(k-1) that the magnetic head 22 has already passed through is the predicted squeeze amount SQE. n+3 It is said that...
[0179] In yet another example, a trained neural network model is implemented as an electronic circuit in the memory area. This model is configured to output the squeeze amount SQ for one or more sectors (servo sector SV or data sector DS) immediately following a predetermined number of sectors (servo sector SV or data sector DS) arranged consecutively in the circumferential direction, when the squeeze amount SQ for these sectors is input. The neural network model has, for example, three layers: an input layer, a hidden layer, and an output layer. Each layer contains numerous neurons, connected by certain weights. Training involves adjusting how the weights are set at each connection to minimize the output error. For example, within the controller 30, there is a servo logic unit with a synchronization circuit that acquires the squeeze amount for each servo sector SV, and transmits this to a servo channel unit within the controller 30. The servo channel unit has the neural network model implemented as a circuit. The controller 30 then outputs a predicted value SQE of the squeeze amount SQ based on the trained neural network model. n+3 Obtain it.
[0180] In yet another example, when the squeeze amount SQ in a predetermined number of sectors (servo sectors SV or data sectors DS) arranged continuously in the circumferential direction is input, a circuit that outputs the squeeze amount SQ or an estimated value of the squeeze amount SQ in one or more sectors (servo sectors SV or data sectors DS) arranged immediately after the predetermined number of sectors is implemented in the controller 30 according to a regression equation. The controller 30 obtains a predicted value SQE of the squeeze amount SQ based on the prediction by the learned regression equation. n+3 to obtain.
[0181] Thus, in the acquisition operation, the controller 30 acquires one or more squeeze amounts SQ (here, four squeeze amounts SQ n , SQ n+1 , SQ n+2 , SQE n+3 ) for the long-distance sector #m of track #(k - 1).
[0182] When the controller 30 acquires the squeeze amount SQ n in the data sector DS#n, the squeeze amount SQ n+1 in the data sector DS#(n + 1), the squeeze amount SQ n+2 in the data sector DS#(n + 2), and the squeeze amount SQE n+3 in the data sector DS#(n + 3), it calculates the total value SQsum of these. Then, the controller 30 compares the total value SQsum of the squeeze amount with the second squeeze amount threshold Th SQ2 .
[0183] When the total value SQsum of the squeeze amount SQ is smaller than the second squeeze amount threshold Th SQ2 , the controller 30 continues the write operation for track #k. When the total value SQsum of the squeeze amount SQ is larger than the second squeeze amount threshold Th SQ2 , the controller 30 interrupts the write operation and executes a protection operation.
[0184] Note that when the total value SQsum of the squeeze amount SQ is the second squeeze amount threshold ThSQ2 The processing in the case of being equal to can be arbitrarily designed by the designer. For example, the controller 30 may continue the light operation or interrupt the light operation to execute the protection operation. Here, when the total squeeze amount SQsum is equal to the second squeeze amount threshold Th SQ2 the controller 30 shall continue the light operation when they are equal.
[0185] In the example shown in FIG. 16, the sector ends of the long-distance sectors are aligned between a plurality of tracks 41 arranged in the radial direction (for example, between track #(k - 1) and track #k). The sector ends of the long-distance sectors between the plurality of tracks 41 arranged in the radial direction do not necessarily have to be aligned.
[0186] As described in the first embodiment, there are variations in the quality of the data sectors DS provided on the track 41. Therefore, the quality of each long-distance sector also varies. In the second embodiment, the controller 30 changes the second squeeze amount threshold Th SQ2 within the track 41 according to the quality of the long-distance sectors of the adjacent tracks. As a result, the controller 30 can appropriately evaluate the damage received by the data of the adjacent tracks, and the frequency of executing the protection operation is reduced.
[0187] In the second embodiment, in one example, the average value of the bit error rates of all the data sectors DS constituting the long-distance sector is used as an index of the quality of the long-distance sector. The average value of the bit error rates of all the data sectors DS constituting the long-distance sector is referred to as the bit error rate of the long-distance sector.
[0188] The controller 30 obtains the second squeeze amount threshold Th SQ2 for each long-distance sector based on the following formula (4). Th SQ2baseThis is the largest possible value within the numerical range that guarantees that an error-free data unit set can be obtained by sector error correction from the long-distance sector with the highest bit error rate among the long-distance sectors of adjacent tracks. Mar2 is a relaxation amount determined by the bit error rate of data sector DS. Th SQ2 =Th SQ2base +Mar2 ···(4)
[0189] The controller 30 individually calculates the threshold relaxation amount Mar2 for each long-distance sector of an adjacent track based on the pre-configured correspondence information 281a.
[0190] Second squeeze threshold Th based on the bit error rate of long-distance sectors SQ2 Examples of the setting process are explained using Figures 17 and 18.
[0191] Figure 17 shows an example of the bit error rate of each long-distance sector included in track 41, which is considered an adjacent track, during a write operation according to the second embodiment. In this figure, the horizontal axis represents the position of each long-distance sector within track 41, which is an adjacent track. The vertical axis represents the bit error rate.
[0192] Figure 17 shows that the bit error rates of long-distance sectors vary within track 41. For example, the bit error rate of the first long-distance sector is the highest within track 41. This means that the first long-distance sector has the lowest quality within track 41. Also, for example, the bit error rate of the second long-distance sector is the lowest within track 41. This means that the second long-distance sector has the highest quality within track 41.
[0193] Figure 18 shows an example of correspondence information 281a according to the second embodiment. In this figure, the horizontal axis represents the bit error rate of the long-distance sector, and the vertical axis represents the threshold relaxation amount Mar2.
[0194] As shown in Figure 18, according to correspondence information 281a, the relationship between the bit error rate and the threshold relaxation amount Mar2 is defined such that the smaller the bit error rate, the larger the threshold relaxation amount Mar2. Therefore, for example, the threshold relaxation amount Mar2 in the second long-distance sector is larger than the threshold relaxation amount Mar2 in the first long-distance sector. According to this correspondence information 281a, the higher the quality of the long-distance sectors of adjacent tracks, the higher the second squeeze amount threshold Th SQ2 This increases the value of the squeeze amount SQ. Therefore, even if the squeeze amount SQ is the same, it becomes possible to estimate that the damage suffered by data in long-distance sectors with high quality adjacent tracks is less than the damage suffered by data in long-distance sectors with low quality adjacent tracks.
[0195] Correspondence information 281a is generated in the manufacturing process, similar to correspondence information 281 in the first embodiment, and stored in a predetermined non-volatile memory area (e.g., FROM 28).
[0196] Figure 19 is a flowchart showing an example of the operation of the magnetic disk device 1 according to the second embodiment. This figure shows a series of processes for a write operation on track #k.
[0197] First, the controller 30 acquires the position error signal PES#(k-1) of the adjacent track, i.e., track#(k-1) (S201).
[0198] The controller 30 obtains the bit error rate of each data sector DS of track #(k-1) by referring to the measured BER information 282 (S202).
[0199] Based on the position error signal PES#(k-1), the bit error rate of each data sector DS of track#(k-1), and the corresponding information 281a, the controller 30 sets a second squeeze amount threshold Th for each long-distance sector of track#(k-1). SQ2 Calculate (S203).
[0200] In S203, the controller 30 calculates the bit error rate for each long-distance sector of track #(k-1) based on the bit error rate of each data sector DS of track #(k-1). Then, the controller 30 obtains the threshold relaxation amount Mar2 for each long-distance sector of track #(k-1) based on the bit error rate for each long-distance sector and the corresponding information 281a. Then, using equation (4), the controller 30 obtains the second squeeze amount threshold Th for each long-distance sector of adjacent tracks. SQ2 Calculate.
[0201] Next, the controller 30 initializes the variable n to 0 (S204). The variable n is the variable that stores the ID of the servo sector SV.
[0202] The controller 30 performs a write operation for the section from immediately after servo sector SV#n to immediately before the next servo sector SV after servo sector SV#n (S205). At this time, the controller 30 reads servo information from the next servo sector SV after servo sector SV#n and acquires PES based on the read servo information.
[0203] The controller 30 determines whether servo sector SV#n is the last servo sector SV (S206).
[0204] If servo sector SV#n is the last servo sector SV (S206:Yes), the write operation for track #k is completed.
[0205] If servo sector SV#n is not the last servo sector SV (S206: No), the controller 30 calculates the squeeze amount SQ in each data sector DS adjacent to the portion of the long-distance sector of the adjacent track (referred to as the target adjacent long-distance sector) that the magnetic head 22 has already passed through, which includes the circumferential position of servo sector SV#(n+1) (S207).
[0206] Furthermore, the controller 30 predicts the squeeze amount SQ (i.e., the predicted amount SQE of the squeeze amount SQ) for each data sector DS adjacent to the portion of the target adjacent long-distance sector that the magnetic head 22 has not yet passed through (S208).
[0207] The controller 30 calculates SQsum, which is the sum of the squeeze amounts SQ across all data sectors DS included in the target adjacent long-distance sector (S209).
[0208] The controller 30 determines the second squeeze threshold Th applied to the target adjacent long-distance sector based on the total value SQsum. SQ2 Determine whether it is greater than or less than (S210).
[0209] The total value SQsum is the second squeeze threshold Th applied to the target adjacent long-distance sector. SQ2 If it is not greater than (S210: No), the controller 30 increments the value of variable n by 1 (S211), and control transitions to S205.
[0210] The total value SQsum is the second squeeze threshold Th applied to the target adjacent long-distance sector. SQ2 If it is greater than (S210: Yes), the controller 30 interrupts the write operation for track #k (S212). Then, the controller 30 performs a protection operation (S213), and the series of operations ends.
[0211] Thus, according to the second embodiment, the controller 30 sets a second squeeze threshold Th for each long-distance sector of an adjacent track based on the quality of each long-distance sector of the adjacent track. SQ2The controller 30 performs the following operations in a write operation to the first part, which is the part adjacent to the second part, which is the part between the two circumferential ends of the target adjacent long-distance sector. Specifically, the controller 30 calculates the squeeze amount SQ in each data sector DS included in the target adjacent long-distance sector based on the servo information read from one or more servo sectors SV that the magnetic head 22 has passed through among the two or more servo sectors SV included in the first part. Then, the controller 30 calculates the sum of the squeeze amounts SQ in each data sector DS included in the target adjacent long-distance sector, SQsum, and the second squeeze amount threshold Th applied to the target adjacent long-distance sector. SQ2 A comparison is performed between the following: The controller 30 performs a protective action to prevent interruption of write operations and protect data on adjacent tracks by comparing the total squeeze amount SQsum with a second squeeze amount threshold Th applied to the target adjacent long-distance sector. SQ2 Execute based on the comparison result.
[0212] Therefore, as in the first embodiment, the frequency of protective operations is reduced. When protective operations are performed, the time required to complete a write operation increases. By reducing the frequency of protective operations, the increase in the time required for write operations is suppressed. In other words, performance is improved. In addition, by reducing the design value of the track width (or track pitch), it becomes possible to increase the storage capacity of the magnetic disk device 1.
[0213] Furthermore, according to the second embodiment, the squeeze amount SQ in the data sector DS adjacent to the portion of the first part that the magnetic head 22 has not yet passed through is predicted.
[0214] Furthermore, according to the second embodiment, a second squeeze amount threshold Th corresponding to the quality of the long-distance sector is calculated based on the corresponding information 281a and equation (4). SQ2The following is calculated. Therefore, if an adjacent track contains a long-distance sector (referred to as the third long-distance sector) and another long-distance sector (referred to as the fourth long-distance sector), and the quality of the third long-distance sector is higher than the quality of the fourth long-distance sector, the second squeeze threshold Th applied to the third long-distance sector is calculated. SQ2 This is the second squeeze threshold Th applied to the fourth long-range sector. SQ2 It is larger than that.
[0215] Therefore, the controller 30 can properly evaluate the damage to the data of adjacent tracks, and the frequency of protective actions is reduced.
[0216] Furthermore, according to the second embodiment, the sum of the squeeze amounts SQ, SQsum, is the second squeeze amount threshold Th SQ2 If it is greater than the second squeeze amount threshold Th, the controller 30 performs a light operation interruption and protective action. SQ2 If the value is smaller than this, the controller 30 continues to operate the lights.
[0217] Therefore, squeeze write makes it possible to prevent data in the target adjacent long-distance sector from becoming uncorrectable by sector error correction.
[0218] Furthermore, according to the example shown in Figure 19, the controller 30 determines that the sum of the squeeze amounts SQ, SQsum, is the second squeeze amount threshold Th SQ2 If the value is greater than this, the light operation is immediately interrupted and protective action is performed. The conditions for interrupting the light operation and performing protective action are not limited to this.
[0219] For example, the controller 30 determines that the sum of the squeeze amounts SQ, SQsum, is the second squeeze amount threshold Th SQ2 Even if it is greater than this, the write operation continues, and the sum of the squeeze amounts SQ, SQsum, is the second squeeze amount threshold Th SQ2The amount exceeding this limit is accumulated over the adjacent track portion adjacent to the section where the light has been completed. The controller 30 then estimates whether a track read error will occur based on the amount obtained from the accumulation. If a track read error is estimated to occur, the controller 30 may interrupt the light operation and perform protective actions.
[0220] In the second embodiment, the controller 30 calculated the squeeze amount SQ for each data sector DS included in the target adjacent long-distance sector. As long as the squeeze amount SQ for multiple locations included in the target adjacent long-distance sector is calculated, the controller 30 does not need to calculate the squeeze amount SQ for each data sector DS included in the target adjacent long-distance sector.
[0221] Furthermore, in the second embodiment, as in the first embodiment, the controller 30 may restrict the radial light permission range during protective operation, and then resume light operation after restricting the light permission range.
[0222] Alternatively, the controller 30 may, in protective operation, refrain from writing data for the section from the circumferential position where the write operation was interrupted to a predetermined circumferential position.
[0223] Furthermore, similar to the first embodiment, the controller 30 uses the bit error rate as an indicator of quality. The indicator of quality is not limited to the bit error rate.
[0224] (Third embodiment) According to the first embodiment, the controller 30 sets a first squeeze amount threshold Th for each servo sector SV which is the first position. SQ1 This was calculated individually for each servo sector SV based on the quality of one or more data sectors DS of adjacent tracks, which are one or more second positions corresponding to each first position. First squeeze amount threshold Th SQ1 This is common to all servo sectors SV, and the controller 30 sets the first squeeze amount threshold Th SQ1Alternatively, the weight coefficient w1 may be calculated individually for each servo sector SV.
[0225] In other words, the controller 30 sets the first squeeze amount threshold Th SQ1 Instead of performing a conversion based on the quality of one or more data sectors DS of adjacent tracks, the squeeze amount is multiplied by a weighting coefficient w1 based on the quality of one or more data sectors DS of adjacent tracks.
[0226] In the light operation, when the magnetic head 22 passes through the servo sector SV, the controller 30 multiplies the squeeze amount by a weighting coefficient w1, and the squeeze amount multiplied by the weighting coefficient w1 is the first squeeze amount threshold Th SQ1 The first quantity, the cumulative damage evaluation amount CDE, is obtained by accumulating the damage evaluation amount DE, which is the amount exceeding the limit, over all data sectors DS included in the range adjacent to the circumferential portion where the write has been completed. The controller 30 then calculates the cumulative damage evaluation amount CDE and the track read error threshold Th. CDE By comparing the two, protective actions are taken to prevent interruption of the write operation and protect the data of the second track, using the cumulative damage evaluation (CDE) and the track read error threshold (Th). CDE Execute based on the comparison result.
[0227] Here, the controller 30 sets the weighting coefficient w1 applied to servo sectors SV with high quality data sectors DS of adjacent tracks to be smaller than the weighting coefficient w1 applied to servo sectors SV with low quality data sectors DS of adjacent tracks. In other words, the controller 30 sets the first squeeze amount threshold Th SQ1 Instead of increasing the first squeeze threshold Th, the weight coefficient w1 is decreased. SQ1 Instead of making it smaller, increase the weight coefficient w1.
[0228] Therefore, the controller 30 can properly evaluate the damage to the data of adjacent tracks, and the frequency of protective actions is reduced.
[0229] First squeeze threshold Th SQ1 Except for adjusting the weighting coefficient w1, the rest of the configuration is the same as in the first embodiment.
[0230] The controller 30 may multiply the squeeze amount by a weighting coefficient w1 corresponding to the magnitude of the amount by which the magnetic head 22 crosses the sector read error boundary. The controller 30 may also increase the weighting coefficient w1 according to the number of times the magnetic head 22 crosses the sector read error boundary. In other words, the weighting coefficient w1 may be small at the beginning of an adjacent track and large in the latter half of an adjacent track.
[0231] (Fourth embodiment) In the second embodiment, the controller 30 sets a second squeeze threshold Th for each long-distance sector of an adjacent track based on the quality of each long-distance sector of the adjacent track. SQ2 The controller 30 calculated the second squeeze amount threshold Th SQ2 Alternatively, a weighting coefficient w2 may be calculated, which is multiplied by the total squeeze amount SQ, SQsum.
[0232] In other words, the controller 30 sets a second squeeze amount threshold Th SQ2is common to all long-distance sectors of adjacent tracks, and calculates a weighting coefficient w2 based on the quality of each long-distance sector of adjacent tracks. In the light operation on the first part which is adjacent to the second part which is the part between the two circumferential ends of the target adjacent long-distance sector, the controller 30 executes the following operations. That is, the controller 30 calculates the squeeze amount SQ in each data sector DS included in the target adjacent long-distance sector based on the servo information read from one or more servo sectors SV passed by the magnetic head 22 among two or more servo sectors SV included in the first part. Then, the controller 30 calculates the total value SQsum of the squeeze amounts SQ in each data sector DS included in the target adjacent long-distance sector. Then, the controller 30 multiplies the total value SQsum by the weighting coefficient w2 applied to the target adjacent long-distance sector, and the total value SQsum multiplied by the weighting coefficient w2 and the second squeeze amount threshold Th SQ2 perform a comparison with. The controller 30 performs a protection operation for interrupting the light operation and protecting the data of the adjacent track based on the comparison result between the total value SQsum multiplied by the weighting coefficient w2 and the second squeeze amount threshold Th SQ2 applied to the target adjacent long-distance sector.
[0233] Here, when the adjacent track includes a certain long-distance sector (denoted as the third long-distance sector) and another long-distance sector (denoted as the fourth long-distance sector), and the quality of the third long-distance sector is higher than the quality of the fourth long-distance sector, the controller 30 makes the weighting coefficient w2 applied to the third long-distance sector smaller than the weighting coefficient w2 applied to the fourth long-distance sector.
[0234] Therefore, the controller 30 can appropriately evaluate the damage received by the data of the adjacent track, and the frequency of executing the protection operation is reduced.
[0235] The second squeeze amount threshold Th SQ2 Except that the weighting coefficient w2 is adjusted instead, other matters are the same as those in the first embodiment.
[0236] Although some embodiments of the present invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the gist of the invention. These embodiments and their modifications are included in the scope and gist of the invention, and are included in the invention described in the claims and its equivalent scope.
Explanation of Signs
[0237] 1 Magnetic disk device, 2 Host, 11 Magnetic disk, 12 Spindle motor, 13 Lamp, 15 Actuator arm, 16 Voice coil motor (VCM), 21 Motor driver IC, 22 Magnetic head, 22r Read element, 22w Write element, 23 Hard disk controller (HDC), 23 HDC, 24 Head IC, 25 RWC, 25 Read / write channel (RWC), 26 Processor, 27 RAM, 28 FROM, 29 Buffer memory, 30 Controller, 42 Servo area, 43 Data area, 100 Recording surface, 110 Storage area, 120 Media cache area, 130 Band area, 281, 281a Corresponding information, 282 Measured BER information.
Claims
1. A magnetic disk comprising multiple tracks, wherein multiple servo sectors on which servo information is recorded are arranged at circumferential intervals, and the multiple tracks include a first track and a second track radially adjacent to the first track and written in front of the first track, A magnetic head for writing data to and reading data from the magnetic disk, A first threshold value is calculated individually for each of the multiple first positions in the circumferential direction, based on the quality of one or more second positions corresponding to each of the multiple second positions in the circumferential direction. Start the light operation on the first track, During the aforementioned light operation, when the magnetic head passes through a servo sector, a first operation is performed, the first operation is to calculate a first quantity which is the amount by which the squeeze amount, which is the amount by which the width of the second track is narrowed from the design value by the light operation, exceeds a first threshold, based on the servo information read each time the magnetic head passes through a servo sector, and compare the first quantity with a second threshold, the amount by which the squeeze amount exceeds a first threshold, and the squeeze amount is the amount by which the width of the second track is narrowed from the design value by the light operation, the amount by which the squeeze amount exceeds a first threshold, the amount by which the squeeze amount exceeds a first threshold, the amount by which the squeeze amount exceeds a first threshold which is the amount by which the squeeze amount exceeds a first threshold which is the amount by which the light operation is accumulated over all second positions among the plurality of second positions that are included in the range adjacent to the circumferential portion of the second position where the light operation has been completed, and compare the first quantity with a second threshold. The protection operation to interrupt the write operation and protect the data of the second track is performed based on the comparison result between the first quantity and the second threshold. Controller and A magnetic disk drive equipped with the following features.
2. The plurality of first positions include a third position and a fourth position, The quality of one or more second positions on the second track corresponding to the third position is higher than the quality of one or more second positions on the second track corresponding to the fourth position. The first threshold value for the third position is greater than the first threshold value for the fourth position. The magnetic disk device according to claim 1.
3. The aforementioned controller, If the first quantity is greater than the second threshold, the write operation is interrupted and the protective operation is performed. If the first quantity is less than the second threshold, the write operation continues. The magnetic disk device according to claim 1.
4. The plurality of first positions are a group of circumferential positions of each servo sector arranged on the first track. A magnetic disk device according to any one of claims 1 to 3.
5. The second track comprises multiple data sectors, The plurality of second positions are a group of circumferential positions of each of the plurality of data sectors. A magnetic disk device according to any one of claims 1 to 3.
6. The plurality of first positions are a group of positions of each servo sector located on the first track. One or more second positions corresponding to a fifth position which is any first position among the plurality of first positions are all second positions included in the circumferential section between the servo sector through which the magnetic head passes immediately before the fifth position and the servo sector through which the magnetic head passes immediately after the fifth position. The magnetic disk device according to claim 5.
7. The second track comprises multiple data sectors, The plurality of data sectors include data sectors in which error correction codes for error correction of the second track unit are stored. The second threshold value is a value corresponding to the correction limit of the error correction. A magnetic disk device according to any one of claims 1 to 3.
8. The aforementioned controller, In the aforementioned protective operation, the radial light permit range is narrowed, After the restriction of the permitted range of the lights, the operation of the lights is resumed. A magnetic disk device according to any one of claims 1 to 3.
9. The controller, in the protection operation, refrains from writing data for the section from the circumferential position where the write operation was interrupted to a predetermined circumferential position. A magnetic disk device according to any one of claims 1 to 3.
10. The aforementioned quality is the bit error rate. A magnetic disk device according to any one of claims 1 to 3.
11. A magnetic disk comprising multiple tracks, wherein multiple servo sectors on which servo information is recorded are arranged at circumferential intervals, each track is provided with multiple long-distance sectors, each of the multiple long-distance sectors is a data writing area having a circumferential length spanning two or more of the multiple servo sectors, and the multiple tracks comprising a first track and a second track radially adjacent to the first track and written before the first track, A magnetic head for writing data to and reading data from the magnetic disk, Based on the quality of each of the multiple first long-distance sectors, which are the multiple long-distance sectors provided on the second track, a first threshold value is calculated individually for each of the multiple first long-distance sectors. In a write operation to a first portion on the first track, the first portion is a portion adjacent to the second portion, and the second portion is a portion between the two circumferential ends of a second long-distance sector which is one of the plurality of first long-distance sectors. Based on the servo information read from one or more servo sectors among the two or more servo sectors included in the first part that the magnetic head has passed through, the squeeze amount is calculated, which is the amount by which the width of the second track is narrowed from the design value by the writing operation at each of the multiple first positions in the circumferential direction included in the second long-distance sector, The sum of the squeeze amounts at each of the plurality of first positions and the first threshold value for the second long-distance sector are compared, Execute, The interruption of the write operation and the protection operation to protect the data of the second track are performed based on the result of comparing the total value with the first threshold for the second long-distance sector. Controller and A magnetic disk drive equipped with the following features.
12. The controller predicts the amount of squeeze at each first position in the portion of the second portion adjacent to the portion of the first portion that the magnetic head has not yet passed through. The magnetic disk device according to claim 11.
13. The plurality of first long-distance sectors include a third long-distance sector and a fourth long-distance sector of higher quality than the third long-distance sector, The first threshold for the third long-distance sector is greater than the first threshold for the fourth long-distance sector. The magnetic disk device according to claim 11.
14. The aforementioned controller, If the sum is greater than the first threshold, the write operation is interrupted and the protection operation is performed. If the sum is less than the first threshold, the write operation continues. The magnetic disk device according to claim 11.
15. The second long-distance sector includes a plurality of data sectors, The plurality of first positions are a group of circumferential positions of each of the plurality of data sectors. A magnetic disk device according to any one of claims 11 to 14.
16. The aforementioned controller, In the aforementioned protective operation, the radial light permit range is narrowed, After the restriction of the permitted range of the lights, the operation of the lights is resumed. A magnetic disk device according to any one of claims 11 to 14.
17. The controller, in the protection operation, refrains from writing data for the section from the circumferential position where the write operation was interrupted to a predetermined circumferential position. A magnetic disk device according to any one of claims 11 to 14.
18. The aforementioned quality is the bit error rate. A magnetic disk device according to any one of claims 11 to 14.
19. A magnetic disk comprising multiple tracks, wherein multiple servo sectors on which servo information is recorded are arranged at circumferential intervals, and the multiple tracks include a first track and a second track radially adjacent to the first track and written in front of the first track, A magnetic head for writing data to and reading data from the magnetic disk, The weighting coefficient applied to each of the multiple first positions in the circumferential direction is calculated individually for each first position based on the quality of each of the one or more second positions corresponding to each first position among the multiple second positions in the circumferential direction. Start the light operation on the first track, During the aforementioned light operation, when the magnetic head passes through a servo sector, a first operation is performed, the first operation is to obtain a squeeze amount, which is the amount by which the width of the second track is narrowed from the design value by the light operation, based on the servo information read each time the magnetic head passes through a servo sector, multiply the squeeze amount by the weight coefficient, calculate a first amount, which is the amount accumulated over all second positions in the range adjacent to the circumferential portion of the plurality of second positions where the light operation has been completed, when the squeeze amount multiplied by the weight coefficient exceeds a first threshold, and compare the first amount with the second threshold. The protection operation to interrupt the write operation and protect the data of the second track is performed based on the comparison result between the first quantity and the second threshold. Controller and A magnetic disk drive equipped with the following features.
20. A magnetic disk comprising multiple tracks, wherein multiple servo sectors on which servo information is recorded are arranged at circumferential intervals, each track is provided with multiple long-distance sectors, each of the multiple long-distance sectors is a data writing area having a circumferential length spanning two or more of the multiple servo sectors, and the multiple tracks comprising a first track and a second track radially adjacent to the first track and written before the first track, A magnetic head for writing data to and reading data from the magnetic disk, Based on the quality of each of the multiple first long-distance sectors, which are the multiple long-distance sectors provided on the second track, a weighting coefficient is calculated individually for each of the multiple first long-distance sectors. In a write operation to a first portion on the first track, the first portion is a portion adjacent to the second portion, and the second portion is a portion between the two circumferential ends of a second long-distance sector which is one of the plurality of first long-distance sectors. Based on the servo information read from one or more servo sectors among the two or more servo sectors included in the first part that the magnetic head has passed through, the squeeze amount is calculated, which is the amount by which the width of the second track is narrowed from the design value by the writing operation at each of the multiple first positions in the circumferential direction included in the second long-distance sector, The sum of the squeeze amounts at each of the plurality of first positions is multiplied by the weighting coefficient, and the sum multiplied by the weighting coefficient is compared with the first threshold value for the second long-distance sector, Execute, The interruption of the write operation and the protection operation to protect the data of the second track are performed based on the result of comparing the total value with the first threshold for the second long-distance sector. Controller and A magnetic disk drive equipped with the following features.
Citation Information
Patent Citations
Magnetic disk device and write processing method
JP2020047328A