Hello,

to fuel the discussion and planning of the smart arbitrary waveform
generator requirements for the different applications, I did another
extended design study for the proposed ARTIQ/Sayma DSP gateware and
signal flow, looking at actual signal quality, resource usage and
possible parametrizations.

This time, take the following parametrization of a channel's output o:

z = (a1*exp(i*(f1*t+p1)) + a2*exp(i*(f2*t+p2))) * exp(i*(f0*t+p0))
o = u + b*Re(z) + c*Im(z_buddy)

* u and a are 16 bit cubic spline inteprolators
* p are 16 bit constant (non-) interpolators
* f are 48 bit linear interpolators
* z_buddy refers to the (complex, IQ) z data coming from each
channel's "buddy" channel, ignore it for now
* b, c are switches (with values 0 or 1) that allow a bunch of
different configurations, ignore them for now
* all spline interpolators (u, a, f, p) sample at 200 MHz
* the f1/p1 and f2/p2 oscillators sample at 200 MHz and their data is
fed to the f0/p0 oscillator without interpolation
* the f0/p0 oscillator samples at 8*200 MHz = 1.6 GHz
* data width is at least 16 bit everywhere

This setup can -- for example -- generate a two-tone signal at 162 MHz
and 238 MHz by setting f0=157 MHz, f1=5 MHz, f2=81 MHz. The attached
plot has the data and the spectrum from a bit-accurate simulation of
the full FPGA gateware. Units are "natural" (sample rate=1, full
scale=1): the relevant tones are close to 0.1 and 0.15 sample rate.
Output amplitude is below clipping.

This is a bit-accurate representation of the data that would be sent
to the DAC. Actual analog output would only differ by the DAC's
interpolation and it's analog output transfer function and DAC noise.
Don't be confused by the way the samples look: this is only due to the
un-interpolated data from the f1/f2 oscillators. Same goes for the
Nyquist images all around. A very rough and conservative estimate for
wideband SNR is > 85 dB not counting the images. There are a lot of
things that can be tweaked still, this demo is not supposed to be show
the optimum.

* 200 MHz is a bit under maximum achievable speed for this logic on a
-2 speed grade kintex 7.
* 1.6 GHz * 4 channels is more than we can push to a DAC. The design
can obviously also run at 1 GHz (f1,f2 at 125 MHz, f0 at 1 GHz) which
would just about fill eight JESD204B pipes.
* The design can also be built for 800 MHz with significantly lower
resource usage (then running the f1,f2 NCOs at 200 MHz, f0 at 4*200
MHz = 800 MHz). This would free a lot of room on the FPGA, fit the
JESD pipes, and would still be able to comfortably generate the signal
above.
* DAC interpolation could be 2x if desired to get to 2 GHz or 1.6 GHz
DAC sample rate depending on the choice of scenario.
* Eight channels of this 1.6 GHz design occupy about 62% of the LUTs
of a xc7k325t (without _any_ other logic like everything related to
the transcievers, ARTIQ, DRTIO, FIFOs...).
* Wrapping it in a minimal ARTIQ system brings the LUT resource usage
to about 72%.
* On a xcku040 the utilization estimate (same gateware as for the 62%
xc7k325t system) is below 51%, (can't get a good number because of a
Xilinx-Vivado bug).
* Take the LUT usage percentages with a grain of salt. They don't
react kindly to extrapolation.
* Interpolation schemes for the f1/p1, f2/p2 oscillator data before it
reaches the f0 oscillator might be interesting to look at.
* Spline knot behavior (ramping, switching, synchronization, latency
matching, interpolation) for frequency, phase, amplitude is as
expected (see e.g. the pdq2 documentation).

This demonstrates that we can actually get very good high-data-rate
two-tone signals for eight channels out of gateware that fits on
currently available development boards. The parametrization is
intuitive and extremely flexible (you can e.g. rewire it at run-time
to exploit and feed the full IQ datapaths of the DACs giving you twice
the bandwidth on half the channels and all the other features in the
DAC and downstream). Any set of spline interpolators can receive new
knot data at the same time from their RTIO FIFOs: there is no
contention. The design works just as well for driving electrodes (the
u spline and maybe one of the oscillators to prod an ion). It is
broadband (the f0/p0 oscillator covers the entire data bandwidth). The
gateware as-is could also feed two IQ pairs at 1 GHz giving you full
and instant broadband access with each pair to 1 GHz IQ baseband in
the first Nyquist zone which you can up-convert in analog RF to
wherever you want. Or you can rethink it and feed it two IQ pairs at
600 MHz (4*150 MHz), use 4x interpolation and cover 2.4 GHz IQ
baseband with each pair using the DAC's fine or coarse modulation
schemes.

If there are questions about this, I'd be happy to answer them. We'd
also be happy to generate a quote for an implementation and/or a
hardware demonstrator system.

Regards,

-- 
Robert Jördens.

Attachment: phaser_2fd7bfd.pdf
Description: Adobe PDF document

_______________________________________________
ARTIQ mailing list
https://ssl.serverraum.org/lists/listinfo/artiq

Reply via email to