Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

FFT in MATLAB and SPICE

Status
Not open for further replies.

j_c_lin

Newbie level 2
Joined
Mar 8, 2005
Messages
2
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,299
pspice fft

I simulated my signal using FFT (Blackmanharris window) in MATLAB which gives me 16-bit reolution (96dB) but when i import the same signal to using sam FFT window in SPICE, the result only became 80dB left. Can any one answer why this happens and how should I avoid this problem. Thank you very much!
 

fft pspice

Well, in spice, you really have to be careful about the time points you are using for plotting your FFT. Make sure that you consider the points where the signal has settled. Also try using other windows, preferbly Hanning and Rectangular. Another problem in SPICE could also be due to your RELTOL value. Try and decrease RELTOL value and then give a run.
 

hspice fft

FFT need equidistant time points. Spice does not deliver equidistant. So there is some interpolation/extrapolation algorithm. You possible observe the artifacts of this algorithm.
 

spice, fft

Pls use spice command "linearize"
e.g. linearize vout
it will generate a signal with equal time stiep.

Then use fft
 

pspice fft

"linearize" does the same thing as punching at equidistant points.
 

using fft spice

Try "converter" to do the linearization job. It comes with hspice.
 

.fft hspice

Try this
FFT in spice or spectre:
N/(FFT point) = Fin/(sampling freq)
N prime number 7,9,13,17,19,23,29,31.............
FFT point : power of 2 , 1024,2048,4096,32768,65536 , larger will give a lower FFT noise floor
Fin : your input signal
 

using fft in hspice

chungming said:
Try this
FFT in spice or spectre:
N/(FFT point) = Fin/(sampling freq)
N prime number 7,9,13,17,19,23,29,31.............
FFT point : power of 2 , 1024,2048,4096,32768,65536 , larger will give a lower FFT noise floor
Fin : your input signal

Let say, I have 1024 sampled data wit Fs = 10 MHz. How can I can FFT them using MATLAB?
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top