02.10.2019 Views

UploadFile_6417

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

496 Chapter 9 SAMPLING RATE CONVERSION<br />

where h(k) isthe impulse response of the time-invariant lowpass filter<br />

operating at the sampling rate IF x . We further observe that for any<br />

integer k,<br />

g(n, m + kI) =h[nI +((mD + kDI)) I ]=h[nI +((mD)) I ]<br />

= g(n, m) (9.44)<br />

Hence g(n, m) isperiodic in the variable m with period I.<br />

Regarding the computational complexity of the lowpass filter in the<br />

general resampler, we note that it has a nonzero input only every I samples<br />

and the output is required only every D samples. If we use an FIR implementation<br />

for this lowpass filter, we need only compute its output one<br />

out of every D samples. However, if we instead use IIR implementation,<br />

we would generally have to compute intermediate outputs also because<br />

of the recursive nature of the filter. However, both types of filter benefit<br />

from the computational savings due to their sparse input.<br />

The frequency-domain representation of the resampled signal<br />

y(m) The frequency-domain relationships can be obtained by combining<br />

the results of the interpolation and decimation process. Thus, the<br />

spectrum at the output of the linear filter with impulse response h(k) is<br />

V (ω v )=H(ω v )X(ω v I)<br />

{<br />

IX(ωv I), 0 ≤|ω v |≤min(π/D, π/I)<br />

=<br />

0, otherwise<br />

(9.45)<br />

The spectrum of the output sequence y(m), obtained by decimating the<br />

sequence v(n) byafactor of D, is<br />

Y (ω y )= 1 D<br />

D−1<br />

∑<br />

k=0<br />

( )<br />

ωy − 2πk<br />

V<br />

D<br />

(9.46)<br />

where ω y = Dω v . Since the linear filter prevents aliasing as implied by<br />

(9.45), the spectrum of the output sequence given by (9.46) reduces to<br />

⎧<br />

I<br />

(<br />

⎪⎨<br />

Y (ω y )=<br />

D X ωy<br />

)<br />

, 0 ≤|ω y |≤min ( )<br />

π, πD<br />

D<br />

I<br />

(9.47)<br />

⎪⎩<br />

0, otherwise<br />

MATLAB Implementation MATLAB provides the function [y,h]<br />

= resample(x,I,D) that resamples the signal in array x at I/D times<br />

the original sampling rate. The resulting resampled array y is I/D times<br />

longer (or the ceiling of it if the ratio is not an integer)—i.e., length(y) =<br />

ceil(I/D)*length(x). The function approximates the anti-aliasing (lowpass)<br />

filter given in (9.36) by an FIR filter, h, designed (internally) using<br />

the Kaiser window. It also compensates for the filter’s delay.<br />

Copyright 2010 Cengage Learning. All Rights Reserved. May not be copied, scanned, or duplicated, in whole or in part. Due to electronic rights, some third party content may be suppressed from the eBook and/or eChapter(s).<br />

Editorial review has deemed that any suppressed content does not materially affect the overall learning experience. Cengage Learning reserves the right to remove additional content at any time if subsequent rights restrictions require it.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!