Controller, disk drive, and read processing method

According to one embodiment, an equalizer is configured to obtain a noise included in a first correction signal by using a noise component of a first track and a noise interference component from a second track. The equalizer is configured to correct the first correction signal by using the obtained noise. The equalizer is configured to equalize the corrected first correction signal. The noise component of the first track is calculated based on a noise component of the first track at a first timing and a noise component of the first track at a second timing earlier than the first timing. The noise interference component from the second track is calculated based on a noise interference component from the second track at the first timing and a noise interference component from the second track at the second timing. The decoder is configured to decode the equalized first correction signal.

FIELD

Embodiments described herein relate generally to a controller, a disk drive, and a read processing method.

BACKGROUND

In recent years, in a field of disk drives such as a hard disk drive, data is stored in a magnetic disk with higher density. Along with this, narrower track pitches of the magnetic disk are being used. If off-track in the direction along the track width happens when reading out data from a magnetic disk having a narrow track pitch using a magnetic head, the data written on the track may not be read out correctly. In another case, if off-track in the direction along the track width happens when writing data on a magnetic disk having a narrow track pitch using a magnetic head, the data written on the track may not be read out correctly by the magnetic head.

DETAILED DESCRIPTION

In general, according to one embodiment, there is provided a controller including an interference canceller, an equalizer, and a decoder. The interference canceller is configured to produce a first correction signal and a second correction signal. The first correction signal is obtained by cancelling a signal interference component from a second track in a signal of a first track. The second correction signal is obtained by cancelling a signal interference component from the first track in a signal of the second track. The first track and the second track are adjacent to each other in a disk medium. The equalizer is configured to obtain a noise included in the first correction signal by using a noise component of the first track and a noise interference component from the second track. The equalizer is configured to correct the first correction signal by using the obtained noise. The equalizer is configured to equalize the corrected first correction signal. The noise component of the first track is calculated based on a noise component of the first track at a first timing and a noise component of the first track at a second timing which is earlier than the first timing. The noise interference component from the second track is calculated based on a noise interference component from the second track at the first timing and a noise interference component from the second track at the second timing. The decoder is configured to decode the equalized first correction signal.

Exemplary embodiments of a disk drive will be explained below in detail with reference to the accompanying drawings. The present invention is not limited to the following embodiments.

Embodiments

A disk drive1according to the embodiment will be described usingFIG. 1.FIG. 1illustrates a configuration of the disk drive1.

For example, the disk drive1is an apparatus configured to record information on a magnetic disk (disk medium)11via a magnetic head22and to read out a signal from the magnetic disk (disk medium)11via the magnetic head22. For example, the disk drive1may be a magnetic disk drive (e.g., a hard disk drive). Specifically, the disk drive1includes the magnetic disk11, a spindle motor12, a motor driver21, the magnetic head22, an actuator arm15, a voice coil motor (VCM)16, a ramp23, a head amplifier24, a read/write channel (RWC)25, a hard disk controller (HDC)31, a buffer memory29, and a controlling unit26.

The magnetic disk11is configured to rotate at a predetermined rotational speed about a rotational axis by the spindle motor12. The motor driver21drives the spindle motor12to rotate.

The magnetic head22writes data on and reads out data from the magnetic disk11using a recording head22aand a plurality of read heads22b1and22b2which are included in the magnetic head22. For example, the magnetic head22can read out a signal from a plurality of adjacent tracks on the magnetic disk11using the plurality of read heads22b1and22b2(seeFIG. 5andFIG. 6). Further, the magnetic head22is located at a distal end of the actuator arm15, and is moved along the radial direction (direction along the track width) of the magnetic disk11by the voice coil motor16driven by the motor driver21. In such states, for example, when the magnetic disk11is not rotating, the magnetic head22is retracted to be on the ramp23.

The head amplifier24amplifies and outputs the signal read out from the magnetic disk11by the magnetic head22, and supplies the amplified signal to the read/write channel25. The head amplifier24amplifies the signal, which is supplied from the read/write channel25and is to be written on the magnetic disk11, and supplies the amplified signal to the magnetic head22.

The hard disk controller31controls transmission of data with a host computer40via an I/F bus, controls the buffer memory29, and performs processing of correcting errors in the recorded data. Further, the buffer memory29is used as a cache for data transmitted with the host computer40. Further, for example, the buffer memory29is used to temporarily store therein data read out from the magnetic disk11, data to be written on the magnetic disk11, or firmware for control which is read out from the magnetic disk11.

The read/write channel25performs code modulation of the data, which is supplied from the hard disk controller31and to be written on the magnetic disk11, and supplies the code modulated data to the head amplifier24. Further, the read/write channel25performs code demodulation of the signal, which is read out by the magnetic disk11and supplied from the head amplifier24, and outputs the code demodulated data to the hard disk controller31as digital data.

To the controlling unit26, an operation memory27(e.g., SRAM: Static Random Access Memory), a nonvolatile memory28(e.g., Flash ROM: Flash Read Only Memory), and the buffer memory29for temporary storage (e.g., DRAM: Dynamic Random Access Memory) are connected. The controlling unit26totally controls the disk drive1according to the firmware previously stored in the nonvolatile memory28and the magnetic disk11. The firmware includes initial firmware and control firmware used for normal operation. The initial firmware which is executed first on starting is stored in, for example, the nonvolatile memory28. As described below, a part of the function of a controller CTR (seeFIG. 6) may be included in the control firmware. Further, the control firmware used for normal operation is recorded on the magnetic disk11and temporarily read out from the magnetic disk11into the buffer memory29, and then stored in the operation memory27, controlled by the initial firmware.

In the disk drive1, the recording head22awrites data on a plurality of tracks provided, in a plurality of concentric circles, on the magnetic disk11in such manner, for example, from the inner side toward the outer side or from the outer side toward the inner side. In this step, the buffer memory29temporarily stores therein the data already written on the track. For example, when the data is written from the inner side toward the outer side, the buffer memory29temporarily stores the data already written on the track until at least the writing of data on the sector on the outer adjacent track is completed.

