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.12.20-cp314-cp314-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.14Windows x86-64

nsqdriver-0.12.20-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

nsqdriver-0.12.20-cp314-cp314-macosx_10_15_universal2.whl (2.5 MB view details)

Uploaded CPython 3.14macOS 10.15+ universal2 (ARM64, x86-64)

nsqdriver-0.12.20-cp313-cp313-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.13Windows x86-64

nsqdriver-0.12.20-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

nsqdriver-0.12.20-cp313-cp313-macosx_10_13_universal2.whl (2.5 MB view details)

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

nsqdriver-0.12.20-cp312-cp312-win_amd64.whl (1.0 MB view details)

Uploaded CPython 3.12Windows x86-64

nsqdriver-0.12.20-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nsqdriver-0.12.20-cp312-cp312-macosx_10_13_universal2.whl (2.5 MB view details)

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

nsqdriver-0.12.20-cp311-cp311-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.11Windows x86-64

nsqdriver-0.12.20-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nsqdriver-0.12.20-cp311-cp311-macosx_10_9_universal2.whl (2.5 MB view details)

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

nsqdriver-0.12.20-cp310-cp310-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.10Windows x86-64

nsqdriver-0.12.20-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

nsqdriver-0.12.20-cp310-cp310-macosx_10_9_universal2.whl (2.5 MB view details)

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

File details

Details for the file nsqdriver-0.12.20-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 11588fd635fe3ef44320cb31218e9eda396b804c0168a106343d99b0a87152ab
MD5 3467ffabd1bd51187c29fd8136b8a089
BLAKE2b-256 df2ff9ded08981f8e73037eb40e079ba62fa7362382bb70144a1ba15acbfef3a

See more details on using hashes here.

File details

Details for the file nsqdriver-0.12.20-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 a6731db35347a4d194c1fb362bcbcef1a8e2b14743057e945313d1dc8adef714
MD5 d3418ab90db67a61b247d997caf9cf47
BLAKE2b-256 18bd087d2806b167582082d5e2121a1a4f577a4df2233a735c8f2439481d015c

See more details on using hashes here.

File details

Details for the file nsqdriver-0.12.20-cp314-cp314-macosx_10_15_universal2.whl.

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 1db366a103e7f95a59537a8b2367b38f3f159691ce279092f3ba87d63a8b4280
MD5 06a0423c41e5aacc09a4fbf7d51c3dc7
BLAKE2b-256 8f3018ab21614c29d6aeb317e4eef5dbc330602ebce9c50304d831d3c48e5727

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 36fd8d5deb6b2737e90e31e9967cde0060d7dc44d2d878af4b5b4ab88890c71f
MD5 f9e24d0eed14a8e2773f2a49a5a53114
BLAKE2b-256 9184a4f971087e036d2681b672b42b08ee223d521e4451a218434334336f0841

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 fef3d9e092a903f32a740244cc0212e0fe208834c6578296facb8d2ef8c30bf8
MD5 ce5e32aa3b8b91e1539313eaf5329f18
BLAKE2b-256 231d5e106f73f2e470e12e92be97ef9b17323d106f2c7ceb9d4591f2ca44b984

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 4232c975b9815deb8383eab98f441e050cac9d509fcc3e70497ce2a3deb0bf9f
MD5 a8a9963f4b74b8ce4063ebd4ed4974e9
BLAKE2b-256 509b385de47efc9a0789855229f4b53bae6e9a9f776afe97a0cee189482376db

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 cb5669d5bf200b01416b58a3d0e110dfeb1245911eec40fd21398fb2db94d5e3
MD5 6a697bd7e29898f3484c896b59f43231
BLAKE2b-256 aaa49f82deb7b5576e7f25ff9b3d76a77176a37e3e55f4decb1e1fdbdb946706

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 06bad24ac28409f7a0c3141d02244451f5a47b5a787b2133ac2085b2c2149bc1
MD5 b4b54a319b65b5b39ec088ebf8893a28
BLAKE2b-256 7a231cfdb30dbd5778af9e937b7fc9f4b790cd65ab6dfb68a1772c264434768d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 cdda5416bca9fe420847eb6a809a73c1f76219f4633c1892ef6bf80c089dc1c7
MD5 77f576256415f3a35674cb17c7c7fd4f
BLAKE2b-256 2739cec6445c8f4173ca561d606d4986c009e2a1d3474db3f72eb9edc2ce76e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 777e4e90b7b495c668aa42545841030f19d3817e17a9d6e869adb565ae0d8f92
MD5 fd9cab7310d4ff187b4e642d3cc8bb79
BLAKE2b-256 0dd9315c2c845559ed3b17d4239445fe35eadf963447de9404f10b5131d505d2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 5bb0801422a03c6f93c46f8475e9746a4624b54ce4ec4c515bcbdbf5e06693f1
MD5 246d1f09704911fb0d31824582f513d4
BLAKE2b-256 e022105d5ed8a715e93bdc34332ba9ede5b8e877e0564e151cad2c6a4ef1d373

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 ea57bf487c7db11b9da1413ec1abe5224dd5141fb0c0d9779ce93c6bd98165f8
MD5 0aab574d453785b67ad836189249f2c6
BLAKE2b-256 e032e2b82250d70d3cc96cf981860cd86a1c9e0aa9657c9c045a9579d5ff27b4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3f662b79fbdafc51af4c6ff080703c26abad96e9a6a81c89694797e0016b1ccd
MD5 d42965673df081e68b39d1b673e015d1
BLAKE2b-256 101be6a8e68787868a54a254a4625143fe6580e0397b025d09997c44fcf05736

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 ec982b00c65c970402f0ed7674e14acb95ead2df33d6f3e6d43b6a252802e3e8
MD5 169a0b3c6d8656514c2a6b11a92e5b29
BLAKE2b-256 d1ded9cde8eeee8e7f834ec787ec1c4a2a2bea1ee89989d568fc3cc29dc5440f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.12.20-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 5e7c64633fca8899ca52819155f05003347a0ac313943e5d2b4f65941a5b4fa2
MD5 e2b3581454d687b9d497e5bb0338c6d2
BLAKE2b-256 44087e1863923ab621db47b03a1f9fce14a179914cf95dd92686f566f4df46b5

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