Magnetic disk device
By comparing the squeezing amount with the threshold calculated by the controller and adjusting the squeezing amount threshold in combination with servo sector information, the problem of data damage between adjacent tracks under SMR mode is solved, and efficient data protection and stability of the disk device are achieved.
Patent Information
- Application Number
- CN202411757371.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-09-19
- Filing Date
- 2024-12-03
- Publication Date
- 2026-03-20
AI Technical Summary
When writing data, data on adjacent tracks is easily damaged in existing disk devices, especially in SMR mode, where the narrowing of track width leads to data interference, and existing technologies have failed to effectively protect the data integrity of adjacent tracks.
The controller calculates the squeezing amount and compares it with a threshold, executes interrupt and protection actions for write operations to prevent damage to adjacent track data, uses servo sector information to calculate the cumulative damage evaluation amount, adjusts the squeezing amount threshold to adapt to the quality of different data sectors, and realizes dynamic drift level and sector sliding operation.
It effectively protects the data integrity of adjacent tracks, reduces the frequency of protection actions during write operations, and improves the reliability and stability of data storage.
Smart Images

Figure CN121708963A_ABST
Abstract
Description
[0001] This application claims priority to Japanese Patent Application No. 2024-161965 (Filing Date: September 19, 2024). This application incorporates the entire contents of the base application by reference thereto. TECHNICAL FIELD
[0002] Embodiments of the present application relate to a magnetic disk device. BACKGROUND
[0003] Generally, a magnetic disk device is configured to be able to correct data written to each track. The magnetic disk device performs a protection operation of interrupting a write operation to a write target track to protect data of an adjacent track in a case where the data of the adjacent track can not be corrected due to the write to the write target track. SUMMARY
[0004] Embodiments of the present application provide a magnetic disk device with high performance.
[0005] A magnetic disk device of the present embodiment includes a magnetic disk, a head, and a controller. The magnetic disk includes a plurality of tracks. A plurality of servo sectors in which servo information is recorded are arranged at intervals in a circumferential direction. The plurality of tracks include a first track and a second track adjacent to the first track in a radial direction and written before the first track. The head writes and reads data to and from the magnetic disk. The controller calculates a first threshold value associated with each of a plurality of first positions in the circumferential direction, respectively, based on a quality of one or more second positions in the circumferential direction corresponding to each of the first positions. The controller starts a write operation to the first track, and performs a first operation when the head passes the servo sectors during the write operation. In the first operation, the controller calculates a first amount based on the servo information read each time the head passes the servo sectors, the first amount being an amount obtained by accumulating, over all of the second positions included in a range of the plurality of second positions adjacent to a portion of the circumferential direction in which the write is completed by the write operation, an amount by which a width of the second track is narrowed from a designed value, i.e., a squeeze amount, exceeding a first threshold value. The controller compares the first amount and the second threshold value. The controller performs an interruption of the write operation and a protection operation of protecting data of the second track based on a result of the comparison of the first amount and the second threshold value. BRIEF DESCRIPTION OF DRAWINGS
[0006] Figure 1 is a schematic view showing an example of a configuration of a magnetic disk device of the first embodiment.
[0007] Figure 2 is a schematic view showing an example of a configuration of a magnetic disk of the first embodiment.
[0008] Figure 3 is a diagram for explaining an SMR method used in the magnetic disk device of the first embodiment.
[0009] Figure 4 is a diagram showing an example of a plurality of band areas provided in the magnetic disk of the first embodiment.
[0010] Figure 5 is a diagram for explaining a function of error correction possessed by the controller of the first embodiment.
[0011] Figure 6 is a diagram for explaining an example of a protection action of the first embodiment.
[0012] Figure 7 is another diagram for explaining an example of a protection action of the first embodiment.
[0013] Figure 8 is a diagram for explaining another example of a protection action of the first embodiment.
[0014] Figure 9 is a diagram showing an example of a bit error rate of each data sector included in a track set as adjacent tracks at the time of a write action of the first embodiment.
[0015] Figure 10 is a diagram showing an example of correspondence information of the first embodiment.
[0016] Figure 11 is a diagram showing an example of information saved in the FROM of the first embodiment.
[0017] Figure 12 is a flowchart showing an example of an action of the magnetic disk device of the first embodiment.
[0018] Figure 13 is a diagram for explaining an example of a long distance sector of the first embodiment.
[0019] Figure 14 is a diagram for explaining an example of an interleave action of the second embodiment.
[0020] Figure 15 is a diagram for explaining an example of a deinterleave action of the second embodiment.
[0021] Figure 16 is a diagram showing an example of a positional relationship between a long distance sector and each servo sector SV of the second embodiment.
[0022] Figure 17FIG. 2 is a diagram showing an example of a bit error rate of each long distance sector included in the track 41 set as the adjacent track at the time of the write operation of the second embodiment.
[0023] Figure 18 FIG. 3 is a diagram showing an example of the correspondence information of the second embodiment.
[0024] Figure 19 FIG. 4 is a flowchart showing an example of the operation of the disk device of the second embodiment.
[0025] Explanation of Reference Numerals
[0026] 1 disk device, 2 host, 11 disk, 12 spindle motor, 13 ramp, 15 actuator arm, 16 voice coil motor (VCM), 21 motor driver IC, 22 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 correspondence information, 282 BER measurement information. DETAILED DESCRIPTION
[0027] Hereinafter, the disk device of the embodiments will be described in detail with reference to the drawings. In addition, the present application is not limited by these embodiments.
[0028] (First Embodiment)
[0029] Figure 1 FIG. 1 is a diagram showing an example of the configuration of the disk device 1 of the first embodiment.
[0030] The disk device 1 is connected to the host 2. The disk device 1 can receive an access command such as a write command, a read command, and the like from the host 2.
[0031] The disk device 1 has a disk 11 on the surface of which a recording surface is formed. The disk device 1 performs writing and reading of data with respect to the disk 11 (more accurately, the recording surface of the disk 11) in accordance with the access command. In addition, the disk device 1 can have a plurality of disks 11, but in the first embodiment, for the sake of explanation and simplification of the drawing, the disk device 1 is assumed to have one disk 11.
[0032] Writing and reading of data are performed via the head 22. Specifically, the disk device 1 has, in addition to the disk 11, a spindle motor 12, a motor driver IC (Integrated Circuit) 21, the head 22, an actuator arm 15, a VCM (Voice Coil Motor) 16, a ramp 13, a head IC 24, an RWC (Read Write Channel) 25, a RAM 27, a FROM (Flash Read Only Memory) 28, a buffer memory 29, a HDC (Hard Disk Controller) 23, and a processor 26.
[0033] The disk 11 is rotated at a predetermined rotational speed by the spindle motor 12 installed to a rotational shaft of the disk 11. The spindle motor 12 is driven by the motor driver IC 21.
[0034] The motor driver IC 21 controls rotation of the spindle motor 12 and rotation of the VCM 16.
[0035] The head 22 performs writing and reading of data to and from the disk 11 by a write element 22w and a read element 22r provided thereto. The head 22 is installed to a front end of the actuator arm 15. The head 22 is moved in a radial direction of the disk 11 by the VCM 16 driven by the motor driver IC 21.
[0036] The head 22 is moved on the ramp 13 at the time of stop of rotation of the disk 11 or the like. The ramp 13 is configured to hold the head 22 at a position apart from the disk 11.
[0037] The head IC 24 amplifies and outputs a signal read by the head 22 from the disk 11 at the time of read operation, to the RWC 25. In addition, the head IC 24 amplifies and supplies a signal corresponding to data to be written, supplied from the RWC 25, to the head 22 at the time of write operation.
[0038] The HDC 23 performs control of transmission and reception of data between the host 2 via an I / F bus, and control of the buffer memory 29, and the like.
[0039] The buffer memory 29 is used as a buffer of data transmitted and received between the host 2. For example, the buffer memory 29 is used to temporarily store data to be written to the disk 11, or data read from the disk 11.
[0040] The buffer memory 29 is constituted by, for example, a volatile memory capable of high-speed operation. The kind of the memory constituting the buffer memory 29 is not limited to a particular kind. The buffer memory 29 can be constituted by, for example, a DRAM (Dynamic Random Access Memory), an SRAM (Static Random Access Memory), or a combination thereof.
[0041] The RWC 25 performs modulation including error correction coding with respect to data of a write object supplied from the HDC 23, and supplies the modulated data to the head IC 24. In addition, the RWC 25 performs demodulation including error correction and the like with respect to a signal read from the disk 11 and supplied from the head IC 24, and outputs data obtained by the demodulation to the HDC 23.
[0042] The processor 26 is, for example, a CPU (Central Processing Unit). The RAM 27, the FROM 28, and the buffer memory 29 are connected to the processor 26.
[0043] The FROM 28 is a nonvolatile memory. In the FROM 28, firmware (program data) and various kinds of operation parameters and the like are saved. Further, the firmware can be saved in the disk 11.
[0044] The RAM 27 is constituted by, for example, a DRAM, an SRAM, or a combination thereof. The RAM 27 is used as a memory for operation by the processor 26. The RAM 27 is used as a region in which firmware is loaded, and a region in which various kinds of management data are held.
[0045] The processor 26 performs overall control of the disk device 1 in accordance with firmware saved in the FROM 28 or the disk 11. For example, the processor 26 loads the firmware from the FROM 28 or the disk 11 to the RAM 27, and performs control of the motor driver IC 21, the head IC 24, the RWC 25, the HDC 23, and the like in accordance with the loaded firmware.
[0046] Further, the configuration including the RWC 25, the processor 26, and the HDC 23 can be regarded as a controller 30. There is a case where the controller 30 is constituted as an SoC (System-On-a-Chip). The controller 30 can not necessarily be constituted as an SoC. The controller 30 can include other elements (for example, the RAM 27, the FROM 28, the buffer memory 29, or the RWC 25) in addition to these.
[0047] Figure 2is a schematic view showing an example of the configuration of the magnetic disk 11 of the first embodiment. In this drawing, an example of the direction of rotation of the magnetic disk 11 is shown. The magnetic head 22 relatively moves with respect to the magnetic disk 11 by the rotation of the magnetic disk 11. Therefore, the direction of writing or reading data by the magnetic head 22 along the circumferential direction, that is, the writing / reading direction, is the direction opposite to the direction of rotation of the magnetic disk 11.
[0048] In the manufacturing process, the servo information is written to the magnetic disk 11, for example, by a servo writer, or by self-servo writing (SSW). According to Figure 2 As an example of the configuration of the servo area in which the servo information is written, the servo areas 42 configured in a radial pattern are shown. Between the servo areas 42, the data areas 43 in which data can be written are provided.
[0049] In the radial direction of the magnetic disk 11, a plurality of tracks 41 of concentric circles are set.
[0050] The servo information includes a servo mark, a Gray code, a burst pattern, and a post code. The controller 30 generates a positional error signal (PES) based on the servo information read by the magnetic head 22 from the servo areas 42 when writing data to a data sector or reading data from a data sector. The PES indicates the amount of deviation in the radial direction from the center of the target track. The controller 30 performs positioning of the magnetic head 22, that is, seek control and tracking control, based on the PES obtained each time the magnetic head 22 passes through the servo areas 42. For example, before the start of the writing operation, the controller 30 performs seek control to move the magnetic head 22 to the track 41 of the writing target. Also, during the period from just before the start of the writing operation to the end of the writing operation, tracking control is performed to maintain the magnetic head 22 on the track 41 of the writing target.
[0051] Hereinafter, the portion in the track 41 divided by the servo area 42 will be referred to as a servo sector SV. Since the plurality of servo areas 42 are configured in a radial pattern, it can be considered that the plurality of servo sectors SV are configured at intervals in the circumferential direction on each track 41.
[0052] In the plurality of data areas 43, a plurality of data sectors for data writing are configured along the tracks 41. Hereinafter, the data written to each data sector in units of data sectors will be referred to as a data piece.
[0053] As a method of writing data to a disk, there are known a method called SMR (Shingled Magnetic Recording) and a method called CMR (Conventional Magnetic Recording). In the first embodiment, the controller 30 is configured to write data requested to be written from the host 2 to the disk 11 in the SMR method.
[0054] Figure 3 is a schematic diagram for explaining the SMR method used in the disk device 1 of the first embodiment. In the SMR method, in a case where writing of data of a certain track 41 (denoted as first data) is performed, and then writing of data of a track 41 adjacent to the track 41 in the radial direction (denoted as second data) is performed, each track 41 is configured in such a manner that the second data overlaps a part of the first data. That is, according to the SMR method, data of one of two tracks 41 adjacent to each other in the radial direction of the disk 11 is written in such a manner that the data overlaps a part of data of the other of the two tracks 41.
[0055] For example, data of the track #2 is written in such a manner that the data overlaps a part of data of the track #1 that has already been written. In addition, data of the track #3 is written in such a manner that the data overlaps a part of data of the track #2 that has already been written. That is, according to the SMR method, the data of one track 41 overlaps a part of data of an adjacent track that has already been written repeatedly. Thereby, each track width TW is made narrower than the width (WHw) of the writing element 22w, and the recording density is increased.
[0056] According to the SMR method, since the track width TW is narrower than the width WHw of the writing element 22w, when a part of data of a plurality of tracks 41 is updated, data of a track adjacent to the updated data is destroyed. In order to prevent the destruction of data, data of a plurality of tracks including the part is updated altogether. An area of a plurality of tracks that is updated altogether is called a band area.
[0057] In addition, according to the SMR method, it is prescribed that, for a plurality of tracks 41 within one band area, writing can be performed only from a predetermined one of an end portion of the outer side and an end portion of the inner side of the disk toward the other predetermined one. In the example shown in FIG. 4, writing in units of tracks 41 is performed from the end portion of the outer side toward the end portion of the inner side. The controller 30 can also be configured to perform writing in units of tracks 41 from the end portion of the inner side toward the end portion of the outer side. In addition, the order of writing can be set separately for each band area. Figure 3 In the example shown in FIG. 4, writing in units of tracks 41 is performed from the end portion of the outer side toward the end portion of the inner side. The controller 30 can also be configured to perform writing in units of tracks 41 from the end portion of the inner side toward the end portion of the outer side. In addition, the order of writing can be set separately for each band area.
[0058] In the following description, each track 41 included in a zone is given a track number corresponding to the order of arrangement in the radial direction, and writing in units of tracks 41 is performed in the order of the track numbers in the SMR method.
[0059] In addition, in the case where a track 41 written later among two tracks 41 adjacent to each other in the radial direction is taken as a reference, the track 41 written earlier among the two tracks 41 is simply referred to as an adjacent track in the present specification. That is, in the case where track #a is taken as a reference, track #(a-1) corresponds to the adjacent track of track #a.
[0060] Figure 4 is a view showing an example of a plurality of zones provided to the disk 11 of the first embodiment.
[0061] The recording surface 100 of the disk 11, that is, the region in which the tracks 41 can be arranged, is divided into a plurality of storage areas 110 in the radial direction. The plurality of storage areas 110 include one media cache area 120 and a plurality of zones 130. Between the storage areas 110, a region called a guard area, which cannot be designated as a write destination from the host 2, is provided. Further, in the present embodiment, the guard area is not illustrated in the view. Figure 4 The view in FIG. 10 omits the illustration of the guard area.
[0062] The storage area 110 provided at the outermost circumferential side in the radial direction within 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 holding place for data. Further, the position of the media cache area 120 is not limited to the outermost circumferential side. In addition, two or more media cache areas 120 can be provided in the recording surface. In the media cache area 120, data can be written in the CMR method.
[0063] Further, the CMR method is a method in which data of two tracks 41 adjacent to each other in the radial direction of the disk 11 does not overlap each other. According to the CMR method, the width of each track 41 is the same as the width (WHw) of the writing element 22w, and thus data at an arbitrary position can be updated.
[0064] A plurality of tracks 41 are provided in each zone 130. In each zone 130, writing of data in the SMR method is performed. The maximum amount of user data written to each zone 130, that is, the storage capacity, is common among all the zones 130.
[0065] Further, a part of the plurality of zones 130 can also be configured to be written with data in the CMR method.
[0066] When a write operation is being performed on one track 41, the head 22 sometimes vibrates due to external factors or the like. When the head 22 deviates from the center of the track 41 toward the adjacent track side during the write operation on the write target track 41, the width of the adjacent track narrows depending on the amount of deviation of the head 22 toward the adjacent track side. Alternatively, when the track of the adjacent track deviates from the write target track 41 side during the write operation on the write target track 41, the width of the adjacent track narrows even if the head 22 does not deviate toward the adjacent track side. The amount by which the width of the adjacent track narrows from the designed width of the adjacent track due to the write operation is referred to as a squeeze amount SQ. Further, the write operation that narrows the width of the adjacent track from the designed track width is referred to as a squeeze write.
[0067] When the squeeze amount SQ is larger than a predetermined amount, the data written to the adjacent track is likely to be damaged due to the magnetic field of the head 22 interfering with the data. Further, according to the SMR method, the track width TW is narrower than that of the CMR method or the like, and thus the data of the adjacent track is greatly affected by the vibration of the head 22.
[0068] The controller 30 has a function of error correction so that even if the data of the adjacent track is damaged due to the squeeze write, the original data can be restored at the time of reading. Specifically, the controller 30 has a function of sector error correction and a function of track error correction.
[0069] Figure 5 is a diagram for explaining the function of error correction that the controller 30 according to the first embodiment has. In this diagram, an example of the configuration of one track 41 is shown. The function of error correction is explained based on the configuration of the track 41.
[0070] In the track 41, a plurality of servo sectors SV are arranged at intervals in the circumferential direction. Each servo sector SV is given a servo sector ID. The servo sector SV given the servo sector ID of "X" is referred to as servo sector SV#X. According to the example shown in the diagram, the servo sector SV#X is the servo sector SV given the servo sector ID of "X" that is the first servo sector SV in the circumferential direction from the start position of the write operation on the track 41. Figure 5 According to the example shown in the diagram, eight servo sectors SV are arranged in one track 41. Further, the eight servo sectors SV are given numerical information corresponding to the order of positions from the reference position that is the circumferential position at which the write operation on the track 41 starts, as the servo sector IDs.
[0071] One track 41 is arranged with a plurality of data sectors DS. Each data sector DS within the track 41 is given a data sector ID. The data sector DS given the data sector ID of "Y" is referred to as data sector DS#Y. According to the example shown in the diagram, the data sector DS#Y is the data sector DS given the data sector ID of "Y" that is the first data sector DS in the circumferential direction from the start position of the write operation on the track 41. Figure 5In the example shown, 17 data sectors DS are arranged in one track 41. Also, the 17 data sectors DS are given numerical information corresponding to the order of positions along the track 41 from the reference position as data sector IDs.
[0072] Hereinafter, a piece of data scheduled to be written to the data sector DS#Y and a piece of data already written to the data sector DS#Y are referred to as a piece of data #Y.
[0073] The beginning and the end are defined in the circumferential direction of the track 41 based on the reference position and the write / read direction.
[0074] For example, the position at which the head 22 first passes through in the interval from the passage of the head 22 through the reference position to the next passage of the head 22 through the reference position is referred to as the beginning of the track. The position at which the head 22 last passes through in the interval from the passage of the head 22 through the reference position to the next passage of the head 22 through the reference position is referred to as the end of the track. The data sector DS located at the beginning of the track, i.e., the data sector DS#0, is referred to as the data sector DS at the beginning. The data sector DS located at the end of the track, i.e., the data sector DS#16, is referred to as the data sector DS at the end.
[0075] The pieces of data written to the respective data sectors DS are error correction encoded by the RWC 25. That is, the pieces of data stored in the respective data sectors DS include error correction codes. The RWC 25 can perform error correction in units of data sectors DS using the error correction codes on the pieces of data read from one data sector DS. This error correction in units of data sectors DS is referred to as sector error correction. A failure in the sector error correction is referred to as a sector read error. Furthermore, a failure in error correction means that the data read cannot be restored to data equivalent to the original data by error correction.
[0076] The method of error correction encoding used for the sector error correction is not limited to a particular method. In one example, as the method of error correction encoding used for the sector error correction, a Low-Density Parity-Check Code is used.
[0077] The data sector DS#16, which is the data sector DS at the end, is provided as a data sector DS dedicated to parity. Writing to the track 41 is performed as follows. First, pieces of data are written in order of data sector number with respect to the data sector DS#0 to the data sector DS#15. With respect to the data sector DS#16, parity calculated based on the group of pieces of data written to the data sector DS#0 to the data sector DS#15 is written.
[0078] The parity bit written to the data sector DS#16 protects the group of data pieces written to the data sector DS#0 to the data sector DS#15 from errors. Even if sector read errors occur with respect to several data pieces in the data sector DS#0 to the data sector DS#15, the data pieces in which sector read errors have occurred can be recovered by using error correction using the parity bit written to the data sector DS#16. That is, the parity bit written to the data sector DS#16 protects data in units of tracks. The parity bit written to the data sector DS#16 is referred to as a track parity bit. Error correction using the track parity bit is referred to as track error correction.
[0079] The method of calculating the track parity bit is not limited to a particular method. In one example, the track parity bit is generated by performing XOR by bit position with respect to the group of data pieces written to the data sector DS#0 to the data sector DS#15.
[0080] The track error correction has a correction limit. Thus, sometimes the track error correction fails. The failure of the track error correction is referred to as a track read error. When a track read error occurs, it can finally be impossible to recover data. Thus, the controller 30 performs various controls in a write operation in order to prevent a track read error. When a state in which it is presumed that a track read error has occurred is reached, the controller 30 immediately ends the write operation with respect to the write target track 41 and performs an operation for protecting data of an adjacent track from being unrecoverable. The operation for protecting data of an adjacent track from being unrecoverable is referred to as a protection operation.
[0081] As the protection operation, various operations can be performed. Hereinafter, two examples of the protection operation are described.
[0082] Figure 6 and Figure 7 are diagrams for explaining one example of the protection operation of the first embodiment. In these diagrams, here, track #(k-1) and track #k are cited, and the protection operation in the write operation with respect to track #k is described.
[0083] In Figure 6 , the transition of the position error signal PES#(k-1) in the write operation with respect to track #(k-1) is illustrated. The position error signal PES#(k-1) indicates the actual track of the head 22 at the time of the write operation with respect to track #(k-1). That is, the position error signal PES#(k-1) indicates the write position of data of track #(k-1) which is an adjacent track.
[0084] The controller 30 sets a dynamic drift off level DDOL#k based on the write position of the data of the track #(k-1), that is, the locus indicated by the position error signal PES#(k-1), in the initial state. Specifically, the controller 30 sets the dynamic drift off level DDOL#k at a position shifted from the locus indicated by the position error signal PES#(k-1) to the track #k side by a predetermined fixed length LI.
[0085] The dynamic drift off level is a boundary line of the write allowable range decided based on the position of the data of the adjacent track.
[0086] In addition, the controller 30 sets a sector read error boundary based on the locus indicated by the position error signal PES#(k-1). Specifically, the controller 30 sets the sector read error boundary at a position shifted from the locus indicated by the position error signal PES#(k-1) to the track #k side by L2 (where L2 > LI).
[0087] The sector read error boundary is a boundary beyond which it is considered that the head 22 does not exceed in the write operation to generate a sector read error in the adjacent track. That is, the sector read error boundary is a boundary line in the radial direction corresponding to the correction limit of the sector read error.
[0088] Whether or not a track read error is generated in the adjacent track can be inferred by comparing the cumulative damage evaluation amount CDE and the track read error threshold Th CDE The cumulative damage evaluation amount CDE is an amount obtained by accumulating the damage evaluation amount DE in the circumferential direction in which the write operation is performed. The damage evaluation amount DE is an amount obtained by numerically evaluating the damage of the data piece of the data sector DS of the adjacent track exceeding the level at which the sector read error is generated due to the squeeze write. In the case where the cumulative damage evaluation amount CDE is smaller than the track read error threshold Th CDE In the case where the cumulative damage evaluation amount CDE is larger than the track read error threshold Th CDE In the case where the cumulative damage evaluation amount CDE is larger than the track read error threshold Th
[0089] The damage evaluation amount DE is obtained as the sector read error boundary. In the case where the head 22 exceeds the sector read error boundary to the side of the adjacent track, the distance in the radial direction between the head 22 and the sector read error boundary is obtained as the damage evaluation amount DE. In the case where the head 22 does not exceed the sector read error boundary to the side of the adjacent track, the damage evaluation amount DE is set to 0.
[0090] Furthermore, the sector read error boundary can be defined by the length L2 or by a threshold value for the extrusion quantity SQ. Here, the sector read error boundary is set to be defined by a threshold value for the extrusion quantity SQ. This threshold value is denoted as the first extrusion quantity threshold Th. SQ1 Furthermore, the first compression threshold Th SQ1 There is a relationship between the length L2 and the length L2, expressed by equation (1). TP is the design value of the track spacing and also the design value of the track width.
[0091] Th SQ1 =TP-L2…(1)
[0092] Controller 30 obtains that the extrusion quantity SQ exceeds the first extrusion quantity threshold Th SQ1 The amount is used as the damage assessment quantity DE. The controller 30 does not exceed the extrusion quantity threshold Th at the first extrusion quantity SQ. SQ1 In the case where the extrusion quantity SQ exceeds the first extrusion quantity threshold Th, the damage assessment quantity DE is 0. SQ1 In the case of obtaining the first extrusion threshold Th minus the extrusion amount SQ, SQ1 The obtained value is used as the damage assessment quantity DE.
[0093] If, during a write operation, the read / write head 22 moves beyond the dynamic drift level DDOL to one of the adjacent tracks, or if it is presumed that a track read error may occur in an adjacent track, an interruption and protection action is executed for the write operation.
[0094] exist Figure 6 In the example shown, during the write operation for track #k, at the circumferential position CP1, the read / write head 22 exceeds the dynamic drift level DDOL towards the adjacent track. Therefore, the controller 30 interrupts the write operation at the circumferential position CP1 and executes a protection action.
[0095] exist Figure 6 as well as Figure 7 In the example shown, controller 30 tightens the write allowable range (specifically, the dynamic drift level DDOL#k) as a protective action. Controller 30 moves the dynamic drift level DDOL#k from the circumferential position CP1 to the end of the track towards track #k.
[0096] Figure 7The operation when the dynamic drift level DDOL#k is tightened is shown. The controller 30 sets the dynamic drift level DDOL#k after the circumferential position CP1 at a position that is offset from the track shown by the position error signal PES#(k-1) by a fixed length L3 to the track #k side. Here, L3 is longer than L2. Thus, in the portion after the circumferential position CP1, a sector read error does not occur in the data sectors DS of the adjacent track, and it is possible to prevent the situation where the data of the adjacent track cannot be recovered in the end.
[0097] Further, in the example shown in the figure, the controller 30 performs the interruption of the write operation and the tightening of the dynamic drift level DDOL#k when the head 22 passes the circumferential position CP1. Also, when the disk 11 rotates one revolution and the head 22 approaches the circumferential position CP1 again, the controller 30 determines whether the position of the head 22 exceeds the tightened dynamic drift level DDOL#k. Since the position of the head 22 does not exceed the tightened dynamic drift level DDOL#k, the controller 30 starts the write operation again from the circumferential position CP1. Figure 7
[0098] Figure 8 is a figure for explaining another example of the protection operation of the first embodiment. In this figure, as an example of the amount of data written to the track #k, data pieces #0 to #9 and a track parity bit are shown. The amount of data is referred to as track #k data. In the example shown in this figure, a sector slip operation is performed as the protection operation.
[0099] The start condition of the protection operation is satisfied at the timing until the writing of the data pieces #0 to #6 in the track #k data is completed. At this time, the controller 30 ends the write operation for the track #k and performs the sector slip operation as the protection operation.
[0100] In the sector slip operation, the controller 30 writes the data pieces #7 to #9, which are data pieces that have not been written to the track #k, in the track #k data, to the track #(k+1). For example, the controller 30 writes the data pieces #7 to #9 to the data sectors #0 to #2 of the track #(k+1). Also, the track parity bit in the track #k data is written to a system area, not shown. The system area is provided at a position different from the band area 130 where user data is written. The system area can be provided in the disk 11 or in the nonvolatile memory such as the FROM 28.
[0101] By performing the sector slip operation, it is possible to suppress the writing of the portion from the circumferential position where the write operation is ended to the end of the track in the track #k. Thus, it is possible to prevent a track read error from occurring in the adjacent track.
[0102] Further, in the sector slip operation performed in the track #k, the controller 30 can write the track parity bit to the parity sector of the track #k instead of writing it to the system area. That is, the controller 30 suppresses the writing of data for the range from the circumferential position at which the writing operation is interrupted to a predetermined circumferential position in the sector slip operation. The predetermined circumferential position is the circumferential position immediately before the parity sector or the end of the track.
[0103] Here, a technique compared with the first embodiment is described. The technique compared with the first embodiment is referred to as a comparative example.
[0104] Although a plurality of data sectors DS are provided in the disk 11, the quality of the data sectors DS generally has a variation. The reason for the variation in the quality of the data sectors DS is various reasons such as unevenness of the recording surface 100, unevenness of the quality of the servo sectors SV, and the like. According to the comparative example, the first squeeze amount threshold Th SQ1 The first squeeze amount threshold Th SQ1 is set to be common within one track.
[0105] According to the comparative example, it is possible to prevent the generation of the track read error in the adjacent track. However, the first squeeze amount threshold Th SQ1 is set to a value common to all the data sectors DS within the track, which is determined based on the data sector DS of the lowest quality. Thus, it can be considered that, if the variation in the quality of the data sectors DS within the track 41 is taken into account, the cumulative damage evaluation amount CDE obtained by the comparative example excessively evaluates the damage to the data of the adjacent track. That is, there is room for reducing the execution frequency of the protection operation.
[0106] In the first embodiment, the controller 30 changes the first squeeze amount threshold Th SQ1 within the track 41 according to the quality of each data sector DS of the adjacent track. Thereby, the controller 30 can obtain a value that appropriately represents the damage to the data of the adjacent track as the cumulative damage evaluation amount CDE compared with the comparative example. By using the cumulative damage evaluation amount CDE thus obtained, it is possible to reduce the frequency of estimating the generation of the track read error in the adjacent track and to reduce the execution frequency of the protection operation.
[0107] As an index indicating the quality of the data sector DS of the adjacent track, the bit error rate at the time of reading the data piece stored in the data sector DS can be used. The bit error rate is the ratio of the number of bits that have changed due to an error with respect to the number of all bits included in the read data piece. The smaller the bit error rate, the higher the quality. Hereinafter, the bit error rate at the time of reading the data piece stored in the data sector DS will be simply referred to as the bit error rate of the data sector DS.
[0108] Using Figure 9 and Figure 10 an example of an operation of setting the first squeeze amount threshold Th SQ1 based on the bit error rate of the data sector DS will be described.
[0109] Figure 9 is a graph showing an example of the bit error rate of each data sector DS included in the track 41 set as the adjacent track at the time of the write operation of the first embodiment. In this graph, the horizontal axis indicates the position of each data sector DS within the track 41 as the adjacent track. The vertical axis indicates the bit error rate.
[0110] As can be seen from Figure 9 , the bit error rate of the data sector DS within the track 41 has a deviation (unevenness). For example, the bit error rate of the first data sector is the largest within the track 41. That is, the first data sector has the lowest quality within the track 41. Also, for example, the bit error rate of the second data sector is the smallest within the track 41. That is, the second data sector has the highest quality within the track 41.
[0111] The controller 30 sets the first squeeze amount threshold Th SQ1 based on the bit error rate of each data sector DS within the adjacent track and the following Equations (2) and (3). SQbase is the largest value in the numerical range in which it is possible to guarantee that an error-free data unit group can be obtained from the data sector DS having the largest bit error rate in the adjacent track by sector error correction. Mar base is set in the manufacturing process.
[0112] Th SQbase = TP - Mar base … (2)
[0113] Th SQ1 = Th SQbase + Mar1… (3)
[0114] In Equation (3), Mar1 is a relaxation amount determined in accordance with the bit error rate of the data sector DS. The controller 30 calculates the threshold relaxation amount Mar1 for each data sector DS of the adjacent track based on the correspondence information 281 set in advance.
[0115] Figure 10 is a graph showing an example of the correspondence information 281 of the first embodiment. In this graph, the horizontal axis represents the bit error rate of the data sectors DS of the adjacent tracks, and the vertical axis represents the threshold mitigation amount Marl.
[0116] As shown in Figure 10 , according to the correspondence information 281, the relationship between the bit error rate and the threshold mitigation amount Marl is defined in such a manner that the smaller the bit error rate, the larger the threshold mitigation amount Marl. Thus, for example, the threshold mitigation amount Marl at the circumferential position of the second data sector DS is larger than the threshold mitigation amount Marl at the circumferential position of the first data sector DS. According to this correspondence information 281, the higher the quality of the data sectors DS of the adjacent tracks, the larger the first squeeze amount threshold Th SQ1 . Thus, even if the squeeze amount SQ is the same value, it is possible to estimate the damage evaluation amount DE indicating the damage to the data of the data sector DS of the adjacent track of high quality to be smaller than the damage evaluation amount DE indicating the damage to the data of the data sector DS of the adjacent track of low quality.
[0117] Further, in the case where the third data sector DS and the fourth data sector DS having a bit error rate larger than that of the third data sector DS are included, as long as the threshold mitigation amount Marl associated with the fourth data sector DS is smaller than the threshold mitigation amount Marl associated with the third data sector DS, the relationship between the threshold mitigation amount Marl and the bit error rate defined by the correspondence information 281 is not limited to the example shown in Figure 10 . In the example shown in Figure 10 , the threshold mitigation amount Marl is represented by a first order function of the bit error rate. The relationship between the threshold mitigation amount Marl and the bit error rate is not limited to the relationship represented by the first order function. For example, the threshold mitigation amount Marl can also vary in steps according to the bit error rate. The threshold mitigation amount Marl can also be expressed by a polynomial of the second order or higher of the bit error rate. An upper limit or a lower limit value can be set to the threshold mitigation amount Marl.
[0118] The above-described correspondence information 281 is pre-stored in a predetermined nonvolatile storage area within the disk device 1. In addition, the bit error rate of each data sector DS provided to the disk 11 is measured in a manufacturing process and pre-stored in a predetermined nonvolatile storage area within the disk device 1. For example, the manufacturing process includes an inspection process of checking the presence or absence of defects generated in the disk 11 by writing data to all of the tracks 41 and then reading data from all of the tracks 41. When data is read from all of the tracks 41 in this inspection process, the bit error rate is measured for each data sector DS, and the measured value of the bit error rate of each data sector DS is recorded in the measured BER information 282 described later.
[0119] Figure 11This diagram illustrates an example of information stored in the FROM 28 of the first embodiment. In the example shown, correspondence information 281 and BER measurement information 282 are stored in the FROM 28. The BER measurement information 282 records the measured values of the bit error rate of each data sector DS set on the disk 11. Furthermore, the non-volatile storage area storing the correspondence information 281 is not limited to the FROM 28. The non-volatile storage area storing the BER measurement information 282 is not limited to the FROM 28.
[0120] Furthermore, the controller 30 is able to obtain the PES whenever the read / write head 22 passes through the servo sector SV. However, as from Figure 5 As can be seen from the description, it is not limited to the existence of only one data sector between servo sectors SV. Therefore, the controller 30 calculates the compression amount SQ and the damage assessment amount DE at the circumferential position of each data sector DS of adjacent tracks based on the PES in each servo sector. Specific examples of the calculation method for the compression amount SQ and the damage assessment amount DE at the circumferential position of each data sector DS of adjacent tracks will be described later.
[0121] Alternatively, controller 30 can simply calculate the extrusion amount SQ and damage assessment amount DE according to the circumferential position of each servo sector SV. Controller 30 can also obtain the cumulative damage assessment amount CDE by accumulating the damage assessment amounts DE calculated according to the circumferential position of each servo sector SV.
[0122] Similarly, when the controller 30 performs a write operation on the track 41 to be written, it can change the first squeeze threshold Th according to each data sector DS of the adjacent track. SQ1 Alternatively, the first extrusion threshold Th can be changed based on each servo sector SV. SQ1 The first squeeze threshold Th is changed according to each servo sector SV. SQ1 In this case, the controller 30 will calculate the first compression threshold Th based on each data sector DS of the adjacent track. SQ1 Transformed into the first squeeze threshold Th for each servo sector SV. SQ1 The first extrusion threshold Th SQ1 Specific examples of the transformation methods will be described later.
[0123] Figure 12 This is a flowchart illustrating an example of the operation of the disk device 1 according to the first embodiment. In this figure, a series of processes for a write operation on track #k are shown.
[0124] In addition, Figure 12In the illustrated example, the controller 30 is configured to calculate the crush amount SQ and the damage evaluation amount DE for each data sector SS of the adjacent track. In addition, the controller 30 is configured to change the first crush amount threshold Th SQ1 .
[0125] First, the controller 30 acquires the position error signal PES#(k-1) of the adjacent track, i.e., the track #(k-1) (S101).
[0126] The method of acquiring the position error signal PES#(k-1) is not limited to a particular method. For example, the controller 30 saves the position error signal PES#(k-1) of one revolution of the track #(k-1) in a predetermined storage area when a write operation is performed with respect to the track #(k-1). Then, the controller 30 acquires the position error signal PES#(k-1) of one revolution of the track #(k-1) saved in the predetermined storage area in S101.
[0127] The controller 30 acquires the bit error rate of each data sector DS of the track #(k-1) by referring to the BER information 282 (S102).
[0128] The controller 30 calculates the first crush amount threshold Th SQ1 (S103) for each servo sector SV based on the position error signal PES#(k-1), the bit error rate of each data sector DS of the track #(k-1), and the correspondence information 281. In S103, the controller 30 calculates the first crush amount threshold Th SQ1 for each data sector DS of the adjacent track by using the equations (2) and (3). Then, the controller 30 converts the first crush amount threshold Th SQ1 calculated for each data sector DS of the adjacent track into the first crush amount threshold Th SQ1 for each servo sector SV.
[0129] For example, the controller 30 selects a certain servo sector SV as the target servo sector SV. The controller 30 sets the minimum value of the first crush amount threshold Th SQ1 in all the data sectors DS of the adjacent track in the interval between the servo sector SV through which the head 22 passes immediately before the target servo sector SV and the servo sector SV through which the head 22 passes immediately after the target servo sector SV as the first crush amount threshold Th SQ1 associated with the target servo sector SV. The controller 30 calculates the first crush amount threshold Th SQ1 at the circumferential position of each servo sector SV by sequentially selecting each servo sector SV as the target servo sector SV. In addition, the first crush amount threshold Th SQ1The conversion method is not limited to this method.
[0130] Further, the minimum value, average value, or median value of the first crush amount threshold Th SQ1 The conversion method is not limited to this method. The controller 30 can set the minimum value, average value, or median value of the first crush amount threshold Th SQ1 of all the data sectors DS of the adjacent tracks included in the interval of the predetermined length of the servo sector SV including the object as the first crush amount threshold Th SQ1 .
[0131] Further, in a case where the circumferential position of each servo sector SV is denoted as a first position and the circumferential position of each data sector DS of the adjacent tracks is denoted as a second position, the process of S103 can be considered as a process of calculating for each first position based on the quality of one or more second positions corresponding to each first position among a plurality of second positions in the circumferential direction.
[0132] Next to the process of S103, the controller 30 initializes a variable n and a variable CDE to 0 (S104). The variable n is a variable that holds the ID of the servo sector SV. The variable CDE is a variable that holds the calculated value of the cumulative damage evaluation amount CDE.
[0133] The controller 30 performs a write operation for the interval from the servo sector SV#n to the next servo sector SV of the servo sector SV#n (S105). At this time, the controller 30 performs reading of the servo information of the next servo sector SV of the servo sector SV#n and acquisition of the PES based on the read servo information.
[0134] The controller 30 determines whether the servo sector SV#n is the last servo sector SV (S106). For example, according to the configuration of the track 41 illustrated in FIG. 6, the servo sector SV#7 is the last servo sector SV. Figure 5
[0135] In a case where the servo sector SV#n is the last servo sector SV (S106: YES), the write operation for the track #k is completed.
[0136] In a case where the servo sector SV#n is not the last servo sector SV (S106: NO), the controller 30 determines whether the crush amount SQ in the servo sector SV#(n+1) is larger than the first crush amount threshold Th SQ1 associated with the servo sector SV#(n+1) (S107).
[0137] In S107, the controller 30 obtains the squeeze SQ in the servo sector SV#(n+1) by calculating a difference between the position error signal PES#(k-1) in the servo sector SV#n and the position error signal PES#k in the servo sector SV#(n+1).
[0138] In a case where the squeeze SQ in the servo sector SV#(n+1) is not greater than the first squeeze threshold Th SQ1 In a case where the squeeze SQ in the servo sector SV#(n+1) is not greater than the first squeeze threshold Th SQ1 In a case where the squeeze SQ in the servo sector SV#(n+1) is not greater than the first squeeze threshold Th
[0139] In a case where the squeeze SQ in the servo sector SV#(n+1) is not greater than the first squeeze threshold Th SQ1 In a case where the squeeze SQ in the servo sector SV#(n+1) is not greater than the first squeeze threshold Th
[0140] As described above, the position error signal PES is obtained each time the head 22 passes through the servo sector SV. Thus, the squeeze SQ in each servo sector SV can be directly calculated based on the position error signal PES. The controller 30 estimates the squeeze SQ of each data sector DS of the adjacent track based on the squeeze SQ in each servo sector SV.
[0141] In one example, the controller 30 calculates the squeeze SQ of each data sector DS of the adjacent track by interpolation of the squeeze SQ in each servo sector SV. The positional relationship between each servo sector SV and each data sector DS of the adjacent track is known. The controller 30 calculates the squeeze SQ of each data sector DS of the adjacent track by linear interpolation of the squeeze SQ in each servo sector SV using the positional relationship. That is, in S108, the controller 30 obtains the squeeze SQ of each data sector DS included in the first interval by linear interpolation of the squeeze SQ in the servo sector SV#n and the squeeze SQ in the servo sector SV#(n+1). The method of interpolation is not limited to linear interpolation. The controller 30 can interpolate by approximation based on a polynomial of two or more degrees.
[0142] In another example, the controller 30 regards the crush amount SQ of all the data sectors DS between 2 servo sectors SV adjacent in the circumferential direction as equal to the value of the larger one of the crush amounts SQ in the 2 servo sectors SV. That is, in S108, the controller 30 regards the value of the larger one of the crush amount SQ in the servo sector SV#n and the crush amount SQ in the servo sector SV#(n+1) as the crush amount SQ of all the data sectors DS included in the 1st interval of the track #(k-1).
[0143] Further, the method of calculating the crush amount SQ of each data sector DS of the adjacent track is not limited to the above-described method.
[0144] Next to S108, the controller 30 calculates the damage evaluation amount DE for each data sector DS included in the 1st interval of the track #(k-1) (S109).
[0145] In S109, the controller 30 performs the following processing for each data sector DS included in the 1st interval of the track #(k-1). That is, the controller 30 first subtracts the 1st crush amount threshold Th SQ1 from the crush amount SQ associated with the servo sector SV#(n+1) and sets the value (SQ-Th SQ1 ) as the damage evaluation amount DE. SQ1 SQ1 In the case where the value (SQ-Th CDE ) is 0 or less, the controller 30 sets the damage evaluation amount DE to 0. In the case where the value (SQ-Th CDE ) is larger than 0, the controller 30 sets the value (SQ-Th CDE ) as the damage evaluation amount DE.
[0146] The controller 30 calculates the sum (denoted as dCDE) of the damage evaluation amounts DE of the data sectors DS included in the 1st interval of the track #(k-1) (S110). Also, 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 summation (S111).
[0147] The variable CDE represents the cumulative damage evaluation amount CDE. The controller 30 determines whether the value of the variable CDE, i.e., the cumulative damage evaluation amount CDE, is larger than the track read error threshold Th CDE (S112).
[0148] In the case where the value of the variable CDE is not larger than the track read error threshold Th CDE (S112: No), the controller 30 adds 1 to the value of the variable n (S113) and moves the control to S105.
[0149] In the case where the value of the variable CDE is larger than the track read error threshold Th CDEIn the case of YES (S112), the controller 30 interrupts the write operation for the track #k (S114). Also, the controller 30 performs the protection operation (S115), and ends the series of operations.
[0150] As the protection operation, the controller 30 can tighten the dynamic drift level DDOL#k, or can perform the sector slip operation. In the case where the tightening of the dynamic drift level DDOL#k is performed as the protection operation, when the head 22 approaches the interruption position by one rotation of the disk 11 after the write operation is interrupted, the controller 30 starts the write operation again.
[0151] Further, in the series of operations shown in FIG. 10, in the determination process of S112, the cumulative damage evaluation amount CDE is compared with the track read error threshold value Th Figure 12 In the case where the cumulative damage evaluation amount CDE is equal to the track read error threshold value Th CDE , the process of S113 is performed. In the determination process of S112, the cumulative damage evaluation amount CDE is compared with the track read error threshold value Th CDE , the process of S114 can be performed.
[0152] Figure 12 The processes of S107 to S111 in the series of operations shown in FIG. 10 are an example of the first operation. Also, the first squeeze amount threshold value Th SQ1 is an example of the first threshold value. The track read error threshold value Th CDE is an example of the second threshold value. The cumulative damage evaluation amount CDE is an example of the first amount.
[0153] Thus, according to the first embodiment, the controller 30 calculates the first squeeze amount threshold value Th SQ1 based on the quality of one or more data sectors DS of the adjacent track as the one or more second positions corresponding to each first position as the first position. The controller 30 calculates the cumulative damage evaluation amount CDE as the first amount obtained by accumulating the damage evaluation amount DE as the amount in which the squeeze amount exceeds the first squeeze amount threshold value Th SQ1 over all data sectors DS included in the range adjacent to the circumferential direction portion in which the write is completed, when the head 22 passes through the servo sector SV in the write operation. Also, the controller 30 compares the cumulative damage evaluation amount CDE and the track read error threshold value Th CDE , and performs the interruption of the write operation and the protection operation of protecting the data of the second track based on the comparison result of the cumulative damage evaluation amount CDE and the track read error threshold value Th CDE .
[0154] Thus, the frequency of execution of the protection operation can be reduced. If the protection operation is executed, the time required for completion of the write operation increases. By reducing the frequency of execution of the protection operation, the increase in the time required for the write operation is suppressed. That is, the performance is improved.
[0155] According to the first embodiment, since the frequency of execution of the protection operation can be reduced, there is room for making the design value of the track width (or track pitch) smaller. By reducing the design value of the track width (or track pitch), the storage capacity of the disk device 1 can be increased.
[0156] Further, according to the first extrusion amount threshold Th SQ1 of the first embodiment exemplified in the explanation of the process of S103, the first extrusion amount threshold Th SQ1 associated with the servo sector SV of which the quality of one or more data sectors DS of the adjacent track is high is larger than the first extrusion amount threshold Th SQ1 associated with the servo sector SV of which the quality of one or more data sectors DS of the adjacent track is low.
[0157] Thus, the controller 30 can appropriately evaluate the damage to the data of the adjacent track, and the frequency of execution of the protection operation can be reduced.
[0158] Further, according to the first embodiment, the controller 30 executes the interruption of the write operation and the protection operation when the cumulative damage evaluation amount CDE is larger than the track read error threshold Th CDE , and continues the write operation when the cumulative damage evaluation amount CDE is smaller than the track read error threshold Th CDE .
[0159] Thus, it is possible to prevent a situation in which the data of the adjacent track cannot be recovered due to extrusion writing.
[0160] Further, in the above explanation, the plurality of first positions are set as the group of circumferential positions of each servo sector SV. That is, the first extrusion amount threshold Th SQ1 of each servo sector SV is calculated. The plurality of first positions can not be the group of circumferential positions of each servo sector SV.
[0161] For example, the plurality of first positions can be the group of circumferential positions of each data sector DS of the adjacent track. That is, the controller 30 can calculate the first extrusion amount threshold Th SQ1 of each data sector DS of the adjacent track, and use it for the calculation of the damage evaluation amount DE.
[0162] Furthermore, according to the first embodiment, the plurality of second positions are a group of circumferential positions of each data sector DS of adjacent tracks. When a single servo sector SV is considered as the target servo sector SV, the controller 30 bases its calculation on a first compression threshold Th of all data sectors DS of adjacent tracks, which is included, even if only partially, in the interval between the servo sector SV immediately preceding the target servo sector SV and the servo sector SV immediately following the target servo sector SV. SQ1 To calculate the first squeeze threshold Th associated with the object's servo sector SV. SQ1 .
[0163] Furthermore, according to the first embodiment, the cumulative damage evaluation quantity CDE is a value corresponding to the correction limit of error correction in units of track 41.
[0164] Therefore, it can prevent the data on adjacent tracks from becoming unrecoverable due to squeeze writing.
[0165] In addition, according to the first embodiment, the controller 30 tightens the write allowable range in the radial direction during the protection operation, and after the write allowable range is tightened, the write operation is started again.
[0166] Alternatively, according to the first embodiment, the controller 30, during a protection operation, suppresses the writing of data in the interval from the circumferential position where the write operation was interrupted to a predetermined circumferential position.
[0167] Furthermore, according to the first embodiment, the controller 30 uses the bit error rate as a quality indicator. The quality indicator is not limited to the bit error rate.
[0168] (Second Implementation)
[0169] As a method of configuring data to the disk, it is known to construct a region that is longer than the size of the unit transmitted and received between the host and the disk, into which data is written. Such a region is denoted as a long-distance sector. A long-distance sector has a length that spans multiple servo sectors in the circumferential direction.
[0170] In the second embodiment, a technique is described for adjusting the threshold value for determining protection actions based on the quality of the long-distance sectors in a disk device having a configuration in which multiple long-distance sectors are provided on each track. Furthermore, in the second embodiment, matters different from those in the first embodiment are described. Matters identical to those in the first embodiment are described briefly or omitted.
[0171] Figure 13 This is a diagram illustrating an example of the configuration of the long-distance sector in the second embodiment. Furthermore, the illustration of the servo sector SV is omitted in this diagram.
[0172] One track 41 is configured with many data sectors DS. Figure 13 In the example shown, 16 data sectors DS are configured on one track 41. Each data sector DS has a capacity corresponding to the unit size of data transferred between the host 2 and the disk device 1.
[0173] For example, when host 2 corresponds to 4K sectors, data is transferred between host 2 and disk device 1 in units of 4K bytes. In this case, each data sector DS has a capacity corresponding to 4K bytes. More specifically, controller 30 performs predetermined data processing, such as error correction encoding for sector error correction, on the 4K-byte data units from host 2, and writes the processed data units to disk 11. Through the predetermined data processing, the size of the data unit is larger than 4K bytes. Each data sector DS has a capacity capable of storing data units that are larger than 4K bytes due to the predetermined data processing.
[0174] A long-distance sector is formed by multiple data sectors DS arranged continuously along track 41. Similarly to the data sectors DS, each long-distance sector is assigned a numerical information as an ID corresponding to its positional order along track 41.
[0175] exist Figure 13 In the example shown, one long-distance sector is composed of four data sectors DS. That is, 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.
[0176] The remaining data sector #16 is designated as the sector for writing track parity bits, i.e., the parity bit sector. Alternatively, track parity bits can also be included in the last long-distance sector (in...). Figure 13 The example shown is a long-distance sector #3.
[0177] Similar to the first embodiment, the method for calculating the track parity bit is not limited to a specific method. In one example, the parity bit is generated by performing an XOR operation on each bit position for a group of data units written to data sectors DS#0 to DS#15. Furthermore, in the case of performing the interleaving operation described later, the track parity bit is calculated before the interleaving operation.
[0178] In the second embodiment, the data written to one data sector DS or the data before error correction coding for sector error preparation is referred to as a data unit. In addition, a group including four data units written to a long distance sector is referred to as a data unit group.
[0179] In the second embodiment, the controller 30 is also configured to be able to perform an interleave action and a de-interleave action with respect to a data unit group.
[0180] Figure 14 FIG. 6 is a diagram for explaining an example of the interleave action of the second embodiment. In this figure, an example of the interleave action performed with respect to a data unit group to be written to a certain long distance sector #m is shown. The long distance sector #m is provided with data sectors #n to #(n+3). In addition, n and m are each an integer.
[0181] The data unit group written to the long distance sector #m is composed of, for example, data units #0 to #3.
[0182] In the interleave action, the controller 30 divides each of the data units #0 to #3 into four sub-data units. Also, the controller 30 changes the arrangement order of the total 16 sub-data units generated by the division of the data units #0 to #3 and writes to the long distance sector #m. Specifically, the controller 30 disperses the four sub-data units generated from the data unit #0 to the data sectors #n to #(n+3). Similarly, the controller 30 disperses the four sub-data units generated from the data unit #1 to the data sectors #n to #(n+3), disperses the four sub-data units generated from the data unit #2 to the data sectors #n to #(n+3), and disperses the four sub-data units generated from the data unit #3 to the data sectors #n to #(n+3).
[0183] That is, by the interleave action, one data unit is dispersed to a plurality of data sectors DS constituting a long distance sector.
[0184] Figure 15 FIG. 7 is a diagram for explaining an example of the de-interleave action of the second embodiment. In this figure, an example of the de-interleave action with respect to data read from the long distance sector #m is shown.
[0185] In the long distance sector #m, each data unit is arranged in sub-data units dispersedly in a region corresponding to four data sectors DS. In the de-interleave action, the controller 30 restores the arrangement of each sub-data unit with respect to the data unit group whose arrangement has been changed in sub-data units read from the long distance sector #m. Thus, the data unit group before the interleave action in which the data unit #0, the data unit #1, the data unit #2, and the data unit #3 are arranged in this order in sequence is restored.
[0186] By performing interleaving and deinterleaving operations in this way, the tolerance of long-distance sectors #m to burst errors is improved. For example, even if the data read from a certain data sector DS contains burst error portions, the burst error portions are distributed across multiple data units through deinterleaving. Each data unit undergoes independent error correction coding, so the distributed burst error portions are corrected by sector error correction for each data unit.
[0187] Furthermore, burst errors can also occur due to the narrowing of adjacent tracks caused by write operations. This narrowing of adjacent track width is called a squeeze write. It is difficult to read data error-free from intervals where the track width is significantly narrowed due to squeeze writes; therefore, data read from these intervals may contain burst errors. By performing interleaving and deinterleaving operations, even if a burst error of less than DS length occurs due to a local squeeze write of the length below DS, this burst error can be corrected through sector error correction.
[0188] As mentioned earlier, long-distance sectors have a length that spans multiple servo sectors (SVs) in the circumferential direction.
[0189] Figure 16 This is a diagram illustrating an example of the positional relationship between the long-distance sector and each servo sector SV in the second embodiment.
[0190] exist Figure 16 In the example shown, the range between the two ends of the long-distance sector #m in the circumferential direction of track #(k-1) contains four servo sectors SV#p to SV#(p+3). Servo sector SV#p exists at the beginning of data sector DS#n (more precisely, immediately before data sector DS#0), servo sector SV#(p+1) exists midway through data sector DS#(n+1), servo sector SV#(p+2) exists midway through data sector DS#(n+2), and servo sector SV#(p+3) exists midway through data sector DS#(n+3).
[0191] In the write operation of writing data to the long sector #m of track #k, which is the part adjacent to the long sector #m of track #(k-1), the controller 30 performs track-seeking control based on at least the servo information read from the four servo sectors SV#p to SV#(p+3).
[0192] In addition, similarly to the first embodiment, the controller 30 sets the dynamic drift level DDOL#k based on the trajectory shown by the position error signal PES#(k-1).
[0193] As described above, the long distance sector has a length that spans a plurality of servo sectors SV, and the interleaving operation is performed on the data unit group to be written to the long distance sector. Even if the width of the adjacent track is significantly narrowed at a certain portion in the long distance sector, thereby causing a condition that a burst error due to the squeeze writing occurs at the portion at the time of the read operation performed thereafter, if the data can be read without error from other portions of the long distance sector, the error-free data can be obtained by the sector correction.
[0194] That is, in order to accurately estimate whether the error-free data can be obtained by the sector correction as much as possible, it is required to judge based on the squeeze amount SQ in the entire plurality of servo sectors SV, not based on a part of the plurality of servo sectors SV included in the range between the 2 end portions of the long distance sector.
[0195] Then, the controller 30 performs the operation described below at the time of the write operation to the portion of the write target track 41, i.e., the 1st portion, adjacent to the 2nd portion. Here, the 2nd portion is the portion between the 2 end portions in the circumferential direction of a certain long distance sector of the adjacent track (denoted as the adjacent long distance sector).
[0196] The controller 30 calculates the squeeze amount SQ at the position of each sector (each servo sector SV or each data sector DS) of the adjacent track based on the servo data read from each servo sector SV in the range from the beginning to the end of the 1st portion in order to prevent the data of the adjacent long distance sector from being unable to be corrected due to the squeeze writing. The operation of obtaining the squeeze amount SQ at the position of each sector (each servo sector SV or each data sector DS) of the adjacent track is denoted as an obtaining operation. In the case where there is a sector adjacent to the portion through which the head 22 has not passed in each sector (each servo sector SV or each data sector DS) included in the 2nd portion, the controller 30 predicts the squeeze amount SQ in the sector adjacent to the portion through which the head 22 has not passed. Also, the controller 30 totals the squeeze amounts SQ in all sectors (servo sectors SV or data sectors DS) included in the adjacent long distance sector, and obtains the total value SQsum of the squeeze amounts SQ. The total value SQsum of the squeeze amounts SQ is set as the numerical information indicating the damage to the data of the adjacent long distance sector. The controller 30 compares the total value SQsum of the squeeze amounts SQ and a threshold value (denoted as a 2nd squeeze amount threshold value Th SQ2 ).
[0197] The largest value in the range in which the error-free data unit group can be obtained by the sector correction from the adjacent long distance sector can be secured to be set as the 2nd squeeze amount threshold value Th SQ2 . Thus, in the case where the total value of the squeeze amounts SQ is larger than the 2nd squeeze amount threshold value Th SQ2In the case of small values, it can be presumed that error-free data can be obtained from adjacent long-distance sectors. Additionally, when the total value of the extrusion quantity SQ is greater than the second extrusion quantity threshold Th... SQ2 In large cases, it can be assumed that it may be difficult to obtain error-free data from adjacent long-distance sectors.
[0198] When the controller 30 performs a write operation on track #k, each time the read / write head 22 passes through the servo sector SV, it performs the calculation of the total extrusion amount SQsum for the long-distance sector of track #(k-1) corresponding to the position of the read / write head 22, and compares the total extrusion amount SQsum with the second extrusion amount threshold Th. SQ2 A comparison.
[0199] exist Figure 16 In the example shown, as indicated by the position error signal #k, the read / write head 22 writes data while passing through servo sector SV#p and servo sector SV#(p+1). Furthermore, the read / write head 22 reaches servo sector SV#(p+2).
[0200] When the servo information is read from the servo sector SV#(p+2) by the magnetic head 22, the controller 30 calculates the squeezing amount SQ in the data sector DS#n of track #(k-1) based on the read servo information. n The squeeze amount SQ in the data sector DS#(n+1) of track #(k-1) n+1 And the squeeze amount SQ in the data sector DS#(n+2) of track #(k-1). n+2 .
[0201] The controller 30 predicts the squeezing amount SQ in the data sector DS#(n+3) of track #(k-1), which is adjacent to the portion of track #(k-1) that the read / write head 22 has not yet passed. The predicted value SQE for the squeezing amount SQ in the data sector DS#(n+3) of track #(k-1) is... n+3 The calculation method can be considered from various perspectives.
[0202] In one example, the maximum value of the squeeze amount SQ in all data sectors DS adjacent to the portion of track #(k-1) that the head 22 has already traversed (i.e., the portion of track #k from servo sector SV#p to servo sector #(p+2)) is set as the predicted value SQE of the squeeze amount SQ. n+3 .
[0203] In another example, the average of the squeezing amount SQ in all data sectors DS adjacent to the portion already traversed by the head 22 within the long-distance sector #m of track #(k-1) is set as the predicted squeezing amount SQE.n+3 .
[0204] In yet another example, a learning completed neural network model configured in a manner that, 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, the squeeze amount SQ or the 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 output is mounted as an electronic circuit in the storage area. The neural network model has, for example, three layers of an input layer, an intermediate layer, and an output layer. There are many neurons in each layer, and the neurons are combined (connected) with certain weights. Learning refers to how the weights are adjusted in each combination in such a manner that the output error becomes the minimum. For example, inside the controller 30, there is a servo logic section having a synchronization circuit that acquires the squeeze amount for each servo sector SV, which is sent to a servo channel section inside the controller 30. In the servo channel section, the neural network model is mounted as a circuit. The controller 30 acquires the predicted value SQE of the squeeze amount SQ based on the learning completed neural network model n+3 .
[0205] In yet another example, a circuit that outputs the squeeze amount SQ or the estimated value of the squeeze amount SQ in one or more sectors (servo sectors SV or data sectors DS) arranged immediately after a predetermined number of sectors arranged continuously in the circumferential direction by regression when the squeeze amount SQ in the predetermined number of sectors is input is mounted in the controller 30. The controller 30 acquires the predicted value SQE of the squeeze amount SQ based on the learning completed prediction by regression n+3 .
[0206] In this way, the controller 30 acquires one or more squeeze amounts SQ (in this case, four squeeze amounts SQ n , SQ n+1 , SQ n+2 , SQE n+3 ) associated with the long distance sector #m of the track #(k-1) in the acquisition operation.
[0207] 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) after the acquisition operation, and calculates the sum SQsum of these. Also, the controller 30 compares the sum SQsum of the squeeze amounts and the second squeeze amount threshold Th SQ2 .
[0208] In a case where the total value SQsum of the squeeze amounts SQ is larger than the 2nd squeeze amount threshold Th SQ2 , the controller 30 continues the write operation for the track #k. In a case where the total value SQsum of the squeeze amounts SQ is larger than the 2nd squeeze amount threshold Th SQ2 , the controller 30 interrupts the write operation and performs the protection operation.
[0209] Further, in a case where the total value SQsum of the squeeze amounts SQ is equal to the 2nd squeeze amount threshold Th SQ2 , the processing can be arbitrarily designed by the designer. For example, the controller 30 can continue the write operation or can interrupt the write operation and perform the protection operation. Here, it is set that the controller 30 continues the write operation in a case where the total value SQsum of the squeeze amounts is equal to the 2nd squeeze amount threshold Th SQ2 .
[0210] In Figure 16 the example shown, the sector ends of the long distance sectors are aligned between the plurality of tracks 41 arranged in the radial direction (for example, between the track #(k-1) and the track #k). The sector ends of the long distance sectors can not necessarily be aligned between the plurality of tracks 41 arranged in the radial direction.
[0211] As described in the 1st embodiment, the quality of the data sectors DS provided to the tracks 41 has a variation. Therefore, the quality of each long distance sector also has a variation. In the 2nd embodiment, the controller 30 changes the 2nd squeeze amount threshold Th SQ2 in the track 41 depending on the quality of the long distance sector of the adjacent track. Thereby, the controller 30 can appropriately evaluate the damage to the data of the adjacent track and can reduce the frequency of execution of the protection operation.
[0212] In the 2nd embodiment, in one example, the average value of the bit error rates of all the data sectors DS constituting the long distance sector is set 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 denoted as the bit error rate of the long distance sector.
[0213] The controller 30 obtains the 2nd squeeze amount threshold Th SQ2 for each long distance sector based on the following expression (4). Th SQ2base is the largest value in the numerical range in which it is possible to guarantee that an error-free data unit group can be obtained from the long distance sector having the largest bit error rate among the long distance sectors of the adjacent track by sector error correction. Mar2 is a relaxation amount determined depending on the bit error rate of the data sector DS.
[0214] Th SQ2 = Th SQ2base + Mar2... (4)
[0215] Based on the pre-set corresponding information 281a, the controller 30 calculates the threshold mitigation amount Mar2 for each long-distance sector of each adjacent track.
[0216] use Figure 17 as well as Figure 18 To illustrate the setting of the second squeezing threshold Th based on the bit error rate of long-distance sectors SQ2 Examples of actions.
[0217] Figure 17 This is a diagram illustrating an example of the bit error rate of each long-distance sector contained in a track 41 that is an adjacent track during a write operation in the second embodiment. In this diagram, the horizontal axis represents the position of each long-distance sector within a track 41 that is an adjacent track. The vertical axis represents the bit error rate.
[0218] from Figure 17 It can be seen that the bit error rate deviates in long-distance sectors within track 41. For example, the bit error rate of the first long-distance sector is the highest within track 41. That is, the first long-distance sector has the lowest quality within track 41. Conversely, the bit error rate of the second long-distance sector is the lowest within track 41. That is, the second long-distance sector has the highest quality within track 41.
[0219] Figure 18 This is a diagram illustrating an example of the corresponding information 281a of the second embodiment. In this diagram, the horizontal axis represents the bit error rate of long-distance sectors, and the vertical axis represents the threshold mitigation amount Mar2.
[0220] like Figure 18 As shown, according to corresponding information 281a, the relationship between the bit error rate and the threshold mitigation amount Mar2 is defined such that a smaller bit error rate results in a larger threshold mitigation amount Mar2. Therefore, for example, the threshold mitigation amount Mar2 in the second long-distance sector is larger than the threshold mitigation amount Mar2 in the first long-distance sector. According to this corresponding information 281a, the higher the quality of the long-distance sectors of adjacent tracks, the larger the second squeezing threshold Th... SQ2 The larger the value, the less damage is suffered by the data in long-distance sectors with high quality in adjacent tracks, even if the extrusion amount SQ is the same. Therefore, the damage is estimated to be less for long-distance sectors with low quality in adjacent tracks.
[0221] Corresponding information 281a is generated during the manufacturing process in the same way as corresponding information 281 in the first embodiment, and is stored in a predetermined non-volatile storage area (e.g., FROM 28).
[0222] Figure 19 This is a flowchart illustrating an example of the operation of the disk device 1 according to the second embodiment. In this figure, a series of processes for a write operation on track #k are shown.
[0223] First, the controller 30 acquires the position error signal PES#(k-1) of the adjacent track, i.e., the track #(k-1) (S201).
[0224] The controller 30 acquires the bit error rate of each data sector DS of the track #(k-1) by referring to the measured BER information 282 (S202).
[0225] The controller 30 calculates the 2nd squashing amount threshold Th SQ2 (S203) based on the position error signal PES#(k-1), the bit error rate of each data sector DS of the track #(k-1), and the correspondence information 281a.
[0226] In S203, the controller 30 calculates the bit error rate of each long distance sector of the track #(k-1) based on the bit error rate of each data sector DS of the track #(k-1). Also, the controller 30 acquires the threshold relaxation amount Mar2 of each long distance sector of the track #(k-1) based on the bit error rate of each long distance sector and the correspondence information 281a. Also, the controller 30 calculates the 2nd squashing amount threshold Th SQ2 .
[0227] Next, the controller 30 initializes the variable n to 0 (S204). The variable n is a variable that holds the ID of the servo sector SV.
[0228] The controller 30 performs the write operation for the interval from the servo sector SV#n to the servo sector SV#(n+1) (S205). At this time, the controller 30 performs the reading of the servo information of the servo sector SV#(n+1) and the acquisition of the PES based on the read servo information.
[0229] The controller 30 determines whether the servo sector SV#n is the last servo sector SV (S206).
[0230] In the case where the servo sector SV#n is the last servo sector SV (S206: Yes), the write operation for the track #k is completed.
[0231] In the case where the servo sector SV#n is not the last servo sector SV (S206: No), the controller 30 calculates the squashing amount SQ in each data sector DS adjacent to the portion through which the head 22 has passed among the long distance sectors (denoted as the target adjacent long distance sector) of the adjacent track including the circumferential position of the servo sector SV#(n+1) (S207).
[0232] Further, the controller 30 predicts the squeeze SQ in each data sector DS adjacent to a portion not yet passed through by the magnetic head 22 in the object-adjacent long distance sector (i.e., a predicted value SQE of the squeeze SQ) (S208).
[0233] The controller 30 calculates a total value SQsum of the squeeze SQ across all the data sectors DS included in the object-adjacent long distance sector (S209).
[0234] The controller 30 determines whether the total value SQsum is larger than a second squeeze threshold value Th SQ2 associated with the object-adjacent long distance sector (S210).
[0235] In a case where the total value SQsum is not larger than the second squeeze threshold value Th SQ2 associated with the object-adjacent long distance sector (S210: No), the controller 30 adds 1 to the value of the variable n (S211), and the control moves to S205.
[0236] In a case where the total value SQsum is larger than the second squeeze threshold value Th SQ2 associated with the object-adjacent long distance sector (S210: Yes), the controller 30 interrupts the write operation for the track #k (S212). Also, the controller 30 performs a protection operation (S213), and ends the series of operations.
[0237] Thus, according to the second embodiment, the controller 30 calculates the second squeeze threshold value Th SQ2 associated with each long distance sector of the adjacent tracks on the basis of the quality of each long distance sector of the adjacent tracks. The controller 30, in the write operation to the first portion, which is a portion adjacent to a second portion between two end portions in the circumferential direction of the object-adjacent long distance sector, performs the following operation. That is, the controller 30 calculates the squeeze SQ in each data sector DS included in the object-adjacent long distance sector on the basis of the servo information read from one or more servo sectors SV passed through by the magnetic head 22 among two or more servo sectors SV included in the first portion. Also, the controller 30 performs a comparison of the total value SQsum of the squeeze SQ in each data sector DS included in the object-adjacent long distance sector and the second squeeze threshold value Th SQ2 associated with the object-adjacent long distance sector. The controller 30 performs the interruption of the write operation and the protection operation of the data of the adjacent tracks on the basis of the comparison result of the total value SQsum of the squeeze SQ and the second squeeze threshold value Th SQ2 associated with the object-adjacent long distance sector.
[0238] Therefore, similar to the first embodiment, the frequency of protection actions can be reduced. If a protection action is performed, the time required to complete a write operation increases. By reducing the frequency of protection actions, the increase in the time required for write operations is suppressed. In other words, performance is improved. Furthermore, by reducing the design value of the track width (or track spacing), the storage capacity of the disk drive 1 can be increased.
[0239] Furthermore, according to the second embodiment, the squeezing 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.
[0240] Furthermore, according to the second embodiment, a second extrusion threshold Th corresponding to the quality of the long-distance sector is calculated based on the corresponding information 281a and the calculation of equation (4). SQ2 Therefore, when adjacent tracks contain a long-distance sector (denoted as the 3rd long-distance sector) and another long-distance sector (denoted as the 4th long-distance sector), and the quality of the 3rd long-distance sector is higher than that of the 4th long-distance sector, the second extrusion threshold Th associated with the 3rd long-distance sector... SQ2 The second extrusion threshold Th associated with the fourth long-distance sector SQ2 big.
[0241] Therefore, the controller 30 can properly evaluate the damage to the data of adjacent tracks and reduce the frequency of protective actions.
[0242] Furthermore, according to the second embodiment, when the total value SQsum of the extrusion amount SQ is greater than the second extrusion amount threshold Th SQ2 In cases of large values, controller 30 executes an interrupt for the write operation and a protection action. When the total value of the extrusion quantity SQ, SQsum, is greater than the second extrusion quantity threshold Th... SQ2 In the case of a small value, controller 30 continues to write actions.
[0243] Therefore, it can prevent situations where data in adjacent long-distance sectors of an object cannot be corrected through sector error correction due to squeeze writing.
[0244] In addition, according to Figure 19 In the example shown, the controller 30 calculates the total value SQsum of the extrusion quantity SQ as a percentage of the second extrusion quantity threshold Th. SQ2 In severe cases, the write operation is immediately interrupted and protected. The conditions for interrupting the write operation and protecting the data are not limited to this.
[0245] For example, even if the total value of the extrusion quantity SQ, SQsum, is less than the second extrusion quantity threshold Th, the controller 30 will still be able to achieve this. SQ2 Da also continued writing the action, causing the total value of the extrusion amount SQ, SQsum, to exceed the second extrusion amount threshold Th.SQ2 The amount is partially accumulated in a portion of the adjacent track adjacent to the section in which the writing is completed. Also, the controller 30 estimates whether a track read error occurs on the basis of the amount obtained by the accumulation. In a case where it is estimated that a track read error occurs, the controller 30 can perform interruption of the write operation and a protection operation.
[0246] Further, in the second embodiment, the controller 30 calculates the squeeze amount SQ in each data sector DS included in the subject adjacent long distance sector. The controller 30 can also not calculate the squeeze amount SQ in each data sector DS included in the subject adjacent long distance sector as long as the squeeze amount SQ at a plurality of positions included in the subject adjacent long distance sector is calculated.
[0247] In addition, in the second embodiment, the controller 30 can perform the tightening of the radial direction write allowable range in the protection operation as in the first embodiment, and start the write operation again after the write allowable range is tightened.
[0248] Alternatively, the controller 30 can suppress the writing of data for a section from a circumferential position at which the write operation is interrupted to a predetermined circumferential position in the protection operation.
[0249] In addition, as in the first embodiment, the controller 30 uses the bit error rate as an index of quality. The index of quality is not limited to the bit error rate.
[0250] (Third Embodiment)
[0251] According to the first embodiment, the controller 30 calculates the first squeeze amount threshold Th SQ1 in each servo sector SV as the first position on the basis of the quality of one or more data sectors DS of the adjacent track corresponding to each first position. SQ1 The first squeeze amount threshold Th SQ1 may be set to be common in all servo sectors SV, and the controller 30 can calculate the weight coefficient wl for each servo sector SV instead of the first squeeze amount threshold Th SQ1 .
[0252] That is, the controller 30 does not perform the conversion of the first squeeze amount threshold Th SQ1 on the basis of the quality of one or more data sectors DS of the adjacent track, but multiplies the squeeze amount by the weight coefficient wl on the basis of the quality of one or more data sectors DS of the adjacent track.
[0253] The controller 30 multiplies the squeeze amount by the weight coefficient wl to calculate the cumulative damage evaluation amount CDE as the first amount, which is the squeeze amount after being multiplied by the weight coefficient wl, exceeds the first squeeze amount threshold ThSQ1 The amount of damage evaluation amount DE is accumulated throughout all data sectors DS included in the range adjacent to the portion in the circumferential direction in which writing is completed, and the amount obtained. Also, the controller 30 compares the accumulated damage evaluation amount CDE and the track read error threshold value Th CDE performs the interruption of the write operation and the protection operation of protecting the data of the second track based on the comparison result of the accumulated damage evaluation amount CDE and the track read error threshold value Th CDE .
[0254] Here, the controller 30 makes the weight coefficient wl associated with the servo sector SV whose quality of one or more data sectors DS of the adjacent track is high smaller than the weight coefficient wl associated with the servo sector SV whose quality of one or more data sectors DS of the adjacent track is low. That is, the controller 30 instead of increasing the first squeeze amount threshold value Th SQ1 increases the weight coefficient wl instead of decreasing the first squeeze amount threshold value Th SQ1 .
[0255] Thus, the controller 30 can appropriately evaluate the damage received by the data of the adjacent track, and can reduce the frequency of execution of the protection operation.
[0256] In addition to instead of the first squeeze amount threshold value Th SQ1 adjusting the weight coefficient wl, the other matters are the same as in the first embodiment.
[0257] Further, the controller 30 can multiply the squeeze amount by the weight coefficient wl corresponding to the size of the amount by which the head 22 exceeds the sector read error boundary. In addition, the controller 30 can increase the weight coefficient wl according to the number of times the head 22 exceeds the sector read error boundary. That is, it can be that at the beginning of the adjacent track, the weight coefficient wl is set to be small, and at the latter half of the adjacent track, the weight w 1 is set to be large.
[0258] (4th Embodiment)
[0259] In the second embodiment, the controller 30 calculates the second squeeze amount threshold value Th SQ2 based on the quality of each long distance sector of the adjacent track with respect to each long distance sector of the adjacent track. The controller 30 can calculate the weight coefficient w2 multiplied by the total value SQsum of the squeeze amounts SQ instead of the second squeeze amount threshold value Th SQ2 .
[0260] That is, the controller 30 calculates the second squeeze amount threshold value Th SQ2is set to be common in all of the long distance sectors of the adjacent track, and is calculated based on the quality of each long distance sector of the adjacent track. The controller 30 performs the following action in the write operation for the 1st portion, which is a portion adjacent to a 2nd portion between 2 end portions in the circumferential direction of the subject adjacent long distance sector. That is, the controller 30 calculates the crush amount SQ in each data sector DS included in the subject adjacent long distance sector based on the servo information read by the head 22 from one or more servo sectors SV passed through among two or more servo sectors SV included in the 1st portion. Also, the controller 30 calculates a total value SQsum of the crush amount SQ in each data sector DS included in the subject adjacent long distance sector. Also, the controller 30 performs multiplication of the total value SQsum by the weight coefficient w2 associated with the subject adjacent long distance sector, and performs comparison of the total value SQsum after multiplication by the weight coefficient w2 and the 2nd crush amount threshold Th SQ2 associated with the subject adjacent long distance sector. SQ2 The controller 30 performs interruption of the write operation and the protection operation of protecting the data of the adjacent track based on the result of comparison of the total value SQsum after multiplication by the weight coefficient w2 and the 2nd crush amount threshold Th
[0261] Here, in a case where the adjacent track includes a certain long distance sector (referred to as a 3rd long distance sector) and another long distance sector (referred to as a 4th long distance sector), and the quality of the 3rd long distance sector is higher than the quality of the 4th long distance sector, the controller 30 makes the weight coefficient w2 associated with the 3rd long distance sector smaller than the weight coefficient w2 associated with the 4th long distance sector.
[0262] Thus, the controller 30 can appropriately evaluate the damage to the data of the adjacent track, and can reduce the frequency of execution of the protection operation.
[0263] The matters other than the adjustment of the weight coefficient w2 instead of the 2nd crush amount threshold Th SQ2 are the same as in the 1st embodiment.
[0264] Several embodiments of the present application have been described above, but these embodiments are presented as examples, and are not intended to limit the scope of the application. These new embodiments can be implemented in various other ways, and various omissions, substitutions, and changes can be made without departing from the scope of the application. These embodiments and / or modifications thereof are included in the scope, gist of the application, and are included in the application recited in the claims and the scope equivalent thereto.
Claims
1. A disk drive, comprising: A disk having multiple tracks, wherein multiple servo sectors on which servo information is recorded are arranged at intervals in a circumferential direction, the multiple tracks having a first track and a second track that is adjacent to the first track in a radial direction and written before the first track; The read / write head is used to write and read data from the disk; and Controller The controller The first threshold associated with each of the plurality of first positions in the circumferential direction is calculated separately for each first position based on the quality of one or more second positions corresponding to each first position among the plurality of second positions in the circumferential direction. Begin the write operation targeting the first track. During the write operation, a first action is performed when the read / write head passes through a servo sector. This first action involves calculating a first quantity based on servo information read each time the read / write head passes through the servo sector, and comparing this first quantity with a second threshold. The first quantity is obtained by accumulating the amount of compression exceeding the first threshold across all second positions within the range adjacent to the circumferential portion where the write operation has been completed. The compression amount is the amount by which the width of the second track narrows from its design value due to the write operation. The write operation is interrupted and the data on the second track is protected based on the comparison result between the first quantity and the second threshold.
2. The disk drive according to claim 1, The plurality of first positions includes the third position and the fourth position. The quality of one or more second positions in the second track corresponding to the third position is higher than the quality of one or more second positions in the second track corresponding to the fourth position. The first threshold associated with the third position is larger than the first threshold associated with the fourth position.
3. The disk drive according to claim 1, The controller If the first threshold is greater than the second threshold, the write operation is interrupted and the protection action is performed. If the first value is smaller than the second threshold, the write operation continues.
4. The disk drive according to any one of claims 1 to 3, The plurality of first positions are a group of circumferential positions of each servo sector configured in the first track.
5. The disk drive according to any one of claims 1 to 3, The second track has multiple data sectors. The plurality of second positions are a group of the circumferential positions of the plurality of data sectors.
6. The disk drive according to claim 5, The plurality of first positions is a group of positions configured in each servo sector of the first track. One or more second positions corresponding to a fifth position, which is any of the plurality of first positions, are all the second positions contained in the circumferential interval between the servo sector passed by the head immediately before the fifth position and the servo sector passed by the head immediately after the fifth position.
7. The disk drive according to any one of claims 1 to 3, The second track has multiple data sectors. The plurality of data sectors include data sectors that store error-correcting codes for error correction on a unit basis, on the second track. The second threshold is a value corresponding to the correction limit of the error correction.
8. The disk drive according to any one of claims 1 to 3, The controller The protective action tightens the write tolerance range in the radial direction. After the write allowance is tightened, the write operation is restarted.
9. The disk drive according to any one of claims 1 to 3, The controller, during the protection action, suppresses the writing of data in the interval from the circumferential position where the write action was interrupted to a predetermined circumferential position.
10. The disk drive according to any one of claims 1 to 3, The quality mentioned is the bit error rate.
11. A disk drive, comprising: A disk has multiple tracks, and multiple servo sectors on the multiple tracks, which record servo information, are arranged at intervals in the circumferential direction. Each track has multiple long-distance sectors, each of which is a region for data writing and has a circumferential length spanning more than two of the multiple servo sectors. The multiple tracks include a first track and a second track that is adjacent to the first track in the radial direction and is written before the first track. The read / write head is used to write and read data from the disk. as well as Controller The controller Based on the quality of each of the plurality of first long-distance sectors, which are configured as the plurality of long-distance sectors in the second track, a first threshold is calculated for each of the plurality of first long-distance sectors. In a write operation to the first portion of the first track, the first portion is the portion adjacent to the second portion, and the second portion is the portion between the two ends of the second long-distance sector in the circumferential direction of one of the plurality of first long-distance sectors. The controller performs: The squeezing amount is calculated based on the servo information read by the head through one or more servo sectors from the two or more servo sectors contained in the first part. The squeezing amount is the amount by which the width of the second track is narrowed from the design value due to the write action at each of the multiple first positions in the circumferential direction contained in the second long-distance sector. and The sum of the squeezing amounts at each of the plurality of first positions is compared with the first threshold associated with the second long-distance sector. The write operation is interrupted and the data on the second track is protected based on the comparison between the total value and the first threshold associated with the second long-distance sector.
12. The disk drive according to claim 11, The controller predicts the squeezing amount at each of the first positions contained in the portion of the second part adjacent to the portion of the first part that the magnetic head has not yet passed.
13. The disk drive according to claim 11, The plurality of first long-distance sectors include third long-distance sectors and fourth long-distance sectors with higher quality than the third long-distance sectors. The first threshold associated with the third long-distance sector is larger than the first threshold associated with the fourth long-distance sector.
14. The disk drive according to claim 11, The controller If the total value is greater than the first threshold, the write operation is interrupted and the protection action is performed. If the total value is less than the first threshold, the write operation continues.
15. The disk drive according to any one of claims 11 to 14, The second long-distance sector contains multiple data sectors. The plurality of first positions is a group of the circumferential positions of the plurality of data sectors.
16. The disk drive according to any one of claims 11 to 14, The controller The protective action tightens the write tolerance range in the radial direction. After the write allowance is tightened, the write operation is restarted.
17. The disk drive according to any one of claims 11 to 14, The controller, during the protection action, suppresses the writing of data in the interval from the circumferential position where the write action was interrupted to a predetermined circumferential position.
18. The disk drive according to any one of claims 11 to 14, The quality mentioned is the bit error rate.
19. A disk drive, comprising: A disk having multiple tracks, wherein multiple servo sectors on which servo information is recorded are arranged at intervals in a circumferential direction, the multiple tracks having a first track and a second track that is adjacent to the first track in a radial direction and written before the first track; The read / write head is used to write and read data from the disk; and Controller The controller The weighting coefficient associated with each of the multiple first positions in the circumferential direction is calculated separately for each first position, based on the quality of one or more second positions corresponding to each first position among the multiple second positions in the circumferential direction. Begin the write operation targeting the first track. During the write operation, a first action is performed when the read / write head passes through a servo sector. This first action involves: obtaining a squeeze amount based on servo information read each time the read / write head passes through the servo sector. This squeeze amount is the amount by which the width of the second track narrows from its design value due to the write operation. The squeeze amount is multiplied by a weighting coefficient to calculate a first quantity. This first quantity is then compared to a second threshold, where the first quantity is obtained by accumulating the squeeze amount multiplied by the weighting coefficient (which exceeds the first threshold) across all second positions within the range adjacent to the circumferential portion where the write operation has been completed. The write operation is interrupted and the data on the second track is protected based on the comparison result between the first quantity and the second threshold.
20. A disk drive, comprising: A disk has multiple tracks, and multiple servo sectors on the multiple tracks, which record servo information, are arranged at intervals in the circumferential direction. Each track has multiple long-distance sectors, each of which is a region for data writing and has a circumferential length spanning more than two of the multiple servo sectors. The multiple tracks include a first track and a second track that is adjacent to the first track in the radial direction and is written before the first track. The read / write head is used to write and read data from the disk. as well as Controller The controller Based on the quality of each of the plurality of first long-distance sectors, which are configured as the plurality of long-distance sectors in the second track, a weighting coefficient is calculated for each of the plurality of first long-distance sectors. In a write operation to the first portion of the first track, the first portion is the portion adjacent to the second portion, and the second portion is the portion between the two ends of the second long-distance sector in the circumferential direction of one of the plurality of first long-distance sectors. The controller performs: The squeezing amount is calculated based on the servo information read by the head through one or more servo sectors from the two or more servo sectors contained in the first part. The squeezing amount is the amount by which the width of the second track is narrowed from the design value due to the write action at each of the multiple first positions in the circumferential direction contained in the second long-distance sector. and The sum of the compression amounts at each of the plurality of first positions is multiplied by the weighting coefficient, and the sum after multiplication by the weighting coefficient is compared with a first threshold associated with the second long-distance sector. The write operation is interrupted and the data on the second track is protected based on the comparison between the total value and the first threshold associated with the second long-distance sector.
Citation Information
Patent Citations
Accommodation facility system and accommodation facility reception device
JP2024161965A