In the disk drive1, to increase the storage capacity of the magnetic disk11, that is, to improve the recording density of the magnetic disk11, the track width (track pitch) of the magnetic disk11may be approximately as narrow as the width of each read heads22b1and22b2.

Among the plurality of read heads22b1and22b2, the read head22b1will be focused here as an example. Considering the case in which the data is written on track A and track B without pushing the recording head22aoff track, and the data is read out from track A via the read head22b1, as illustrated in a dashed line inFIG. 2. When viewed from the read head22b1, track A is a target track of the present read processing and track B is an adjacent track which is adjacent to the target track.

In the disk drive1, when the read head22b1reads out data, since the track width of the magnetic disk11can be approximately as narrow as the width of the read head22b1, the read head22b1may be pushed into an off-track position shifted in the track width direction toward the adjacent track (track B) as illustrated in a solid line inFIG. 2from an on-track position within the target track (track A) as illustrated in a dashed line inFIG. 2. If an off-track in the direction along the track width happens during readout of the data, the read head22b1may read out data from the target track (track A) receiving interference from data on the adjacent track (track B).

For example, considering another case in which the data is written on track A and track B with pushing the recording head22ainto off-track position in the direction along the track width, and is read out from track A via the read head22b1, as illustrated in a dashed line inFIG. 3. That is, when viewed from the read head22b1, track A is a target track of the present read processing and track B is an adjacent track which is adjacent to the target track.

In the disk drive1, the track width of the magnetic disk11is approximately as narrow as the width of the read head22b1. Therefore, even when the read head22b1is, without being pushed into an off-track position, located at on-track position within the target track (track A) as illustrated in a solid line inFIG. 3when reading out the data by the read head22b1, the read head22b1may receive interference from data on the adjacent track (track B). That is, when an off-track in the direction along the track width happens during writing, the read head22b1may read out data from the target track (track A) while receiving interference from data on the adjacent track (track B).

For this reason, the disk drive1employs ITI (Inter Track Interference) cancelling method in which readout from a disk is performed using the data on the adjacent track to remove an interference component between tracks during reading out data from the magnetic disk11. In the ITI cancelling method, for example, an interference component between tracks (signal interference component) is removed from the signal of the sector to be readout, where each interference component between tracks is in accordance with the data written on sectors adjacent, in the direction along the track width, to the signal of the sector to be read out. In this manner, the signal interference component from the adjacent track can be removed from the signal read out from the target track.

Now, considering the case when the signal with the signal interference component cancelled is equalized by a Viterbi equalizer in which a partial response signal is used in a read processing method to increase the recording density by allowing interference between symbols (interference between symbol waveforms at different points of time) happening on the transmission line of the magnetic recording. To further increase the recording density, it is effective to perform equalization taking into account the interference, on the time axis, of the jitter noise itself produced on the medium together with the interference between symbols of read signals. Therefore, a Viterbi equalizer in which an auto regressive model is applied for calculating branch metric (likelihood) may be used to remove influence of noise itself on interference between samples.

This model simply means that if the noise at time t can be recognized, each noise at each time t+1, t+2, . . . can be estimated, since the noise component included in the read signal obtained at time t by a read head has an effect on each time t+1, t+2, . . . . It is understood that noise can efficiently be suppressed by estimating the noise using the auto regressive model and correcting the signal with the estimated noise.

However, since the auto regressive model is configured for a single read head, further devising is necessary to apply the auto regressive model to the disk drive1including a plurality of read heads22b1and22b2.

At first, in the embodiment, the disk drive1performs cancelling of the interference component between tracks (ITI cancelling) with using signals read out from a plurality of adjacent tracks by the plurality of read heads22b1and22b2.

For example, the read signal obtained by two read heads22b1and22b2is discretized through a preamplifier, a low pass filter, and an A/D converter which are independently provided. The obtained two discretized read signals are input to two FIR filters for each, that is, total four FIR filters. The FIR filters are set so that each of two sets of FIR filters, to which two read signals are input, outputs two different read target. That is, four FIR filters are operated so that two sets of FIR filters, each set receiving two read signals as input, output two different read targets (PR (Partial Response) targets) to obtain two different discretized read signals.

Specifically, the disk drive1of the embodiment provides the controller CTR having a function as illustrated inFIG. 4.FIG. 4illustrates the configuration of the controller CTR. Note that, the controller CTR illustrated inFIG. 4has a functional configuration. For example, the controller CTR may be implemented as a hardware (e.g., as a system on a chip) in the read/write channel25or the like. Alternatively, for example, the controller CTR illustrated inFIG. 4may be implemented as a software (e.g., as a functional module extracted into the operation memory27or the like at once or sequentially according to the progress of processing, by the controlling unit26or the like) in the controlling unit26or the like. Further alternatively, a part of the function of the controller CTR illustrated inFIG. 4may be implemented as a hardware in the read/write channel25or the like and the rest of the function may be implemented as a software in the controlling unit26or the like.

In the disk drive1, the plurality of read heads22b1and22b2illustrated inFIG. 4is configured to read out a signal from a plurality of adjacent tracks. For example, as illustrated inFIG. 5, when the read head22b1reads out a read signal RSAfrom the first track (track A), the read head22b2reads out a read signal RSBfrom the second track (track B) adjacent to the first track. When viewed from the read head22b1, track A is a target track and track B is an adjacent track. Contrarily, when viewed from the read head22b2, track B is a target track and track A is an adjacent track.

Note that, exemplarily illustrated inFIG. 4is the case in which two read heads22b1and22b2read out a signal from the plurality of adjacent tracks. However, it may be configured to read out a signal from the first track using one of, or some of, three or more read heads, and to read out a signal from the second track using the rest of the read heads.

The head amplifier24illustrated inFIG. 4amplifies a plurality of read signals RSAand RSBread out from a plurality of adjacent tracks by the plurality of read heads22b1and22b2. For example, the head amplifier24includes a plurality of preamplifiers241and242corresponding to the plurality of read heads22b1and22b2. The preamplifier241amplifies the read signal RSAread out from the read head22b1and supplies the amplified signal RSAto the controller CTR. The preamplifier242amplifies the read signal RSBread out from the read head22b2and supplies the amplified signal RSBto the controller CTR.

