From f45c292a66ac6f45c3bc411a2417e8421486ce3c Mon Sep 17 00:00:00 2001 From: Egor Savkin Date: Tue, 25 Jul 2023 11:12:23 +0800 Subject: [PATCH] Fix urukuls sync misleading information Signed-off-by: Egor Savkin --- src/hw/urukul.md | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/hw/urukul.md b/src/hw/urukul.md index 897e8bd..787f82c 100644 --- a/src/hw/urukul.md +++ b/src/hw/urukul.md @@ -24,13 +24,11 @@ Check if [SUServo](./suservo.md) is enabled/disabled respective to customer need ### Synchronization -Synchronization option in the JSON refers to the phase synchronization between the outputs, and can be used only on AD9910 variants and -only with 125 MHz clock source provided from Kasli/Kasli-SoC (may be relayed through the Clocker board). -The phase sync works only within one Urukul board, though the phase shift between Urukuls may be [predictable](https://github.com/m-labs/artiq/issues/1692#issuecomment-994439589). -Even though it is widely-desirable feature, there are drawbacks of this preventing from enabling by default: -1. The resulting signal is more noisy, which can be observed [previously](https://github.com/sinara-hw/Urukul/issues/64). -2. Phase sync process takes time and sometimes fails -3. ??? +Phase synchronization enables phase control from Kasli/Kasli-SoC with an absolute phase reference, i.e. you can use the phase control API in the coredevice driver. +Without synchronization the phase between Urukuls will not drift, but it can change across reboots, and the phase control API cannot be used. +Synchronization requires Kasli and Urukul to be clocked from the same oscillator with <<1ns noise, otherwise the synchronization may fail, and that's +why this feature is disabled by default. +There is no intrinsic impact on Urukul output phase noise and the synchronization process is quick and reliable when done correctly. ## Testing