05-21-2009 04:56 PM
Paul, thanks.
I will post my open problem to others with an award.
(This is my critical issue in my application.)
However, what is remainder 0.5?
Can you give me some numerical examples about this?
Only what I know is #samples should be an integer divisible by 4.
Labmaster.
05-22-2009 01:19 PM - edited 05-22-2009 01:20 PM
Hello Labmaster,
You proposed that you needed to generate every frequency with no more than 2 periods. To do this, you need to ensure that Sampling rate / desired frequency = some value x. "x" has to have either no remainder or a remainder of 0.5. With a remainder of 0.5, you can generate the frequency with only 2 periods and still meet phase coherency requirements. With a remainder of 0, you can simply generate the desired frequency with a single period.
For
example, lets say you want to generate a frequency of 1.2MHz and
1.3MHz. The sampling rate can be anything you want within the limits
of the board. We could first look for a common sampling rate that
would equate to an single period generation. For example,you could
multiply 1.2 by 1.3 and come to a common sampling rate of 15.6MHz.
This will give either 12 or 13 as the number of samples. Now, we need
to make sure this is a multiple of 4. To do so, you can simply
multiply these numbers by 4 to give a new number of samples. For a
single period, we need to force this to a new update rate. So, for
15.6MHz / 1.2MHz = 13 * 4 = 52*1.2MHz = 62.4MHz. For the other desired
frequency, it will be 15.6MHz / 1.3MHz = 12*4 = 48*1.3MHz = 62.4MHz.
Unfortunately,
you will need to work with these numbers/equations to find a way to
optimize this solution, but this should get you started. I only mentioned the 0.5 solution as an additional way to optimize your results.
Regards,
Paul C.