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.

528 Chapter 9 SAMPLING RATE CONVERSION<br />

we select the length of the FIR filter {h(n)} to a multiple of I (i.e.,<br />

M = KI). As a consequence, the set of coefficients {g(n, m)} for each<br />

m =0, 1, 2,...,I− 1, contains K elements. Since g(n, m) isalso periodic<br />

with period I, asdemonstrated in (9.44), it follows that the output y(m)<br />

can be expressed as<br />

y(m) =<br />

K−1<br />

∑<br />

n=0<br />

( ⌊ m<br />

⌋ )<br />

g n, m − I x<br />

I<br />

(⌊ mD<br />

I<br />

⌋ )<br />

− n<br />

(9.69)<br />

Conceptually, we can think of performing the computations specified<br />

by (9.69) by processing blocks of data of length K by aset of K filter<br />

coefficients g(n, m −⌊m/I⌋ I),n =0, 1,...,K − 1. There are I such sets<br />

of coefficients, one set for each block of I output points of y(m). For each<br />

block of I output points, there is a corresponding block of D input points<br />

of x(n) that enter in the computation.<br />

The block processing algorithm for computing (9.69) can be visualized<br />

as illustrated in Figure 9.39. A block of D input samples is buffered<br />

and shifted into a second buffer of length K, one sample at a time. The<br />

shifting from the input buffer to the second buffer occurs at a rate of<br />

one sample each time the quantity ⌊mD/I⌋ increases by one. For each<br />

output sample y(l), the samples from the second buffer are multiplied by<br />

the corresponding set of filter coefficients g(n, l) for n =0, 1,...,K − 1,<br />

and the K products are accumulated to give y(l), for l =0, 1,...,I − 1.<br />

x(n)<br />

Coefficient Storage<br />

Input<br />

Buffer of<br />

Length D<br />

g(n, 0); 0 ≤ n ≤ K −1<br />

g(n, 1); 0 ≤ n ≤ K −1<br />

Buffer<br />

of<br />

Length<br />

K<br />

1<br />

2<br />

3<br />

K<br />

K − 1<br />

Σ<br />

n = 0<br />

g(n, I − 1); 0 ≤ n ≤ K −1<br />

FIGURE 9.39<br />

processing<br />

Output<br />

Buffer of<br />

Length I<br />

y(m)<br />

Rate:<br />

Efficient implementation of sampling rate conversion by block<br />

I<br />

D<br />

F x<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!