The controller CTR includes a signal processing unit2, an interference canceller50, a Viterbi equalizer60, and a decoder90.

The signal processing unit2processes a plurality of read signals RSAand RSBsupplied from the head amplifier24. For example, the signal processing unit2includes a low pass filter (LPF1)3, an A/D converter4, a low pass filter (LPF2)5, and an A/D converter6.

The low pass filter3removes the out-band component from the read signal RSAsupplied from the preamplifier241and then supplies the read signal RSAto the A/D converter4. The A/D converter4performs A/D conversion of the read signal from which the radio frequency component is removed to produce a digital signal RDA, and then supplies the digital signal RDAto the interference canceller50.

The low pass filter5removes the out-band component from the read signal RSBsupplied from the preamplifier242and then supplies the read signal RSBto the A/D converter6. The A/D converter6performs A/D conversion of the read signal from which the out-band component is removed to produce a digital signal RDB, and then supplies the digital signal RDBto the interference canceller50.

The interference canceller50produces a first correction signal y1by cancelling a signal interference component SA′ from the second track (track B) in the read signal RSAread out from the first track (track A). Along with this, the interference canceller50produces a second correction signal y2by cancelling the signal interference component SB′ from the first track (track A) in the read signal RSBread out from the second track (track B).

For example, the interference canceller50includes an FIR filter (FIR1)51, an FIR filter (FIR2)52, an FIR filter (FIR3)53, an FIR filter (FIR4)54, a cancel processing unit (SUM1)55, and a cancel processing unit (SUM2)56.

The FIR filter51extracts a signal component SAfrom the signal read out from the first track (track A). The FIR filter51receives the digital signal RDAfrom the A/D converter4. The FIR filter51equalizes the digital signal RDAto an arbitrary PR (Partial Response) target (e.g., a PR target such as PR (1, 2, 2, 2, 1)). The FIR filter51supplies the digital signal SAobtained by equalization to the cancel processing unit55as a signal component.

The FIR filter52extracts a signal interference component SA′ from the signal read out from the second track (track B). The FIR filter52receives the digital signal RDBfrom the A/D converter6. The FIR filter52equalizes the digital signal RDBto an arbitrary PR (Partial Response) target (e.g., a PR target such as PR (1, 1, 2, 1, 1)). Then, by a process, such as applying a predetermined coefficient to the digital signal SBobtained by equalization, the FIR filter52produces a signal interference component SA′ The FIR filter52supplies the produced signal interference component SA′ to the cancel processing unit55.

The FIR filter53extracts a signal interference component SB′ from the signal read out from the first track (track A). The FIR filter53receives the digital signal RDAfrom the A/D converter4. The FIR filter53equalizes the digital signal RDAto an arbitrary PR (Partial Response) target (e.g., a PR target such as PR (1, 2, 2, 2, 1)). Then, by a process, such as applying a predetermined coefficient to the digital signal SAobtained by equalization, the FIR filter53produces a signal interference component SB′. The FIR filter53supplies the produced signal interference component SB′ to the cancel processing unit56.

The FIR filter54extracts a signal component SBfrom the signal read out from the second track (track B). The FIR filter54receives the digital signal RDBfrom the A/D converter6. The FIR filter54equalizes the digital signal RDBto an arbitrary PR (Partial Response) target (e.g., a PR target such as PR (1, 1, 2, 1, 1)). The FIR filter54supplies the digital signal SBobtained by equalization to the cancel processing unit56as a signal component.

The cancel processing unit55produces the first correction signal y1using the signal component SAextracted by the FIR filter51and the signal interference component SA′ extracted by the FIR filter52. For example, the cancel processing unit55performs calculation expressed by Equation 1 described below to produce the first correction signal y1.
y1=SA+SA′  Equation 1

The cancel processing unit56produces the second correction signal y2using the signal component SBextracted by the FIR filter54and the signal interference component SB′ extracted by the FIR filter53. For example, the cancel processing unit56performs calculation expressed by Equation 2 described below to produce the second correction signal y2.
y2=SB+SB′  Equation 2

The obtained two correction signals y1and y2are targeted to different reference targets (PR targets) and thereby have different noise profiles, respectively. Further, noise components included in two different correction signals y1and y2may be correlated to each other.

Therefore, in the embodiment, the disk drive1estimates noise by taking into account not only the interference between samples of noises included in signals of the target track but also the interference between samples of the noise interference components which is a component included in a noise component in a signal of the adjacent track and is a component interfering with the noise component in the target track, when the disk drive1performs ITI cancelling with using signals read out a plurality of adjacent tracks by the plurality of read heads22b1and22b2, in order to achieve improvement in estimation accuracy of noise.

For example, to estimate the noise component, the auto regressive moving average model as illustrated inFIG. 4is applied to two correction signals output from the interference canceller50.

That is, when focusing on the read head22b1and considering track A as the target track, a noise component NAt in the first correction signal y1at the present time t receives time-correlated effect from noise components NAt-1and NAt-2in the first correction signal y1at past points of time t-1and t-2, as illustrated inFIG. 5. Along with this, the noise component NAt in the first correction signal y1at the present time t also receives effect from noise interference components NBt′, NBt-1′, and NBt-2′ which are interference components of noise components in the second correction signal y2at the present time t and the past points of time t-1and t-2with the noise component in the first correction signal y1. Therefore, as for the first correction signal y1, the noise included in the first correction signal y1at the present time t is estimated by using the auto regressive model of the noise component included in the first correction signal y1and the moving average model of the noise interference component in the second correction signal y2.

Further, when focusing on the read head22b2and considering track B as the target track, the noise component NBt in the second correction signal y2at the present time t receives time-correlated effect from noise components NBt-1and NBt-2in the second correction signal y2at past points of time t-1and t-2, as illustrated inFIG. 6. Along with this, the noise component NBt in the second correction signal y2at the present time t also receives effect from noise interference components NAt′, NAt-1′, and NAt-2′ which are interference components of noise components in the first correction signal y1at the present time t and the past points of time t-1and t-2with the noise component in the second correction signal y2. Therefore, as for the second correction signal y2, the noise included in the second correction signal y2at the present time t is estimated by using the auto regressive model of the noise component included in the second correction signal y2and the moving average model of the noise interference component in the first correction signal y1.

