首页 / 专利库 / 信号处理 / 线性滤波器 / 梳状滤波器 / CASCADED INTEGRATOR COMB FILTER WITH ARBITRARY INTEGER DECIMATION VALUE AND SCALING FOR UNITY GAIN

CASCADED INTEGRATOR COMB FILTER WITH ARBITRARY INTEGER DECIMATION VALUE AND SCALING FOR UNITY GAIN

阅读:1016发布:2020-09-08

专利汇可以提供CASCADED INTEGRATOR COMB FILTER WITH ARBITRARY INTEGER DECIMATION VALUE AND SCALING FOR UNITY GAIN专利检索,专利查询,专利分析的服务。并且We disclose a CIC digital filter having an arbitrary-integer decimation rate. The filter has a shifter (110) connected to its input. The shifter (110) receives a shift control input, where the shift control input is pre-computed as equal to the integer portion of 2 raised to the base-2 logarithm of the gain of the CIC filter. There is a multiplier (100) connected between the input and the shifter (110). In other embodiments, the multiplier (100) could be connected between the input and the shifter (110). Sequentially-connected integrator (130) functions are connected to the shifter (110) or multiplier (100); a decimation function receives input from the integrator (130) functions; and sequentially-connected differentiator (150) functions receive input from the decimation function. The decimation function has a selectable rate equal to any integer between 1 and a number equal to the predetermined maximum decimation value. The multiplier (100) is configured to compute the product of each input data sample by a correction factor; the correction factor being pre-computed as equal to the fractional portion of 2 raised to the base-2 logarithm of the gain of the CIC filter, so as to correct the gain of the CIC filter for decimation values not a power of 2.,下面是CASCADED INTEGRATOR COMB FILTER WITH ARBITRARY INTEGER DECIMATION VALUE AND SCALING FOR UNITY GAIN专利的具体信息内容。

