TIMING SKEW MISMATCH CALIBRATION FOR TIME INTERLEAVED ANALOG TO DIGITAL CONVERTERS
20230101518 · 2023-03-30
Assignee
Inventors
Cpc classification
International classification
Abstract
A time-interleaved analog to digital converter (TI-ADC) includes a first sub-ADC configured to sample and convert an input analog signal to generate a first digital signal and a second sub-ADC configured to sample and convert said input analog signal to generate a second digital signal. Sampling by the second sub-ADC occurs with a time skew mismatch. A multiplexor interleaves the first and second digital signals to generate a third digital signal. A time skew mismatch error determination circuit processes the first and second digital signals to generate a time error corresponding to the time skew mismatch. A slope value of said third digital signal is determined and multiplied by the time error to generate a signal error. The signal error is summed with the third digital signal to generate a digital output signal which eliminates the error due to the time skew mismatch. This correction is performed in real time.
Claims
1. A time-interleaved analog to digital converter (TI-ADC), comprising: a first sub-ADC configured to sample and convert an input analog signal to generate a first digital signal; a second sub-ADC configured to sample and convert said input analog signal to generate a second digital signal, wherein sampling by said second sub-ADC occurs with a time skew mismatch; a multiplexor configured to interleave the first and second digital signals to generate a third digital signal; a processing circuit configured to generate from the first and second digital signals an error signal that estimates an error due to said time skew mismatch; and a summation circuit configured to sum the error signal with the third digital signal to generate a digital output signal.
2. The TI-ADC of claim 1, wherein the processing circuit is configured to determine a slope value of said third digital signal and generate said error signal from the slope value.
3. The TI-ADC of claim 2, wherein the processing circuit comprises: a time skew mismatch error (TSME) determination circuit configured to process the first and second digital signals to generate a time error corresponding to said time skew mismatch; and a multiplication circuit configured to multiply the time error by the slope value to generate said error signal.
4. The TI-ADC of claim 1, wherein the first and second sub-ADCs each sample at a sub-sample rate of a converter sample rate, but sample with a phase offset that is a function of a number of sub-ADCs which are included in the TI-ADC.
5. The TI-ADC of claim 4, wherein the multiplexor interleaves the first and second digital signals at the converter sample rate.
6. The TI-ADC of claim 1, wherein the processing circuit comprises: an interpolation circuit configured to generate a plurality of interpolated samples from the first digital signal; a comparison circuit configured to compare the plurality of interpolated samples to the second digital signal and identify certain interpolated samples of said plurality of interpolated samples closest to the second digital signal; and a conversion circuit configured to generate a time error corresponding to said time skew mismatch from said identified certain interpolated samples.
7. The TI-ADC of claim 6, wherein the interpolation circuit comprises: an upsampling circuit configured to upsample the first digital signal; and a filtering circuit configured to filter the upsampled the first digital signal to generate the plurality of interpolated samples.
8. The TI-ADC of claim 7, wherein the filtering circuit is a polyphase circuit, and wherein the polyphase circuit is configured to generate the plurality of interpolated samples to include a limited number of interpolated samples located around a time of the second digital signal.
9. The TI-ADC of claim 8, wherein the limited number is substantially smaller than a rate of the upsampling.
10. The TI-ADC of claim 6, further comprising a multiplication circuit configured to multiply the time error by a slope value of said third digital signal to generate said error signal.
11. The TI-ADC of claim 1, wherein the error signal provides a first order estimation of the error in the second digital signal due to the time skew mismatch.
12. A method for time-interleaved analog to digital conversion, comprising: sampling and converting an input analog signal to generate a first digital signal; sampling and converting said input analog signal to generate a second digital signal, wherein sampling by said second sub-ADC occurs with a time skew mismatch; interleaved selecting of the first and second digital signals to generate a third digital signal; processing the first and second digital signals to generate an error signal that estimates an error due to the time skew mismatch; and summing the error signal with the third digital signal to generate a digital output signal.
13. The method of claim 12, wherein processing comprises: determining a slope value of said third digital signal; and generating said error signal from the slope value.
14. The method of claim 13, wherein generating comprises: processing the first and second digital signals to generate a time error corresponding to said time skew mismatch; and multiplying the time error by the slope value to generate said error signal.
15. The method of claim 12, further comprising: generating a plurality of interpolated samples from the first digital signal; comparing the plurality of interpolated samples to the second digital signal; identifying certain interpolated samples of said plurality of interpolated samples closest to the second digital signal; and generating a time error corresponding to said time skew mismatch from said identified number of interpolated samples.
16. The method of claim 15, wherein generating the plurality of interpolated samples comprises: upsampling the first digital signal; and filtering the upsampled the first digital signal to generate the plurality of interpolated samples.
17. The method of claim 16, wherein filtering comprises performing a polyphase filtering to generate the plurality of interpolated samples to include a limited number of interpolated samples located around the time of the second digital signal.
18. The method of claim 17, wherein the limited number is substantially smaller than a rate of the upsampling.
19. The method of claim 15, further comprising a multiplication circuit configured to multiply the time error by a slope value of said third digital signal to generate said error signal.
20. The method of claim 12, wherein sampling of the input signal to produce the first and second digital signals occurs with a phase offset.
21. The method of claim 12, wherein interleaved selecting is made at a rate of the sampling.
22. The method of claim 12, wherein the error signal provides a first order estimation of the error in the second digital signal due to the time skew mismatch.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] For a better understanding of the embodiments, reference will now be made by way of example only to the accompanying figures in which:
[0014]
[0015]
[0016]
[0017]
[0018]
[0019]
[0020]
[0021]
[0022]
[0023]
[0024]
[0025]
[0026]
[0027]
[0028]
[0029]
[0030]
[0031]
[0032]
DETAILED DESCRIPTION
[0033] Reference is made to
and respectively, where k is an integer. The ensuing sampled waveform of the continuous time analog input x(t) by each of the sample and hold circuits 16(1) and 16(2) is shown in
[0034] The digitized ADC outputs A1 and A2 are aliased versions of the continuous time analog input signal x(t). These outputs are further up-sampled by a factor of N=2 to match the sub-ADC output rate with the rate of the TI-ADC system (Fs=2f.sub.s). Post rate conversion, the ADC outputs B1 and B2 become:
[0035] A sample delay e.sup.−jω on output B2 (provided by delay z.sup.−1) followed by a summation of the delayed output B3 with the output B1 emulates the TI-ADC output multiplexing operation performed by the selector circuit 24. The output B3 is the delayed version of B2 with a frequency domain representation:
[0036] The spectra of the outputs B1 and B3, which are shown by
[0037] In a TI-ADC, skew mismatches appear when the sampling instants of the sub-ADCs are not perfectly matched. For an N=2 sub-ADC implementation of the TI-ADC circuit, the second sub-ADC ideally samples exactly T/2 seconds after the first sub-ADC, which makes the overall sampling scheme uniform in time. In practice, however, technology variations or layout imperfections can reduce or increase the sampling interval between consecutive sub-ADCs.
[0038] Normally, in this example using two sub-ADCs, the sub-ADCs sample the signal at times kT and
but because of the mismatches, a positive or negative sampling clock timing offset ΔT causes non-uniform sampling of the input signal x(t) as shown in
[0039] A time-skew mismatch calibration technique is proposed herein that performs a direct estimation of the sub-ADCs sampling clock timing offsets. This approach stands out from the state of the art techniques that often rely on statistical based estimation such as cross-correlation and autocovariance functions. The proposed time-skew calibration operates in the background, and thus is performed in parallel with the normal operations for time-interleaved ADC, while assuming that the offset and gain mismatches have already been removed by other means (such as is known to those skilled in the art).
[0040] The proposed calibration is performed in two phases: A) estimating each sub-ADC's sampling clock timing offset ΔT with respect to a reference sub-ADC, and B) correcting each sub-ADC's output signal based on the result of the estimation.
[0041] An assumption is made here that the timing offsets are small. This allows for linearizing the delay transfer function. The correction of each sub-ADC's output signal is accomplished through linear interpolation based on the timing offset estimates and the instantaneous signal derivative.
[0042] A) Estimation of the Timing Offset:
[0043] Timing skew mismatches shift positively or negatively the sub-ADC sampling times, and therefore also create a small error in the sampled value. If a sub-ADC has a small positive timing offset, the error on the sampled value is positive if the slope of the signal is locally positive. Conversely, if sub-ADC has a small negative timing offset, the error on the sampled value is negative if the slope of the signal is locally negative.
[0044] Reference is made to
where k is an integer and ΔT is the sampling clock timing offset (or time skew mismatch). The ensuing sampled waveform by the sample and hold circuits is shown in
[0045] The sub-ADC sampled outputs A1′ and A2′ are further interpolated by a factor of M, where M is substantially greater than N (by a factor of a hundred or a thousand, for example). The interpolation operation is represented as an up-sampler followed by an image attenuating low pass filter H (z). Post interpolation, outputs B1′ and B2′ can be shown to be:
[0046] It will be noted that post digitization, B2′ suffers a misalignment of ΔT which is quantified in integral multiples of T/M. Prior to the output multiplexor, B3′ results from B2′ shifted by z.sup.−m/2 samples at rate Mf.sub.s which corresponds to an absolute time shift of T/2 with respect to the reference sub-ADC:
[0047] The foregoing equation contains an undesired phase shift error
term that occurs due to the sampling clock timing offset (time skew mismatch) ΔT in the second sub-ADC 12(2) causing a non-uniform sampled output at the TI-ADC system.
[0048] In order to calculate the undesired time shift error ΔT, the phase shift error is evaluated at k=0 to obtain
which essentially is a p sample delay at rate Mf.sub.s:
[0049] From the foregoing equation, the time shift error ΔT can be quantified as an integral multiple of T/M. Therefore, by choosing M to be sufficiently large, ΔT can be estimated very accurately.
[0050] The foregoing analysis demonstrates that interpolated samples from the sub-ADCs can be used to compute the sampling clock timing offset (time skew mismatch) ΔT accurately with high precision. In a digital circuit, computation resources are limited, and it is desired that the implementation of this estimation operation be optimized in hardware. If the value for M is kept large, then heavy filtering would be required for achieving high interpolation ratios. To address this concern, a polyphase interpolation process is implemented by the estimator.
[0051] Reference is made to
[0052] It will be noted that the sampling clock timing offset (timing skew mismatch) ΔT is small and typically a small fraction of the sample clock time period T. It can thus be safely stated, as shown in
coefficients. It is proposed to limit the number of polyphase filter banks to 2 m+1 (with 2 m<<M), where m depends on the system's maximum time-skew specification. For example, if time period of TI-ADC clock T=1 ns (nano second) with expected maximum time-skew ΔT.sub.max=500fs (femto second) and required correction resolution for ΔT is 100fs, then M=10000 and m=5. This is because the maximum deviation of ΔT.sub.max will be ±500fs from the ideal sample, and the best case correction requirement is within 100fs. So m=500/100. Thus, there is no need to implement all 10000 polyphase filter banks (M), but rather only 11 polyphase filter banks (2 m+1) need to be implemented. For the dual TI-ADC under discussion as an example, the polyphase banks can be derived from the matrix operation illustrated in
[0053] It is advantageous that H.sub.p (z) is a small subset of the M possible polyphase filter banks.
[0054] B) Correction of the Timing Offset:
[0055] Once the sampling clock timing offset ΔT has been accurately estimated, it is used at the TI-ADC system output to correct the time-skewed sample values from the second sub-ADC 12(2).
[0056] If the delay ΔT is sufficiently small, the original sample can be recovered from the skewed sample by following the tangent of the signal around the sample to be corrected (linear interpolation). The instantaneous error E can be extracted and subsequently be corrected by a simple calculation for every other sample output of the TI-ADC. In other words, the original sample y(n) can be recovered from the delayed sample y.sub.e (n) by adding it to an error term E described earlier:
[0057] The derived reconstruction of the foregoing equation requires knowledge about the signal derivative. The first order signal derivative on any point of the signal is a tangent at that point. It is proposed to use a high rate interpolation filter at the TI-ADC output to compute an adjacent point in the nearest neighborhood of the output samples. This adjacent point is used along with the original sample to evaluate the slope at that instant. As explained in above discussion of A) Estimation of the timing offset, selective polyphase banks can be deployed to compute partial interpolation values as per requirements. The present need for a single sample derivative mandates only a single polyphase bank implementation which is used to compute the neighboring sample. For an r′ tap FIR interpolate by M′ filter, these coefficients are shown in
[0058] It follows that a single polyphase bank filter H.sub.d(Z) is sufficient to compute the instantaneous gradient of any point at the TI-ADC output y.sub.e [n]. Although, the slope computation occurs at full output rate, computation requirements are greatly relaxed and limited to implementing a single polyphase filter bank.
me instantaneous slope is given by:
[0059] The proposed correction technique effectively computes the instantaneous slope and uses it to correct the amplitude error in each sample. All this is easily implementable in real time with minimal hardware resources.
[0060] Evaluation
[0061] In order to verify the effectiveness of the proposed estimation and correction technique described above, a dual TI-ADC system with a timing skew mismatch is implemented in MATLAB. A full-scale 12-bit multi-tone signal with an integrated noise of −60 dB till Nyquist is used to evaluate the performance of the proposed technique. The multi-tone signal is sampled at 1 GHz by the TI-ADC system and a timing skew mismatch of 1pS is introduced in one of the sub-ADCs. The uncorrected output spectrum is illustrated in
[0062] Implementation
[0063]
[0064] While the sampling clocks 218(1)-218(N) are ideally uniformly phase offset from each other across a clock period T; for example, with a phase offset of T/N, in reality there is likely to be a time skew mismatch. In this context, the sampling clock 218(1) for the reference ADC channel including S/H circuit 216(1) and ADC converter 212(1) is considered as the reference from which the time skew mismatches for the other sampling clocks 218(2)-218(N) are determined. The sampling clock 218(1) causes sampling of the input by the reference ADC channel to occur at specified instances, while the sampling clock 218(N) causes sampling of the input by the Nth ADC channel to occur at phase shifted instances with a ΔT time skew mismatch. A time skew mismatch error (TSME) determination circuit 221 is provided for each of the ADC channels other than the reference ADC channel. Each TSME determination circuit receives the output (A1′) of the ADC converter 212(1) for the reference ADC channel as well as the output (A(_)′) of the ADC converter 212 for the particular ADC channel having the time skew mismatch of its sampling clock 218. The TSME determination circuit 221 performs the process A) described herein for making an estimation of the timing offset ΔT(_).
[0065] The timing offset results ΔT(_) for each ADC channel (other than the reference channel) are input to a selector circuit 238, also referred to in the art as a multiplexor, operating at the rate Fs (where: Fs=N*f.sub.s) which sequentially selects the timing offset ΔT(_) in correspondence with its M-bit digital signal 222(_). The process B) described herein for calculating the error term E is performed using circuitry which processes the cumulative digital output signal 226 using a slope extraction circuit 240 to obtain the derivative
slope circuit implements a single polyphase bank filter H.sub.d (z) to compute the instantaneous gradient of any point at the TI-ADC output A(_)′ 222 (signal y.sub.e[n]) within the cumulative digital output signal 226.
[0066] With knowledge of the instantaneous slope
and the time shift error ΔT, an error termϵ(N) which can correct the time-skewed sample values from the sub-ADC 212(N) is determined using a multiplication circuit 242 as follows:
[0067] A summation circuit 244 then adds the error termϵ(N) to the corresponding time-skewed sample value (i.e., the TI-ADC output A(_)′ 222 from the sub-ADC 212(N)) for correcting the error in the generated digital output signal.
[0068] Reference is now made to
[0069] The all-digital background calibration technique disclosed herein for time-skew mismatch correction in TI-ADCs presents a number of advantages over prior art solutions: a) the non-iterative technique is not based on any contemporary statistical approaches and converges very rapidly; b) the technique is independent of the nature of the input signal and places no constraints on the input signal bandwidth; c) the technique is very effective method in estimating a wide range of timing offsets using low hardware resources; d) the first order linear model for correction works well for small time-skews and may be better approximated for larger skews; d) the calibration method can easily be extended to any channel TI-ADC system; and e) the process is performed in real time to make the correction.
[0070] While the invention has been illustrated and described in detail in the drawings and foregoing description, such illustration and description are considered illustrative or exemplary and not restrictive; the invention is not limited to the disclosed embodiments. Other variations to the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed invention, from a study of the drawings, the disclosure, and the appended claims.