Patent application title:

Disk drive adapting equalizer relative to bit error rate of sequence detector

Publication number:

-

Publication date:
Application number:

12/178,430

Filed date:

2008-07-23

βœ… Patent granted

Patent number:

US 7,944,639 B1

Grant date:

2011-05-17

PCT filing:

-

PCT publication:

-

Examiner:

Daniell L NegrΓ³n

Adjusted expiration:

2029-01-26

Smart Summary: A disk drive includes a disk and a head that reads data from the disk, generating a read signal. This signal is sampled to create a series of read signal samples, which are then processed by an equalizer to improve their quality. A sequence detector analyzes these improved samples to estimate the original data sequence based on predefined target values. Control circuitry adjusts the equalizer's settings by comparing expected results with the actual output and calculating how to minimize errors. This process helps enhance the accuracy of data retrieval from the disk. πŸš€ TL;DR

Abstract:

A disk drive is disclosed comprising a disk and a head actuated radially over the disk, wherein the head generates a read signal. A sampling device samples the read signal to generate a sequence of read signal samples, and an equalizer comprising a plurality of coefficients, equalizes the read signal samples to generate a sequence of equalized samples. A sequence detector detects an estimated data sequence from the equalized samples, wherein the sequence detector operates according to a target response comprising a plurality of target values. Control circuitry adapts the equalizer coefficients by computing error values in response to a difference between expected samples and the equalized samples, computing a gradient in response to a correlation of the read signal samples with the error values, and adjusting at least one of the equalizer coefficients in response to the gradient.

Inventors:

Assignee:

Interested in similar patents?

Get notified when new applications in this technology area are published.

Classification:

G11B5/53 IPC

Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor; Disposition or mounting of heads relative to record carriers with simultaneous movement of head and record carrier, e.g. rotation of head Disposition or mounting of heads on rotating support

G11B5/09 IPC

Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor; Recording, reproducing, or erasing methods; Read, write or erase circuits therefor Digital recording

Description

BACKGROUND

Description of the Related Art

Disk drives comprise a read channel for processing the read signal emanating from the head in order to demodulate the data recorded on the disk surface. The read channel typically comprises a sampling device for sampling the read signal to generate a sequence of read signal samples, an equalizer comprising a plurality of coefficients for equalizing the read signal samples to generate a sequence of equalized samples, and a sequence detector for detecting an estimated data sequence from the equalized samples according to a target response. Any suitable target response may be employed, such as a suitable partial response (e.g., PR4, EPR4, etc.), and any suitable sequence detector may be employed (e.g., Viterbi, Turbo Decoder, etc.).

The accuracy of the sequence detector is affected by the performance of the equalizer, wherein techniques have been employed to adapt the equalizer coefficients in order to optimize performance. Prior art techniques for adapting the equalizer typically attempt to adjust the equalizer coefficients according to a gradient that minimizes noise power and intersymbol interference (ISI) in terms of minimum mean squared error (MMSE), least mean squared error (LMS), or a zero forcing (ZF) algorithm.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A shows a disk drive according to an embodiment of the present invention comprising a disk, a head actuated over the disk, and control circuitry.

FIG. 1B shows control circuitry according to an embodiment of the present invention including a gradient calculator for computing an equalizer adapting gradient in response to a correlation of read signal samples with error values.

FIG. 2 shows control circuitry according to an embodiment of the present invention for computing the gradient in response to a sign of the error values.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

FIG. 1A shows a disk drive according to an embodiment of the present invention comprising a disk 2 and a head 4 actuated radially over the disk 2, wherein the head generates a read signal 6. A sampling device 8 (FIG. 1B) samples the read signal 6 to generate a sequence of read signal samples 10, and an equalizer 12 comprising a plurality of coefficients, equalizes the read signal 10 samples to generate a sequence of equalized samples 14. A sequence detector 16 detects an estimated data sequence 18 from the equalized samples 14, wherein the sequence detector 16 operates according to a target response comprising a plurality of target values. Control circuitry 20 adapts the equalizer coefficients by computing error values 22 in response to a difference between expected samples 24 and the equalized samples 14, computing a gradient 26 in response to a correlation of the read signal samples 10 with the error values 22, and adjusting at least one of the equalizer coefficients in response to the gradient. In one embodiment, the gradient is computed by scaling the correlation with at least one of the target values of the target response.

