A BIST Scheme For On-Chip ADC and DAC Testing
A BIST Scheme For On-Chip ADC and DAC Testing
1
ADC
under
1-bit pattern sel test
memory 1-bit DAC LPF
code/index
analog
memory
gen sel
comparator sel
load DAC +
inc
pattern -
under index
DAT
counter
test counter
control
logic
positive
reset
acquire
followed by a low-pass filter which removes the out-of- which corresponds to 1 LSB, is
P
=12n,2 T (i)
band high-frequency modulation noise, and thus restores
the original waveform. In practice, one extracts a segment w= i
2n ,2
from the delta-sigma output bit stream that contains an inte-
ger number of signal periods. The extracted pattern is stored and one can obtain the differential and integral non-linearity
in on-chip memory, and periodically applied to the the one- (as fraction of 1 LSB):
T (i) , w) =w
bit DAC and low-pass filter to generate the desired stimulus. DNLi = (
2.2 The converter parameters 0 if i = 0
INLi,1 + (DNLi + DNLi,1 ) =2 otherwise
INLi =
In this work, we are interested in measuring the non-
linearities, i.e., DNL and INL, of the converters. For a DAC, 3 The BIST scheme
INL indicates the deviation of actual output values from the
ideal straight I/O curve, and DNL is a measure of the ir- The overall BIST structure for the proposed ADC/DAC
regularity or non-uniformity in the increments of its output BIST scheme is depicted in Fig. 1. The required functional
voltage or current. blocks and control signals are as follows:
Unlike the DAC, the ADC has a discrete output set but 1-bit pattern memory stores the delta-sigma modulated one-
a fuzzy input, a continuum of input voltage for each output bit digital stream for generating a linear ramp. When
code. The edges of the fuzzy input segments (or decision activated (by gen), its contents are periodically applied
levels) are only statistical quantities, i.e., the most possible to the 1-bit DAC.
values at the existence of dynamic error and noise. One can 1-bit DAC transfers the digital values (1’s and 0’s) to two
adapt most of the DAC parameters to those for ADC—the discrete analog levels.
voltage levels produced by a DAC are analogous to code LPF is a low-pass filter that removes the out-of-band modu-
centers (the centers of the fuzzy input steps) in an ADC. lation noise and thus restores the desired linear ramp.
However, the definition of DNL is different. If the decision The pattern counter generates the desired input codes for
levels are known, one can compute the statistical step width the DAC under test. The load signal loads the counter
for each output code and subtract the average step size to with DAT , and the inc signal increments its contents.
obtain the DNL value.
The analog comparator outputs 1/0 if the the analog quan-
2.3 The linear histogram testing tity in the positive end is greater/less than that in the
For ADC testing, we use the “Linear Histogram Test- negative end.
ing” approach. The analog input is a linear ramp that covers The index counter is reset by the reset signal and incre-
the full-scale range (FSR) of the ADC, and the outputs of mented in each clock cycle.
the ADC are analyzed to create the Tally and Weight arrays The code/index memory acquires and stores the ADC output
(more details can be found in [8].) code or the index counter value when the acquire sig-
Assume that the ADC is an n-bit one, and its output nal is high. The collected data are then analyzed to
codes are c0 ; c1 ; : : : ; c2n ,1 . The Tally array, denoted by T , make the pass/fail decision.
has 2n , 2 elements corresponding to c1 ; c2 ; : : : ; c2n ,2 (the sel directs the output of the LPF to the desired block (the
tallies for code c0 and c2n ,1 are not valid because their in- ADC under test or the analog comparator), and selects
put ranges are not doubly bounded,) and T (i) is the number the input source for the code/index memory (from the
of occurrences of output code ci . The average step width, ADC under test or the index counter.)
2
Note that Fig. 1 shows the BIST structure for testing both v2n - 1
LPF O/P
DAC and ADC. The two counters, and the analog compara- DAC O/P vi DAC O/P
Fig. 2 (the 1-bit pattern memory stores one period of saw- (b)
tooth waveform in this example.) To test the AD converter, positive
v i +1
we first load the pattern memory with the pre-computed acquire
increment
vi DAC O/P
one-bit delta-sigma stream, direct the LPF output to the t0 LPF O/P
ADC under test, and let the ADC be the input source of t1 v i -1
the code/index memory. The gen signal is then set to high t2n - 1
code/index memory is the index counter. Also, the pattern One can then compute DNL and INL (as fraction of 1 LSB)
counter is loaded with c0 and the index counter is reset. Our by:
DAC BIST scheme uses the linear ramp together with an
analog comparator to measure the analog output levels cor- DNLi =
t , t ,1 , w) =w
( i i
LPF O/P
1 will be recorded, too. If necessary, the process may be
repeated several times to collect all the ti ’s.
output corresponding to
The index counter must be able to count up to the length
of the useful portion of the rising ramp, l, and the memory
one run of 1-bit pattern
Figure 2. Timing diagram for ADC testing. space for storing the indices is thus 2n log2 l-bit words. For
3
0.04
example, with an 8-bit DAC and linear ramp of 4k clock
cycles, the required memory space is 28 12-bit words.
0.035
0.03
cutoff
0.02
The test strategy for both AD and DA converters is to
0.015
represent the separation between two analog quantities in
0.01
terms of the number of occurrences (ADC) or the number 0.005
of clock cycles (DAC); therefore, quantization error is in-
evitable. The quantization error can be as large as 2=w LSB,
0
0.5 0.6 0.7 0.8 0.9 1
ratio
variation.
The slow-rising linear ramp for testing the converters is where l is the length of the series, and y = ai + b is R’s best-
a portion of the rising ramp of a sawtooth waveform. Since fit line (least square error.) Let be the ratio of the rising
the sawtooth waveform is a multi-tone signal, the restored ramp to the period of the sawtooth waveform. We perform
waveform at the output of the low-pass filter is distorted (es- a series of simulation that varies the value from 0.5 to 1
pecially at the peaks) because of the missing high-frequency and the cutoff frequency of the 2nd order Butterworth low-
components. pass filter from 0.2% to 4% the output frequency of the 1-
As we have discussed in Section 3.3, the test accuracy bit pattern memory (to evaluate the effect of variation in
is improved as the length of the linear ramp (that maps to the low-pass filter.) For each combination of and cutoff
the FSR of the converters) increases and the corresponding frequency, the test accuracy is computed by
RMS deviation decreases. In general, one can control (to
a certain extent) the length of linear ramp and its RMS de- 2 2
viation by (1) adjusting the depth of the pattern memory, w + FSR=28
(2) choosing the order and configuration of the delta-sigma
modulator for generating the one-bit digital stream, and (3) where w is the length of the linear ramp that maps to the
modifying the shape of the encoded sawtooth wave, i.e., the FSR divided by 28 , and " is the corresponding RMS devi-
ratio of the rising ramp to one period. In the following, we ation. Note that the first term represents the quantization
will focus on finding the best shape of the sawtooth wave- error, and the second term the error caused by the non-
form since the first two are usually constrained by hardware linearity of the generated linear ramp. The simulation re-
configuration and cannot be adjusted at will. sult is shown in Fig. 4. The x and y-axis represent and
The configuration of our current setup is as follows: (1) cutoff frequency, respectively. Using 5% LSB as the ac-
the memory depth of the 1-bit pattern memory is N = 214 , curacy threshold, each circle/dot represents a configuration
(2) the nominal output levels of the 1-bit DAC are 5 volts, that satisfies/fails the desired accuracy. One can see that
(3) the FSR for both converters is 3 volts, and (4) the res- the desired accuracy is realizable only for 0:7 < 1.
olutions of both converters under test are 8-bit. The desired We choose = 1 for our sawtooth waveform because it is
4
DNL - Error INL - Error
most immune from the variation in the LPF (with accept- 0.05 0.05
LSB
LSB
Let the nominal output levels of the 1-bit DAC be b. At
0 0
LSB
LSB
0 0
output levels of the 1-bit DAC for up to 4% deviation. Sim- code index code index