>> [~]$ factor 63897600 >> 63897600: 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 5 5 13
> Not fair. You added two zeros on the end and then got to add two more 2s > and 5s. I converted 63.8976 MHz to Hz. > What is the "target frequency"? If you are building a radio or a signal > generator you will tune around all over the band. There are two ideas tangled up in here. I missed one the last try. Sorry for the confusion. Think of a DDS as a N bit register R, and a constant K. Each clock cycle, R = R+K The register has high bits and low bits. The high bits feed the ROM. The output frequency is Out = In * K/2^N The first quirk is that if the input frequency is not "good", you can't get an exact hit on the output frequency. Usually, N is big enough so that the nearest available frequency is good enough. For example, suppose N is 20, your input frequency is 10 MHz, and you want 1 KHz out. A K of 104 produces 991.821 Hz. A K of 105 produces 1001.358 Hz. If your input frequency is 16.384 MHz, a K of 64 produces 1000.000 Hz. The other quirk is spurs. The spurs will be closer in if you need a bigger N. In that context, the bottom 0s of K effectively make N smaller. (I don't have any good examples.) If your application is tuning a general purpose radio, the input frequency probably doesn't matter much. What do radios do about spurs? If your application is a specific target frequency, a "good" input frequency will give a cleaner output frequency. One of these days, when I run out of other things to play with, I want to build a DDS in a FPGA. The idea is to do decimal addition rather than binary. That will turn the 10 MHz from a GPSDO into a "good" frequency for an audio signal generator. It will hit any integral Hz exactly. (Well, this is time-nuts so it's only as close as the accuracy of the input signal.) -- These are my opinions, not necessarily my employer's. I hate spam. _______________________________________________ time-nuts mailing list -- [email protected] To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts and follow the instructions there.
