USRE40802EExpiredUtilityPatentIndex 74
Digital frequency response compensator and arbitrary response generator system
Est. expiryFeb 27, 2022(expired)· nominal 20-yr term from priority
Inventors:PUPALAIKIS PETER J
H03H 17/0294G01R 35/002
74
PatentIndex Score
5
Cited by
68
References
147
Claims
Abstract
A digital signal processing system capable of compensating for frequency response variations and generating a response characteristic that complies with a provided specification. The system automatically generates digital filters to provide this compensation with almost any form of channel frequency response information and with user defined specifications. The capability of this system to trade-off noise performance, pulse response, and frequency response flatness in order to provide an optimized response is demonstrated. The system also provides feedback to the user on the final response characteristics.
Claims
exact text as granted — not AI-modified1. A signal processing system capable of compensating for the channel response characteristics of an input waveform, comprising:
input means for inputting input specifications for specifying the design of a filter, including:
channel response characteristics defining the response characteristics of a channel used to acquire said input waveform; and
user specifications for specifying a desired frequency response and a degree of compliance to the desired frequency response;
a filter builder for generating coefficients for said filter and outputting final performance specifications, having:
a compensation filter generator for generating coefficients corresponding to a compensation response on the basis of the inverse of the channel response characteristics; and
a response filter generator for generating coefficients corresponding to a combination of an ideal response and a noise reduction response on the basis of the user specifications; and
said filter for filtering said input waveform and outputting an overall response waveform having said desired frequency response, comprising:
a filter coefficient cache for storing the coefficients generated by said filter builder;
a compensation filter portion for filtering said input waveform using the coefficients stored in said filter coefficient cache corresponding to said compensation response; and
a response filter portion having a response filter stage and a noise reduction stage for filtering the compensated waveform output from said compensation filter portion and outputting said overall response waveform; said response filter portion filtering using the coefficients stored in said filter coefficient cache corresponding to said combination of said ideal response and said noise reduction response.
2. The signal processing system according to claim 1 , wherein said filter is implemented as a infinite impulse response (IIR) filter.
3. The signal processing system according to claim 1 , wherein said filter is implemented as a finite impulse response (FIR) filter.
4. The signal processing system according to claim 1 , wherein said channel response characteristics are predetermined based on a reference signal and the reference signal as acquired by said channel.
5. The signal processing system according to claim 1 , wherein said user specifications comprise a bandwidth, a response optimization, a compensation compliance, and a filter implementation type.
6. The signal processing system according to claim 5 , wherein said response optimization is a pulse response optimization implemented using a Besselworth filter.
7. The signal processing system according to claim 5 , wherein said response optimization is a noise performance optimization implemented using a Butterworth filter.
8. The signal processing system according to claim 5 , wherein said response optimization is a flatness optimization implemented using a Butterworth filter.
9. The signal processing system according to claim 5 , wherein said filter implementation type is finite impulse response (FIR) or infinite impulse response (IIR).
10. The signal processing system according to claim 1 , wherein said user specifications default to predetermined values.
11. A signal processing element for filtering an input digital waveform, comprising:
a filter builder for generating filter coefficients on the basis of a channel frequency response and a user response characteristics; said channel frequency response being determined on the basis of a response input and a correction input; an infinite impulse response (IIR) filter having an IIR input for said input digital waveform and an IIR coefficient input connected to said filter builder; said IIR filter producing an IIR filtered waveform from the input digital waveform on the basis of the filter coefficients generated by said filter builder; a finite impulse response (FIR) filter having an FIR input for said input digital waveform and a FIR coefficient input connected to said filter builder; said FIR filter producing a FIR filtered waveform from the input digital waveform on the basis of the filter coefficients generated by said filter builder; and an output selector switch for selecting either said FIR filtered waveform or said FIR filtered waveform for output.
12. The signal processing element according to claim 11 , wherein said filter builder detects changes in the sampling rate of said input digital waveform that require the filter coefficients to be generated.
13. The signal processing element according to claim 11 , wherein said filter builder generates filter coefficients for said FIR filter or said IIR filter on the basis of said output selector switch.
14. The signal processing element according to claim 11 , wherein said filter builder has channel, compensation, shaper, and noise reduction outputs for evaluating the performance of the filtering.
15. The signal processing element according to claim 11 , wherein said response input is a known input response and said correction input is a measured input response as acquired by an input channel.
16. The signal processing element according to claim 11 , wherein said user response characteristics are used to generate filter coefficients corresponding to an arbitrary response portion of the filter.
17. The signal processing element according to claim 11 , wherein said user response characteristics comprise a bandwidth, a response optimization, a compensation compliance, and a filter implementation type.
18. The signal processing element according to claim 17 , wherein said response optimization is a pulse response optimization implemented using a Besselworth filter.
19. The signal processing element according to claim 17 , wherein said response optimization is a noise performance optimization implemented using a Butterworth filter.
20. The signal processing element according to claim 17 , wherein said response optimization is a flatness optimization implemented using a Butterworth filter.
21. The signal processing element according to claim 17 , wherein said filter implementation type is FIR or IIR.
22. The signal processing element according to claim 11 , wherein said user response characteristics default to predetermined values.
23. A method of filtering an input digital waveform to compensate for the response characteristics of an acquisition channel, comprising the steps of:
generating a compensation portion of a filter on the basis of an input channel response, using the steps of:
pre-warping said input channel response;
designing an analog filter emulating the pre-warped input channel response by making an initial filter guess and iterating the coefficients of said initial filter guess to minimize a mean-squared error;
inverting said analog filter; and
digitizing the inverted analog filter to produce said compensation portion of said filter using a bilinear transformation; and
filtering said input digital waveform using said compensation portion of said filter.
24. The method according to claim 23 , further comprising the step of generating an arbitrary response portion of said filter on the basis of an input user specifications, wherein said input digital waveform is filtered using said arbitrary response portion of said filter, thereby producing a filter digital waveform having the desired response characteristics.
25. The method according to claim 24 , wherein said input user specifications comprise a bandwidth, a response optimization, a compensation compliance, and a filter implementation type.
26. The method according to claim 24 , wherein said arbitrary response portion of said filter comprises a shaper and a noise reducer.
27. The method according to claim 24 , wherein said input user specifications default to predetermined values.
28. The method according to claim 23 , wherein said filter is implemented as an infinite impulse response (IIR) filter.
29. The method according to claim 23 , wherein said filter is implemented as a finite impulse response (FIR) filter.
30. The signal processing system according to claim 23 , wherein said input channel response is predetermined based on a reference signal and the reference signal as acquired by said channel.
31. The method according to claim 23 , wherein said filter type is FIR or IIR.
32. The method according to claim 23 , wherein the coefficients of said initial filter guess are iterated until said mean-squared error is less than a compensation compliance specified in an input user specifications.
33. A method for filtering an input waveform, comprising the steps of:
determining a plurality of parameters for a digital filter to substantially increase an effective bandwidth and to substantially flatten a frequency response of an input channel of a digital oscilloscope based upon at least response characteristics of the input channel; building the digital filter according to the plurality of parameters, the digital filter having a compensation portion to substantially flatten the response of the input channel across at least one frequency range and a boost portion to substantially compensate for attenuation in the frequency response within a frequency range that is above a nominal bandwidth of the channel; receiving an input waveform on the channel; converting the input waveform to a digital representation; applying the digital filter to the digital representation; and generating a filtered waveform, wherein application of the digital filter to the channel yields an effective channel bandwidth substantially greater than the nominal bandwidth.
34. The method of claim 33 , wherein the parameters are further determined based upon user input concerning a desired bandwidth characteristic.
35. The method of claim 33 , wherein the parameters are further determined based upon a specified noise compensation for the channel.
36. The method of claim 33 , wherein the digital filter improves a pulse response of the channel.
37. The method of claim 33 , wherein the order of the digital filter is determined based on at least one user specified response characteristic.
38. The method of claim 33 , wherein the order of the digital filter is variable.
39. The method of claim 33 , wherein the parameters are determined according to a user input concerning a desired bandwidth value.
40. The method of claim 39 , wherein application of the digital filter to the channel yields an effective channel bandwidth substantially equal to the desired bandwidth value.
41. The method of claim 33 , wherein the frequency response of the digital filter comprises the substantial inverse of the channel frequency response in a frequency range within the effective channel bandwidth.
42. The method of claim 33 , further comprising changing the frequency scale of the channel frequency response.
43. The method of claim 33 , wherein building the digital filter comprises converting a parameterized analog filter into a digital domain.
44. The method of claim 33 , wherein determining the plurality of parameters comprises iteratively determining the parameters by minimizing error between a channel frequency response and the filter frequency response.
45. The method of claim 33 , wherein the digital filter comprises two or more cascaded digital filter elements.
46. The method of claim 33 , wherein the digital filter comprises a Butterworth or Besselworth filter.
47. The method of claim 33 , further comprising calibrating the channel without a probe coupled to the channel.
48. The method of claim 33 , further comprising calibrating for the characteristics of a probe coupled to the channel according to parameters stored in non- volatile memory on the probe.
49. The method of claim 33 , wherein the user input is provided through a graphical user interface.
50. The method of claim 33 , wherein the input waveform is received from an analog- to - digital converter in a digital oscilloscope.
51. The method of claim 33 , wherein the digital filter comprises a plurality of processing objects, and wherein applying the digital filter to the waveform comprises sequentially executing the plurality of processing objects.
52. The method of claim 51 , further comprising repeating the sequential execution on sequential portions of the waveform.
53. The method of claim 33 , wherein the digital filter comprises a first and a second processing object, and wherein applying the digital filter to the waveform comprises sequentially executing the first processing object and the second processing object.
54. The method of claim 33 , wherein the digital filter comprises a first and a second processing object, and wherein applying the digital filter to the waveform comprises sequentially executing the first processing object and the second processing object and wherein the sequential execution is interruptible.
55. The method of claim 33 , wherein the digital filter comprises a first and a second processing object, and wherein applying the digital filter to the waveform comprises sequentially executing the first processing object and the second processing object and wherein the first and second processing objects are part of a processing web that comprises variably interconnected processing objects.
56. The method of claim 55 , wherein definitions of the processing objects are editable in a run- time environment.
57. The method of claim 55 , further comprising forming a graphical representation of the processing web.
58. The method of claim 55 , further comprising determining a state of the processing web and placing a processing object at a location in said web determined on the basis of said state.
59. The method of claim 33 , wherein the filter includes a stabilizing zero above the effective channel bandwidth.
60. The method of claim 33 , wherein the digital filter provides substantial gain in a boost frequency range proximate the nominal bandwidth of the channel.
61. The method of claim 33 , wherein the digital filter has substantially constant attenuation in a frequency range above the boost frequency range.
62. The method of claim 33 , wherein the digital filter substantially reduces out- of - band noise on the channel.
63. The method of claim 33 , wherein application of the digital filter causes no substantial degradation of the pulse or step response of the channel.
64. The method of claim 33 , wherein application of the digital filter substantially reduces overall noise on the channel.
65. The method of claim 33 , wherein application of the digital filter substantially increases effective number of bits ( ENOB ) or the signal - to - noise ratio on the channel.
66. The method of claim 33 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies above at least 1 GHz.
67. The method of claim 33 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies between about 1 GHz and at least 6 GHz.
68. The method of claim 33 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies up to at least 10 GHz.
69. The method of claim 33 , wherein the digital filter comprises a Bessel filter.
70. The method of claim 69 , wherein the Bessel filter comprises a fourth order filter.
71. The method of claim 33 , further comprising substantially concurrently performing steps of the method on at least one additional channel in the digital oscilloscope.
72. The method of claim 33 , wherein the digital filter comprises a fourth order or higher filter.
73. The method of claim 33 , further comprising applying the digital filter to calibrate the channel.
74. The method of claim 33 , wherein the nominal bandwidth of the channel includes frequencies down to substantially zero Hertz.
75. The method of claim 33 , wherein the digital filter comprises an inverse Chebyshev filter.
76. A waveform processing system comprising:
at least one channel to receive an input waveform, each channel having a nominal bandwidth; a converter to convert each received input waveform to a digital representation; and a digital filter to receive the digital representation, the digital filter having a frequency response for each channel ( i ) to substantially flatten a frequency response of the channel across at least one frequency range based upon at least response characteristics of the channel and ( ii ) to substantially increase an effective bandwidth by substantially compensating for attenuation in the frequency response within a frequency range that is above the nominal bandwidth of the channel; wherein application of the digital filter to each channel yields an effective channel bandwidth substantially greater than the nominal bandwidth for each channel.
77. The system of claim 76 , wherein the digital filter is built according to a plurality of parameters that are determined to substantially flatten the response of the channel across the at least one frequency range.
78. The system of claim 76 , wherein the frequency response of the digital filter comprises a substantial inverse of the channel response characteristics in a frequency range within the effective channel bandwidth.
79. The system of claim 76 , wherein the channel comprises a probe.
80. The system of claim 76 , further comprising a graphical user interface for user input of parameters for building the digital filter.
81. The system of claim 76 , wherein the digital filter comprises an infinite impulse response filter.
82. The system of claim 76 , wherein the digital filter comprises a finite impulse response filter.
83. The system of claim 76 , wherein the waveform processing system comprises a digital sampling oscilloscope.
84. The system of claim 76 , wherein the digital filter comprises a first and a second processing object, and wherein the digital filter comprises at least one processor coupled to a memory device that contains a set of instructions that, when executed by the processor, cause the processor to sequentially execute the first processing object and the second processing object, wherein the second processing object receives as input a processed output of the first processing object.
85. The system of claim 76 , wherein the digital filter has substantially constant attenuation in a frequency range above the boost frequency range.
86. The system of claim 76 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies up to at least 10 GHz.
87. The system of claim 76 , wherein the digital filter comprises a fourth order or higher filter.
88. The system of claim 76 , wherein the at least one channel comprises two or more channels.
89. A method for filtering an input waveform, comprising the steps of:
determining a plurality of parameters for a digital filter to substantially flatten the response of an input channel of a waveform processor across at least one frequency range based upon characteristics of the channel, said channel having a nominal bandwidth and a nominal pulse response; building the digital filter according to the plurality of parameters, the digital filter comprising a plurality of processing objects, and being configured to substantially flatten the channel response; receiving an input waveform on the channel; and applying the digital filter to the input waveform by sequentially executing the plurality of processing objects; whereby a filtered waveform is generated.
90. The method of claim 89 , wherein the parameters are further determined based upon user input concerning a desired bandwidth characteristic.
91. The method of claim 89 , wherein the parameters are further determined based upon a specified noise compensation for the channel.
92. The method of claim 89 , wherein the digital filter improves a pulse response of the channel.
93. The method of claim 89 , wherein the order of the digital filter is determined based on at least one user specified response characteristic.
94. The method of claim 89 , wherein the order of the digital filter is variable.
95. The method of claim 89 , wherein the parameters are determined according to a user input concerning a desired bandwidth value.
96. The method of claim 95 , wherein application of the digital filter to the channel yields an effective channel bandwidth substantially equal to the desired bandwidth value.
97. The method of claim 89 , wherein the frequency response of the digital filter comprises the substantial inverse of the channel frequency response in a frequency range within the effective channel bandwidth.
98. The method of claim 89 , further comprising changing the frequency scale of the channel frequency response.
99. The method of claim 89 , wherein building the digital filter comprises converting a parameterized analog filter into a digital domain.
100. The method of claim 89 , wherein determining the plurality of parameters comprises iteratively determining the parameters by minimizing error between a channel frequency response and the filter frequency response.
101. The method of claim 89 , wherein the digital filter comprises two or more cascaded digital filter elements.
102. The method of claim 89 , wherein the digital filter comprises a Butterworth or Besselworth filter.
103. The method of claim 89 , further comprising calibrating the channel without a probe coupled to the channel.
104. The method of claim 89 , further comprising calibrating for the characteristics of a probe coupled to the channel according to parameters stored in non- volatile memory on the probe.
105. The method of claim 89 , wherein the user input is provided through a graphical user interface.
106. The method of claim 89 , wherein the input waveform is received from an analog- to - digital converter in a digital oscilloscope.
107. The method of claim 89 , wherein applying the digital filter to the waveform comprises sequentially executing a first of the plurality of processing objects and a second of the plurality of processing objects, the second processing object receiving as input a processed output of the first processing object.
108. The method of claim 89 , further comprising repeating the sequential execution on sequential portions of the waveform.
109. The method of claim 89 , wherein applying the digital filter to the waveform comprises sequentially executing a first of the plurality of processing objects and a second of the plurality of processing objects and wherein the sequential execution is interruptible.
110. The method of claim 89 , wherein applying the digital filter to the waveform comprises sequentially executing a first of the plurality of processing objects and a second of the plurality of processing objects and wherein the first and second processing objects are part of a processing web that comprises variably interconnected processing objects.
111. The method of claim 110 , wherein definitions of the processing objects are editable in a run- time environment.
112. The method of claim 110 , further comprising forming a graphical representation of the processing web.
113. The method of claim 110 , further comprising determining a state of the processing web and placing a processing object at a location in said web determined on the basis of said state.
114. The method of claim 89 , wherein building the digital filter further comprises a boost portion to substantially compensate for attenuation in the frequency response within a frequency range that is above a nominal bandwidth of the channel.
115. The method of claim 89 , wherein application of the digital filter to the channel yields an effective channel bandwidth substantially greater than the nominal bandwidth.
116. The method of claim 115 , wherein the filter includes a stabilizing zero above the effective channel bandwidth.
117. The method of claim 89 , wherein the digital filter provides substantial gain in a boost frequency range proximate the nominal bandwidth of the channel.
118. The method of claim 89 , wherein the digital filter has substantially constant attenuation in a frequency range above the boost frequency range.
119. The method of claim 89 , wherein the digital filter substantially reduces out- of - band noise on the channel.
120. The method of claim 89 , wherein application of the digital filter causes no substantial degradation of the pulse or step response of the channel.
121. The method of claim 89 , wherein application of the digital filter substantially reduces overall noise on the channel.
122. The method of claim 89 , wherein application of the digital filter substantially increases effective number of bits ( ENOB ) or the signal - to - noise ratio on the channel.
123. The method of claim 89 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies above at least 1 GHz.
124. The method of claim 89 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies between about 1 GHz and at least 6 GHz.
125. The method of claim 89 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies up to at least 10 GHz.
126. The method of claim 89 , wherein the digital filter comprises a Bessel filter.
127. The method of claim 126 , wherein the Bessel filter comprises a fourth order filter.
128. The method of claim 89 , further comprising substantially concurrently performing steps of the method on at least one additional channel in the digital oscilloscope.
129. The method of claim 89 , wherein the digital filter comprises a fourth order or higher filter.
130. The method of claim 89 , further comprising applying the digital filter to calibrate the channel.
131. The method of claim 89 , wherein the nominal bandwidth of the channel includes frequencies down to substantially zero Hertz.
132. The method of claim 89 , wherein the digital filter comprises an inverse Chebyshev filter.
133. A waveform processing system comprising:
at least one channel to receive an input waveform, each channel having a nominal bandwidth; a converter to convert each received input waveform to a digital representation; and a digital filter to receive each digital representation, the digital filter having a frequency response for each channel to substantially flatten a frequency response of the channel across at least one frequency range based upon response characteristics of the channel, wherein the digital filter comprises a plurality of processing objects, and is configured to process each input waveform by sequentially executing a plurality of the processing objects.
134. The system of claim 133 , wherein application of the digital filter to one of the at least one channels yields an effective channel bandwidth substantially equal to desired bandwidth specified by a user.
135. The system of claim 133 , wherein a frequency response of the digital filter comprises a substantial inverse of the channel response characteristics in a frequency range within the effective channel bandwidth.
136. The system of claim 133 , wherein the digital filter comprises an infinite impulse response filter.
137. The system of claim 133 , wherein the digital filter comprises a finite impulse response filter.
138. The system of claim 133 , wherein the waveform processing system comprises a digital sampling oscilloscope.
139. The system of claim 133 , wherein the digital filter comprises at least one processor coupled to a memory device that contains a set of instructions that, when executed by the processor, cause the processor to sequentially execute a first processing object and a second processing object, wherein the second processing object receives as input a processed output of the first processing object.
140. The system of claim 133 , the digital filter being further to substantially increase an effective bandwidth by substantially compensating for attenuation in the frequency response within a frequency range that is above the nominal bandwidth of the channel, wherein application of the digital filter to each channel yields an effective channel bandwidth substantially greater than the nominal bandwidth for each channel.
141. The system of claim 133 , wherein the frequency range that is above the channel's nominal bandwidth comprises frequencies up to at least 10 GHz.
142. The system of claim 133 , wherein the digital filter comprises a fourth order or higher filter.
143. The system of claim 133 , wherein the at least one channel comprises at least two channels.
144. A waveform processing system comprising:
at least one input channel to receive an input signal; and means for substantially increasing an effective bandwidth of each of the at least one input channels by building a digital filter according to a plurality of parameters, the digital filter having a compensation portion to substantially flatten the response of the input channel across at least one frequency range and a boost portion to substantially compensate for attenuation in the frequency response within a frequency range that is above a nominal bandwidth of the channel.
145. The system of claim 144 , further comprising user input means for inputting at least one of the plurality of parameters.
146. A waveform processing system comprising:
at least one input channel to receive an input signal; and means for building the digital filter according to a plurality of parameters, the digital filter comprising a plurality of processing objects, and being configured to substantially flatten the channel response across a frequency range by sequentially executing a plurality of the processing objects, each of the plurality of processing object being applied to only a portion of the input signal.
147. The system of claim 146 , further comprising user input means for inputting at least one of the plurality of parameters.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.