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.

how to find the phase of the signal in fft??

Status
Not open for further replies.

sandy3129

Member level 3
Joined
Nov 7, 2014
Messages
56
Helped
1
Reputation
2
Reaction score
1
Trophy points
8
Activity points
445
hello guys, im implementing a fft of frequency 4ghz sampled at a frequency of 10ghz, given a phase angle of "0" degree to real and "(pi/2)" degree to imag, using 512 point fft in matlab system generator,, my index(bin number) is proper i.e the highest peak is (@205) bin , so im able to find out the input frequency , but the phase angle is showing as 70 degree i did ((tan-1(imag/real))) number, the expected is 0 degree , kindly anyone help me!!!
 

If it is 70 deg const at all frequencies, then it may be (??) some artifact; but if the phase shows variations across the spectrum then you will have to dig (and dig) more (and perhaps more)...
 

it is not constant across all frequencies, i'm checking with same input frequency with the phase changing from 0 to 90 degrees !! , magnitude is matching, phase is not matching?
 

Absolute value of complex FFT values = magnitude (amplitude) spectrum

Argument of complex FFT values = phase spectrum
 

Absolute value of complex FFT values = magnitude (amplitude) spectrum

Argument of complex FFT values = phase spectrum

Absolute value of complex FFT values = magnitude (amplitude) spectrum

Argument of complex FFT values = phase spectrum

true i have gt my magnitude spectrum, my phase is not proper, i have taken an experiment for that,
i have given 1ghz freq with 0 degree phase for one fft, and i have given the same signal with 90 degrees phase for another fft, the diff in phase is expected to be 90 degree right?? i have got 83, similarly 30 degree phase fft for first one and 90 degree phase fft for second one the diff in phase is 60 right? i have got 64. any suggestions am i missing anything any concept???
 

true i have gt my magnitude spectrum, my phase is not proper, i have taken an experiment for that,
i have given 1ghz freq with 0 degree phase for one fft, and i have given the same signal with 90 degrees phase for another fft, the diff in phase is expected to be 90 degree right?? i have got 83, similarly 30 degree phase fft for first one and 90 degree phase fft for second one the diff in phase is 60 right? i have got 64. any suggestions am i missing anything any concept???

Check what are using - degrees or radians. As i understood you are using Matlab; Matlab use radians by default.
 
Are you analysing a real signal sampled with an ADC, or a simulated one?
If sampling is not synchronized with the signal, then the phase is random.
 
  • Like
Reactions: FvM

    FvM

    Points: 2
    Helpful Answer Positive Rating
Check what are using - degrees or radians. As i understood you are using Matlab; Matlab use radians by default.

thanku sir, sorry for the delayed ans, it worked what ever the result i get from the cordic atan , i should make it (pi/180) and then check it , it is working.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top