In the embodiment of FIG. 1A, the disk 2 comprises a plurality of embedded servo sectors 280-28N which define a number of data tracks 30. Each servo sector 28 comprising coarse head positioning information (e.g., a track address) and fine head positioning information (e.g., servo bursts). The control circuitry 20 processes the read signal 6 to demodulate the servo sectors 280-28N into a position error signal representing an error between a current radial location of the head 4 and a target radial location. The control circuitry 20 filters the position error signal with a suitable compensation filter to generate a control signal 32 applied to a voice coil motor (VCM) 34 which rotates an actuator arm 36 about a pivot in a direction that reduces the position error signal.

Any suitable sequence detector 16 may be employed in the embodiments of the present invention, such as a suitable Viterbi detector. In addition, the sequence detector 16 may operate according any suitable target response, such as a partial response (e.g., PR4, EPR4, EEPR4, etc.). The target values of the target response may be characterized by a suitable polynomial (e.g., 1-D2 for a PR4 response), wherein the coefficients of the polynomial may comprise any suitable values, including fractional values.

In one embodiment, the expected samples 24 are generated by convolving the estimated data sequence 18 with an ideal polynomial representation of the channel. In another embodiment, the expected samples 24 are generated by convolving a training data sequence with an ideal polynomial representation of the channel. The training data sequence may be prerecorded on the disk (e.g., using an external servo writer or stamping technique) or it may be written to the disk by the control circuitry 20.

In one embodiment of the present invention, the coefficients of the equalizer 12 are adapted by computing a gradient that attempts to minimize the bit error rate of the sequence detector 16. For example, in the embodiment wherein the sequence detector comprises a Viterbi detector, an error event occurs when:

βˆ‘ k ⁒ ⁒ ( y k - d k i ) 2 < βˆ‘ k ⁒ ⁒ ( y k - d k ) 2
where yk represents a sequence of equalized sample values, dk represents the correct sequence of expected sample values, dki represents an alternative sequence of expected sample values. Therefore, the probability of a Viterbi detector making an error in the presence of an error event eai can be represented as:

Pr ⁑ ( eer i ⁒ ❘ e a i ) = Pr ⁒ { βˆ‘ k ⁒ ⁒ ( y k - d k i ) 2 < βˆ‘ k ⁒ ⁒ ( y k - d k ) 2 } .
The above equation for representing an error event can be expanded into:

βˆ‘ k ⁒ ⁒ [ ( d k i ) 2 - ( d k ) 2 - 2 ⁒ y k ⁑ ( d k i - d k ) 2 ] < 0.
Letting yk=dk+zk where zk consists of statistical noise and residual intersymbol interference (ISI). Also let dki=(ai*g)k and dk=(a*g)k where a is a NRZ input sequence and g represents the target values of the target response. With akiβˆ’ak=2Β·eaki, the above equation for representing an error event can be represented as:

βˆ‘ k ⁒ ⁒ [ ( e a i * g ) k ] 2 - βˆ‘ k ⁒ ⁒ ( e a i * g ) k Β· z k < 0.
Letting eyki=(eai*g)k the above equation can be written as:

βˆ‘ k ⁒ ⁒ [ e yk i ] 2 - βˆ‘ k ⁒ ⁒ e yk i - z k < 0.

Observe zk is a statistic quantity consisting of residual ISI and statistical colored noise. Assume the summation in the above equation accounts for N consecutive samples during the error event observation window, then the error-making condition becomes:

