artiq icon indicating copy to clipboard operation
artiq copied to clipboard

Support MIQRO mode for Phaser

Open jordens opened this issue 3 years ago • 4 comments

ARTIQ Pull Request

Description of Changes

This PR adds ARTIQ RTIO, coredevice, tester, device-db support for the Phaser MIQRO gateware mode. MIQRO is a research DSP solution that supports 16 oscillators per RF channel within a 200 MHz band, 32 frequency/amplitude/phase profiles per oscillator with phase-coherence built-in, and a quadrature shaper with a highly configurable interpolator and segmentable window sample memory suitable for temporal/spectral shaping, robust pulses, and optimal control. The complete pulse data comprises just 90 bit and can be selected and dispatched from Kasli at high sustained rate and low latency. See https://www.youtube.com/watch?v=HiKkvydfYLk for a sneak peek where oscillator profiles and windows are chosen based on ADC voltage samples.

image

Related Issue

none

Type of Changes

Type
:bug: Bug fix
:sparkles: New feature
:hammer: Refactoring
:scroll: Docs

Steps (Choose relevant, delete irrelevant before submitting)

All Pull Requests

  • [x] Use correct spelling and grammar.
  • [x] Update RELEASE_NOTES.rst if there are noteworthy changes, especially if there are changes to existing APIs.
  • [x] Close/update issues.
  • [x] Check the copyright situation of your changes and sign off your patches (git commit --signoff, see copyright).

Code Changes

  • [x] Run flake8 to check code style (follow PEP-8 style). flake8 has issues with parsing Migen/gateware code, ignore as necessary.
  • [x] Test your changes or have someone test them. Mention what was tested and how.
  • [x] Add and check docstrings and comments
  • [x] Check, test, and update the unittests in /artiq/test/ or gateware simulations in /artiq/gateware/test

Documentation Changes

  • [x] Check, test, and update the documentation in doc/. Build documentation (cd doc/manual/; make html) to ensure no errors.

Git Logistics

  • [x] Split your contribution into logically separate changes (git rebase --interactive). Merge/squash/fixup commits that just fix or amend previous commits. Remove unintended changes & cleanup. See tutorial.
  • [x] Write short & meaningful commit messages. Review each commit for messages (git show). Format:
    topic: description. < 50 characters total.
    
    Longer description. < 70 characters per line
    

Licensing

See copyright & licensing for more info. ARTIQ files that do not contain a license header are copyrighted by M-Labs Limited and are licensed under LGPLv3+.

jordens avatar Sep 05 '22 07:09 jordens

@jordens this looks really interesting! Is there a Phaser gateware variant needed to make this work? If so, where can I find it?

cjbe avatar Sep 07 '22 13:09 cjbe

It's part of an ongoing research project for which the phaser DSP gateware isn't available.

jordens avatar Sep 07 '22 16:09 jordens

Are you planning to release it? Otherwise I don't see the purpose of a PR here.

sbourdeauducq avatar Sep 08 '22 23:09 sbourdeauducq

We are testing it with pilot users and want to evaluate it with some others. And then later it will be certainly be released under TBD terms. We may as well just fork and keep it closed if this is hitting any resistance. Not a hill I will die on.

jordens avatar Sep 09 '22 07:09 jordens