Further, since the interference pattern of noise depends on the recording bit patterns of two different tracks, the coefficient for estimating noise is dynamically changed according to the branch label (pattern label641) of the Viterbi equalizer60including recording bit strings of two tracks as a branch label. The branch label (pattern label641) is configured that the recording bit strings of two tracks is distinguishable from each other. For example, in the branch label (pattern label641), the bit string in the higher level corresponds to the bit string for track A and the bit string in the lower level corresponds to the bit string for track B.

At this time, the branch metric (likelihood) M which is considered in one time-transition used in the Viterbi equalizer60can be provided by Equation 3 described below.

In Equation 3, the first term corresponds to the dispersion of noise and the second term corresponds to the time correlation characteristic of noise. In Equation 3, Ri is a matrix representing noise dispersion of the recording bit string of two tracks which is expressed by Equation 4 described below. Further, z is a vector representing the Euclidean distance of time between signals of noise components, which is expressed by Equation 5 described below. As expressed by Equation 3, the branch metric (likelihood) M can accurately be obtained by improving the accuracy of noise estimation.

In Equation 4, σa2is a noise dispersion value of the read signal of the first track (track A) and σb2is a noise dispersion value of the read signal of the second track (track B). σaσbis a noise dispersion value, by the interference from the first track (track A), in the read signal of the second track (track B). σbσais a noise dispersion value, by the interference from the second track (track B), in the read signal of the first track (track A).

In Equation 5, yatis an amplitude of the first correction signal of the first track (track A) at the present time t, and satis an amplitude, at the present time t, of the reference component for the first correction signal. yaiis an amplitude of the first correction signal of the first track (track A) at the past time i (i=t-1, . . . , t-L), and saiis an amplitude, at the past time i (i=t-1, . . . , t-L), of the reference component for the first correction signal. In the embodiment, the case in which L=2 is exemplarily described to simplify the description. However, L may be three or more.

In Equation 5, waaiis a noise correlation coefficient representing correlation effect of the noise component in the first correction signal of the first track (track A) at the past time i (i=t-1, . . . , t-L) on the noise component at the present time t. waaiis expressed by Equation 6 described below.
ωaai=ca−1hEquation 6

In Equation 6, caand h are provided as components of autocovariance matrix nm representing time correlation characteristic of the noise component of the first track (track A). The autocovariance matrix nais expressed by Equation 7 described below.

In Equation 7, niarepresents an amplitude of the noise component included in the first correction signal of the first track (track A) at the past time i. ni-1arepresents an amplitude of the noise component included in the first correction signal of the first track (track A) at the past time i-1. ni-2arepresents an amplitude of the noise component included in the first correction signal of the first track (track A) at the past time i-2. w represents the degree of time correlation which is experimentally obtained in advance. Components niato ni-2amay be different from each other according to the pattern label641(recording bit string of two tracks).

In Equation 5, wbbiis a noise correlation coefficient representing correlation effect of the noise component in the second correction signal of the second track (track B) at the past time i (i=t-1, . . . , t-L) on the noise component at the present time t. wbbiis expressed by Equation 8 described below.
ωbbi=cb−1hEquation 8

In Equation 8, cband h are provided as components of autocovariance matrix nbrepresenting time correlation characteristic of the noise component of the second track (track B). The autocovariance matrix nbis expressed by Equation 9 described below.

In Equation 9, nibrepresents an amplitude of the noise component included in the second correction signal of the second track (track B) at the past time i. ni-1brepresents an amplitude of the noise component included in the second correction signal of the second track (track B) at the past time i-1. ni-2brepresents an amplitude of the noise component included in the second correction signal of the second track (track B) at the past time i-2. w is a value representing the degree of time correlation which is experimentally obtained in advance. Components nibto ni-2bmay be different from each other according to the pattern label641(recording bit strings of two tracks).

In Equation 5, wbaiis a noise interference correlation coefficient representing correlation effect of the noise interference component at the past time i (i=t-1, . . . , t-L) on the noise interference component at the present time t, where the noise interference component is an interference component of the noise component in the second correction signal of the second track (track B) with the noise component in the first correction signal of the first track (track A) at the present time t. wbaiis expressed by Equation 10 described below.
ωbai=[hbahahb]TEquation 10

In Equation 10, hbaand hahbare provided as components of cross-covariance matrix nanbrepresenting time correlation characteristic of the noise interference component between the noise component of the first track (track A) and the noise component of the second track (track B). The cross-covariance matrix nanbis expressed by Equation 12 described below.

In Equation 5, wabiis a noise interference correlation coefficient representing correlation effect of the noise interference component at the past time i (i=t-1, . . . , t-L) on the noise interference component at the present time t, where the noise interference component is an interference component of the noise component in the first correction signal of the first track (track A) with the noise component in the second correction signal of the second track (track B) at the present time t. wabiis expressed by Equation 11 described below.
ωabi=[habThahb]TEquation 11

In Equation 11, haband hahbare provided as components of cross-covariance matrix nanbrepresenting time correlation characteristic of the noise interference component between the noise component of the first track (track A) and the noise component of the second track (track B). The cross-covariance matrix nanbis expressed by Equation 12 described below.

By operating the Viterbi equalizer60using the branch metric (likelihood) M derived from Equation 3 to Equation 12, each of the noises included in read signals obtained from two different read heads22b1and22b2can be estimated accurately. Thereby, the noise can efficiently be suppressed and whitened.

Specifically, as illustrated inFIG. 4, the Viterbi equalizer60estimates a noise component n11in the first correction signal y1according to time correlation characteristic of the noise component. The Viterbi equalizer60also estimates a noise interference component n21, which interferes with the first correction signal y1, in the estimated second correction signal y2, according to time correlation characteristic of the noise interference component. The Viterbi equalizer60estimates the noise n1included in the first correction signal y1using the noise component n11and the noise interference component n21. The Viterbi equalizer60corrects the first correction signal y1using the estimated noise n1. For example, the Viterbi equalizer60corrects the first correction signal y1by subtracting the noise n1from the first correction signal y1. The Viterbi equalizer60equalizes the corrected first correction signal s1.

