Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use triggered mode for QM local oscillators #856

Merged
merged 11 commits into from
Apr 8, 2024
Merged

Use triggered mode for QM local oscillators #856

merged 11 commits into from
Apr 8, 2024

Conversation

stavros11
Copy link
Member

We found that using the always_on mode leaves the LOs on even after execution. This may cause issues related to LO leakage, if the mixers are not calibrated and the LO gain is very high.
Using the triggered mode allows the LO signal to pass only when something is playing in the corresponding port, by sending a simultaneous digital trigger.

I have done some quick tests with qw5q_platinum and this seems to maintain results. I have not confirmed whether the LOs are really turned off.

@stavros11 stavros11 added the qm label Mar 27, 2024
Copy link

codecov bot commented Mar 27, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 66.75%. Comparing base (abe3698) to head (0d6c4b5).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #856      +/-   ##
==========================================
+ Coverage   66.66%   66.75%   +0.08%     
==========================================
  Files          55       55              
  Lines        5901     5916      +15     
==========================================
+ Hits         3934     3949      +15     
  Misses       1967     1967              
Flag Coverage Δ
unittests 66.75% <100.00%> (+0.08%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@stavros11 stavros11 requested review from alecandido and igres26 March 27, 2024 08:06
Comment on lines 4 to 8
DIGITAL_PULSE_CALIBRATION = {"delay": 57, "buffer": 18}
"""Calibration of digital pulses used for LO triggering.

https://docs.quantum-machines.co/1.1.7/qm-qua-sdk/docs/Guides/octave/#calibrating-the-digital-pulse
"""
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't this be part of the instrument settings?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In principle yes, but given that it is very instrument related (I don't think we are using digital pulses with any other instrument, I am not sure if they even support them) and therefore we are not going to calibrate it, at least using qibocal, I would hide it from the runcard to not confuse users. If I put it in the settings, qibocal will dump it automatically in the runcard.

As an intermediate solution, in 9e2a7b4 I moved it to port fields, so that at least it is possible to modify it when creating the platform (but in the create not the runcard).

src/qibolab/instruments/qm/config.py Show resolved Hide resolved
Copy link
Contributor

@andrea-pasquale andrea-pasquale left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @stavros11, just two minor comments.

src/qibolab/instruments/qm/ports.py Outdated Show resolved Hide resolved
src/qibolab/instruments/qm/ports.py Outdated Show resolved Hide resolved
Copy link
Contributor

@igres26 igres26 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we need a bit more use to be sure, but it also works fine for me.

@stavros11 stavros11 merged commit f3e9dce into main Apr 8, 2024
24 checks passed
@stavros11 stavros11 deleted the qmlotrig branch April 8, 2024 11:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants