This application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2006-295980, filed on Oct. 31, 2006, the entire contents of which are incorporated herein by reference.
1. Field of the Invention
The present invention relates to a decoder and a reproducing device for decoding by propagating reliability information between an internal decoder and an external decoder, and more particularly to a decoder and information reproducing device for detecting a defective section from a signal read from medium and manipulating reliability information of an internal decoder.
2. Description of the Related Art
Recently digital signal processing systems, which perform iterative decoding using turbo codes for propagating reliability and low density parity check (LDPC) codes, are receiving attention.
For example, errors which occur in a storage medium, such as a magnetic disk, are roughly divided into random errors and burst errors. The random errors are errors which are distributed over a wide range without long continuance. Whereas the burst errors are continuous errors which are generated by a defect in the media and thermal asperity (TA), which is unique to hard disk drives.
The major characteristic of a iterative decoding system is that erred information in codes which have largely relation acquired from large blocks and randomness, can be corrected by a plurality of correct information at a distance position based on the propagation of reliability information. A iterative decoding system has high capacity to correct the randomly distributed information by the reliability propagation.
In other words, a reproducing waveform reproduced from the recording medium via a head receives a known inter-signal interference from a PR waveform equalizer 602. In other words, in the PR waveform equalizer 602, the reproducing waveform passes through an analog filter 610 and is input to an analog/digital converter (A/D converter) 612. The A/D converter 612 performs digital sampling according to a sampling clock. A digital-sampled sampling waveform passes through a digital filter 614 and is equalized to a desired partial response (PR), and a PR equalized series is obtained.
A first decoder (SISO decoder) 642 for the PR channel outputs the most likely reliability information corresponding to recorded data “0” and “1”. Also based on the check information (e.g. parity bit) added to the recorded data, a second decoder (BP decoder) 644 performs error check, and updates the reliability information.
Then the updated reliability information is fed back to the first decoder 642. This iterative operation is performed under predetermined conditions, and finally the reliability information is judged as binary data “0” and “1”, and iterative decoding completes. The decoded data after the iterative decoding is error-corrected by an error correction unit 630, such as an ECC correction circuit, and a decoded data string is acquired.
However if a burst error occurs in the recoding device due to a drop in signal amplitude, which is generated by a defect in the medium, incorrect reliability information is randomly dispersed and propagated, which spreads error information and makes decoding impossible.
To handle this burst error, a thermal asperity detector 620 is installed, so that the reproducing waveform is judged by a fixed threshold value, thermal asperity is detected, and a erasure flag is output. A method for suppressing the propagation of incorrect reliability information by inputting this erasure flag to a first decoder 642 and setting the reliability information in this position to “0” (undefined) has been proposed (e.g. Japanese Patent Application Laid-Open No. 2004-127408).
Another method under proposal is that when RLL (Run Length limited) code modulation is used, a constraint violation of the RLL code is recognized by the output of a first decoder 642, so as to specify the location of the burst error, and the reliability information, which is the output of the first decoder 642, is regarded as undefined (e.g. Japanese Patent Application Laid-Open No. 2005-166089).
Although this is not a method for handling defects of a medium, a method of correcting the branch metrics in a maximum-likelihood decoder according to an instantaneous drop in the amplitude of a reproducing signal in a communication path has also been proposed (Japanese Patent Application Laid-Open No. 2002-164946).
However, in the case of the method of correcting the reliability information of the iterative decoder in a conventional iterative decoding system, which targets a burst error, the reliability information is set to “0” (undefined) only when a clear amplitude abnormality (e.g. drop, level saturation) is generated.
A defect of a medium, however, is not always one that spreads over a wide area in this way, but may be a local defect (called a “micro defect”). This micro defect could possibly cause serious error propagation, and with prior art, it is difficult to correct reliability information when such a micro defect occurs. Also the reliability information is set to “0” when a defect is detected, so it is difficult to effectively correct reliability information for a micro defect.
Also in the case of a prior art targeting reproducing signals on a communication path, if inter-symbol interference occurs in signals to be reproduced and if multi-value levels must be detected, that is, if channel reproducing signals having inter-symbol interference, such as PR signals, are decoded, correct identification point signals may be corrected by mistake, which deteriorates performance.
With the foregoing in view, it is an object of the present invention to provide a decoder and a reproducing device which suppress error propagation due to a micro defect of a medium, and decode channel reproducing signals having inter-symbol interference using the propagation of reliability information.
It is another object of the present invention to provide a decoder and a reproducing device which detect the degree of error due to a micro defect of a medium by channel reproducing signals having inter-symbol interference, and correct the reliability information.
It is still another object of the present invention to provide a decoder and a reproducing device which suppress the error propagation of the reliability information due to a micro defect of a medium, and implement stable decoding.
To achieve these objects, a decoder of the present invention has: a soft-input soft-output decoder for decoding a channel reproducing signals which have inter-symbol interference; a soft-input decoder for decoding external encoding; and a weighting computing unit for detecting both sided amplitude fluctuation of a soft-input signal of the soft-input soft-output decoder, and outputting a weight value according to the drop in amplitude, wherein a soft-output value of the soft-input soft-output decoder is decreased by the weight value, and reliability information is propagated and decoded between the soft-input soft-output decoder and the soft-input decoder.
An information reproducing device of the present invention has: a waveform equalizer for equalizing a reproducing waveform into channel reproducing signals which have inter-symbol interference; a soft-input soft-output decoder for decoding the channel reproducing signals; a soft-input decoder for decoding external encoding; and a weighting computing unit for detecting both sided amplitude fluctuation of a soft-input signal of the soft-input soft-output decoder, and outputting a weight value according to the drop in amplitude, wherein a soft-output value of the soft-input soft-output decoder is decreased by the weight value, and reliability information is propagated and decoded between the soft-input soft-output decoder and the soft-input decoder.
In the present invention, it is preferable that the weighting computing unit further has: an absolute value encoding section for reflecting the soft input signal at an amplitude center value; a moving average computing section for computing a moving average in a predetermined range; a normalization computing section for dividing the moving average value by an average value of all the absolute value signals; and a weighting generation section for generating the weight value as “1” when the normalization computing value is “1” or more, and as the normalization computing value when the normalization computing value does not exceed “1”.
In the present invention, it is also preferable that when the normalization computing value is a threshold T or less, the weighting generation section further generates a weight value of “0” or more and less than T.
In the present invention, it is also preferable that the weighting computing section further has: a separation section for setting the amplitude center value of the soft-input signal as 0, and separating the soft-input signal into an upper signal having a value of 0 or more and a lower signal having a value of less than 0; an upper signal moving average computing section for computing a moving average in a predetermined range for the upper signal; a lower signal moving average computing section for computing a moving average in a predetermined range for the lower signal; an upper side normalization computing section for dividing the upper side moving average value by an average value of all the upper side signals; a lower side normalization computing section for driving the lower side moving average value by an average value of all the lower side signals; a composite computing section for combining the upper and lower normalization computing values; and a weighting generation section for generating the weight value as “1” when the composite computing value is “1” or more, and as the normalization computing value when the composite computing value does not exceed “1”.
In the present invention, it is also preferable that when the normalization computing value is threshold T or less, the weighting generation section further generates a weight value “0” or more and less than T.
In the present invention, it is also preferable that the soft-input soft-output decoder further has a reliability weighting section for generating a weighting reliability information by multiplying the reliability information, that is the soft-output signal, by an n-th power weighting value, which is the weighting value output from the weighting computing section raised to the n-th power (n is 1 or more).
In the present invention, it is also preferable that the soft-input soft-output decoder further has a branch metric computing section for generating reliability information based on an Euclidian distance between a soft-input signal and a soft-input expected value, and a weighting soft-input expected value computing section for multiplying the soft-input expected value by a weight value which is output from the weighting computing section.
In the present invention, it is also preferable that the soft-input soft-output decoder further has a branch metric computing section for generating reliability information based on an Euclidian distance between the soft-input signal and the soft-input expected value, and a weighting branch metric computing section for generating a weighting branch metric by multiplying the branch metric computing result by a n-th power weight value, which is the weight value output from the weighting computing section raised to the n-th power (n is 1 or more).
In the present invention, it is also preferable that the normalization computing section sets the central value of a soft-input expected value of the soft-input soft-output decoder to 0, and uses a resulting value when the total of the absolute values thereof is divided by 2 as an average value of the absolute values.
In the present invention, it is also preferable that the first and second normalization computing sections set the central value of a soft-input expected value in the soft-input soft-output decoder to 0, and use a resulting value when the total of expected values of 0 or more is divided by 2 as the average value of all the upper signals, and a value, when the total of expected values less than 0 is divided by 2 as the average value of all the lower signals.
A moving average value is computed for simple threshold detection, and this acquires a scaling factor, so micro-defects can be accurately detected, and the reliability information of the soft-input soft-output decoder is manipulated, therefore error propagation due to micro defects can be suppressed.
Embodiments of the present invention will now be described in the sequence of recording/reproducing device, defect detector, first embodiment of defect correction decoder, second embodiment of defect correction decoder, third embodiment of defect correction decoder, fourth embodiment of defect correction decoder, another embodiment of detect detector, another embodiment of recording/reproducing device, and other embodiments, but the present invention is not limited to these embodiments.
Recording/Reproducing Device
A reproducing waveform in
The reproducing waveform from this head is adjusted for amplitude by a variable gain amplifier, which is not illustrated, and is input to a PR (Partial Response) waveform equalization section 220. In the PR waveform equalization section 220, an analog (low pass) filter (LPF) 223 cuts a high frequency band of the reproducing signal of which amplitude has been adjusted, and an A/D converter (ADC) 224 converts the analog output thereof into digital signals. Then a digital filter 225, such as an FIR (Finite Impulse Response) filter, performs waveform equalization, and PR equalized series y is acquired.
The PR equalized series y is delayed in a delay unit 210 by the amount of delay generated due to the defect detection operation of a defect detector 230, and is input to the iterative decoder 232. The iterative decoder 232 is comprised of a soft-input soft-output (SISO) decoder 234 for the PR equalized series y, and a belief propagation (BP) decoder 236 for low density parity check (LDPC) code.
For the soft-input soft-output decoder 234, BCJR (Bahl-Cocke-Jelinek-Raviv), MAP (Maximum A Posteriori) decoder, and SOVA (Soft Output Viterbi Algorithm), for example, are used.
For the belief propagation decoder 236, Sum-Product (SP) decoding and Min-Sum decoding, for example, are used. The iterative decoding method here is LDPC as an example, but turbo code and single parity check (SPC) code, for example, may be decoded.
The iteratively decoded data string is error-corrected by an error correction decoder 238 using error correction codes, and user data is output. The error correction decoder 238 is an ECC decoder, for example.
In the iterative decoder 232, reliability information Le (uk) and La (uk) for the recorded data “0” or “1” are repeatedly propagated between the SISO decoder 234 and the BP decoder 236, and the BP decoder 236 and the SISO decoder 234, under predetermined conditions. After iteration is over, the reliability information is hardly judged as “0” and “1”, and is output to the error correction unit 238.
Then as
The moving-averaged signal is divided by an average level value of the input signal y (average value in sampling length sufficiently longer than L) for normalization. And from the quotient, a scaling factor α, which is limited to “1” when the quotient is “1” or more, is generated. In other words, as
The reliability information of the SISO decoder 234 is manipulated by this scaling factor α. This scaling factor α is raised to the n-th power (n is 1 or more). One of the following methods is used for the operation of the SISO decoder 234.
A. The output value (reliability information) Le (uk) of the SISO decoder 234 is directly multiplied by the scaling factor αn. This method can be implemented without changing the configuration of the SISO decoder 234.
B. When the SISO decoder 234 is a maximum likelihood decoder which has a plurality of state transitions, a branch metric in a state transition is multiplied by the scaling factor αn. This method can continue decoding while remaining in a previous state of the BP decoder 236, and can improve the accuracy of the reliability information.
C. When the SISO decoder 234 is a maximum likelihood decoder which has a plurality of state transitions, an expected value (identification point level) in the state transition is multiplied by the scaling factor αn. This method can exhibit a kind of AGC function for letting the expected value follow the signal amplitude, and can sufficiently decode defects as well.
D. The above method C and method A or B are used simultaneously.
The scaling factor for manipulation is a power of α here because as
If the entry of noise (particularly circuit noise) is low, power n is decreased, and if the entry of noise is high, power n is increased to decrease the influence of noise on the moving average.
In
In this way, even if a small medium defect, which cannot be detected by prior art, exists, error propagation to be generated by this defect can be suppressed, and data can be reproduced with stable iterative decoding.
Defect Detector
Now the configuration of the defect detector 230 in
As
The absolute value computing section 240 sets the central value (average value) of the signal of the PR equalized series y to “0”, as shown in
The moving average computing section 242 computes the moving average of the range of L samples for the absolute value |y| of the PR equalized series. The moving average value vk is calculated by the following Expression (1).
In other words, the moving average value vk in k samples is calculated by adding the absolute values |y| in the range of L samples with the sampling point k at the center, and dividing the result by the range L. This range L is preferably a power of 2 in order to decrease the calculation volume in the division. In other words, the division can be performed by bit shift.
In this case, L=2m, and m is greater than the PR restricted length (e.g. in the case of PR−4, the restricted length is “3” because the possible values are 1, 0 and −1). That is, m>PR restricted length. This means that if m is the PR limit length or less, the generation of all the PR patterns is not guaranteed, and therefore a detection error may occur.
The moving average computing section 230 is comprised of the L stages of the shift register 241 for the above mentioned L samples, an addition circuit 243 for adding the values of the L stages of the shift register 241, and a division circuit 245 for dividing the addition result by the sample count L.
In the normalization section 244, the moving average value vk is divided by the average value |y|avg of the absolute values of the PR signal amplitude, and as shown in the following Expression (2), so as to calculate the normalized moving average value vk′.
[Expression 2]
vk′=vk/|y|avg (2)
The length for averaging the absolute values of the PR signal amplitude may be determined by a sequential computation similar to Expression (1), targeting the sampling period that is sufficiently longer than the moving average range L, or it may be set in advance. To set the value in advance, the absolute values of the signal detection expected values in the SISO decoder 234 may be averaged and set.
If the recording code has a restriction which could influence the generation probability of each expected value, the generation probability is considered to determine the average value.
As Expression (3) shows, the scaling factor conversion section 246 converts v′k, which is “1” or more, into “1”, and converts v′k, which is less than the threshold Th, into a scaling factor “a” which is an arbitrary value. Here 0≦a≦Th must be satisfied. If v′k is the threshold Th or more and less than “1”, v′k is directly used as the scaling factor.
In other words, the scaling factor α is set to value “1”, which does not influence the likelihood (reliability information) of the SISO decoder 234 for an area other than an area where a defect may exist, and is set to “v′k” according to the degree of the drop in amplitude for an area where a defect may exist. Also for an area which can be judged that a defect smaller than the threshold Th exists, the scaling factor α is forcibly set to “a”. If “a” is set to “0”, the reliability information is undefined.
If the threshold Th is set to “0”, the scaling factor α becomes “1”, that is a value which does not influence the likelihood (reliability information) of the SISO decoder 234, for an area other than an area where a defect may exist, and becomes “v′k” according to the degree of the drop in amplitude for an area where a defect may exist.
The SISO decoder 234 is further comprised of a path memory 254 for storing path select information, Δ computing section 256 for computing a difference, a likelihood update section 257 for updating the likelihood, a likelihood memory 258 for storing the likelihood, and an output likelihood calculation section 259 for calculating an output likelihood Le (uk) from the likelihood of the likelihood memory 258 and the priori likelihood information.
Now the operation of the SISO decoder 234 will be described with reference to
In other words, an expected value is given to each branch for the four states S0-S3 at a point in time (k−1) and four states S0-S3 at point in time k respectively, and an optimum path is selected so that errors are minimized.
Now this will be described with reference to
First the BM computing section 251 receives an input sample value yk, and computes branch metric values BMk (2 branch metric values) by the following Expression (4) using an expected value d and the noise dispersion value in the register 250.
The addition computing section 253-1 of the ACS computing section 253 computes a path metric value at time k by the following Expression (5) from the path metric value PM of the path metric memory 252, the computed branch metric values BM, and a priori likelihood information La (uk).
[Expression 5]
PMk0(S0)=PMk-1(S0)+BMk00−UkLa(Uk)
PMk1(S0)=PMk-1(S2)+BMk20−UkLa(Uk) (5)
The comparison computing section 253-2 of the ACS computing section 253 compares the computed path metric values at time k, computed by the following Expression (6), and regards the smaller value as a path metric value at time k, and updates the path metric memory 252.
The selection computing section 253-3 of the ACS computing section 253 updates the path select information of the path memory 254 according to the comparison result of the comparison computing section 253-2.
The Δ computing section 256 computes the difference Δk (SO) of the two path metric values computed by the addition computing section 253-1 by the following Expression (7).
[Expression 7]
Δk(S0)=|PMk(S0)−PMk1(S0)| (7)
Then L (u) is set as a log-likelihood ratio (LLR) to an information symbol u. The log-likelihood ratio is reliability information for binary recorded data. The likelihood update section 257 selects the smaller one of the log-likelihood ratio L (u) of the likelihood memory 258 and the difference in the Δ computing section 256 as the log-likelihood ratio, and updates the likelihood memory 258.
The output likelihood calculation section 259 subtracts the priori likelihood La (uk) from the log-likelihood ratio of the likelihood memory 258, and outputs the output likelihood Le (uk).
Now a concrete operation principle will be described according to
In the SOVA method, a likelihood memory 258 with path memory length is provided for each state S0-S3, in addition to the path memory used for a Viterbi decoding. In the SOVA method, the reliability information L (u) is updated according to the following rule.
The survival path in state S0−1 at time (1−1) is regarded as path −0, and the likelihood to be held for the symbol u^0k at time k in this state is given by the following Expression (8).
[Expression 8]
{circumflex over (L)}k(Sl-10)={circumflex over (L)}k0 (8)
In the same way, a survival path at Sl−1 a time (l−1), is regarded as path −1, and the likelihood to be held for the symbol u^1k at time k in this state is given by the following Expression (9).
[Expression 9]
{circumflex over (L)}k(Sl-11)={circumflex over (L)}k1 (9)
It is assumed that path −0 and path −1 merge, and the path −0 becomes a survival path at time l, and the path metric difference is assumed to be Δ.
When u^0k≠u^1k, a path which is in contention with the survival path path −0 is path −p because u^pk≠u^0k, and path −1 because u^0k≠u^1k. The path −q is not in contention since u^pk≠u^0k. The metric difference from the path −0 is L^0k and Δ respectively, so the reliability information at time l is given by the following Expression (10).
[Expression 10]
{circumflex over (L)}k(sl)=min{Δ,{circumflex over (L)}k0} (10)
When u^0k=u^1k, on the other hand, a path which is in contention with the survival path path −0 is path −p because u^pk≠u^0k, and path −q because u^qk≠u^1k=u^0k. The metric difference with the path −0 is L^0k and Δ+L^1k respectively, so the reliability information at time l is given by the following Expression (11).
[Expression 11]
{circumflex over (L)}k(sl)=min{Δ+{circumflex over (L)}k1,{circumflex over (L)}k0} (11)
In the iterative decoding, the log-likelihood ratio to be output is given by the following Expression (12), as is described in the output likelihood calculation section 259 in
[Expression 12]
Le(uk)={circumflex over (L)}(uk)−La(uk) (12)
In the first embodiment, the scaling factor α acquired by the defect detector in
[Expression 13]
Le′(uk)=Le(uk)·α″ (13)
By correcting the reliability information with the scale factor, as described above, error propagation can be suppressed.
As
The SISO decoder 234 is further comprised of a path memory 254 for storing path select information, Δ computing section 256 for computing a difference, a likelihood update section 257 for updating the likelihood, a likelihood memory 258 for storing the likelihood, and an output likelihood calculation section 259 for calculating an output likelihood Le (uk) from the likelihood of the likelihood memory 258 and the priori likelihood information.
In the second embodiment, the scaling factor α acquired by the defect detector in
As
The SISO decoder 234 is further comprised of a path memory 254 for storing path select information, Δ computing section 256 for computing a difference, a likelihood update section 257 for updating the likelihood, a likelihood memory 258 for storing the likelihood, and an output likelihood calculation section 259 for calculating an output likelihood Le (uk) from the likelihood of the likelihood memory 258 and the priori likelihood information.
In the third embodiment, the scaling factor α acquired by the defect decoder in
[Expression 15]
dkij
As
The SISO decoder 234 is further comprised of a path memory 254 for storing path select information, Δ computing section 256 for computing a difference, a likelihood update section 257 for updating the likelihood, a likelihood memory 258 for storing the likelihood, and an output likelihood calculation section 259 for calculating an output likelihood Le (uk) from the likelihood of the likelihood memory 258 and the priori likelihood information.
In the fourth embodiment, which is a combination of the second embodiment and third embodiment, the scaling factor α acquired by the defect detector in
In this case, the values of the scaling factor by which the expected value d is multiplied and the scaling factor by which the branch metric BM is multiplied need not be the same, and it is preferable that the scaling factor by which the expected value d is multiplied and the scaling factor by which the branch metric BM is multiplied are set to different values, α1 and α2 respectively, for example.
Another configuration of the defect detector 230 in
As
The separation section 247 separates the PR equalized series y into an upper side and a lower side of the signal of the PR equalized series y, as shown in
A first moving average computing section 242-1 and a second moving average computing section 242-2 compute the moving average of the range of the L samples for the upper signal yu and the lower signal yd of the PR equalized series respectively. The upper and lower moving average values vuk and vdk are calculated by the following Expression (17).
In other words, the moving average values vuk and vdk of the k samples are calculated by adding the upper amplitude and lower amplitude in the range of the L samples with the sampling point k at the center, and dividing the result by the range L. The range L is preferably a power of 2 in order to decrease the calculation volume in the division. In other words, division can be performed by bit shift.
In this case L=2m, and m is greater than the PR restricted length (e.g. in the case of PR−4, the restricted length is “3” because the possible values are 1, 0, −1). That is, m>PR restricted length. This means that if m is the PR restricted length or less, the generation of all the PR patterns is not guaranteed, and therefore a detection error may occur.
The first and second moving average computing sections 242-1 and 242-2 are comprised of the L stages of the shift registers 241-1 and 241-2 for the above mentioned L samples, addition circuits 243-1 and 243-2 for adding the values of the L stages of the shift registers 241-1 and 241-2, and division circuits 245-1 and 245-2 for dividing the addition results by the sample count L/2 respectively.
In the normalization sections 244-1 and 244-2, the moving average values vuk and vdk are divided by the average value of the upper amplitude and average value of the lower amplitude of the PR signal amplitude respectively, as shown in the following Expression (18), so as to calculate the normalized moving average values vuk′ and vdk′.
[Expression 18]
vku
vkd
The length of equalizing the PR signal amplitude may be determined by a sequential computation similar to Expression (17), targeting the sampling period N, that is sufficiently longer than the moving average range L, or it may be set in advance.
The composite section 248 and the division section 249 combine the upper and lower moving average values by the following Expression (19).
As Expression (3) shows, the scaling factor conversion section 246 converts v′k, which is “1” or more, into “1”, and converts v′k, which is less than the threshold Th, into a scaling factor “a”, which is an arbitrary value, just like the case of
In other words, the scaling factor α is set to value “1”, which does not influence the likelihood (reliability information) of the SISO decoder 234 for an area other than an area where a defect may exist, and is set to “v′k” according to the degree of the drop in amplitude for an area where a defect may exist. Also for an area which can be judged that a defect smaller than the threshold Th exists, the scaling factor α is forcibly set to “a”. If “a” is set to “0”, the reliability information is undefined.
If the threshold Th is set to “0”, the scaling factor α becomes “1”, that is a value which does not influence the likelihood (reliability information) of the SISO decoder 234, for an area other than an area where a defect may exist, and becomes “v′k” according to the degree of the drop in amplitude for an area where a defect may exist.
In this way, for simple threshold detection, a moving average value is calculated, and the scaling factor is acquired by this calculation result, so micro-defects can be detected accurately, and deterioration of error correction capability due to a detection error can be suppressed.
If the asymmetry of the signal amplitude is major, for such reasons as the characteristics of the magnetic head, good defect detection can be performed by using this embodiment.
Just like
The reproducing waveform from this head is adjusted for amplitude by a variable gain amplifier, which is not illustrated, and is input to a PR waveform equalization section 220. In the PR waveform equalization section 220, an analog (low pass) filter (LPF) 223 cuts a high frequency band of the reproducing signal of which amplitude has been adjusted, and an A/D converter (ADC) 224 converts the analog output thereof into digital signals. Then a digital filter 225, such as an FIR (Finite Impulse Response) filter, performs waveform equalization, and the PR equalized series y is acquired.
The PR equalized series y is delayed in a delay unit 210 by the amount of delay generated due to the defect detection operation of a defect detector 230, and is input to the SISO decoder 234. The SISO decoder 234 is a soft-input soft-output (SISO) decoder for decoding the PR equalized series y. The soft-output (reliability information) Le (uk) of the SISO decoder 234 is input to a soft-input decoder 236 for low density parity check (LDPC) codes.
For the soft-input soft-output decoder 234, BCJR (Bahl-Cocke-Jelinek-Raviv), MAP (Maximum A Posterior) decoding, and SOVA (Soft Output Viterbi Algorithm), for example, are used.
For the soft-input decoder 236, Sum-product (SP) decoding and Min-Sum decoding, for example are used, and iteratively updates the likelihood (reliability information). The soft-input decoder 236 receives the reliability information Le (uk) from the soft-input soft-output decoder 234, updates the reliability information La (uk) respectively, and when it is judged as no error after a predetermined number of times of decoding or in a parity check, the soft-input decoder 236 judges the reliability information as “1” or “0” based on the threshold, an error correction decoder 228 corrects errors using an error correction code, and outputs the user data. The error correction decoder 228 is an ECC decoder, for example.
In other words, the SI decoder 236 repeatedly decodes the reliability information La (uk) for the recorded data “0” or “1’ under predetermined conditions. After iteration is over, the reliability information is hardly judged as “0” or “1’, and is output to the error correction unit 238.
In this embodiment as well, the defect detector 230 computes a moving average in an L sampling length for the input signal y of the soft-input soft-output decoder, divides the moving-averaged signal by the average level value of the input signal y (average value in sampling length sufficiently longer than L) for normalization, and from the quotient, a scaling factor α, which is limited to “1” when the quotient is “1” or more, is generated.
Then the reliability information of the SISO decoder 234 is manipulated by this scaling factor α. This scaling factor α is raised to the n-th power (n is 1 or more). For the operation of the SISO decoder 234, one of the methods, A, B and C, is used, as mentioned above.
In the present embodiment, the form of iterative decoding is different from the first embodiment (
In addition to the above embodiments, the first embodiment and the third embodiment of the defect correction decoder may be combined. An example of using the recording/reproducing device of the magnetic disk device was described, but the present invention can be applied to other medium storage devices, such as an optical disk device and a tape device.
The present invention was described using embodiments, but the present invention can be modified in various ways within the scope of the essential character thereof, and these variant forms shall not be excluded from the scope of the present invention.
A moving average value is computed for simple threshold detection, and a scaling factor is acquired from this result, so micro-defects can be accurately detected and the reliability information of the soft-input soft-output decoder is manipulated, therefore error propagation due to micro-defects can be suppressed.
Number | Date | Country | Kind |
---|---|---|---|
2006-295980 | Oct 2006 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
6446236 | McEwen et al. | Sep 2002 | B1 |
6756872 | Penther | Jun 2004 | B2 |
6901119 | Cideciyan et al. | May 2005 | B2 |
7130257 | Taguchi et al. | Oct 2006 | B2 |
7633377 | Sadr | Dec 2009 | B2 |
20040061964 | Akamatsu | Apr 2004 | A1 |
20050120286 | Akamatsu | Jun 2005 | A1 |
Number | Date | Country |
---|---|---|
2001-176213 | Jun 2001 | JP |
2002-164946 | Jun 2002 | JP |
2004-086994 | Mar 2004 | JP |
2004-127408 | Apr 2004 | JP |
2005-166089 | Jun 2005 | JP |
Number | Date | Country | |
---|---|---|---|
20080104486 A1 | May 2008 | US |