Further, the Viterbi equalizer60estimates the noise component n22in the second correction signal y2according to time correlation characteristic of the noise component. The Viterbi equalizer60also estimates the noise interference component n12, which interferes with the second correction signal y2, in the estimated fist correction signal y1, according to time correlation characteristic of the noise interference component. The Viterbi equalizer60estimates the noise n2included in the second correction signal y2using the noise component n22and the noise interference component n12. The Viterbi equalizer60corrects the second correction signal y2using the estimated noise n2. For example, the Viterbi equalizer60corrects the second correction signal y2by subtracting the noise n2from the second correction signal y2. The Viterbi equalizer60equalizes the corrected second correction signal s2.

The Viterbi equalizer60includes a first estimation unit (the first calculation unit)70, a second estimation unit (the second calculation unit)80, a first correction unit61, a second correction unit62, an equalization processing unit63, and an index convertor64.

The first estimation unit70estimates the noise component n11in the first correction signal y1according to time correlation characteristic of the noise component. The first estimation unit70also estimates the noise interference component n12, which interferes with the second correction signal y2, in the first correction signal y1, according to time correlation characteristic of the noise interference component. That is, the first estimation unit70calculates the noise component n11of the first track (track A) based on the noise component of the first track at the first time (time t) and the noise component of the first track at the second time (time t-1and t-2) which is earlier than the first time. Along with this, the first estimation unit70calculates the noise interference component n12of the first track based on the noise interference component of the first track at the first time and the noise interference component of the first track at the second time. The first estimation unit70supplies the noise component n11to the first correction unit61and the noise interference component n12to the second correction unit62.

For example, the first estimation unit70includes multiple stages of first delay units71-1and71-2, a multiplication unit72, a plurality of first multiplication units73-1and73-2, a first add-up unit74, a plurality of third multiplication units75-0,75-1, and75-2, and a third add-up unit76.

The multiple stages of first delay units71-1and71-2produce a plurality of noise components having different delays from the noise component n11estimated by the first estimation unit70. For example, the first delay unit71-1receives the noise component n11from the first add-up unit74and delays the noise component n11by a delay D. Then, the first delay unit71-1outputs the noise component delayed by the delay D to the first multiplication unit73-1, the first delay unit71-2, and the third multiplication unit75-1. The first delay unit71-2further delays, by the delay D, the noise component already delayed by the delay D, and outputs the noise component delayed by twice the delay D to the first multiplication unit73-2and the third multiplication unit75-2.

The multiplication unit72receives a noise basic component ‘e’ from the equalization processing unit63, and a pattern index from the index convertor64. The pattern index is an identifier for identifying which path the pattern label641including the recording bit string of the two tracks corresponds to among a plurality of paths to be processed by the equalization processing unit63. The multiplication unit72has a table in which a plurality of pattern indexes is associated with a noise producing coefficient S. The multiplication unit72selects a noise producing coefficient S corresponding to a received pattern index according to the table. The multiplication unit72produces a noise component ntat the present time t by multiplying the noise basic component κ by the noise producing coefficient S, and outputs the noise component ntto the first add-up unit74.

The plurality of the first multiplication units73-1and73-2multiplies each of noise components output from first delay units of different stages among the first delay units71-1and71-2of multiple stages by the noise correlation coefficient (seeFIG. 6) corresponding to time correlation characteristic of the noise component, and outputs the obtained product as a noise component.

For example, the first multiplication unit73-1receives the noise component delayed by the delay D from the first delay unit71-1, and a pattern index from the index convertor64. The first multiplication unit73-1has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient waat-1. The first multiplication unit73-1selects the noise correlation coefficient waat-1corresponding to the received pattern index according to the table, and multiplies the noise component, delayed by the delay D, by the noise correlation coefficient waat-1. Thereby, the first multiplication unit73-1produces a noise component Δnt,t-1which the noise component ntat the present time t receives from the noise component nt-1at the past time t-1, and outputs the noise component Δnt,t-1to the first add-up unit74.

The first multiplication unit73-2receives the noise component delayed by twice the delay D from the first delay unit71-2, and a pattern index from the index convertor64. The first multiplication unit73-2has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient waat-2. The first multiplication unit73-2selects the noise correlation coefficient waat-2corresponding to the received pattern index according to the table. The first multiplication unit73-2multiplies the noise component, delayed by twice the delay D, by the noise correlation coefficient waat-2to produce the noise component Δnt,t-2which the noise component ntat the present time t receives from the noise component nt-2at the past time t-2, and outputs the noise component Δnt,t-2to the first add-up unit74.

The first add-up unit74adds up the noise component ntoutput from the multiplication unit72, the noise component Δnt,t-1output from the first multiplication unit73-1, and the noise component Δnt,t-2output from the first multiplication unit73-2. The first add-up unit74performs the addition expressed by Equation 13 described below to obtain the add-up result which is the noise component n11. The first add-up unit74outputs the noise component n11to the first correction unit61, the first delay unit71-1, and the third multiplication unit75-0.
n11=nt+Δnt,t-1+Δnt,t-2Equation 13

The plurality of the third multiplication units75-0,75-1, and75-2multiplies each of the noise component n11estimated by the first estimation unit70and noise components output from first delay units of different stages among the multiple stages of first delay units71-1and71-2by the noise interference correlation coefficient (see Equation 11) corresponding to time correlation characteristic of the noise interference component, and outputs the obtained product as the noise interference component.

For example, the third multiplication unit75-0receives the noise component n11from the first add-up unit74, and a pattern index from the index convertor64. The third multiplication unit75-0has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wabt. The first multiplication unit73-1selects the noise correlation coefficient wabtcorresponding to the received pattern index according to the table, and multiplies the noise component n11by the noise correlation coefficient wabt. Thereby, the third multiplication unit75-0produces the noise interference component Δnab,tat the present time t, and outputs the noise component Δnab,tto the third add-up unit76.

