Skip to main content

Q series measurement and control equipment driver interface

Project description

  _   _   ____     ___    ____           _                       
 | \ | | / ___|   / _ \  |  _ \   _ __  (_) __   __   ___   _ __ 
 |  \| | \___ \  | | | | | | | | | '__| | | \ \ / /  / _ \ | '__|
 | |\  |  ___) | | |_| | | |_| | | |    | |  \ V /  |  __/ | |   
 |_| \_| |____/   \__\_\ |____/  |_|    |_|   \_/    \___| |_|   

简介

NSQDriver为一套测控系列设备的Python通用驱动接口。可使用Python作为编程语言,基于此驱动接口可以实现对测控设备的控制,进而完成各种超导量子芯片的表征实验和高保真门操作。

                              +------------------------+
                              |          Python        |
                              |     +------------------+
                              |     |      NSQDriver   |
                              +------------------------+
                                     :     :         :
                           +----------     :         -----+
                           :               :              :
                           V               V              V
                     +-----------+   +-----------+   +-----------+   
                     |  Device A |   |  Device B |   |   QSYNC   |    
                     +-----------+   +-----------+   +-----------+   

NSQDriver接口可用于统一控制Q100/PQ系列测控仪器,可详细控制每台仪器每个OUT、IN通道的播放与采集行为,以及查看设备的运行状态等。在一个多台测控设备组成的多比特测控系统中,可以有效的在软件层面实现对系统中每台设备的详细控制。


快速开始

  • 驱动接口的通用流程如下
from nsqdriver import MCIDriver, QSYNCDriver

# 实例化设备驱动接口
driver = MCIDriver('127.0.0.1')
qsync = QSYNCDriver('127.0.0.1')

# 连接设备
qsync.open()
driver.open()

# 初始化系统
qsync.sync_system()


# 相关参数,参数细节相关参考 8.可用参数列表
driver.set('Shot', 1024)
  • NSWave语言
    • NSWave是一种对于Sequence序列发生技术的配套编程语言,属于python语法的子集,支持与python程序进行混编
    • Sequence序列发生模式将测控所需的各种门的编辑由主控计算机直接生成波形转化成了设备实时计算
    • 提供了一套直观的时序编辑接口
from nsqdriver import nswave as nw
from nsqdriver import MCIDriver
import numpy as np

@nw.kernel
def program(envelope: np.ndarray):
    srate: nw.Var = 8e9
    time_width: nw.Var = 6e-6
    freq: nw.Var = 4.1e9
    time_line: np.ndarray = np.linspace(0, 6e-6, int(time_width * srate + 1))
    wave: np.ndarray = np.cos(2 * np.pi * time_line * freq)
    frame_0: nw.Frame = nw.ins_frame(0e9, 0*np.pi)
    frame_1: nw.Frame = nw.ins_frame(4.3e9, 0*np.pi)
    envelope_0: nw.Envelope = nw.ins_envelope(wave)
    envelope_1: "nw.Envelope" = nw.evlp_gaussian(2e-6, srate)
    envelope_2: nw.Envelope = nw.ins_envelope(envelope)

    nw.wait_for_trigger()
    nw.reset_frame([frame_0, frame_1])
    nw.wait(3.2e-6)
    nw.play_wave(envelope_1, frame_1)
    nw.play_wave(envelope_0, frame_0)
    nw.inc_phase(frame_1, np.pi)
    nw.play_wave(envelope_2, frame_1)

    return nw.Kernel()

driver: MCIDriver
envelope = np.ones((10240, ))
driver.set("Program", program(envelope), 'S5-O1')

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

nsqdriver-0.0.400-cp313-cp313-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.13Windows x86-64

