[hpsdr] exact frequency determination
John Marvin
jm-hpsdr at themarvins.org
Wed Nov 20 16:57:22 PST 2013
Brian,
The formula that is used in theory is:
(Frequency * 2^57/122880000) >> 32
If you reduce that it becomes:
(Frequency * 2^41/1875) >> 32
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.
However, in practice, the fpga uses integer math. 2^41/1875 is:
1172812402.961066666....
The fpga code rounds this to 1172812403 and uses that constant for the
computation. So the actual formula used in the FPGA is:
(Frequency * 1172812403) >> 32
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.
This information should probably be put on the HPSDR wiki someplace.
Regards,
John
On 11/20/2013 11:36 AM, Brian Lloyd wrote:
> ***** High Performance Software Defined Radio Discussion List *****
>
>
>
> 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.
>
> 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.
>
> 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.
>
> 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.
>
> Thanks in advance.
>
> --
> Brian Lloyd, WB6RQN/J79BPL
> 706 Flightline Drive
> Spring Branch, TX 78070
> brian at lloyd.com <mailto:brian at lloyd.com>
> +1.916.877.5067 (USA)
>
>
> _______________________________________________
> HPSDR Discussion List
> To post msg: hpsdr at openhpsdr.org
> Subscription help: http://lists.openhpsdr.org/listinfo.cgi/hpsdr-openhpsdr.org
> HPSDR web page: http://openhpsdr.org
> Archives: http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openhpsdr.org/pipermail/hpsdr-openhpsdr.org/attachments/20131120/27e1c49e/attachment-0004.htm>
More information about the Hpsdr
mailing list