The present invention relates to a method and a device for detecting the type of wobble on an optical recording medium, and to an apparatus for reading from and/or writing to optical recording media using such method or device.
For playback of optical recording media it is important to determine the type of the optical recording medium. In general there are different media types. A possible classification is: CD (Compact Disk), CD-R(W) (Compact Disk Recordable/Rewritable), DVD-ROM (Digital Versatile Disk Read-Only Memory), DVD-R(W) (Digital Versatile Disk-Recordable/Rewritable), DVD+R(W) (Digital Versatile Disk+Recordable/Rewritable).
To enable copy-protection, a player or recorder for DVD/CD needs to distinguish between
Though the pre-recorded content is encrypted (CSS, Content Scrambling System, or CPPM, Content Protection for Prerecorded Media), encryption alone does not offer a protection against bit-copies. Therefore, the player or recorder should refuse playback of encrypted content from recordable media. However, playback of encrypted content from read-only media must not be inhibited.
In order to distinguish recordable media from read-only media, the presence of a wobble is favorably detected, as recordable media have a pre-groove wobble while read-only media do not contain any wobble.
Before playback it is useful to distinguish between
This can be achieved by analyzing the push-pull signal used for tracking, which is obtained by means of a proper combination of the four signals generated by four photodetectors of the optical pickup used for reading and/or recording. If the push-pull signal contains a wobble, the recording medium is recordable or rewritable. This is sufficient for determining the type of CD, but for DVD it is also important to distinguish between +R(W) and −R(W). If the wobble frequency for 1× speed is 817.5 kHz, the recording medium is +R(W). If the wobble frequency for 1× speed is 140 kHz, the recording medium is −R(W). The different wobble characteristics for different media are summarized in the following Table 1.
As the ratio between the channel bit rate and the wobble frequency is constant, when the speed is not 1× the wobble frequency changes accordingly. The ratio is equal to the number of channel bits per wobble period, as listed in the table. The wobble signal and the data signal HF are fully synchronized, because they are obtained from the same four signals from the four photodetectors.
Before playback a wobble detector favorably provides the following information:
It is an object of the invention to propose a wobble detector capable of providing the above information.
According to the invention the wobble detection is based on a vector analysis of the wobble signal. Both the phase and the amplitude of the wobble are measured. Measuring the amplitude only is not sufficient to guarantee a reliable detection of the presence of a wobble.
For this purpose a sort of vector spectrum analyzer is needed. Focus is on a low-cost implementation. Only a narrow band measurement of the wobble frequency is necessary, as not the whole spectrum of the push-pull signal is needed. This measurement is carried out in the digital domain with special care of the implementation cost. Therefore, sophisticated filters are avoided and necessary buses are reduced as much as possible without degrading the reliability of the detection. Although the wobble is phase modulated, a criterion is proposed for checking the consistency of the wobble phase. This is realized using a clock from a phase-locked loop, which is already available in the player or recorder, and computing its averaged absolute variation.
For a better understanding of the invention, an exemplary embodiment is specified in the following description with reference to the figures. It is understood that the invention is not limited to this exemplary embodiment and that specified features can also expediently be combined and/or modified without departing from the scope of the present invention. In the figures:
The invention is based on the measurement of the wobble signal. Unfortunately the measurement of the amplitude of the push-pull signal at the frequency of the wobble is not always sufficient to judge the existence of the wobble. The amplitude of the retrieved wobble signal might change for several factors. For instance it depends on the recording medium and on the optical pickup used for reading. Therefore, the choice of the threshold for the detector is difficult.
The detection is more reliable if also the phase of the wobble is used. If there is no wobble, the phase is uniformly distributed in the range (−π,+π). If there is a wobble, its phase cannot vary in such a random way. Instead, it is almost constant.
The use of the phase is made difficult by a couple associated problems. The first problem results from the rotation speed of the recording medium, which is not exactly constant. When the speed is changed by a servo loop, also the wobble frequency changes and the wobble phase becomes random. In order to solve this problem, a phase-locked loop (PLL) is needed.
A PLL is already available for the read path, therefore, a possible solution is to use this PLL as it is to generate clock T_clk locked to the speed of the recording medium. This clock is used for synchronizing the wobble signal and the whole wobble detector. In this case the wobble phase is constant in time and the number of T_clk periods within the wobble period is fixed.
The advantage of this solution is evident. Using the data signal HF, the lock-in process of the PLL is faster and the frequency error as well as the phase error are smaller. This is due to the fact that the data signal HF has more energy and a higher signal to noise ratio. Furthermore, the frequency of the data signal HF is higher than the speed of the wobble signal.
A further obstacle is the phase modulation of the wobble of +R(W) and CD. This problem can be solved considering that the modulation index is low in both cases. In the case of +R(W) there are at maximum four phase jumps in 93 wobble periods.
Therefore, a proper averaging filter solves this problem. In the case of CD the frequency deviation is very small (1 kHz) in comparison with the carrier (22 kHz). Therefore, the phase of the wobble does not change very much between two wobble periods, only π/11. Moreover, this small phase variation is completely rejected if the quantisation step of the measured phase variation is higher than the small phase variation due to the frequency modulation.
The phase is used by computing its averaged absolute variation each wobble period. This is depicted in
Another important part of the algorithm concerns the extraction of the wobble, in order to measure its phase and amplitude. For this purpose a correlator based on an IQ demodulator is used. The detailed architecture of a wobble detector according to the invention is depicted in
Finally, the phase and the amplitude of the wobble are measured by means of a conversion from Cartesian to Polar coordinates. In this way the I- and Q-components are converted to the amplitude and phase components. By reading the measured values of phase and amplitude it is possible to detect whether a wobble is present or not:
Of course, in the case of DVD this measurement is repeated twice because the wobble frequency has different values for +R(W) and −R(W). Therefore, the signal should favorably be measured at both frequencies.
The architecture of the wobble detector shall now be explained in more detail. The four signals from the photodetectors (A, B, C, D) are combined to generate the push-pull signal. The push pull signal is then amplified to obtain a sufficient amplitude for the detection. The gain is variable for each medium, different gains are used for CD, DVD+R(W) and DVD−R(W). A clipper limits the dynamic range of the signal. This is useful especially in the case of DVD−R(W), because the peaks of land pre-pits in the wobble signal are eliminated without any loss of the wobble.
The IQ demodulator needs to be synchronized to the speed of the recording medium. Therefore, the signal is re-sampled by the clock T_clk. In addition, also the local oscillator of the demodulator uses the same clock. In order to reduce the complexity of the digital implementation it is useful to reduce the speed, wherefore a divided clock T2clk is used. The full speed of the signals A, B, C, D is not necessary for the push-pull signal, it can be sub-sampled.
Unfortunately the unbalanced data signal HF cannot be neglected, a low sampling might lead to a fold-back of this signal over the wobble frequency. Considering the typical extension of the spectrum of the data signal HF, there is no aliasing when the subsampling factor is two.
All the parameters of the detector are configured by a microprocessor, which handles also the last part of the algorithm running a small routine.
If the servo detects a CD, the microprocessor configures the oscillator of the demodulator to generate the CD wobble frequency. It also configures the parameters of other blocks for the CD case. Reading at low speed the values of amplitude (dB) and absolute phase variation, the microprocessor decides whether the recording medium is recordable or not.
If the servo detects a DVD, the microprocessor tests two cases separately. First it configures the oscillator of the demodulator to generate the DVD+R(W) wobble frequency. It also configures the parameters of other blocks for the DVD+R(W) case. The values of amplitude (dB) and absolute phase variation are stored. The same operation is then repeated for the DVD−R(W) case. By examining and comparing the values of the two cases, the microprocessor decides whether the recording medium is +R(W) or −R(W) or not recordable.
It might happen that the values, which are read by the microprocessor, are not high or low enough to allow a reliable decision. In that case the microprocessor repeats the reading until it obtains useful values for the decision.
In any case the data are fed to the microprocessor at low speed, it therefore has no difficulties to read them. I- and Q-data are supplied at the wobble speed, however, the average filters reduce the speed of the data considerably before the microprocessor.
The average filters are simple processing units, which compute the average of the input samples over a certain number N of samples, the number being programmed by the microprocessor. These units include:
The average filter is needed for the rejection of the phase modulation of the wobble of DVD+R(W) after the calculation of the absolute phase variation. For example, if the average is computed over 64 wobble periods, which include the four phase jumps of the ADIP (Address in Pre-Groove) bit, the result is π/16. This value is even smaller than π/11, which is the error of the phase measurement for CD. Therefore, also the error for DVD+R(W) can be neglected after the quantisation.
In order to obtain a precise synchronization of the amplitude with the phase, it is favorable to include a similar average filter in the amplitude path. This average filter improves the precision of the measurement.
In the case of DVD+R(W), a part of the average filter or even the whole filter can be moved before the polar conversion. This has two main advantages, namely a better noise rejection and a higher frequency selectivity. The first advantage, noise rejection, is obvious. When a wobble is present, I- and Q-components are always summed with the same phase. Therefore, the result of the average has the same amplitude as the input. On the contrary, when no wobble is present, the noise has a random phase and I- and Q-components are summed with a random phase. Therefore, the result has a smaller amplitude. The same filter cannot reduce the amplitude if it is operating after the Cartesian to Polar converter.
The second advantage, frequency selectivity, is also important. The frequency selectivity is the capability of the detector to pass only the signal at the frequency of the wobble, while all other components at all other frequencies are rejected.
Together with the integrate&dump the demodulator measures the correlation of the input signal with the wobble. Specifically, the correlation is measured for the two separate components. All harmonics of the wobble frequency are completely deleted.
However, other frequencies are not completely rejected. Particularly the sub-harmonics might give a contribution to the I- and Q-components and also a contribution to the average amplitude. By extending the correlation period to several wobble periods, the sub-harmonics are rejected as the average operation deletes the time varying I- and Q-components. If N1 is the number of wobble periods of the correlation, the frequency selectivity increases by a factor equal to N1. The average filter in combination with the integrate&dump corresponds to an integrate&dump with a longer integration period. Consequently, the frequency selectivity increases by a factor equal to the extension factor of the integration period.
In the case of a CD the average filters after the calculation of the phase variation are not strictly necessary. However, they are helpful as they increase the reliability of the measurement. In contrast, the average filters before the polar conversion are bypassed, otherwise the phase variation due to the modulation increases.
Also in the case of DVD−R(W) the average filters after the calculation of the phase variation are not strictly necessary. However, again they increase the reliability of the measurement. However, in this case also the average filters before the polar conversion are useful. They increase the frequency selectivity, which is needed to reduce the effect of land pre-pit peaks, whose spectrum is spread over a large bandwidth and which has a large component at the 16th sub-harmonic of the wobble. Also in the time domain the advantage for land pre-pit peaks is evident. These peaks can generate an error in the measurement of the wobble phase. Since in the following wobble period there is no peak, the error due to the peak could be interpreted as a phase variation. The average filter reduces this error because in 16 periods only a maximum of three peaks is possible, most of the time only one or two peaks are present. Therefore, a suitable average period is 16 wobble periods.
A detailed diagram of the digital implementation of the wobble extraction is shown in
After the adder, the wobble signal is scaled and clipped, i.e. the dynamic range of the signal is reduced by three bits in a programmable way.
The clipper limits the signal to the maximum and minimum thresholds of its output dynamic range. A signal sat indicates whether the clipper is limiting the signal. A saturation counter counts the times when saturation happens. The result is read by the microprocessor, it is useful for the adjustment of the scaling factor Tw_scale at the input during testing.
A sub-sampling synchronizes the wobble signal Tw_sc using the divided clock T2clk.
The demodulator includes a local wobble generator and two multipliers for I- and Q-paths. The local wobble generator is programmable in the sense that for different media different frequencies of the local oscillator are generated.
Two integrate&dumps accumulate the input samples. At the end of each wobble period the accumulator restarts from 0 and the output holds the calculated value during the next calculation. The data I and Q are passed to a base band detection at the wobble speed, since the integration period of the integrate&dump is exactly one wobble period.
The local wobble generator is a 13 bits digitally tuned oscillator (DTO), which synthesizes the sinusoidal waveform in a digital way using only 32 samples to save silicon area: 15, 15, 14, 12, 11, 8, 6, 3, 0, −3, −6, −8, −11, −12, −14, −15, −15, −15, −14, −12, −11, −8, −6, −3, 0, 3, 6, 8, 11, 12, 14, 15. A scheme of the local wobble generator is depicted in
The 32 values are stored in a look-up table (LUT), which is used for both the sinus and the cosinus signal. The phase input is shifted by 3π/2 for the sinus generation.
The resolution of five bits at the output of the look-up table is sufficient for generating a low distortion in terms of harmonics at the output. The distortion can be analyzed by applying a fast Fourier transform of the synthesized quantized waveform. A distortion caused by a specific harmonic is tolerable if that harmonic does not produce a significant contribution in the base band. Therefore, the amplitude of lower harmonics is more important. Higher harmonics correspond to high frequencies, where the noise and the interference of the data signal HF have a lower amplitude.
The phase for the generation of the wobble waveform is obtained using the five most significant bits of an accumulator of 13 bits. The bus of the accumulator favorably is large enough to generate an accurate frequency, according to the principles of frequency synthesis.
In this case the precision of the frequency is very important as the detection is based on phase variation. Therefore, the frequency precision is more important than the phase precision, which affects the output distortion. It is even possible to accept a certain distortion of the output without a noticeable consequence. In order to obtain a sufficiently reliable frequency, the accumulator is periodically set to 0 at the end of the wobble period. As a result there is no frequency error. The accumulator generates a ramp from 0 to 8191. The input of the accumulator depends on the medium and is stored in a further look-up table. The values in the further look-up table are pre-calculated according to the typical formula of frequency synthesis: 213/Nws, where Nws is the number of wobble samples in the wobble period.
Considering the sub-sampling by two, Nws is equal to half of the number of channel bits per wobble Nw, which are summarized in the following Table 2.
Fortunately the result is always close to a multiple or sub-multiple of the number of samples of the look-up table (32).
In the case of +R(W), Nws is exactly equal to a sub-multiple. Therefore, the available samples of the look-up table are sufficient. The distortion is only due to the quantisation of the 16 samples and it is limited to odd harmonics, which is depicted in
In the case of CD and −R(W) the distortion is caused by several reasons:
The first reason causes most of the distortion, which is at the frequencies (32·k±1)·FW, where FW is the wobble frequency and k is a positive integer. This distortion decreases at higher values of k and it folds back at lower frequencies, when the value of the frequency is higher than the Nyquist frequency. This is depicted in
The distortion at these frequencies has a very small effect. In the case of DVD−R(W) and CD−R(W), the spectrum of the data signal HF has an abundant attenuation at those frequencies. Therefore, it cannot produce a significant effect at the output of the correlator.
The design of the base band detection, which is shown schematically in
The processing speed is rather low, as it is equal to the wobble frequency. Actually the average filter uses the wobble clock to compute the average over N1 wobble periods.
At the Cartesian to Polar converter the speed of the signal is even slower. After the first pair of average filters the speed is reduced by N1, it is, therefore, equal to the wobble speed divided by N1. The second pair of average filters and also the computation of the average phase variation work at this speed. After the second pair of average filters the speed is again reduced, as it is divided by N2. Consequently, the micro registers, which store the result of the detector, are read at a very low speed.
The values N1 and N2 are programmed by the microprocessor, which also programs the scaling value. The scaling is needed for a normalization of the integration in the previous block. The scaling is programmable in the sense that it is able to attenuate the signal from 2−8 to 2−12. These values are different for each recording medium, because they depend on:
A Cartesian to Polar converter with six bits inputs and four bits resolution for the phase and six bits resolution for the amplitude is sufficient for the detection. This means that the dynamic range is 36 dB for the inputs and for the amplitude. A phase resolution of π/8 is sufficient for the detection, wherefore the phase at the output of the converter has four bits. A delta increases the bits by one and the mod(●,2π) operation reduces the signal domain to the range (−π,+π), thereby loosing one bit. An absolute operation discards another bit, the sign bit, and the signal domain is in the range (0,+π). An average filter of the phase variation reduces the signal domain to the range (0,+π/2). In fact, when a wobble is present, the value is close to 0 and. When no wobble is present, the random absolute phase variation is uniformly distributed in its range (0,+π) and the average is +π/2. Considering that values higher than +π/2 can be handled by the detector as +π/2, the output of the average absolute phase variation is limited to less than π/2 by the clipper. Therefore, the output has four possible values: 0, π/8, π/4, 3π/8.
The quantisation function of
Also the number of bits of the amplitude is reduced as much as possible by converting the signal to a logarithmic scale by means of a dB look-up table.
Finally, the information about amplitude and phase variations is summarized in a unique value, which is the output of the detector. This output is equal to zero when no wobble is present, and it is equal to three when a wobble is present. In case of intermediate values the microprocessor makes suitable decisions. For example, it may wait for another value or read the individual amplitude and phase variation values.
The Cartesian to Polar converter is the core of the base band detection. Its precision is important as it determines the performance of the whole detector. However, a very precise converter requires an expensive implementation.
Consequently, a proper trade-off between precision and implementation cost is employed. The solution is based on:
The calculation of the amplitude has an error, which is minimum for the case (1 0) and maximum for the case (1/{square root over (2)} 1/{square root over (2)}). In the first case the error is 0, in the second case the output is {square root over (2)}, instead of 1. The peak to peak value of the error in dB therefore is
EppdB=20·log10{square root over (2)}=3,
which corresponds to an error of ±1.5 dB. This error is acceptable considering that the amplitude of the wobble is about 30 dB over the noise.
The calculation of the phase would need a large look-up table with twelve bits input. This can be reduced, considering that the result is the same when the two input components are equally attenuated. This can be done without severe consequences when the two components are large enough. Otherwise, in the case of too small components, the quantisation error of the look-up table would increase. Therefore, the dynamic range of the look-up table is reduced to fewer bits.
If one of the two components is greater than eight, the four most significant bits (MSB) of both components are selected. This does not have any severe consequences because the last two bits have a very small effect on the result. If both components are smaller than eight, the first two bits can be discarded without any consequence and the four least significant bits (LSB) are passed to the look-up table.
Therefore, the look-up table can be reduced to four plus four bits input.
The output values of the look-up table are listed in the following Table 3.
The wobble detector includes two identical paths running at half of the speed of the clock T_clk. In order to reduce the silicon area of the demodulator, the two paths can be processed in time multiplex, using the clock T_clk instead of the clock T2clk. This means that only the resources for one path are implemented, which are used in time multiplex at the speed of the clock T_clk. The resources used in time multiplex include the cos look-up table, the scaling at the input of the cos LUT, the multiplier, the integrate&dump, the average filter (N1), the scaling and the clipper, as depicted in
Number | Date | Country | Kind |
---|---|---|---|
03024862.9 | Oct 2003 | EP | regional |