FFT function on Rigol DHO804 - Page 1
Forum section: electronics / beginners

author: rdenney
author_rank: Regular Contributor
timestamp: June 04, 2025, 07:35:22 pm
content: I recently rang out my new-to-me pile o'test gear by evaluating the old Kenwood integrated amplifier I'm using as a bench audio amp.I had the amp plugged into an 8-ohm dummy load, and also plugged the input of an HP339a distortion analyzer in parallel with the dummy load on one channel. With the amp just shy of clipping, it was producing 21.5 VRMS, about 50 watts, which is a bit above the specified output for this amp. The distortion level at that voltage was -63 dB (.08%)--again right on spec. The test signal was the oscillator output of the 339a--1 VRMS, 1 KHz. That oscillator's distortion is, of course, down around -95 to -100 dB.So, I plugged the output into Channel 1 of the scope, and opened a math window showing the FFT, with a range of DC to 20KHz. The FFT peaked at 1KHz and worked its way down to -65 dB or so. No expectations violated.I learned that the FFT gets its sample from what is displayed on the trace, so it cleaned up and dropped to its lowest level with as many wavelengths as possible jammed onto the trace window.Then, I plugged the oscillator directly into the scope. I had the horizontal time scale set to show 20 ms per division, or 0.2 seconds across the display. That would show 200 wavelengths on the display (which was beyond what the pixels would show clearly, apparently). The FFT analysis still worked its way down to barely -70 dB, when the distortion analyzer is measuring -96 dB for the same signal.1 VRMS signal level, selected so the dBV scale on the Rigol would read in dB relative to signal level:HP 339a's opinion of the distortion at -96 dB:And here's the Rigol display showing an FFT noise floor at least up to -70 dB:So, I removed the input altogether and just looked to see what the FFT noise floor would be with no input:Now, it showed a noise floor of about -66 dBV.I think I'm screwing up somehow, perhaps with the way the signals are terminated. I was using a 50-ohm BNC-BNC test lead, with a BNC to dual-banana adapter on the 339a end. The 339a oscillator has a 600-ohm impedance. The input supposedly also has a 600-ohm impedance, but it measures accurately every other oscillator I own, showing them bang on spec.I was sorta hoping the Rigol could give me FFT displays well enough for audio work down to at least, say, -90 dB. But maybe it's internal noise floor is too high.Tell me if I'm doing something wrong (including expecting the wrong outcome).Rick "appreciative" Denney

author: TimFox
author_rank: Super Contributor
timestamp: June 04, 2025, 07:47:04 pm
content: The "monitor" output on the 339A, when the "function" switch is in "distortion" mode, puts out the result after nulling the fundamental frequency component of the distorted waveform, leaving only noise and distortion.Have you tried doing the FFT on that?

author: rdenney
author_rank: Regular Contributor
timestamp: June 04, 2025, 08:44:30 pm
content: Quote from: TimFox on June 04, 2025, 07:47:04 pmI have indeed, and also for the similar output from the HP 8903b distortion analyzer also on the bench. But those are both scaled to the range of 1V, though mostly what I see from that output is in the 400-500 mV range, so while the picture is pretty, it takes quite a lot of calculation to figure out how much the noise residuals were scaled up. Clearly, HP did this because even their expensive audio dynamic signal analyzer only has 80 dB S/N. There's a set of formulas for calculating that scaling in the 8903b operating manual, but it's a pain in the rear to go through it. If that's the only way to get it done, I'll do it, but it's too slow for a quick look at equipment under test.This display was good enough for low-quality devices under test. I have an ancient Kikusui 455 function generator. With a 2-V, 1KHz sine-wave output, it presented measured distortion of -20 dB in both distortion analyzers, and the harmonic peaks rose to levels that should add up to that on the FFT display. That validated the display for reading peaks, but the noise floor is still a question.I was also able to observe the distortion products from the Kenwood amp when overdriving it into clipping. Cranking it up high enough to clip made all those harmonics rise right up. That was very cool. But if they were at -80 instead of -40, I'd have never seen them.Rick "wonder what the noise floor is supposed to be" Denney

author: TimFox
author_rank: Super Contributor
timestamp: June 04, 2025, 09:14:16 pm
content: The scale factor (1 V) applies to the distortion range selected. If 1%, that would be 20 dB down from the fundamental, etc.

author: RFDx
author_rank: Regular Contributor
timestamp: June 05, 2025, 08:16:54 am
content: @rdenneyIncrease the memory depth to 1M, sample rate to 5MSa/s. Noise floor should now be close to -100...110dBV. If you additionally switch the aquisition mode to "average", with N=16...32, the FFT will slow somewhat down but you gain up to 20dB with the noise floor at around -120...130dBV.

author: iMo
author_rank: Super Contributor
timestamp: June 05, 2025, 08:45:32 am
content: 1Vpp 50ohm, 1kHz, Blackman, HP3310B..PS: -110dBV with 16 aver.

