Clock generation problems on Husky

Hello everyone,

I’m testing the limits of Husky and evaluating some situations, but I’m encountering a strange issue.

I’ve always set the main parameters in this way:

cw_scope.glitch.ext_offset = delay // (int(1e9) // int(cw_scope.clock.clkgen_freq))

For example, if I have a delay of 10700, measuring with the oscilloscope gives me an actual delay of about 10.73 microseconds between the trigger and the glitch_output.

Some measurements by varying cw_scope.clock.clkgen_freq:

  • 50 MHz → 10.82 microseconds
  • 100 MHz → 10.76 microseconds
  • 200 MHz → 10.73 microseconds

However, if I exceed 200 MHz, I get “anomalous” results (measured with the oscilloscope):

  • 220 MHz → 12.19 microseconds
  • 250 MHz → 10.73 microseconds
  • 270 MHz → 13.24 microseconds
  • 300 MHz → 11.91 microseconds
  • 320 MHz → 11.17 microseconds
  • 350 MHz → 15.31 microseconds

Husky warns me that I’m exceeding specifications: “ADC frequency exceeds specification (200 MHz). This may or may not work, depending on temperature, voltage, and luck.”

However, shouldn’t it support clock generation up to 350 MHz? Are there other settings I can consider changing to achieve a more stable and accurate situation?

Thanks in advance.

Clock generation is just that, generating and outputting a clock.
Husky itself won’t be able to work reliably with a clock > 200 MHz; all the logic inside Husky which use the ADC clock (like counting cycles for ext_offset) is only rated to 200 MHz.

Thank you for the reply.