1. Field of the Invention
The present invention concerns a method and a system for compensating the non-linearity of a sigma-delta analog-to-digital converter.
2. Description of the Related Art
Equipment in all fields, electronic or otherwise, consumer or professional, increasingly employs digital rather than analog processing. This choice is often justified by technical advantages that are now well known, such as very stable parameters, excellent reproducibility of results, and increased functionality.
The external world being inherently analog, in most cases analog-to-digital converters (ADC) and digital-to-analog converters (DAC) provide at some level the interface between the external world and the digital core of the equipment.
The development of powerful digital processors has created a need for a high-resolution analog-to-digital converter compatible with CMOS VLSI (Very Large Scale Integration) technologies. The sigma-delta modulation converter in particular has exploited technological developments.
As shown in
The fundamental principle of the sigma-delta analog-to-digital converter consists firstly of oversampling the signal using the analog sample-and-hold device, pushing the quantizing noise power maximum outside the pass-band of the signal, by integrating the quantizer into a feedback loop, and then filtering the signal obtained by means of a digital filter 6. These conjugate actions initially “dilute” the quantizing noise in a wide band thanks to the oversampling, shape the noise spectrum, and then filter the quantizing noise to retain only the wanted band of the signal.
Using a multibit quantizer associated with a multibit digital-to-analog converter in the feedback loop of a sigma-delta analog-to-digital converter is beneficial because it improves the signal/noise ratio and dynamic range of the sigma-delta analog-to-digital converter.
However, the performance of the sigma-delta analog-to-digital converter is highly dependent on the linearity of the sigma-delta analog-to-digital converter 7 used in the feedback loop 8.
One prior art solution that has been proposed for calibrating the multibit digital-to-analog converter regardless of the number of levels is described by SARHANG-NEJAD and G. C. TEMES, “A High Resolution Multibit Sigma Delta ADC with Digital Correction and Relaxed Amplifier Requirements”, IEEE Journal of solid state circuits, vol. 28, N 6, June 1993, pages 648-660. It proposes to improve the performance of the sigma-delta analog-to-digital converter by measuring the non-linearities of the digital-to-analog converter 7 during a calibration phase. During the calibration phase, the multibit sigma-delta analog-to-digital converter is converted into a one-bit sigma-delta analog-to-digital converter (only the most significant bit at the output of the quantizer is considered). The calibration phase essentially employs the components shown in
Each correction value represents a digital error caused by the digital-to-analog converter 7 in converting between a digital value and its analog conversion. During the phase of normal use, the sigma-delta analog-to-digital converter is equivalent to that shown in
The above technique has a number of drawbacks, associated with the manner in which the correction values are measured. In the calibration phase (
During the calibration phase, the digital-to-analog converter is therefore connected to the input E1 and the values injected are measured accurately. During the normal operation phase, the digital-to-analog converter included in the feedback loop is connected to the input E2 of the adder. Because the capacitors C1 and C2 are in practice different, the values measured during the calibration phase are therefore not in fact the values injected during the normal operation phase. Also, the accuracy of the measurement may be influenced by offset voltages inherent to the sigma-delta analog-to-digital converter. The offset voltages may not be a problem during the normal operation phase, but can become a problem during the calibration phase because it entails measuring DC voltages.
The invention aims to solve the above problem by retaining the structure of the sigma-delta analog-to-digital converter during the calibration phase and using only digital signals.
The invention proposes a method of compensating the non-linearity of a sigma-delta analog-to-digital converter with N quantizing levels and including a digital-to-analog converter in a feedback loop. N is an integer greater than two. The method includes a normal operation phase in which a plurality of digital values corresponding to a plurality of quantizing levels are modified by correction values Ci, where i is a positive integer from 1 to N−2, calculated during a calibration phase. According to a general feature of the invention, the correction values Ci are calculated from values of the output of the quantizer of the sigma-delta analog-to-digital converter processed digitally with the digital-to-analog converter retained in the feedback loop of the sigma-delta analog-to-digital converter and after converting the multibit sigma-delta analog-to-digital converter into a sigma-delta analog-to-digital converter with three quantizing levels, for example modifiable levels. The number N is a positive integer greater than 2.
The correction values Ci are used to correct errors caused by the digital-to-analog converter. The corrections are preferably made instantaneously during the normal operation phase.
The method in accordance with the invention of compensating non-linearity includes a calibration phase during which the multibit sigma-delta analog-to-digital converter is converted into a sigma-delta analog-to-digital converter with three quantizing levels Xm, XM and Xi, where i is from 1 to N−2; during a period P1i, a predetermined value is delivered to the input of the sigma-delta analog-to-digital converter and the values from the output of the sigma-delta analog-to-digital converter are processed digitally; this calibration phase is executed N−2 times, retaining the levels Xm and XM, and taking successively for the level Xi the N−2 levels other than the levels Xm and XM. The correction values Ci of the N−2 levels other than Xm and XM are advantageously calculated using the processed values, the N−2 correction values Ci being adapted to modify the N−2 levels other than Xm and XM during the normal operation phase.
The levels Xm, XM and Xi are digital values that are converted into analog values in accordance with a transfer function of the digital-to-analog converter.
The method can further include, during the calibration phase and before calculating the correction values Ci, at least one step F during which the multibit sigma-delta analog-to-digital converter is converted into a sigma-delta analog-to-digital converter with two quantizing levels Xm and XM. During a period P2, said predetermined value is delivered to the input of the sigma-delta analog-to-digital converter, and the successive values of the output of the sigma-delta analog-to-digital converter are processed digitally. In other words, step F advantageously eliminates any offset voltages in the sigma-delta analog-to-digital converter.
For example, if step F is performed only once, the periods P1i can all be equal to one another and equal to the period P2.
The calibration phase presupposes that Xi is different from Xm and XM.
In accordance with the invention the sigma-delta analog-to-digital converter with N quantizing levels is converted into a sigma-delta analog-to-digital converter with a number of quantizing levels less than N by modifying quantizing threshold values and by digital processing using internal comparators. In the general case the sigma-delta analog-to-digital converter with N quantizing levels is converted into a sigma-delta analog-to-digital converter with three quantizing levels, and if the optional step F (offset voltage correction) is implemented, it is also converted into a sigma-delta analog-to-digital converter with two quantizing levels.
According to one advantageous feature of the invention, the levels Xm and XM are respectively the minimum value and the maximum value of the N quantizing levels.
In one embodiment of the invention, during the normal operation phase, its correction value Ci is added to each level Xi present at the output of the quantizer. Thus the digital value after correction is substantially equal to the analog value at the output of the digital-to-analog converter.
In one advantageous variant of the invention, said predetermined value is equal to zero and, during the calibration phase, and during the period P1i for each level Xi, the number Ni of values equal to Xl and the total number NTi of all the output values are counted at the output of the sigma-delta analog-to-digital converter and a sum S1i of the NTi values is calculated. The periods P1i, which are not all equal a priori, can depend on each intermediate level Xi. In this case, step F of the calibration phase is executed N−2 times, each time taking a period P2i equal to each period P1i, and a sum S2i is calculated of all the values leaving the sigma-delta analog-to-digital converter during each execution, after which a correction value Ci corresponding to the value Xi is calculated from the equation (for i from 1 to N−2):
The period P1i for each level Xi is preferably equal to the period needed to count the number Ni of values equal to Xi at the output of the sigma-delta analog-to-digital converter (A2) until the number Ni is equal to a given number N0.
If step F is executed only once (in which case all the periods P1i are equal to each other and to P2), there is only one sum S2 and Ci can be calculated from the following equation (for i from 1 to N−2):
There are various ways to calculate the correction values Ci.
The invention also proposes a system for compensating the non-linearity of a sigma-delta analog-to-digital converter with N quantizing levels including a digital-to-analog converter and a digital filter. According to a general feature of the invention, the system includes means for implementing the various phases previously described.
In a preferred embodiment, the calculating and modifying means include:
Other advantages and features of the invention will become apparent on examining the detailed description of one non-limiting embodiment and the accompanying drawings in which:
Although the invention is not limited to it, one example of the method and the system according to the invention for compensating the non-linearity of a sigma-delta analog-to-digital converter with three quantizing levels will now be described.
The
The first part A1 has a zero value input 15 used during a calibration phase and an input 16 receiving the analog signal to be digitized by the sigma-delta analog-to-digital converter. A switch 17 connects either to the input 15 or to the input 16.
In the second part A2, a signal from the input 15 or 16 reaches the positive input 18a of an adder 19. A noise-shaping filter 20 recovers the output signal of the adder 19. The signal 21 leaving the noise-shaping filter 20 is fed to the input of a quantizer 22 with three quantizing levels: −1, 0 and 1. The quantizer 22 generates a digital signal 23 which, during a normal operation phase, is fed to the input of a corrector module 27 via a switch 26. The output signal of the corrector module 27 is then passed through a digital filter 28 in order to undersample it. Undersampling reverts to a frequency in the vicinity of the Nyquist frequency. The digital signal 23 also passes through a feedback loop 25 including a digital-to-analog converter 24 whose output signal is fed to the negative input 18b of the adder 19.
The third part A3 is a control device including an accumulator 29, a counter 30 and a second counter 31, all three of which are connected to a random access memory module 32 connected to a digital processor module 33. The digital processor module 33 performs calculations and generates data signals 35 that are sent to the corrector module 27 of the sigma-delta analog-to-digital converter and control signals 34 that are sent to the quantizer 22 and the switches 17 and 26.
In normal operation, the digital-to-analog converter 24 receives three different digital values (for example in the form of pairs of bits 01, 00 and 10 coding the values −1, 0 and 1), and converts them into three analog values, which should ideally be −1, 0 and 1.
The three analog points do not usually correspond ideally to the values −1, 0 and 1. For example, the analog point leaving the digital-to-analog converter whose ideal value is 0 can be corrected. The correction of the 0 point is independent of the zero value at the input 15. It is possible to correct the +1 and −1 points with the zero value still present at the input 15.
During the first calibration phase the switch 17 is switched to the zero value input 15 and the switch 26 is switched to an input 36 common to the accumulator 29, the counter 30 and the second counter 31. The quantizer 22 operates in a three-level quantizing mode. The counter 31 then counts the number N0 of 0 points (points to be corrected) contained in the digital signal 23 passing from the input 36 to the counter 31. The count continues until the number N0 reaches a predetermined value. To facilitate subsequent calculations the predetermined value is a power of two. It is equal to 218, for example, i.e. to 262 144.
The accumulator 29 calculates the sum S1 of the values of the output signal of the quantizer 22. The sum S1 is stored in the random access memory 32, together with the number N1 of points generated by the quantizer 22 and counted by the second counter 30. The value 218 is chosen so that it is sufficiently large for the values stored in memory to be accurate.
The second calibration phase consists of converting the sigma-delta analog-to-digital converter with three quantizing levels into a sigma-delta analog-to-digital converter with two quantizing levels. For this it suffices to convert the three-level quantizer 22 into a two-level quantizer. The two levels are the −1 and +1 points. The switch 17 is still switched to the input 15 and the switch 26 is still switched to the input 36. During this phase the sigma-delta analog-to-digital converter is operated with zero at the input during N1 samples. The accumulator 29 also calculates the sum S2 of the N1 output samples. A zero point correction value is finally calculated from the equation:
C=(S2−S1)/N0
The division is simple to effect in the digital processor module 33 because a power of two has been chosen for the value of N0. The value C is then saved in the memory 32, which has three compartments in which it saves the number N1, the sum S1 and the value C.
Once these two calibration phases have been completed, the phase of normal operation of the sigma-delta analog-to-digital converter with three quantizing levels begins. The switch 17 is switched to the input 16, the switch 26 is switched to the corrector module 27, and the quantizer 22 operates with three quantizing levels −1, 0 and +1. The analog signal to be digitized is fed to the input 16 and leaves the quantizer 22 in the form of a digital signal 23 which is modified by the corrector module 27 and then digitally filtered by the module 28. The corrector module 27 executes an algorithm that can be summarized as in the table below:
Thus if the digital value 0 is present at the output of the quantizer 22, it is replaced by its correction value C at the output of the corrector module 27.
To convert the three-level quantizer 22 into a two-level quantizer the values V and −V at the second inputs of the comparators 37 and 38 are replaced by a null value and the algorithm of the digital processor module 39 is modified so that, when the value of the input signal 21 is positive, the signal 23 is equivalent to +1 and, when the value of the input signal 21 is negative, the signal 23 is equivalent to −1. To this end, the algorithm of the digital processor module 39 is as follows:
In fact, only the comparator 37 is used, the comparator 38 being rendered “invisible”.
The non-linearity of the sigma-delta analog-to-digital converter described above can be compensated by carrying out a calibration phase without modifying the structure of the sigma-delta analog-to-digital converter.
For example, in a simulation for a signal to be converted of maximum amplitude and no correction in accordance with the invention, a sigma-delta analog-to-digital converter with three quantizing levels sampled at a frequency of 2 048 kHz had a signal/noise ratio of 46 dB. The results obtained after applying the first calibration phase with N0=262 144 were as follows: N1=372 522 and S1=−6 408.
Executing the second calibration phase yielded a sum S2=−3 116 and a 0 point correction value C such that:
C=(S2−S1)/N0=3 292/262 144
A signal/noise ratio of 105 dB was then obtained in normal operation for a signal to be converted of maximum amplitude and with correction in accordance with the invention.
The method described above performs a calibration phase using a three-level quantizer and then a two-level quantizer but retains the general structure of the sigma-delta analog-to-digital converter. The calibration phase is effected simply by controlling the various switches.
Number | Date | Country | Kind |
---|---|---|---|
99 08323 | Jun 1999 | FR | national |
More than one reissue application has been filed for the reissue of U.S. Pat. No. 6,653,958. The present application, U.S. patent application Ser. No. 11/487,666, is a continuation of U.S. patent application Ser. No. 11/287,568, filed Nov. 23, 2005, now abandoned.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/FR00/01754 | 6/23/2000 | WO | 00 | 6/5/2002 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO01/01578 | 1/4/2001 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4772871 | Suzuki et al. | Sep 1988 | A |
5134402 | Miyoshi | Jul 1992 | A |
5257026 | Thompson et al. | Oct 1993 | A |
5781137 | Knudsen | Jul 1998 | A |
5982316 | Shin | Nov 1999 | A |
Number | Date | Country |
---|---|---|
0001754 | Jun 2000 | FR |
Number | Date | Country | |
---|---|---|---|
Parent | 11287568 | Nov 2005 | US |
Child | 10019170 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 10019170 | Jun 2002 | US |
Child | 11487666 | US |