βˆ‘ k = 0 N - 1 ⁒ ⁒ [ e yk i ] 2 - βˆ‘ k = 0 N - 1 ⁒ ⁒ e yk i Β· z k < 0.
Define column vectors:
eyi=[ey0iey1iLeyN-1i]T and z=[z0z1LzN-1]T
then the above equation becomes:
eyiTeyiβˆ’eyiTz<0.
Observe that eyiTeyiβˆ’eyiTz is a Gaussian stochastic variable with mean value M=eyiTeyi and variance V=eyiTE{zzT}eyi. Thus we can use the Q function:

Q ⁑ ( x ) = 1 2 ⁒ ⁒ Ο€ ⁒ ∫ x ∞ ⁒ β…‡ - u 2 / 2 ⁒ β…† u
to write the error event probability equation as:

Pr ⁒ { e y i T ⁒ e y i T - e y i T ⁒ z < 0 } = Q ⁑ ( e y i T ⁒ e y i e y i T ⁒ E ⁒ { zz T } ⁒ e y i ) .
Defining Rz=E{zzT} and the Viterbi pre-detection effective signal-to-noise ratio as ρi2=M2/V the error event probability equation can be written as:

Pr ( eer i ο˜„ e a i ) = Q ⁑ ( ρ i ) = Q ⁑ ( M / V ) where ⁒ : ρ i = e y i T ⁒ e y i e y i T ⁒ R z ⁒ e y i .
For error event eaki with number Ξ»i of error bits in the pattern, the bit error occurrence probability is:
Pr(eai)=21-Ξ»iΒ·Ξ»i.
Consider ΞΊ+1 number of dominant error events eaki, the error event probability equation can be approximated as

βˆ‘ i = 0 ΞΊ ⁒ Pr ( eer i ο˜„ e a i ) ⁒ Pr ⁑ ( e a i ) = βˆ‘ i = 0 ΞΊ ⁒ Q ⁑ ( e y i T ⁒ e y i e y i T ⁒ R z ⁒ e y i ) ⁒ 2 1 - Ξ» i ⁒ Ξ» i = βˆ‘ i = 0 ΞΊ ⁒ Q ⁑ ( ρ i ) ⁒ 2 1 - Ξ» i ⁒ Ξ» i .
From the above equation, the higher ρi the lower the probability of error. For a specific error event eaki, maximizing ρi means minimizing:
E=eyiTRzeyi.

In one embodiment, the coefficients of the equalizer 12 are adapted in response to a gradient that minimizes the above E. Consider an example embodiment wherein the read channel comprises the dominant error events +, +βˆ’, +βˆ’+ and +0+, and the target response comprises the target values g=[g0 g1 g2]T, then the error event contributor eyi to E can be represented in the following table:

TABLE 1
eaki eyi = [eyki = (eai * g)k]
+ [g0, g1, g2]T
+βˆ’ [g0, g1 βˆ’ g0, g2 βˆ’ g1, βˆ’g2]T
+βˆ’+ [g0, g1 βˆ’ g0, g2 βˆ’ g1 + g0, βˆ’g2 + g1, βˆ’g2]T
+0+ [g0, g1, g2 + g0, g0, g2]T

The noise correlation matrix Rz can be written as:

R z = ⌊ e k ⁒ e k e k ⁒ e k - 1 e k ⁒ e k - 2 L _ e k ⁒ e k - 1 e k - 1 ⁒ e k - 1 e k - 1 ⁒ e k - 2 L _ e k ⁒ e k - 2 e k - 1 ⁒ e k - 2 e k - 2 ⁒ e k - 2 L _ L _ L _ L _ L _ βŒ‹ .
Using the above equations, it is possible to compute the gradient for each error event that minimizes E. For example, for the β€˜+’ error event, E is computed as:

E = [ g 0 g 1 g 2 ] ⁒ ⌊ e k ⁒ e k e k ⁒ e k - 1 e k ⁒ e k - 2 e k ⁒ e k - 1 e k - 1 ⁒ e k - 1 e k - 1 ⁒ e k - 2 e k ⁒ e k - 2 e k - 1 ⁒ e k - 2 e k - 2 ⁒ e k - 2 βŒ‹ ⁒ ⌊ g 0 g 1 g 2 βŒ‹ = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁒ e k - 1 ⁒ e k - j .