The third multiplication unit75-1receives the noise component delayed by the delay D from the first delay unit71-1, and a pattern index from the index convertor64. The third multiplication unit75-1has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wabt-1. The third multiplication unit75-1selects the noise correlation coefficient wabt-1corresponding to the received pattern index according to the table, and multiplies the noise component, delayed by the delay D, by the noise correlation coefficient wabt-1. Thereby, the third multiplication unit75-1produces a noise interference component Δnab,t-1at the past time t-1, and outputs the noise interference component Δnab,t-1to the third add-up unit76.

The third multiplication unit75-2receives the noise component delayed by twice the delay D from the first delay unit71-2, and a pattern index from the index convertor64. The third multiplication unit75-2has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wabt-2. The third multiplication unit75-2selects the noise correlation coefficient wabt-2corresponding to the received pattern index according to the table. The third multiplication unit75-2multiplies the noise component, delayed by twice the delay D, by the noise correlation coefficient wabt-2to produce a noise interference component Δnab,t-2at the past time t-2, and outputs the noise interference component Δnab,t-2to the third add-up unit76.

The third add-up unit76adds up the noise interference component nab,toutput from the third multiplication unit75-0, the noise interference component Δnab,t-1output from the third multiplication unit75-1, and the noise component Δnab,t-2output from the third multiplication unit75-2. The third add-up unit76performs the addition expressed by Equation 14 described below to obtain the add-up result which is the noise interference component n12. The third add-up unit76outputs the noise interference component n12to the second correction unit62.
n12=Δnab,t+Δnab,t-1+Δnab,t-2Equation 14

The second estimation unit80estimates the noise component n22in the second correction signal y2according to time correlation characteristic of the noise component. The second estimation unit80also estimates the noise interference component n21, which interferes with the first correction signal y1, in the second correction signal y2, according to time correlation characteristic of the noise interference component. That is, the second estimation unit80calculates the noise component n22of the second track (track B) based on the noise component of the second track at the first time (time t) and the noise component of the second track at the second time (time t-1and t-2) which is earlier than the first time. Along with this, the second estimation unit80calculates the noise interference component n21of the second track based on the noise interference component of the second track at the first time and the noise interference component of the second track at the second time. The second estimation unit80supplies the noise component n22to the second correction unit62and the noise interference component n21to the first correction unit61.

For example, the second estimation unit80includes multiple stages of second delay units81-1and81-2, a multiplication unit82, a plurality of fourth multiplication units83-1and83-2, a fourth add-up unit84, a plurality of second multiplication units85-0,85-1, and85-2, and a second add-up unit86.

The multiple stages of second delay units81-1and81-2produce a plurality of noise components having different delays from the noise component n11estimated by the second estimation unit80. For example, the second delay unit81-1receives the noise component n22from the fourth add-up unit84and delays the noise component n22by the delay D. The second delay unit81-1outputs the noise component delayed by the delay D to the fourth multiplication unit83-1, the second delay unit81-2, and the second multiplication unit85-1. The second delay unit81-2further delays, by the delay D, the noise component already delayed by the delay D, and outputs the noise component delayed by twice the delay D to the fourth multiplication unit83-2and the second multiplication unit85-2.

The multiplication unit82receives a noise basic component ‘e’ from the equalization processing unit63, and a pattern index from the index convertor64. The pattern index is an identifier for identifying the path to which the pattern label641including the recording bit string of the two tracks corresponds among a plurality of paths to be processed by the equalization processing unit63. The multiplication unit82has a table in which a plurality of pattern indexes is associated with a noise producing coefficient ‘S’. The multiplication unit82selects the noise producing coefficient S corresponding to the received pattern index according to the table. The multiplication unit82multiplies the noise basic component ‘e’ by the noise producing coefficient ‘S’ to produce the noise component ntat the present time t, and outputs the noise component ntto the fourth add-up unit84.

The plurality of the fourth multiplication units83-1and83-2multiplies each of noise components output from second delay units of different stages among the multiple stages of second delay units81-1and81-2by the noise correlation coefficient (see Equation 8) corresponding to time correlation characteristic of the noise component, and outputs the obtained product as a noise component.

For example, the fourth multiplication unit83-1receives the noise component delayed by the delay D from the second delay unit81-1, and a pattern index from the index convertor64. The fourth delay unit83-1has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wbbt-1. The fourth multiplication unit83-1selects the noise correlation coefficient wbbt-1corresponding to the received pattern index according to the table, and multiplies the noise component, delayed by the delay D, by the noise correlation coefficient wbbt-1. Thereby, the fourth multiplication unit83-1produces the noise component Δnt,t-1which the noise component ntat the present time t receives from the noise component nt-1at the past time t-1, and outputs the noise component Δnt,t-1to the fourth add-up unit84.

The fourth multiplication unit83-2receives the noise component delayed by twice the delay D from the second delay unit81-2, and a pattern index from the index convertor64. The fourth multiplication unit83-2has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wbbt-2. The fourth multiplication unit83-2selects the noise correlation coefficient wbbt-2corresponding to the received pattern index according to the table. The fourth multiplication unit83-2multiplies the noise component, delayed by twice the delay D, by the noise correlation coefficient wbbt-2to produce the noise component Δnt,t-2which the noise component ntat the present time t receives from the noise component nt-2at the past time t-2, and outputs the noise component Δnt,t-2to the fourth add-up unit84.

The fourth add-up unit84adds up the noise component ntoutput from the multiplication unit82, the noise component Δnt,t-1output from the fourth multiplication unit83-1, and the noise component Δnt,t-2output from the fourth multiplication unit83-2. The fourth add-up unit84performs the addition expressed by Equation 15 described below to obtain the add-up result which is the noise component n22. The fourth add-up unit84outputs the noise component n22to the second correction unit62, the second delay unit81-1, and the second multiplication unit85-0.
n22=nt=Δnt,t-1+Δnt,t-2Equation 15

