2
\$\begingroup\$

I am trying to interface an FPGA to a DAC device. The DAC has a JESD204B interface so the data clock is embedded in the serial data lane (it uses the 8B/10B encoding).

The DAC still needs a clock input, CLK, (LVDS) to drive the DAC sample rate clock. It can actually be a lower clock rate as the DAC has an internal clock multiplier. I think the lowest clock rate I am required to achieve would be about 65 MHz. Obvious the FPGA needs the same root clock to generate the samples at the same/correct rate.

I am trying to decide if I can simply use an FPGA pin to generate this 65 MHz clock. I'm generally not sure if this is a good idea or not (would jitter be particularly bad?). Also, I'm not sure what is the best method to achieve this. Do FPGAs have internal constructs specific to generating clocks on output pins, would I utilizes a simple DDR output block, or would it be best to consume a SERDES or GTX?

I guess the alternative is to use an external clock synthesis chip. Two output clocks can be generated, and one is sent to the FPGA for DAC sample production, and the other is sent to the DAC for sample consumption. I don't think the phase relationship between the two is critical.

\$\endgroup\$
4
  • \$\begingroup\$ I know you shouldn't send a clock into an FPGA only through a pin connected to a clock distribution network rather than any old pin. I'm not so sure about getting any old pin to output a clock though... \$\endgroup\$
    – DKNguyen
    Apr 21, 2020 at 22:06
  • \$\begingroup\$ Don't use an FPGA pin as a clock output for a high-frequency DAC. It's not gonna be low-jitter. \$\endgroup\$
    – Ben
    Apr 21, 2020 at 22:19
  • \$\begingroup\$ @Ben, is there an evidence to verify this claim? \$\endgroup\$ Oct 5, 2020 at 14:58
  • \$\begingroup\$ forums.xilinx.com/t5/Other-FPGA-Architecture/… \$\endgroup\$
    – Ben
    Oct 5, 2020 at 18:32

1 Answer 1

1
\$\begingroup\$

One way or another your FPGA will need some kind of reference clock to work. The DAC performance will of course be influenced by the quality of its own clock.

If you use a good, low-jitter reference, the FPGA can make very good clocks using its internal PLL synthesizer block (verify this with your specific FPGA.)

However, if carefully-controlled clock spectrum is paramount (and it can be for some RF applications), you can use an external clock synth that has the spectral profile your DAC needs to achieve its performance. Choose a synth with two outputs: one for the FPGA, and one for the DAC. TI makes some good ones.

\$\endgroup\$
4
  • \$\begingroup\$ if the clock is output by an FPGA, it's not gonna be low-jitter \$\endgroup\$
    – Ben
    Apr 21, 2020 at 22:13
  • \$\begingroup\$ Your last paragraph, is a good solution though, \$\endgroup\$
    – Ben
    Apr 21, 2020 at 22:14
  • 1
    \$\begingroup\$ It depends on the FPGA. But, yes, for RF work the clock should come from a synth, or can be cleaned up with a ‘jitter cleaner’ PLL. TI makes those, too. \$\endgroup\$ Apr 21, 2020 at 23:45
  • \$\begingroup\$ How can we find out how much jitter would exist on a clock output by the FPGA and if this is a problem? \$\endgroup\$ Oct 5, 2020 at 14:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.