ARTICLE IN PRESS
Signal Processing 85 (2005) 1211–1224 www.elsevier.com/locate/sigpro
Decimation by non-integer factor in multistandard radio receivers$ Djordje Babic, Markku Renfors Institute of Communications Engineering, Tampere University of Technology, P.O. Box 553, FIN-33101, Tampere, Finland Received 11 August 2003; received in revised form 8 December 2004
Abstract In many applications it is required to have a system for non-integer sampling rate conversion (SRC), which supports any decimation factor, and provides enough attenuation for aliasing and imaging signal components. A good example case is a software radio receiver, where the ratio of sampling rate just after A/D converter and symbol rate for a supported standard may be a ratio of two large mutually prime numbers. In a digital mobile receiver, it is very important to reduce the power consumption. The power consumption in context of SRC can be reduced by designing a system that has low rate of multiplication and addition operations. This paper introduces a novel non-integer decimation method. The proposed structure is a combination of an FIR filter and a polynomial-based interpolation filter. For the special case based on a cascaded integrator-comb (CIC) filter and simple polynomial-based interpolation filter, the proposed combination has a very efficient implementation structure. The results shown in this paper indicate that the computational complexity and multiplication rate can be reduced compared to the earlier solutions. r 2005 Elsevier B.V. All rights reserved. Keywords: Sampling rate conversion; Fractional decimation; CIC filter; Polynomial-based interpolation filters; Farrow structure; Cascaded filter structures
$
This work was carried out in the project ‘‘Advanced Signal Processing Techniques for Future Wireless Communications Transceivers’’ funded by the Academy of Finland. It was also supported by Tampere Graduate School in Information Science and Technology, and NOKIA foundation. Some parts of the material in this paper were presented at the 2001 International Conference on Acoustics, Speech and Signal Processing, Salt Lake City, USA, May 2001 and the Second Karlsruhe Workshop on Software Radios, Germany, March 2002. Corresponding author. Tel.: +35 833 1153 910; fax: +35 833 1153 808. E-mail addresses:
[email protected] (D. Babic), markku.renfors@tut.fi (M. Renfors).
1. Introduction The software radio concept introduces several critical radio functionalities. Sampling rate reduction (decimation) from a high ADC sampling rate to a small multiple of the symbol rate is a key functionality in a digital radio receiver. The standards to be supported by a software radio platform are often based on incommensurate
0165-1684/$ - see front matter r 2005 Elsevier B.V. All rights reserved. doi:10.1016/j.sigpro.2004.12.008
ARTICLE IN PRESS 1212
D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
Nomenclature f m ðn; T; tÞ basis functions for polynomial-based interpolation filters cm ðnÞ polynomial coefficients for polynomialbased interpolation filters N length of the polynomial-based interpolation filters M order of the polynomial-based interpolation filters ml fractional interval clock/symbol rates. This makes the sample rate adaptation and decimation a critical functionality in multistandard radio design [1,2]. The sampling rate conversion (SRC) can be seen as a process of resampling, thus in spectral domain repetitions of the input signal spectrum are expected. If the original signal is not band-limited, the different spectral replicas will overlap after downsampling. This overlapping in the spectral domain, known as aliasing, sometimes changes the signal irreversibly. Similarly, after interpolation (upsampling) the spectrum repeats itself at the multiples of the sampling rate. These are called image spectra, and the phenomenon itself imaging [3]. These two phenomena must be avoided by the SRC system in order to preserve the signal content. There are many methods that try to solve the problem of the non-integer SRC in an efficient way [2–12]. However, so far there is no universal solution that would be suitable for all applications. The efficiency of the methods depends on the specific application at hand. However, recently it has been shown that the polynomial-based filters are a natural choice for the SRC between arbitrary rates [9–12]. It has been shown that a cascade of a conventional digital filter and polynomial-based filter can be very efficient. These facts constitute the foundations for the concept developed in this paper. The multistandard radio concept introduces the following requirements for the decimation system:
The decimation factor R can be a ratio of two large mutually prime numbers, or even an
Rint
integer part of the overall decimation factor R decimal part of the overall decimation factor R xk ðmÞ mth output sample of the kth parallel filter branch B number of additional parallel branches SP=C multiplication rate N c ; M c parameters of the modified comb filter K length of FIR filter
irrational number. In general, the SRC factor is a non-integer number represented by R¼
F in ¼ Rint þ , F out
(1)
where F in ¼ 1=T in and F out ¼ 1=T out are the input and output sampling frequencies, whereas Rint is the integer part and 2 ½0; 1Þ is the decimal part of the overall decimation factor. The multirate filter chain has to have good antialiasing and anti-imaging properties. The overall structure should be simple and efficient. The power consumption should be kept at low level.
This paper presents a specific power efficient method for decimation by an arbitrary decimation factor. This concept has been developed for the first stage of the decimation chain of a multistandard radio receiver. Here, we generalize the fractional decimator structure presented in [6] and further examined in [8]. The structures presented here are cascades of fixed conventional finite-impulse response (FIR) filter and simple polynomial-based filter. The key point is to move the polynomial-based filter after the FIR decimator while keeping the frequency response and filtering performance of the overall structure at the same level. The paper is organized as follows. In Section 2, the fundamentals of generic polynomial-based filters are revisited, with brief overview of the most common implementation structures. Here,
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
we also consider cascaded structures for sampling rate conversion (SRC), based on the combination of a fixed FIR filter and a polynomial-based filter. The novel non-integer decimation method is presented in Section 3. The novel structure, which is the main contribution of this paper, consists of a fixed FIR filter and polynomial-based filter that works at low output sampling rate. Cascaded integrator-comb (CIC) filters and modified comb filters are considered as special efficient building blocks. The implementation aspects of the novel structure are described in Section 4. In Section 5, we show the performance and advantages of the proposed method by means of illustrative examples. Finally, we draw some conclusions in Section 6.
2. Polynomial-based interpolation filters If the decimation factor or the interpolation factor R is an integer or a ratio of two small relatively prime integers, then the SRC can be performed conveniently with the aid of fixed digital filters [3]. If these factors are irrational, then fixed digital filters cannot be directly used. Furthermore, if these factors are ratios of two large relatively prime integers, then the required filter orders become very large. In these cases, an efficient overall implementation can be achieved by mimicking directly in digital domain a continuous-time impulse response ha ðtÞ having the following properties [10,11,14]. First, ha ðtÞ can be non-zero only in the interval 0ptoNT with N being an even integer. Second, in each subinterval nTptoðn þ 1ÞT; for n ¼ 0; 1; . . . ; N 2; ha ðtÞ is expressible as a polynomial of the given low-order M [11,14]: ha ðtÞ ¼
N 1 X M X
cm ðnÞf m ðn; T; tÞ,
(2)
n¼0 m¼0
where the basis functions f m ðn; T; tÞ are given by f m ðn; T; tÞ 8 m > < 2ðt nTÞ 1 T ¼ > : 0
for nTptoðn þ 1ÞT; otherwise
ð3Þ
1213
and the cm ðnÞ’s are the filter coefficients being related to each other as ( for m even; cm ðnÞ cm ðN 1 nÞ ¼ (4) cm ðnÞ for m odd for n ¼ 0; 1; . . . ; N 1: The third property requires that ha ðtÞ is symmetric around t ¼ NT=2 to guarantee the phase linearity of the resulting overall system. The length of polynomial segments T can be selected to be equal to the input or output sampling interval, a fraction of the input or output sampling interval, or an integer multiple of the input or output sampling interval. The advantage of mimicking the above continuous-time system by a discrete-time structure lies in the fact that the actual implementation can be efficiently performed by using the Farrow structure [13] or its modifications [9–12]. Depending on the selection of T, the length of polynomial segment, the resulting structures can be categorized into three main classes [11]. For the first class, T is equal either to the input or to the output time period, resulting in the modified and transposed modified Farrow structure for interpolation and decimation, respectively (see Fig. 1). For the second class, T is a fraction of the sampling period. The resulting structures are the cascade of a fixed linear-phase FIR interpolator and a modified Farrow structure and the cascade of a transposed modified Farrow structure and a fixed linear-phase FIR decimator, explained in the next section. Finally, the structures belonging to the third class differ from those in the first class in the sense that T is an integer multiple of the input or output sampling period, resulting in the socalled prolonged versions. The main advantage of the Farrow structure is due to the fact that it consists of ðM þ 1Þ fixed FIR filters of length N and there is only one changeable parameter, the so-called fractional interval m (see Fig. 1). Besides this, the control of m is easier during the operation than in the corresponding coefficient memory implementations [14], and the resolution of m is limited only by the precision of arithmetic and not by the size of the memory. These characteristics of the Farrow structure make it a very attractive structure to be implemented
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
1214
x(n) (a) Fin
x(n) (b) Fin
−
−
(a) 2µ
−
RintFin
FIR filter
Farrow RintFin structure
Transposed Farrow RintFout FIR filter RintFout
y(l) F out
y(l) Rint
Fout
Fig. 2. (a) Linear-phase FIR interpolation filter in cascade with modified Farrow structure for interpolation. (b) Transposed Farrow structure in cascade with a linear-phase FIR decimation filter for decimation.
−1
2µ − 1
(b)
Rint
−
−
−
Fig. 1. (a) Modified Farrow structure for interpolation. (b) Transposed modified Farrow structure for decimation.
using a VLSI circuit or a signal processor [14]. For any modification of the Farrow structure, the number of multipliers with fixed coefficients is the same ðM þ 1ÞN=2: Additionally, the so called m-multipliers are also needed. In general, the number of m-multipliers is M. In many applications, these m-multipliers may be very simple requiring only a few bits [17]. It has been shown that in the case of SRC between arbitrary rates, it is very efficient to use cascade of an FIR filter and a polynomial-based interpolation filter [10,11]. The structure of [10], shown in Fig. 2(a), used for interpolation, consists of a linear-phase FIR interpolator and a polynomial-based structure. The polynomial-based
filter in this case is operating at the high rate LF in : The structure used for decimation, shown in Fig. 2(b) is dual to the previous one [11]. Thus, it consists of transposed polynomial-based filter operating at high input sampling rate, followed by linear-phase FIR decimator. The decimation can also be performed by using a cascade of polynomial-based filter for interpolation and linear-phase FIR decimator. In this case, the sampling rate is first increased to a convenient integer multiple of the desired output sampling rate. It should be pointed out that the polynomialbased interpolation filter structure of Fig. 2(a) can be also used for downsampling. However, in that case the required order and filter length is rather high, which tends to lead to high complexity. The general cascaded structure for SRC that has polynomial-based filter operating at the higher sampling rate (input rate in decimation case, and output rate in interpolation case) has its main advantage in the following fact. The filtering requirements for the polynomial-based filter are milder if it is placed at higher frequency. In practice this means that the fixed FIR filter takes care of passband and stopband while the polynomial-based filter attenuates the repeated images of the FIR filter. In this way, the required polynomial-based filter is very simple, in many cases the linear interpolator is enough. This is a very good characteristic because the implementation of the Farrow structure is more expensive compared to the fixed FIR filter [13]. This is due to the high number of multipliers used in the Farrow structure. The main disadvantage of the general cascaded structure is in the fact that the polynomial-based
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
filter is working at the high sampling rate. The polynomial-based filter performs SRC for factor in range (0.5, 2), thus it does not change the magnitude of sampling rate. However, the multipliers of the polynomial-based filter operate all the time at the high sampling rate. This fact leads to exploring the possibility of further reduction of the multiplication rate. This contribution examines the idea of moving the polynomial-based filter after the FIR decimator.
3. Proposed method for decimation This chapter presents a novel approach to the fractional SRC. The concept of Babic et al. [6,8] is here generalized to the combinations of any FIR filter and polynomial-based interpolator. 3.1. Overall structure Fig. 3 illustrates a generic model of the proposed structure for the decimation filter. The input signal xðnÞ is divided into its filtered and down-sampled polyphase components xk ðmÞ; for k ¼ 0; 1; . . . ; Rint 1; by using delay line and parallel identical copies of a FIR filter. Therefore, the sampling rate at the output of the FIR filters is F in =Rint : The final decimation by ð1 þ =Rint Þ is done using Decimation by Rint x(n)
FIR FILTER
Fin
Rint
x Rint −1 (m)
z −1 Decimation by 1+ε /Rint Shift by one
z
FIR FILTER
Rint
FIR FILTER
Rint
x1 (m)
−1
x0 (m)
POLYNOMIAL y(l) -BASED Fout FILTER
µl
Fig. 3. Model of proposed decimation filter. Parallel connection of Rint FIR filters are used for integer decimation by Rint : Decimation by 1 þ =Rint is done using interpolation between the outputs of N consecutive filter branches, where N is the length of polynomial-based filter.
1215
polynomial-based interpolation between N signals xk ðmÞ; xk 1 ðmÞ; . . . ; xk N ðmÞ; where denotes the modulo Rint summation, N is the length of the polynomial-based filter, and k is an index to be discussed below. Every now and then during operation, the place of interpolation block in Fig. 3 is shifted by one branch according to a certain condition. Because of the modulus Rint summation mentioned above, the next signal block for interpolation after ½xRint N ðmÞ; xRint 1 ðmÞ is ½xRint Nþ1 ðmÞ; x0 ðmÞ : We refer to this operation as incrementing the sampling phase of the interpolator. The fractional interval ml is recalculated for each output sample yðlÞ for l ¼ 0; 1; 2; . . . . The condition for incrementing the sampling phase can be determined by using the fractional interval. As can be seen from the example case of Fig. 4(b), the value of the fractional interval ml is increased until l ¼ 3 and the next value m4 is less than m3 : This is the point where the sampling phase needs to be incremented and, therefore, the condition can be stated as follows if ml oml1 then increment the sampling phase of the interpolator. (5) The time interval between samples xk ðmÞ and xk 1 ðmÞ equals to T in and, thus, the interpolation is effectively done at the high-input sampling frequency F in : (In typical cases, the decimation factor is high, e.g., tens or even hundreds.) This means better image attenuation. However, the polynomial-based filter does not work all the time, it is in operation according to timing determined by a control logic [6]. In this way, high multiplication rate required to implement cascaded structures of Section 2 is avoided. Therefore, the filtering is virtually performed at the high rate while the computations are done at the low rate. The FIR filters attenuate the disturbing spectral components and noise which would cause aliasing in the SRC. The principle explained above is based on the realization of the parallel replicas of an identical FIR decimator filter, or on the use of the non-decimating FIR filter. Using this principle, the workload can be significantly reduced at the
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
1216
x(n) y(l )
T in
T out
2T out
3Tout
4Tout
= 3.3Tin
= 6.6Tin
= 9.9Tin
= 13.2Tin
0
(a)
x 0(m) x 2(m)
x 1(m)
µ0
µ1
(b) 0
µ2
T out
2Tout
µ3
3Tout
µ4
4T out
Fig. 4. (a) The input and output samples of the proposed decimation filter for R ¼ 3:3; using the linear interpolation filter. (b) The output samples of the two parallel FIR filter branches x0 ðmÞ and x1 ðmÞ: The output samples of the overall structure (black circles) are obtained by linear interpolation between samples x0 ðmÞ and x1 ðmÞ: After the output time instant 3T out ; the linear interpolation is done between the samples x1 ðmÞ and x2 ðmÞ:
expense of somewhat increased complexity of the overall structure.
3.3. Special efficient filter structures based on the presented principle
3.2. Frequency response of the overall structure
The principle presented above is not generally more efficient. The advantages and efficiency depend on several factors: type and length of the FIR decimator filter, type, length, and order of polynomial-based filter, overall decimation factor, etc. This is further examined in the next section. There are some special filter structures whose combination in the presented way gives very efficient fractional decimator structures. This section studies the combination of CIC filters and simple polynomial-based filters. We start by reviewing briefly the CIC structures.
The overall frequency response of the decimation filter structure of Fig. 3 is the product of the frequency responses of the FIR filters of the parallel branches and polynomial-based interpolation filter. Note that the former response is periodic whereas the latter is not. The parallel FIR filters perform the polyphase decomposition of the input signal. The frequency response of this stage is simply the same as the response of one FIR filter. The polynomial interpolation is done between the samples xk ðmÞ; xk 1 ðmÞ; . . . ; xk N ðmÞ having as a mutual distance time interval of T in : Therefore, the polynomial interpolation is done at the higher input rate F in : Consequently, the overall frequency response of the proposed decimation filter is given by H T ðj2pf Þ ¼ H FIR ðej2pf =F in ÞH a ðj2pf Þ.
(6)
3.3.1. Decimation by integer based on CIC decimation filter CIC filters belong to the class of linear-phase FIR filters [15]. They are used for both decimation and interpolation, providing efficient anti-image and anti-alias filtering. Due mainly to the facts that these filters require no multipliers, negligible storage and use a regular structure, CIC filters are considered as a very suitable architecture for
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
polynomial-based filter of length N and order M, see Fig. 7. N parallel branches are used for processing the samples for interpolation and B branches are needed to prepare the state variables of filter branches before they are used in the interpolation.
applications with adjustable sample rates [4], and for single-chip VLSI implementation with high intermediate data rate operations. A CIC decimation filter consists of L cascaded digital integrator stages operating at high input data rate F in ; followed by L cascaded comb or differentiator stages operating at the low sampling rate F in =Rint ; see Fig. 5. Essentially, it is a cascade of L running sum (moving average) filters of length Rint ; with SRC by the factor of Rint combined very efficiently into the structure. Therefore, its transfer function is given by H CIC ¼ H LI ðzÞH LC ðzÞ ¼
ð1 zRint ÞL . ð1 z1 ÞL
3.3.2. Decimation by integer using modified comb filter The main drawback of the CIC structure is in that the filter order L increases fast when required stopband attenuation for the overall decimator is increased. This problem can be overcome by the structure presented by Sarama¨ki and Ritoniemi [16], the so-called modified comb filter structure. In this structure the stopband attenuation is increased by spreading the zero locations through few additional interconnections. This efficient decimator structure is shown in Fig. 6. The optimization procedure that has been derived in [16] can also be applied to this case. The transfer function of the overall structure is given as
(7)
The fractional decimator structure presented in [6] is based on CIC filter and linear interpolation. This structure may be extended to any CIC filter order and any polynomial-based filter. The implementation structure consists of L cascaded integrator stages working at the high input rate, and N þ B parallel comb branches of order L, working at the output lower rate, followed by Fin
H
L I (z )
L H C (z )
R int
EðzÞ ¼ E 1 ðzÞE 2 ðzÞ
Fout
M c Rint Þ 1 ð1 z E 1 ðzÞ ¼ z Rint ð1 z1 Þ
+
(b)
z −1
−
2N c X Nc Rint Þ 1 ð1 z E 2 ðzÞ ¼ z þ ar zrðRint þ1Þ Rint ð1 z1 Þ r¼1
2ðN c rÞ Rint Þ 1 ð1 z z . ð10Þ Rint ð1 z1 Þ
Fig. 5. (a) Cascaded integrator-comb (CIC) decimation filter. Rint is an integer decimation factor and L is the number of cascaded integrator and comb stages. (b) Integrator with the transfer function H LI ðzÞ for L ¼ 1: (c) Comb filter with the transfer function H LC ðzÞ for L ¼ 1:
fs
z −2 H I2 ( z )
...
(9)
and
(c)
z − M c H IM c (z )
(8)
with
(a)
z −1
1217
z −2 H I2 ( z )
H C2 ( z )
z −1
Rint
z −1
z − Nc
Rint
….
…
Rint
z − Nc
Fig. 6. Modified comb filter structure.
H C2 ( z )
H CM c (z )
a1
fs /Rint aN
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
1218
The proposed decimator structure can be further simplified by quantizing the coefficients ar to be integers, possibly powers of two. When ar is a power of two, then shifters are used instead of multipliers. Even though overflows occur in the feedback loops of these structures, as well as in the basic CIC structure, the output is correct provided that modulo arithmetic is used [15]. 3.3.3. Model of the proposed decimator filter based on CIC and modified comb filters The regular structure of CIC and modified comb filter can be exploited in making the proposed fractional decimator more efficient. The integrator stages of CIC or modified comb filter can be shared between parallel comb stages, as shown in Fig. 7. Thus, it is needed only to make N þ B identical parallel replicas of comb stages. After the integer decimation done by CIC or modified comb filter, the final non-integer decimation is done by a polynomial-based filter, as in the generic case.
4. Implementation considerations This part is to show conditions under which the proposed method gives savings in hardware and/or computational complexity. There are two important things which should be known in the filter structure of Fig. 3. Namely, the Decimation by Rint x(n) INTEG.
COMB x
↓Rint STAGES
Fin STAGES
1(m)
z −1 Decimation by 1+ε /R Shift by one
COMB
↓Rint STAGES
x (m)
z −1 COMB
↓Rint STAGES
x (m)
POLYNOMIAL y(l) -BASED Fout FILTER
µ
Fig. 7. Model of proposed decimation filter in the case of CIC or modified comb filter. The integrator stages are shared between parallel connection of Rint comb stages. Decimation by 1 þ =Rint is done using interpolation between the outputs of N consecutive filter branches, where N is the length of polynomialbased filter.
sample indices when the sampling phase of the interpolator is incremented, and what is the value of the fractional interval ml : Answers to these questions can be found by starting from the fractional interval. As an initial condition, we assume yð0Þ ¼ xð0Þ; l ¼ 0 and the fractional interval m0 ¼ 0: Then, the fractional interval equals to the decimal part of the output sample time lT out divided by the input sampling interval T in ; that is lT out lT out ml ¼ ¼ lR blRc ¼ l blc T in T in (11) for l ¼ 0; 1; 2; . . . . The presented fractional decimator structure is based on N þ B parallel replicas of decimating FIR filters in cascade with a polynomial-based filter of length N and order M. The N parallel FIR filters are needed for processing the samples for interpolation filter. However, at any time instant, only some of the outputs of the parallel filters are actually needed. Alternatively, we may consider a structure based on a direct-form FIR filter, implemented in such a way that the output samples are computed only for those sampling phases that are actually needed as input to the interpolation stage. In this approach, some additional functionality is needed to change the contents of the delay lines in a somewhat irregular fashion when incrementing the sampling phase of the interpolator, which does not necessarily involve any additional arithmetic operations. In addition, this approach is not applicable when the FIR filter is implemented as a cascade of multiple stages. However, we prefer efficient fixed FIR filter structures based, e.g., on cascade of simple, multiplier-free, blocks. In these cases, a practical way is to use B additional parallel replicas of the fixed decimating filters for preparing the filter state variables for computing some future samples that are needed after incrementing the sampling phase. B is a function of the overall decimation factor. The number of extra branches depends also on the length of the FIR filter K and the decimal part of the decimation rate : In the following, the conditions for B are derived.
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
Because the overall decimation structure considered here is designed as the first stage in decimation chain of a digital receiver, K is usually rather small, thus we assume that KoRint : In general, if K is the length of the FIR filter, then the output of the related structure depends on the present input sample as well as on the K 1 previous sample values. This fact can be used to formulate the conditions for the implementation. Assuming that k denotes the number of interpolated output samples computed using a certain set of comb branches, k can be expressed as
1 ml k¼ , (12) R Rint where ml is the fractional interval of the interpolator right after incrementing the sampling phase. Here dxe stands for the ceiling function of x, i.e., rounding towards plus infinity. If k is a large number, kbK; then only N branches will be used almost all the time. In the general case, the ðN þ 1Þth branch should be switched on K samples before incrementing the sampling phase to prepare the next sample values. The conclusion is that if kXK it is possible to use only N þ 1 FIR filter branches, and that is also the minimum number of branches. The condition kXK can be expressed in terms of the decimal part of the decimation factor : Using Eq. (1) this condition becomes
1 ml XK. (13) After incrementing, ml is always less than or equal to : For our condition we will take into account the worst case for ml ; that is ml ¼ : Now our condition kXK becomes p
1 . K
(14)
The conditions for the number of additional replicas B are given in Table 1. In the case when X0:5; the so-called negative algorithm is used [7], and B is calculated as in Table 1, using 0 ¼ 1 instead of : In this case, the sampling phase is decremented, based on a similar condition as described above.
1219
Table 1 The number of additional branches B depending on Decimal part of the decimation factor p
1 K
1 1 op K K 1 1 1 op K iþ1 K i 1 1 op 3 2 1 op1 2
Number of additional branch B B¼1 B¼2 B¼iþ1 B¼K 1 B¼K
The overall number of multipliers is the sum of multipliers in the parallel FIR sections, and polynomial-based interpolation filter. In ðN þ BÞ parallel FIR branches there are all together (N þ BÞK=2 multipliers working at F in =Rint (the FIR filters in the parallel branches are realized in the polyphase form). In the polynomial-based filter there are ðM þ 1ÞN=2 þ M multipliers working at F out ¼ F in =R: The overall multiplication rate is then given as ðN þ BÞK F in ðM þ 1ÞN F in þM . SP ¼ þ 2 2 Rint R (15) The overall multiplication rate in the case of cascaded structure of Fig. 2(b) based on transposed Farrow structure used for the same purpose is [11] K F in ðM þ 1ÞN Rint F in SC ¼ þ þ M F in . (16) 2 R 2 R Here, we assume that the requirements are the same for both cases, thus the FIR and polynomialbased filter are practically the same in both cases. This is further discussed in Example 2. The presented structure has an advantage in the case when SP oS C : From the previous equations it is possible to determine when to use the presented structure. In the case when a CIC filter is used as the FIR filter, the savings are significant. This is mainly because the CIC filter does not have any multiplier, and increasing the number of parallel replicas does not cost much. Further, because of
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
the recursive implementation of the CIC filter, the output of the comb stage of CIC filter depends only on L samples, where L is the order of the CIC filter ðN c þ M c in the modified comb filter case). In practice, this means that the structure based on CIC can have higher range of : Results from Table 1 can be applied in this case as well, just instead of the length of FIR filter K, the order of CIC filter L is used ðN c þ M c in modified comb filter case). In the case of CIC and modified combbased implementation, the integrator part which works at high input sampling rate is shared among all the parallel comb stages. Thus, only comb stages are implemented in parallel section. This further simplifies the implementation.
0
Magnitude in dB
1220
−50
−100
−150 0
10
20
30
40
50
60
Frequency relative to Fout Fig. 8. Amplitude responses in aliasing bands for the overall structure in the example case.
5. Design examples This part shows through some examples the advantages and performance of the proposed structure. Example 1, as very illustrative, is taken from [8] with some modifications. Example 1. We start by designing the system for non-integer decimation with relatively mild requirements. This fractional decimator is designed as the first stage in a digital receiver of multistandard radio. In this example, the bandwidth of the input signal is f p ¼ 0:001F in and decimation 1 factor is R ¼ 3434 : It is required that the fractional decimator provides enough attenuation for the frequency region which aliases to the desired baseband: Os ¼
1 [ F out ðr f p Þ; F out ðr þ f p Þ .
(17)
r¼1
The attenuation in these bands should be at least by As ¼ 80 dB; and the passband distortion is less than dp ¼ 0:01 (0.086 dB). These requirements are met by a proposed type of decimation filter having a CIC filter of order N ¼ 3 and a linear interpolation filter. Fig. 8 presents the bands that cause aliasing to the desired band. As can be seen, the minimum attenuation of these bands is 84.4 dB. Because the over-sampling factor is still high after decima-
tion, the worst case passband distortion caused by the proposed filter structure is only 0.06 dB. Fig. 9 shows the minimum attenuation of the aliasing bands in a range of the fractional decimation factor ranging from 32 to 35. The minimum attenuation occurs at the edge of the first aliasing band. As it can be seen from Fig. 9, the minimum attenuation of the aliasing bands depends on the decimal part of the decimation factor : If is close to unity, better attenuation is obtained by expressing R as R ¼ Rint : Table 2 gives the minimum attenuation value for the aliasing bands as function of CIC filter order N, decimal part of the decimation factor ; and bandwidth of the desired input signal f p : The values are realistic, thus Table 2 gives a guidelines for using this decimator structure in practical applications. Example 2. Here, we consider more strict requirements and we compare the proposed method for fractional decimator with cascaded structure for decimation of Fig. 2(b). The requirements for fractional decimator are as follows. The decimap tion factor is R ¼ 15 þ 2: The desired passband edge is f p ¼ 0:1ðF out =2Þ: The required aliasing bands attenuation is at least As ¼ 120 dB: The maximum allowable passband ripple should not exceed Ap ¼ 0:1 in linear scale.
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
Using the structure of Fig. 2(b) the requirements are met by a cascade of modified transposed Farrow structure having length of N ¼ 4 and filter order of M ¼ 3; and modified comb filter having N c ¼ 2; M c ¼ 2; a1 ¼ 8; and a2 ¼ 16: The system is optimized by using results of Babic et al. [11]. The relevant frequency responses are shown in Fig. 10. In the overall structure, there are all-together eight multipliers with fixed coefficients and three so-called m-multipliers. In this case, the fixed coefficient multipliers are working at the rate Rint F out ; while the m-multipliers are −65
ε positive ε negative
Magnitude in dB
−70
−75
−80
−85
−90 32
32.5
33
33.5
34
34.5
35
Decimation rate R Fig. 9. The minimum attenuation of the aliasing bands for positive and negative :
1221
working at the input rate F in ¼ RF out : The addition rate in modified comb stage is ½ð2N c þ M c ÞRint þ ð3N c þ M c Þ F out ¼ 104F out ; with two shift operations at rate F out corresponding to multiplication by ar ’s that are powers of two. The addition rate in modified transposed Farrow filter is ½ðM þ 1ÞR þ NðM þ 1ÞRint F out ¼ 321:66F out : The overall multiplication rate is given by ½Rint ðM þ 1ÞðN=2Þ þ RM F out ¼ 177:24F out : The same requirements are met by the proposed fractional decimator having the modified Farrow structure with N ¼ 4 and M ¼ 3; after the modified comb filter with N c ¼ 2; M c ¼ 2; a1 ¼ 8; and a2 ¼ 16: The relevant frequency response are shown in Fig. 11. One can see that the overall frequency response is practically the same as in previous case. Since the parameters of modified comb filter, length and order of polynomial-based filter are the same, the overall number of multipliers is also the same as in the previous case. However, all multipliers, i.e., the fixed coefficient multipliers and m-multipliers, are working at the output sampling rate. The overall multiplication rate is given by ½ðM þ 1ÞN=2 þ M F out ¼ 11F out : The overall structure requires N þ B ¼ 7 parallel comb stages (based on Table 1 ¼ 0; 41 ) B ¼ 3). The addition rate in comb stage is increased to ½ð2N c þ M c Þ þ ðN þ BÞð3N c þ M c Þ=Rint RF out ¼ 155:94F out ; with additional N c ðN þ BÞ ¼ 14 shift operations at rate ðR=Rint ÞF out : The addition rate
Table 2 The minimum attenuation of the aliasing bands (in DB) Decimal part of the decimation factor
Passband edge, normalized to F in
CIC filter order N ¼1
N ¼2
N ¼3
N ¼4
¼ 0:05
fp fp fp fp
¼ 0:001 ¼ 0:002 ¼ 0:005 ¼ 0:01
28.7 22.6 14.1 7.5
57.4 45.2 28.2 14.9
86.1 67.8 42.3 22.3
114.8 90.4 56.4 29.8
¼ 0:5
fp fp fp fp
¼ 0:001 ¼ 0:002 ¼ 0:005 ¼ 0:01
25.9 21.0 13.4 7.1
51.8 42.1 26.8 14.2
77.7 63.1 40.2 21.3
103.6 84.1 53.6 28.3
These results are given for the integer part of decimation factor Rint ¼ 34:
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
1222 0
mod. CIC Farrow Overall
−20 −40
Magnitude in dB
−60 −80 −100 −120 −140 −160 −180 −200
0
5
10
15
20
25
30
35
40
Frequency in Fout
Fig. 10. Frequency response of the fractional decimator realized as cascade of transposed modified Farrow structure and modified comb filter.
0
mod. CIC Farrow Overall
−20 −40
Magnitude in dB
−60 −80 −100 −120 −140 −160 −180 −200
0
5
10
15
20
25
30
35
40
Frequency in Fout
Fig. 11. Frequency response of the fractional decimator realized as cascade of modified comb filter and modified Farrow structure (novel SRC structure).
ARTICLE IN PRESS D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
in modified Farrow filter is decreased to ½M þ 1 þ NðM þ 1Þ F out ¼ 20F out : Therefore, the overall addition rate is also decreased. As it can be seen from Table 3, the savings in power consumption are significant using the proposed decimator structure at the expense of somewhat increased control logic, and additional
hardware. However, the control logic is relatively simple as it contains comparators and commutators, and it requires neither multipliers nor additions [6]. Using the modified comb filter as basis for the proposed fractional decimator structure, the minimum attenuation of the aliasing bands does not depend on decimal part of the overall decimation factor ; as illustrated in Fig. 12. The stopband requirements considered in this example require CIC filter of order eight, with modified Farrow structure having N ¼ 4 and M ¼ 3: However, passband droop introduced by the proposed structure having CIC filter of order eight and given modified Farrow structure is rather high, approximately 1 dB. The number of required parallel comb branches is also large, for this example case it is 15. This would significantly increase number of additions per output sample, see Table 3. The benefit of using modified comb instead of usual CIC is due to spreading of the zeros of the frequency response of the modified comb filter.
Table 3 Computational rate for structures under consideration Structure
Number of multipliers
Multiplication rate
Addition rate
MTF+MC MC+MF CIC+MF
11 11 11
177.24F out 11F out 11F out
425.66F out 175.94F out 290.83F out
1223
MTF+MC stands for the cascade of the modified transposed Farrow (MTF) structure and modified comb (MC) filter, MC+MF stands for the proposed structure consisting of the MC filter and modified Farrow (MF) structure, and CIC+MF stands for the proposed structure consisting of CIC filter and MF structure from Example 2.
−102
positive ε negtaive ε
−104 −106
Attenuation in dB
−108 −110 −112 −114 −116 −118 −120 −122
16
16.1
16.2
16.3
16.4
16.5
16.6
16.7
16.8
16.9
17
Decimal part ε Fig. 12. Minimum attenuation in aliasing bands as function of decimal part of the overall decimation factor for parameters of Example 2.
ARTICLE IN PRESS 1224
D. Babic, M. Renfors / Signal Processing 85 (2005) 1211–1224
6. Conclusions We have presented a novel structure for decimation by non-integer factors. The proposed decimator is especially suitable as the first stage in the decimation chain of multistandard receivers. It exploits the advantage of placing the non-integer SRC at the beginning of the overall decimation chain. The proposed decimator consists of a CICbased filter and a polynomial-based interpolator running at the lower output sampling rate, thus it has relatively simple structure. It has good antialiasing and anti-imaging properties. The proposed decimator structure is also power efficient, and good solution for the problem of the noninteger decimation in mobile radio receivers. In the future work, we will examine behavior of the developed decimators in various practical cases. The task is to develop joint optimization method which will optimize FIR and polynomial-based filter in the general cascaded decimator structure. We plan also to extend the idea to the interpolation case using principle of duality between interpolators and decimators. References [1] T. Hentschel, G. Fettweis, Software radio receivers, in: F. Swarts, P. van Rooyan, I. Oppermann, M.P. Lo¨tter (Eds.), CDMA Techniques for Third Generation Mobile Systems, Kluwer Academic Publishers, Dordrecht, 1999 (Chapter 10). [2] T. Hentschel, G. Fettweis, Sample rate conversion for software radio, IEEE Commun. Mag. (August 2000) 142–150. [3] R.E. Crochiere, L.R. Rabiner, Multirate Digital Signal Processing, Prentice-Hall, Englewood Cliffs, NJ, 1983. [4] M. Henker, T. Hentschel, G. Fettweis, Time-variant CICfilters for sample-rate conversion with arbitrary rational factors, Proceedings of the IEEE Sixth International Conference on Electrical Circuits and Systems, Paphos, Cyprus, September 1999. [5] L. Lundheim, T.A. Ramstad, An efficient and flexible structure for decimation and sample rate adaptation in software radio receivers, Proceedings of the Fourth ACTS Mobile Communications Summit (AMOS), Sorrento, Italy, 1999.
[6] D. Babic, J. Vesma, M. Renfors, Decimation by irrational factor using CIC filter and linear interpolation, in: Proceedings of the International Conference on Acoustics, Speech and Signal Processing, ICASSP2001, Salt Lake City, USA, May 2001. [7] D. Babic, J. Vesma, M. Renfors, Decimation by non-integer factor using CIC filter and linear interpolation, in: Proceedings of the Finnish Signal Processing Symposium FINSIG 2001, Espoo, Finland, May 2001, pp. 1–4. [8] D. Babic, M. Renfors, Decimation by non-integer factor in multistandard and software radio receivers, FACTA UNIVERSITAS (NIS), Series: Electrical Energy, vol. 16, December 2003, pp. 365–375, reprint from the Second Karlsruhe Workshop on Software Radios, March 2002. [9] T. Hentschel, G. Fettweis, Continuous-time digital filters for sample-rate conversion in reconfigurable radio terminals, Proceedings of the European Wireless, Dresden, Germany, September 2000, pp. 55–59. [10] T. Sarama¨ki, M. Ritoniemi, An efficient approach for conversion between arbitrary sampling frequencies, in: Proceedings of the IEEE International Symposium on Circuits and Systems, Atlanta, Georgia, May 1996, pp. 285–288. [11] D. Babic, T. Sarama¨ki, M. Renfors, Conversion between arbitrary sampling frequencies using polynomial-based interpolation filters, in: Proceedings of the International Workshop on Spectral Methods and Multirate Signal Processing, SMMSP’02, Toulouse, France, September 2002, pp. 57–64. [12] D. Babic, J. Vesma, T. Sarama¨ki, M. Renfors, Implementation of the transposed Farrow structure, IEEE International Symposium on Circuit and Systems ISCAS2002, vol. 4, Phoenix, USA, May 2001, pp. 5–8. [13] C.W. Farrow, A continuously variable digital delay element, Proceedings of the IEEE International Symposium on Circuits and Systems ISCAS’88, Espoo, Finland, 1988, pp. 2641–2645. [14] J. Vesma, Optimization and applications of polynomialbased interpolation filters, Doctoral Thesis, Tampere University of Technology, Publications 254, 1999. [15] E.B. Hogenauer, An economical class of digital filters for decimation and interpolation, IEEE Trans. Acoust. Speech, Signal Processing ASSP-29 (April 1981) 155–162. [16] T. Saramaki, T. Ritoniemi, A modified comb filter structure for decimation, Proceedings of IEEE International Symposium on Circuits and Systems, Hong Kong, June 1997, pp. 2353–2356. [17] J. Vesma, F. Lopez, T. Sarama¨ki, M. Renfors, The effects of quantizing the fractional interval in interpolation filters, Nordic Signal Processing Conference, NORSIG 2000, Kolma˚rden, Sweden, June 2000.