Magnetic disk device
By recording the first and second postcodes in the disk and adjusting the third postcode based on temperature detection by a temperature sensor, the problem of reduced RRO correction accuracy of the disk device when the temperature changes is solved, and higher head positioning accuracy is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KK TOSHIBA
- Filing Date
- 2022-06-13
- Publication Date
- 2026-07-31
AI Technical Summary
In existing disk drives, the accuracy of the RRO correction tends to decrease when the temperature changes, leading to increased head positioning error.
The first and second postcodes are pre-recorded on the disk, and the third postcode is dynamically adjusted to perform RRO correction by detecting the actual temperature through a temperature sensor, ensuring the correction accuracy.
Even under significant temperature variations, it can effectively suppress the decrease in RRO correction accuracy and improve the positioning error correction accuracy of the magnetic head.
Smart Images

Figure CN116844577B_ABST
Abstract
Description
[0001] This application enjoys priority based on Japanese Patent Application No. 2022-048990 (filed on March 24, 2022). This application incorporates the entire contents of that basic application by reference. Technical Field
[0002] This embodiment relates to a disk drive. Background Technology
[0003] Historically, Repeatable Position Error (RPE) has been known as a component of head positioning error in disk drives. RPE refers to the amount of positional deviation on the disk that varies synchronously with the rotation of the disk (and spindle motor) between the track trajectory defined by the pulse train pattern and the actual track trajectory. To eliminate RPE, a correction is made to the position command value representing the target position, corresponding to the deviation from the position command value referenced by the RPE. This deviation from the position command value referenced by the RPE is called Repeatable Run Out (RRO).
[0004] During the manufacturing process of a disk drive, the RRO (Redirect Position Requirement) is calculated, and the value corresponding to the obtained RRO is recorded on the disk. This value is called the postcode (or RRO bit). When using the disk drive, the postcode recorded on the disk is used to correct the position command value. Summary of the Invention
[0005] One implementation involves obtaining a disk device with high accuracy in correcting the positioning error of the read / write head.
[0006] According to one embodiment, the disk drive includes a disk, a read / write head, a temperature sensor, and a controller. Servo sectors are formed on the disk, recording servo data including a first postcode and a second postcode. During head positioning, the controller uses a third postcode based on the first and second postcodes and a first temperature detected by the temperature sensor for correction. Attached Figure Description
[0007] Figure 1 This is a schematic diagram illustrating an example of the configuration of a disk device in an implementation method.
[0008] Figure 2 This is a schematic diagram illustrating an example of the configuration of a disk in an implementation method.
[0009] Figure 3 This is a diagram illustrating an example of servo data written into the servo sector SV in an implementation.
[0010] Figure 4 This is a flowchart illustrating an example of the operation of the disk device according to the first embodiment during manufacturing.
[0011] Figure 5 This is a flowchart illustrating an example of the operation of the disk device according to the first embodiment when accessing the disk.
[0012] Figure 6 It means in Figure 5 A flowchart illustrating an example of the operation of the disk device of the first embodiment performed in the S202 process shown.
[0013] Figure 7 This is a block diagram illustrating an example of control for RRO correction involved in the first embodiment using the third postcode. Figure 6 The control shown in this diagram is executed in S305.
[0014] Figure 8 It means in Figure 5 A flowchart illustrating an example of the operation of the disk device according to the second embodiment, performed in the S202 process shown.
[0015] Figure 9 It means in Figure 5 A flowchart illustrating an example of the operation of the disk device according to the third embodiment, performed in the S202 process shown.
[0016] Label Explanation
[0017] 1. Disk drive; 2. Main unit; 11. Disk; 12. Spindle motor; 13. Ramp; 15. Actuator arm; 16. VCM; 17. Temperature sensor; 21. Motor driver IC; 22. Magnetic head; 22r read core; 22w write core; 23. HDC; 24. Head IC; 25. RWC; 26. Processor; 27. RAM; 28. FROM; 29. Buffer memory; 30. Controller; 31, 32. Adder; 33. Filter; 41. Track. Detailed Implementation
[0018] Unless otherwise specified, RRO means the amount of position deviation on the disk and the position command value reference that changes synchronously with the rotation of the disk (and spindle motor).
[0019] When the RRO is solely caused by the shape of the tracks formed on the disk, the RRO does not change with temperature, or if it does change, it is very small. However, sometimes the RRO includes components not only caused by the shape of the tracks, but also, for example, components caused by vibrations from the spindle motor (SPM) that spins the disk. The component of the RRO caused by vibrations from the spindle motor may vary with temperature.
[0020] Even when the RRO contains temperature-dependent components as described above, if the temperature at which the correction is performed using the postcode recorded on disk is close to the temperature at which the postcode was generated, the RRO can be corrected with good accuracy. However, when the temperatures of the two components differ significantly, the accuracy of the RRO correction will decrease.
[0021] Therefore, in this implementation, the first postcode and the second postcode are pre-recorded in the disk. Furthermore, the disk device controller obtains the third postcode based on the first and second postcodes and the temperature detection value from the temperature sensor; this third postcode is the postcode actually used in the correction of the RRO.
[0022] Based on the above configuration, the postcode is corrected according to the temperature. Therefore, even if the temperature at the time of operation deviates significantly from the temperature at the time of generating the postcode, the reduction in the accuracy of the RRE correction caused by the temperature deviation can be suppressed.
[0023] To explain more specifically, RRO can be considered as the sum of positional deviations at various different rotational orders (hereinafter simply referred to as orders) based on disk rotation. Therefore, the postcode is constructed as the sum of corrections for each order. Furthermore, the positional deviation in the RRO related to a specific order (referred to as order 1) may vary depending on temperature.
[0024] For example, sometimes the change in the positional deviation related to the first order manifests as a phase change. In such cases, the greater the difference between the temperature during postcode generation and the temperature during operation, the greater the phase difference between the phase of the first-order related correction and the phase of the first-order related positional deviation in the generated postcode, up to 180 degrees. Furthermore, for example, when the phase difference between the first-order related correction and the phase of the first-order related positional deviation reaches 180 degrees, the positioning accuracy will significantly deteriorate since the postcode contains the first-order related correction.
[0025] In one implementation example, the correction amount related to the first order in the postcode generated during manufacturing is set as the first postcode, and the correction amounts related to other orders (i.e., the orders of correction amounts that do not change with temperature) are set as the second postcode. Furthermore, when the difference between the temperature at which the postcode is generated and the temperature at the time of operation is small, the controller uses the sum of the first and second postcodes as the third postcode. When the difference between the temperature at which the postcode is generated and the temperature at the time of operation is large, the controller uses the second postcode as the third postcode.
[0026] Therefore, even when the temperature difference between the generated postcode and the operating temperature is large, the degradation of positioning accuracy caused by the correction amount related to the first order can be suppressed. In other words, a disk device with high correction accuracy for the positioning error of the read / write head can be obtained.
[0027] Furthermore, the technique of the implementation method can be applied even when the change in the position deviation related to the first order is not a change in phase, but a change in other ways (such as a change in amplitude). That is, when the temperature at the time of generating the postcode is different from the temperature at the time of operation, the deterioration of positioning accuracy can be suppressed by suppressing the first postcode, which is the cause of the deterioration of positioning accuracy.
[0028] Hereinafter, the disk device according to the embodiments will be described in detail with reference to the accompanying drawings. However, the invention is not limited to these embodiments.
[0029] (First Embodiment)
[0030] Figure 1 This is a schematic diagram illustrating an example of the configuration of the disk device 1 in an embodiment.
[0031] Disk device 1 is connected to host 2. Disk device 1 can receive access commands such as write commands and read commands from host 2.
[0032] The disk drive 1 includes a disk 11 on which a magnetic layer is formed. The disk drive 1 writes data to the disk 11 and reads data from the disk 11 according to access commands.
[0033] Data writing and reading from disk 11 are performed via read / write head 22. Specifically, in addition to disk 11, disk device 1 also includes spindle motor 12, ramp 13, actuator arm 15, voice coil motor (VCM) 16, temperature sensor 17, motor driver IC (Integrated Circuit) 21, read / write head 22, hard disk controller (HDC) 23, head IC 24, read / write channel (RWC) 25, processor 26, RAM 27, FROM (Flash Read Only Memory) 28, and buffer memory 29.
[0034] The disk 11 is rotated at a predetermined speed by a spindle motor (SPM) 12 mounted coaxially. The spindle motor 12 is driven by a motor driver IC 21.
[0035] The processor 26 controls the rotation of the spindle motor 12 and the VCM 16 via the motor driver IC 21.
[0036] The read / write head 22 writes and reads information from the disk 11 using its write core 22w and read core 22r. The read / write head 22 is mounted at the front end of the actuator arm 15. The read / write head 22 moves radially across the disk 11 via a VCM 16 driven by a motor driver IC 21. Furthermore, multiple read / write cores 22w and 22r can be provided for a single read / write head 22.
[0037] When the disk 11 stops rotating, the read / write head 22 moves onto the ramp 13. The ramp 13 is configured to hold the read / write head 22 in a position where it has left the disk 11.
[0038] During a read operation, head IC24 amplifies the signal read by head 22 from disk 11 and outputs it to RWC25. Additionally, during a write operation, head IC24 amplifies the signal corresponding to the data to be written provided from RWC25 and provides it to head 22.
[0039] HDC23 controls data transmission and reception between the HDC23 and the host 2 via the I / F bus, controls the buffer memory 29, and performs error correction processing on the read data.
[0040] The buffer memory 29 is used as a cache for data sent and received between the host 2 and the host 2. For example, the buffer memory 29 is used to temporarily store data to be written or data read from the disk 11.
[0041] The buffer memory 29 may be composed of, for example, a volatile memory capable of high-speed operation. The type of memory constituting the buffer memory 29 is not limited to a specific type. The buffer memory 29 may be composed of, for example, DRAM (Dynamic Random Access Memory), SRAM (Static Random Access Memory), or a combination thereof. Furthermore, the buffer memory 29 may also be composed of any non-volatile memory.
[0042] RWC25 modulates the data to be written from HDC23 and provides it to head IC24. Additionally, RWC25 demodulates the signals read from disk 11 and provided by head IC24, and outputs them as digital data to HDC23.
[0043] Temperature sensor 17 detects the temperature of disk drive 1 during operation. The temperature detected by temperature sensor 17 is used to obtain the third postcode.
[0044] Processor 26 is a circuit that operates according to computer software programs. Processor 26 is, for example, a CPU (Central Processing Unit). RAM 27, FROM (Flash Read Only Memory) 28, buffer memory 29, and temperature sensor 17 are connected to processor 26.
[0045] FROM 28 is a non-volatile memory. Firmware programs and various operational parameters are stored in FROM 28. Additionally, the firmware program can also be stored on disk 11.
[0046] RAM 27 is composed of, for example, DRAM, SRAM, or a combination thereof. RAM 27 is used by the processor 26 as its working memory. RAM 27 is used as an area for loading firmware programs and as an area for temporarily storing various management data.
[0047] The processor 26 performs overall control of the disk device 1 according to the firmware program stored in the FROM 28 or the disk 11. For example, the processor 26 loads the firmware program from the FROM 28 or the disk 11 into the RAM 27, and executes the control of the motor driver IC 21, head IC 24, RWC 25, HDC 23, etc. according to the loaded firmware program.
[0048] Furthermore, the configuration including HDC23, RWC25, and processor 26 can also be considered as controller 30. Controller 30 may also include other elements (such as RAM27, FROM28, or buffer memory 29, etc.).
[0049] In addition, some or all of the functions of the processor 26 can also be implemented by hardware circuits such as FPGA (Field-Programmable Gate Array) or ASIC (Application Specific Integrated Circuit).
[0050] Figure 2 This is a schematic diagram illustrating an example of the configuration of the disk 11 in the embodiment. Furthermore, this figure shows an example of the rotation direction of the disk 11. The read / write head 22 moves relative to the disk 11 as the disk 11 rotates. Therefore, the direction in which data is written or read by the read / write head 22 along the write / read direction, i.e., the circumferential direction, is the opposite direction to the rotation direction of the disk 11.
[0051] In disk 11, servo data used for positioning the read / write head 22 is written during the manufacturing process, for example, via a servo writer or self-servo write (SSW). Figure 2 As an example of the configuration of servo regions where servo data is written, multiple servo regions SV are formed, arranged radially in the radial direction and spaced at predetermined intervals in the circumferential direction. A data region DA, where data is written, is arranged between two consecutive servo regions SV in the circumferential direction.
[0052] Multiple concentric tracks 41 are defined in the radial direction of the disk 11. Multiple data sectors are continuously formed along each track 41 in the data area DA. Servo data written in the servo area SV is used to position the read head 22's read / write head 22r or write head 22w on the target track 41. With the read head 22r or write head 22w positioned on the target track 41, user data is written to or read from the target data sector. The area on track 41 distinguished by the servo area SV is then recorded as the servo sector SV.
[0053] Figure 3 This diagram illustrates an example of servo data written to the servo sector SV according to an implementation method. In this example, the servo sector SV is written in the write / read direction in the following order: preamble, servo flag, sector address, cylinder address, burst pattern, first postcode, and second postcode.
[0054] Furthermore, the positional relationships in the circumferential direction are defined. When first data and second data are written along the write / read direction, and the first data is written to a region that is read before the second data, the direction from the region where the second data was written towards the region where the first data was written is defined as "in front" of the region where the second data was written. Conversely, the direction from the region where the first data was written towards the region where the second data was written is defined as "behind" the region where the first data was written. When referring to the first region as "the second region immediately preceding it," "the second region immediately preceding it" is defined as the second region that the read / write head 22 passes through last, before passing through the first region. When referring to the first region as "the second region immediately following it," "the second region immediately following it" is defined as the second region that the read / write head 22 first passes through, after passing through the first region.
[0055] The preamble is a signal used to synchronize the reproduction signal of the servo pattern. The servo marker indicates the start of servo data. The sector address is an ID used to identify each servo sector (SV) on track 41. The cylinder address is an ID used to identify each track 41 on disk 11. The burst pattern is data used to detect the positional deviation of the read / write head 22 relative to the center of track 41 in the radial direction, and consists of a repeating pattern with a predetermined period. For example, the cylinder address is provided as an integer value, and by demodulating the burst pattern, the offset amount below the decimal point, based on the position represented by the cylinder address, can be obtained.
[0056] The first and second postcodes are used to correct the RRO (Revision Order). The first postcode is the component in the postcode generated during manufacturing (i.e., during the manufacturing process) that relates to the order that varies with temperature. The second postcode is the component in the postcode generated during manufacturing that relates to the order that does not vary with temperature.
[0057] In addition, the correction of RRO, that is, the application of postcode to the position command value representing the target position for positioning, is recorded as RRO correction.
[0058] The set of the first and second postcodes recorded in each servo sector SV is typically used for RRO correction at the position of the immediately following servo sector SV. However, the set of the first and second postcodes recorded in each servo sector SV can also be used for RRO correction at the position of servo sector SVs two or more servo sector SVs that follow.
[0059] Alternatively, a servo sector SV may contain one or more sets of first and second postcodes used in RRO corrections at various locations in subsequent servo sector SVs.
[0060] In this way, a single servo sector SV can store a group of the first and second postcodes used for RRO correction at a specific location within that servo sector SV. Alternatively, a single servo sector SV can record more than one group of the first and second postcodes.
[0061] Next, the operation of the disk device 1 according to the first embodiment will be described.
[0062] Figure 4 This is a flowchart illustrating an example of the operation of the disk drive 1 according to the first embodiment during manufacturing. In the manufacturing process, firstly, the disk drive 1 is assembled, and servo data, excluding the first and second postcodes, is recorded. Then, the disk drive 1 records the first and second postcodes through a series of actions shown in this diagram. This is performed under the control of the controller 30. Figure 4 The series of actions shown. In one example, processor 26 is implemented based on firmware. Figure 4 The series of actions shown. To achieve. Figure 4 The firmware program for the series of actions shown can be included in the firmware program used by the end user when using disk device 1, or it can be different from the firmware program used by the end user when using disk device 1. Furthermore, Figure 4 Some or all of the actions shown can also be implemented by components other than processor 26, such as HDC23.
[0063] First, the controller 30 measures the RPE (S101). The controller 30 measures the sensitivity function of the servo system (S102). The controller 30 calculates the RRO by applying the inverse characteristic of the sensitivity function to the measured RPE value (S103).
[0064] Next, the controller 30 records the temperature-dependent order component in the RRO as the first postcode to the servo sector SV (S104). Furthermore, the temperature-dependent order is preset by the designer. Alternatively, the controller 30 can obtain the temperature-dependent order by measurement or calculation before S104.
[0065] The controller 30 records the remaining order components in RRO as the second postcode to the servo sector SV (S105).
[0066] In addition, the controller 30 performs the processes S101 to S105 for all servo sectors SV.
[0067] The controller 30 records the temperature during the processing of S101 to S105, i.e., the manufacturing temperature, in a non-volatile manner at a predetermined location (S106). The recording location for the manufacturing temperature can be either FROM 28 or disk 11. The manufacturing temperature can also be added to the firmware program.
[0068] In the factory or manufacturing facility performing processes S101 to S105, the ambient temperature is controlled to a predetermined temperature. The controller 30 may also obtain the manufacturing temperature via input from the manufacturing facility or the manufacturer. Alternatively, the controller 30 may obtain the manufacturing temperature via the temperature sensor 17.
[0069] Subsequently, the manufacturing temperature recorded through the processing of S106 will be recorded as the manufacturing temperature Ti.
[0070] When S106 is completed, the operation of the disk device 1 of the first embodiment during manufacturing ends.
[0071] Figure 5 This is a flowchart illustrating an example of the operation of the disk device 1 in the first embodiment when accessing the disk 11. Access to the disk 11 includes either writing or reading data. That is, it can be performed in both the writing and reading operations of the disk 11. Figure 5 The series of actions shown.
[0072] The controller 30 (e.g., RWC25) demodulates the servo data (S201). The controller 30 performs RRO correction on the position command value based on the demodulated servo data (S202). Under positioning control with RRO correction applied, the controller 30 accesses the data area DA (S203).
[0073] In S202, RRO correction is performed based on the postcodes (first postcode and second postcode) demodulated from the immediately preceding servo sector SV. Furthermore, as mentioned above, the relationship between the servo sector SV of the postcode reading source and the servo sector SV at the position where RRO correction is performed is not limited to this.
[0074] Next, the controller 30 determines whether the access was successful (S204). If the access was successful (S204: Yes), the controller 30 ends the access operation for the aforementioned data area DA.
[0075] Furthermore, in the case of reading, a successful access means successfully retrieving error-free data from the data area DA. For example, controller 30 has an error correction function. Controller 30 performs error correction on the data retrieved from the data area DA. If error-free data can be obtained as a result, the read is considered successful. If error correction cannot be performed, controller 30 determines that the read has failed.
[0076] Furthermore, in the case of writing, a successful access is, for example, defined as a small deviation of the write position from the center of track 41 in the radial direction. If this deviation is less than a predetermined minimum value, the controller 30 determines that the write operation has been successful. If the deviation exceeds the predetermined minimum value, the controller 30 determines that the write operation has failed.
[0077] Furthermore, the method for determining whether an access has been successful is not limited to the examples mentioned above.
[0078] If the access fails (S204: No), the controller 30 can re-execute the processes of S201 to S204. Re-execution of the processes of S201 to S204 is called a retry access. However, there is an upper limit to the number of times a retry access can be performed. This upper limit is recorded here as the first threshold. The first threshold is an integer value greater than or equal to 0. The number of retry accesses can be counted by data sector, by servo sector SV, or by track 41.
[0079] If the access fails (S204: No), the controller 30 determines whether the number of retry attempts has reached the first threshold (S205). If the number of retry attempts has not reached the first threshold (S205: No), control is transferred to S201. If the number of retry attempts has reached the first threshold (S205: Yes), the controller 30 executes the predetermined error handling (S206), and the access operation ends.
[0080] Furthermore, error handling is not limited to a specific process. For example, controller 30 can also notify host 2 that access has failed as an error handling procedure.
[0081] Figure 6 It means in Figure 5 A flowchart illustrating an example of the operation of the disk device 1 of the first embodiment, performed in the S202 process shown.
[0082] First, the controller 30 obtains the detected temperature from the temperature sensor 17 (S301). The detected temperature obtained in S301 is recorded as the detected temperature Td.
[0083] Next, the controller 30 determines whether the difference between the detected temperature Td and the manufacturing temperature Ti is greater than or equal to a predetermined value (S302). The predetermined value compared with the difference between the detected temperature Td and the manufacturing temperature Ti in S302 is recorded as a second threshold. In addition, the difference between the detected temperature Td and the manufacturing temperature Ti is recorded as Tdiff.
[0084] If Tdiff is greater than or equal to the second threshold (S302: Yes), the controller 30 obtains the second postcode as the third postcode (S303). If Tdiff is not greater than or equal to the second threshold (S302: No), the controller 30 obtains the sum of the first postcode and the second postcode as the third postcode (S304).
[0085] After S303 or S304, controller 30 performs RRO correction using the third postcode (S305), and the action ends.
[0086] Furthermore, the handling of the case where Tdiff equals the second threshold is not limited to... Figure 6 The example shown. If Tdiff is equal to the second threshold, controller 30 can also perform the processing of S304.
[0087] Furthermore, the execution timing of the process in S301 is not limited to the example described above. For example, the controller 30 may periodically obtain the temperature of the disk device 1, and in S202, the last obtained temperature is used as the detection temperature Td.
[0088] In addition, Figure 6 In the illustration, Tdiff not being above the second threshold is an example of case 1. Tdiff being above the second threshold is an example of case 2, where Tdiff is larger than case 1.
[0089] Figure 7 This is a block diagram illustrating an example of control for RRO correction involved in the first embodiment using the third postcode. Figure 6 The control shown in this diagram is executed in S305.
[0090] according to Figure 7 In the example shown, the current position of the read / write head 22 after movement, which is the output of VCM16, is subtracted from the position command value representing the target position by the adder 31. This provides feedback on the output of VCM16.
[0091] Next, the third postcode is subtracted from the output of the adder 31 by the adder 32. This corrects the position command value according to RRO.
[0092] The output of the adder 32 is processed by the predetermined filter 33 in the controller 30 and then sent to the VCM 16. The VCM 16 moves the magnetic head 22 to a position corresponding to the command value after RRO correction.
[0093] As described above, according to the first embodiment, a servo sector SV is formed in the disk 11, which records servo data including a first postcode and a second postcode. The first postcode is a component that depends on the temperature of the disk device 1, and the second postcode is a component that does not depend on the temperature of the disk device 1. In the first case, the controller 30 obtains the sum of the first postcode and the second postcode as the third postcode. In the second case, where the difference between the temperature detected by the temperature sensor and the temperature at which the first and second postcodes were generated is greater than in the first case, the controller 30 obtains the second postcode as the third postcode. Furthermore, the controller 30 uses the third postcode to correct the positioning of the read / write head 22.
[0094] When the temperature during postcode generation differs from the temperature during operation, the postcode that does not contain the first postcode, which is a cause of deterioration in positioning accuracy, is used as the third postcode. This suppresses the deterioration of positioning accuracy. In other words, a disk drive 1 with high accuracy in correcting the positioning error of the read / write head can be obtained.
[0095] (Second Implementation)
[0096] The algorithm for obtaining the third postcode based on the first and second postcodes and temperature can be modified in various ways. In the second embodiment, other examples of the algorithm for obtaining the third postcode will be described. Furthermore, other aspects of the operation for obtaining the third postcode are the same as in the first embodiment; therefore, in the description of the second embodiment, only the operation for obtaining the third postcode will be described.
[0097] Figure 8 It means in Figure 5 A flowchart illustrating an example of the operation of the disk device 1 of the second embodiment, performed in the S202 process shown.
[0098] like Figure 8 As shown, the operation involved in the second embodiment differs from that in the first embodiment in that the processing of S401 to S404 is performed instead of the processing of S303.
[0099] Specifically, when Tdiff is above the second threshold (S302: Yes), the controller 30 first calculates the temporarily used coefficient Ktmp based on the following equation (1) (S401). In the following equation (1), C is a real constant larger than the second threshold.
[0100] Ktmp=1-(Tdiff / C)···(1)
[0101] Then, controller 30 determines whether Ktmp is less than 0 (S402). If Ktmp is less than 0 (S402: Yes), controller 30 sets Ktmp to 0 (S403). If Ktmp is not less than 0 (S402: No), controller 30 skips the processing in S403.
[0102] Next, the controller 30 obtains the third postcode by multiplying the first postcode by Ktmp and adding the second postcode to the first postcode after the multiplication operation (S404).
[0103] If Tdiff is not above the second threshold (S302: No), the controller 30 obtains the sum of the first postcode and the second postcode as the third postcode (S304).
[0104] After S404 or S304, controller 30 performs RRO correction (S305) using the third postcode.
[0105] according to Figure 8 In the algorithms shown in S401 to S404, the coefficient Ktmp decreases from 1 to 0 as Diff increases from 0. Ktmp is multiplied by the first postcode, and the second postcode is added to the first postcode after the multiplication to obtain the third postcode. Based on this third postcode, as Tdiff increases, the amount of the component related to the first postcode in the third postcode decreases. Furthermore, when Tdiff is C or greater, the third postcode becomes equal to the second postcode.
[0106] Thus, the controller 30 can also be configured to: calculate the coefficient Ktmp as Diff increases from 0 and decreases from 1 to 0, multiply the first postcode by the coefficient Ktmp, add the second postcode to the first postcode after the multiplication operation, thereby obtaining the third postcode.
[0107] With the above configuration, the greater the difference (i.e., Tdiff) between the temperature during postcode generation and the temperature during operation, the more effectively the controller 30 can suppress the components of the first postcode that contribute to the deterioration of positioning accuracy. Therefore, it can suppress the deterioration of positioning accuracy. In other words, a disk drive 1 with high accuracy in correcting the positioning error of the read / write head can be obtained.
[0108] In addition, Figure 8 In the examples shown in S401 to S404, the controller 30 obtains the third postcode based on an algorithm in which the third postcode decreases linearly as Tdiff increases from 0. The amount of decrease in the third postcode may not necessarily be linear with respect to the amount of increase in Tdiff.
[0109] Furthermore, similar to the first embodiment, the processing when Tdiff is equal to the second threshold is not limited to... Figure 8 The example shown.
[0110] (Third Implementation)
[0111] In the third embodiment, another example of the algorithm for obtaining the third postcode will be described. Furthermore, other aspects of the operation for obtaining the third postcode are the same as in the first embodiment; therefore, in the description of the third embodiment, only the operation for obtaining the third postcode will be described.
[0112] Figure 9 It means in Figure 5 A flowchart illustrating an example of the operation of the disk device 1 of the third embodiment, performed in the S202 process shown.
[0113] In the third embodiment, the controller 30 obtains the third postcode based on the first and second postcodes, temperature, and the number of retry accesses. More specifically, even if Tdiff is above the second threshold, if the number of retry accesses is low, the controller 30 obtains the third postcode using the same method as when Tdiff is not above the second threshold. For example, if a third threshold smaller than the first threshold is set for the number of retry accesses, and Tdiff is above the second threshold and the number of retry accesses is above the third threshold, the controller 30 suppresses components of the first postcode.
[0114] like Figure 9 As shown, in the third embodiment, the processes S301 and S302 are performed in the same manner as in the first embodiment. Furthermore, if Tdiff is greater than or equal to the second threshold (S302: Yes), the controller 30 determines whether the number of retry access attempts is greater than or equal to the third threshold (S501). The third threshold is an integer value greater than or equal to 1 that is less than the first threshold. In this case, the first threshold is set to an integer value greater than or equal to 2.
[0115] If the number of retry access executions exceeds the third threshold (S501: Yes), the controller 30 obtains the second postcode as the third postcode (S303). If Tdiff does not exceed the second threshold (S302: No), or if the number of retry access executions does not exceed the third threshold (S501: No), the controller 30 obtains the sum of the first and second postcodes as the third postcode (S304).
[0116] After S303 or S304, controller 30 performs RRO correction using the third postcode (S305), and the action ends.
[0117] In addition, Figure 9 In the example shown, Tdiff not being above the second threshold or the number of retry accesses not being above the third threshold is an example of case 1. Tdiff being above the second threshold and the number of retry accesses being above the third threshold is an example of case 2, where Tdiff is larger than case 1 and the number of retry accesses is more than case 1.
[0118] Furthermore, similar to the first embodiment, the processing when Tdiff is equal to the second threshold is not limited to... Figure 9 The example shown.
[0119] Thus, in the first case, controller 30 obtains the sum of the first postcode and the second postcode as the third postcode. In the second case, where Tdiff is larger than in the first case and the number of retry accesses is greater than in the first case, controller 30 obtains the second postcode as the third postcode.
[0120] For example, in cases where the positional deviation related to temperature-dependent components in the RRO varies complexly with temperature, it may sometimes be impossible to achieve accurate positioning using the third postcode acquisition method of the first or second embodiment. In the third embodiment, even if Tdiff is above the second threshold, if the number of retry access attempts is less than a baseline, the controller 30 acquires the third postcode using the same method as when Tdiff is below the second threshold. Furthermore, when the number of retry access attempts increases, that is, when access is difficult using the third postcode obtained from the sum of the first and second postcodes, the controller 30 acquires the third postcode using other methods. In other words, when Tdiff becomes above the second threshold, retry access can be performed using the third postcode obtained through two different methods. Thus, the probability of successful access is increased when the positional deviation related to temperature-dependent components in the RRO varies complexly with temperature.
[0121] Furthermore, in the third embodiment, in the second case, the controller 30 can also be configured as described in the second embodiment. Figure 8 The method shown in S401 to S404 is used to obtain the third postcode. That is, the controller 30 can also be configured such that, in the second case, the coefficient Ktmp is calculated as Diff increases from 0 and decreases from 1 to 0, the first postcode is multiplied by the coefficient Ktmp, and the second postcode is added to the first postcode after the multiplication operation, thereby obtaining the third postcode.
[0122] Generally, more precise positioning is required for writing operations compared to reading operations. Therefore, when the techniques described in the first, second, and third embodiments are applied to the write operation, the improved positioning precision yields significant results. Furthermore, the techniques described in the first, second, and third embodiments can be applied to writing data to the disk 11, reading data from the disk 11, or both.
[0123] Furthermore, in the first, second, and third embodiments, the first postcode is described as a temperature-dependent order component in the postcode generated based on RRO, and the second postcode is a temperature-independent order component in the postcode generated based on RRO. The postcode generated based on RRO does not necessarily need to be distinguished into temperature-dependent and temperature-independent components on an order-by-order basis. Components related to a single order can also be distinguished into temperature-dependent and temperature-independent components. That is, the controller 30 can also record the temperature-dependent component in the postcode generated based on RRO as the first postcode in the servo sector SV, and record the temperature-independent component in the postcode generated based on RRO as the second postcode in the servo sector SV.
[0124] Furthermore, the definitions of the first and second postcodes are not limited to the examples described above, as long as the temperature-dependent and temperature-independent components can be determined through simple calculations based on the first and second postcodes. For example, the controller 30 may also record the temperature-dependent components in the postcode generated based on RRO as the first postcode and record the postcode generated based on RRO as the second postcode. In that case, the controller 30 can obtain the temperature-independent components contained in the postcode generated based on RRO by subtracting the first postcode from the second postcode. The controller 30 may also be configured to use the postcode obtained by subtracting the first postcode recorded in the servo sector SV from the second postcode recorded in the servo sector SV as the action to obtain the third postcode (e.g., Figure 6 , Figure 8 or Figure 9 The second postcode in the action shown.
[0125] As described in the first, second, and third embodiments, the controller 30 is configured to correct the positioning of the read / write head 22 using a third postcode based on the first and second postcodes and the temperature detected by the temperature sensor 17. This allows for a disk drive 1 with high accuracy in correcting the positioning error of the read / write head 22.
[0126] Several embodiments of the present invention have been described above, but these embodiments are merely illustrative and not intended to limit the scope of the invention. These new embodiments can be implemented in a variety of other ways, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and / or variations thereof are included within the scope and spirit of the invention, and are included within the scope of the invention as described in the claims and its equivalents.
Claims
1. A disk drive, comprising: A disk having servo sectors that record servo data including a first postcode and a second postcode; magnetic head; Temperature sensor; and The controller, during the positioning of the magnetic head, uses a third postcode based on the first postcode, the second postcode, and a first temperature for correction, wherein the first temperature is the temperature detected by the temperature sensor. The controller stores a second temperature and obtains a third postcode based on the first postcode, the second postcode, and the difference between the first temperature and the second temperature. The second temperature is the temperature of the disk device when the first postcode and the second postcode were generated.
2. The disk drive according to claim 1, The first postcode is a temperature-dependent component of the disk device. The second postcode is a temperature-independent component of the disk device. The controller In the first case, the sum of the first postcode and the second postcode is used as the third postcode. In the second case, where the difference is larger than in the first case, the second postcode is obtained as the third postcode.
3. The disk drive according to claim 1, The first postcode is a temperature-dependent component of the disk device. The second postcode is a temperature-independent component of the disk device. The controller calculates a coefficient that decreases from 1 to 0 as the difference increases from 0, multiplies the first postcode by the coefficient, and adds the second postcode to the first postcode after the multiplication operation, thereby obtaining the third postcode.
4. A disk drive, comprising: A disk having servo sectors that record servo data including a first postcode and a second postcode; magnetic head; Temperature sensor; and The controller, during the positioning of the magnetic head, uses a third postcode based on the first postcode, the second postcode, and a first temperature for correction, wherein the first temperature is the temperature detected by the temperature sensor. The controller obtains the third postcode based on the first postcode and the second postcode, the first temperature, and the number of times the write or read operations on the disk are re-executed.
5. The disk drive according to claim 4, The controller stores a second temperature and obtains a third postcode based on the first postcode and the second postcode, the difference between the first temperature and the second temperature, and the number of re-executions. The second temperature is the temperature of the disk device when the first postcode and the second postcode were generated.
6. The disk drive according to claim 5, The first postcode is a temperature-dependent component of the disk device. The second postcode is a temperature-independent component of the disk device. The controller In the first case, the sum of the first postcode and the second postcode is used as the third postcode. In the second case, where the difference is larger than in the first case and the number of re-executions is greater than in the first case, the second postcode is obtained as the third postcode.
7. The disk drive according to claim 5, The first postcode is a temperature-dependent component of the disk device. The second postcode is a temperature-independent component of the disk device. The controller In the first case, the sum of the first postcode and the second postcode is used as the third postcode. In the second case, where the difference is larger than in the first case and the number of re-executions is greater than in the first case, a coefficient is calculated that decreases from 1 to 0 as the difference increases from 0. The first postcode is multiplied by the coefficient, and the second postcode is added to the first postcode after the multiplication operation to obtain the third postcode.
8. The disk drive according to claim 2, 3, 6 or 7, The first postcode is a component of an order dependent on the temperature of the disk device. The second postcode is a component of order independent of the temperature of the disk device.