Embodiments of the disclosed technology generally relate to Analog to Digital Converters (ADCs) and, more particularly, to correction of mismatches between Time Interleaved (TI) ADC outputs.
Current techniques include frequency domain implementations of corrections that are specifically directed to processing frames of data, see, e.g., U.S. Pat. No. 7,541,958. In other current techniques, a linear M-periodic system can be represented in the frequency domain by M×M matrixes (where M is the number of time interleaved ADC channels in our case). In order to get such representation, the distinct sets of M normalized frequencies
are considered. Complex exponents with these frequencies constitute eigen-spaces that are invariant under linear periodic transformations (see, e.g., R. Shenoy, D. Burnside, T. Parks, “Linear Periodic Systems and Multirate Filter Design,” IEEE Transactions on Signal Processing, vol. 42, no. 9, pp. 2242-2256, 1994, and M. Vetterli, “A Theory of Multirate Filter Banks,” IEEE Transactions on Acoustics, Speech, and Signal Processing, Vols. ASSP-35, no. 3, pp. 356-372, March 1987). In other words, the response of a Time Interleaved Analog to Digital Converter (TIADC) system to the weighted sum of complex exponentials from the same eigen-space is a weighted sum of the same complex exponentials at the same frequencies. This principle can be used for sinewaves instead of complex exponentials. The corresponding set of frequencies for real sinewaves in U.S. Pat. No. 7,541,958 is referred to as a Family of Mutual Alias Frequencies (FMAF). FMAF frequencies may be defined using the following notations: Fs—the combined sampling rate of TIADC, M—number of time interleaved ADC channels, and P—an integer multiple of M which specifies frequency grid fp, according to the following:
Then, the i-th frequency index (i=0, 1, . . . , M−1) inside the k-th
FMAF can be defined as follows:
It should be noted that TIADC input signals with frequencies from the same k-th FMAF have the feature that DFT (Discrete Fourier Transform) at individual ADC outputs will have a single spectral tone at k-th bin.
Frequency domain correction can be derived by matrix multiplication as follows:
h
k
(cor)=(Hk)−1hk (3)
where hk represents the vector with the m-th component, hk(m) representing a DFT in the k-th frequency bin at m-th ADC output before correction, hk(cor) represents a corresponding vector after correction, and matrix (Hk)−1 represents the inverse of the matrix with components Hk(m, i) derived in a calibration stage per DFT computation in the k-th bin at the m-th ADC output when a single tone having i-th frequency from the k-th FMAF was used for calibration. An example of frequency domain correction according to (3) is shown in
Other techniques are directed to time domain implementation and are suitable for continuous data application, see, e.g., U.S. Pat. No. 8,009,070, which requires inversion of matrixes of size L×L, where L represents the number of finite impulse response (FIR) filter taps.
Embodiments of the disclosed technology generally pertain to time domain procedures for correction of frequency dependent mismatches of Time Interleaved Analog to Digital Converters (TIADC) systems. Time domain correction may be derived on the basis of frequency domain correction matrixes and represent significant reduction in complexity for finite impulse response (FIR) filter designs compared to previously reported results for time domain correction.
The Fourier Transform U(f) of a common signal u(t) at the input of the TIADC and m-th ADC Frequency Response Gm(C)(f) (up to the sampling point) yields the following:
H
m
(C)(f)=U(f)Gm(C)(f) (4)
where Hm(C)(f) is Fourier Transform of corresponding analog signal before sampling by m-th ADC. Gm(C)(f), l=0, 1, . . . , M−1, and hence Hm(C)f), include not only frequency dependent gain mismatches but also phase mismatches due to the timing inaccuracy of a TI structure.
The Fourier Transform of a discrete time signal hm(n) at the m-th TI channel output may be given by the following:
The TIADC structure may distort the spectrum of the input signal by introducing some frequency dependent changes in magnitude and phase of the signal spectrum. It may also introduce aliasing spurs into the spectrum due to gain and phase mismatches between TI channels. Depending on the application, one may want to recover signal spectrum corresponding to ideal sampler or remove only mismatch spurs trying to improve Spurious-Free Dynamic Range (SFDR) values and make the system look mismatch-free.
Application of a TIADC mismatch correction algorithm generally includes an assumption that a signal at the TIADC input is real and band-limited to Fs/2. During a calibration stage, the sine waves having frequencies from Families of Mutual Alias Frequencies (FMAFs) may be applied sequentially and corresponding TIADC outputs may be processed with Discrete Fourier Transform (DFT).
The DFT results may then be compared against desired results, which are expected DFT values in the absence of mismatches or other linear distortions. Based on this comparison, two-dimensional arrays of frequency domain correction coefficients may be computed. Such arrays may include matrixes that may need to be multiplied by TIADC frequency domain outputs to compensate for mismatches. Embodiments of the disclosed technology generally provide techniques for designing FIR filters based at least in part on frequency correction matrixes.
To find correction matrixes in the frequency domain, sets of FMAF frequencies given by (2) for
may be extended to include also groups of frequencies corresponding to DC (k=0) and to Nyquist frequency (k=P/M). Frequency indexes of the k-th FMAF are in the k-th column of the following matrix, exemplified for a case in which M=4 and P=32:
In the example, the first column(k=0) corresponds to frequencies 0, Fs/4, Fs/4, Fs/2. Applying each of these frequencies at the TIADC input will result in the spectral line at 0 frequency (DC) at individual ADC outputs.
Related single tones (e.g., columns of the matrix) may be applied with frequency indexes pi(k) (i=0, 1, . . . , M−1) to obtain corresponding DFT results in the k-th bin, (with m-th component of the vector, hk,i(m) being k-th bin DFT at m-th ADC output), and to form a matrix from these column vectors:
H
k
(hk,0,hk,1, . . . ,hk,M-1) (7)
A matrix for corresponding desired values, discussed in detail below, may be formed as follows:
H
k
(des)
(hk,0(des),hk,1(des), . . . ,hk,M-1(des)) (8)
The frequency domain correction matrix Qk can be found from
H
k
(des)
=Q
k
H
k (9)
to be
Q
k
=H
k
(des)(Hk)−1 (10)
where all of the matrixes have sizes M by M.
In the example, the first column (k=0) and last column (k=P/M) in index matrix P have two times repeating indexes. Application of the same frequency two times will result in two identical columns in Hk. Also, it should be noted that these two columns result in real valued vectors h0,i (DC) and hP/M,i (Nyquist), which means that information about complex amplitude of applied single tones is lost. However, both of these issues (singularity of Hk and loss of information) can be resolved by using 90 degree shifted versions of the same sinewave if the frequency index repeats. The procedure may be repeated for all frequency bins of interest, e.g., for other columns of frequency index matrix P.
In situations where full equalization is required, certain desired values, e.g., vectors hk,i(des), may be the delayed version of distortion-free values. Exciting the TIADC system without distortion with a sinewave at frequency fp and complex amplitude A=aejφ, then the spectrum at the m-th ADC output will be as follows:
where δ(x) is the delta function and Fs=1/T.
In order to replace the continuous spectrum with DFT, an integer number P (e.g., specifying the frequency grid) may be selected and DFT may be calculated at each ADC output at frequency bins as follows:
If single tones are sequentially applied at the TIADC input at frequencies as follows:
then, based on (11), the DFT at the m-th ADC output may be given by:
For m, i=0, 1, . . . , M−1; k=0, 1, . . . P/M, the following may be defined:
Using (15), the DFT for single tone with frequency index pi(k) (e.g., applied at the input of distortion-free TIADC system) at the m-th ADC output becomes:
where Ãi (k) represents a modified complex amplitude of a single tone with frequency index pi (k) and complex amplitude Ai(k)=ai(k)ejφ
The following defines the column vector from distortion-free values Ĥm,i(k):
ĥ
k,i
(Ĥ0,i(k),Ĥ1,i(k), . . . ,ĤM,i(k))T (18)
where ( )T denotes transpose.
In order to form vectors of delayed distortion-free values, a delay factor may be defined for i=0, 1, . . . , M−1;
and for some delay Δ (where Δ is a delay specified in units of sampling time T):
Then:
h
k,i
(des)
=ĥ
k,i
D
i(k,Δ) (20)
For full equalization magnitude and phase information about calibration, single tones are generally required in order to form desired vectors hk,i(des) (see, e.g., 20, 19, 18, and 16). In situations where it is more pragmatic to correct only for TI mismatch spurs, the magnitude and phase information is not required since one can choose any of the TIADCs to be a reference and correct mismatches relative to the reference ADC. If the first ADC (m=0) is chosen to be the reference, then
h
k,i
(des)
(H0,i(k),H0,i(k)E1,i(k), . . . ,(H0,i(k)EM-1,i(k))T (21)
where H0,i(k) is the DFT in the k-th bin at the first reference ADC output when a single tone with frequency index pi(k) is applied. Factor Em,i(k) is defined in (15) and takes into account that the desired value at the m-th ADC output should be delayed by riff relative to the first (m=0) reference ADC output. The delay factor defined by (19) may be applied to all ADC desired outputs in this case as well.
FIR filters may be designed per frequency domain correction matrixes Qk for time domain implementation of correction algorithms. A FIR filter may be designed per each index pair (l, m) of Qk with k=0, 1, . . . , P/M (e.g., first Nyquist zone frequency grid according to (12)). The FIR filter is to be designed given the following set of frequency response samples specified at P/M+1 points:
This may be done for all pairs (l, m), which will eventually result in M2 FIR filters because the size of Qk is M by M (l, m=0, 1, . . . , M−1). Having designed all M2 FIRs, an M by M correction matrix filter C(z) may be formed with the (l, m)-th entry being Cl,m(z), the transfer function of the (l,m)-th filter with coefficients as follows:
C
l,m
(cl,m(0),cl,m(1), . . . ,cl,m(N−1))T (23)
Designing M2 FIR filters in which each (l, m)-th filter (l, m=0, 1, . . . , M−1) is designed by minimizing the weighted squared error (WSE) between corresponding FIR filter actual frequency response samples is as follows:
where the specified frequency response samples ql,m(k), k=0, 1, . . . , P/M are given in the first Nyquist zone by (22). For each pair (l, m), l, m=0, 1, . . . , M−1), a corresponding FIR cl,m(n), n=0, 1, . . . , N−1 may be found such that the WSE is minimized, with the WSE given by the following:
where β(k) is the weighting factor for k-th frequency bin and is identical for all FIRs (e.g., all (l, m) pairs). The last restriction may be removed if desired and β(k) may be replaced by βl,m(k).
By introducing vector and matrix notations, the minimization of (25) may be reformulated as a weighted least-squares problem and any minimization methods (e.g., normal equations, differentiation, and completion of squares) may be used to find filter coefficients cl,m(n), n=0, 1, . . . , N−1. The following is a DFT-type matrix W:
and a weight matrix B:
B=diag(β). (27)
It may then be shown that corresponding FIR filter coefficients (here represented in a column vector cl,m) are as follows:
c
l,m=(Real[WHBW])−1Real[WHBql,m] (28)
where ( )H denotes complex-conjugate transpose.
To prove (28), index pair (l, m) may be dropped from FIR filter coefficients cl,m(n), n=0, 1, . . . , N−1 (where N is the length of a FIR filter, not necessarily same for all M2 FIR filters), and index (l, m) may be dropped from (22) and (25). Desired frequency response may be denoted samples q(k), k=0, 1, . . . , P/M and mean squared error ε. A differentiation method may be used to prove (28). Considering ε to be a function of FIR filter coefficients c and using (25), it follows that:
where wk refers to the k-th row of matrix W in (26). To find c, gradient vector may be equated to zero and, after application of certain algebraic operations, (28) may be obtained.
The above procedure of finding FIR filter coefficients may repeat M2 times to find M2 FIRs (e.g., one FIR cl,m per each frequency response vector ql,m).
It should be noted that the matrix that needs to be inverted in (28) is a real N by N matrix (where N refers to the FIR filter length) and it does not depend on measurements ql,m—hence, the values of this matrix can be pre-computed and stored. It should also be noted that, for certain reasonable choices of weighting factors β(k), neither matrix inversion is required in the computation of cl,m in (28) nor matrix multiplication by (Real[W*BW])−1 as it becomes diagonal for the (r,t)-th entry of this matrix is Real[Σk=0P/Mβ(k)ej2πk(r−t)/(2N/M))]. This is the case, for example, with β(k)=0 if k is even, and β(k))=1 otherwise. Such a choice of is reasonable when the DC, Nyquist, and calibration frequencies' harmonics due to non-linear distortions need to be avoided. Hence, matrix inversions are required only at the stage of finding frequency correction matrixes by (10) for matrixes of size M by M.
A typical matrix filter C(z) according to embodiments has M input streams Hm(z),m=0, 1, . . . , M−1 (e.g., corresponding to M ADC outputs) and produces M ouput streams Hlcor(z), l=0, 1, . . . , M−1 according to the following:
(H0cor(z),H1cor(z), . . . , HM-1cor(z))T=C(z)(H0(z),H1(z), . . . ,HM-1(z))T (30)
The matrix filter C(z) may operate at Fs/M rate and can be viewed as a polyphase time invariant implementation of periodically time varying filter at Fs rate. In the absence of time interleaved mismatches, matrix components of C(z) will generally represent M phases of a decimated time invariant filer and the matrix will have the following structure (for M=4):
The following discussion is intended to provide a brief, general description of a suitable machine in which embodiments of the disclosed technology or certain portions thereof can be implemented. As used herein, the term “machine” is intended to broadly encompass a single machine or a system of communicatively coupled machines or devices operating together. Exemplary machines can include computing devices such as personal computers, workstations, servers, portable computers, handheld devices, tablet devices, and the like.
Typically, a machine includes a system bus to which processors, memory (e.g., random access memory (RAM), read-only memory (ROM), and other state-preserving medium), storage devices, a video interface, and input/output interface ports can be attached. The machine can also include embedded controllers such as programmable or non-programmable logic devices or arrays, Application Specific Integrated Circuits, embedded computers, smart cards, and the like. The machine can be controlled, at least in part, by input from conventional input devices (e.g., keyboards and mice), as well as by directives received from another machine, interaction with a virtual reality (VR) environment, biometric feedback, or other input signal.
The machine can utilize one or more connections to one or more remote machines, such as through a network interface, modem, or other communicative coupling. Machines can be interconnected by way of a physical and/or logical network, such as an intranet, the Internet, local area networks, wide area networks, etc. One having ordinary skill in the art will appreciate that network communication can utilize various wired and/or wireless short range or long range carriers and protocols, including radio frequency (RF), satellite, microwave, Institute of Electrical and Electronics Engineers (IEEE) 545.11, Bluetooth, optical, infrared, cable, laser, etc.
Embodiments of the disclosed technology can be described by reference to or in conjunction with associated data including functions, procedures, data structures, application programs, instructions, etc. that, when accessed by a machine, can result in the machine performing tasks or defining abstract data types or low-level hardware contexts. Associated data can be stored in, for example, volatile and/or non-volatile memory (e.g., RAM and ROM) or in other storage devices and their associated storage media, which can include hard-drives, floppy-disks, optical storage, tapes, flash memory, memory sticks, digital video disks, biological storage, and other tangible, physical storage media.
Associated data can be delivered over transmission environments, including the physical and/or logical network, in the form of packets, serial data, parallel data, propagated signals, etc., and can be used in a compressed or encrypted format. Associated data can be used in a distributed environment, and stored locally and/or remotely for machine access.
Having described and illustrated the principles of the invention with reference to illustrated embodiments, it will be recognized that the illustrated embodiments may be modified in arrangement and detail without departing from such principles, and may be combined in any desired manner. And although the foregoing discussion has focused on particular embodiments, other configurations are contemplated. In particular, even though expressions such as “according to an embodiment of the invention” or the like are used herein, these phrases are meant to generally reference embodiment possibilities, and are not intended to limit the invention to particular embodiment configurations. As used herein, these terms may reference the same or different embodiments that are combinable into other embodiments.
Consequently, in view of the wide variety of permutations to the embodiments described herein, this detailed description and accompanying material is intended to be illustrative only, and should not be taken as limiting the scope of the invention. What is claimed as the invention, therefore, is all such modifications as may come within the scope and spirit of the following claims and equivalents thereto.
The present application claims the benefit of U.S. Provisional Patent Application No. 61/674,511, titled “TIME INTERLEAVED ANALOG TO DIGITAL CONVERTER MISMATCH CORRECTION” and filed on Jul. 23, 2012, the content of which is hereby fully incorporated by reference herein.
Number | Date | Country | |
---|---|---|---|
61674511 | Jul 2012 | US |