Spectral Properties and Interpolation Error Analysis for Variable Sample Rate Conversion Systems Andre Tkacenko Signal Processing Research Group Jet Propulsion Laboratory, California Institute of Technology 4800 Oak Grove Drive, Pasadena, CA 91109 E-mail:
[email protected] AbstractβThe problem of variable sample rate conversion (SRC) has received much attention on account of its applications in software defined radios (SDRs) that must support a wide variety of data rates. In this paper, we investigate the spectral properties of variable SRC and focus on the interpolation error obtained using any two interpolation kernels. We show that SRC is a generalization of decimation for both rational and irrational conversion ratios. In addition, a frequency domain expression for the mean-squared interpolation error is derived and simplified. Simulations presented show the degradation effects of using practical piecewise polynomial based interpolants as opposed to the underlying bandlimited sinc function for several input signals.
I. I NTRODUCTION A primary challenge facing the development of software defined radios (SDRs) is the ability to accommodate a variety of data rates subject to fixed system architectures [1], [2]. Examples of these architectures are the analog-to-digital converter (ADC) used at the front end and the tracking loops (carrier synchronization, symbol timing, etc.) used subsequently. To conform to both of these types of fixed systems pragmatically, the sample rate must be converted digitally. This can be achieved using a variable sample rate conversion (SRC) system [2]. An intermediate frequency (IF) SDR receiver employing variable SRC is shown in Fig. 1. In this system, an analog datamodulated signal at data rate π
is sampled at a fixed rate πΉπ to produce a real digital IF signal. Upon quadrature conversion, a complex baseband signal sampled at rate πΉπ β² = πΉ2π is formed. The signal of interest is then centered at zero frequency using a tunable numerically controlled oscillator (NCO). At this point, the sample rate must be altered to fit the fixed redundancy factor (# of samples/symbol) stipulated for the tracking loops. For example, if the loops require a redundancy of πΎ as in Fig. 1, the sample rate coming into them should be πΉπ β²β² = πΎπ
. The purpose of the variable SRC system is to adjust this rate from πΉπ β² to πΉπ β²β² . Prior to this, the SRC system should also remove out-of-band artifacts to prevent aliasing. In this paper, we first focus on the spectral properties of variable SRC for the interpolation kernel signal model typically assumed [2]. Though this model has received much attention in the literature (i.e., see [3], [4], [5]), most of the consideration has consisted of time domain analysis. With the derived The research described in this publication was carried out at the Jet Propulsion Laboratory, California Institute of Technology, under a contract with the National Aeronautics and Space Administration.
variable/reconfigurable
fixed IF analog input data rate = R
fixed
NCO - Quadrature
- ADC (Fs ) Fs
Conversion F β² = s
- Variable
Fs 2
6
Fsβ²
SRC
- Tracking Loops (K) Fsβ²β² = KR
-
fLO
Fig. 1.
Block diagram of an IF SDR receiver employing variable SRC.
spectral characterization of the variable SRC output, we show the relation between SRC and decimation [6]. Specifically, we show that variable SRC is a generalization of decimation for both rational and irrational rate conversion ratios. We then turn our attention to interpolation error analysis for the variable SRC signal model. Using the spectral properties of this model, we derive a simplified frequency domain expression for the mean-squared interpolation error for any two interpolation kernels. Simulation results presented elucidate the degradation associated with using practical piecewise polynomial based interpolation kernels instead of the underlying bandlimited sinc function. In line with intuition, we show that as the output rate conversion factor increases, so that the input samples appear less redundant, the error increases. It is also shown that for a fixed rate conversion factor, higher order interpolation kernels always outperform lower order ones. A. Outline In Sec. II, we review the interpolation kernel signal model assumed throughout the paper. The variable SRC problem is explored in Sec. III. Spectral properties of the variable SRC output are derived in Sec. IV, where the connection between variable SRC and decimation is established. In Sec. V, we derive a simplified frequency domain expression for the mean-squared interpolation error. Simulation results of the interpolation error are presented in Sec. VI for several practical scenarios. Concluding remarks are made in Sec. VII. B. Notations All notations used are as in [7]. In particular, continuoustime (analog) and discrete-time (digital) normalized frequencies are denoted as πΉ and π , respectively. Parentheses and square brackets are respectively used for continuous-time and discrete-time function arguments. For example, π₯(π‘) would denote a continuous-time function for π‘ β β, whereas π¦[π] would denote a discrete-time function for π β β€.
II. I NTERPOLATION K ERNEL S IGNAL M ODEL All equivalent complex baseband analog signals input to the system of Fig. 1 are assumed to be of the following form [2]. ) ( β β π‘ π₯(π‘) = βπ (1) ππ [π] β π π=ββ
The signal model of (1) is referred to as the interpolation kernel signal model [2] where β(π‘) denotes the dilated interpolation kernel [2], π represents the kernel spacing interval, and ππ [π] is the basis coefficients sequence [2]. Several interesting classes of signals are generated using the model given in (1) [8]. For example, from the Nyquist sampling theorem [6], if π₯(π‘) is bandlimited to πΉπ΅πΏ (meaning π(π2ππΉ ) = 0 for β£πΉ β£ β₯ πΉπ΅πΏ ), then π₯(π‘) is of the form, ) ( β β π‘ βπ (2) π₯(π‘) = π₯(πππ ) sinc ππ π=ββ where the sinc function is defined as sinc (π₯) β sin(ππ₯) and ππ₯ ππ is given by ππ = 2πΉ1π΅πΏ . Comparing (2) to (1), it can be seen that all bandlimited signals can be expressed in terms of the interpolation kernel model where we have, β(π‘) = sinc (π‘) , ππ [π] = π₯(πππ ) , π = ππ
(3)
For this reason, any signal bandlimited to πΉπ΅πΏ can be recovered from uniform sampling at a rate of πΉπ = π1π = 2πΉπ΅πΏ (called the Nyquist rate [7], [6]), as this will automatically yield the basis coefficients sequence ππ [π] as seen from (3). After uniform sampling of the signal π₯(π‘) from (1), which is attained here after quadrature conversion of the ADC output, we will have access to the sequence π₯π [π] β π₯(πππ ), where ππ denotes the sampling interval. For the remainder of this paper, we will assume that ππ = π . Then, from (1), we have, π₯π [π] = π₯(πππ ) =
β β
ππ [π]β(π β π) = ππ [π] β βπ [π] (4)
π=ββ
where the discrete-time sequence βπ [π] is defined as βπ [π] β β(π). In other words, from (4), π₯π [π] is simply the discretetime convolution of the basis coefficients sequence ππ [π] with the sampled interpolation kernel sequence βπ [π]. To reconstruct the original analog signal π₯(π‘) from (1) at some prescribed value of time π‘ = π‘0 , which is necessary for variable SRC, the only quantity needed is the basis coefficients sequence ππ [π], assuming that the interpolation kernel β(π‘) is a known function. From the sampled sequence π₯π [π] from (4), it can be seen that ππ [π] can be obtained as follows. ππ [π] = ππ [π] β π₯π [π]
(5)
where ππ [π] is the convolutional inverse of βπ [π] [7]. In the π§-domain, (5) becomes, 1 (6) πΆπ (π§) = πΊπ (π§)ππ (π§) , where πΊπ (π§) = π»π (π§) Here, πΆπ (π§), ππ (π§), πΊπ (π§), and π»π (π§) denote the π§transforms of ππ [π], π₯π [π], ππ [π], and βπ [π], respectively. Thus, ππ [π] can be obtained using the system shown in Fig. 2 [8].
xd [n]
-
sampled analog signal
Gd (z) =
1 Hd (z)
-
cd [n] basis coefficients
convolutional inverse of sampled interpolation kernel
Fig. 2. Discrete-time system used to obtain the interpolation basis coefficients sequence ππ [π] from the sampled continuous-time signal π₯(πππ ) = π₯π [π].
For the special case in which π₯π [π] = ππ [π], we say that β(π‘) is interpolating [8]. Otherwise, it is non-interpolating. It can be easily shown that β(π‘) is interpolating iff we have, β(π) = πΏ[π] β π β β€ ββ βπ [π] = πΏ[π]
(7)
where πΏ[π] is the Kronecker delta function [7]. Combining (5) with (1), it follows that π₯(π‘) can be expanded in terms of an effective interpolating kernel βeο¬ (π‘) as follows. ) ( β β π‘ π₯(π‘) = βπ (8) π₯π [π]βeο¬ π π=ββ
Here, βeο¬ (π‘) is defined as, βeο¬ (π‘) β
β β
ππ [β]β(π‘ β β)
(9)
β=ββ
From (9), we see that βeο¬ (π‘) satisfies (7) and is interpolating. If π»(π2ππΉ ) and π»eο¬ (π2ππΉ ) denote the Fourier transforms of β(π‘) and βeο¬ (π‘), respectively, then from (9) and (6), we have, ( ) π»(π2ππΉ ) (10) π»eο¬ (π2ππΉ ) = πΊπ ππ2ππΉ π»(π2ππΉ ) = π»π (ππ2ππΉ ) Plots of the impulse and magnitude responses of several effective interpolating kernels are shown in Fig. 31 (a) and (b), respectively. All kernels here were interpolating, except for the cubic π΅-spline, for which π»π (π§) = 61 π§ + 23 + 61 π§ β1 [9]. As can be seen, higher order methods yielded behavior closer to the bandlimited sinc interpolant of (3) than lower order ones. Specifically, the cubic π΅-spline yielded the closest fit to the sinc interpolant of all of the kernels considered. III. T HE VARIABLE SRC P ROBLEM From (2), the quadrature analog input π₯(π‘) to the system of Fig. 1 is assumed to be bandlimited and of the form, ( ) β β π‘ π₯(π‘) = π₯π [π] sinc βπ (11) πin π=ββ where πin denotes the quadrature input sampling interval and π₯π [π] β π₯(ππin ) denotes the discrete-time sampled signal obtained after baseband down-conversion of the ADC output. To alter the sample interval to say πout , we need to generate the sequence π¦π [π] β π₯ ((π + π)πout ), where π is a fractional offset satisfying 0 β€ π < 1. From (11), π¦π [π] is calculated as, π¦π [π] =
β β
π₯π [π] sinc(π(π + π) β π)
(12)
π=ββ 1 Every interpolating kernel β (π‘) considered here is real and even, eο¬ meaning that π»eο¬ (π2ππΉ ) is also real and even [7]. As such, all impulse and magnitude responses are shown for π‘ β₯ 0 and πΉ β₯ 0, respectively.
1
the underlying sinc model from (12). For example, for piecewise polynomial kernels, such as the nearest neighbor, linear, cubic Lagrange, and cubic π΅-spline interpolants, π¦π [π] can be computed efficiently using the Farrow structure [10], [2]. In terms of the effective interpolating kernel βeο¬ (π‘), the variable SRC output π¦π [π] is given as follows from (8). β β π¦π [π] = π₯π [π] βeο¬ (π(π + π) β π) (15)
sinc nearest neighbor linear cubic Lagrange cubic B-spline
0.8
0.6
heο¬ (t)
0.4
0.2
0
π=ββ β0.2
β0.4
0
0.5
1
1.5
2
2.5
3
3.5
4
t
(a) 0 sinc nearest neighbor linear cubic Lagrange cubic B-spline
β10
β20
|Heο¬ (j2ΟF )|2 (dB)
β30
IV. VARIABLE SRC O UTPUT S PECTRAL P ROPERTIES It is insightful to consider frequency domain representations of the variable SRC ( output ) π¦π [π] from (14) and (15). Focusing on (14), if ππ ππ2ππ denotes the discrete-time Fourier transform of π¦π [π], then we have the following [7]. β β ( ) ππ ππ2ππ β π¦π [π]πβπ2ππ π π=ββ
β40
β50
=
β β
β60
β β
( ππ [π]
π=ββ
) β(π(π + π) β π) π
βπ2ππ π
(16)
π=ββ
β70
In terms of its inverse Fourier transform [7], β(π‘) is given by, β« β β(π‘) = π»(π2ππΉ ) ππ2ππΉ π‘ ππΉ (17)
β80
β90
β100
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
ββ
5
F
(b) Fig. 3. Effective interpolating kernel responses: (a) time domain impulse responses and (b) frequency domain magnitude responses.
Using (17) in (16) yields the following after some work. β« β β β ( ) ππ ππ2ππ = ππ [π] π»(π2ππΉ ) ππ2ππΉ (ππβπ) (
1 . If πΉin β π1in and πΉout β πout Here, π is defined as π β ππout in denote, respectively, the input and output sample rates, then in π = πΉπΉout . Hence, π is called the input rate conversion ratio. Similarly, β β π1 = πΉπΉout is the output rate conversion ratio. in To calculate even a single sample of π¦π [π], the sum in (12) must be computed over the entire set of input samples {π₯π [π]} in general. For variable SRC in which π is adjustable, the sinc terms in (12) must also be changed accordingly. As this cannot be done practically, one alternative could be to truncate most of the terms in (12). However, as the sinc function decays inverse linearly (i.e., sinc(π₯) decays as π₯1 ), a large number of terms must be kept to minimize truncation error effects [2]. Instead, what is typically done to achieve variable SRC is to model the continuous-time input as coming from a different kernel than the sinc function [3], [4], [5]. Specifically, the input analog signal π£(π‘) is modeled using (1) as follows. ( ) β β π‘ π£(π‘) = ππ [π] β βπ (13) πin π=ββ
Γ
π=ββ
Through careful choice of the kernel β(π‘), we can achieve variable SRC in (14) efficiently and with little loss compared to
β β
π
βπ2ππ(πΉ β ππ )π
) ππΉ
(18)
π=ββ
Recall the Dirac impulse train [7] Fourier series expansion is, ( ) β β β π 1 β ΛπΛ βπ2πππΉ Λ πΏ πΉ+ π = β πΉΛ, πΛ (19) Λ Λ π π π=ββ π=ββ Here, πΏ(π‘) is the Dirac delta function [7]. Using (19) in (18) with πΉΛ = πΉ β ππ and πΛ = π yields the following after simplification and exploiting the sifting property of πΏ(π‘) [7]. ( ( )) β β β ( π2ππ ) π βπ 1 β ππ [π] π» π2π ππ π = π π=ββ π π=ββ
π2π ( π βπ π )(ππβπ)
=
Γπ ( ( )) β 1 β π βπ π» π2π ππ2π(π βπ)π π π π=ββ ( β ) β βπ2π ( π βπ π ) π Γ ππ [π]π (20) π=ββ
| To alter the sampling interval to πout , we compute π¦π [π] β π£ ((π + π)πout ) as before. From (13), we get the following. β β π¦π [π] = ππ [π] β(π(π + π) β π) (14)
ββ
π=ββ
{z
( ) π βπ π2π ( π ) πΆπ π
}
( ) Thus, from (20), ππ ππ2ππ simplifies to the following form. ( ) ππ ππ2ππ = ( ( )) ( β ) π βπ π βπ 1 β π» π2π πΆπ ππ2π( π ) ππ2π(π βπ)π (21) π π π=ββ
Xd ej2Οf
Yd ej2Οf
6
6
1 1 Ο
β 12
-
0 βfBL
(a)
fBL
1 2
f β 21 βΟfBL
-
0
ΟfBL
f
1 2
(b)
Fig. 4. Illustration of generalized alias-free decimation via variable SRC: (a) input spectrum before SRC and (b) output spectrum after SRC.
Here, π(π‘) β βeο¬ (π‘) β Λ βeο¬ (π‘) is the kernel difference signal. As (26) is of the same form as (15), we can use (22) to say, ( ) Ξ ππ2ππ = ( ( )) ( β ) π βπ 1 β π βπ π· π2π ππ ππ2π( π ) ππ2π(π βπ)π (27) π π π=ββ ( π2ππ ) Here, Ξ π and π·(π2ππΉ ) denote the Fourier transforms of πΎ[π] and π(π‘), respectively. Returning to (25), from Parsevalβs theorem [7], π satisfies, ] [β« 1 2 ( ) π2ππ 2 Ξ π ππ (28) π = πΈπ
Using (6) and (10) in (21) yields a spectral representation of the variable SRC output from (15) as follows. β 12 ( ) ππ ππ2ππ = Using (27) in (28), we get, after some algebraic manipulation, ( ( )) ( β ) π βπ 1 β ( ( )) ( π2π ( π βπ β β β« 1 π2π(π βπ)π ) ) π 2 π»eο¬ π2π ππ π π (22) π βπ 1 β β π βπ π π π = π· π2π ππ ππ2π( π ) π=ββ 2 1 π π π=ββ β=ββ β 2 A. Relation to Decimation ( ( )) ]} ){ [ ( π ββ π2π ( π ββ βπ2π(πββ)π β β π ) ππ πΈ π π Γπ· π2π π Suppose π = 0 and βeο¬ (π‘) = sinc (π‘). Furthermore, suppose π π ( ) π π₯π [π] is bandlimited to π = ππ΅πΏ , meaning ππ ππ2ππ [ = 0 for (29) ) β£π β£ β₯ ππ΅πΏ for some ππ΅πΏ with 0 β€ ππ΅πΏ < 21 and π β β 12 , 12 . As π βΌ π° [0, 1), it can be easily shown that we have, 1 [ ] If ππ΅πΏ < 2π , where we assume π β₯ 1 here, then from (22), βπ2π(πββ)π πΈ π = πΏ[π β β] (30) π [ ) ( π2ππ ) 1 ( π ( 2ππ ) ) 1 1 π , πβ β , ππ π = ππ π (23) Substituting (30) into (29) yields the following simplifications. π 2 2 ( )) ( β β« 1 ( ) 2 ( π2ππ ) 2 1 β π βπ π2π ( π βπ Thus, π π is a scaled and zoomed in version of π ) π π = π· π2π π π ( ) π ππ 1 π2 π ππ ππ2ππ , where the zoom magnification factor is the input π=ββ β 2 1 βπ rate conversion ratio π. Note that (23) is a generalization β β« 2 β π ( ) 2 1 2 of alias-free decimation [6] for both rational and irrational = β£π·(π2ππ)β£ ππ ππ2ππ ππ (31) β 1 βπ 2 π conversion ratios. An illustration of this is shown in Fig. 4. π π=ββ Another relation to decimation arises when we set π = 0, π+ 1 β« 2 β π ( ) 2 take βeο¬ (π‘) = sinc (π‘), and choose π = π , where π is any 1 β 2 β£π·(π2ππ)β£ ππ ππ2ππ ππ (32) = 1 πβ positive integer. Using the division 2 π π=ββ β π β theorem [6] to set π = π β« β π π + π in (22) (where π = π and π = π mod π ) yields, ( ) 2 1 2 (33) = β£π·(π2ππ)β£ ππ ππ2ππ ππ π β1 ) ( β π ββ ( π2ππ ) βπ 1 π2π ( ππ ) (24) ππ π = ππ π π π=0 Here, (31) follows from the substitution π = π βπ π , (32) from the summation index π = βπ, and (33) from the fact that the Note that (24) is the spectrum obtained by decimating π₯π [π] integration intervals in (32) are nonoverlapping and span β. by π [6]. Hence, variable SRC becomes integer decimation To simplify π further, note that from (33), we have, through proper choice of the kernel and conversion parameters. β β« β+ 1 2 ( ) 2 1 β 2 β£π·(π2ππ)β£ ππ ππ2ππ ππ (34) V. I NTERPOLATION E RROR A NALYSIS FOR VARIABLE SRC π = 1 π β=ββ ββ 2 To gauge the difference between using any two kernels, we β β« 1 ( ) 2 2 1 β focus on the mean-squared interpolation error π defined as, 2 = β£π·(π2π(π + β))β£ ππ ππ2π(π +β) ππ (35) [ β ] 1 π β β=ββ β 2 2 π β πΈπ β£πΎ[π]β£ , where πΎ[π] β π¦π [π] β π¦Λπ [π] (25) Here, (34) follows from partitioning the integration interval of π=ββ (33), while (35) follows from the substitution π = π β β. Here, π¦π [π] and π¦Λπ [π] are SRC outputs as in (15) using the Continuing further, we have the following simplified forsame input π₯π [π] but different kernels (βeο¬ (π‘) and Λ βeο¬ (π‘), re- mula for the mean-squared interpolation error π. ) spectively). The expectation in (25) is over the offset π, which β« 12 ( β β ( ) 2 1 2 is assumed to be uniform [11] over [0, 1) (i.e., π βΌ π° [0, 1)). π= β£π·(π2π(π β π))β£ ππ ππ2ππ ππ π β 12 From (15), the error sequence πΎ[π] can be expressed as, π=ββ (36) β β Here, (36) follows from the change of summation index π= πΎ[π] = π₯π [π] π(π(π + π) β π) (26) ( π2ππ ) ββ and the fact that π π is periodic with period 1. π π=ββ
0
0
β50
β50
β100
ΞΎ (dB)
ΞΎ (dB)
β100
β150
β150
β200 β200 β250
nearest neighbor linear cubic Lagrange cubic B-spline
β250
β300 β3 10
β2
10
β1
10
R
0
10
Fig. 5. Normalized mean-squared interpolation error π as a function of the output rate conversion factor β for the input of (39).
VI. S IMULATION R ESULTS For simulation purposes, we will opt to compute the normalized mean-squared interpolation error π defined below. [β ] β 2 πΈπ β£π¦ [π] β π¦ Λ [π]β£ π π π=ββ [β ] πβ (37) β 2 πΈπ β£π¦ [π]β£ π π=ββ Here, the kernel βeο¬ (π‘) for π¦π [π] is the sinc function (i.e., βeο¬ (π‘) = sinc (π‘)) and Λ βeο¬ (π‘) for π¦Λπ [π] is some other kernel. From (36), (37) has the following simplified form. ) β« 12 ( β β 2 ( π2ππ ) 2 π΄ π ππ (38) β£π·(π2π(π β π))β£ π= β 12
nearest neighbor linear cubic Lagrange cubic B-spline
β300
π=ββ
( ) ( ) Here, π΄ ππ2ππ is a normalized form of ππ ππ2ππ satisfying / ( π2ππ ) 2 ( ) β« 21 ( π2ππ ) 2 π΄ π = ππ ππ2ππ 2 ππ. 1 ππ π β2
To test the interpolation error extremal case, in the (in an ) 2 spirit of Fig. 4, suppose that ππ ππ2ππ is given by, { [ ) 1 π , β£π β£ < 2π ( π2ππ ) 2 1 1 ππ π = , πβ β , (39) 1 2 2 0 , β£π β£ β₯ 2π Variable SRC in this case corresponds to maximal decimation [6], as there will be no redundancy present in the output signal. A plot of π from (38) for the input of (39) is shown in Fig. 5 as a function of the output conversion factor β = π1 for various kernels. For all methods, as β increased, π increased as well. This is because for larger β, the input samples appear less redundant, and so any given method is more likely to yield output samples that are less consistent with the underlying sinc interpolant. Another observation is that for a fixed β, higher order methods always outperformed lower order ones. To test the error in a more practical scenario, suppose the input to the system of Fig. 1 is a data stream with a squareroot pulse[ shape) [2]. Then, the spectral density (raised-cosine ) ππ ππ2ππ 2 for π β β 1 , 1 is a raised-cosine pulse with, 2 2 ( π2ππ ) 2 ππ π = β§ πΎπ , β£π β£ < 1βπΌ  2πΎπ  β¨ ( [ ( )]) 1βπΌ 1βπΌ 1+πΌ 2 ππΎπ , 2πΎπ β€ β£π β£ < 2πΎπ πΎπ cos 2πΌ β£π β£ β 2πΎπ   β© 1+πΌ 0, β£π β£ β₯ 2πΎπ (40)
β350 β3 10
β2
10
β1
R
10
0
10
Fig. 6. Normalized mean-squared interpolation error π as a function of the output rate conversion factor β for the input of (40) with πΎ = 4 and πΌ = 0.35.
Here, πΎ is the redundancy factor for the tracking loops of Fig. 1, while πΌ is the roll-off factor for the raised-cosine pulse [11]. As a practical case, suppose πΎ = 4 and πΌ = 0.35 [2]. Then, a plot of π versus β for the input of (40) is shown in Fig. 6 for various kernels. As with Fig. 5, when β increased, π increased as well. Also, higher order methods outperformed lower order ones for a fixed β. Comparing Fig. 6 with Fig. 5, the error was lower for the input of (40) than for that of (39). This is because SRC for (40) corresponds to non-maximal decimation due to the extra redundancy required by the tracking loops. VII. C ONCLUDING R EMARKS In this paper, we derived frequency domain expressions for the variable SRC output and the mean-squared interpolation error. Simulations provided revealed the degradation effects of using a practical interpolation kernel as opposed to the underlying sinc function. Extensions of this analysis to more general interpolation models are the subjects of future research. R EFERENCES [1] J. Hamkins and M. K. Simon, Eds., Autonomous Software-Defined Radio Receivers for Deep Space Applications. Hoboken, NJ: John Wiley & Sons, Inc., 2006. [2] A. Tkacenko, βVariable sample rate conversion techniques for the Advanced Receiver,β Interplanetary Network (IPN) Progress Report, vol. 42-168, pp. 1β33, Feb. 15, 2007. [3] T. A. Ramstad, βDigital methods for conversion between arbitrary sampling frequencies,β IEEE Trans. Acoust., Speech, Signal Process., vol. ASSP-32, no. 3, pp. 577β591, Jun. 1984. [4] F. M. Gardner, βInterpolation in digital modems - Part I: Fundamentals,β IEEE Trans. Commun., vol. 41, no. 3, pp. 501β507, Mar. 1993. [5] L. Erup, F. M. Gardner, and R. A. Harris, βInterpolation in digital modems - Part II: Implementation and performance,β IEEE Trans. Commun., vol. 41, no. 6, pp. 998β1008, Jun. 1993. [6] P. P. Vaidyanathan, Multirate Systems and Filter Banks. Englewood Cliffs, NJ: Prentice Hall PTR, 1993. [7] A. V. Oppenheim, R. W. Schafer, and J. R. Buck, Discrete-Time Signal Processing, 2nd ed. Upper Saddle River, NJ: Prentice-Hall, Inc., 1999. [8] P. ThΒ΄evenaz, T. Blu, and M. Unser, βInterpolation revisited,β IEEE Trans. Med. Imag., vol. 19, no. 7, pp. 739β758, Jul. 2000. [9] M. Unser, A. Aldroubi, and M. Eden, βFast π΅-spline transforms for continuous image representation and interpolation,β IEEE Trans. Pattern Anal. Mach. Intell., vol. 13, no. 3, pp. 277β285, Mar. 1991. [10] C. W. Farrow, βA continuously variable digital delay element,β in Proc. IEEE International Symposium on Circuits and Systems (ISCAS 1988), Espoo, Finland, Jun. 6β9, 1988, pp. 2641β2645. [11] M. K. Simon, S. M. Hinedi, and W. C. Lindsey, Digital Communications Techniques: Signal Design and Detection. Upper Saddle River, NJ: Prentice Hall PTR, 1994.