We claim:
1 1. A CIC digital filter for filtering input data samples, comprising:
2 at least one integrator function;
3 a decimation function receiving input from the integrator function;
4 at least one differentiator function receiving input from the decimation function;
5 a multiplier connected between the input and the integrator function;
6 a shifter connected to output of the multiplier; and,
7 the multiplier configured to compute the product of each input data sample by a
8 correction factor, so as to correct the gain of the CIC filter for decimation values
9 not a power of 2. 0 1 2. The CIC filter of claim 1, where the correction factor is pre-computed as equal 2 to the fractional portion of 2 raised to the base-2 logarithm of the gain of the CIC filter. 3 4 3. The CIC filter of claim 1, further comprising the shifter receiving a shift control 5 input; the shift control input being pre-computed as equal to the integer portion of 2 6 raised to the base-2 logarithm of the gain of the CIC filter. 7 8 4. The CIC filter of claim 1, comprising four sequentially-connected integrator 9 functions and four sequentially-connected differentiator functions. 0 1 5. The CIC filter of claim 1, where the decimation function operates at any 2 decimation rate from 1 to 131,072. 3 4 6. A CIC digital filter for filtering input data samples; the filter having an input for 5 data samples; the filter comprising: 6 a shifter connected to the input; the shifter receiving a shift control input; the 7 shift control input being pre-computed as equal to the integer portion of 2 raised 8 to the base-2 logarithm of the gain of the CIC filter; 9 a multiplier connected between the input and the shifter; 0 at least four sequentially-connected integrator functions connected to the shifter; 1 a decimation function receiving input from the integrator functions; 2 at least four sequentially-connected differentiator functions receiving input from 3 the decimation function; the decimation function having a selectable rate equal 1 to any integer between 1 and a number equal to the predetermined maximum
2 decimation value; and,
3 the multiplier configured to compute the product of each input data sample by a
4 correction factor; the correction factor being pre-computed as equal to the
5 fractional portion of 2 raised to the base-2 logarithm of the gain of the CIC filter,
6 so as to correct the gain of the CIC filter for decimation values not a power of 2. 7
8 7. A method of implementing a CIC filter having an input, an output, a shifter, a
9 shift control, a multiplier, one or more integrator functions, a decimation function, and
10 one or more differentiator functions, the method comprising:
11 receiving an input stream of data samples;
12 shifting each data sample by a left shift equal to the integer portion of the base-2
13 logarithm of the CIC filter gain;
14 multiplying each so shifted data sample by the fractional portion of the base-2
15 logarithm of the CIC filter gain;
16 integrating the shifted and multiplied data sample at least once;
17 decimating the data sample by a pre-determined decimation rate;
18 differentiating the decimated data sample at least once; and,
19 rounding the differentiated data sample to a pre-determined number of bits
20 before outputting the data sample. 21
22 8. The method of claim 7 where the data sample is integrated a plurality of times; 23
24 9. The method of claim 7 where the data sample is differentiated a plurality of
25 times. 26
27 10. The method of claim 7 where the decimation rate is an arbitrary integer between
28 1 and a number equal to a predetermined maximum decimation value; 29
30 11. An integrated circuit for performing a CIC digital filter function; the integrated
31 circuit comprising:
32 at least one integrator;
33 a decimator; the decimator receiving input from the integrator;
34 at least one differentiator receiving input from the decimator; 1 a multiplier connected to the input;
2 a shifter connected between the output of the multiplier and to the integrator;
3 and,
4 the multiplier configured to compute the product of each input data sample by a
5 correction factor, so as to correct the gain of the CIC filter for decimation values
6 not a power of 2. 7
8 12. The integrated circuit of claim 11, where the correction factor is pre-computed
9 as equal to the fractional portion of 2 raised to the base-2 logarithm of the gain of the 10 CIC filter.
11
12 13. The integrated circuit of claim 11 , further comprising the shifter receiving a shift
13 control input; the shift control input being pre-computed as equal to the integer portion
14 of 2 raised to the base-2 logarithm of the gain of the CIC filter. 15
16 14. The integrated circuit of claim 11, comprising four sequentially-connected
17 integrators and four sequentially-connected differentiators. 18
19 15. The integrated circuit of claim 11, where the decimator operates at any
20 decimation rate from 1 to a predetermined maximum decimation value. 21
22 16. An integrated circuit for performing a CIC digital filter function for filtering
23 input data samples, comprising:
24 a shifter; the shifter connected to the input; the shifter receiving a shift control
25 input; the shift control input being pre-computed as equal to the integer portion
26 of 2 raised to the base-2 logarithm of the gain of the CIC filter;
27 a multiplier connected to the shifter;
28 at least four sequentially-connected integrators connected to the multiplier;
29 a decimator receiving input from the integrators;
30 at least four sequentially-connected differentiators receiving input from the
31 decimator; the decimator having a selectable rate equal to any integer between 1
32 and a number equal to a predetermined maximum decimation value; and,
33 the multiplier configured to compute the product of each input data sample by a
34 correction factor; the correction factor being pre-computed as equal to the 1 fractional portion of 2 raised to the base-2 logarithm of the gain of the CIC filter,
2 so as to correct the gain of the CIC filter for decimation values not a power of 2. 3
4 17. A multi-channel CIC digital filter for filtering input data samples from a
5 multiplexed data stream, comprising:
6 a multiplier connected to the input;
7 a shifter connected to the multiplier;
8 a demultiplexer connected to the shifter for demultiplexing the
9 multiplexed data stream into two or more data streams;
10 where each demultiplexed data stream is input to:
11 at least one integrator function;
12 a decimation function receiving input from the integrator
13 function;
14 at least one differentiator function receiving input from the
15 decimation function;
16 the multiplier and shifter configured to compute the product of the input data
17 samples by a correction factor, so as to correct the gain of the multi-channel CIC
18 filter for decimation values not a power of two. 19
20 18. The multi-channel CIC filter of claim 17, where the correction factor is pre- 21 computed as equal to the fractional portion of 2 raised to the base-2 logarithm of the 22 gain of the CIC filter. 23
24 19. The multi-channel CIC filter of claim 17, further comprising the shifter
25 receiving a shift control input; the shift control input being pre-computed as equal to the
26 integer portion of 2 raised to the base-2 logarithm of the gain of the CIC filter. 27
28 20. The multi-channel CIC filter of claim 17, where each channel comprises four
29 sequentially-connected integrator functions and four sequentially-connected
30 differentiator functions. 31
32 21. The CIC filter of claim 17, where the decimator operates at any decimation rate
33 from 1 to 131,072. 34
1 22. A method of implementing a multi-channel CIC filter for filtering input data
2 samples from a multiple data stream; the multi-channel CIC filter having an input, an
3 output, a shifter, a shift control, a multiplier, a demultiplexer, and a plurality of
4 channels; each channel having one or more integrator functions, a decimation function,
5 and one or more differentiator functions, the method comprising:
6 receiving an input stream of multiplexed data samples;
7 shifting each data sample by a left shift equal to the integer portion of the base-2
8 logarithm of the CIC filter gain;
9 multiplying each so shifted data sample by the fractional portion of the base-2
10 logarithm of the CIC filter gain;
11 demultiplexing the multiplexed data stream into two or more data streams;
12 for each data stream:
13 integrating the shifted and multiplied data sample at least once;
14 decimating the data sample by a pre-determined decimation rate;
15 differentiating the decimated data sample at least once; and,
16 rounding the differentiated data sample to a pre-determined number of
17 bits before outputting the data sample. 18
19 23. The method of claim 22 where each data sample is integrated a plurality of
20 times;
21
22 24. The method of claim 22 where each data sample is differentiated a plurality of
23 times. 24
25 25. The method of claim 22 where the decimation rate is an arbitrary integer
26 between 1 and a number equal to a predetermined maximum decimation value; 27
28 26. An integrated circuit for performing a multi-channel CIC digital filter function
29 on a multiplexed stream of data samples; the integrated circuit comprising:
30 a multiplier connected to the input;
31 a shifter connected to the multiplier;
32 a demultiplexer connected to the shifter for demultiplexing the multiplexed data
33 stream into two or more channels, each channel comprising a demultiplexed data
34 stream; 1 where each channel further comprises:
2 at least one integrator;
3 a decimator; the decimator receiving input from the integrator;
4 at least one differentiator receiving input from the decimator; and,
5 the multiplier and shifter configured to compute the product of each input data
6 sample by a correction factor, so as to correct the gain of the CIC filter for
7 decimation values not a power of 2. 8
9 27. The integrated circuit of claim 26, where the correction factor is pre-computed
10 as equal to the fractional portion of 2 raised to the base-2 logarithm of the gain of the
11 multi-channel CIC filter. 12
13 28. The integrated circuit of claim 26, further comprising the shifter receiving a shift
14 control input; the shift control input being pre-computed as equal to the integer portion
15 of 2 raised to the base-2 logarithm of the gain of the multi-channel CIC filter. 16
17 29. The integrated circuit of claim 26, where each channel comprises four
18 sequentially-connected integrators and four sequentially-connected differentiators. 19
20 30. The integrated circuit of claim 26, where each decimator operates at any
21 decimation rate from 1 to a predetermined maximum decimation value. 22
23 31. An integrated circuit for performing a multi-channel CIC digital filter function
24 on a multiplexed stream of data samples, comprising:
25 a multiplier connected to the input; the multiplier configured to compute the
26 product of each input data sample by a correction factor; the correction factor
27 being pre-computed as equal to the fractional portion of 2 raised to the base-2
28 logarithm of the gain of the CIC filter, so as to correct the gain of the CIC filter
29 for decimation values not a power of 2; and,
30 a shifter connected to the multiplier; the shifter receiving a shift control input;
31 the shift control input being pre-computed as equal to the integer portion of 2
32 raised to the base-2 logarithm of the gain of the CIC filter. a demultiplexer connected to the shifter for demultiplexing the multiplexed data stream into two or more channels; where each channel comprises a demultiplexed data stream; where each channel further comprises: at least four sequentially-connected integrators; a decimator receiving input from the integrators; at least four sequentially-connected differentiators receiving input from the decimator; the decimator having a selectable rate equal to any integer between 1 and a number equal to a predetermined maximum decimation value.
说明书全文

