Systems and methods for sequence detection in data processing
Abstract
Various embodiments of the present invention provide systems and methods for sequence detection. As an example, a method for data detection is disclosed that includes: receiving a series of data samples at a detector circuit; multiplying a portion of the series of data samples by a first correlator value corresponding to a first binary transition to yield a first value; multiplying the portion of the series of data samples by a second correlator value corresponding to a second binary transition to yield a second value; adding the first value to a prior state value to yield a first interim value; adding the second value to the prior state value to yield a second interim value; and selecting the larger of the first interim value and the second interim value to yield a surviving interim value.

Term
No projected expiry on record.
- Priority
- Filed
- Granted
- Today
19 claims: 3 independent, 16 dependent
- 1A method for data detection, the method comprising the steps of:receiving a series of data samples;multiplying a portion of the series of data samples by a first correlator value corresponding to a first binary transition to generate a first value;multiplying the portion of the series of data samples by a second correlator value corresponding to a second binary transition to generate a second value;adding the first value by an adder circuit Generating a first temporary value to a first previous state value;adding the second value to the second previous state value to generate a second temporary value;selecting the first temporary value and the second temporary value a larger value, generating a survival temporary value;multiplying the portion of the series of data samples by a third correlator value corresponding to a third binary transition to produce a third value;The portion of the data sample is multiplied by a fourth correlator value corresponding to a fourth binary transition to generate a fourth value;the third value is added to the first previous state value to generate a third temporary Value;adding the fourth value to the second previous state Value, generating a fourth temporary value;and selecting the third temporary value and the larger value of the fourth temporary value, generating a second temporary values survival. 一種用於資料偵測之方法,該方法包含下列步驟:接收一系列的資料樣本;將該系列的資料樣本之一部分乘以對應於一第一二進位轉變的一第一相關器值,而產生一第一值;將該系列的資料樣本之該部分乘以對應於一第二二進位轉變的一第二相關器值,而產生一第二值;藉由加法器電路將該第一值加到一第一先前狀態值,而產生一第一暫時值;將該第二值加到第二先前狀態值,而產生一第二暫時值;選擇該第一暫時值及該第二暫時值中之較大值,而產生一存活暫時值;將該系列的資料樣本之該部分乘以對應於一第三二進位轉變的一第三相關器值,而產生一第三值;將該系列的資料樣本之該部分乘以對應於一第四二進位轉變的一第四相關器值,而產生一第四值;將該第三值加到該第一先前狀態值,而產生一第三暫時值;將該第四值加到該第二先前狀態值,而產生一第四暫時值;以及選擇該第三暫時值及該第四暫時值中之較大值,而產生一第二存活暫時值。 一種用於資料偵測之方法,該方法包含下列步驟:接收一系列的資料樣本;將該系列的資料樣本之一部分乘以對應於一第一二進位轉變的一第一相關器值,而產生一第一值;將該系列的資料樣本之該部分乘以對應於一第二二進位轉變的一第二相關器值,而產生一第二值;藉由加法器電路將該第一值加到一第一先前狀態值,而產生一第一暫時值;將該第二值加到第二先前狀態值,而產生一第二暫時值;選擇該第一暫時值及該第二暫時值中之較大值,而產生一存活暫時值;將該系列的資料樣本之該部分乘以對應於一第三二進位轉變的一第三相關器值,而產生一第三值;將該系列的資料樣本之該部分乘以對應於一第四二進位轉變的一第四相關器值,而產生一第四值;將該第三值加到該第一先前狀態值,而產生一第三暫時值;將該第四值加到該第二先前狀態值,而產生一第四暫時值;以及選擇該第三暫時值及該第四暫時值中之較大值,而產生一第二存活暫時值。
- 10A sequence detector circuit, the circuit comprising:a first multiplier circuit operable to multiply a series of digital samples by a first correlator value corresponding to one of a state to a state transition And generating a first value;a second multiplier circuit operable to multiply the series of digital samples by a second correlator value corresponding to one of the 0 state to 1 state transitions to generate a second value;a third multiplier circuit operable to multiply the series of digital samples by a third correlator value corresponding to one of the state to zero state transitions to produce a third a fourth multiplier circuit operable to multiply the series of digital samples by a fourth correlator value corresponding to a 0 state to a 0 state transition to produce a fourth value;a first adder circuit operative to add the first value to a previous one state value to generate a first temporary state value;a second adder circuit, the second adder The circuit is operable to change the second value to the previous 0 The state values are added to generate a second temporary state value;a first selector circuit operable to select a larger one of the first temporary state value and the second temporary state value to generate a first surviving temporary state value;a third addition a third adder circuit operable to add the third value to the previous zero state value to generate a third temporary state value;a fourth adder circuit operable to operate the fourth adder circuit And adding the fourth value to the previous 1 state value to generate a fourth temporary state value;and a second selector circuit operable to select the third temporary state value and the A larger of the fourth temporary state values, and a second surviving temporary state value is generated. 一種序列偵測器電路,該電路包含:一第一乘法器電路,該第一乘法器電路可操作而將一系列的數位樣本乘以對應於1狀態至1狀態轉變之一第一相關器值,而產生一第一值;一第二乘法器電路,該第二乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至1狀態轉變之一第二相關器值,而產生一第二值;一第三乘法器電路,該第三乘法器電路可操作而將該系列的數位樣本乘以對應於1狀態至0狀態轉變之一第三相關器值,而產生一第三值;一第四乘法器電路,該第四乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至0狀態轉變之一第四相關器值,而產生一第四值;一第一加法器電路,該第一加法器電路可操作而將該第一值與一先前1狀態值相加,而產生一第一暫時狀態值;一第二加法器電路,該第二加法器電路可操作而將該第二值與先前0狀態值相加,而產生一第二暫時狀態值; 一第一選擇器電路,該第一選擇器電路可操作而選擇該第一暫時狀態值及該第二暫時狀態值中之較大值,而產生一第一存活暫時狀態值;一第三加法器電路,該第三加法器電路可操作而將該第三值與該先前0狀態值相加,而產生一第三暫時狀態值;一第四加法器電路,該第四加法器電路可操作而將該第四值與該先前1狀態值相加,而產生一第四暫時狀態值;以及一第二選擇器電路,該第二選擇器電路可操作而選擇該第三暫時狀態值及該第四暫時狀態值中之較大值,而產生一第二存活暫時狀態值。 一種序列偵測器電路,該電路包含:一第一乘法器電路,該第一乘法器電路可操作而將一系列的數位樣本乘以對應於1狀態至1狀態轉變之一第一相關器值,而產生一第一值;一第二乘法器電路,該第二乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至1狀態轉變之一第二相關器值,而產生一第二值;一第三乘法器電路,該第三乘法器電路可操作而將該系列的數位樣本乘以對應於1狀態至0狀態轉變之一第三相關器值,而產生一第三值;一第四乘法器電路,該第四乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至0狀態轉變之一第四相關器值,而產生一第四值;一第一加法器電路,該第一加法器電路可操作而將該第一值與一先前1狀態值相加,而產生一第一暫時狀態值;一第二加法器電路,該第二加法器電路可操作而將該第二值與先前0狀態值相加,而產生一第二暫時狀態值; 一第一選擇器電路,該第一選擇器電路可操作而選擇該第一暫時狀態值及該第二暫時狀態值中之較大值,而產生一第一存活暫時狀態值;一第三加法器電路,該第三加法器電路可操作而將該第三值與該先前0狀態值相加,而產生一第三暫時狀態值;一第四加法器電路,該第四加法器電路可操作而將該第四值與該先前1狀態值相加,而產生一第四暫時狀態值;以及一第二選擇器電路,該第二選擇器電路可操作而選擇該第三暫時狀態值及該第四暫時狀態值中之較大值,而產生一第二存活暫時狀態值。
- 16A storage device comprising:a detector circuit operable to receive information held on a storage medium via a read/write head assembly, and wherein the detector circuit comprises: a first a multiplier circuit operable to multiply a series of digital samples by a first correlator value corresponding to one state to one state transition to produce a first value;a second multiplier a second multiplier circuit operable to multiply the series of digital samples by a second correlator value corresponding to a 0 state to a state transition to generate a second value;a third multiplier circuit, the The third multiplier circuit is operable to multiply the series of digital samples by one of the 1 state to 0 state transitions a third correlator value to generate a third value;a fourth multiplier circuit operable to multiply the series of digital samples by a fourth correlation corresponding to a 0 state to a 0 state transition And generating a fourth value;a first adder circuit operable to add the first value to a previous one state value to generate a first temporary state value;a second adder circuit operative to add the second value to the previous zero state value to generate a second temporary state value;a first selector circuit, the first selector circuit Manipulating and selecting a larger one of the first temporary state value and the second temporary state value to generate a first surviving temporary state value;a third adder circuit operable to The third value is added to the previous zero state value to produce a third temporary state value;a fourth adder circuit operable to compare the fourth value with the previous one state value Add a fourth temporary state value;and a second selection Circuit, the second selector circuit is operable to select the third and the fourth state value temporarily transitory state values of a larger value, to generate a second temporary viable state value. 一種儲存裝置,該儲存裝置包含:一偵測器電路,該偵測器電路可操作而經由一讀/寫頭組件接收一儲存媒體上保持的資訊,且其中該偵測器電路包含:一第一乘法器電路,該第一乘法器電路可操作而將一系列的數位樣本乘以對應於1狀態至1狀態轉變之一第一相關器值,而產生一第一值;一第二乘法器電路,該第二乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至1狀態轉變之一第二相關器值,而產生一第二值;一第三乘法器電路,該第三乘法器電路可操作而將該系列的數位樣本乘以對應於1狀態至0狀態轉變之一 第三相關器值,而產生一第三值;一第四乘法器電路,該第四乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至0狀態轉變之一第四相關器值,而產生一第四值;一第一加法器電路,該第一加法器電路可操作而將該第一值與一先前1狀態值相加,而產生一第一暫時狀態值;一第二加法器電路,該第二加法器電路可操作而將該第二值與先前0狀態值相加,而產生一第二暫時狀態值;一第一選擇器電路,該第一選擇器電路可操作而選擇該第一暫時狀態值及該第二暫時狀態值中之較大值,而產生一第一存活暫時狀態值;一第三加法器電路,該第三加法器電路可操作而將該第三值與該先前0狀態值相加,而產生一第三暫時狀態值;一第四加法器電路,該第四加法器電路可操作而將該第四值與該先前1狀態值相加,而產生一第四暫時狀態值;以及一第二選擇器電路,該第二選擇器電路可操作而選擇該第三暫時狀態值及該第四暫時狀態值中之較大值,而產生一第二存活暫時狀態值。 一種儲存裝置,該儲存裝置包含:一偵測器電路,該偵測器電路可操作而經由一讀/寫頭組件接收一儲存媒體上保持的資訊,且其中該偵測器電路包含:一第一乘法器電路,該第一乘法器電路可操作而將一系列的數位樣本乘以對應於1狀態至1狀態轉變之一第一相關器值,而產生一第一值;一第二乘法器電路,該第二乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至1狀態轉變之一第二相關器值,而產生一第二值;一第三乘法器電路,該第三乘法器電路可操作而將該系列的數位樣本乘以對應於1狀態至0狀態轉變之一 第三相關器值,而產生一第三值;一第四乘法器電路,該第四乘法器電路可操作而將該系列的數位樣本乘以對應於0狀態至0狀態轉變之一第四相關器值,而產生一第四值;一第一加法器電路,該第一加法器電路可操作而將該第一值與一先前1狀態值相加,而產生一第一暫時狀態值;一第二加法器電路,該第二加法器電路可操作而將該第二值與先前0狀態值相加,而產生一第二暫時狀態值;一第一選擇器電路,該第一選擇器電路可操作而選擇該第一暫時狀態值及該第二暫時狀態值中之較大值,而產生一第一存活暫時狀態值;一第三加法器電路,該第三加法器電路可操作而將該第三值與該先前0狀態值相加,而產生一第三暫時狀態值;一第四加法器電路,該第四加法器電路可操作而將該第四值與該先前1狀態值相加,而產生一第四暫時狀態值;以及一第二選擇器電路,該第二選擇器電路可操作而選擇該第三暫時狀態值及該第四暫時狀態值中之較大值,而產生一第二存活暫時狀態值。
Independent claims3
125 paragraphs, as filed
System and method for sequence detection of data processing
Systems and methods for sequence detection in data processing
The present invention relates to systems and methods for processing data, and more particularly to systems and methods for detecting data sequences.
A typical data processing system receives an analog input signal and samples the analog input signal to produce a series of digital samples. This material typically includes a sequence of data that is used for data synchronization and/or other purposes. Various existing data processing systems utilize, for example, Viterbi sequence detection circuitry. The circuit operates well when the analog digital input sample of the input signal is exactly equal to a target response and accurate timing and gain control is applied. In some cases, it is difficult to achieve sufficient accuracy, resulting in degradation performance of sequence detection. Other methods rely on threshold detection procedures that work fairly well in low-noise environments, but as channel bit density increases, the effect of increased noise will make such threshold methods less effective.
Therefore, at least for the above reasons, there is a need in the art for advanced systems and methods for sequence detection.
The present invention relates to systems and methods for processing data, and more particularly to systems and methods for detecting data sequences.
Embodiments of the present invention provide a method for data detection, the method comprising the steps of: receiving a series of data samples on a detector circuit; multiplying a portion of the series of data samples by a corresponding one a first correlator value of the first binary transition, and generating a first value; multiplying the portion of the series of data samples by a second correlator value corresponding to a second binary transition to generate a a second value; adding the first value to a previous state value to generate a first temporary value; adding the second value to the previous state value to generate a second temporary value; and selecting the first temporary value A larger value of the value and the second temporary value produces a survival temporary value. In some cases, the method further includes the step of storing the surviving temporary value as the prior state value.
In each of the above-described embodiments, the surviving temporary value is a first surviving temporary value and the prior state is a first prior state. In this example, the method further includes the steps of: multiplying the portion of the series of data samples by a third correlator value corresponding to a third binary transition to generate a third value; The portion of the data sample is multiplied by a fourth correlator value corresponding to a fourth binary transition to generate a fourth value; the third value is added to a second previous state value to generate a third temporary a value; adding the fourth value to the second previous state value to generate a fourth temporary value; and selecting a larger of the third temporary value and the fourth temporary value to generate a second survival Temporary value. In some examples of the above embodiments, the method further comprises the step of storing the second surviving temporary value as the second prior state value.
In each of the above-described embodiments, the method further includes the steps of: selecting a larger one of the first surviving temporary value and the second surviving temporary value to generate a surviving state value, wherein the surviving state The value is associated with a surviving state. In these examples, the surviving state is selected as the most recent bit in the one-bit sequence. In some examples, the method further includes the step of: selecting the first previous state value corresponding to the surviving temporary value used to calculate the selected one of the first surviving temporary value and the second surviving temporary value and A previous state of one of the second previous state values as a bit before the most recent bit in the sequence of bits.
In one or more of the above-described embodiments, the first previous state value corresponds to a 0 state and the second prior state value corresponds to a 1 state. In some examples, the first binary state is a 1 state to a 0 state transition, the second binary state is a 0 state to a 0 state transition, and the third binary transition is a 0 state to a state transition, and the The fourth binary transition is a 1 state to a state transition. In a specific example, the first correlator value is an array 1, 0, -1, -1; the second correlator value is an array 0, 1, 0, -1; the third correlator value is An array of -1, 0, 1, 1; and the fourth correlator value is an array of 0, -1, 0, 1.
Other embodiments of the present invention provide a sequence detector circuit including a first, second, third, and fourth multiplier circuit, a first, second, third, and A fourth adder circuit, and first and second selector circuits. The first multiplier circuit is operative to multiply a series of digital samples by a first correlator value corresponding to one of the 1 state to 1 state transitions to produce a first value. The second multiplier circuit is operative to multiply the series of digital samples by a second correlator value corresponding to one of the 0 state to the 1 state transitions to produce a second value. The third multiplier circuit is operable to multiply the series of digital samples by a third correlator value corresponding to one of the 1 state to the 0 state transitions to produce a third value. The fourth multiplier circuit is operable to multiply the series of digital samples by a fourth correlator value corresponding to one of the 0 state to the 0 state transition to produce a fourth value. The first adder circuit is operative to add the first value to a previous one state value to produce a first temporary state value. The second adder circuit is operative to add the second value to the previous one state value to produce a second temporary state value. The third adder circuit is operative to add the third value to a previous zero state value to produce a third temporary state value. The fourth adder circuit is operative to add the fourth value to the previous zero state value to produce a fourth temporary state value. The first selector circuit is operable to select a larger one of the first temporary state value and the second temporary state value to generate a first surviving temporary state value, and the second selector circuit is operable to select A third of the third temporary state value and the fourth temporary state value generates a second surviving temporary state value.
This summary merely provides a general overview of some embodiments of the invention. Many other objects, features, advantages and other embodiments of the present invention will be apparent from the description of the appended claims.
The present invention relates to systems and methods for processing data, and more particularly to systems and methods for detecting data sequences.
Referring to Figure 1, one of the storage media 1 has two exemplary rails 20, 22 shown in dashed lines. The tracks are isolated by servo data written in the wedge regions 19, 18. These wedge regions contain servo data 10 that is used to control and synchronize a read/write head assembly over a desired location on the storage medium 1. In particular, the servo data typically includes a preamble pattern 11 and a contiguous Servo Address Mark (SAM) 12 . The servo address mark 12 is followed by a Gray code 13, which is followed by the burst information 14. Note that although the figure shows two rails and two wedges, hundreds of rails and wedges will be included on a particular storage medium. In addition, please note that a servo data set can have burst information for two or more fields. In addition, please note that different information such as repeatable usage information that may appear after the burst information 14 may be included in the servo fields. Between the servo data bit patterns 10a and 10b, a user data area 16 is provided.
In operation, the storage medium 1 is rotated in a manner related to a sensor that senses information from the storage medium. In a read operation, the sensor will sense servo data from the wedge region 19 (i.e., during a servo data) and then sense a user data region from between the wedge region 19 and the wedge region 18. The user data (i.e., during a user profile) then senses the servo data from the wedge region 18. In a write operation, the sensor will sense the servo data from the wedge region 19 and then write the data to the user data region between the wedge region 19 and the wedge region 18. The sensor will then be switched to sense the remainder of the user data area and then sense the servo data from the wedge region 18.
Embodiments of the present invention provide systems and methods for relying on coarse equalization of a target response and subsequent sequence detection of data-dependent match filtering associated with the received digital samples. When using this information, it may be decided to maximize the output of the data-dependent matched filter to produce a data path through a sequence of the most likely data sequence. Unlike a Viterbi sequence detector having a standard of one channel memory representing N-1 (where N is the length of the partial response), one or more embodiments of the present invention will have two Different states are used to detect binary data. These systems and methods provide various advantages of different embodiments of the present invention. For example, in some instances, less precise equalization, timing, and gain control than required by a standard Viterbi detection procedure may be tolerated. In this case, the higher manufacturing efficiency of the product relying on the data detector circuit can be achieved due to the reduction in the amount of time allocated to the equalization test. As another example, in some cases, enhanced noise immunity can be achieved when compared to threshold-based sequence detection systems. In accordance with the disclosure provided by the present invention, those of ordinary skill in the art will appreciate that various embodiments of the present invention may be practiced in accordance with various embodiments of the present invention. advantage.
Referring to Figure 2, a data sequence detector circuit 100 is shown in accordance with one or more embodiments of the present invention. The data sequence detector circuit 100 includes an analog-to-digital converter circuit 110 that receives an analog input signal 105 and provides a digital sample 115 representative of a series of analog input signals 105. The digital sample 115 is synchronized with a 4T sampling clock 107. The analog to digital converter circuit 110 can be any circuit or system known in the art that is capable of converting a continuous signal into a series of digital samples. The analog input signal 105 is used to represent one of a number of bit periods of a continuous signal. The bit period occurs repeatedly during the period of T, and the 4T sampling clock causes the analog digital converter circuit 110 to generate four samples of the analog input signal 105 for each period T. Note that although the present embodiment is illustrated in a manner of using four samples per cycle, other embodiments of the present invention may use a lower sampling frequency such as a 2T clock or the like, or may use, for example, an 8T clock or 16T. The higher sampling frequency of the pulse or the like. In accordance with the disclosure provided by the present invention, those skilled in the art will be aware of various sampling frequencies and corresponding bit periods that may be used in a manner that may be associated with different embodiments of the present invention. The analog input signal 105 can be obtained from a variety of sources. For example, an analog input signal can be received from a read/write head component configured in a manner associated with a storage medium. As another example, an analog input signal can be obtained from a receiver circuit that is receiving wireless transmissions. In accordance with the disclosure provided by the present invention, various other sources of analog input signal 105 will be known to those of ordinary skill in the art.
The digital samples 115 are provided in a manner parallel to a block multiplier circuit, wherein each multiplier circuit multiplies the received digital samples by an array representing one of a particular transmission path. In the case of two possible next states from any particular previous state, four multiplier circuits are used. A multiplier circuit 121, in particular, multiplies the digital sample 115 to represent a correlator value 122 that transitions from the previous 0 state to the next 0 state. A multiplier circuit 123 multiplies the digital sample 115 by a correlator value 124 that is used to represent a transition from the previous 1 state to the next 0 state. A multiplier circuit 125 multiplies the digital sample 115 to represent a correlator value 126 that transitions from the previous 0 state to the next 1 state. A multiplier circuit 127 multiplies the digital sample 115 to represent a correlator value 128 that transitions from the previous 1 state to the next 1 state. The resulting products from the multiplier circuits 121, 123, 125, 127 are provided to respective adder circuits.
The adder circuit 131 performs a signed sum of the product from the multiplier circuit 121 and the previous zero state metric 132 to produce a sum 136, and the adder circuit 135 performs the same product from the multiplier circuit 125. The previous zero-state metric 132 has a sign and sum operation, and produces a sum of 139. The adder circuit 133 performs a plus sign sum operation of the product from the multiplier circuit 123 and the previous 1 state metric 134 to produce a sum 138, and the adder circuit 137 performs the product from the multiplier circuit 127 with the same previous 1 state metric. 134 with a sign and an operation, and produces a sum of 199. The previous 0 state metric 132 is the value of the next 0 state calculated during the processing of the previous four samples of the digital sample 115, and the previous 0 state metric 132 can be retrieved from the 0 state memory 172. Likewise, the previous 1 state metric 134 is the value of the next 1 state calculated during the processing of the previous four samples of the digital sample 115, and the previous 1 state metric 134 can be retrieved from the 1 state memory 174.
A temporary state metric selector circuit 142 determines which of 136 and 138 is larger and provides the larger value as a temporary output 146. Similarly, a temporary state metric selector circuit 144 determines which of 139 and 199 is larger and provides the larger value as a temporary output 148. The temporary output 146 is provided to the 0 state memory 172, which is stored in the memory and maintained as the previous 0 state metric 132 for processing the next four samples of the digital sample 115. The temporary output 148 is provided to a state memory 174 that is stored in the memory and maintained as a previous one state metric 134 for processing the next four samples of the digital sample 115.
The temporary output 146 and the temporary output 148 are provided to a surviving state metric selector circuit 152 that selects the larger of the temporary output 146 and the temporary output 148 as the value of the surviving state. The state corresponding to the larger value is a surviving state, and one of the surviving states indicates that it is transferred to the 1-state memory and trimming circuit 162. The state memory and pruning circuit 162 determines the state of the value that extends back from the identified viable state and results in the state selected by the surviving state metric selector circuit 152 to the state path. Upon execution of this step, the state memory and pruning circuit 162 relies on the previous product that was previously calculated and stored (i.e., and 136, 138, 139, 199) and the previous period T (i.e., from multiplication). The product of the units 121, 123, 125, 127).
The analog input signal 105 is provided to the analog to digital converter 110 during operation. The analog input signal 105 represents a number of digital data bits. In some examples, wide bi-phase encoding is performed on the data represented by the analog input signal prior to writing to a storage medium or transmitting via a transmission system. In this encoding, the following series of digital samples "1100" represent logical zeros, and the following series of digital samples "0011" represent logical ones. For example, the bit sequence "10011" is first encoded as "00111100110000110011" before being converted to the analog signal domain, wherein each bit of the "10011" bit pattern corresponds to a 1T period, and the Each encoded bit value of the encoded bit value corresponds to a period of 1T/4.
In the case of using a target of [5 5 -5 -5], when the analog signal is retrieved from the storage medium or a transmission medium, the previous example would ideally result in the following digital sample 115 "20 10 0 -10 -20 0 20 0 -20 -10 0 10 20 0 -20 0 20". It can be seen that in a transition from logic one to logic zero, the digital sample 115 transitions from 20 to 10 to 0 to -10. In this example, a correlator circuit (e.g., multiplier 123) is used, which multiplies the samples "10 0 -10 -20" by an array [1 0 -1 -1] (ie, , 10 correlator value 124), and an output value of +40 is generated (ie, [1*10]+[0*0]+[-1*-10]+[-1*-20] =40). Similarly, in a transition from logic zero to logic zero, a correlator circuit (e.g., multiplier 121) uses an array (i.e., 00 correlator value 122) [0 1 0 -1]. In a transition from logic zero to logic one, a correlator circuit (e.g., multiplier 125) uses an array (i.e., 01 correlator value 126) [-1 0 1 1]. Finally, in a transition from logic one to logic one, a correlator circuit (eg, multiplier 127) uses an array (ie, 11 correlator value 128) [0 -1 0 1]. Please note that other encoding methods and/or correlator values may be used in a manner related to different embodiments of the present invention.
The noise and timing errors will cause non-ideal sample values to be provided as digital samples 115 from analog to digital converter circuit 110. For example, assume that the following digital samples 115 are received in synchronization with the 4T sampling clock 107:
[...124][51,-35,-102,-112][-16,28,48,13][-76,-42,70,52][42,56,-12,99]。
In the previous series of digital samples, when using a simple threshold detector circuit that replaces the data sequence detector circuit 100, the four sample blocks and each group will be used as The last samples of a single sample are grouped together. Please note that when using this simple threshold detection method, the digital sample 115 "124, -112, 13, 52, 99" will produce a detected sequence "1 0 1 1 1". As shown below, the data sequence detector circuit 100 produces the correct sequence "1 0 0 1 1" because the data sequence detector circuit 100 is not susceptible to noise like a simple threshold detector circuit. .
An exemplary operation of the data sequence detector circuit 100 will be further described using the series of digital samples 115 of the series described above with reference to one of the trellis diagrams 990 shown in FIG. 4a. Assume that for a one-bit period 901 (4T period X-4), the 1 state is a surviving state selected by the surviving state metric selector circuit 152 and having a state value of "124" (ie, 1 state 920); And for a one-bit period 902 (4T period X-3), the 0 state is a surviving state (ie, 0 state 910) selected by the surviving state metric selector circuit 152 and having a state value of "389", and And 138 corresponds to a multiplier 123 having a value "265" to a zero transition path 931. 1 0 correlator value 124 (ie, [1 0 -1 -1]) in digital samples "51, -35, -102, -112" Execute one of the previous multiplications to derive the value "265" as shown below:
The value of path 931 = (1 * 51) + (0 * - 35) + (-1 * - 102) + (-1 * - 112) = 265
The value of path 931 (i.e., "265") is added to the value of 1 state 920 (i.e., "124"), resulting in a value of "389" for state 0 910. Note that for the bit period 903 (4T period X-2), the end state of the detected sequence is the 1 state 921.
Starting at 0 state 910, two possible paths are shown: a zero to one transition path 932, and a zero to zero transition path 951. The value of the zero to one transition path 932 is calculated, at which time the multiplier 125 multiplies the four samples of the next column (i.e., "-16, 28, 48, 13") by the 01 correlator value 126 (i.e., [-1 0 1 1]), as shown below:
The value of path 932 = (-1*-16) + (0*28) + (1 * 48) + (1 * 13) = 77.
Similarly, the value of the zero-to-zero transition path 951 is calculated, at which point the multiplier 121 multiplies the four samples of the next column (i.e., "-16, 28, 48, 13") by the 00 correlator value 122 ( That is, [0 1 0 -1]), as shown below:
The value of path 951 = (0*-16) + (1 * 28) + (0 * 48) + (-1 * 13) = 15.
The adder 135 adds the value of the path 931 obtained from the multiplier 125 to the value of the previous 0 state (i.e., the value of the 0 state 910, which is "389" in this example), and generates 139 according to the following equation. :
And 139=389+77=466.
The adder 131 adds the value of the path 951 obtained from the multiplier 121 to the value of the previous 0 state (i.e., the value of the 0 state 910, which is "389" in this example), and generates the sum 136 according to the following equation. :
And 136 = 389 + 15 = 404.
At this point, historical data sufficient to complete the operation of the data sequence detector circuit 100 has been generated, wherein the historical data is stored in the state memory and trim circuit 162, and can be operated via the state operations represented by the trellis diagram 990. Trace a path to determine the sequence of data bits to be detected.
Four instances of the next series of digital samples 115 are received "-76, -42, 70, 52". Multiplying these data samples by respective correlator values produces a transition from zero to zero, a transition from zero to one, a transition from one to zero, and a path value from one to one transition. In particular, the received data samples are supplied to a multiplier 121 where the multiplicative samples are multiplied by a 00 correlator value 122 (ie, [0 1 0 -1]) according to the following equation. A path value of 952:
The value of path 952 = (0*-76) + (1 * - 42) + (0 * 70) + (-1 * 52) = -94.
The received data sample is also supplied to a multiplier 123 in which the equidistant sample is multiplied by a 10 correlator value 124[1 0 -1 -1] according to the following equation to generate a path value 941. :
The value of path 941 = (1 * - 76) + (0 * - 42) + (-1 * 70) + (-1 * 52) = - 198.
The received data samples are also provided to a multiplier 125 where a multiplicative sample is multiplied by a 01 correlator value 126 [-1 0 1 1] according to the following equation to generate a path value 933:
The value of path 933 = (-1*-76) + (0*-42) + (1 * 70) + (1 * 52) = 198.
Further, the received data sample is supplied to a multiplier 127 in which the equidistant sample is multiplied by a 11 correlator value 128[0 -1 0 1] according to the following equation to generate a path value 961. :
The value of path 961 = (0*-76) + (-1*-42) + (0 * 70) + (1 * 52) = 94.
The previously calculated path values are added to the state from which the respective path values originated, resulting in a corresponding sum. In particular, the path value 952 is provided to the adder 131, and the adder 131 adds the path value 952 to the previous zero state metric 132 (i.e., the value of the 0 state 911, which is "404" in this example) according to the following equation. ) and generate 136:
And 136 = 404-94 = 310.
The path value 941 is supplied to the adder 133, and the adder 133 adds the path value 941 to the previous 1 state metric 134 according to the following equation (i.e., the value of the 1 state 921, which is "466" in this example). And generate and 138:
And 138=466-198=268.
The path value 933 is provided to the adder 135, and the adder 135 adds the path value 933 to the previous 0 state metric 132 (i.e., the value of the 0 state 911, which is "404" in this example) according to the following equation. And produce 139:
And 139=404+198=602.
The path value 961 is supplied to the adder 137, and the adder 137 adds the path value 961 to the previous 1 state metric 134 according to the following equation (i.e., the value of the 1 state 921, which is "466" in this example). And produced and 199:
And 199=466+94=560.
The temporary state metric selector circuit 142 selects the larger of the sums 136 and 138 and causes the selected value to be written to the 0 state memory 172. The 0 state memory 172 outputs the stored value as the previous 0 state. Metric 132. In this example, sum 136 is selected instead of 138, and the larger value (i.e., 310) is provided to viable state metric selector circuit 152 as temporary output 146. Similarly, the temporary state metric selector circuit 144 selects the larger of the sums 139 and 199 and causes the selected value to be written to the 1 state memory 174. The state memory 174 outputs the stored value as Previous 1 state metric 134. In this example, sum 139 is selected instead of 199, and the larger value (i.e., 602) is provided to surviving state metric selector circuit 152 as temporary output 148. The survival state metric selector circuit 152 then selects the larger of the temporary output 146 and the temporary output 148. In this example, the viable state is selected to be 1 state 922 because the 1 state is associated with the largest temporary output "602". Thus, for a one-bit period 904 (4T period X-1), the terminated state of the detected sequence is a 1 state 922.
The selection of the 1 state 922 is provided to the state memory and trim circuit 162. The state memory and pruning circuit 162 then tracks the states that were passed to cause the selected 1 state 922. In this example, a state 922 is generated by the state of the following sequence:
Sequence output 170 = [1 state 920, 0 state 910, 0 state 911, 1 state 922] = "1001".
Note that depending on the number of bits in the expected sequence, the sequence output 170 may contain more or less bits of the four-bit scale shown. The longer sequence may include more temporary path and status values stored by the state memory and trim circuit 162. In contrast, shorter sequences may utilize fewer temporary path and state values stored by state memory and trimming circuitry 162. When only the four-bit sequence is detected, the memory contents storing the value of the 1 state 920 are removed, and the corresponding information is removed (trimmed) from the state memory and trimming circuit 162.
A sample of the next sequence is received as a digital sample 115. In this example, the next four samples are "42, 56, -12, 99". These data samples are multiplied by the respective correlator values to produce transition path values from zero to zero, from zero to one, from one to zero, and from one to one. In particular, the received data samples are provided to a multiplier 121 which multiplies the data samples by a 00 correlator value 122[0 1 0 -1] according to the following equation to generate a path value 953:
The value of path 953 = (0 * 42) + (1 * 56) + (0 * -12) + (-1 * 99) = -43
The received data samples are also provided to a multiplier 123, which multiplies the data samples by a 10 correlator value 124[1 0 -1 -1] according to the following equation to generate a path value 942:
The value of path 942 = (1 * 42) + (0 * 56) + (-1 * -12) + (-1 * 99) = -45
The received data samples are also provided to a multiplier 125 which multiplies the data samples by a 01 correlator value 126 [-1 0 1 1] according to the following equation to generate a path value 934:
The value of path 934 = (-1 * 42) + (0 * 56) + (1 * -12) + (1 * 99) = 45
Further, the received data samples are supplied to a multiplier 127 which multiplies the data samples by a 11 correlator value 128[0 -1 0 1] according to the following equation to generate a path value 962:
The value of path 962 = (0 * 42) + (-1 * 56) + (0 * -12) + (1 * 99) = 43
The previously calculated path values are added to the state from which the respective path values originated, resulting in a corresponding sum. In particular, the path value 953 is provided to the adder 131, and the adder 131 adds the path value 953 to the previous zero state metric 132 (i.e., the value of the 0 state 912, which is "310" in this example) according to the following equation. ) and generate 136:
And 136 = 310-43 = 267.
The path value 942 is provided to the adder 133, and the adder 133 adds the path value 942 to the previous 1 state metric 134 according to the following equation (i.e., the value of the 1 state 922, which is "602" in this example). And generate and 138:
And 138 = 602-45 = 557.
The path value 934 is provided to the adder 135, and the adder 135 adds the path value 934 to the previous zero state metric 132 (i.e., the value of the 0 state 912, which is "310" in this example) according to the following equation. And produce 139:
And 139 = 310 + 45 = 355.
The path value 962 is provided to the adder 137, and the adder 137 adds the path value 962 to the previous 1 state metric 134 according to the following equation (i.e., the value of the 1 state 922, which is "602" in this example). And produced and 199:
And 199=602+43=645.
The temporary state metric selector circuit 142 selects the larger of the sums 136 and 138 and causes the selected value to be written to the 0 state memory 172. The 0 state memory 172 outputs the stored value as the previous 0 state. Metric 132. In this example, sum 138 is selected instead of 136, and the larger value (i.e., 557) is provided to surviving state metric selector circuit 152 as temporary output 146. Similarly, the temporary state metric selector circuit 144 selects the larger of the sums 139 and 199 and causes the selected value to be written to the 1 state memory 174. The state memory 174 outputs the stored value as Previous 1 state metric 134. In this example, sum 199 is selected instead of 139, and the larger value (i.e., 645) is provided to surviving state metric selector circuit 152 as temporary output 148. The survival state metric selector circuit 152 then selects the larger of the temporary output 146 and the temporary output 148. In this example, the viable state is selected to be the 1 state 923 because the 1 state is associated with the largest temporary output "645". Thus, for a one-bit period 905 (4T period X), the terminated state of the detected sequence is a 1 state 923.
The selection of the 1 state 923 is provided to the state memory and trim circuit 162. The state memory and pruning circuit 162 then tracks the states that were passed to cause the selected 1 state 923. In this example, a state 923 is generated by the state of the following sequence:
The sequence output 170 = [0 state 910, 0 state 911, 1 state 922, 1 state 923] = "0011".
When only the four-bit sequence is detected, as shown in the trellis diagram 991 of FIG. 4b, the value of the store 0 state 910 is removed (ie, trimmed) from the state memory and trim circuit 162 and from 0. The memory content of the value of the path extended by state 910.
Referring to Figure 4b, the next series of samples is received as a digital sample 115. In this example, assume that the next four samples are "-34, 1, 14, 64". The data samples are multiplied by the respective correlator values to produce path values from zero to zero, from zero to one, from one to zero, and from one to one. In particular, the received data samples are supplied to a multiplier 121 where a multiplicative sample is multiplied by a 00 correlator value 122[0 1 0 -1] according to the following equation to generate a path value 954. :
The value of path 954 = (0*-34) + (1 * 1) + (0 * 14) + (-1 * 64) = -63.
The received data sample is also supplied to a multiplier 123 in which the equal-bit sample is multiplied by a 10 correlator value 124[1 0 -1 -1] according to the following equation to generate a path value 943. :
The value of path 943 = (1 * - 34) + (0 * 1) + (-1 * 14) + (-1 * 64) = - 112.
The received data samples are also provided to a multiplier 125 where a multiplicative sample is multiplied by a 01 correlator value 126 [-1 0 1 1] according to the following equation to produce a path value 935:
The value of path 935 = (-1 * - 34) + (0 * 1) + (1 * 14) + (1 * 64) = 1212.
Further, the received data sample is supplied to a multiplier 127 where the data sample is multiplied by a 11 correlator value 128 [0 -1 0 1] according to the following equation to generate a path value 963. :
The value of path 963 = (0*-34) + (-1 * 1) + (0 * 14) + (1 * 64) = 63.
The previously calculated path values are added to the state from which the respective path values originated, resulting in a corresponding sum. In particular, the path value 954 is provided to the adder 131, and the adder 131 adds the path value 954 to the previous zero state metric 132 (i.e., the value of the 0 state 913, which is "355" in this example, according to the following equation). ) and generate 136:
And 136 = 355-63 = 292.
The path value 943 is supplied to the adder 133, and the adder 133 adds the path value 943 to the previous 1 state metric 134 according to the following equation (i.e., the value of the 1 state 923, which is "645" in this example). And generate and 138:
And 138=645-112=533.
The path value 935 is provided to the adder 135, and the adder 135 adds the path value 935 to the previous zero state metric 132 (i.e., the value of the 0 state 913, which is "355" in this example) according to the following equation. And produce 139:
And 139 = 355 + 63 = 418.
The path value 963 is provided to the adder 137, and the adder 137 adds the path value 963 to the previous 1 state metric 134 according to the following equation (i.e., the value of the 1 state 923, which is "645" in this example). And produced and 199:
And 199=645+112=757.
The temporary state metric selector circuit 142 selects the larger of the sums 136 and 138 and causes the selected value to be written to the 0 state memory 172. The 0 state memory 172 outputs the stored value as the previous 0 state. Metric 132. In this example, sum 138 is selected instead of 136, and the larger value (i.e., 533) is provided to surviving state metric selector circuit 152 as temporary output 146. Similarly, the temporary state metric selector circuit 144 selects the larger of the sums 139 and 199 and causes the selected value to be written to the 1 state memory 174. The state memory 174 outputs the stored value as Previous 1 state metric 134. In this example, sum 199 is selected instead of 139, and the larger value (i.e., 757) is provided to viable state metric selector circuit 152 as temporary output 148. The survival state metric selector circuit 152 then selects the larger of the temporary output 146 and the temporary output 148. In this example, the viable state is selected to be the 1 state 924 because the 1 state is associated with the largest temporary output "757". Thus, for a one-bit period 906 (4T period X+1), the terminated state of the detected sequence is a 1 state 924.
The selection of the 1 state 924 is provided to the state memory and trim circuit 162. The state memory and pruning circuit 162 then tracks the states that were passed to cause the selected 1 state 924. In this example, a state 924 is generated by the state of the following sequence:
Sequence output 170 = [0 state 911, 1 state 922, 1 state 923, 1 state 924] = "0 1 1 1".
When only a four-bit sequence is detected, as shown in the trellis diagram 992 of FIG. 4c, the memory storing the value of the 0 state 911 is still removed (ie, trimmed) from the state memory and trimming circuit 162. The content, and the value of the path extending from the 0 state 911. The program continues when an extra sequence of data bits is received.
Referring to Figure 3, a flow diagram 200 illustrates a sequence detection procedure in accordance with various embodiments of the present invention. According to flowchart 200, it is determined in block 210 whether a 4T sample has been received. As mentioned earlier, the 4T sample means four samples per bit transition. Note that more or fewer samples per bit transition can be used in a manner related to different embodiments of the present invention. Once a specified number of samples have been received in block 210, the received samples are multiplied by respective correlator values, resulting from zero to zero, zero to one, one to zero, and one to one. Change the path value. For example, the four samples are: 51, -35, -102, -112. The previous 0 status value is "12" and the previous 1 status value is "124". In block 222, a branch metric of zero to one transition is calculated, inter alia, using a correlator value ("-1 0 1 1") corresponding to a zero to one transition. Using the above exemplified input, the branch metric is calculated according to the following equation:
Branch metric = (-1 * 51) + (0 * - 35) + (1 * - 102) + (1 * - 112) = -265.
Similarly, in block 224, the branch metric for the one to one transition is calculated using a correlator value ("0 -1 0 1") corresponding to the one to one transition. Using the above exemplified input, the branch metric is calculated according to the following equation:
Branch metric = (0 * 51) + (-1 * - 35) + (0 * - 102) + (1 * - 112) = -77.
In block 226, the branch metric for the one to zero transition is calculated using a correlator value ("1 0 -1 -1") corresponding to the one to zero transition. Using the above exemplified input, the branch metric is calculated according to the following equation:
Branch metric = (1 * 51) + (0 * - 35) + (-1 * - 102) + (-1 * - 112) = 265.
In block 228, a branch metric of zero to zero transition is calculated using a correlator value ("0 1 0 -1") corresponding to a zero to zero transition. Using the above exemplified input, the branch metric is calculated according to the following equation:
Branch metric = (0*51) + (1 * - 35) + (0 * - 102) + (-1 * - 112) = 77.
Once the branch metrics are obtained, the branch metrics are added to the values of the states from which the branch metrics originated. In block 232, the state metric of the zero to one transition state is calculated in particular to produce a first transient state. Using the above exemplary input, the first temporary state value is calculated according to the following equation:
First temporary value = previous 0 state value + 0 1 branch metric = 2 - 265 = -253.
In block 234, a state metric for the one to one transition state is calculated, and a second transient state is generated. Using the above exemplary input, the second temporary state value is calculated according to the following equation:
Second temporary value = previous 1 state value +1 1 branch metric = 124-77 = 47.
In block 236, a state metric for the 1 to 0 transition state is calculated to produce a third transient state. Using the above exemplary input, the third temporary state value is calculated according to the following equation:
Third temporary value = previous 1 state value +1 0 branch metric = 124 + 265 = 389.
Further, in block 238, a state metric for the 0 to 0 transition state is calculated to produce a fourth transient state. Using the above exemplary input, the fourth temporary state value is calculated according to the following equation:
The fourth temporary value = previous 0 state value + 0 0 branch metric = 1 + 77 = 89.
In block 242, a first surviving state metric is selected among the previously calculated first temporary value and the second temporary value. The selection is performed by selecting the larger of the first temporary value and the second temporary value (the value is "47" in this example). The value is stored as the previous 1 state metric for use (such as in blocks 222, 224, 226, 228) by the following series of digital samples. Further, in block 244, a second viable state metric is selected among the previously calculated third temporary value and the fourth temporary value. The third temporary value and the larger of the fourth temporary values (the value is "389" in this example) are selected, and the selection is performed. The value is stored as the previous zero state metric for use (such as in blocks 222, 224, 226, 228) by the following series of digital samples. In block 252, a viable state metric is selected based on the previously determined first surviving transient state and the second surviving transient state. The selection is performed by selecting the larger of the first surviving temporary state and the second surviving transient state (the value is "389" in this example). In this example, the viability state metric is a 0 state. The survival state metric corresponds to the most recent bit in the detected sequence, and in block 262, the latest bit is used to trace back the required number of bits in time to produce the detected bit. sequence. Determining the previous state metric in the path that will result in the calculation of the surviving state metric, and performing the generation of the sequence of bits. In block 272, the identified sequence of bit numbers is then provided as an output, and the program is repeated for the next series of digital samples received in block 210.
Referring to FIG. 5, a storage system 300 is illustrated in accordance with various embodiments of the present invention. The storage system 300 includes a read channel circuit 310 having a transient status sequence detection. The storage system 300 can be, for example, a hard disk drive. The low latency loop recovery mechanism includes a data detector circuit, which can be any data detector known in the art. The storage system 300 also includes a preamplifier 370, an interface controller 320, a hard disk controller 366, a motor controller 368, a spindle motor 372, a disc 378, and a read/write head 376. The interface controller 320 controls the addressing and timing of the data to and from the disc 378. The data on the disc 378 contains some sets of magnetic signals, and when the read/write head assembly 376 is properly positioned over the disc 378, the assembly can detect the set of magnetic signals. In one embodiment, the disc 378 contains magnetic signals recorded in accordance with a longitudinal or vertical recording system.
In a typical read operation, motor controller 368 accurately positions read/write head assembly 376 over the desired data track of disc 378. The motor controller 368 positions the read/write head assembly 376 in a manner associated with the disc 378 by moving the read/write head assembly over the appropriate data track of the disc 378 as directed by the hard disk controller 366. And drive the spindle motor 372. Spindle motor 372 at a determined spin rate (spin The disc 378 is rotated under rate (RPM). Once the read/write head assembly 376 is positioned adjacent the appropriate data track, the magnetic signal representative of the material on the disc 378 is sensed by the read/write head assembly 376 as the spindle motor 372 rotates the disc 378. The sensed magnetic signals are provided as a continuous micro analog signal representative of one of the magnetic data on the disc 378. The micro analog signal self-read/write head assembly 376 is transmitted to the read channel module 310 via the preamplifier 370. Preamplifier 370 is operable to amplify the micro analog signals taken from disc 378. The read channel circuit 310 then decodes and digitizes the received analog signal to reconstruct the information originally written to the disc 378. This data is supplied to a receiving circuit as read data 303. As part of the decoding of the received information, the read channel circuit 310 performs a data sequence detection procedure to identify various information flags including, but not limited to, preambles in the servo data set to determine the read/ The position of the write head assembly 376 relative to the disc 378. The data sequence detection can be performed using the circuitry previously described in connection with FIG. 2 and/or the method previously described in relation to FIG. The write operation is essentially the reverse of the aforementioned read operation in which the write data 301 is provided to the read channel circuit 310. This material is then encoded and written to disc 378.
In summary, the present invention provides novel systems, apparatus, methods, and configurations for performing data processing. While a detailed description of one or more embodiments of the present invention has Therefore, the foregoing description should not be taken as limiting the scope of the invention, and the scope of the invention is defined by the scope of the appended claims.
<p>1. . . Storage medium</p><p>20,22. . . rail</p><p>18,19. . . Wedge</p><p>10. . . Servo data</p><p>11. . . Preamble pattern</p><p>12. . . Servo address tag</p><p>13. . . Grid code</p><p>14. . . Congfa Information</p><p>10a, 10b. . . Servo data bit pattern</p><p>100. . . Data sequence detector circuit</p><p>110. . . Analog digital converter circuit</p><p>105. . . Analog input signal</p><p>115. . . Digital sample</p><p>107. . . 4T sampling clock</p><p>121,123,125,127. . . Multiplier circuit</p><p>122,124,126,128. . . Correlator value</p><p>131,133,135,137. . . Adder circuit</p><p>132. . . Previous 0 state metric</p><p>136,138,139,199. . . with</p><p>134. . . Previous 1 state metric</p><p>172. . . 0 state memory</p><p>174. . . 1 state memory</p><p>142,144. . . Temporary state metric selector circuit</p><p>146,148. . . Temporary output</p><p>152. . . Survival state metric selector circuit</p><p>162. . . State memory and trimming circuit</p><p>901,902,903,904,905,906. . . Bit period</p><p>920, 921, 922, 923, 924. . . 1 state</p><p>910,911,912,913,914. . . 0 state</p><p>931. . . One to zero transition path</p><p>932. . . Zero to one transition path</p><p>951. . . Zero to zero transition path</p><p>933,934,935,941,942,943,952,953,954,961,962,963. . . Path value</p><p>170. . . Sequence output</p><p>300. . . Storage system</p><p>310. . . Read channel circuit</p><p>370. . . Preamplifier</p><p>320. . . Interface controller</p><p>366. . . Hard disk controller</p><p>368. . . Motor controller</p><p>372. . . Spindle motor</p><p>378. . . Disc</p><p>376. . . Read/write head assembly</p><p>303. . . Reading data</p><p>301. . . Write data</p>
Further embodiments of the present invention will be further appreciated by reference to the appended claims. In the drawings, similar reference numerals are used in the various drawings to refer to the like. In some examples, a subtag containing lowercase letters is associated with a code used to represent one of a plurality of similar components. When referring to a code number but not specifying an existing subtag, it is intended to refer to all of these multiple similar components.
Figure 1 is a block diagram of a conventional magnetic storage medium and a sector data system;
2 is a block diagram of a data sequence detector circuit in accordance with one or more embodiments of the present invention;
Figure 3 is a flow chart of a sequence detection procedure in accordance with various embodiments of the present invention;
4a-4c are diagrams illustrating a state transition diagram corresponding to one of the programs described in the flowchart of FIG. 3 and/or the circuit shown in FIG. 2;
Figure 5 illustrates a memory system including a read channel circuit having temporary state sequence detection in accordance with some embodiments of the present invention.
7 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| TW200522539A | Cites | Taiwan Province of China |
| TW200813908A | Cites | Taiwan Province of China |
| US6526430B1 | Cites | United States of America |
| US6530010B1 | Cites | United States of America |
| US7145962B2 | Cites | United States of America |
13 members in 6 offices
Priority claims4
| Document | Office | Kind | Date |
|---|---|---|---|
| 12851475 | United States of America | – | |
| 85147510 | United States of America | A | |
| 12851475 | – | – | – |
| US20100851475 | – | – | – |
Members13
| Document | Office | Kind | |
|---|---|---|---|
| EP2416319A2 | European Patent Office (EPO) | A2 | |
| US2012036173A1 | United States of America | A1 | |
| TW201208261A | Taiwan Province of China | A | |
| KR20120015420A | Republic of Korea | A | |
| JP2012038409A | Japan | A | |
| CN102376329A | China | A | |
| US8566381B2 | United States of America | B2 | |
| EP2416319A3 | European Patent Office (EPO) | A3 | |
| TWI445321BThis record | Taiwan Province of China | B | |
| KR101466429B1 | Republic of Korea | B1 | |
| EP2416319B1 | European Patent Office (EPO) | B1 | |
| JP5859221B2 | Japan | B2 | |
| CN102376329B | China | B |
1 legal event, as the office reported them to INPADOC
Events
| Event | Code | |
|---|---|---|
| Annulment or lapse of patent due to non-payment of feesLapsedMM4A | MM4A |
Numbers
- Publication
- I445321
- Publication, DOCDB
- I445321
- Publication, EPODOC
- TWI445321B
- Application
- 100109120
- Application, DOCDB
- 100109120
- Application, EPODOC
- TW20110109120
Titles2
- English
- Systems and methods for sequence detection in data processing
- Chinese
- ?????????????????
Classification
- CPC, 6
- G11B20/10009
- G11B20/10055
- G11B20/10277
- G11B20/10296
- H03M13/4161
- H04L25/03184
- IPC, 1
- H03M13 41