# Measuring frequency response with white noise signal

I need to measure a frequency response of an eleсtric circuit (simple like an RC-filter). I suppose that I can generate an input signal that has spectrum like white noise (for example, m-sequence signal or sine sweep), measure an output signal of a circuit and do calculations. And I can get a spectrum if I divide an output signal spectrum by an input signal spectrum.

Am I right? Or am I describing a wrong method?

• Yes, but you need to perform a long measurement or average many shorter measurements. The spectrum of white noise is only flat on average; for a short time interval, it is random.
– MBaz
Apr 10 at 21:04
• This can be a bit more involved that a mere division. can you tell more? Apr 10 at 21:28
• I generate an MLS (maximum length sequence) on DAC. This signal looks like a white noise in frequency domain. MLS is an input signal for a circuit and I measure an output signal with ADC. I suspect that I can do a few measurements, find FFT of each and calculate average values. I am also not sure should I do division because MLS should be like a white noise. Apr 11 at 8:43
• I checked a few papers, a method I described is called 'Dual-channel FFT' or somethind like this. But it usually explaned for sine sweep signal and I don't know can it be used with MLS. Apr 11 at 9:03
• In fact, with a testing signal (MSL or otherwise) at the input of your system, you have a deconvolution problem when seeking to restore the transfer function/frequency response given the input and output data. The deconvolution problem can be solved with spectral division which can be extended to Wiener deconvolution, see my answer to the other dsp question: dsp.stackexchange.com/questions/72501/inverse-system-of-sinc/…. But maybe you are overthinking the problem of measuring "a frequency response of an eleсtric circuit (simple like an RC-filter)", see my answer here. Apr 11 at 11:18

## 1 Answer

The question is about measurements in real world, not about simulations, am I right? If this is the case, there is an established technique and instrumentation for doing such measurements. The generic name of an instrument commonly used in laboratories and field testing for this purpose is Vector Network Analyzer. The article describes the operation principle in details and contains references for further research into the subject.

There is another kind of applications (audio environment acoustics, power grid control) where you need to measure frequency response of the system in real time (on the fly) -- or, admittedly, to do relatively instantaneous measurements of rapidly changing frequency response. In measurement of this kind, if the device under test (DUT) is linear, you can leverage the impulse response/frequency response duality, implementing pulse testing of your DUT. To be able to test a non-linear DUT, you can lower the crest factor (peak power/average power index) using a pseudorandom noise (as maximum length sequences that you mention) instead of single pulse stimulus.

But, to measure frequency response of "simple" networks "like an RC-filter", you need not go into such intricacies and can do with an ordinary lab equipment.

• Not to detract from your good answer VVT; to add a third approach which is closer to what the OP suggests and commonly used for channel estimation is to use PRN codes as a pseudo white-noise source and the Wiener-Hopf equations (or similar iterative least-squares approaches) to measure the frequency response, as I detail further here: dsp.stackexchange.com/questions/31318/… but this wouldn't be for reason of non-linear DUTs or crest factor, but to maximize SNR similar to swept tone testing in a network analyzer. Apr 11 at 12:17