Computing

βˆ‚ E βˆ‚ w m
as the adaptation gradient Ξ”wm for the wm coefficient:

Ξ” wm = βˆ‚ E βˆ‚ w m = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( e k - i ⁒ βˆ‚ e k - j βˆ‚ w m + βˆ‚ e k - i βˆ‚ w m ⁒ e k - j ) .
The above equation can be rewritten as:

Ξ” wm = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( e k - i ⁒ x k - m - j + e k - j ⁒ x k - m - i ) .
Therefore, in one embodiment, the wm coefficient is updated according to:

w m ⁑ ( k + 1 ) = w m ⁑ ( k ) - ΞΌ Β· βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( e k - i ⁒ x k - m - j + e k - j ⁒ x k - m - i )
where m=0, 1, 2, L, Nβˆ’1 and ΞΌ is the update gain.

FIG. 1B illustrates example circuitry for implementing the above equation for the β€˜+’ error event when the target response comprises three target values g=[g0 g1 g2]T. However, the above equations and corresponding circuitry can be generated for any number of target values of a target response and for any error event.

In one embodiment, the sign of the error values are used to compute the gradient in order to simplify the circuitry. In the above example for the β€˜+’ error event, the above equation can be written as:

Ξ” wm = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( sign ⁑ ( e k - i ) ⁒ x k - m - j + sign ⁑ ( e k - j ) ⁒ x k - m - i )
or equivalently:
Ξ”wm=2g02xk-m+2g12xk-m-1+2gg22xk-m-2+xk-mΒ·[g0g1Β·sign(ek-1)+g0g2Β·sign(ek-2)]+xk-m-1Β·[g0g1Β·sign(ek)+g0g2Β·sign(ek-2)]+xk-m-2Β·[g0g2Β·sign(ek)+g1g2Β·sign(ek-1)].
FIG. 2 shows example circuitry for implementing the above equation, wherein similar circuitry may be employed for other error events and/or other number of target values in the target response.

Any suitable control circuitry may be employed to implement the embodiments of the present invention, such as any suitable integrated circuit or circuits. For example, the control circuitry may be implemented within a read channel integrated circuit, or in a component separate from the read channel, such as a disk controller, or certain steps described above may be performed by a read channel and others by a disk controller.

In one embodiment, the read channel and disk controller are implemented as separate integrated circuits, and in an alternative embodiment they are fabricated into a single integrated circuit or system on a chip (SOC). In addition, the control circuitry may include a suitable preamp circuit implemented as a separate integrated circuit, integrated into the read channel or disk controller circuit, or integrated into an SOC.

In one embodiment, the control circuitry comprises a microprocessor executing instructions, the instructions being operable to cause the microprocessor to perform the steps of the flow diagrams described herein. The instructions may be stored in any computer-readable medium. In one embodiment, they may be stored on a non-volatile semiconductor memory external to the microprocessor, or integrated with the microprocessor in a SOC. In another embodiment, the instructions are stored on the disk and read into a volatile semiconductor memory when the disk drive is powered on. In yet another embodiment, the control circuitry comprises suitable logic circuitry, such as state machine circuitry.

Claims

What is claimed is:

1. A disk drive comprising:

a disk;

a head actuated radially over the disk, the head operable to generate a read signal;

a sampling device operable to sample the read signal to generate a sequence of read signal samples;

an equalizer comprising a plurality of coefficients, the equalizer operable to equalize the read signal samples to generate a sequence of equalized samples;

a sequence detector for detecting an estimated data sequence from the equalized samples, wherein the sequence detector operates according to a target response comprising a plurality of target values; and

control circuitry operable to adapt the equalizer coefficients by:

computing error values in response to a difference between expected samples and the equalized samples;

computing a gradient in response to a correlation of the read signal samples with the error values; and