The plurality of the second multiplication units85-0,85-1, and85-2multiplies each of the noise component n22estimated by the second estimation unit80and noise components output from second delay units of different stages among the multiple stages of second delay units81-1and81-2by the noise interference correlation coefficient (see Equation 10) corresponding to time correlation characteristic of the noise interference component, and outputs the obtained product as the noise interference component.

For example, the second multiplication unit85-0receives the noise component n22from the fourth add-up unit84, and a pattern index from the index convertor64. The second delay unit85-0has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wbat. The fourth multiplication unit83-1selects the noise correlation coefficient wbatcorresponding to the received pattern index according to the table, and multiplies the noise component n22by the noise correlation coefficient wbat. Thereby, the second multiplication unit85-0produces a noise interference component Δnba,tat the present time t, and outputs the noise interference component Δnba,tto the second add-up unit86.

The second multiplication unit85-1receives the noise component delayed by the delay D from the second delay unit81-1, and a pattern index from the index convertor64. The second multiplication unit85-1has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wbat-1. The second multiplication unit85-1selects the noise correlation coefficient wbat-1corresponding to the received pattern index according to the table, and multiplies the noise component, delayed by the delay D, by the noise correlation coefficient wbat-1. Thereby, the second multiplication unit85-1produces the noise interference component Δnbat-1at the past time t-1, and outputs the noise interference component Δnba,t-1to the second add-up unit86.

The second multiplication unit85-2receives the noise component delayed by twice the delay D from the second delay unit81-2, and a pattern index from the index convertor64. The second delay unit85-2has a table in which a plurality of pattern indexes is associated with a noise correlation coefficient wbat-2. The second multiplication unit85-2selects the noise correlation coefficient wbat-2corresponding to the received pattern index according to the table. The second multiplication unit85-2multiplies the noise component, delayed by twice the delay D, by the noise correlation coefficient wbat-2to produce the noise interference component Δnba,t-2at the past time t-2, and outputs the noise interference component Δnba,t-2to the second add-up unit86.

The second add-up unit86adds up the noise interference component nba,toutput from the second multiplication unit85-0, the noise interference component Δnba,t-1output from the second multiplication unit85-1, and the noise component Δnba,t-2output from the second multiplication unit85-2. The second add-up unit86performs the addition expressed by Equation 16 described below to obtain the add-up result which is the noise interference component n21. The second add-up unit86outputs the noise interference component n21to the first correction unit61.
n21=Δnba,t+Δnba,t-1+Δnba,t-2Equation 16

The first correction unit61corrects the first correction signal y1using the noise component n11estimated by the second estimation unit80and the noise interference component n21estimated by the second estimation unit80. For example, the first correction unit61includes subtraction units611and612. The subtraction unit611subtracts the noise component n11from the first correction signal y1and supplies the subtraction result to the subtraction unit612. The subtraction unit612subtracts the noise interference component n21from the subtraction result obtained by the subtraction unit611. Thereby, the first correction unit61performs the calculation expressed by Equation 17 described below. The first correction unit61supplies the corrected first correction signal s1to the equalization processing unit63.
s1=y1−n11−n21  Equation 17

The second correction unit62corrects the second correction signal y2using the noise component n22estimated by the second estimation unit80and the noise interference component n12estimated by the second estimation unit80. For example, the second correction unit62includes subtraction units621and622. The subtraction unit621subtracts the noise component n22from the second correction signal y2and supplies the subtraction result to the subtraction unit622. The subtraction unit622subtracts the noise interference component n12from the subtraction result obtained by the subtraction unit621. Thereby, the second correction unit62performs the calculation expressed by Equation 18 described below. The second correction unit62supplies the corrected second correction signal s2to the equalization processing unit63.
s2=y2−n22−n12  Equation 18

The equalization processing unit63calculates the likelihood (branch metric M expressed by Equation 3) of the first correction signal s1using the first correction signal s1corrected by the first correction unit61, and equalizes the first correction signal s1according to the calculated likelihood. Along with this, the equalization processing unit63calculates the likelihood (branch metric M expressed by Equation 3) of the second correction signal s2using the second correction signal s2corrected by the second correction unit62, and equalizes the second correction signal s2according to the calculated likelihood. The equalization processing unit63produces read data including the equalized first correction signal s1and the equalized second correction signal s2. The equalization processing unit63supplies the produced read data to the decoder90.

For example, the equalization processing unit63includes a two-input Viterbi detector631. The two-input Viterbi detector631has two input systems, that is, the input system for receiving a signal from the first correction unit61and the input system for receiving a signal from the second correction unit62. The two-input Viterbi detector631can equalize the first correction signal s1and the second correction signal s2in parallel and simultaneous. The two-input Viterbi detector631obtains a total sum of the branch metric M (path metric) for each of a plurality of paths with regard to the first correction signal s1. Then, the two-input Viterbi detector631selects, among the plurality of paths, a path with the smallest total sum of the branch metric M (path metric) as the maximum likelihood path for the first correction signal s1, and equalizes the first correction signal s1to the data series corresponding to the selected path. Further, the two-input Viterbi detector631obtains the total sum of the branch metric M (path metric) for each of a plurality of paths with regard to the first correction signal s2. Then, the two-input Viterbi detector631selects, among the plurality of paths, a path with the smallest total sum of the branch metric M (path metric) as the maximum likelihood path, and equalizes the second correction signal s2to the data series corresponding to the selected path.

Further, the two-input Viterbi detector631informs the index convertor64of the bit label (pattern label641) corresponding to the focused path (bit sequence).

The index convertor64converts the informed pattern label641into a corresponding pattern index. The index convertor64supplies the converted pattern index to each of the multiplication unit72, the plurality of first multiplication units73-1and73-2, the plurality of third multiplication units75-0,75-1, and75-2, the multiplication unit82, the plurality of fourth multiplication units83-1and83-2, and the plurality of second multiplication units85-0,85-1, an85-2.

The decoder90receives the read data from the Viterbi equalizer60. The decoder90recognizes each of a data portion and an LDPC code in the read data, and decodes the LDPC code by applying LDPC decoding processing to the LDPC code. The LDPC code is previously encoded and included in the write data when the data is written and is used for correcting errors. The decoder90performs correction processing to correct an error in the data portion using the decoded LDPC code. That is, the decoder90corrects the error of each bit in the data portion to restore the user data. The description is made for the controller CTR correcting an error according to the LDPC method during writing and readout of data as an example. However, a method for correcting errors other than the LDPC method may be used.

