Disk drive correcting an error in a detected gray code
A disk drive is disclosed comprising a head actuated over a disk comprising a plurality of tracks defined by a plurality of servo sectors. An estimated track ID is generated and a plurality of proximate track IDs is generated having values proximate the estimated track ID. A set of Gray codes is generated each corresponding to the estimated track ID and the proximate track IDs, wherein each Gray code in the set of Gray codes comprises N bits, and M bits out of a high order of the N bits comprise the same value. A recorded Gray code is detected in a first servo sector to generate a detected Gray code, and an error in the detected Gray code is corrected by inverting at least one bit in the detected Gray code comprising a value that is different from the value of the corresponding bit in the M bits.
Latest Western Digital Technologies, Inc. Patents:
- Regenerative braking for tape drive
- Oversampled phase lock loop in a read channel
- Detection and isolation of faulty holdup capacitors using hardware circuit in data storage devices
- Data storage device with closed loop extended park mode during spin down operation
- Non-volatile memory with intentional overprogramming to improve short term data retention issue
This application is a divisional of U.S. patent application Ser. No. 13/614,894, filed on Sep. 13, 2012, which is hereby incorporated by reference in its entirety.
BACKGROUND Description of the Related ArtDisk drives comprise a disk and a head connected to a distal end of an actuator arm which is rotated about a pivot by a voice coil motor (VCM) to position the head radially over the disk. The disk comprises a plurality of radially spaced, concentric tracks for recording user data sectors and embedded servo sectors. The embedded servo sectors comprise head positioning information (e.g., a track ID) which is read by the head and processed by a servo controller to control the actuator arm as it seeks from track to track.
As the head passes over a servo sector, the head positioning information is processed to estimate the radial location of the head. The servo controller may comprise a state estimator which processes the detected head position to estimate various states of the head, such as its position, velocity, and acceleration. The estimated states may be compared to target values in a seek profile, wherein the error between the estimated states and target states is processed to generate a control signal applied to the VCM in order to move the head in a direction and velocity that reduces the error.
If the disk surface comprises defective servo sectors (which may be detected during a manufacturing procedure), the associated wedges of user data may be relocated to spare data sectors, or the entire data track may be relocated to a spare data track. However, relocating data wedges and/or data tracks is undesirable since it reduces the overall capacity of the disk and may also impact performance when seeking to the spare data wedges or spare data tracks. The state estimator in the servo controller will typically filter out miss-detected servo sectors during seek operations; however, if multiple sequential servo sectors are miss-detected during a seek, it may degrade performance by increasing the settle time. In addition, if the servo controller encounters a miss-detected servo sector while tracking the centerline of a data track during an access operation, the operation may be aborted and retried (particularly during write operations) which impacts performance due to the slipped revolutions.
In one embodiment shown in
In the embodiment of
In the embodiments of the present invention, the high order Gray code represents the most significant bits of the track ID in a servo sector, and the low order track code represents the least significant bits of the track ID. Accordingly, the high order Gray code bits change at a much slower frequency than the low order track code bits as the head moves radially over the disk during a seek operation. This attribute makes errors in the high order Gray code readily correctable using the track ID estimator while achieving a high density of the Gray coded bits, whereas errors in the low order track code are more likely miscorrected using the track ID estimator. Therefore, a more accurate technique is employed to correct the low order track code while accepting a reduction in format efficiency. In one embodiment, the low order track code represents only a few bits of a servo sector track ID and therefore there is a minimal reduction in overall format efficiency while achieving a more accurate track ID detection algorithm.
In an alternative embodiment, the low order track code comprises a plurality of redundancy bits such that at least one bit error is corrected when decoding the low order track code into the second part of the detected track ID. In one embodiment, the low order track code comprises codewords having sufficient distance to enable correction of one or more of the detected bits.
In the examples of
The algorithm described above with reference to
In one embodiment, the M high order common bits across the Gray code representation of the proximate track IDs is determined by comparing only the end cases. In the example shown in
In one embodiment in order to reduce the time needed to decode the corrected Gray code, the high order bits of the corrected Gray code are not decoded into the binary equivalent. Instead, the high order bits of the estimated track ID 70 (
In order to overcome the above-described ambiguity in the bit arrangement shown in
Any suitable technique may be employed to write the track ID in the servo sectors of a disk drive. In one embodiment, an external servo writer or media writer may be employed to write the track ID in the servo sectors according to the embodiments of the present invention. Alternatively, the control circuitry within each production disk drive may write the track ID in the servo sectors during a self servo writing operation. In yet another embodiment, the track ID may be written in the servo sectors using a suitable stamping or patterning technique prior to inserting the disk into the disk drive.
Any suitable control circuitry may be employed to implement the flow diagrams in 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 operations 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 a SOC.
In one embodiment, the control circuitry comprises a microprocessor executing instructions, the instructions being operable to cause the microprocessor to perform 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
1. A disk drive comprising:
- a disk comprising a plurality of tracks defined by a plurality of servo sectors;
- a head actuated over the disk; and
- control circuitry operable to: detect a high order Gray code in a first servo sector; decode the high order Gray code into a high order part of a detected track ID; detect a low order track code in the first servo sector; decode the low order track code into a low order part of the detected track ID, wherein the low order bit of the high order part of the detected track ID overlaps with the low order part of the detected track ID; and correct a single bit error in the detected high order Gray code based on the overlap, wherein: the detected track ID consists of N bits; the high order Gray code consists of N−1 bits; the low order track code consists of two bits; and the high order Gray code is the same for every two consecutive tracks.
2. The disk drive as recited in claim 1, wherein the control circuitry is further operable to combine the high order part and the low order part of the detected track ID to generate a final track ID.
3. The disk drive as recited in claim 2, wherein the control circuitry is further operable to ignore the low order bit of the high order part of the detected track ID when combining the high order part and the low order part to generate the final track ID.
4. The disk drive as recited in claim 1, wherein the control circuitry is further operable to:
- detect a position of the head over the disk; and
- correct the single bit error in the detected high order Gray code by performing one of an increment and a decrement on at least one of the detected high order Gray code and the high order part of the detected track ID, wherein the increment and the decrement are based on the detected position of the head.
5. A method of operating a disk drive, the disk drive comprising a head actuated over a disk comprising a plurality of tracks defined by a plurality of servo sectors, the method comprising:
- detecting a high order Gray code in a first servo sector;
- decoding the high order Gray code into a high order part of a detected track ID;
- detecting a low order track code in the first servo sector;
- decoding the low order track code into a low order part of the detected track ID, wherein the low order bit of the high order part of the detected track ID overlaps with the low order part of the detected track ID; and
- correcting a single bit error in the detected high order Gray code based on the overlap,
- wherein: the detected track ID consists of N bits; the high order Gray code consists of N−1 bits; the low order track code consists of two bits; and the high order Gray code is the same for every two consecutive tracks.
6. The method as recited in claim 5, further comprising combining the high order part and the low order part to of the detected track ID generate a final track ID.
7. The method as recited in claim 6, further comprising ignoring the low order bit of the high order part of the detected track ID when combining the high order part and the low order part to generate the final track ID.
8. The method as recited in claim 5, further comprising detecting a position of the head over the disk, wherein:
- correcting the single bit error in the detected high order Gray code comprises performing one of an increment and a decrement on at least one of the detected high order Gray code and the high order part of the detected track ID; and
- the increment and the decrement are based on the detected position of the head.
4949200 | August 14, 1990 | Weng |
5091643 | February 25, 1992 | Okutani et al. |
5459623 | October 17, 1995 | Blagaila et al. |
5589998 | December 31, 1996 | Yu |
5600499 | February 4, 1997 | Acosta et al. |
5737142 | April 7, 1998 | Zook |
5757567 | May 26, 1998 | Hetzler et al. |
5784219 | July 21, 1998 | Genheimer |
5852522 | December 22, 1998 | Lee |
5909334 | June 1, 1999 | Barr et al. |
5917439 | June 29, 1999 | Cowen |
5982308 | November 9, 1999 | Bang |
6005727 | December 21, 1999 | Behrens et al. |
6014283 | January 11, 2000 | Codilian et al. |
6038091 | March 14, 2000 | Reed et al. |
6043946 | March 28, 2000 | Genheimer et al. |
6052076 | April 18, 2000 | Patton, III et al. |
6052250 | April 18, 2000 | Golowka et al. |
6067206 | May 23, 2000 | Hull et al. |
6075667 | June 13, 2000 | Kisaka et al. |
6078453 | June 20, 2000 | Dziallo et al. |
6091564 | July 18, 2000 | Codilian et al. |
6094020 | July 25, 2000 | Goretzki et al. |
6101065 | August 8, 2000 | Alfred et al. |
6104153 | August 15, 2000 | Codilian et al. |
6115198 | September 5, 2000 | Reed et al. |
6118603 | September 12, 2000 | Wilson et al. |
6122133 | September 19, 2000 | Nazarian et al. |
6122135 | September 19, 2000 | Stich |
6141175 | October 31, 2000 | Nazarian et al. |
6160368 | December 12, 2000 | Plutowski |
6181502 | January 30, 2001 | Hussein et al. |
6195222 | February 27, 2001 | Heminger et al. |
6198584 | March 6, 2001 | Codilian et al. |
6198590 | March 6, 2001 | Codilian et al. |
6201652 | March 13, 2001 | Rezzi et al. |
6204988 | March 20, 2001 | Codilian et al. |
6226138 | May 1, 2001 | Blaum et al. |
6233715 | May 15, 2001 | Kuki et al. |
6243223 | June 5, 2001 | Elliott et al. |
6281652 | August 28, 2001 | Ryan et al. |
6285521 | September 4, 2001 | Hussein |
6288861 | September 11, 2001 | Blaum et al. |
6292320 | September 18, 2001 | Mason et al. |
6304398 | October 16, 2001 | Gaub et al. |
6310742 | October 30, 2001 | Nazarian et al. |
6313963 | November 6, 2001 | Hsieh |
6320718 | November 20, 2001 | Bouwkamp et al. |
6342984 | January 29, 2002 | Hussein et al. |
6345021 | February 5, 2002 | Belser et al. |
6347018 | February 12, 2002 | Kadlec et al. |
6369972 | April 9, 2002 | Codilian et al. |
6369974 | April 9, 2002 | Asgari et al. |
6405342 | June 11, 2002 | Lee |
6434719 | August 13, 2002 | Livingston |
6462896 | October 8, 2002 | Codilian et al. |
6476996 | November 5, 2002 | Ryan |
6484577 | November 26, 2002 | Bennett |
6493169 | December 10, 2002 | Ferris et al. |
6496324 | December 17, 2002 | Golowka et al. |
6498698 | December 24, 2002 | Golowka et al. |
6507450 | January 14, 2003 | Elliott |
6534936 | March 18, 2003 | Messenger et al. |
6538839 | March 25, 2003 | Ryan |
6545835 | April 8, 2003 | Codilian et al. |
6549359 | April 15, 2003 | Bennett et al. |
6549361 | April 15, 2003 | Bennett et al. |
6560056 | May 6, 2003 | Ryan |
6568268 | May 27, 2003 | Bennett |
6574062 | June 3, 2003 | Bennett et al. |
6577465 | June 10, 2003 | Bennett et al. |
6604223 | August 5, 2003 | Belser et al. |
6614615 | September 2, 2003 | Ju et al. |
6614618 | September 2, 2003 | Sheh et al. |
6636377 | October 21, 2003 | Yu et al. |
6690536 | February 10, 2004 | Ryan |
6693764 | February 17, 2004 | Sheh et al. |
6707635 | March 16, 2004 | Codilian et al. |
6710953 | March 23, 2004 | Vallis et al. |
6710966 | March 23, 2004 | Codilian et al. |
6714371 | March 30, 2004 | Codilian |
6714372 | March 30, 2004 | Codilian et al. |
6724564 | April 20, 2004 | Codilian et al. |
6731450 | May 4, 2004 | Codilian et al. |
6735041 | May 11, 2004 | Codilian et al. |
6738205 | May 18, 2004 | Moran et al. |
6738220 | May 18, 2004 | Codilian |
6747837 | June 8, 2004 | Bennett |
6760186 | July 6, 2004 | Codilian et al. |
6788483 | September 7, 2004 | Ferris et al. |
6791785 | September 14, 2004 | Messenger et al. |
6795268 | September 21, 2004 | Ryan |
6819518 | November 16, 2004 | Melkote et al. |
6826006 | November 30, 2004 | Melkote et al. |
6826007 | November 30, 2004 | Patton, III |
6847502 | January 25, 2005 | Codilian |
6850383 | February 1, 2005 | Bennett |
6850384 | February 1, 2005 | Bennett |
6856480 | February 15, 2005 | Kuki et al. |
6867944 | March 15, 2005 | Ryan |
6876316 | April 5, 2005 | Wu |
6876508 | April 5, 2005 | Patton, III et al. |
6882496 | April 19, 2005 | Codilian et al. |
6885514 | April 26, 2005 | Codilian et al. |
6900958 | May 31, 2005 | Yi et al. |
6900959 | May 31, 2005 | Gardner et al. |
6903897 | June 7, 2005 | Wang et al. |
6914740 | July 5, 2005 | Tu et al. |
6914743 | July 5, 2005 | Narayana et al. |
6920004 | July 19, 2005 | Codilian et al. |
6924959 | August 2, 2005 | Melkote et al. |
6924960 | August 2, 2005 | Melkote et al. |
6924961 | August 2, 2005 | Melkote et al. |
6934114 | August 23, 2005 | Codilian et al. |
6934135 | August 23, 2005 | Ryan |
6937420 | August 30, 2005 | McNab et al. |
6937423 | August 30, 2005 | Ngo et al. |
6952322 | October 4, 2005 | Codilian et al. |
6954324 | October 11, 2005 | Tu et al. |
6958881 | October 25, 2005 | Codilian et al. |
6963465 | November 8, 2005 | Melkote et al. |
6965488 | November 15, 2005 | Bennett |
6967458 | November 22, 2005 | Bennett et al. |
6967811 | November 22, 2005 | Codilian et al. |
6970319 | November 29, 2005 | Bennett et al. |
6972539 | December 6, 2005 | Codilian et al. |
6972540 | December 6, 2005 | Wang et al. |
6972922 | December 6, 2005 | Subrahmanyam et al. |
6975480 | December 13, 2005 | Codilian et al. |
6977789 | December 20, 2005 | Cloke |
6980389 | December 27, 2005 | Kupferman |
6987636 | January 17, 2006 | Chue et al. |
6987639 | January 17, 2006 | Yu |
6989954 | January 24, 2006 | Lee et al. |
6992848 | January 31, 2006 | Agarwal et al. |
6992851 | January 31, 2006 | Cloke |
6992852 | January 31, 2006 | Ying et al. |
6995941 | February 7, 2006 | Miyamura et al. |
6999263 | February 14, 2006 | Melkote et al. |
6999267 | February 14, 2006 | Melkote et al. |
7006320 | February 28, 2006 | Bennett et al. |
7016134 | March 21, 2006 | Agarwal et al. |
7023637 | April 4, 2006 | Kupferman |
7023640 | April 4, 2006 | Codilian et al. |
7026965 | April 11, 2006 | Wu |
7027256 | April 11, 2006 | Subrahmanyam et al. |
7027257 | April 11, 2006 | Kupferman |
7035026 | April 25, 2006 | Codilian et al. |
7046472 | May 16, 2006 | Melkote et al. |
7047477 | May 16, 2006 | Tolhuizen et al. |
7050249 | May 23, 2006 | Chue et al. |
7050254 | May 23, 2006 | Yu et al. |
7050258 | May 23, 2006 | Codilian |
7054098 | May 30, 2006 | Yu et al. |
7061714 | June 13, 2006 | Yu |
7064918 | June 20, 2006 | Codilian et al. |
7068451 | June 27, 2006 | Wang et al. |
7068459 | June 27, 2006 | Cloke et al. |
7068461 | June 27, 2006 | Chue et al. |
7068463 | June 27, 2006 | Ji et al. |
7088547 | August 8, 2006 | Wang et al. |
7095579 | August 22, 2006 | Ryan et al. |
7099095 | August 29, 2006 | Subrahmanyam et al. |
7110208 | September 19, 2006 | Miyamura et al. |
7110214 | September 19, 2006 | Tu et al. |
7113362 | September 26, 2006 | Lee et al. |
7113365 | September 26, 2006 | Ryan et al. |
7116505 | October 3, 2006 | Kupferman |
7126775 | October 24, 2006 | Zook |
7126781 | October 24, 2006 | Bennett |
7158329 | January 2, 2007 | Ryan |
7180703 | February 20, 2007 | Subrahmanyam et al. |
7184230 | February 27, 2007 | Chue et al. |
7196864 | March 27, 2007 | Yi et al. |
7199966 | April 3, 2007 | Tu et al. |
7203021 | April 10, 2007 | Ryan et al. |
7206157 | April 17, 2007 | Ehrlich |
7209321 | April 24, 2007 | Bennett |
7212364 | May 1, 2007 | Lee |
7212374 | May 1, 2007 | Wang et al |
7215504 | May 8, 2007 | Bennett |
7224546 | May 29, 2007 | Orakcilar et al. |
7248426 | July 24, 2007 | Weerasooriya et al. |
7251098 | July 31, 2007 | Wang et al. |
7253582 | August 7, 2007 | Ding et al. |
7253989 | August 7, 2007 | Lau et al. |
7265933 | September 4, 2007 | Phan et al. |
7289288 | October 30, 2007 | Tu |
7298574 | November 20, 2007 | Melkote et al. |
7301717 | November 27, 2007 | Lee et al. |
7304819 | December 4, 2007 | Melkote et al. |
7307810 | December 11, 2007 | Kang |
7330019 | February 12, 2008 | Bennett |
7330327 | February 12, 2008 | Chue et al. |
7333280 | February 19, 2008 | Lifchits et al. |
7333290 | February 19, 2008 | Kupferman |
7339761 | March 4, 2008 | Tu et al. |
7365932 | April 29, 2008 | Bennett |
7369343 | May 6, 2008 | Yeo et al. |
7388728 | June 17, 2008 | Chen et al. |
7391583 | June 24, 2008 | Sheh et al. |
7391584 | June 24, 2008 | Sheh et al. |
7433143 | October 7, 2008 | Ying et al. |
7440210 | October 21, 2008 | Lee |
7440225 | October 21, 2008 | Chen et al. |
7450334 | November 11, 2008 | Wang et al. |
7450336 | November 11, 2008 | Wang et al. |
7453661 | November 18, 2008 | Jang et al. |
7457071 | November 25, 2008 | Sheh |
7466509 | December 16, 2008 | Chen et al. |
7468855 | December 23, 2008 | Weerasooriya et al. |
7477471 | January 13, 2009 | Nemshick et al. |
7480116 | January 20, 2009 | Bennett |
7489464 | February 10, 2009 | McNab et al. |
7492546 | February 17, 2009 | Miyamura |
7495857 | February 24, 2009 | Bennett |
7499236 | March 3, 2009 | Lee et al. |
7502192 | March 10, 2009 | Wang et al. |
7502195 | March 10, 2009 | Wu et al. |
7502197 | March 10, 2009 | Chue |
7505223 | March 17, 2009 | McCornack |
7542225 | June 2, 2009 | Ding et al. |
7548392 | June 16, 2009 | Desai et al. |
7551390 | June 23, 2009 | Wang et al. |
7558016 | July 7, 2009 | Le et al. |
7573670 | August 11, 2009 | Ryan et al. |
7576941 | August 18, 2009 | Chen et al. |
7580212 | August 25, 2009 | Li et al. |
7583470 | September 1, 2009 | Chen et al. |
7595954 | September 29, 2009 | Chen et al. |
7602575 | October 13, 2009 | Lifchits et al. |
7616399 | November 10, 2009 | Chen et al. |
7619844 | November 17, 2009 | Bennett |
7626782 | December 1, 2009 | Yu et al. |
7630162 | December 8, 2009 | Zhao et al. |
7639447 | December 29, 2009 | Yu et al. |
7656604 | February 2, 2010 | Liang et al. |
7656607 | February 2, 2010 | Bennett |
7660067 | February 9, 2010 | Ji et al. |
7663835 | February 16, 2010 | Yu et al. |
7675707 | March 9, 2010 | Liu et al. |
7679854 | March 16, 2010 | Narayana et al. |
7688534 | March 30, 2010 | McCornack |
7688538 | March 30, 2010 | Chen et al. |
7688539 | March 30, 2010 | Bryant et al. |
7697233 | April 13, 2010 | Bennett et al. |
7701661 | April 20, 2010 | Bennett |
7710676 | May 4, 2010 | Chue |
7715138 | May 11, 2010 | Kupferman |
7715140 | May 11, 2010 | Chu et al. |
7729079 | June 1, 2010 | Huber |
7733189 | June 8, 2010 | Bennett |
7746592 | June 29, 2010 | Liang et al. |
7746594 | June 29, 2010 | Guo et al. |
7746595 | June 29, 2010 | Guo et al. |
7760461 | July 20, 2010 | Bennett |
7800853 | September 21, 2010 | Guo et al. |
7800856 | September 21, 2010 | Bennett et al. |
7800857 | September 21, 2010 | Calaway et al. |
7839591 | November 23, 2010 | Weerasooriya et al. |
7839595 | November 23, 2010 | Chue et al. |
7839600 | November 23, 2010 | Babinski et al. |
7843662 | November 30, 2010 | Weerasooriya et al. |
7852588 | December 14, 2010 | Ferris et al. |
7852592 | December 14, 2010 | Liang et al. |
7864481 | January 4, 2011 | Kon et al. |
7864482 | January 4, 2011 | Babinski et al. |
7869155 | January 11, 2011 | Wong |
7876522 | January 25, 2011 | Calaway et al. |
7876523 | January 25, 2011 | Panyavoravaj et al. |
7916415 | March 29, 2011 | Chue |
7916416 | March 29, 2011 | Guo et al. |
7916420 | March 29, 2011 | McFadyen et al. |
7916422 | March 29, 2011 | Guo et al. |
7929238 | April 19, 2011 | Vasquez |
7961422 | June 14, 2011 | Chen et al. |
8000053 | August 16, 2011 | Anderson |
8031423 | October 4, 2011 | Tsai et al. |
8054022 | November 8, 2011 | Ryan et al. |
8059357 | November 15, 2011 | Knigge et al. |
8059360 | November 15, 2011 | Melkote et al. |
8072703 | December 6, 2011 | Calaway et al. |
8077428 | December 13, 2011 | Chen et al. |
8078901 | December 13, 2011 | Meyer et al. |
8081395 | December 20, 2011 | Ferris |
8085020 | December 27, 2011 | Bennett |
8116023 | February 14, 2012 | Kupferman |
8145934 | March 27, 2012 | Ferris et al. |
8179626 | May 15, 2012 | Ryan et al. |
8189286 | May 29, 2012 | Chen et al. |
8213106 | July 3, 2012 | Guo et al. |
8223449 | July 17, 2012 | Dunn |
8254222 | August 28, 2012 | Tang |
8300348 | October 30, 2012 | Liu et al. |
8315005 | November 20, 2012 | Zou et al. |
8320069 | November 27, 2012 | Knigge et al. |
8351174 | January 8, 2013 | Gardner et al. |
8358114 | January 22, 2013 | Ferris et al. |
8358145 | January 22, 2013 | Ferris et al. |
8390367 | March 5, 2013 | Bennett |
8432031 | April 30, 2013 | Agness et al. |
8432629 | April 30, 2013 | Rigney et al. |
8451697 | May 28, 2013 | Rigney et al. |
8482873 | July 9, 2013 | Chue et al. |
8498076 | July 30, 2013 | Sheh et al. |
8498172 | July 30, 2013 | Patton, III et al. |
8508881 | August 13, 2013 | Babinski et al. |
8531798 | September 10, 2013 | Xi et al. |
8537486 | September 17, 2013 | Liang et al. |
8542455 | September 24, 2013 | Huang et al. |
8553351 | October 8, 2013 | Narayana et al. |
8564899 | October 22, 2013 | Lou et al. |
8576506 | November 5, 2013 | Wang et al. |
8605382 | December 10, 2013 | Mallary et al. |
8605384 | December 10, 2013 | Liu et al. |
8610391 | December 17, 2013 | Yang et al. |
8611040 | December 17, 2013 | Xi et al. |
8619385 | December 31, 2013 | Guo et al. |
8630054 | January 14, 2014 | Bennett et al. |
8630059 | January 14, 2014 | Chen et al. |
8634154 | January 21, 2014 | Rigney et al. |
8634283 | January 21, 2014 | Rigney et al. |
8643976 | February 4, 2014 | Wang et al. |
8649121 | February 11, 2014 | Smith et al. |
8654466 | February 18, 2014 | Mcfadyen |
8654467 | February 18, 2014 | Wong et al. |
8665546 | March 4, 2014 | Zhao et al. |
8665551 | March 4, 2014 | Rigney et al. |
8670206 | March 11, 2014 | Liang et al. |
8687312 | April 1, 2014 | Liang |
8693123 | April 8, 2014 | Guo et al. |
8693134 | April 8, 2014 | Xi et al. |
8699173 | April 15, 2014 | Kang et al. |
8711027 | April 29, 2014 | Bennett |
8717696 | May 6, 2014 | Ryan et al. |
8717699 | May 6, 2014 | Ferris |
8717704 | May 6, 2014 | Yu et al. |
8724245 | May 13, 2014 | Smith et al. |
8724253 | May 13, 2014 | Liang et al. |
8724524 | May 13, 2014 | Urabe et al. |
8737008 | May 27, 2014 | Watanabe et al. |
8737013 | May 27, 2014 | Zhou et al. |
8743495 | June 3, 2014 | Chen et al. |
8743503 | June 3, 2014 | Tang et al. |
8743504 | June 3, 2014 | Bryant et al. |
8749904 | June 10, 2014 | Liang et al. |
8760796 | June 24, 2014 | Lou et al. |
8767332 | July 1, 2014 | Chahwan et al. |
8767343 | July 1, 2014 | Helmick et al. |
8767354 | July 1, 2014 | Ferris et al. |
8773787 | July 8, 2014 | Beker |
8779574 | July 15, 2014 | Agness et al. |
8780473 | July 15, 2014 | Zhao et al. |
8780477 | July 15, 2014 | Guo et al. |
8780479 | July 15, 2014 | Helmick et al. |
8780489 | July 15, 2014 | Gayaka et al. |
8792202 | July 29, 2014 | Wan et al. |
8797664 | August 5, 2014 | Guo et al. |
8804267 | August 12, 2014 | Huang et al. |
8824081 | September 2, 2014 | Guo et al. |
8824262 | September 2, 2014 | Liu et al. |
8917469 | December 23, 2014 | Guo et al. |
20030039047 | February 27, 2003 | Ottesen et al. |
20090168227 | July 2, 2009 | Blaum et al. |
20100035085 | February 11, 2010 | Jung et al. |
20120284493 | November 8, 2012 | Lou et al. |
20130120870 | May 16, 2013 | Zhou et al. |
20130148240 | June 13, 2013 | Ferris et al. |
20130250448 | September 26, 2013 | Ozturk et al. |
11232809 | August 1999 | JP |
- Hagenauer et al., “A Viterbi Algorithm with Soft-Decision Outputs and its Applications,” in Proc. IEEE Global Telecommunications Conference 1989, Dallas, Texas, Nov. 1989, pp. 1680-1686.
- Vasic et al., “Coding and Signal Processing for Magnetic Recording Systems”, 2005, Chapter 29, CRC Press, Boca Raton, Florida, United States.
- Notice of Allowance dated Aug. 19, 2014 from U.S. Appl. No. 13/614,894, 7 pages.
- Office Action dated May 30, 2014 from U.S. Appl. No. 13/614,894, 5 pages.
- Office Action dated Dec. 30, 2013 from U.S. Appl. No. 13/614,894, 5 pages.
Type: Grant
Filed: Dec 18, 2014
Date of Patent: Aug 23, 2016
Assignee: Western Digital Technologies, Inc. (Irvine, CA)
Inventors: Guoxiao Guo (Irvine, CA), Donald Brunnett (Pleasanton, CA), Jianguo Zhou (Foothill Ranch, CA), Wai Ee Wong (Singapore)
Primary Examiner: Daniell L Negron
Application Number: 14/576,063
International Classification: G11B 5/596 (20060101); G11B 20/10 (20060101);