US7006315B2 - Systems for improving servo-demodulation robustness - Google Patents
Systems for improving servo-demodulation robustness Download PDFInfo
- Publication number
- US7006315B2 US7006315B2 US10/413,316 US41331603A US7006315B2 US 7006315 B2 US7006315 B2 US 7006315B2 US 41331603 A US41331603 A US 41331603A US 7006315 B2 US7006315 B2 US 7006315B2
- Authority
- US
- United States
- Prior art keywords
- sam
- servo
- detection
- value
- pattern
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related, expires
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/58—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following
- G11B5/596—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following for track following on disks
- G11B5/59688—Servo signal format patterns or signal processing thereof, e.g. dual, tri, quad, burst signal patterns
Definitions
- Disk drives typically include one or more disks that define a multiplicity of concentric data tracks.
- Head position control systems are typically used to move a transducer (head) from a departure track to a destination track location during track seeking operations, to settle the head at the vicinity of the destination track during track settling operations, and to follow the read or write centerline of the destination track during track following operations when data information is written on or read from the disk.
- Servo head position information is typically embedded within servo wedges on a disk, which are usually recorded in evenly spaced apart areas or sectors of a track.
- the embedded servo wedges includes servo head position and track/data identification fields, and typically include a recognizable servo address mark (SAM) pattern which is provided to resynchronize timers for recovering the servo head position and the track/data identification field information, and which mark in time an expected arrival of the next embedded servo wedge.
- SAM patterns (often simply referred to hereafter as SAMs), in the past, were intended to be unique from patterns that may appear in data or in other portions of a servo wedge.
- FIG. 4 is a high level diagram of an exemplary disk drive device, which can implement embodiments of the present invention.
- FIG. 5 is a high level diagram showing exemplary portions of the read/write path and the servo field detector of FIG. 4 ;
- FIG. 6 is a timer value vs. time graph that is useful for explaining freewheeling
- FIG. 8 is a timer value vs. time graph that is useful for explaining embodiments of the present invention wherein a timer is adjusted;
- FIG. 9 is a high level flow diagram that summarizes various embodiments of the present invention in which a detection of a SAM pattern is characterized as a good or a bad SAM detection;
- FIG. 10 is a high level flow diagram that summarizes various embodiments of the present invention that search for multiple occurrences of a SAM pattern in a single servo wedge.
- FIGS. 11A and 11B are high level flow diagrams that summarize various embodiments of the present invention in which characterizations of SAM pattern detections are used to decide which channel control values to use when beginning to demodulate a next servo wedge.
- servo demodulator outputs are checked for “sanity.” If the demodulation output appears bad (e.g., does not resemble a predicted or expected output), the servo demodulator timing circuitry can be re-programmed to search for the next SAM based upon the timing of a previous (e.g., the most recently detected) SAM pattern detection that met the sanity check. This way, a single bad SAM detection will not cause the servo demodulator to lose lock.
- SAM pattern detections are characterized as either good SAM detections or bad SAM detections. Further servo functions are then based on whether the detection of the SAM pattern in a servo wedge was characterized as a good SAM detection or characterized as a bad SAM detection.
- the SAM pattern is searched for in a servo wedge. If the SAM pattern is detected in the first servo wedge, one or more channel control values (e.g., servo AGC and/or PLL values) associated with the first servo wedge are stored, and a determination is made whether to characterize the detection of the SAM pattern as either a good SAM detection or a bad SAM detection. If the detection of the SAM pattern is characterized as a good SAM detection, then the just stored channel control values are used as starting values when beginning to read a next servo wedge. However, if the SAM pattern is not detected, or a detection is characterized as bad, one or more previously stored or predicted channel control values are used as starting values when beginning to read the next servo wedge.
- channel control values e.g., servo AGC and/or PLL values
- FIG. 1 is a plan view of an exemplary rotatable storage disk 110 .
- the disk 110 includes a central opening 112 to enable a rotating hub to securely clamp the disk to a disk spindle. Between an inner area 114 and an outer peripheral area 116 , a data storage area of a multiplicity of concentric data tracks is defined.
- the tracks are arranged into multiple data zones 118 (also known as data fields or user data fields), from a radially outermost data zone 118 to a radially innermost data zone 118 .
- a system information region and a diagnostics and guard region typically lies near the inner diameter and/or outer diameter of the disk 110 , outside the data storage area.
- FIG. 1 also depicts a series of radially extending servo sectors 138 (also known as servo fields or servo wedges).
- the radial servo sectors 138 (shown as several narrow spokes in FIG. 1 , but are typically somewhat curved) are typically equally spaced around the circumference of the disk 110 . While the number of data sectors in each zone varies, it is apparent from inspection of FIG. 1 that the number of embedded servo wedges 138 remains invariant throughout the extent of the storage surface. As each data sector is of fixed storage capacity or length (e.g. 512 bytes of user data per data sector), and since the density and data rates vary from data zone to data zone, the servo sectors 138 interrupt and split up at least some of the data sectors or fields.
- the servo sectors 138 are typically recorded with a servo writing apparatus at the factory, but may be written (or partially written) by a self-servowriting operation.
- the number and scale of the various data zones 118 and servo wedges 138 shown in FIG. 1 are not precise. For example, there is likely more data zones 118 and servo wedges 138 than shown. Further, the servo wedges 138 likely take up less area on the disk 110 than shown.
- FIG. 2 illustrates the repeating of servo fields 138 and data fields 118 in a track.
- Each servo field 138 is physically associated with the immediately following data fields 118 , as determined by the direction of rotation of the disk 110 relative to a head.
- a plurality of servo fields 138 and data fields 118 are recorded on each track.
- the number of tracks on each disk is usually relatively high (e.g., greater than two thousand).
- the preamble 302 is a series of magnetic transitions which represents the start of the servo field 138 .
- a signal produced while reading the preamble 302 can be used to adjust an automatic gain control (AGC) and/or a phase lock loop (PLL) of a servo demodulator, to allow demodulation of the rest of the servo wedge 138 .
- the SAM 304 which specifies the beginning of available information from the servo wedge 138 , is typically used to resynchronize timer(s) for recovering the servo head position and the track/data identification field information, and to mark in time the expected arrival of the next servo wedge 138 . It is noted that some disk drive companies refer to the SAM pattern as a servo synchronization mark (SSM). Thus, the term SSM maybe substituted for the term SAM, as used herein.
- SSM servo synchronization mark
- FIG. 4 is a high level diagram of an exemplary disk drive storage device 402 .
- the disk drive device 402 is shown as including a head disk assembly (HDA) 406 , a hard disk controller (HDC) 408 , a read/write channel 413 , a microprocessor 410 , a motor driver 422 and a buffer 424 .
- the read/write channel 413 is shown as including a read/write path 412 and a servo demodulator 404 .
- the read/write path 412 which can be used to read and write user data and servo data, may include front end circuitry useful for servo demodulation.
- the servo fields 138 are used for servo control to keep the heads 414 on track and to assist with identifying proper locations on the disks 110 where data is written to or read from.
- the heads 414 act as sensors that detect the position information in the servo wedges 138 , to provide feedback for proper positioning of the heads 414 .
- the HDC 408 enables the disk drive device 402 to communicate with a host computer (e.g., a personal computer or web server). For example, the HDC 408 may control the transfer of user data (as opposed to servo data) between the read/write path 412 and the host computer.
- the HDC 404 will most likely use the buffer 424 when performing such transfers.
- the read/write path 412 includes electronic circuits used in the process of writing and reading information to and from disks 110 .
- the microprocessor 410 which can be a micro-controller, includes firmware that can be used to perform various embodiments of the present invention.
- the microprocessor 410 can also perform servo control algorithms, and thus, maybe referred to as a servo controller. Alternatively, a separate microprocessor or digital signal processor (not shown) can perform servo control functions.
- the servo AGC 428 which includes (or drives) a variable gain amplifier, is used to keep the output of the read/write path 412 at a substantially constant level when servo wedges 138 on one of the disks 110 are being read.
- the servo field detector 430 which is discussed in more detail with reference to FIG. 5 , is used to detect and/or demodulate the various subfields of the servo wedges 138 , including the SAM 304 , wedge number 306 , track number 308 and servo bursts 310 .
- the microprocessor 410 is shown as being separate from the servo demodulator 404 .
- the servo fields 138 are typically written at a different frequency than the interspersed user data fields 118 . Because of this, the read/write path 412 will either switch between independent signal paths, or switch characteristics of common processing circuitry. To accomplish this, information for the servo AGC 428 can be stored in registers and/or memory, allowing the information to be updated in the servo AGC 428 each time the read/write path 412 transitions between reading user data and servo data.
- one or more registers can be used to store appropriate servo AGC values (e.g., gain values, filter coefficients, filter accumulation paths, etc.) for when the read/write path 412 is reading servo data, and one or more registers can be used to store appropriate values (e.g., gain values, filter coefficients, filter accumulation paths, etc.) for when the read/write path 412 is reading user data.
- a control signal can be used to select the appropriate registers according to the current mode of the read/write path 412 .
- the servo AGC value(s) that are stored can be dynamically updated.
- the stored servo AGC value(s) for use when the read/write path 412 is reading servo data can be updated each time an additional servo wedge 138 is read.
- the servo AGC value(s) determined for a most recently read servo wedge 138 can be the starting servo AGC value(s) when the next servo wedge 138 is read.
- FIG. 5 some additional details of an exemplary read/write path 412 and an exemplary servo field detector 430 are shown. Since embodiments of the present invention relate more to read operations, than to write operations, only read portions or the exemplary read/write path 412 are shown.
- the read portion of path 412 is shown as including a variable gain amplifier (VGA) 512 , which receives signals from heads 414 , or more likely from a pre-amplifier (not shown) driven by a signal received from heads 414 .
- VGA variable gain amplifier
- the VGA 512 maybe external to the read/write path 412 .
- the VGA 512 is at least partially controlled by the servo AGC 428 .
- the path 412 is also shown as including an analog filter/equalizer 514 , a flash analog-to-digital (A/D) converter 516 , a finite impulse response (FIR) filter 518 and a decoder 520 .
- the FIR filter 518 can be upstream of the A/D converter 516 , and FIR filtering can be performed using analog circuitry.
- the binary signal output is provided to the servo field detector 430 , and more specifically to a SAM detector 532 and a track number detector 534 of the servo field detector 430 .
- the output of the FIR filter 518 is provided to a burst demodulator 536 .
- the output of the flash A/D 516 can be provided to the burst demodulator 536 .
- the SAM detector 532 searches for a SAM using, for example, pattern recognition logic that recognizes the SAM pattern within the binary stream.
- the SAM detector 532 can allow some fault or error tolerance, so that a SAM pattern will be detected even if one or more of the bits in the binary stream do not exactly match the SAM pattern.
- the exemplary servo field detector 430 is shown as also including a master state machine 550 , which generates states providing timing signals and windows for each of the subpart fields 302 , 304 , 306 and 310 of each servo wedge 138 .
- the master state machine 550 can also supervise operation of various other elements that may be part of the servo field detector 430 .
- a sector timer 542 can be used for controlling the length of a servo wedge 138 , for controlling a SAM search window, and other servo data reader functions including, for example, servo interrupt, servo-data overwrite protection, write to read recovery time and AGC timing.
- the sector timer 542 is, for example, a 12-bit (or more) up counting, synchronously loadable counter running at one half of the operating frequency of the servo field detector 430 .
- Each sector timer count can be a clock cycle, which is, for example, 10.0 nanoseconds.
- path 412 and the servo field detector 430 may include additional components, which are not shown because they are not necessary to explain the embodiments of the present invention.
- the master state machine 550 when the master state machine 550 (together with the SAM detector 532 ) detects a servo address mark (SAM), it signals the sector timer 542 causing the present value of the sector timer to be saved (e.g., in register space 432 or memory), and the sector timer 542 to be reset to zero.
- SAM servo address mark
- the value stored which is known as the SAM-to-SAM value, can be used to determine where/when to search for the next SAM.
- the master state machine 550 searches for a next SAM within a search window, defined about an expected value (e.g., defined about a sector timer value where the next SAM is expected to be detected).
- the expected value can be based, for example, on the most recently detected SAM-to-SAM value, on a group of recently detected SAM-to-SAM values (e.g., based on an average of the previous few SAM-to-SAM values), or based on a nominal or predetermined SAM-to-SAM value.
- the search window can be defined by a STARTSEARCH value (e.g., stored in a STARTSEARCH register) and an ENDSEARCH value (e.g., stored in an ENDSEARCH register).
- the sector timer 542 does not get reset and keeps counting upward.
- the sector timer 542 reaches the time equal to the ENDSEARCH value, it sends a signal to the master state machine 550 , indicating a timeout condition has occurred.
- the sector timer 542 loads the value from a TIMESUP load time register, which is the time the sector counter 542 would nominally be at had the SAM been detected at the expected time and the sector timer 542 reset. Loading the TIMESUP load time value into the sector timer 542 enables demodulation of some of the remaining sub-fields of the servo wedge and searching for the next SAM at the correct time/location.
- the above process, which occurs after missing the detection of a SAM is often referred to as “free-wheeling.”
- a dashed line 602 represents the value of the sector timer 542 that triggers the servo demodulator 404 to begin searching for the SAM. This value is referred to as the STARTSEARCH value, which can be stored in a STARTSEARCH register or in memory.
- a dashed line 604 represents the value of the sector timer 542 at which the SAM is expected, referred to hereafter as a EXPECTSAM value, which can be stored in an EXPECTSAM register and/or in memory.
- the EXPECTSAM value can be a nomimal or predetermined value, or it can be dynamic by being based on one or more previous SAM-to-SAM values.
- a dashed line 606 represents the ENDSEARCH value (i.e., the value of the sector timer 542 that will trigger a timeout), which can be stored in an ENDSEARCH register or in memory.
- the STARTSARCH value and the ENDSEARCH value define a search window for the SAM pattern, with the EXPECTSAM value defining the expected time/location of the SAM pattern within the window.
- the SAM is detected at times t 1 and t 2 . However, the SAM is not detected at time t 3 , and eventually the sector timer value equals the ENDSEARCH value. At this time, the timeout condition has occurred and the sector timer 542 loads the value from the TIMESUP load time register (or from memory), which is represented by dashed line 608 . This enabled the next SAM to be detected at time t 4 .
- the STARTSEARCH value equals 990
- the EXPECTSAM value equals 1000
- the ENDSEARCH value equals 1010.
- the sector timer 542 is reset to 10 (instead of zero), enabling the servo field detector 430 to detect the next SAM at time t 4 .
- Free-wheeling provides a way for the servo field detector 430 to detect a next SAM, if a SAM is missed, as explained above.
- free-wheeling does not provide a solution for the situation where another portion of a servo wedge, which is identical to the SAM (or due to noise, or media or signal corruption, appears identical to the SAM), is detected instead of an actual SAM.
- the detection of another portion of the servo wedge that is identical to the SAM pattern or appears to be the SAM pattern, but is not intended to be the SAM, is referred to herein as a “bad SAM detection.”
- the detection of a SAM pattern that is intended to act as a SAM i.e., written on the disk to function as a SAM
- a bad SAM detection may also occur because an error tolerant SAM detection circuit made an incorrect decision.
- Embodiments of the present invention reduce the likelyhood, and hopefully prevent, the servo demodulator from losing lock after a bad SAM detection.
- a bad servo signal can also cause the servo AGC and/or PLL values that are stored, as explained above, to be corrupted.
- servo AGC and/or PLL values can be stored in registers or memory so that values determined while reading one servo wedge 138 can be used as the starting values for reading a next servo wedge 138 .
- a servo wedge 138 is corrupted, it is possible that the values determined for servo AGC and servo PLL during that servo wedge 138 are garbage (i.e., corrupted).
- the servo AGC 428 may over amplify a very low amplitude servo signal, and may even saturate itself and/or the VGA 512 .
- the servo wedge 138 has been essentially erased, or is absent due to a media defect on the disk 110 , the servo PLL maybe come erratic while attempting to lock to a corrupt servo signal.
- a bad servo wedge can also cause the values determined for servo AGC and servo PLL, during that servo wedge, to be garbage (i.e., corrupted).
- garbage values are used as starting values when the next servo wedge 138 is read, it is likely that it will take at least the entire next servo wedge 138 for the servo AGC 428 and the servo PLL 426 to recover (e.g., because the servo AGC 428 is saturated and the servo PLL 426 is erratic), causing the SAM in the next servo wedge 138 to be missed. This in turn can cause the servo demodulator 404 to completely lose lock. When this occurs, the whole concept, of having what is learned from one servo wedge influencing how a next wedge is read, backfires. Embodiments of the present invention, as described below, reduce the likelihood, and hopefully prevent, the servo AGC 428 and the servo PLL 426 from retrieving and using garbage values.
- the servo demodulator 404 determines a wedge number value, a track number value and a burst value. Based on these values, the servo demodulator 404 can determine (e.g., calculate) a position error signal (PES). For example, a PES can be calculated based on a track number value and a burst value (e.g., a burst amplitude value).
- PES position error signal
- future wedge number values, track number values, burst values and/or PES values are predicted.
- the prediction of a next wedge number value is easily determined based on a previous wedge number value.
- Prediction of the other servo demodulation values can be determined, for example, using state space estimation.
- state space estimation can be performed, for example, in software and/or firmware (e.g., using the microprocessor 410 ) that run models to produce predicted values.
- State space estimation is discussed in various control system books, such as “Digital Control of Dynamic Systems, Second Edition,” by Franklin, Powell and Workman, Addison-Wesley Publishing Company, Inc. (1980).
- each detection of the SAM pattern is characterized as a good SAM detection or a bad SAM detection.
- Such characterizations can be based on comparisons between the actual servo demodulation values and the predicted servo demodulation values. These characterizations may not be completely accurate (i.e., a detection of a pattern intended to be a SAM may be characterized as a bad SAM detection, or a detection of a pattern not intended to be a SAM pattern maybe characterized as a good SAM detection). However, the accuracy of the characterizations can be made very high using the various embodiments discussed below.
- an actual servo demodulation value e.g., a wedge number value
- a detection of the SAM is characterized as a good SAM detection.
- a range of servo demodulation values are predicted (e.g., a range of PES values)
- a detection of the SAM pattern can be characterized as a good SAM detection if an actual servo demodulation value (e.g., an actual PES value) is within the range of predicted values.
- a plurality of predicted and actual servo demodulation values can be determined for a servo wedge.
- the plurality of predicted values can then be compared to the actual servo demodulation values in order to characterize the SAM detection as a good or a bad SAM detection.
- the results of the multiple comparisons performed can be weighted equally, or weighted differently, during characterization.
- multiple comparisons can be used to produce a confidence value, which can be compared to a confidence threshold, in order to characterize a SAM detection as a good or bad SAM detection.
- Confidence determinations can alternatively, or additionally, be based on amplitudes of servo signal samples that make up a detected SAM pattern.
- demodulated bits can be characterized as low confidence or high confidence bits, and the occurrence of low confidence bits (and/or high confidence bits) can be factored into the good/bad SAM detection characterization.
- U.S. Pat. No. 5,862,005 to Leis et al. entitled “Synchronous detection of wide bi-phase coded servo information for disk drive,” and U.S. Pat. No. 5,384,671 to Fisher, entitled, “PRML sampled data channel synchronous servo detector,” which are incorporated herein by reference, discuss exemplary schemes that can be used for specifying the confidence of bits.
- the servo demodulator 404 has access to an EXPECTSAM value, which was represented by dashed line 604 .
- the EXPECTS AM value can be a nominal or predetermined value, or it can be dynamic by being based on one or more previous SAM-to-SAM values. If dynamic, the dashed line 604 may not be as straight or horizontal as shown in FIG. 6 .
- the extent that an actual SAM-to-SAM value (associated with a detected SAM pattern) differs from the EXPECTSAM value is used as a factor when characterizing a SAM detection as a good or a bad SAM detection.
- a determination, that the difference between the present SAM-to-SAM value and the EXPECTSAM value is greater than a threshold can be used when characterizing a SAM pattern detection as a bad or a good SAM detection. More specifically, the determination that the difference between the actual SAM-to-SAM value and the EXPECTSAM value is greater than a threshold, can be used together with a comparison(s) between predicted and actual values for the PES, wedge number value, track number value, burst value and/or quality value(s) when characterizing a detection of the SAM pattern as a good or a bad SAM detection. These various factors can be weighted equally, or differently, as desired.
- the servo demodulator 404 searches for the SAM pattern in the next servo wedge 138 as it normally would. However, if a SAM detection is characterized as a bad SAM detection, then embodiments of the present invention provide a way to overcome the situation where the sector timer 542 is wrongly reset to zero (which will cause the servo demodulator 404 to search for the next SAM at the wrong time/location). More generally, the present invention can be used to help prevent the servo demodulator 404 from losing lock after a bad SAM detection.
- dashed line 602 represents the value of the sector timer 542 that triggers the SAM detector 532 to begin searching for a SAM (e.g., the STARTSEARCH value)
- dashed line 604 represents the value of the sector time at which the SAM is expected (e.g., the EXPECTSAM value)
- dashed line 606 represents the ENDSEARCH value (i.e., the value of the sector timer 542 that will trigger a timeout condition).
- the SAM pattern is detected at times t 1 and t 2 (assume these are good SAM detections). Additionally, the SAM pattern is detected at time t 3 -n, which is earlier than the next expected SAM time t 3 .
- the sector timer 542 is automatically reset to zero at time t 3 -n, whether a good SAM detection or a bad SAM detection occurred at time t 3 -n. Conventionally, this will cause the servo demodulator 404 to start searching for the next SAM at an earlier than appropriate time/location (because the sector timer 542 was reset to zero earlier than appropriate). Additionally, the time/location of the next EXPECTSAM and ENDSEARCH will be adversely effected. This may result in another bad SAM detection, or missing the next SAM, in turn resulting in the servo demodulator 404 losing lock.
- the stored STARTSEARCH value equals 990
- the stored EXPECTSAM value equals 1000
- the stored ENDSEARCH value equals 1010.
- the SAM pattern characterized as a bad SAM detection was detected when the sector timer value was 992
- the previous SAM pattern, characterized as a good SAM detection was detected when the sector timer value was 1000.
- the bad SAM detection in this example occurred 8 sector timer counts earlier than the EXPECTSAM value.
- one of the embodiments of the present invention, described above, is used to characterize the current SAM detection as a bad SAM.
- this enables the servo demodulator 404 to perform a good SAM detection at time t 4 , at which point the STARTSEARCH, EXPECTSAM and ENDSEARCH values are reset or returned to what they were at time t 2 , and the servo demodulator 404 maintains servo lock.
- the SAM pattern is detected (e.g., at time t 4 ), and characterized as a good SAM detection, as a result of temporarily adjusting values (e.g., the values in the STARTSEARCH register, the EXPECTSAM register and the ENDSEARCH register, as explained above) these values are returned to their previous values (e.g., by subtracting 8 counts from each value or replacing the values with stored values).
- temporarily adjusting values e.g., the values in the STARTSEARCH register, the EXPECTSAM register and the ENDSEARCH register, as explained above
- the present invention can be used to begin to search for the SAM pattern in the next servo wedge 138 at an earlier time/location, if a bad SAM detection occurs when the sector timer value is between the EXPECTSAM value and the ENDSEARCH value (but did not reach the ENDSEARCH value, which would cause free-wheeling).
- a timer e.g., sector timer or delay timer
- Sector Timer Value vs. Time graph of FIG. 8 .
- dashed line 602 represents the value of the sector timer 542 that triggers the SAM detector 532 to begin searching for a SAM (e.g., the STARTSEARCH value)
- dashed line 604 represents the value of the sector time at which the SAM is expected (e.g., the EXPECTSAM value)
- dashed line 606 represents the ENDSEARCH value (i.e., the value of the sector timer 542 that will trigger a timeout condition).
- the SAM pattern in the next servo wedge 138 will be searched for based on when/where the previous SAM pattern was detected, which was characterized as a good SAM detection. Since in this example the sector timer 542 was already reset to zero, and has began counting, the searching for the next SAM based on a previous SAM detection (characterized as a good SAM detection) is accomplished by adjusting a timer (e.g., sector timer or delay timer).
- a timer e.g., sector timer or delay timer
- the present invention can be used to upwardly adjust the timer (i.e., to add counts to the timer), if a bad SAM detection occurs when the sector timer value is between the EXPECTSAM value and the ENDSEARCH value (but did not reach the ENDSEARCH value, which would cause free-wheeling).
- firmware can be programmed to characterize a detected SAM pattern as either a good or a bad SAM detection, to adjust values used to search for the SAM pattern (e.g., the values in the STARTSEARCH register, the EXPECTSAM register and the ENDSEARCH register, or in memory as explained above), and/or to only update other control values (e.g., servo AGC and/or PLL values) following a good SAM detection.
- Firmware can also be programmed to overwrite erroneously updated servo AGC and/or PLL values with more appropriate previously determined values, in accordance with embodiment of the present invention.
- the ADJUST value is equal to the actual SAM-to-SAM value (i.e., the value of the sector timer 542 when the SAM characterized as being bad was detected) minus the stored EXPECTSAM value.
- the STARTSEARCH value i.e., the value the in the STARTSEARCH register
- the EXPECTSAM value is 1000
- the ENDSEARCH value is 1010.
- STARTSEARCH, EXPECTSAM, ENDSEARCH and TIMESUP load time values can be stored in memory. Then, writing a specified bit to the predetermined location in memory will cause the values in the STARTSEARCH and ENDSEARCH registers to be adjusted by an ADJUST value, in a manner similar to that just explained above.
- one or more predicted servo demodulation values are determined for a next servo wedge.
- the one or more predicted servo demodulation values can include one, a plurality, or a range of wedge number, track number, burst amplitude, and/or PES value(s).
- the SAM pattern is searched for in the next servo wedge. If the SAM pattern is not detected in the servo wedge (i.e., if the answer to the decision 906 is no), then further servo functions are performed taking into account no SAM detection, as specified at a step 916 .
- This can include, for example, free-wheeling to attempt to detect the SAM pattern in the following servo wedge. This can also include halting reading data from and writing data to data fields that follow the servo wedge. This can further include, using the one or more predicted servo demodulation values for servo control.
- the SAM pattern is detected in the servo wedge (i.e., if the answer to decision 906 is yes), then one or more actual servo demodulation values are determined for the servo wedge, at a step 908 . Then, at a step 910 , the detection of the SAM pattern is characterized as a good SAM detection or a bad SAM detection. As explained above, this can be accomplished by comparing the actual servo demodulation value(s) to the predicted servo demodulation value(s).
- SAM-to-SAM value associated with a detected SAM pattern
- EXPECTSAM value can be used to characterize a detection of the SAM pattern as a good or a bad SAM detection.
- the detection of the SAM pattern is characterized as a good SAM detection (i.e., if the answer to decision 912 is yes)
- further servo functions are performed, taking into account the good SAM detection characterization, as specified at a step 914 .
- this can include reading data from and writing data to data fields that follow the servo wedge.
- This can also include, using the one or more actual servo demodulation values for servo control, since the actual servo demodulation values are likely good.
- where or when to search for the SAM pattern in the following servo wedge can be based on where or when the SAM pattern was just detected (e.g., the center of the next SAM search window can be based on the just determined SAM-to-SAM time).
- Embodiments of the present invention search for more than one SAM pattern within a single servo wedge, and select which SAM detection (if any) is a good SAM detection. In this manner, further servo functions (e.g., servo control) can be performed using servo demodulation values associated with a good SAM detection (or a best good SAM detection, if there is more than one good SAM detection).
- further servo functions e.g., servo control
- servo demodulation values associated with a good SAM detection or a best good SAM detection, if there is more than one good SAM detection.
- portions of the servo demodulator 404 are duplicated so that more than one SAM pattern can be searched for within a single servo wedge.
- two servo field detectors 430 can each search for the SAM pattern within a single servo wedge.
- the second servo field detector 430 When the first servo field detector 430 detects the SAM pattern, the second servo field detector 430 will suppress or ignore that the SAM pattern was detected and will continue to search for the SAM pattern in the remaining portion of the servo wedge (as defined by the remaining portion of the search window). If the second servo field detector 430 also detects the SAM pattern, a determination is made as to which SAM detection (if any) is a good SAM detection. If both SAM detections are characterized as a good SAM detection, then a best good SAM detection can be selected, as described below.
- the SAM pattern in the next servo wedge 138 can be searched for based on the one or more previous characterized good SAM detections. Additionally, if no SAM detection is characterized as a good SAM detection (or if there is no SAM detection at all within a servo wedge 138 ), then the microprocessor 410 can use predicted servo demodulation values for servo control (e.g., for control of the VCM 418 ).
- Embodiments of the present invention are not meant to be limited to searching for only two of the SAM patterns within a single servo wedge.
- further servo field detectors 430 can be provided to search for additional occurrences of the SAM pattern within a single servo wedge.
- Servo demodulation values (e.g., a track number value, a wedge number value, a burst value and/or a PES value) can be determined for each SAM pattern detected within a servo wedge 138 . Then, each SAM pattern detection can be characterized as a good SAM detection or a bad SAM detection. If only one good SAM detection occurs in the servo wedge 138 , the servo demodulation values associated with the good SAM detection are used for servo control (e.g., used in servo control algorithms). Additionally, where or when to search for the SAM pattern in the next servo wedge 138 is based on when/where the one good SAM detection occurred.
- servo demodulation values e.g., a track number value, a wedge number value, a burst value and/or a PES value
- a “best” good SAM detection can be selected. Selection of the best good SAM detection can be based on which SAM detection corresponds to one or more actual servo demodulation values that are closest to one or more predicted servo demodulation values.
- the servo demodulation values associated with the best good SAM detection can be used for servo control (e.g., used in servo control algorithms).
- the one or more actual servo demodulation values associated with the best good SAM detection are used for servo control (e.g., for control of the VCM 418 ). If there is no good SAM detection (or no SAM detection at all), the one or more predicted servo demodulation values can be for servo control.
- the track number detector 534 and burst demodulator 536 generate servo demodulation values that correspond to the detected SAM pattern.
- the microprocessor 410 can keep track of the multiple SAM pattern detections and corresponding servo demodulation values (which may be stored in registers or memory), and then select which SAM detection (if any) is a good (or best good) SAM detection. The microprocessor 410 can then use the appropriate servo demodulation values (whether actual or predicted) for servo control.
- the microprocessor 410 can appropriately adjust the SAM search window for the next servo wedge 138 (e.g., by adjusting STARTSEARCH and ENDSEARCH values) based on a good (or a best good) SAM detection, or based on a previous good SAM detection if there is no SAM detection or no good SAM detection for the current servo wedge.
- servo demodulation values are only stored in registers if they correspond to a SAM pattern detection that is characterized as a good SAM detection. This enables more efficient use of register space.
- servo demodulation values are stored prior to SAM detections being characterized as good or bad detections. Then, decisions of whether or not to use the stored servo demodulations values are made based on the characterizations of the SAM detections.
- a step 1002 multiple occurrences of the SAM pattern are searched for in a servo wedge.
- the servo demodulator 404 can include duplicated portions (e.g., two servo field detectors 430 ) to perform this step.
- the servo demodulator 404 can search for multiple occurrences of the SAM pattern, without needing duplicated portions.
- a bad SAM detection(s) characterization(s) can include halting reading data from and writing data to data fields that follow the servo wedge. This can also include, using one or more predicted servo demodulation values for servo control, since the actual servo demodulation values are likely garbage. Additionally, where or when to search for the SAM pattern in the following servo wedge can be appropriately adjusted, as explained in detail above.
- step 1018 If only one detection of the SAM pattern is characterized as a good SAM detection (i.e., if the answer to decision 1010 is no), then further servo function are performed, taking into account the one good SAM detection characterization, as specified at a step 1018 . For example, this can include reading data from and writing data to data fields that follow the servo wedge. This can also include, using the one or more actual servo demodulation values for servo control, since the actual servo demodulation values are likely good.
- the center of the next SAM search window can be based on the just determined SAM-to-SAM time.
- selection of the best good SAM detection can be based on which SAM detection corresponds to one or more actual servo demodulation values that are closest to one or more predicted servo demodulation values.
- the servo demodulation values associated with the best good SAM detection can be used for servo control (e.g., used in servo control algorithms).
- where or when to search for the SAM pattern in the following servo wedge can be based on where or when the SAM pattern (characterized as the best good SAM pattern) was just detected.
- data can be written to and/or read from data fields that follow the servo wedge.
- the fact the two occurrences of the SAM pattern were characterized as good SAM detections can indicate that there is not enough confidence to write to and/or read from data fields that follow the servo wedge.
- the two good SAM detections are too closely matched (i.e., one is not much better than the other), then there is not enough confidence to write to and/or read from data fields that follow the servo wedge.
- one of the good SAM detection is much better (e.g., the SAM detection is associated with actual demodulation values much closer to the predicted values), then data can be written to and/or read from data fields that follow the servo wedge.
- a bad servo signal (e.g., caused by a single bad servo wedge 138 ) can cause the servo AGC and/or PLL values that are stored in registers or memory, to be corrupted.
- servo AGC and/or PLL values are stored so that values determined while reading one servo wedge 138 can be used as the starting values for reading a next servo wedge 138 .
- servo AGC and/or PLL values that are determined and stored from one servo wedge 138 can be used to predict starting values for reading a next servo wedge 138 .
- next servo wedge 138 If corrupted values are used as starting values (or to predict starting values) when the next servo wedge 138 is read, it is possible that it will take at least the entire next servo wedge 138 for the servo AGC 428 and/or the servo PLL 426 to recover, causing the SAM in the next servo wedge 138 to be missed. This in turn can cause the servo demodulator 404 to completely lose lock. When this occurs, the whole concept, of having what is learned from one servo wedge 138 influencing how a next wedge 138 is read, backfires.
- servo AGC and/or PLL values are stored for each servo wedge, but the just stored values are only used as starting values (or to predict starting values) for the next servo wedge following a good SAM detection (otherwise, previously stored servo AGC and/or PLL values are used as starting values, or used to predict the starting values). For example, before new servo AGC and/or PLL values are stored for a present servo wedge 138 , the values being overwritten are stored in another location (e.g., in other registers or memory locations). Then, if the SAM detection for that servo wedge 138 is later characterized as a bad SAM detection, the previous servo AGC and/or PLL values can be restored.
- a particularly useful application of retaining AGC and/or PLL values from one wedge to the next is with media-written disks, where mis-centering of disks that are written outside of a disk drive may cause approximately ⁇ 1% (max) frequency variation.
- Embodiments of the present invention can be used to improve the performance of disk drives using media-written disks.
- a prediction of the appropriate PLL value for a next servo wedge can be determined as a function of the values saved from a previous wedge (one for which a good SAM detection occurred), the known eccentricity of the disk, and the number of wedges since that good SAM detection occurred.
- the detection is characterized as a good or a bad SAM detection, at a step 1106 .
- Various embodiments for characterizing the detection of the SAM pattern are explained in detail above. For example, this can be accomplished by comparing the actual servo demodulation value(s) to the predicted servo demodulation value(s). Alternatively, or additionally, other factors, such as the extent that an actual SAM-to-SAM value (associated with a detected SAM pattern) differs from an EXPECTSAM value, and/or confidence determinations, can be used to characterize a detection of the SAM pattern as a good or a bad SAM detection.
- the detection of the SAM pattern is characterized as a bad SAM detection (i.e., if the answer to decision 1108 is no)
- one or more previously stored (or predicted based on previously stored) channel control values are used as starting values when reading a next servo wedge, as specified at step 1112 .
- garbage values will not be used for servo AGC, PLL, and the like, reducing the likelihood the servo demodulator 404 will lose lock, as explained above.
- FIG. 11B Other embodiments of the present invention, discussed above, can be summarized in the flow chart of FIG. 11B .
- the SAM pattern is searched for in a servo wedge.
- one or more channel control values are stored for the wedge just searched, regardless of whether a SAM pattern was detected.
- the detection is characterized as a good or a bad SAM detection at a step 1128 . If the detection of the SAM pattern is characterized as a bad SAM detection (i.e., if the answer to decision 1130 is no), then one or more previously stored (or predicted based on previously stored) channel control values are used as starting values when reading a next servo wedge, as specified at a step 1132 .
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Moving Of The Head To Find And Align With The Track (AREA)
Abstract
Description
Claims (23)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/413,316 US7006315B2 (en) | 2002-12-27 | 2003-04-14 | Systems for improving servo-demodulation robustness |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US43667802P | 2002-12-27 | 2002-12-27 | |
US10/413,316 US7006315B2 (en) | 2002-12-27 | 2003-04-14 | Systems for improving servo-demodulation robustness |
Publications (2)
Publication Number | Publication Date |
---|---|
US20040125483A1 US20040125483A1 (en) | 2004-07-01 |
US7006315B2 true US7006315B2 (en) | 2006-02-28 |
Family
ID=32659161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/413,316 Expired - Fee Related US7006315B2 (en) | 2002-12-27 | 2003-04-14 | Systems for improving servo-demodulation robustness |
Country Status (1)
Country | Link |
---|---|
US (1) | US7006315B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8159768B1 (en) | 2008-06-25 | 2012-04-17 | Western Digital Technologies, Inc. | Detecting a servo address mark (SAM) in a servo field sync-up operation |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6943981B2 (en) | 2002-12-27 | 2005-09-13 | Matsushita Electric Co., Ltd. | Methods for improving servo-demodulation robustness |
US7006311B2 (en) | 2002-12-27 | 2006-02-28 | Matsushita Electric Industrial Co., Ltd | Systems for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness |
US6995935B2 (en) | 2002-12-27 | 2006-02-07 | Matsushita Electric Industrial Co., Ltd. | Methods for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness |
US7016133B2 (en) * | 2002-12-27 | 2006-03-21 | Matsushita Electric Industrial Co., Ltd. | Systems for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness |
US7006312B2 (en) | 2002-12-27 | 2006-02-28 | Matsushita Electic Industrial Co., Ltd. | Methods for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness |
US7054083B2 (en) * | 2003-07-16 | 2006-05-30 | Matsushita Electric Industrial Co., Ltd. | Systems for searching for SAM patterns at multiple nominal frequencies |
US7092177B2 (en) * | 2003-07-16 | 2006-08-15 | Matsushita Electric Industrial Co., Ltd. | Methods for searching for SAM patterns using multiple sets of servo demodulation detection parameters |
US7072128B2 (en) * | 2003-07-16 | 2006-07-04 | Matsushita Electric Industrial Co., Ltd. | Methods for searching for SAM patterns at multiple nominal frequencies |
US7075742B2 (en) * | 2003-07-16 | 2006-07-11 | Matsushita Electric Industrial Co., Ltd. | Servo demodulator systems including multiple servo demodulators |
US6992856B2 (en) * | 2003-09-18 | 2006-01-31 | Matsushita Electric Industrial Co., Ltd. | Systems for limiting channel control values to thereby improve servo-demodulation robustness |
US6992855B2 (en) * | 2003-09-18 | 2006-01-31 | Matsushita Electric Industrial Co., Ltd. | Methods for limiting channel control values to thereby improve servo-demodulation robustness |
Citations (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4188646A (en) | 1978-05-30 | 1980-02-12 | Sperry Rand Corporation | Sectorized data path following servo system |
US4271519A (en) | 1979-07-26 | 1981-06-02 | Storage Technology Corporation | Address mark generation and decoding method |
US5050016A (en) | 1989-10-12 | 1991-09-17 | Conner Peripherals, Inc. | Disk drive servo system using gain limited high-frequency track-following compensator |
US5170299A (en) | 1990-08-17 | 1992-12-08 | Quantum Corporation | Edge servo for disk drive head positioner |
US5255136A (en) | 1990-08-17 | 1993-10-19 | Quantum Corporation | High capacity submicro-winchester fixed disk drive |
US5384671A (en) | 1993-12-23 | 1995-01-24 | Quantum Corporation | PRML sampled data channel synchronous servo detector |
US5420730A (en) | 1990-08-17 | 1995-05-30 | Moon; Ronald R. | Servo data recovery circuit for disk drive having digital embedded sector servo |
US5444583A (en) | 1992-09-30 | 1995-08-22 | Quantum Corporation | Disk drive having on-board triggered digital sampling analyzer |
US5477103A (en) | 1993-06-04 | 1995-12-19 | Cirrus Logic, Inc. | Sequence, timing and synchronization technique for servo system controller of a computer disk mass storage device |
US5544135A (en) | 1994-10-11 | 1996-08-06 | Quantum Corporation | Fault tolerant servo address mark for disk drive |
US5585975A (en) | 1994-11-17 | 1996-12-17 | Cirrus Logic, Inc. | Equalization for sample value estimation and sequence detection in a sampled amplitude read channel |
US5586306A (en) | 1993-06-04 | 1996-12-17 | Cirrus Logic, Inc. | Integrated circuit servo system control for computer mass storage device with distributed control functionality to reduce transport delay |
US5706265A (en) | 1995-04-27 | 1998-01-06 | Samsung Electronics Co., Ltd. | Spindle motor driving control circuit of disk drive recording device |
US5796535A (en) | 1995-05-12 | 1998-08-18 | Cirrus Logic, Inc. | Sampled amplitude read channel employing a user data frequency synthesizer and a servo data frequency synthesizer |
US5903410A (en) | 1997-03-24 | 1999-05-11 | International Business Machines Corporation | Disk drive using multiple servo timing marks that form a code of unique interrelated bit patterns |
US5963387A (en) | 1996-09-05 | 1999-10-05 | Samsung Electronics Co., Ltd. | Method for forming and processing data address mark for hard disk drive |
US6021012A (en) * | 1996-06-27 | 2000-02-01 | Samsung Electronics Co., Ltd. | Automatic servo address mark detection and servo timing compensation circuit |
US6108153A (en) | 1996-09-09 | 2000-08-22 | Texas Instruments Incorporated | Servo demodulator and method for synchronous servo demodulation |
US6111710A (en) | 1997-06-25 | 2000-08-29 | Cirrus Logic, Inc. | Asynchronous/synchronous gain control for interpolated timing recovery in a sampled amplitude read channel |
US6122131A (en) | 1997-09-12 | 2000-09-19 | Quantum Corporation | Adaptively-controlled disk drive assembly |
US6155199A (en) | 1998-03-31 | 2000-12-05 | Lam Research Corporation | Parallel-antenna transformer-coupled plasma generation system |
US6172836B1 (en) | 1995-12-29 | 2001-01-09 | Samsung Electronics Co., Ltd. | Method and apparatus for writing the servo pattern for detecting fine defects in the servo burst signals of a hard disk drive |
US6181505B1 (en) | 1998-06-26 | 2001-01-30 | Seagate Technology Llc | Synchronous digital demodulator with integrated read and servo channels |
US6285521B1 (en) | 1999-03-25 | 2001-09-04 | Western Digital Technologies, Inc. | Disk drive employing power source modulation for reducing power consumption |
US6392831B1 (en) | 1998-04-16 | 2002-05-21 | Seagate Technology Llc | Identification of defective servo information elements in a disc drive system |
US6483789B1 (en) * | 1998-12-24 | 2002-11-19 | Sony Corporation | Data recording and/or reproducing apparatus and method for detecting sector defects |
US6487032B1 (en) | 1997-03-11 | 2002-11-26 | Western Digital Technologies, Inc. | Computer system comprising a host connected to a disk drive employing state variable trap registers for providing stored servo and user data state variables to sampled-data channel |
US6504663B2 (en) | 2000-06-01 | 2003-01-07 | Fujitsu Limited | Disk apparatus and disk medium having a ramp loading mechanism |
US20030026017A1 (en) | 2001-08-06 | 2003-02-06 | Fong Kheon Chong | Method and apparatus for determining read-to-write head offset of a disk drive |
US20030026363A1 (en) | 2001-07-31 | 2003-02-06 | Jan Stoter | Adaptive automatic gain control |
US6525615B1 (en) | 2000-07-14 | 2003-02-25 | International Business Machines Corporation | Oscillator with digitally variable phase for a phase-locked loop |
US6545836B1 (en) | 1999-11-12 | 2003-04-08 | Acorn Technologies, Inc. | Servo control apparatus and method using absolute value input signals |
US6594103B1 (en) | 1999-11-12 | 2003-07-15 | Acorn Technologies, Inc. | Read channel generating absolute value servo signal |
US6678110B2 (en) | 2000-12-05 | 2004-01-13 | Seagate Technology Llc | Robust servo demodulation filtering method |
US6680807B1 (en) | 2000-03-08 | 2004-01-20 | Cirrus Logic, Inc. | Servo mark detection for a disk drive system |
US6754019B2 (en) * | 2000-07-07 | 2004-06-22 | Hitachi Global Storage Technologies Netherlands B.V. | System and method for implementing a rotary memory device |
US20040125484A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Methods for improving servo-demodulation robustness |
US20040125479A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Systems for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness |
US20040125485A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Methods for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness |
US20040125482A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Methods for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness |
US20040125481A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Systems for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness |
US6760173B2 (en) | 2001-09-27 | 2004-07-06 | Texas Instruments Incorporation | Synchronization servo mark detector and method having improved phase error immunity for use in mass data storage device, or the like |
US6798594B2 (en) | 2000-10-10 | 2004-09-28 | Seagate Technology Llc | Position sensing system for a disc drive using micro-servo sectors and side-by-side R/W recording elements |
US6816013B2 (en) | 2002-07-25 | 2004-11-09 | Mediatek Inc. | Automatic gain control device |
US20050013026A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Servo demodulator systems including multiple servo demodulators |
US20050013030A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Methods for searching for SAM patterns at multiple nominal frequencies |
US20050013031A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Systems for searching for SAM patterns at multiple nominal frequencies |
US20050013027A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Methods for searching for SAM patterns using multiple sets of servo demodulation detection parameters |
US20050063087A1 (en) | 2003-09-18 | 2005-03-24 | Ehrlich Richard M. | Methods for limiting channel control values to thereby improve servo-demodulation robustness |
US20050063088A1 (en) | 2003-09-18 | 2005-03-24 | Ehrlich Richard M. | Systems for limiting channel control values to thereby improve servo-demodulation robustness |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3867624B2 (en) * | 2002-06-06 | 2007-01-10 | セイコーエプソン株式会社 | Nonvolatile semiconductor memory device and driving method thereof |
-
2003
- 2003-04-14 US US10/413,316 patent/US7006315B2/en not_active Expired - Fee Related
Patent Citations (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4188646A (en) | 1978-05-30 | 1980-02-12 | Sperry Rand Corporation | Sectorized data path following servo system |
US4271519A (en) | 1979-07-26 | 1981-06-02 | Storage Technology Corporation | Address mark generation and decoding method |
US5050016A (en) | 1989-10-12 | 1991-09-17 | Conner Peripherals, Inc. | Disk drive servo system using gain limited high-frequency track-following compensator |
US5170299A (en) | 1990-08-17 | 1992-12-08 | Quantum Corporation | Edge servo for disk drive head positioner |
US5255136A (en) | 1990-08-17 | 1993-10-19 | Quantum Corporation | High capacity submicro-winchester fixed disk drive |
US5420730A (en) | 1990-08-17 | 1995-05-30 | Moon; Ronald R. | Servo data recovery circuit for disk drive having digital embedded sector servo |
US5444583A (en) | 1992-09-30 | 1995-08-22 | Quantum Corporation | Disk drive having on-board triggered digital sampling analyzer |
US5477103A (en) | 1993-06-04 | 1995-12-19 | Cirrus Logic, Inc. | Sequence, timing and synchronization technique for servo system controller of a computer disk mass storage device |
US5586306A (en) | 1993-06-04 | 1996-12-17 | Cirrus Logic, Inc. | Integrated circuit servo system control for computer mass storage device with distributed control functionality to reduce transport delay |
US5384671A (en) | 1993-12-23 | 1995-01-24 | Quantum Corporation | PRML sampled data channel synchronous servo detector |
US5544135A (en) | 1994-10-11 | 1996-08-06 | Quantum Corporation | Fault tolerant servo address mark for disk drive |
US5585975A (en) | 1994-11-17 | 1996-12-17 | Cirrus Logic, Inc. | Equalization for sample value estimation and sequence detection in a sampled amplitude read channel |
US5706265A (en) | 1995-04-27 | 1998-01-06 | Samsung Electronics Co., Ltd. | Spindle motor driving control circuit of disk drive recording device |
US5796535A (en) | 1995-05-12 | 1998-08-18 | Cirrus Logic, Inc. | Sampled amplitude read channel employing a user data frequency synthesizer and a servo data frequency synthesizer |
US5966258A (en) | 1995-05-12 | 1999-10-12 | Cirrus Logic, Inc. | Asynchronous/synchronous digital gain control loop in a sampled amplitude read channel |
US6172836B1 (en) | 1995-12-29 | 2001-01-09 | Samsung Electronics Co., Ltd. | Method and apparatus for writing the servo pattern for detecting fine defects in the servo burst signals of a hard disk drive |
US6021012A (en) * | 1996-06-27 | 2000-02-01 | Samsung Electronics Co., Ltd. | Automatic servo address mark detection and servo timing compensation circuit |
US5963387A (en) | 1996-09-05 | 1999-10-05 | Samsung Electronics Co., Ltd. | Method for forming and processing data address mark for hard disk drive |
US6108153A (en) | 1996-09-09 | 2000-08-22 | Texas Instruments Incorporated | Servo demodulator and method for synchronous servo demodulation |
US6487032B1 (en) | 1997-03-11 | 2002-11-26 | Western Digital Technologies, Inc. | Computer system comprising a host connected to a disk drive employing state variable trap registers for providing stored servo and user data state variables to sampled-data channel |
US5903410A (en) | 1997-03-24 | 1999-05-11 | International Business Machines Corporation | Disk drive using multiple servo timing marks that form a code of unique interrelated bit patterns |
US6111710A (en) | 1997-06-25 | 2000-08-29 | Cirrus Logic, Inc. | Asynchronous/synchronous gain control for interpolated timing recovery in a sampled amplitude read channel |
US6122131A (en) | 1997-09-12 | 2000-09-19 | Quantum Corporation | Adaptively-controlled disk drive assembly |
US6155199A (en) | 1998-03-31 | 2000-12-05 | Lam Research Corporation | Parallel-antenna transformer-coupled plasma generation system |
US6392831B1 (en) | 1998-04-16 | 2002-05-21 | Seagate Technology Llc | Identification of defective servo information elements in a disc drive system |
US6181505B1 (en) | 1998-06-26 | 2001-01-30 | Seagate Technology Llc | Synchronous digital demodulator with integrated read and servo channels |
US6483789B1 (en) * | 1998-12-24 | 2002-11-19 | Sony Corporation | Data recording and/or reproducing apparatus and method for detecting sector defects |
US6285521B1 (en) | 1999-03-25 | 2001-09-04 | Western Digital Technologies, Inc. | Disk drive employing power source modulation for reducing power consumption |
US6545836B1 (en) | 1999-11-12 | 2003-04-08 | Acorn Technologies, Inc. | Servo control apparatus and method using absolute value input signals |
US6594103B1 (en) | 1999-11-12 | 2003-07-15 | Acorn Technologies, Inc. | Read channel generating absolute value servo signal |
US6680807B1 (en) | 2000-03-08 | 2004-01-20 | Cirrus Logic, Inc. | Servo mark detection for a disk drive system |
US6504663B2 (en) | 2000-06-01 | 2003-01-07 | Fujitsu Limited | Disk apparatus and disk medium having a ramp loading mechanism |
US6754019B2 (en) * | 2000-07-07 | 2004-06-22 | Hitachi Global Storage Technologies Netherlands B.V. | System and method for implementing a rotary memory device |
US6525615B1 (en) | 2000-07-14 | 2003-02-25 | International Business Machines Corporation | Oscillator with digitally variable phase for a phase-locked loop |
US6798594B2 (en) | 2000-10-10 | 2004-09-28 | Seagate Technology Llc | Position sensing system for a disc drive using micro-servo sectors and side-by-side R/W recording elements |
US6678110B2 (en) | 2000-12-05 | 2004-01-13 | Seagate Technology Llc | Robust servo demodulation filtering method |
US20030026363A1 (en) | 2001-07-31 | 2003-02-06 | Jan Stoter | Adaptive automatic gain control |
US20030026017A1 (en) | 2001-08-06 | 2003-02-06 | Fong Kheon Chong | Method and apparatus for determining read-to-write head offset of a disk drive |
US6760173B2 (en) | 2001-09-27 | 2004-07-06 | Texas Instruments Incorporation | Synchronization servo mark detector and method having improved phase error immunity for use in mass data storage device, or the like |
US6816013B2 (en) | 2002-07-25 | 2004-11-09 | Mediatek Inc. | Automatic gain control device |
US20040125482A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Methods for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness |
US20040125481A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Systems for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness |
US20040125485A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Methods for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness |
US20040125479A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Systems for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness |
US20040125484A1 (en) | 2002-12-27 | 2004-07-01 | Ehrlich Richard M. | Methods for improving servo-demodulation robustness |
US20050013026A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Servo demodulator systems including multiple servo demodulators |
US20050013030A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Methods for searching for SAM patterns at multiple nominal frequencies |
US20050013031A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Systems for searching for SAM patterns at multiple nominal frequencies |
US20050013027A1 (en) | 2003-07-16 | 2005-01-20 | Ehrlich Richard M. | Methods for searching for SAM patterns using multiple sets of servo demodulation detection parameters |
US20050063087A1 (en) | 2003-09-18 | 2005-03-24 | Ehrlich Richard M. | Methods for limiting channel control values to thereby improve servo-demodulation robustness |
US20050063088A1 (en) | 2003-09-18 | 2005-03-24 | Ehrlich Richard M. | Systems for limiting channel control values to thereby improve servo-demodulation robustness |
Non-Patent Citations (1)
Title |
---|
Abramovitch et al., "Customizable Coherent Servo Demodulation for Disk Drives," Sep. 1998, IEEEE/ASME Transactions on Mechatronics, vol. 3, No. 3, pp. 184-193. |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8159768B1 (en) | 2008-06-25 | 2012-04-17 | Western Digital Technologies, Inc. | Detecting a servo address mark (SAM) in a servo field sync-up operation |
Also Published As
Publication number | Publication date |
---|---|
US20040125483A1 (en) | 2004-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7054083B2 (en) | Systems for searching for SAM patterns at multiple nominal frequencies | |
US7092177B2 (en) | Methods for searching for SAM patterns using multiple sets of servo demodulation detection parameters | |
US7075742B2 (en) | Servo demodulator systems including multiple servo demodulators | |
US6992855B2 (en) | Methods for limiting channel control values to thereby improve servo-demodulation robustness | |
US6992856B2 (en) | Systems for limiting channel control values to thereby improve servo-demodulation robustness | |
US7072128B2 (en) | Methods for searching for SAM patterns at multiple nominal frequencies | |
US7006312B2 (en) | Methods for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness | |
US7016133B2 (en) | Systems for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness | |
US5917670A (en) | Method for recovering data from disk with magneto-resistive head in presence of thermal asperities | |
US6078453A (en) | Method and apparatus for optimizing the servo read channel of a hard disk drive | |
US6078452A (en) | Disk drive employing method of writing a data block to a data sector following a defective servo sector | |
US7372650B1 (en) | Rotating media storage device having a calibration track with unique calibration servo synch marks | |
US7133227B2 (en) | Head polarity detection algorithm and apparatus | |
US7006311B2 (en) | Systems for preventing channel control values from being corrupted to thereby improve servo-demodulation robustness | |
US6943981B2 (en) | Methods for improving servo-demodulation robustness | |
US6639748B1 (en) | Disk drive that discerns the polarity of a head signal from a sync mark to enhance data detection | |
US7006315B2 (en) | Systems for improving servo-demodulation robustness | |
US6995935B2 (en) | Methods for detecting multiple occurrences of a SAM pattern to thereby improve servo-demodulation robustness | |
US5930068A (en) | Detecting servo defects in a disc drive | |
US6388829B1 (en) | High servo sampling disk drive with minimum overhead | |
US6392831B1 (en) | Identification of defective servo information elements in a disc drive system | |
US6628471B1 (en) | Detection and cancellation of cage frequency using the clock head in a servowriter | |
US7215494B2 (en) | System and method for performing adaptive read retry operations in a data storage device | |
US7817365B2 (en) | Address mark detection with error threshold that varies with timing jitter | |
US7453660B2 (en) | Shock feed forward adaptive filters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:EHRLICH, RICHARD M.;REEL/FRAME:014291/0964 Effective date: 20040127 |
|
CC | Certificate of correction | ||
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: PANASONIC CORPORATION, JAPAN Free format text: CHANGE OF NAME;ASSIGNOR:MATSUSHITA ELECTRIC INDUSTRIAL CO., LTD.;REEL/FRAME:032332/0082 Effective date: 20081001 |
|
AS | Assignment |
Owner name: PANASONIC HEALTHCARE CO., LTD., JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANASONIC CORPORATION;REEL/FRAME:032360/0795 Effective date: 20131127 |
|
AS | Assignment |
Owner name: PANASONIC CORPORATION, JAPAN Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PANASONIC HEALTHCARE CO., LTD.;REEL/FRAME:032480/0433 Effective date: 20140301 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.) |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.) |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Expired due to failure to pay maintenance fee |
Effective date: 20180228 |