adjusting at least one of the equalizer coefficients in response to the gradient.

2. The disk drive as recited in claim 1, wherein the control circuitry is operable to compute the gradient by scaling the correlation by at least one of the target values of the target response.

3. The disk drive as recited in claim 1, wherein the control circuitry is operable to compute the gradient in response to an error event of the sequence detector.

4. The disk drive as recited in claim 3, wherein the error event comprises a β€˜+’ error event.

5. The disk drive as recited in claim 4, wherein the control circuitry is operable to compute the gradient according to:

Ξ” wm = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( e k - i ⁒ x k - m - j + e k - j ⁒ x k - m - i )

where:

the equalizer comprises three coefficients w0-w2;

the target response comprises three target values g0-g2;

Ξ”wm is a gradient for the wm coefficient;

ek are the error values; and

x is a read signal sample.

6. The disk drive as recited in claim 4, wherein the control circuitry is operable to compute the gradient according to:

Ξ” wm = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( sign ⁑ ( e k - i ) ⁒ x k - m - j + sign ⁑ ( e k - j ) ⁒ x k - m - i )

where:

the equalizer comprises three coefficients w0-w2;

the target response comprises three target values g0-g2;

Ξ”wm is a gradient for the wm coefficient;

ek are the error values; and

x is a read signal sample.

7. The disk drive as recited in claim 3, wherein the control circuitry is operable to compute the gradient in response to the error event convolved with the target values of the target response.

8. The disk drive as recited in claim 7, wherein the control circuitry is operable to compute the gradient by minimizing:


eyiTRzeyi

where:

eyi represents the error event convolved with the target values of the target response; and

Rz is a noise correlation matrix.

9. A method of operating a disk drive, the disk drive comprising a disk, a head actuated radially over the disk, the head operable to generate a read signal, a sampling device operable to sample the read signal to generate a sequence of read signal samples, an equalizer comprising a plurality of coefficients, the equalizer operable to equalize the read signal samples to generate a sequence of equalized samples, and a sequence detector for detecting an estimated data sequence from the equalized samples, wherein the sequence detector operates according to a target response comprising a plurality of target values, the method comprising:

computing error values in response to a difference between expected samples and the equalized samples;

computing a gradient in response to a correlation of the read signal samples with the error values; and

adjusting at least one of the equalizer coefficients in response to the gradient.

10. The method as recited in claim 9, wherein computing the gradient comprises scaling the correlation by at least one of the target values of the target response.

11. The method as recited in claim 9, wherein the gradient is computed in response to an error event of the sequence detector.

12. The method as recited in claim 11, wherein the error event comprises a β€˜+’ error event.

13. The method as recited in claim 12, wherein computing the gradient comprises minimizing:


eyiTRzeyi

where:

eyi represents the error event convolved with the target values of the target response; and

Rz is a noise correlation matrix.

14. The method as recited in claim 12, wherein the gradient is computed according to:

Ξ” wm = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( e k - i ⁒ x k - m - j + e k - j ⁒ x k - m - i )

where:

the equalizer comprises three coefficients w0-w2;

the target response comprises three target values g0-g2;

Ξ”wm is a gradient for the wm coefficient;

ek are the error values; and

x is a read signal sample.

15. The method as recited in claim 11, wherein the gradient is computed in response to the error event convolved with the target values of the target response.

16. The method as recited in claim 12, wherein the gradient is computed according to:

Ξ” wm = βˆ‘ i = 0 2 ⁒ βˆ‘ j = 0 2 ⁒ g i ⁒ g j ⁑ ( sign ⁑ ( e k - i ) ⁒ x k - m - j + sign ⁑ ( e k - j ) ⁒ x k - m - i )

where:

the equalizer comprises three coefficients w0-w2;

the target response comprises three target values g0-g2;

Ξ”wm is a gradient for the wm coefficient;

ek are the error values; and

x is a read signal sample.

Resources

Images & Drawings included:

Sources:

Recent applications in this class:

Recent applications for this Assignee: