Contents Menu Expand Light mode Dark mode Auto light/dark, in light mode Auto light/dark, in dark mode Skip to content
Presto 2.16.0 documentation
Logo
Presto 2.16.0 documentation

Contents:

  • Getting started
  • Tutorials
    • Basic lockin
    • Basic pulsed
    • Qubit calibration
      • Resonator spectroscopy
      • Power sweep of resonator
      • Frequency and DC bias sweep of flux tunable resonator
      • Two-tone spectroscopy of the qubit
      • Rabi amplitude
      • Rabi time
      • Relaxation time T1
      • Ramsey T2*
      • Hahn echo T2
      • Ramsey fringes
      • Resonator sweep with the qubit in the excited state
      • Pulsed two-tone spectroscopy
      • Single shot readout
    • Bosonic qubit
      • Memory spectroscopy
      • Displacement calibration
      • Relaxation time T1 of the bosonic mode (coherent state decay)
      • Coherence time \(T_2^*\) of the bosonic mode
  • Functional description
  • Special topics
    • Direct and Mixed mode
    • Mixer math
    • Synchronize mixers
    • How to use HF outputs
    • How to use DC outputs
    • How to use digital/trigger ports
    • How to encode phase in Presto
    • Recommended DAC configuration
    • Plot pulse sequences
  • External resources
  • API Reference Guide
    • hardware module
    • lockin module
    • pulsed module
    • spectral module
    • utils module
    • version module
  • Stability guarantees
  • Changelog
Back to top
View this page

Recommended DAC configurationΒΆ

In order to output frequencies up to 9 GHz, Presto uses a digital-mixing stage just before the digital-to-analog converter (DAC). dac_mode and DAC sampling rate dac_fsample are two parameters one needs to choose depending on the output frequency.

Tip

Starting from version 2.12.0, the Presto API can select the optimal DAC configuration automatically based on your choice of frequencies. Just set dac_mode=DacMode.Mixed and leave the default dac_fsample=None, and the API will do the rest. For example:

with pulsed.Pulsed(
    address="192.168.20.42",
    adc_mode=AdcMode.Mixed,
    dac_mode=DacMode.Mixed,
) as pls:
    ...

If you still want to specify the DAC settings manually, or if you want to learn more, keep reading.

A helper function utils.recommended_dac_config() can recommend the optimal configuration: we just pass the frequency we want to output and it will return the suggested dac_mode and dac_fsample:

dac_mode, dac_fsample = recommended_dac_config(5.2e9)

The returned parameters can be used directly by passing them to a Pulsed or Lockin instance. For example:

with pulsed.Pulsed(
    address=presto_address,
    port=presto_port,
    ext_ref_clk=ext_ref_clk,
    adc_mode=AdcMode.Mixed,
    adc_fsample=AdcFSample.G2,
    dac_mode=dac_mode,
    dac_fsample=dac_fsample,
) as pls:

The function can also print all DAC configurations compatible with the requested frequency, and calculate the frequency of the nearest spurious signals that are generated due to digital mixing. Further, it suggests an appropriate analog filter that can be connected to the output of Presto to suppress these spurs:

dac_mode, dac_fsample = recommended_dac_config(5.2e9, print_all=True)
Valid DAC configurations for signal at 5200.0 MHz:
  * Mixed42-G8 (score 1680):
      - low-frequency spur: 2800.0 MHz
      - high-frequency spur: 10800.0 MHz
      - compatible band-pass filters: ['VBFZ-5500-S+', 'ZBSS-6G-S+', 'ZVBP-5G-S+']
  * Mixed02-G6 (score 1173):
      - low-frequency spur: 800.0 MHz
      - high-frequency spur: 6800.0 MHz
      - compatible band-pass filters: ['ZVBP-5G-S+']

Finally, recommended_dac_config() can plot all of the recommended combinations of DAC sampling rates and modes (bands of blue, orange and green), the targeted frequency, and nearest spurs in red:

dac_mode, dac_fsample = recommended_dac_config(5.2e9, plot=True)
../_images/recommended_dac_config_light.svg ../_images/recommended_dac_config_dark.svg

Depending on your application, the recommended settings might not be the optimal ones. In this case, you are always able to manually set all the configuration parameters.

Next
Plot pulse sequences
Previous
How to encode phase in Presto
Copyright © 2020-2024, Intermodulation Products AB
Made with Sphinx and @pradyunsg's Furo