Professional Documents
Culture Documents
On-chip ramp generat ors for mixed-signal BIST and ADC self-t est
B. Provost
Calibrat ion of mult i-bit per st age pipelined ADC using st at ist ical propert ies of capacit or arrays
Sourja Ray
An 11Bit 45 MS/s Pipelined ADC Wit h Rapid Calibrat ion of DAC Errors in a Mult ibit Pipeline St age
imran ahmed
448 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 53, NO. 2, APRIL 2004
Abstract—An efficient pipeline analog-to-digital converter tions. Moreover, the approach involves an on-chip, simplified
(ADC) self-calibration implementation is presented. The tech- computation of the integral nonlinearity (INL) in real-time. The
nique uses a highly linear on-chip analog ramp generator, on-chip INL computation can greatly simplify the production
performs a simplified on-chip integral nonlinearity (INL) mea-
surement, and extracts the compensation coefficients. Except for test of ADCs and allow for simple monitoring of the ADC per-
the ramp generator, the whole calibration is performed in the formance while in the application environment. The approach
digital domain and is done at the nominal ADC speed (at-speed). has first been validated by calibrating a realistic ADC modeled
The approach does not require any modification to the original by a simulator which includes controls on capacitor mismatch
analog section of the ADC. The INL measurement can be carried and noise level.
off-chip to simplify the production testing or to perform perfor-
mance verification in the application environment. Simulation Section II describes the proposed self-calibration scheme and
and measurement results show an INL improvement of more than defines the performance requirement from the main blocks. Sec-
2 bits (from 2.1 LSB to 0.5 LSB). tion III provides a brief overview of the on-chip ramp-generator
Index Terms—Analog-digital conversion, analog-to-digital con- (OCRG) used in the system. Then, the theory behind the coef-
verter (ADC) calibration, pipeline processing. ficient extraction technique is described in Section IV. In Sec-
tion V, the circuit implementation of the digital self-calibration
loop is presented in detail. Section VI shows the experimental
I. INTRODUCTION
test setup and measurement results. Finally, Section VII gives
in the INl jump (INJU) block. The INJU computes the INL the ramp’s slope from one iteration to the next should result
jumps, which will be used to form the compensation code. in an HPC variation of less than one. In order to set the slope
These blocks will be described in details in Section V. The stability needed from the ramp generator, we need to relate
compensation coefficients are extracted from the INL jumps the slope variations to the HPC variations. Using the relation
supplied by INJU. The digital data going from the delay lines , we relate the slope error to the HPC error
to the error correction is also sent to the compensation block,
after it has been scaled according to the extracted coefficients. (1)
Finally, the compensation code is added to the original data
to produce the corrected digital output code. Only the first where and are the variations on HPC and
three stages are being calibrated to minimize the hardware and slope, respectively. We also have
because the precision limit of the on-chip INL extraction tech-
nique makes the coefficient extraction for subsequent stages
(2)
unreliable. Moreover, the nonlinearity errors of a pipeline ADC
are mostly due to the limitations of the first few stages. where is the error on the final voltage of the ramp in
In order to obtain the required precision on the INL calcu- LSB units, assuming that the starting point does not have any
lations, the input ramp must have a maximum INL defined error. From (1) and (2), we obtain a limit on the offset of the
by , where FSR is the full-scale ramp’s final value necessary to satisfy the specification on the
range of the ADC, is the resolution of the ADC in bits, and HPC variation
HPC is the hit-per-code used in the histogram testing for INL
computation. The HPC represents the number of times the
(3)
same code is obtained at the output of the ADC while the input
ramp is slowly rising. The higher the HPC is, the more precise
In order to obtain the same HPC measurement from one iteration
the INL and other computations will be. For this reason, we set
to the next, should be limited to 0,5. If we assume
the slope of the ramp to a value low enough to obtain an HPC
that , it yields
of at least 16. The self-calibration system will adapt to the exact
value of the input ramp’s slope by computing the real HPC and
taking it into account in the rest of the processing. As will be (4)
described in Section V, the calibration process is performed
in two ramp iterations. Therefore, the relative variations on (5)
450 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 53, NO. 2, APRIL 2004
(6)
difference in INL of the codes just before and just after the first
region transition of the first stage (region 0 to region 1)
(10)
Fig. 6. Tranfer curve of the analog stage in (a) 1-bit mode and (b) Lewis mode.
where is the digital output of stage after/before
the transition on the first stage. Furthermore, can be general-
digital offset that must be subtracted from the output code after ized as follows:
digital correction when using the “1-bit mode,” and is the
INL of the current output code. The term “actual” is used to (11)
signify that it is affected by nonidealities (gain errors, analog
offsets, dc gain errors, etc.). The INL term is expressed as where is the stage number. Therefore, we can compute each
stage’s coefficient starting from the last to the first. Since we are
only calibrating the first three stages, the compensation equation
(8)
now becomes
where is a correction coefficient for stage . The goal here
is to find a simple procedure to predict the value of each of the (12)
and then recover the ideal code with
B. HPC Computation
The HPC resulting from the ramp’s slope is estimated by
counting how many hits (clock cycles) were spent between the
detection of the codes number and and dividing
by . Fig. 10 shows a graph depicting the approach. 1
LSB window of acceptability is used around the counter start
and stop detection values to allow for possible missing codes.
Start values of and were used instead of the full
range because nonlinearity often eliminates the first and last few
Fig. 9. INJU computation block structure. codes.
(the INL jump), thereby eliminating the offset. The result of the
INBI block is the ADC INL multiplied by 64.
The delay caused by the “div by HPC” block is dependent on
the HPC value. Assuming that the nominal HPC will always be
equal or higher than 16, it can be shown that the maximum delay
will be 12 clock cycles. Since this is lower than the nominal
HPC, the division result will be available before a new code
appears. If a particular code step is so short that the divider result
is not available on-time, the divider will skip the new code and
will wait for the next one. This has minimal effect on the final
INL jump value. It can be shown that the inaccuracy on the INL
measurement caused by the truncation error in INBI is given by
(13)
Fig. 11. INL computation approach for the case of HPC = 6.
where is the maximum HPC, is the hit number, and Floor
is the truncation to the lower integer. We then have
LSB (14)
D. Coefficient Computation
The role of the coefficient extraction [see (11) and Fig. 2]
is to compute the compensation coefficient for each of the first
three stages. From (11), we can define each of the first three
coefficients with bitwise shifters and adders. Then, from (14),
we find that each coefficient will have a maximum cumulative
error given by
Fig. 12. INBI (INl built-in) block diagram.
(15)
ramp for simplicity). Therefore, we divide counterx64 by HPC
(“ideal curve,” curve 3). The INL of the actual data is obtained When the compensation coefficients (numbered , 2, 3)
by subtracting the actual curve from the ideal curve whenever are applied, they are first scaled by their corresponding and
the actual curve shows a new code. An arbitrarily large offset then added together [see (7) and (8)]. The s can take values of
value of half the total range is added to the ideal curve before 0, 1, or 2. Therefore, the largest error on the final compensation
subtraction to ensure that the result will be positive, thereby sim- code is
plifying the circuitry. This offset has no effect on the final result
since only the difference between two INL values is of interest LSB (16)
454 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 53, NO. 2, APRIL 2004
Fig. 13. Matlab simulation (for 1.5% mismatch) of the self-calibration with on-chip coefficient extraction scheme showing INL (a) before calibration and (b) after
calibration.
TABLE I
EXPERIMENTAL RESULTS
coefficients, and applies them to the input data. The output data (standard in most pipeline ADCs). The effect of the averager
is also acquired by NIDAQ in real-time. The circuits described setting (0, 1, 2, or 3) was also observed. As expected, a low
in Section V were implemented in VHDL and a Xilinx XCS200 averaging setting under large noise levels results in a decrease
SPARTAN FPGA was programmed using the Digilent “Digilab in performance (INL after calibration of 0.83 LSB). An exces-
2” development board. The FPGA contains all the digital cir- sively high level of filtering also degrades the performance of
cuits of the self-calibrating ADC. The digital I/O card supplies the self-calibrating circuit (INL after calibration of 0.75 LSB).
the 20 uncompensated bits (“regions”) to the FPGA, which com- Fig. 16 shows a close-up on the output data of the ADC before
putes the calibration, compensates and returns the 10 corrected (black) and after (gray) the Averager when the noise has a SD
bits (total of 30 bits, plus several control bits). The I/O limitation of 0.3 LSB. This gives a visual appreciation of the amount of
on the acquisition card and their possible configuration limited noise present in the digital data.
the ADC accuracy to 10 bits. The whole system operates at a
frequency of 10 MHz. This speed could be increased by elimi- VII. CONCLUSION
nating speed paths in the FPGA implementation. There are no
The proposed self-calibration scheme presents key advan-
fundamental speed limitations in the circuit of Fig. 2 and in each
tages over the previous approaches. First, it does not require any
sub-block.
modification to the original analog section of the ADC. This in-
The first test was done using a 10 bits ADC with 1.5% capac-
itor mismatch in all the gain stages and a typical noise level with sures that the system does not degrade the high-speed perfor-
a standard deviation (SD) of 0.09 LSB. The results are shown in mance. Second, the self-calibration process does not require the
Fig. 15. In Fig. 15(a), we see the INL of the output digital ramp use of a higher speed micro-controller. Third, the INL measure-
before (black) and after (gray) calibration, showing that it goes ment can be carried off-chip to simplify the production testing or
from 2.05 LSB to 0.48 LSB, an improvement of more than 2 to perform performance verification in the application environ-
bits. This INL was computed from the output digital data using ment. This is a major advantage for high reliability applications
the traditional method in LabView (DNL for each code, then in- such as biomedical equipment or security monitoring.
tegrating to get the INL). In Fig. 15(b), we show the INL before The approach has been proven with behavioral and structural
and after as it was generated by the INBI block within the FPGA. simulations, as well as experimental measurements. The results
We can see that the INL curves in Fig. 15(a) and (b) are prac- are excellent, showing that the system can calibrate an ADC
tically identical, showing that the on-chip INL computation is with an initial INL of 2.1 LSB to lower than 0.50 LSB.
excellent. The apparent “drop” in the overall computed INL be- These typical results were obtained for ADCs using the “1-bit
fore calibration [in Fig. 15(a)] is caused by some missing codes mode” as well as the “Lewis mode” transfer curves. It can
at the end of the ramp. Table I shows test results for several addi- also withstand a large amount of noise while still extracting
tional nonideal scenarios. Not shown in this table are cases with the compensation coefficients accurately. The on-chip INL
reference offset errors resulting in INL lower than 0.5 LSB, extraction provides results that are practically identical to the
even before calibration, because of the digital error correction external INL computation. The area overhead is 0.18 mm for
456 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 53, NO. 2, APRIL 2004
the ramp generator and the equivalent of 45 000 gates. The Benoit Provost (S’03) was born in Montréal, QC,
number of gates could be easily reduced since approximately Canada, in 1970. He received the B.S. and M.S.
degrees in electrical engineering from the École
10% are presently used only for the buffer in the averager Polytechnique de Montréal in 1993 and 1995,
block. Depending on the expected amount of noise in the chip, respectively, and the Ph.D. in electrical engineering
from the Analog and Mixed-Signal Center, Texas
the buffer size could at least be reduced by half. This buffer A&M University, College Station, in 2002. His
could also be implemented in RAM for a more efficient use M.S. thesis focused on the design of an implantable
of the silicon. The “max-min detect” block in INJU occupies bladder volume monitor to correct urinary dysfunc-
tions and his Ph.D. dissertation focused on analog
another 30% of the area. This block could be greatly optimized and mixed signal built-in self-test and pipeline ADC
with a custom “winner-takes-all” circuit. self-calibration.
In 1997 and 2000, he was with Texas Instruments, Dallas, TX, working on
ADC self-test and self-calibration. He joined Intel Corporation, Hillsboro, OR,
ACKNOWLEDGMENT in 2002, where he concentrates on high-speed design-for-testability techniques.