sinara-hw / Urukul

4 channel 1GS/s DDS (AD9910 or AD9912 variant)
14 stars 8 forks source link

Problems with channel 0 synchronization #73

Closed marmeladapk closed 1 year ago

marmeladapk commented 1 year ago

6 attenuator SPI lines run under PLL filter of AD9910 in channel 0:

These lines seem to have a significant enough effect on PLL filter that it causes SMP ERR to appear and sometimes even phase glitches in output signal (caused by ATT_S_IN2).

To fix this,

More info can be found in https://github.com/m-labs/artiq/issues/1692.

gkasprow commented 1 year ago

fixed in v1.5.5

marmeladapk commented 1 year ago

I'd say that these lines should be rerouted away from P1V8_CLK_VDDA under AD9912 as well. Zrzut ekranu z 2023-06-23 15-41-34

Is it possible or worth it to fight for continuous reference plane for these signals?

gkasprow commented 1 year ago

I think we can do it

gkasprow commented 1 year ago

I did what I could

dnadlinger commented 1 year ago

Given that the PLL nodes are apparently more susceptible than anticipated, I suppose it might be interesting to see whether toggling all the potential agressor lines as aggressively as possible leads to phase noise on the output even after the fix. (Fixing the huge return current loop is bound to improve this a lot, though!)

We typically leave all the attenuators untouched for virtually all channels, though, so it's not a huge issue for use in the experiments here.