Magnetic disk device
By using a counter to increment the counting method in the disk device, it is determined whether the track count value difference in the medium cache area reaches the threshold, which solves the problem of data reading difficulties caused by adjacent track interference, and achieves the effect of shortening the write processing time and improving the data writing efficiency.
Patent Information
- Application Number
- CN202410291555.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-11-16
- Filing Date
- 2024-03-14
- Publication Date
- 2025-05-16
AI Technical Summary
When existing disk devices write data to the media cache area, adjacent track interference (ATI) is prone to occur, resulting in difficulty in reading data and need to be refreshed to repair the data.
By using the counter increment counting method, it is determined whether the count value difference of multiple tracks in the medium cache area reaches the threshold value. If the threshold value is reached, the original data written to the data will be returned to the protection object, and data protection processing is performed to avoid additional writes.
It effectively shortens the write processing time to the media cache area, improves data writing efficiency, and reduces data reading difficulties caused by ATI.
Smart Images

Figure CN120010754A_ABST
Abstract
Description
[0001] This application enjoys the priority of Japanese patent application No. 2023-195216 filed on November 16, 2023, and all the contents of the Japanese patent application are cited in this application. Technical Field
[0002] This embodiment generally relates to a magnetic disk device. Background Art
[0003] As magnetic disk devices, there are known conventional recording (Conventional Magnetic Recording: CMR) type (or previous recording type) magnetic disk devices that write to multiple tracks at intervals in the radial direction of the disk, shingled recording (Shingled write Magnetic Recording: SMR, or Shingled Write Recording: SWR) type magnetic disk devices that write to multiple tracks in an overlapping manner in the radial direction of the disk, and hybrid recording type magnetic disk devices that select and execute conventional recording type and shingled recording type.
[0004] The disk has a media cache area. Write data received by the magnetic disk device from the host device is temporarily written into the media cache area.
[0005] ATI (Adjacent Track Interference) is known as an adverse effect on adjacent tracks when data is written to a disk track. It becomes difficult to read data from a track that is greatly adversely affected by ATI. Therefore, before data reading becomes difficult, a refresh process is performed to read data from the track and rewrite the data to the track to repair the data on the track. Summary of the invention
[0006] One embodiment relates to a magnetic disk device, which comprises: a disk having a medium cache area in a recording layer, the medium cache area including a plurality of tracks continuous in a radial direction; a head for writing data to the recording layer of the disk and reading data from the recording layer; a volatile buffer memory to which write data including a write instruction and user data corresponding to the write instruction is written; a non-volatile memory; a main power supply; and a control unit, the control unit comprising: a write processing unit for controlling a write process of writing data to the recording layer; a management unit for including, among the write data written to the buffer memory, the write data before being written to the medium cache area in a protection object and excluding the write data after being written to the medium cache area from the protection object; a data protection processing unit for transferring the write data managed by the management unit as the protection object to the non-volatile memory when the main power supply is lost; and a counter for incrementing the count value of each of the tracks in the medium cache area. up) is capable of incrementing the count value of the track adjacent to the track where the write data is written, each time the write data is written to the medium cache area; and a judgment unit, which judges whether the difference between the maximum value and the minimum value among the multiple count values of the multiple tracks of the medium cache area has reached a threshold value, and when the judgment unit judges that the difference has reached the threshold value, the management unit returns the write data of the buffer memory as the original data of the write data of the track whose count value among the multiple tracks has become the maximum value to the protection object.
[0007] According to one embodiment, it is possible to provide a magnetic disk device capable of shortening the time required for a write process to a medium cache area. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Figure 1 This is a block diagram showing the structure of a magnetic disk device according to one embodiment.
[0009] Figure 2 This is a perspective view showing a part of the magnetic disk device, and is a view showing a plurality of disks and a plurality of heads.
[0010] Figure 3 This is a schematic diagram showing an example of the arrangement of a plurality of servo areas and a plurality of data areas on one disk according to the above-mentioned embodiment.
[0011] Figure 4 It is shown Figure 3 FIG. 1 is a schematic diagram of three tracks and a write head in a user data area of a disk that undergoes shingled recording.
[0012] Figure 5 It is shown Figure 3 The diagram shows three tracks and a write head in the medium cache area of the disk during normal recording processing.
[0013] Figure 6 It is shown Figure 3 The enlarged top view of the disk shown is a diagram showing four media cache areas and four user data areas, etc.
[0014] Figure 7 It is shown Figure 6 The top view of the disk shown is an enlarged view showing multiple tracks of a media cache area.
[0015] Figure 8 It is shown Figure 7 The top view of the disk shown is a diagram for explaining an example in which, when write data 1, write data 2, and write data 3 are received in sequence, write data 1, write data 2, and write data 3 are written in sequence without reordering.
[0016] Fig. 9 It is shown Figure 7 The top view of the disk shown is a diagram for explaining an example in which, when write data 1, write data 2, and write data 3 are received in sequence, write data 1, write data 3, and write data 2 are reordered and written in sequence.
[0017] Fig.10 It is shown Figure 1 The diagram showing a part of the management table is a diagram showing a plurality of count values and the like of the medium cache area of the first recording layer.
[0018] Fig.11 It is shown Fig.10 The diagram of a plurality of count values of one media cache area in the management table shown reflects the result of continuously writing write data to the fourth track without determining whether the difference has reached the threshold value.
[0019] Fig.12 It is shown Fig.10 The diagram of a plurality of count values and the like of one medium cache area in the management table shown reflects the result of writing the write data to the fourth track.
[0020] Fig.13 It is shown from Fig.12 The diagram showing the state of the management table after a certain period of time has passed reflects the result of writing data to the fourth track.
[0021] Fig.14 It reflects the Fig.13The state of the management table shown is a diagram in which time has passed since the original data written in the 5th track was returned to the protected object and the 5th track is regarded as a free track.
[0022] Fig.15 It reflects the Fig.14 The state of the management table shown is a diagram in which time has passed since the original data of the write data of the 7th track was written into the user data area and the 7th track is regarded as a free track.
[0023] Fig.16 is shown with Fig.15 The diagrams of different examples reflect the Fig.14 The state of the management table shown is a diagram in which time has passed since the integrated write data generated by garbage collection using the original data of the write data of the 7th track was written to the 3rd track, and the 7th track is regarded as a free track.
[0024] Description of symbols
[0025] 1…Disk device, 5…Main power supply, 20…Driver IC, 30…Head amplifier IC, 70…Volatile memory, 80…Non-volatile memory, 90…Buffer memory, 91…Write cache, 92…Read cache, DK…Disk, L…Recording layer, M…Medium cache area, CTR…Track, U…User data area, 130…System controller, 40…R / W channel, 50…HDC, 60…MPU, 61…Read / write processing unit, 61a… Write processing unit, 61b…read processing unit, 62…write processing unit, 62…management unit, 63…data protection processing unit, 64…counter, 65…judgment unit, 66…write data selection processing unit, 67…write data integration processing unit, 68a…instruction selection processing unit, 68b…instruction execution unit, 68c…instruction response processing unit, HD…head, WHD…write head, RHD…read head, TL…management table, d1…radial direction, d2…travel direction, d3…rotation direction. DETAILED DESCRIPTION
[0026] (One embodiment)
[0027] Hereinafter, a magnetic disk device 1 according to an embodiment will be described with reference to the drawings. Figure 1 1 is a block diagram showing the structure of the magnetic disk device 1 according to the present embodiment. In the present embodiment, the magnetic disk device 1 is a hybrid recording type magnetic disk device that selects and executes the normal recording type and the shingled recording type. However, the technology described below can also be applied to the normal recording type magnetic disk device.
[0028] like Figure 1As shown, the magnetic disk device 1 includes: a plurality of, for example, 1 to 10 disks (magnetic disks) DK as recording media, a main power supply 5, a spindle motor (SPM) 12 as a driving motor, a head stack assembly (hereinafter referred to as HDA) 15, a driver IC 20, a head amplifier integrated circuit (hereinafter referred to as head amplifier IC or preamplifier) 30, a volatile memory 70, a nonvolatile memory 80, a buffer memory (buffer) 90, and a system controller 130 as a single-chip integrated circuit. In addition, the magnetic disk device 1 is connected to a host device (hereinafter referred to as a host) 100.
[0029] Each disk DK is formed to have a diameter of, for example, 97 mm (3.8 inches), and has recording layers (magnetic recording layers) Y on both surfaces. In the present embodiment, the magnetic disk device 1 includes 1 to 11 disks DK, but the number of disks DK is not limited thereto.
[0030] HDA15 has a disk DK, a spindle motor (hereinafter referred to as SPM) 12, an arm 13 equipped with a head HD, and a voice coil motor (hereinafter referred to as VCM) 14. The disk DK is mounted on the SPM12 and rotated by the drive of the SPM12. The arm 13 and the VCM14 constitute an actuator. The actuator can control the head HD mounted on the arm 13 to move to a predetermined position of the disk DK by the drive of the VCM14, that is, it can perform seek. In this embodiment, the magnetic disk device 1 can also have multiple disks DK and multiple heads HD.
[0031] The disk DK allocates a user data area U that can be used by the user, a medium cache area (or sometimes also called a medium cache) M that temporarily holds the data (or instructions) transmitted from the host 100, etc. before writing the data (or instructions) to a predetermined area of the user data area U, and a system area S for writing information required for system management.
[0032] Hereinafter, the direction from the inner circumference toward the outer circumference of the disk DK is referred to as the radial direction d1. In the direction parallel to the radial direction d1, the direction from the inner circumference toward the outer circumference is referred to as the outer direction (outer side), and the direction from the outer circumference toward the inner circumference is referred to as the inner direction (inner side). The direction orthogonal to the radial direction d1 of the disk DK is referred to as the circumferential direction or the circumferential direction. The circumferential direction is equivalent to the direction along the circumference of the disk DK.
[0033] In addition, the predetermined position in the radial direction d1 of the disk DK is sometimes referred to as a radial position, and the predetermined position in the circumferential direction of the disk DK is sometimes referred to as a circumferential position. The radial position and the circumferential position are sometimes referred to as positions. The radial position is equivalent to the distance from the rotation center of the disk DK to the predetermined radial position, the distance from the innermost circumference of the disk DK to the predetermined radial position, or the distance from the predetermined radial position of the disk DK to another radial position.
[0034] The head HD records and reproduces information on the disk DK. The head HD has a slider as its main body, and includes a write head WHD and a read head RHD mounted on the slider. The write head WHD writes data to the recording layer L of the disk DK. The read head RHD reads data from the data track of the recording layer L of the disk DK. Hereinafter, "writing data" may be referred to as "writing", "data writing", "writing processing", etc. "Reading data" may be referred to as "reading", "data reading", "reading processing", etc.
[0035] In addition, the write head WHD is sometimes referred to as head HD, the read head RHD is sometimes referred to as head HD, and the write head WHD and the read head RHD are sometimes collectively referred to as head HD. The center (center of gravity) of the head HD is sometimes referred to as head HD, the center (center of gravity) of the write head WHD is sometimes referred to as write head WHD, and the center (center of gravity) of the read head RHD is sometimes referred to as read head RHD.
[0036] Sometimes, the “center (center of gravity) of the write head WHD” is abbreviated as “head HD”, and sometimes, the “center (center of gravity) of the read head RHD” is abbreviated as “head HD”. Sometimes, “positioning the center of the head HD at the center of a predetermined track” is expressed as “positioning the head HD at the predetermined track”, “arranging the head HD at the predetermined track”, “locating the head HD at the predetermined track”, etc.
[0037] The system controller 130 includes a read / write (R / W) channel 40 , a hard disk controller (HDC) 50 , and a microprocessor (MPU) 60 as a control unit.
[0038] The driver IC 20 controls the driving of the SPM 12 and the VCM 14 under the control of the system controller 130 (more specifically, the MPU 60). The SPM 12 supports and rotates a plurality of disks DK.
[0039] The head amplifier IC (preamplifier) 30 includes a read amplifier and a write driver. The read amplifier amplifies the read signal read from the disk DK and outputs it to the system controller 130 (more specifically, the R / W channel 40). The write driver outputs a write current corresponding to the signal output from the R / W channel 40 to the write head WHD.
[0040] The volatile memory 70 is a semiconductor memory that loses the stored data when the power supply is cut off. The volatile memory 70 stores data required for processing in each part of the magnetic disk device 1, etc. The volatile memory 70 is a random access memory (RAM). The volatile memory 70 is, for example, a DRAM (Dynamic Random Access Memory). However, the volatile memory 70 may also be an SDRAM (Synchronous Dynamic Random Access Memory).
[0041] The nonvolatile memory 80 is a semiconductor memory that records stored data even when power supply is cut off. The nonvolatile memory 80 is, for example, a NAND type flash read only memory (FROM). However, the nonvolatile memory 80 may also be a NOR type FROM.
[0042] The buffer memory 90 is a semiconductor memory that temporarily stores data and the like transmitted and received between the magnetic disk device 1 and the host 100. In addition, the buffer memory 90 may be formed integrally with the volatile memory 70. The buffer memory 90 is a volatile RAM. For example, the buffer memory 90 is a DRAM, a SRAM (Static Random Access Memory), a SDRAM, a FeRAM (Ferroelectric Random Access Memory), an MRAM (Magnetoresistive Random Access Memory), or the like.
[0043] The buffer memory 90 includes an area used as a write cache 91 and an area used as a read cache 92. Write data including a write command and user data corresponding to the write command is written to the write cache 91, and the write cache 91 temporarily stores the write data. Read commands are written to the read cache 92, and the read commands are temporarily stored in the read cache 92.
[0044] The system controller (controller) 130 is implemented, for example, using a large-scale integrated circuit (LSI) called a system-on-a-Chip (SoC) in which a plurality of components are integrated on a single chip. The system controller 130 is electrically connected to, for example, the driver IC 20, the head amplifier IC 30, the volatile memory 70, the nonvolatile memory 80, the buffer memory 90, and the host 100.
[0045] The R / W channel 40 performs signal processing, such as modulation processing, demodulation processing, encoding processing, and decoding processing, of read data transmitted from the disk DK to the host 100 and write data transmitted from the host 100 according to instructions from the MPU 60 described later. The R / W channel 40 has a circuit or function for measuring the signal quality of the read data. The R / W channel 40 is electrically connected to the head amplifier IC 30, the HDC 50, the MPU 60, and the like.
[0046] The HDC 50 controls data transfer between the host 100 and the R / W channel 40 according to instructions from the MPU 60. The HDC 50 is electrically connected to the R / W channel 40, the MPU 60, the volatile memory 70, the nonvolatile memory 80, the buffer memory 90, and the like.
[0047] The main power supply 5 as the power supply of the magnetic disk device 1 is connected to the driver IC 20, the head amplifier IC 30, the R / W channel 40, the HDC 50, the MPU 60, the volatile memory 70, the nonvolatile memory 80, and the buffer memory 90. The driver IC 20, the head amplifier IC 30, the R / W channel 40, the HDC 50, the MPU 60, the volatile memory 70, the nonvolatile memory 80, and the buffer memory 90 are driven by the power supplied from the main power supply 5. The SPM 12 and the VCM 14 are driven by the power supplied from the main power supply 5 via the driver IC 20.
[0048] MPU60 is a main controller that controls each part of the magnetic disk device 1. MPU60 controls VCM14 via driver IC20 to perform servo control for positioning the head HD. In addition, MPU60 controls SPM12 via driver IC20 to rotate the disk DK. MPU60 controls the writing action of writing data to the disk DK and selects the storage destination of the written data. In addition, MPU60 controls the reading action of reading data from the disk DK and controls the processing of the read data. In addition, MPU60 manages the area for recording data. MPU60 is connected to each part of the magnetic disk device 1. MPU60 is electrically connected to driver IC20, R / W channel 40, HDC50, etc.
[0049] The MPU 60 includes a read / write processing unit 61, a management unit 62, a data protection processing unit 63, a counter 64, a judgment unit 65, a write data selection processing unit 66, a write data integration processing unit 67, an instruction selection processing unit 68a, an instruction execution unit 68b, and an instruction response processing unit 68c. The MPU 60 executes the processing of each of these units, such as the read / write processing unit 61, the management unit 62, the data protection processing unit 63, the counter 64, the judgment unit 65, the write data selection processing unit 66, the write data integration processing unit 67, the instruction selection processing unit 68a, the instruction execution unit 68b, and the instruction response processing unit 68c, on the firmware. In addition, the MPU 60 may also include these units as circuits.
[0050] The read / write processing unit 61 includes a write processing unit 61a and a read processing unit 61b. According to the instruction from the host 100, the write processing unit 61a controls the write processing of writing data to the recording layer L, and the read processing unit 61b controls the read processing of reading data from the recording layer L. The write processing unit 61a can perform the write processing of writing data to the recording layer L of the disk DK. The read processing unit 61b can perform the read processing of reading data from the recording layer L. The read / write processing unit 61 controls the VCM 14 via the driver IC 20, positions the head HD at the target position (predetermined radial position) on the disk DK, and performs the read processing or the write processing.
[0051] The management unit 62 can include, among the write data written to the buffer memory 90, the write data before being written to the medium cache area M in the protection target, and exclude the write data after being written to the medium cache area M from the protection target.
[0052] The data protection processing unit 63 can save the write data managed by the management unit 62 as protection targets to the nonvolatile memory 80 when the main power supply 5 is lost. The data protection processing unit 63 can perform power loss protection (PLP) processing to secure the write data as protection targets in the buffer memory 90.
[0053] The counter 64 can count up the count values of each track of the medium cache area M. The counter 64 can count up the count values of the tracks adjacent to the tracks where the write data is written, each time the write data is written to the medium cache area M. The counter 64 increases the count value by "1" each time the count is counted up. However, the counter 64 may increase the count value by "0.8" or "1.5" each time the count is counted up, and the incremented value is not particularly limited.
[0054] Furthermore, the nonvolatile memory 80 includes a management table TL that stores count values for respective tracks of the medium cache area M. However, the management table TL may include a storage medium or a storage area other than the nonvolatile memory 80 .
[0055] The determination unit 65 can determine whether the difference between the maximum value and the minimum value among the plurality of count values of the plurality of tracks in the medium cache area M has reached a threshold value.
[0056] The write data selection processing unit 66 can perform a reordering process of reordering the write data written to the buffer memory 90 .
[0057] The processing performed by the write data integration processing unit 67 will be described later.
[0058] The command selection processing unit 68 a can perform a reordering process of reordering a plurality of write commands of write data written into the buffer memory 90 .
[0059] The command execution unit 68b can execute the write command selected by the command selection processing unit 68a.
[0060] The processing performed by the command response processing unit 68c will be described later.
[0061] Next, a description will be given of a processing procedure when the determination unit 65 determines that the difference has reached the threshold value and the effect of the processing procedure.
[0062] When the determination unit 65 determines that the difference has reached the threshold, the management unit 62 can process as follows. That is, the management unit 62 can return the original data of the write data of the track whose count value has reached the maximum value among the multiple tracks of the medium cache area M, and the write data of the buffer memory 90 to the protection object. Specifically, the state of the original data of the buffer memory 90 can be returned to the protection object.
[0063] In other words, when the determination unit 65 determines that there is data of a track that is greatly affected by ATI (Adjacent Track Interference) in the medium cache area M, the data protection processing unit 63 can perform PLP processing with the management unit 62 on the write data of the buffer memory 90, which is the original data. By performing the PLP processing, the write data (original data) of the buffer memory 90 can be guaranteed, and the above-mentioned write data can be guaranteed without performing additional write processing to the medium cache area M. Therefore, the data protection processing unit 63 can quickly guarantee the above-mentioned write data together with the management unit 62. Furthermore, it can contribute to shortening the time required for the write processing to the medium cache area M.
[0064] Furthermore, since it is not necessary to forcibly write the original data of the track with a large influence of ATI into the user data area U as the home, the processing efficiency of the write process etc. can be improved.
[0065] When the determination unit 65 determines that the difference has reached the threshold, the counter 64 and the write processing unit 61a can process as follows. That is, the counter 64 resets the count value of the track with the maximum count value to the initial value. The write processing unit 61a can regard the track with the maximum count value as an empty track that can be overwritten.
[0066] In addition, the initial value is, for example, “0.” However, the initial value may be a numerical value other than “0.”
[0067] As described above, the write data (original data) of the buffer memory 90 is guaranteed by performing the PLP process, thereby indirectly guaranteeing the data of the track with a large influence of ATI in the medium cache area M. For example, there is no need to set write protection (prohibit writing to the track with a large influence of ATI and the track adjacent to the track) for the track with a large influence of ATI and the track adjacent to the track.
[0068] Since the write-prohibited area in the medium cache area M can be reduced, the amount of data that can be newly written from the buffer memory 90 to the medium cache area M can be increased. In addition, the number of candidates for tracks that can be written to among the plurality of tracks in the medium cache area M can be increased. In other words, since the degree of freedom in selecting a write destination in the medium cache area M can be increased, the restriction on the reordering process of the write data selection processing unit 66 can be relaxed. Furthermore, the amount of write data that can be guaranteed by the medium cache area M and the non-volatile memory 80 when the main power supply 5 is lost can be increased.
[0069] Next, the processing steps and effects of the write processing unit 61 a brought about by the reordering processing performed by the write data selection processing unit 66 will be described.
[0070] The write data selection processing unit 66 performs the reordering process, and the write processing unit 61a can write the write data selected by the write data selection processing unit 66 to the media cache area M. Since the write data can be written to the media cache area M after the reordering process, the overhead can be reduced.
[0071] Furthermore, when the reordering process is performed, the adverse effects of ATI are more likely to occur in the medium cache area M than when the reordering process is not performed (when writing sequentially). However, despite this, since the PLP process can be performed as described above, the problem of the adverse effects of ATI occurring can be well dealt with.
[0072] Next, the timing of the reordering process performed by the write data selection processing unit 66 and its effect will be described.
[0073] The management unit 62 can update the protected object every time the write data transferred from the host 100 is newly written (stored) in the buffer memory 90 and the management unit 62 returns the write data excluded from the protected object to the protected object. That is, the management unit 62 can update the protected object at any time.
[0074] The write data selection processing unit 66 can perform the reordering process every time the management unit 62 updates the protection target. Therefore, the write data selection processing unit 66 can always perform the reordering process.
[0075] Next, the processing steps of the write data integration processing unit 67 and the write processing unit 61 a and the effects of the processing steps when the determination unit 65 determines that the difference has reached the threshold value will be described.
[0076] When the determination unit 65 determines that the difference has reached the threshold, the write data integration processing unit 67 can generate integrated write data by integrating (merging) the head write data to be selected next by the write data selection processing unit 66 and the write data as the original data. In addition, the write processing unit 61a can write the integrated write data including the head write data selected by the write data selection processing unit 66 to the medium cache area M.
[0077] Therefore, compared with the case where the writing of the leading write data to be selected next by the write data selection processing unit 66 and the writing of the write data as the original data to the media cache area M are performed separately without generating the above-mentioned integrated write data, the time required for the write processing to the media cache area M can be shortened.
[0078] Furthermore, by repeatedly performing the above processing steps, the writable area of the medium cache area M is not easily saturated, and write data can be written to the optimal area (the area that can always be accessed at the highest speed) of the medium cache area M. Therefore, it is possible to achieve both suppressing the deterioration of write performance and ensuring write data.
[0079] Next, the processing steps of the command response processing unit 68c and the effects of the processing steps will be described.
[0080] The magnetic disk device 1 has a write cache function for reporting a status indicating that the execution of the write command has been completed at the time when write data including the write command and user data is received from the host 100. When the write cache function is enabled (Write Cache Enable), the command response processing unit 68c can report to the host 100 a status indicating that the execution of the write command has been completed at the time when the write data is written to the buffer memory 90 (write cache 91).
[0081] On the other hand, when the write cache function is disabled (Write Cache Disable), the instruction response processing unit 68c can write user data to the user data area U after writing the write data to the buffer memory 90 (write cache 91), and report to the host 100 at the time point when the user data is guaranteed that the execution of the write instruction has been completed.
[0082] However, in this embodiment, since the PLP process is performed before writing the user data to the user data area U as the home location, the write data is guaranteed at the time point when the PLP process is performed. Therefore, it is preferable to report to the host 100 the status indicating that the execution of the write command has been completed without waiting for the user data to be written to the user data area U.
[0083] That is, when the management unit 62 includes the write data in the protection object, the command response processing unit 68c preferably reports to the host 100 the status that the execution of the write command indicating the write data of the protection object has been completed. Thus, the time for reporting the above status to the host 100 can be advanced. The host 100 can recognize that the writing to the medium of the magnetic disk device 1 has been completed.
[0084] Next, a description will be given of a process of writing user data into the user data area U and the effects of the process.
[0085] The write data written to the buffer memory 90 (write cache 91) includes first write data including a first write command and first user data corresponding to the first write command.
[0086] After the first write data read from the buffer memory 90 is written into the medium cache area M, the command execution unit 68 b , the write processing unit 61 a , and the management unit 62 can perform the following processing.
[0087] That is, the command execution unit 68b executes the first write command selected by the command selection processing unit 68a.
[0088] The write processing unit 61 a writes the first user data read from the buffer memory 90 to the user data area U, and then regards the area in the medium cache area M where the first write data remains as an overwriteable free area.
[0089] The management unit 62 regards the area in the buffer memory 90 where the first write data remains as a free area that can be overwritten.
[0090] As described above, by writing the first user data into the user data area U as the home location, the free capacity of the medium cache area M and the free capacity of the buffer memory 90 can be increased.
[0091] Next, the processing steps of treating the tracks of the medium cache area M as free tracks and resetting the count value and the effects of the above processing steps are described.
[0092] When the PLP process is performed, the write processing unit 61a regards the tracks of the medium cache area M as free tracks as described above. In addition, the write processing unit 61a can also regard the tracks of the medium cache area M as free tracks when the user data is written to the user data area U as the home.
[0093] For example, when the write processing unit 61a regards the entire area of the track where the first write data remains in the medium cache area M as a free area, the counter 64 can reset the count value of the track where the first write data remains to the initial value.
[0094] In this example as well, the amount of write data that can be guaranteed by the media cache area M and the nonvolatile memory 80 when the main power source 5 is lost can be increased.
[0095] Next, a description will be given of a process for counting up the count value by the counter 64 and the effects of the process.
[0096] Each track of the media cache area M is an idle track in which write data is not written, an idle track in which write data is written and overwriting is permitted, or a valid track in which write data is written and overwriting is prohibited.
[0097] An unused (initial) track to which write data has not been written once corresponds to a free track to which no write data has been written.
[0098] Tracks having only write data that is either (1) write data guaranteed by the PLP process or (2) write data written to the user data area U correspond to free tracks where write data is written and overwriting is permitted.
[0099] Tracks having write data that have not been written to the user data area U correspond to valid tracks in which write data is written and overwriting is prohibited.
[0100] The counter 64 includes the valid tracks in the objects for which the count value is incremented, and excludes the idle tracks from the objects for which the count value is incremented. In other words, the counter 64 includes the tracks for which errors due to ATI are to be avoided during reading in the objects for which the count value is incremented. Thus, the extent to which the adverse effects of ATI affect each track in the medium cache area M can be accurately understood, and the PLP processing can be performed at a desired timing.
[0101] Here, depending on the position of the first track where write data is written in the medium cache area M, there is a case where the count value of two tracks is counted up, and a case where the count value of one track is counted up.
[0102] The track adjacent to and located on the inner side of the first track of the medium cache area M is referred to as the inner track. The track adjacent to and located on the outer side of the first track of the medium cache area M is referred to as the outer track.
[0103] In the case where the first track does not correspond to either the innermost track or the outermost track of the medium cache area M, the medium cache area M includes both the inner track and the outer track, and the counter 64 can increment the count value of the inner track and the count value of the outer track respectively when write data is written to the first track.
[0104] When the first track corresponds to the innermost track of the medium cache area M, the medium cache area M includes an outer track, the inner track is a protection track, and the counter 64 can increment the count value of the outer track when write data is written to the first track.
[0105] Similarly, when the first track corresponds to the outermost track of the medium cache area M, the medium cache area M includes an inner track, and the outer track is a protection track. The counter 64 can increment the count value of the inner track when write data is written to the first track.
[0106] Next, the capacity of each of the nonvolatile memory 80 and the buffer memory 90 will be described.
[0107] The nonvolatile memory 80 has, for example, a recording capacity of 4 MiB as a recording capacity of several MiB. On the other hand, the buffer memory 90 has, for example, a recording capacity of 256 MiB as a recording capacity of several hundred MiB. The recording capacity of the nonvolatile memory 80 is smaller than the recording capacity of the buffer memory 90. Therefore, it is difficult to transfer all the written data of the buffer memory 90 to the nonvolatile memory 80.
[0108] At any timing after writing the write data to the buffer memory 90, the write data included in the protection target by the management unit 62 is within the range that can be transferred to the nonvolatile memory 80. Therefore, the management unit 62 can include only the amount of data that can be transferred to the nonvolatile memory 80 in the protection target.
[0109] Next, the processing steps of the data protection processing unit 63 when the main power supply 5 is restored and the effects of the processing steps will be described.
[0110] When the main power supply 5 is restored after the main power supply 5 is lost, the data protection processing unit 63 can perform the following processing. That is, the data protection processing unit 63 can write the write data transferred to the non-volatile memory 80 and the write data written to the medium cache area M to the buffer memory 90, and restore the write data in the buffer memory 90. As a result, the magnetic disk device 1 can continue processing using the write data restored in the buffer memory 90.
[0111] Figure 2 1 is a perspective view showing a part of the magnetic disk device 1, and is a view showing a plurality of disks DK and a plurality of heads HD. Figure 2 In the figure, the illustration of the medium cache area M is omitted.
[0112] like Figure 2 As shown in FIG. 1 , in the circumferential direction of the disk DK, the direction in which the disk DK rotates is referred to as the rotation direction d3. Figure 2 In the example shown, the rotation direction is shown as counterclockwise, but it may be the opposite direction (clockwise). In addition, the travel direction d2 of the head HD relative to the disk DK is opposite to the rotation direction d3. The travel direction d2 is the direction in which the head HD sequentially writes and reads data relative to the disk DK in the circumferential direction, that is, the direction in which the head HD travels relative to the disk DK in the circumferential direction.
[0113] The magnetic disk device 1 includes i disks DK1 to DKi and j heads HD1 to HDj. In the present embodiment, the number of heads HD is twice the number of disks DK (j=2×i).
[0114] The disks DK1 to DKi are coaxially arranged and overlapped with each other at intervals. The disks DK1 to DKi have the same diameter. Here, the terms "same", "identical", "consistent", "equal" and the like include the meanings of being completely identical and also include the meanings of being different to the extent that they can be regarded as substantially the same. In addition, the diameters of the disks DK1 to DKi may be different from each other.
[0115] Each disk DK has recording layers L on both sides thereof. For example, disk DK1 has a first recording layer La1 and a second recording layer Lb1 on the opposite side of the first recording layer La1. Disk DK2 has a first recording layer La2 and a second recording layer Lb2 on the opposite side of the first recording layer La2. Disk DKi has a first recording layer Lai and a second recording layer Lbi on the opposite side of the first recording layer Lai. Each first recording layer La is sometimes referred to as a surface or a recording surface. Each second recording layer Lb is sometimes referred to as a back side or a recording surface.
[0116] Each recording layer L has a user data area U, a system area S, and the like.
[0117] The first recording layer La1 includes a user data area Ua1 and a system area Sa1.
[0118] The second recording layer Lb1 includes a user data area Ub1 and a system area Sb1.
[0119] The first recording layer La2 includes a user data area Ua2 and a system area Sa2.
[0120] The second recording layer Lb2 includes a user data area Ub2 and a system area Sb2.
[0121] The first recording layer includes a user data area Uai and a system area Sai.
[0122] The second recording layer Lbi includes a user data area Ubi and a system area Sbi.
[0123] The track enclosed by the double dashed line in the user data area Ua1 (first recording layer La1) is referred to as track Ta1. The track located on the opposite side of track Ta1 in the user data area Ub1 (second recording layer Lb1) is referred to as track Tb1.
[0124] The track in the user data area Ua2 (first recording layer La2) enclosed by the double dashed line in the figure is referred to as track Tc1. The track in the user data area Ub2 (second recording layer Lb2) located on the opposite side of track Tc1 is referred to as track Td1.
[0125] The track enclosed by the double dashed line in the user data area Uai (first recording layer Lai) is referred to as track Te1. The track located on the opposite side of track Te1 in the user data area Ubi (second recording layer Lbi) is referred to as track Tf1.
[0126] In this embodiment, the tracks Ta1, Tb1, Tc1, Td1, Te1, and Tf1 are located on the same cylinder.
[0127] The head HD faces the disk DK. In the present embodiment, one head HD faces each recording layer L of the disk DK. For example, the head HD1 faces the first recording layer La1 of the disk DK1, writes data to the first recording layer La1, and reads data from the first recording layer La1. The head HD2 faces the second recording layer Lb1 of the disk DK1, writes data to the second recording layer Lb1, and reads data from the second recording layer Lb1.
[0128] The head HD3 is opposite to the first recording layer La2 of the disk DK2, and writes data to the first recording layer La2 and reads data from the first recording layer La2. The head HD4 is opposite to the second recording layer Lb2 of the disk DK2, and writes data to the second recording layer Lb2 and reads data from the second recording layer Lb2. The head HDj-1 is opposite to the first recording layer Lai of the disk DKi, and writes data to the first recording layer Lai and reads data from the first recording layer Lai. The head HDj is opposite to the second recording layer Lbi of the disk DKi, and writes data to the second recording layer Lbi and reads data from the second recording layer Lbi.
[0129] Figure 3 1 is a schematic diagram showing an example of the arrangement of a plurality of servo areas SV and a plurality of data areas DTR on a disk DK according to the present embodiment. Figure 3 As shown, in the radial direction d1 of the disk DK, the direction toward the outer periphery of the disk DK is called the outer direction (outer side), and the direction opposite to the outer direction is called the inner direction (inner side).
[0130] exist Figure 3 In the diagram, the user data area U is divided into an inner peripheral area IR located inward, an outer peripheral area OR located outward, and a middle peripheral area MR located between the inner peripheral area IR and the outer peripheral area OR.
[0131] The disk DK has a plurality of servo areas SV and a plurality of data areas DTR. For example, the plurality of servo areas SV may extend radially in the radial direction of the disk DK and may be discretely arranged at predetermined intervals in the circumferential direction. For example, the plurality of servo areas SV may extend linearly from the inner circumference to the outer circumference and may be discretely arranged at predetermined intervals in the circumferential direction. For example, the plurality of servo areas SV may extend spirally from the inner circumference to the outer circumference and may be discretely arranged at predetermined intervals in the circumferential direction. In addition, for example, the plurality of servo areas SV may be arranged in an island shape in the radial direction and may be discretely arranged by changing the predetermined intervals in the circumferential direction.
[0132] Hereinafter, a servo area SV in a predetermined track may be referred to as a "servo sector". In addition, a "servo area SV" may be referred to as a "servo sector SV". A servo sector includes servo data. Hereinafter, "the configuration of several servo data constituting a servo sector" may be referred to as a "servo pattern". In addition, "servo data written in a servo sector" may be referred to as a "servo sector".
[0133] A plurality of data regions DTR are respectively arranged between a plurality of servo regions SV. For example, the data region DTR is equivalent to the region between two consecutive servo regions SV in the circumferential direction. Hereinafter, a data region DTR in a predetermined track is sometimes referred to as a "data sector". Moreover, a "data region DTR" is sometimes referred to as a "data sector DTR". A data sector includes user data. Furthermore, "user data written to a data sector" is sometimes referred to as a "data sector". A "data sector" is sometimes referred to as "user data". Furthermore, a "pattern composed of several data" is sometimes referred to as a "data pattern". In Figure 3 In the example shown, the data pattern of a predetermined track is composed of a plurality of servo data (servo sectors) and a plurality of user data (data sectors).
[0134] The servo area SV includes a plurality of zone servo areas ZSV, etc. In addition to the zone servo area ZSV, the servo area SV may also include an area including a gap (an offset between the circumferential positions of two zone servo areas), an area including servo data, and a data area DTR, etc. The plurality of zone servo areas ZSV are discretely arranged along the radial direction d1. The plurality of zone servo areas ZSV extend in the radial direction d1, respectively.
[0135] Sometimes, a segment servo area (servo area) ZSV in a predetermined track is referred to as a "segment servo sector" or "servo sector". In addition, a "segment servo area (servo area) ZSV" is sometimes referred to as a "segment servo sector ZSV" or "servo sector ZSV". Sometimes, "servo data written to a segment servo sector" is referred to as a "segment servo sector" or "servo sector". Hereinafter, "the configuration of several servo data constituting a segment servo sector" is sometimes referred to as a "segment servo pattern" or "servo pattern". Hereinafter, a servo area SV in a predetermined track is sometimes referred to as a "segment pattern sector".
[0136] In addition, the "servo area SV" is sometimes referred to as a "segment pattern sector". Sometimes, "at least one data written to the segment pattern sector" is also referred to as a "segment pattern sector". The segment pattern sector includes at least one segment servo sector. Hereinafter, the "data pattern of the segment pattern sector" is sometimes referred to as a "segment data pattern".
[0137] exist Figure 3 In the example shown, the servo area SV includes segment servo areas ZSV0, ZSV1, and ZSV2. The segment servo areas ZSV0, ZSV1, and ZSV2 are arranged in a staggered manner in the radial direction. The segment servo areas ZSV0, ZSV1, and ZSV2 may also be arranged in a stepwise manner in the radial direction.
[0138] The segment servo area ZSV2 is located on the inner circumference side of the segment servo area ZSV1. The segment servo area ZSV0 is located on the outer circumference side of the segment servo area ZSV1. For example, the segment servo area ZSV2 is arranged from the inner circumference area IR to the middle circumference area MR, the segment servo area ZSV1 is arranged from the inner circumference area IR to the outer circumference area OR, and the segment servo area ZSV0 is arranged from the middle circumference area MR to the outer circumference area OR. Hereinafter, in the predetermined servo area SV, the predetermined area in the radial direction where a plurality of segment servo areas ZSV are arranged in the circumferential direction is sometimes referred to as a segment servo boundary area, a dual servo area, or a dual segment servo area ZB.
[0139] exist Figure 3In the example shown, the master servo area SVO and the slave servo area SVE are alternately arranged at intervals in the circumferential direction. For example, one slave servo area SVE is arranged between two master servo areas SVO that are arranged continuously at intervals in the circumferential direction. In other words, one slave servo area SVE is arranged between two master servo areas SVO that are arranged continuously at intervals in the circumferential direction. For example, in the case where all servo areas SV of the disk DK are sequentially assigned consecutive numbers, the master servo area SVO corresponds to the odd-numbered servo area SV, and the slave servo area SVE corresponds to the even-numbered servo area SV. In addition, two or more slave servo areas SVE may be arranged between two master servo areas SVO that are arranged continuously at intervals in the circumferential direction.
[0140] The master servo area SVO and the slave servo area SVE may be composed, for example, of only a servo area for reading and demodulating servo data (hereinafter, sometimes referred to as a normal servo area). Hereinafter, "reading and demodulating servo data" may also be referred to as "servo reading". The master servo area SVO and the slave servo area SVE may be composed, for example, of a normal servo area and a servo area for servo reading a circumferential range of servo data that is smaller than the circumferential range of servo data for servo reading in the normal servo area (hereinafter, sometimes referred to as a short servo area).
[0141] In the description of this embodiment, the case where the number of segments of the disk DK is 3 is used as an example for explanation, but the number of segments of the disk DK can be changed in various ways. The number of segments of the disk DK can also be 30 to 40. In addition, each segment has a plurality of bands. For example, each segment has several hundred bands.
[0142] Figure 4 It is shown Figure 3 The schematic diagram of the three tracks STR and the write head WHD of the user data area U of the disk DK for shingled recording is shown. The user data area U is a shingled recording area. In the user data area U, data can be written sequentially in bands, that is, shingled recording is allowed. The track STR is a data track.
[0143] like Figure 4 As shown, the write head WHD is capable of sequentially writing data to the disk DK in the travel direction d2. Figure 3 The shown read head RHD is also capable of sequentially reading data written to the disk DK in the travel direction d2.
[0144] The direction in which a plurality of tracks STR are continuously recorded in a shingled manner in a direction parallel to the radial direction d1, that is, the direction in which the next track STR to be written overlaps the previous track STR written in the radial direction d1 is called the overlapping writing direction or the recording advancing direction. Figure 4 In the band BAe shown, the overlap writing direction is the inner direction, but the overlap writing direction may also be the outer direction.
[0145] For example, the overlapping writing direction applied to multiple bands BA (multiple segments Z) located on the outer side of a specific radial position and the overlapping writing direction applied to multiple bands BA (multiple segments Z) located on the inner side of the specific radial position can also be opposite to each other.
[0146] The band BAe has a plurality of tracks STR including tracks STRe, STRe+1 and STRe+2. Tracks STRe, STRe+1 and STRe+2 are continuously overlapped and written in the overlap writing direction in the order in which they are recorded. Track STRe among tracks STRe, STRe+1 and STRe+2 is equivalent to the track to which data is written first, and track STRe+2 is equivalent to the track to which data is written last.
[0147] For track STRe, when no overlapping writing is performed on other tracks, there is track center STCe at the center of the radial direction d1. For track STRe+1, when no overlapping writing is performed on other tracks, there is track center STCe+1 at the center of the radial direction d1. For track STRe+2, when no overlapping writing is performed on other tracks, there is track center STCe+2 at the center of the radial direction d1.
[0148] exist Figure 4 In the example shown, tracks STRe, STRe+1, and STRe+2 are written at a pitch (shingled recording track pitch) STP. The track center STCe of track STRe and the track center STCe+1 of track STRe+1 are separated by a pitch STP in the radial direction d1. The track center STCe+1 of track STRe+1 and the track center STCe+2 of track STRe+2 are separated by a pitch STP in the radial direction d1. Tracks STRe to STRe+2 may also be written at different pitches.
[0149] The width in the radial direction d1 of the area in track STRe where no overlapping writing is performed on track STRe+1 is the same as the width in the radial direction d1 of the area in track STRe+1 where no overlapping writing is performed on track STRe+2. In addition, the width in the radial direction d1 of the area in track STRe where no overlapping writing is performed on track STRe+1 is different from the width in the radial direction d1 of the area in track STRe+1 where no overlapping writing is performed on track STRe+2.
[0150] exist Figure 4 In the figure, for the sake of convenience, each track STR is shown as a rectangular shape, but in fact, each track STR is curved along the circumferential direction. In addition, each track STR may also be a wave shape that varies in the radial direction d1 while extending in the circumferential direction. Figure 4 In the example, overlapping writing is performed on three tracks STR, but overlapping writing can also be performed on more than three tracks STR. It is sufficient to perform overlapping writing on multiple tracks STR in units of band BAe.
[0151] The write processing unit 61a can select a shingled recording type in which data is written to a plurality of tracks STR in an overlapping manner in the radial direction d1 of the disk DK to perform a write process. Figure 4 In the example shown, the write processing unit 61a performs shingling recording on the tracks STRe to STRe+2 in sequence at a pitch STP in the inner direction (overlap writing direction) in the band BAe.
[0152] The write processing unit 61a writes to the track STRe+1 at a pitch STP in the inner direction of the track STRe, and writes to the track STRe+1 in an overlapping manner on a portion of the inner circumference of the track STRe. The write processing unit 61a writes to the track STRe+2 at a pitch STP in the inner direction of the track STRe+1, and writes to the track STRe+2 in an overlapping manner on a portion of the inner circumference of the track STRe+1.
[0153] Figure 5 It is shown Figure 3 Schematic diagram of the three tracks CTR and the write head WHD of the medium cache area M of the disk DK for normal recording processing. Figure 3 The system area S shown is a normal recording area. In the medium cache area M and the system area S, random data writing, that is, normal recording is allowed. The track CTR is a data track.
[0154] like Figure 5As shown, the medium cache area M has a plurality of tracks CTR including tracks CTRe, CTRe+1, and CTRe+2. For example, the widths (track widths) of tracks CTRe, CTRe+1, and CTRe+2 in the radial direction d1 are the same. In addition, the track widths of tracks CTRe to CTR+2 may be different from each other.
[0155] The track CTRe has a track center CTCe at the center of the radial direction d1, the track CTRe+1 has a track center CTCe+1 at the center of the radial direction d1, and the track CTRe+2 has a track center CTCe+2 at the center of the radial direction d1. Figure 4 In the example shown, tracks CTRe, CTRe+1, and CTRe+2 are written at a pitch (normal recording track pitch) CTP. The track center CTCe of track CTRe is separated from the track center CTCe+1 of track CTRe+1 by the pitch CTP. The track center CTCe+1 of track CTRe+1 is separated from the track center CTCe+2 of track CTRe+2 by the pitch CTP.
[0156] Track CTRe and track CTRe+1 are separated by a gap GP. Track CTRe+1 and track CTRe+2 are separated by a gap GP. In addition, tracks CTRe to CTRe+2 may be written at different pitches. Figure 5 In the figure, for the sake of convenience, each track CTR is shown as a rectangular shape, but in fact, each track CTR is curved along the circumferential direction. In addition, each track CTR may be a wave shape extending in the circumferential direction while changing in the radial direction d1.
[0157] The write processing unit 61a can select a normal recording mode for writing data to a plurality of tracks CTR at intervals in the radial direction d1 of the disk DK to perform a write process. Figure 4 In the illustrated example, the write processing unit 61a positions the write head WHD at the track center CTCe in a predetermined area of the disk DK, and performs normal recording on the track CTRe or a predetermined sector of the track CTRe.
[0158] The write processing unit 61a positions the write head WHD at the track center CTCe+1 separated from the track center CTCe of the track CTRe by the pitch CTP in the inner direction, and performs normal recording on the track CTRe+1 or a predetermined sector of the track CTRe+1. The write processing unit 62 positions the write head WHD at the track center CTCe+2 separated from the track center CTCe+1 of the track CTRe+1 by the pitch CTP in the inner direction, and performs normal recording on the track CTRe+2 or a predetermined sector of the track CTRe+2.
[0159] The write processing unit 61a can normally record the tracks CTRe, CTRe+1 and CTRe+2 sequentially in a predetermined area of the disk DK, or can randomly record the predetermined sectors of the track CTRe, the predetermined sectors of the track CTRe+1, and the predetermined sectors of the track CTRe+2.
[0160] Figure 6 It is shown Figure 3 The enlarged plan view of the disk DK shown is a diagram showing four media cache areas M and four user data areas U, etc.
[0161] like Figure 6 As shown, the disk DK has medium cache areas M0, M1, M2, M3 and user data areas U0, U1, U2, U3 in the recording layer L. The medium cache areas M0, M1, M2, M3 are arranged in this order in the inner direction. In order to perform the operation of receiving write data from the non-volatile memory 80 through the PLP in a volatile manner, the medium cache areas M0 to M3 serve as temporary transfer locations for the write data of the buffer memory 90. The user data areas U0, U1, U2, U3 are arranged in this order in the inner direction. The medium cache areas M and the user data areas U are arranged alternately in the radial direction d1.
[0162] One guard track GTR is provided between the medium cache area M and the user data area U adjacent to each other in the radial direction d1. However, two or more guard tracks GTR may be provided between the medium cache area M and the user data area U. In the present embodiment, a system area S is provided on the outermost peripheral side of the recording layer L. The system area S is adjacent to the medium cache area M0 in the radial direction d1, and one or more guard tracks GTR are also provided between the system area S and the medium cache area M0. In the figure, a dot pattern is added to the guard track GTR.
[0163] In addition, the number of the media cache area M and the user data area U provided in the recording layer L, and the layout of the media cache area M and the user data area U are not limited to the above. Figure 6 The disc DK only needs to include at least one medium cache area M and at least one user data area U in the recording layer L.
[0164] Figure 7 It is shown Figure 6 The top view of the disk DK shown is an enlarged view showing a plurality of tracks CTR of one medium cache area M0.
[0165] like Figure 7As shown, the medium cache area M0 has eight tracks CTR0, CTR1, CTR2, ..., CTR7. The tracks CTR0, CTR1, CTR2, ..., CTR7 are arranged in this order inwardly and are continuous in the radial direction d1. In the figure, dot patterns are added to the tracks CTR0, CTR2, CTR4, and CTR6, and no patterns are added to the tracks CTR1, CTR3, CTR5, and CTR7. Each track CTR has a plurality of sectors.
[0166] Furthermore, the number of tracks CTR included in the medium cache area M is not limited to eight, and can be changed in various ways.
[0167] Next, a description is given of a case where the write processing unit 61a writes write data to the media cache area M without performing reordering based on the write data selection processing unit 66, and a case where the write processing unit 61a writes write data to the media cache area M based on the reordering based on the write data selection processing unit 66.
[0168] Figure 8 It is shown Figure 7 The top view of disk DK shown is a diagram for explaining an example in which, when write data 1, write data 2, and write data 3 are received in sequence, write data 1, write data 2, and write data 3 are written in sequence without reordering. Fig. 9 It is shown Figure 7 The top view of disk DK shown is a diagram for explaining an example in which, when write data 1, write data 2, and write data 3 are received in sequence, they are reordered and write data 1, write data 3, and write data 2 are written in sequence.
[0169] In addition, Figure 8 and Fig. 9 In FIG. 1 , the dotted line arrow indicates a seek operation which is a movement from the current track to the target track. The dotted line arrow indicates a rotation waiting operation from the completion of the movement of the head to the target track until the head rotates back to the target sector once.
[0170] like Figure 8 As shown, when the host 100 issues multiple write data and the disk device 1 receives write data including multiple write instructions at one time, the disk device 1 processes the write data in the order in which the write data arrives. For example, when the disk device 1 receives write data 1, write data 2, and write data 3 in sequence, it writes write data 1, write data 2, and write data 3 in sequence without reordering.
[0171] First, the write processing unit 61a writes write data 1 to the execution area CTR0a of the track CTR0. Then, a seek and rotation wait action is performed, and writes write data 2 to the execution area CTR1a of the track CTR1. Then, a seek and rotation wait action is performed, and writes write data to the execution area CTR2a of the track CTR2. In addition, the execution area CTR0a, the execution area CTR1a, and the execution area CTR2a each include one or more sectors. In addition, in the radial direction d1, the execution area CTR1a is located on the inner side of the execution area CTR0a, and the execution area CTR2a is located on the inner side of the execution area CTR1a.
[0172] exist Figure 8 In the example of , the distance from the current execution area to the next execution area becomes longer. Specifically, in the moving direction d2, the distance from the end of the last sector of the current execution area to the beginning of the first sector of the next execution area becomes longer. In addition, the rotation waiting time becomes longer. Figure 8 In the example above, it is difficult to reduce the overhead.
[0173] like Fig. 9 As shown, on the other hand, the write data selection processing unit 66 reorders the write data into a reasonable order and processes it. For example, when the magnetic disk device 1 receives write data 1, write data 2, and write data 3 in sequence, the write data selection processing unit 66 determines that the execution area CTR1a can be accessed after the execution area CTR0a. The write data selection processing unit 66 reorders the order, and the write processing unit 61a writes write data 1, write data 3, and write data 2 in sequence.
[0174] First, write data 1 is written to the execution area CTR0a of track CTR0. Then, seek and rotation wait operations are performed, and write data 3 is written to the execution area CTR2a of track CTR2. Then, seek and rotation wait operations are performed, and write data 2 is written to the execution area CTR1a of track CTR1.
[0175] exist Fig. 9 In the example of , the distance from the current execution area to the next execution area can be minimized. That is, the rotation waiting time can be shortened. In addition, the writing of write data 1, write data 2, and write data 3 to the medium cache area M can be completed at the highest speed. Therefore, in Fig. 9 In the example above, it is possible to reduce overhead.
[0176] Next, the management table TL will be described. Fig.10 It is shown Figure 1The diagram showing a part of the management table TL is a diagram showing a plurality of count values of the medium cache areas M0 to M3 of the first recording layer La1, etc. The head HD1 faces the first recording layer La1.
[0177] like Fig.10 As shown, "free" in the use status of the track CTR means that the track CTR is the above-mentioned free track, and "with data" means that the track CTR is the above-mentioned valid track. The management table TL can record the difference calculated in units of the medium cache area M. The judgment unit 65 can judge whether the difference has reached the threshold value for each medium cache area M. The judgment unit 65 does not judge whether the difference in the count value of the ATI between adjacent track CTRs has reached the threshold value. Since such judgment by the judgment unit 65 does not become an overhead, it is preferable.
[0178] Focusing on the medium cache area M0 of the first recording layer La1 (head HD1), there is a difference reaching the threshold. In track CTR4, the difference reaches the threshold. Therefore, the data protection processing unit 63 can determine that the original data of the write data of track CTR4 needs to be subjected to PLP processing.
[0179] On the other hand, focusing on the media cache areas M1 to M3 of the first recording layer La1, there is no difference reaching the threshold value, so the data protection processing unit 63 can determine that it is not necessary to perform PLP processing on the original data of the write data in the media cache areas M1 to M3.
[0180] In this embodiment, the threshold is common (for example, "10") in all media cache areas M of all recording layers L (heads HD). However, the threshold may be different for each recording layer L or different for each media cache area M.
[0181] Next, an undesirable processing example of the MPU 60 when the determination unit 65 does not determine whether the difference has reached the threshold value will be described. Fig.11 It is shown Fig.10 The diagram of a plurality of count values of one medium cache area MO in the management table TL shown reflects the result of continuously writing write data to the fourth track without determining whether the difference has reached the threshold value.
[0182] like Fig.11As shown, track CTR3 is the fourth track. Write data is continuously overwritten to track CTR3. The count values of tracks CTR2 and CTR4 adjacent to track CTR3 each exceed "10". Since the adverse effect on the ATI of tracks CTR2 and CTR4 becomes greater, errors are likely to occur when reading the write data of tracks CTR2 and CTR4. For example, the write data of tracks CTR2 and CTR4 is damaged. In this case, it is difficult for the medium cache area M0 to guarantee the write data.
[0183] Next, refer to Figure 12 to Figure 16 , a preferred processing example of MPU60 is described. Fig.12 It is shown Fig.10 The diagram of a plurality of count values and the like of one medium cache area M0 in the management table TL shown reflects the result of writing data to the fourth track (track CTR3). Fig.13 It is shown from Fig.12 The diagram showing the state of the management table TL after a certain period of time has passed reflects the result of writing data to the fourth track (track CTR3). Fig.14 It reflects the Fig.13 The state of the management table TL shown in the figure is a state where time has passed and the fifth track (track CTR4) is regarded as a free track after the original data of the written data of the fifth track is returned to the protected object.
[0184] Fig.15 It reflects the Fig.14 The state of the management table TL shown is a diagram in which time has passed and the original data of the write data of the 7th track (track CTR6) has been written to the user data area U, and the 7th track is regarded as a free track. Fig.16 is shown with Fig.15 The diagrams of different examples reflect the Fig.14 The state of the management table TL shown is a diagram in which time has passed and the 7th track is regarded as a free track after the integrated write data generated by garbage collection (Garbage Collection) using the original data of the write data of the 7th track (track CTR6) is written to the 3rd track (track CTR2).
[0185] like Fig.12As shown, when all tracks CTR0 to CTR7 of the medium cache area M0 of the first recording layer La1 are in the state of free tracks, write data is then written to track CTR4, and then write data is written to track CTR5. When write data is written to track CTR5, the counter 64 increments the count value of track CTR4, which is a valid track. As a result, the count value of track CTR4 becomes "1", and the difference between the count value of track CTR4 and the count value (minimum value) of other tracks CTR becomes "1".
[0186] like Fig.13 As shown, after that, write data is written to the medium cache area M0 of the first recording layer La1 for multiple times, and finally write data is written to the track CTR3. When the write data is written to the track CTR3, the counter 64 counts up the count value of the track CTR4 as the valid track. As a result, the count value of the track CTR4 becomes "10", and the difference between the count value of the track CTR4 and the count value (minimum value) of the other tracks CTR becomes "10". As a result, the judgment unit 65 can judge that the difference has reached the threshold.
[0187] like Fig.14 As shown, the data protection processing unit 63 and the management unit 62 perform PLP processing on the original data of the write data of the track CTR4 and the write data of the buffer memory 90. As a result, the write processing unit 61a can regard the track CTR4 that was once a valid track as an idle track that can be overwritten, and the counter 64 can reset the count value of the track CTR4 to the initial value. In addition, the track CTR4 that is an idle track can be newly added to the writable area that can be selected when reordering, and the writable area becomes less likely to be exhausted, and the writable area can be freely selected for writing processing.
[0188] like Fig.15 As shown, thereafter, the write processing unit 61a writes the write data of the buffer memory 90, which is the original data of the write data of the track CTR6, into the user data area U. Therefore, the write processing unit 61a can regard the track CTR6, which was once a valid track, as an idle track that can be overwritten, and the counter 64 can reset the count value of the track CTR6 to the initial value. Furthermore, the track CTR6, which is an idle track, can be newly added to the above-mentioned writable area.
[0189] like Fig.16As shown, alternatively, the write data integration processing unit 67 generates integrated write data by garbage collection, which integrates the original data as the write data of track CTR6, the write data of the buffer memory 90, and the beginning write data to be selected next by the write data selection processing unit 66, and the write processing unit 61a writes the integrated write data to track CTR2.
[0190] Therefore, the write processing unit 61a can regard the track CTR6 that was once a valid track as a free track that can be overwritten, and the counter 64 can reset the count value of the track CTR6 to the initial value.
[0191] On the other hand, when the integrated write data is written to the track CTR2, the counter 64 counts up the count value of the track CTR3 which is a valid track. As a result, the count value of the track CTR3 becomes "1".
[0192] According to the magnetic disk device 1 of the present embodiment configured as above, the magnetic disk device 1 includes a disk DK, a head HD, a buffer memory 90, a nonvolatile memory 80, a main power supply 5, and an MPU 60. The MPU 60 includes a write processing unit 61a, a management unit 62, a data protection processing unit 63, a counter 64, and a judgment unit 65. When the judgment unit 65 judges that the difference between the maximum value and the minimum value among the multiple count values of the multiple tracks CTR of the medium cache area M has reached a threshold value, the management unit 62 can perform the following processing. That is, the management unit 62 can return the write data of the buffer memory 90, which is the original data of the write data of the track CTR whose count value has become the maximum value among the multiple tracks CTR, to the protection object.
[0193] Since the PLP processing can be performed on the above-mentioned original data, the write data (original data) of the buffer memory 90 can be quickly guaranteed. In addition, the write data of the above-mentioned track CTR can be guaranteed without performing additional write processing to the medium cache area M. According to the above content, it is possible to obtain a magnetic disk device 1 that can shorten the time required for the write processing to the medium cache area M. In addition, according to the magnetic disk device 1 involved in this embodiment, since the system for guaranteeing the write data of the medium cache area M is complete, the write processing to the medium cache area M can be safely performed.
[0194] The embodiments of the present invention are described above, but the above embodiments are presented as examples and are not intended to limit the scope of the invention. The above 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 purpose of the invention. The above embodiments and / or their modifications are included in the scope and purpose of the invention, and are included in the invention described in the claims and the scope of their equivalents.
Claims
1. A magnetic disk device comprising: A disk having a medium cache area in a recording layer, the medium cache area including a plurality of tracks continuous in a radial direction; a head for writing data to the recording layer of the disk and reading data from the recording layer; a volatile buffer memory into which write data including a write instruction and user data corresponding to the write instruction is written; Non-volatile memory; Main power supply; as well as Control Department, The control unit has: a write processing unit that controls a write process of writing data into the recording layer; a management unit that includes, among the write data written to the buffer memory, the write data before being written to the medium cache area in a protection object, and excludes the write data after being written to the medium cache area from the protection object; a data protection processing unit that causes the write data managed by the management unit as the protection target to be transferred to the nonvolatile memory when the main power source is lost; a counter capable of incrementing count values of the respective tracks of the media cache area, and capable of incrementing count values of tracks adjacent to the track where the write data is written, each time write data is written to the media cache area; as well as a determination unit configured to determine whether a difference between a maximum value and a minimum value among a plurality of count values of the plurality of tracks in the medium cache area has reached a threshold value, When the determination unit determines that the difference has reached the threshold, The management unit returns the write data of the buffer memory, which is original data of the write data of the track whose count value among the plurality of tracks becomes the maximum value, to the protection target.
2. The magnetic disk device according to claim 1, When the determination unit determines that the difference has reached the threshold, The counter resets the count value of the track whose count value becomes the maximum value to an initial value, The write processing unit regards the track for which the count value has reached the maximum value as a free track that can be overwritten.
3. The magnetic disk device according to claim 1, The control unit further includes a write data selection processing unit that performs a reordering process for reordering the write data written to the buffer memory. The write processing section writes the write data selected by the write data selection processing section into the media cache area.
4. The magnetic disk device according to claim 3, Whenever the management unit updates the protection object, The write data selection processing unit performs the reordering process.
5. The magnetic disk device according to claim 3, The control unit also includes a written data integration processing unit. When the determination unit determines that the difference has reached the threshold, the write data integration processing unit generates integrated write data obtained by integrating the head write data to be selected next by the write data selection processing unit and the write data as the original data, The write processing unit writes the integrated write data including the leading write data selected by the write data selection processing unit into the media cache area.
6. The magnetic disk device according to claim 1, The control unit further includes a command response processing unit that reports a status indicating that execution of the write command of the write data of the protection target has been completed when the management unit includes the write data in the protection target.
7. The magnetic disk device according to claim 1, The disc also has a user data area in the recording layer. The control unit also has: a command selection processing unit that performs a reordering process for reordering a plurality of write commands of the write data written into the buffer memory; and an instruction execution unit that executes the write instruction selected by the instruction selection processing unit, The write data written to the buffer memory includes first write data, the first write data includes a first write command and first user data corresponding to the first write command, After the first write data read from the buffer memory is written into the media cache area, The command execution unit executes the first write command selected by the command selection processing unit, the write processing unit, writing the first user data read from the buffer memory into the user data area, Next, the area in the media cache area where the first write data remains is regarded as a free area that can be overwritten. The management unit regards the area in the buffer memory where the first write data remains as an overwritable free area.
8. The magnetic disk device according to claim 7, When the write processing unit regards the entire area of the track in which the first write data remains in the medium cache area as the free area, The counter resets the count value of the track in which the first write data remains to an initial value.
9. The magnetic disk device according to claim 1, Each track of the medium cache area is an idle track to which the write data is not written, an idle track to which the write data is written and overwriting is allowed, or a valid track to which the write data is written and overwriting is prohibited, The counter includes the valid track in the objects for which the count value is incremented, and excludes the idle track from the objects for which the count value is incremented.
10. The magnetic disk device according to claim 1, At any timing after the write data is written to the buffer memory, the write data included in the protection target by the management unit is within a range that can be transferred to the nonvolatile memory.
11. The magnetic disk device according to claim 1, In the medium cache area, when a track adjacent to the first track and located on the inner side of the first track among the multiple tracks is regarded as an inner track, and a track adjacent to the first track and located on the outer side of the first track is regarded as an outer track, the counter increments the count value of the inner track and the count value of the outer track respectively when the write data is written to the first track.
12. The magnetic disk device according to claim 1, The nonvolatile memory has a management table that stores the count values of the respective tracks of the media cache area.
13. The magnetic disk device according to claim 1, When the main power supply is restored after the main power supply is lost, The data protection processing unit writes the write data transferred to the nonvolatile memory and the write data written to the media cache area into the buffer memory, and restores the write data in the buffer memory.
14. The magnetic disk device according to claim 1, The non-volatile memory is a flash read-only memory.