Next, the operation of the disk drive1will be described usingFIG. 7.FIG. 7is a flowchart illustrating the operation of the disk drive1.

The disk drive1performs in parallel an operation (S1) of reading out the read signal RSAfrom the first track (track A) using the read head22b1and an operation (S2) of reading out the read signal RSBfrom the second track (track B) using the read head22b2.

The interference canceller50produces the first correction signal y1by cancelling the signal interference component SA′ from the second track (track B) in the read signal RSAread out from the first track (track A) (S3). Along with this, the interference canceller50produces a second correction signal y2by cancelling the signal interference component SB′ from the first track (track A) in the read signal RSBread out from the second track (track B) (S4). The processing in S3and the processing in S4are performed in parallel.

The Viterbi equalizer60estimates the noise component n1in the first correction signal y1according to the time correlation characteristic of the noise component (S5). The Viterbi equalizer60estimates the noise interference component n12, which interferes with the second correction signal y2, in the estimated first correction signal y1, according to time correlation characteristic of the noise interference component (S6). The processing in S5and the processing in S6are performed according to completion of the processing in S3.

The Viterbi equalizer60estimates the noise interference component n21, which interferes with the first correction signal y1, in the estimated second correction signal y2, according to time correlation characteristic of the noise interference component (S7). The Viterbi equalizer60estimates the noise component n22in the second correction signal y2according to time correlation characteristic of the noise component (S8). The processing in S7and the processing in S8are performed according to completion of the processing in S4.

The Viterbi equalizer60estimates the noise n1included in the first correction signal y1using the noise component n11estimated in S5and the noise interference component n21estimated in37. The Viterbi equalizer60corrects the first correction signal y1using the estimated noise n1(S9). The Viterbi equalizer60estimates the noise n2included in the second correction signal y2using the noise component n22estimated in S8and the noise interference component n12estimated in S6. The Viterbi equalizer60corrects the second correction signal y2using the estimated noise n2(S10).

The Viterbi equalizer60calculates the likelihood (branch metric M expressed by Equation 3) of the first correction signal s1using the first correction signal s1corrected in S9, and equalizes the first correction signal s1according to the calculated likelihood. Along with this, the Viterbi equalizer60calculates the likelihood (branch metric M expressed by Equation 3) of the second correction signal s2using the second correction signal s2corrected in S10, and equalizes the second correction signal s2according to the calculated likelihood (S11). InFIG. 7, the first processing and the second processing are performed in parallel. The first processing includes estimation of the noise component n11in the first correction signal y1(S5), estimation of the noise interference component n21in the second correction signal y2(S7), correction of the first correction signal y1(S9), calculation of the likelihood of the corrected first correction signal s1(S11), and equalization of the first correction signal s1(S11). The second processing includes estimation of the noise interference component n12in the first correction signal y1(S6), estimation of the noise component n22in the second correction signal y2(S8), correction of the second correction signal y2(S10), calculation of the likelihood of the corrected second correction signal s2(S11), and equalization of the second correction signal s2(S11).

The equalization processing unit63produces read data including the equalized first correction signal s1and the equalized second correction signal s2. The equalization processing unit63supplies the produced read data to the decoder90. The decoder90receives the read data from the Viterbi equalizer60. The decoder90performs decoding and error correction of the LDPC code to restore the user data (S12).

As described above, in the disk drive1of the embodiment, correlation components of interference and noise in the signal read out from a plurality of adjacent tracks using the different read heads are estimated and made to cancel each other. That is, the Viterbi equalizer60estimates the noise included in the first correction signal y1by using the noise component in the first correction signal y1which is estimated according to time correlation characteristic of the noise component and by using the noise interference component in the second correction signal y2which interferes with the first correction signal y1and which is estimated according to time correlation characteristic of the noise interference component. Further, the Viterbi equalizer60estimates the noise included in the second correction signal y2by using the noise component in the second correction signal y2which is estimated according to time correlation characteristic of the noise component and by using the noise interference component in the first correction signal y1which interferes with the second correction signal y2and which is estimated according to time correlation characteristic of the noise interference component. In this manner, noise power can be reduced for each of the plurality of signals read out from the plurality of adjacent tracks, thereby improving read characteristic. That is, the noise included in the read signal obtained by two different read heads22b1and22b2can be estimated accurately. Thereby, the noise can efficiently be suppressed and whitened. In this manner, the influence of the noise from the adjacent track can efficiently be eliminated so that the track width of the magnetic disk11can easily be made narrow, raising the track recording density. As a result, a high capacity drive can be provided.

It should be noted that, as for the configuration for switching the noise correlation coefficient and the noise interfering correlation coefficient according to the pattern label (recording bit string of two tracks) to be processed in the equalization processing unit63, each of the multiplication unit72, the plurality of first multiplication units73-1and73-2, the plurality of third multiplication units75-0,75-1, and75-2, the multiplication unit82, the plurality of fourth multiplication units83-1and83-2, and the plurality of second multiplication units85-0,85-1, and85-2may be multiplexed by the number of patterns. In this case, the disk drive1may have a configuration in which the index convertor64is omitted from the configuration illustrated inFIG. 4.

Alternatively, each of the multiplication unit72, the plurality of first multiplication units73-1and73-2, the plurality of third multiplication units75-0,75-1, and75-2, the multiplication unit82, the plurality of fourth multiplication units83-1and83-2, and the plurality of second multiplication units85-0,85-1, and85-2may be multiplexed by ‘the number of pattern’/N (N: integer of 2 or more). In this case, the index convertor64can send information on N types of the patter index to the multiplication unit72, the plurality of first multiplication units73-1and73-2, the plurality of third multiplication units75-0,75-1, and75-2, the multiplication unit82, the plurality of fourth multiplication units83-1and83-2, and the plurality of second multiplication units85-0,85-1, and85-2. In this manner, the configuration of the index convertor64can be simplified.