Apr 22, 2008 #1 L lunbaby Newbie level 1 Joined Mar 19, 2008 Messages 1 Helped 0 Reputation 0 Reaction score 0 Trophy points 1,281 Activity points 1,290 I design a 3-order sigma delta modulator for audio application and want to achieve 16-bits resolution(96dB). For hspice simulation, I write FFT code : fs=5.12MHz BW=20k fin=fs*N/np , N is prime .tran 1/fs 12779.62us .fft v start=100ns stop=12779.62us window=hann np=65536 freq=fin freq: input frequency start: choose arbitrarily stop: start + np*(1/fs) I use 1/fs for the scale the PSD is only 2-order shaping(40db/dec) Change the 1/fs to 1ns(more smaller) the PSD is better!! But when I want to calculate FFT in matlab, the output points are much more than np(65536) so I don't understand how to do. And which one can tell me why using the scale 1/fs can't achieve good result ? Thanks~~!!
I design a 3-order sigma delta modulator for audio application and want to achieve 16-bits resolution(96dB). For hspice simulation, I write FFT code : fs=5.12MHz BW=20k fin=fs*N/np , N is prime .tran 1/fs 12779.62us .fft v start=100ns stop=12779.62us window=hann np=65536 freq=fin freq: input frequency start: choose arbitrarily stop: start + np*(1/fs) I use 1/fs for the scale the PSD is only 2-order shaping(40db/dec) Change the 1/fs to 1ns(more smaller) the PSD is better!! But when I want to calculate FFT in matlab, the output points are much more than np(65536) so I don't understand how to do. And which one can tell me why using the scale 1/fs can't achieve good result ? Thanks~~!!
Apr 23, 2008 #2 L ljy4468 Full Member level 4 Joined Jul 20, 2005 Messages 232 Helped 13 Reputation 26 Reaction score 1 Trophy points 1,298 Location South Korea Activity points 3,023 I had been simulated SDM & calculated FFT through MATLAB. There must be 65536/2 point when you see FFT plot between 0~ fs/2 if NP=65536 I think you put your spice output data to MATLAB with the range of 0~fs instead of 0~fs/2. If i'm wrong, write more. And I want to know your MATLAB code. Regards.
I had been simulated SDM & calculated FFT through MATLAB. There must be 65536/2 point when you see FFT plot between 0~ fs/2 if NP=65536 I think you put your spice output data to MATLAB with the range of 0~fs instead of 0~fs/2. If i'm wrong, write more. And I want to know your MATLAB code. Regards.