Hello, I tried making a DDS and I encountered a problem where I was running the tuning word at at fairly high frequencies (1/8th of max). When I look at the sine wave generated by my DAC on my scope, I see this phenomenon that looks like a phase drift. I could describe it as v(t, k) = sin (2 *pi *f * floor(t/Ts) + variable_init_phase(k) ) where t is the time axis on the scope and k is the number of times the electron beam did a scan from left to right . The floor (t/Ts) is simply a quantization in time which makes the sin function give a constant value for a duration of Ts. The variable_init_phase(k) means that at each electron beam scan, I start off with a different phase. This looks like staircase going up and down in a sine shape, but the height of the steps changes as k changes.
The voltage is quantized to many bits, so I don't need to worry about the vertical quantization. In time, I see horizontal lines where each line has the width of the sampling rate of the DAC. Now since I am running the tuning word at a high frequency, I only have a few samples for each sine wave cycle. The phase increment is in discrete steps, so I end up with jitter. What steps do I take to fix this? I heard about PHASE DITHERING without appreciating it, would I need to to that? I put a single R C filter after the DAC as a reconstruction filter to get rid of the (sin x )/x , but I think all I am doing is smudging the problem of the quantized time. Reading ideas and tips are appreciated. Those of you who know the various generations of ADI DDS chips probably have useful insight. Thanks, Frank
