<div dir="ltr">Sounds like Brian is getting ready to obliterate competition in the ARR FMT test ;). A single digit millihertz accuracy will certainly place you at the top of the charts for quite some time. <div><br></div><div>


-- </div><div>73 Vasiliy K3IT</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Nov 20, 2013 at 7:57 PM, John Marvin <span dir="ltr"><<a href="mailto:jm-hpsdr@themarvins.org" target="_blank">jm-hpsdr@themarvins.org</a>></span> wrote:<br>


<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div>***** High Performance Software Defined Radio Discussion List *****<br>
<br>
</div></div><br>
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div>Brian,<br>
      <br>
      The formula that is used in theory is:<br>
      <br>
          (Frequency * 2^57/122880000) >> 32<br>
      <br>
      If you reduce that it becomes:<br>
      <br>
          (Frequency * 2^41/1875) >> 32<br>
      <br>
      So, theoretically any frequency that is evenly divided by 1875
      would be  a "perfect" frequency. I use that rule when setting
      frequencies for the FMT.<br>
      <br>
      However, in practice, the fpga uses integer math. 2^41/1875 is:<br>
      <br>
          1172812402.961066666....<br>
      <br>
      The fpga code rounds this to 1172812403 and uses that constant for
      the computation. So the actual formula used in the FPGA is:<br>
      <br>
          (Frequency * 1172812403) >> 32<br>
      <br>
      Therefore there is always some error, however it is minimized at
      frequencies that are evenly divided by 1875. In those cases I
      believe the error is less than .1 mHz.<br>
      <br>
      This information should probably be put on the HPSDR wiki
      someplace.<br>
      <br>
      Regards,<br>
      <br>
      John<br>
      <br>
      <br>
      <br>
      On 11/20/2013 11:36 AM, Brian Lloyd wrote:<br>
    </div>
    <blockquote type="cite">
      <pre>***** High Performance Software Defined Radio Discussion List *****

</pre>
      <br>
      <fieldset></fieldset>
      <br>
      <div dir="ltr">Several of the things I like to do involve precise
        frequency measurement in the HF spectrum using a Hermes and/or
        Angelia board, and PowerSDRmrx. Since my frequency reference is
        either a GPSDO or an Rb reference, the potential accuracy is
        very high. The actual limit has become the error in radix
        conversion between the decimal frequency value and the binary
        frequency control word used by the NCO in the Hermes/Angelia
        FPGA "firmware" plus the error in PowerSDR's NCO frequency
        control word. 
        <div>
          <br>
        </div>
        <div>Now this error is not large, typically on the order of 20
          or so mHz most of the time, but there are some combinations of
          control words that produce larger errors.</div>
        <div><br>
        </div>
        <div>Now these errors are completely deterministic. When one
          enters a frequency in decimal that produces a binary control
          word for the nearest possible frequency, usually within a
          couple of handsful of mHz. But if you know the binary control
          word, it is possible to work that backwards to the ACTUAL
          frequency. So, yes, if I enter 7,150,000.000 Hz, I really DO
          want to know that the radio actually tuned to 7,150,000.037
          Hz. </div>
        <div><br>
        </div>
        <div>What would be nice would be to have PowerSDR actually
          include this calculation and display it, or, better yet,
          include it as the actual value represented when queried with
          CAT. Still, just knowing the calculation so I can do my own
          corrections by hand would be extremely useful. </div>
        <div><br>
        </div>
        <div>Thanks in advance.</div>
        <div><br>
        </div>
        -- <br>
        Brian Lloyd, WB6RQN/J79BPL<br>
        706 Flightline Drive
        <div>Spring Branch, TX 78070<br>
          <a href="mailto:brian@lloyd.com" target="_blank">brian@lloyd.com</a><br>
          <span><span title="Call with Google
              Voice"><a href="tel:%2B1.916.877.5067" value="+19168775067" target="_blank">+1.916.877.5067</a></span> (USA)</span></div>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      <pre>_______________________________________________
HPSDR Discussion List
To post msg: <a href="mailto:hpsdr@openhpsdr.org" target="_blank">hpsdr@openhpsdr.org</a>
Subscription help: <a href="http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org" target="_blank">http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org</a>
HPSDR web page: <a href="http://openhpsdr.org" target="_blank">http://openhpsdr.org</a>
Archives: <a href="http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/" target="_blank">http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/</a></pre>
    </blockquote>
    <br>
  </div>

<br>_______________________________________________<br>
HPSDR Discussion List<br>
To post msg: <a href="mailto:hpsdr@openhpsdr.org" target="_blank">hpsdr@openhpsdr.org</a><br>
Subscription help: <a href="http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org" target="_blank">http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org</a><br>
HPSDR web page: <a href="http://openhpsdr.org" target="_blank">http://openhpsdr.org</a><br>
Archives: <a href="http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/" target="_blank">http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/</a><br></blockquote></div><br>
</div></div>