Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
15 years ago

phase difference 2 signals.

is possible whit fpga FFT or similar metod measure a phase difference from 2 PULSED-sinusoidals signals?

the freq of signals is 60MHz but the duration of signals is 0.5uSEC, and the PRF of pulsed signals is 1800Hz.

tnx Luca

19 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    I/Q demodulation is done my multiplying the input signal with 0° and 90° reference sine. If you manage to sample the input at fs = 240 MHz, the operation simplifies to processing the odd and even samples. Gating according to the signal enevlope would be necessary in any case.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    That is a good point. You mean demodulate signal to its two I/Q components and demodulate reference similarly then check phase/amplitude.

    It eventually depends on application resolution and noise level. Demodulation may need filtering the sideband.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    In my opinion, FFT is a rather longwinded method to analyze the phase of a known frequency sine signal. Quadrature demodulation would allow an accurate amplitude and phase measurement.

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    If you have matlab, you can try this code (not tested):

    %assuming Fs = 240Msps

    %signal 1

    offset = 100;

    x1 = sin(2*pi*(0+offset:200000+offset)*60/240);

    x1(1000:1000:end) = 0; %switch off

    %ref

    xref = sin(2*pi*(0:200000)*60/240);

    y1 = fft(x1,1024);

    y2 = fft(xref,1024);

    A1 = abs(y1);

    A2 = abs(y2);

    ph1 = angle(y1);

    ph2 = angle(y2);

    you will then check A/ph at relevant bin
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    tnx to all!

    i must analize 3 (or 4) PULSED-RADAR-signals. The minimum duration of signals is 0,5 uSEC (typ 1 uSEC). i need to measure the amplitude and and the phase of these signals, referenced at 1 CW (continuos sinusoidal wave) generated by 1 reference-local-oscillator (60 MHz).

    In analogic circuit i have not problem, using AD8302(analog devices chip), but i need do it in digital world whit fpga..

    tnx!!
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Is there any reason why these two signals are pulsed sinusoids?

    If this is a ranging application, then an FM chirp (linear FM pulse) would be more appropriate. Pulse compression of the FM chirp (correlation) then results in delta-function like responses (with a width determined by the pulse bandwidth). The 'time delay' between the delta functions can then be determined.

    Pseudo-random sequences can also be transmitted and pulse compressed in this manner.

    What are you trying to do?

    Cheers,

    Dave
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    1) time domain option is unlikely to have good resolution since 60MHz running at sampling freq of say 240MHz means only 4 samples per cycle.

    2) fft option may be better. You can model that in matlab: generate stimulus then apply fft and see phase.