## 11.3 Multistage *CIC*

We now address the problem that the boxcar filter or its surrogate, the *CIC* filter, is really not a good filter. We improve performance of the boxcar by forming a filter as a cascade of multiple boxcar
filters. It is common to use 3-to-5 cascade stages with many applications using 3 or 4 stages. We can examine the impulse
response of a multiple-stage boxcar to gain insight into how a set of identical relatively poor performing filters work together
to become a pretty good filter. The transfer function for a K-stage boxcar filter is shown in (11.15), and the corresponding frequency response is shown in (11.16). The two parameters that define this filter are M, the length of each sub filter, and K, the number of filters in the cascade.

For ease of understanding, we examine a specific cascade filter. The form of a 4-stage cascade is shown in Figure 11.8. Here we see that the transfer functions from the input to the output of successive filter stages are increasing integer
powers of the first stage transfer function (1−Z^{−}^{M})/(1−Z^{−}^{1}).

**Figure 11.8 Cascade of Four Length-M Boxcar Filters**

Figure 11.9 presents the impulse response observed at the outputs of the four successive length-10 boxcar filters. For ease of comparison, each response has been normalized to unity peak amplitude. As expected, the successive outputs are a rectangle, a triangle formed by convolving two rectangles, a piecewise quadratic formed by convolving three rectangles, and a piecewise cubic formed by convolving four rectangles. These are successively smoother sequences and are expected to exhibit successively lower side-lobe levels. Figure 11.10 presents the frequency responses of the impulse responses shown in Figure 11.8. Here too, the spectra have been normalized for unity gain. The most obvious feature of these spectra is the reduction in maximum side-lobe level as well as rate of side-lobe attenuation in successive filters. The maximum side-lobe level of the first filter is –13-dB, and since the spectra of successive filters are multiples of the first spectrum, the level of the maximum side-lobe in the successive filters is multiples of –13-dB. The second, and more important, feature of these spectra can be seen in Figure 11.11, which presents the main lobe response and a detailed look at the spectra at the first zero crossing. Here we see the effect of the repeated zeros on the ability of the filter to suppress spectra centered at normalized frequency 1/10 or 1/M for the general case. We noted the additional rejection capabilities of the higher order spectral zeros in our discussion of arbitrary interpolators.

**Figure 11.9 Scaled Impulse Responses of Four-stage, Length-10 Boxcar Filter**

**Figure 11.10 Scaled Frequency Responses of Four-stage, Length-10 Boxcar Filter**

**Figure 11.11 Zoom to Zero of Frequency Responses of Four-stage, Length-10 Boxcar Filter**

Figure 11.12 shows how the *CIC* filter with two, three, and four stages is able to suppress spectral copies of a baseband signal, originally oversampled
4-to-1, that has been up sampled again by 1-to-10 zero packing. We can easily see that the higher order filter with higher
order zeros at the spectral copies are better able to suppress the undesired spectral copies.

**Figure 11.12 Spectral Replica Suppression by Two-, Three-, and Four-stage CIC Filter**

An effect we observe in Figure 11.10 and hint at in Figure 11.11 is the frequency dependent gain reduction of the filter's main lobe response. This nonuniform pass-band gain will distort
a baseband spectrum being processed by this filter. The main lobe gain reduction usually limits the input signal bandwidth
to be less than 25% of the main lobe width. For this example, input bandwidth would be less than 0.025 or 1/4 of 1/10, the
1/10 being the main lobe width of the 10-tap boxcar filter. The spectral distortion due to the main lobe is corrected by embedding
the inverse response in a *FIR* filter preceding or following the *CIC*. Additional comment on the correction process is postponed until we examine a system using the *CIC* with an embedded resampling operation.