ansu_s
Junior Member level 3
Hi, how to get a clean FFT in Class-D simulation? I start from ideal model and want to slowly build in non-idealities and see the effect on Class-D performance. So with simple 384khz PWM Class-D with third order output filter, I aim for aliasing below -100dB (so can see all distortions greater than this), and so need 46.6x oversampling. So I use 20MHz FFT sample frequency (50ns sample spacing). But this is what I get in spectre sim:
Not great, for ideal PWM! Why the -50dB noise floor? I try increasing reltol setting (from 1e-3 to 1e-6) and this helps a small bit, maybe now -65dB. Big help is reducing strobeperiod from 50ns to eg. 0.5ns, which gets -100dB but with very, very long simulation time! Anyone has tips on how to get clean FFT with OK runtimes?
Not great, for ideal PWM! Why the -50dB noise floor? I try increasing reltol setting (from 1e-3 to 1e-6) and this helps a small bit, maybe now -65dB. Big help is reducing strobeperiod from 50ns to eg. 0.5ns, which gets -100dB but with very, very long simulation time! Anyone has tips on how to get clean FFT with OK runtimes?