nsqdriver-0.0.400-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (9.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.400-cp313-cp313-macosx_10_13_universal2.whl (2.7 MB view details)

Uploaded CPython 3.13macOS 10.13+ universal2 (ARM64, x86-64)

nsqdriver-0.0.400-cp312-cp312-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.12Windows x86-64

nsqdriver-0.0.400-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (9.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.400-cp312-cp312-macosx_10_13_universal2.whl (2.8 MB view details)

Uploaded CPython 3.12macOS 10.13+ universal2 (ARM64, x86-64)

nsqdriver-0.0.400-cp311-cp311-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.11Windows x86-64

nsqdriver-0.0.400-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (9.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.400-cp311-cp311-macosx_10_9_universal2.whl (2.8 MB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

nsqdriver-0.0.400-cp310-cp310-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.10Windows x86-64

nsqdriver-0.0.400-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (9.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.400-cp310-cp310-macosx_10_9_universal2.whl (2.8 MB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

nsqdriver-0.0.400-cp39-cp39-win_amd64.whl (1.2 MB view details)

Uploaded CPython 3.9Windows x86-64

nsqdriver-0.0.400-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (9.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.400-cp39-cp39-macosx_10_9_universal2.whl (2.8 MB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file nsqdriver-0.0.400-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 f5a7518d7fa14502719e46bea77c08a2bc25527051a0eb8a0549814d3c96397e
MD5 c8e810d908e28103764677327b949bde
BLAKE2b-256 1890fb5e23093fd5293afa77633f7b0f72bdfa659fe1364de3b7949b1639620b

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 ab316963967239025272fb3231e2a1236ba8f391b2601c8adef5ec575dc63302
MD5 2625f9477c5dac8e61d3a487425d5bba
BLAKE2b-256 0d40bf0d20a7415b3d3a1d93208db09e0809fca376b812cfbe8aa3ae9a1f88c8

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp313-cp313-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 c1a5c17ce560c23923bc635f582466915fefeb4878e0e1c863ee4e4997fd18bd
MD5 aea158bbbb4cc4c1a47737ec4ab2d72f
BLAKE2b-256 78508ceb7a64c3e8169f823632034cd8318ae0e66dbbff827b3a28767ef755dc

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9ae65de1c775dd0b6b6d8e5604f46a50d8b29f3c9d51437eb6f3c379c8589a40
MD5 4b3d8bcb69e578c334717bc8f85d5219
BLAKE2b-256 9295cb54d3e3ab16725e5e3e1f7193368f6d55449957ff791d1c2558a955b96b

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 48efbcfd33bf3f93a62047cd1175008e2942ad1e4b068da96b1cb84d464ef9df
MD5 ade9bec579f8d168eb9f3ebd94f7c08a
BLAKE2b-256 0ae996b79493f3d499039c77dfe00fcdfded3acca1448fdefdd77b979f3b05a0

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp312-cp312-macosx_10_13_universal2.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 a2c49c21558460728ae49c86a12fcb28208d56ddb6cf4527ba79d4959920a19c
MD5 685ea6c91cdeacc0ce4729dd801bb76e
BLAKE2b-256 2b3bed423e1fedb97b3e23c8a29b1bc94b994ce291f4451d444aa7c61e409a32

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 d47ea07f24f5d896c09c142aff006486c5051d0d80f4eb53ae013214844178de
MD5 5dcf1cce086ce44b524e3693be5c808d
BLAKE2b-256 6ba92374612f9cf932722e4ed0bfa42bda6efd8e95886ebb1eefd0481e4da9d3

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 681e4d938f77dd8c5f76ec6f3ae2c4d3d275caf66172ed0ea50b83ea8fb6d9fd
MD5 4118297c0f762695ab373c46f81b9756
BLAKE2b-256 42a34fe117329ca24984cd0d284eda20d2b335dea1e823afb82c67cc6fc2f396

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 a5470346f167c279f54c826d77382dba71870f98dd91128c82ba69330e792b5d
MD5 1956f62ce86086c6429fbe4d0dea9875
BLAKE2b-256 58ab2f9d4043ae552e8255092658beee9139d2d29156fa35d8d763b1b6807616

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 999eed4ff08c6170d75cf2b08e85ff8dc3d115fbcd987b8e5819f574489ef4f6
MD5 b77894743b7d811bfe5e2a6b27578f1a
BLAKE2b-256 8485fa224280e27e655af178c006a874c3067213c0182fcc9751d018fc264fde

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 a75ec30fb19d506f105206c212614bf0608cedb2980363e3c630f6fef3b7d5e2
MD5 0b77213344e5e21d587260a63d847fe9
BLAKE2b-256 ff8c04d9ab6474ae5d3fedcaa07e8adff71cbcd3fb60aeab646fb36ab2dedb27

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 434d8ecf13a263704ed9a87f80fa2c036b20da44b8bdf1ac1dc75bf943d2ffa9
MD5 2d33965855e193d5bd112e83e417f524
BLAKE2b-256 9028d020f6d18ea352ca801584316f729e6d5614567590f372db7f8eec67cf2c

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: nsqdriver-0.0.400-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.13

File hashes

Hashes for nsqdriver-0.0.400-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 c67b22c824fbed67210c8971c0ec0d2e562c55af801ffe4bdc8ae6c7da282c80
MD5 999b3ae29397a76dcf389709f2f19fac
BLAKE2b-256 5df8a9bb62104a34bf0a49fb5b92eed4a9dc8bbe993d4b44674147f135932f45

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 df74478aed44c8d4e197f5b955311b929eb87532189e4c6c12da01b68ce57997
MD5 9f59bc35534cca26c1b77608ae8e94ba
BLAKE2b-256 efb88e898c2db2bd10c8715a67955688f6256ec6f694ed1ee0318e207ea80ab2

See more details on using hashes here.

File details

Details for the file nsqdriver-0.0.400-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.400-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b9929dd72c59f64790aff47521afec2650c017d07c3419aadb7a97acb1b88f15
MD5 329240e0e8603d9f9137f832a95726c6
BLAKE2b-256 62acfb2938d8ca440812f46096334e82ede6fabfbc2451afe68e9f3338d9c760

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page