author: rdenney
author_rank: Regular Contributor
timestamp: June 05, 2025, 12:29:11 pm
content: That's exactly the advice I was hoping for, thank you. I will check it out.And I will also look afresh at the post-notch output of the distortion analyzer--I think the HP manual was full of trees and I wasn't seeing the forest. It appears to be a lot simpler than it seemed. I was looking at the 8903 manual, and the level of amplification being applied to the distortion residual isn't so easy to detect. With the 339a, that level of amplification should be the setting on the range switch, right? So, for measuring the residual of the 339a's oscillator, where the range switch is at -80, the residual output will be scaled by 80 dB, such that a distortion residual at -96 dBFS will be amplified to -16 dB? I'll experiment more.I was wondering if the 12-bit samples of the DSO were limiting the noise floor--with a full 12-bit signal at 0 dB, 1 of 12 bits will be at -72 dB. But that applies to the waveform, not necessarily the spectrum analysis, and the math of that escapes me at the moment.Rick "on the steep part of the learning curve" Denney

author: iMo
author_rank: Super Contributor
timestamp: June 05, 2025, 02:30:58 pm
content: ..when I put 0dBV (1.00Vrms sine 1kHz, 50ohm) into tho scope (32x averaging set) the noise floor seems to be, say, -98dBV.So the ENOB looks like almost 16bit..

author: rdenney
author_rank: Regular Contributor
timestamp: June 06, 2025, 01:40:57 pm
content: Making progress. I increased the sample rate and added averaging over 32 samples, using Blackman-Harris windowing. That dropped the noise floor to about -100 dB on the FFT display. Here is the best I could attain reading the output of the 339a oscillator directly:I'll discuss the monitor output with this signal later.The 339a manual doesn't describe how the monitor output works (the 8903's manual does, but I need to get into that one--there's something erratic happening in the oscillator on the 8903 after it warms up and I think I have a bad cap somewhere). It just states that it is scaled up to 1V RMS. But I could not get that clean internal oscillator signal to scale up like that, so I experimented with less clean sources.Here is the Tektronix CFG250, which is specified at 1% THD for its sine-wave generator. The 339a reads -50 dB distortion:The FFT of the primary signal generally agrees:But this one was easier to really play with--an old Kikusui 455 with -20 dB distortion:Here's the primary signal output, showing the worst harmonic (the 2nd) indeed at -20 dB:With this one, I played with the monitor output. For the above reading, the distortion range switch was set at -20 dB, and the monitor output did indeed scale the signal so that the second harmonic read 0 dB. I moved the switch to 0 dB, which moved the needle down to -20 on the dial, and the monitor output showed the second harmonic at -20 (no scaling). With the switch set to -10, the needle moved to -10 on the dial (totaling -20 as expected) and the monitor output scaled the signal so that the second harmonic showed at -10. This confirms that the 339 ostensibly scales the output by the amount dialed in on the distortion range switch.But here it is showing the monitor output of the 339a's oscillator, which measures at -97 dB:It shows the fundamental notched down about 70-odd dB, and no harmonics at all down to a noise floor of well under -100 dB. The voltage output is a millivolt and change. At -97 dB, the RMS distortion voltage should be less than 15 microvolts RMS if the fundamental is at 1V RMS. So, it seems that the signal is indeed scaled up by 20 dB (1000%). But if the second harmonic (2KHz) is the primary distortion product, it should be visible on this display. As I scaled up the voltage on the trace, it settled back down to the millivolt range. My theory is that the distortion products of the 339a oscillator, after notching and amplification by the 339a, get lost in the noise of the DSO. If the fundamental was notched by 100 dB as HP specifies, and the monitor output scaled it up 20 dB, the spike shown at 1KHz would indeed rise to about -80 dB. But the second harmonic should have risen with it to -77 dB.I've concluded that the Rigol DSO just doesn't have the dynamic range for signals this clean, and even the scaling amplifier in the 339a might be unable to pull the distortion products out of its own noise. But everything seems to work reasonably when I measure the primary signal--I see the distortion products down in the -90's. But with noisy devices under test, it all works much more predictably.Rick "a little higher up on the learning curve and now out of breath from the climb" Denney

author: iMo
author_rank: Super Contributor
timestamp: June 06, 2025, 01:55:32 pm
content: ..try to set the BW=20MHz for the CH1 as well..

author: RFDx
author_rank: Regular Contributor
timestamp: June 10, 2025, 06:41:40 am
content: Quote from: rdenney on June 06, 2025, 01:40:57 pmI checked the usable dynamic range on a DHO1000 series scope. The average noise floor with a 1kHz, 100 mV RMS input signal from an AWG, with a lot of processing gain due to the large 1 Mpts FFT record size, von Hann window, 50 MSa/s / 10 Mpts aquisition and time domain averaging, is below -140 dBV. The input signal (max. -17dBV) is more than 120 dB above the noise floor. Not bad but of course nowhere near a decent 24-Bit audio codec. Frequency domain averaging would additionally quiet down the noise floor but unfortunately Rigol scopes don't have that. You have to keep in mind that with larger input voltages, as soon as you adjust the vertical scale and a 20dB attenuator kicks in, the noise floor also jumps up by 20dB.