CASCADED INTEGRATOR COMB FILTER WITH ARBITRARY INTEGER DECIMATION VALUE AND SCALING FOR UNITY GAIN Patent Application of Shenq-Huey Wang, William D. Elliott, and Xiemei Meng

Technical Field This disclosure relates to digital signal processing applications that require the use of Cascaded Integrator-Comb (CIC) filters. Such filters are often used with over- sampled Analog to Digital Converters (ADC's) to reduce the sample rate of the ADC to the sample rate of interest to the application, and to reduce the aliasing effects generated by the ADC sampling process. Background CIC filters deployed to date are frequently used in digital down-converter applications, as they permit a more efficient hardware implementation than alternate finite-impulse response filters with decimation or a conventional averaging technique. If constrained to powers-of-two decimation values, the CIC can be implemented without multiply or divide operations, but must use very large bit width adders and accumulators for the large values of decimation or interpolation often required in current digital filtering applications. The problem with the current approach is the granularity of the selectable output sample rate. As an example, consider a CIC filter with powers-of two decimation values from 8 to 16,384 (23 to 214). Thus, if the input sample rate is, for example, 16 MHz, the discrete output sample rates available are 2 MHz, 1 MHz, 500 KHz, ... 3.91 KHz, 1.95 KHz, and 0.98 KHz. Since the output sample rate of the CIC is typically input to a digital filter, and to minimize the number of taps required for these follow-on filters, it is highly desirable to improve the granularity of the R values. As an example, an FIR filter with a sharp cutoff frequency at 250 KHz would, with powers-of-two decimation, require a sample rate of 1 MHz and require 507 taps to achieve 80 dB of attenuation with less than 1 dB of ripple. If integer R values were available, the sample rate could be set at 516 KHz (R = 31) and the filter would require only 235 taps, improving filter latency and processing throughput and power requirements. Summary We disclose a CIC digital filter allowing for arbitrary-integer decimation rates. The filter has a shifter connected to its input. The shifter receives a shift control input, where the shift control input is pre-computed as equal to the integer portion of 2 raised to the base-2 logarithm of the gain of the CIC filter. There is a multiplier connected between the input and the shifter. In other embodiments, the multiplier could be connected between the input and the shifter. There are at least four sequentially-connected integrator functions connected to the shifter (or multiplier, as the case may be); a decimation function receiving input from the integrator functions; and at least four sequentially-connected differentiator functions receiving input from the decimation function. The decimation function has a selectable rate equal to any integer between 1 and a number equal to the predetermined maximum decimation value. The multiplier is configured to compute the product of each input data sample by a correction factor; the correction factor being pre-computed as equal to the fractional portion of 2 raised to the base-2 logarithm of the gain of the CIC filter, so as to correct the gain of the CIC filter for decimation values not a power of 2. We also disclose a method of implementing a multi-channel CIC filter for filtering input data samples from a multiple data stream; the multi-channel CIC filter having an input, an output, a shifter, a shift control, a multiplier, a demultiplexer, and a plurality of channels. Each channel has one or more integrator functions, a decimation function, and one or more differentiator functions. The method comprises receiving an input stream of multiplexed data samples; shifting each data sample by a left shift equal to the integer portion of the base-2 logarithm of the CIC filter gain; and, multiplying each so shifted data sample by the fractional portion of the base-2 logarithm of the CIC filter gain. The multiplexed data stream is demultiplexed into two or more data streams. For each data stream, the method includes integrating the shifted and multiplied data sample at least once; decimating the data sample by a pre-determined decimation rate; differentiating the decimated data sample at least once; and, rounding the differentiated data sample to a pre-determined number of bits before outputting the data sample. Drawings Figure 1 illustrates a prior-art four stage CIC filter permitting programmable decimation of up to 16,384 (2 14) for decimation values titώt are integer powers of 2. Figure 2 illustrates a CIC filter with arbitrary integer values of decimation up to 131,072. Figure 3 shows an alternate embodiment of the CIC filter receiving a multiplexed data stream and having multiple channels of output. Figure 4 shows representative wave forms for the input to, and output of, the various stages in an example CIC filter. Description Figure 1 illustrates a prior-art four stage CIC filter permitting programmable decimation of up to 16,384 (21 ). The shift register at the beginning of the pipeline is used to set a shift value that will maintain unity gain for the programmed decimation value (R) of the filter. This constrains the decimation value to integer powers of two, resulting in 14 discrete decimations settings of 1, 2, 4, 8, ... 16,384. The decimator outputs 1 of R inputs to perform the down-sampling function. The adders and registers are sized to accumulate very large numbers, but can be truncated by a few bits at each stage to eliminate bits that do not affect the output precision. Figure 2 illustrates a CIC filter according to the preferred embodiment with integer values of decimation up to 131,072. This capability is achieved by adding a multiplier (100) before the shift register (110) at the input of the CIC to adjust the gain for values between the powers of two adjustments in the shift register (110). To perform the programming for a particular integer value of R, the gain value in the shifter (110) and the multiplier (100) must equal the drop in dynamic range of the CIC filter per the following equation for a four-stage CIC filter: pyp p • _ 4 _ /Λ integer portion of log (CIC Gain) n fractional portion of log (CIC Gain)

where RMAX is the maximum decimation rate designed into the system. This can be implemented in digital hardware by a shift operation for the integer portion of the gain and a multiplication for the fractional portion of the gain. Note that, for power of two decimation values, only a shifter is required. 1 Thus, the shift control value (115) applied as a left shift in the shifter (110)

2 would be 2 raised to the integer portion of log2 (CIC Gain), and the correction factor

3 (105) applied to the multiplier (100) would be 2 raised to the fractional portion of log2

4 (CIC Gain).

5 As an example, a desired decimation value of R = 36 (not a power of two) in the

6 four-stage filter would generate a shift control value of 47 and a multiplier correction

7 value of 1.24859. (All numbers are in 16-bit two's complement format in the example.)

8 An equivalent multiplier could use floating-point arithmetic, although at the cost of

9 additional hardware complexity. The integrator and differentiator sections (130 and

10 150) are conventionally built of such registers (140) and adders (160), with appropriate

11 feedback or feed-forward as shown. In Fig. 2, the boxes denoted "REG" are the

12 conventional registers (140) used in CIC filters for holding intermediate results, with the

13 outputs truncated as indicated. A rounder (170) after the differentiator section (150)

14 rounds the result to the bit width desired for the output sample The reader will see that

15 if greater attenuation in the stop band is required, additional integrator and differentiator

16 stages could be added to the CIC filter just described. It should also be noted that the

17 input bit width can be any value. The registers and adders must be sized for the

18 maximum input precision desired. One could, for example, input 12 bits and output a

19 precision of 16 bits with a decimation value of at least 256, since the CIC is an

20 averaging filter and will "average out" uniform noise.

21 A multi-channel system with, for example, a single ADC multiplexing conversions from

22 N input channels and then outputting the result to N CIC channels, can be implemented

23 by sharing the multiplier and shifter. The same multiplier and shifter can be used to

24 supply any additional gain correction needed as a result of inaccuracies in the

25 amplification and analog to digital conversion processes. An alternate embodiment

26 having multiple channels of output is depicted in Fig. 3, where the input channel (200)

27 of multiplexed input is multiplied by the correction factor in a single multiplier (100),

28 shifted in a single shifter (230) by a shift correction factor as before, and demultiplexed

29 into separate data channels by a demultiplexer (210).

30 The integrator section ( 130) of the CIC filter in Fig. 2 is clocked at the input

31 data rate. The differentiator section ( 150) is clocked at the input data rate divided by R,

32 the decimation rate. Thus the CIC filter down-converts the input signal sample rate and

33 bandwidth by R. Experiments in a mixed-signal CMOS integrated circuit have shown that the CMOS implementation of this solution is only about 13% larger than the powers-of- two solution for a single channel of input data. However, in a multi-channel system with, for example, a single ADC multiplexing conversions from N input channels and then outputting the result to N CIC channels, the multiplier and shifter can be shared, further reducing the cost, as shown in Fig. 3. Matlab simulations of the CIC for an R value of 36 are shown in Figure 4. Fig. 4A shows the integrator waveforms, and Fig. 4B shows the differentiator (CIC) wave forms for the example filter. These demonstrate that the scaling up by the multiply and shift factors at the front of the CIC results in unity gain at the output; e.g., a 12 bit input cosine waveform produces a dynamic range of 4096 at the output, and the signal is faithfully reproduced. In conclusion, the technique described in this invention shows that any integer decimation value can be chosen as needed to fit the application up to the design maximum of the hardware. The addition of the multiplier provides R maximum - log2 R additional discrete values of decimation. The design benefits outweigh the 13% or less increased cost of additional hardware. We claim:

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