This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AWR1843BOOST: Some question about function about computeSinAzimSNR && convertSNRLinToVar

Part Number: AWR1843BOOST
Other Parts Discussed in Thread: AWR1843

Hello,ti's rngineers

    I read the AWR1843 DEMO7(MRR),i find tow functions and i can not understand them.

    The function of computeSinAzimSNR calculate the SNR about obj's azimuth snr, and the function of convertSNRLinToVar calculate the variance about obj's azimuth,what's the theory behind this?In what reference books can I find all this theoretical knowledge?

BR

Bryant

  • Hi,

    Let me check if original developer is still available to support details about this implementation.

    Some details in this algorithm are based on experience. You may not find exact implementation in text books

    Thank you

    Cesar

  • Hi Bryant, 

     computeSinAzimSNR - computes SNR of a tone in a 'zero padded FFT' - by essentially defining SNR as the ratio of the peak and sum of the energy of at the expected locations of the nulls (if the signal was a pure sinusoid).

    As an example, create in matlab a complex sinusoid of length 4 (say of an arbitrary frequency), and construct a 64 pt FFT of the signal, and plot the absolute value of the FFT output. You would notice that the nulls correspond to  points at an offset of 16 ( or 64 / 4) from the peak. If the input signal is noisy (i.e. gaussian noise) , these nulls locations would no longer be nulls, would have some noisy energy. Hence the ratio would correspond to the SNR measurement. 

    convertSNRLinToVar assumes that given an SNR of an estimate (and knowledge that your estimation algorithm is equivalent to maximum likelihood), you can estimate the  expected variance of the estimate (by inverting the Cramer Rao Bound - as the equation to convert from SNR to variance). You can read up on CRB in Fundamentals of Statistical Signal Processing: Estimation Theory by Steven M. Kay. 

    Regards

    Anil

  • Hi Anil, 

        In function about convertSNRdBToVar,the invSNRlin is invSNRlin = antilog2(-SNRdB, bitW) * 2;

        In function about convertSNRLinToVar, the  invSNRlin is recipsp( (float) SNRLin) * ((float) (1 << bitW));

        Why the invSNRlin is different?Is there any theoretical calculation formula behind INVSNRLIN?

    Regards

    Bryant

  • Hi,

    Please give us more time to review this question

    thank you

    Cesar

  • Hello,Anil

       You says"create in matlab a complex sinusoid of length 4 (say of an arbitrary frequency), and construct a 64 pt FFT of the signal",do these four points need to be included in a complete period?Or are these four points any four points, not a complete period?

    BR

    Bryant

  • Please try with points included in a period

    thank you

    Cesar