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

Uploaded CPython 3.14Windows x86-64

nsqdriver-0.0.242-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.1 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.242-cp314-cp314-macosx_10_15_universal2.whl (2.4 MB view details)

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

nsqdriver-0.0.242-cp313-cp313-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.13Windows x86-64

nsqdriver-0.0.242-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.242-cp313-cp313-macosx_10_13_universal2.whl (2.4 MB view details)

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

nsqdriver-0.0.242-cp312-cp312-win_amd64.whl (1.1 MB view details)

Uploaded CPython 3.12Windows x86-64

nsqdriver-0.0.242-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.242-cp312-cp312-macosx_10_13_universal2.whl (2.4 MB view details)

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

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

Uploaded CPython 3.11Windows x86-64

nsqdriver-0.0.242-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.242-cp311-cp311-macosx_10_9_universal2.whl (2.4 MB view details)

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

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

Uploaded CPython 3.10Windows x86-64

nsqdriver-0.0.242-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.242-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.0.242-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 16a629b055f52dbdc2af9a913d4dff5c0d0287d375993bdef2468bac7ce7aae0
MD5 c309d84528634803535dbe6a3c8a4687
BLAKE2b-256 51e7a0c03b3750615dcad710bc37ccfbd68472804a30687ac26b2ffd090a25df

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 a9e019b35662311dffd1a829085302a9ac33cfd631e863cd0fee987abf319067
MD5 57eb31eb4a3b3d050fb8412eb5348986
BLAKE2b-256 850505bf0ac910d28516b1a91268ee245266ab72607bde53311e338a0d30e3c4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 ecb7d191c44b8c77cff077f91ae993886f424f266f88fd9f66301b482f23b183
MD5 b86cb94d712b492365ded2e57c13e340
BLAKE2b-256 40f22786570dca564b95ba6a1f211e55d1cb8382b229ba3c85aece0db69dad58

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7a4d9093b75d57efad7ae50f83334b474eb16b0f2e0152955b7fcee900f031d4
MD5 aa26491bf35980f917b9d817c8cb0f42
BLAKE2b-256 5b80ab21784cd4e40dd6e147a7cc66234b965f64cce056ffc171c6c33639dbf5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 e780ed2abc3511ecb1447e21173bbe8bd6e7d0e567492fef7edc40d7632b8c4a
MD5 e3f593c434535bf31171e568a430949a
BLAKE2b-256 643f008fd74be378a8876ec8c4b09fa4c927cac843f244f6d27579eb45607b8a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 478614a81543eb8c74478b867265662de6fa7e9cc7245654cf99f78d61c12c4e
MD5 8a35910d43d3adb341afa528ce348458
BLAKE2b-256 cd90ace2349d623ee82ac448de7d01cc7e9b05979a112e8f60dae7c1c6a3aae4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 8ed6a931fdb2d889dff29f51fe14c78547aec875e94a5b25b426b763ad242545
MD5 1bd48524f8cc77cb77029b9ebd2770f8
BLAKE2b-256 52f34be6045ccf92d8cd63aeb6e13769a5c4e4fd7d937e7a9c205185bff993f7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 fabca424587887f26544edf3bfb6b443b95b6153e6a6889c720069898f522b2b
MD5 2bad2e08001c86ad20e6b73d4f95116b
BLAKE2b-256 066c2608e694917dafea81b6953161d0c2a7fe933e506a6fcb3b29501215213f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 2012b4b3f4f15cd9013da694f9e8fc34ebf71140809d646b8f0f2d46ef261110
MD5 7ecf2b1f2a85b8ecd8fc2213f7623a35
BLAKE2b-256 953764163b495d477d2f744346ae41b943efc6cd153876a70dd19ae1b7e45289

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 ccb2e298719bbaa5cd644d7ac739bc3a613a1019d21f987c90228e4e1e2a67b4
MD5 380a2219e52f1261b12d24fbe758495f
BLAKE2b-256 a9ab793c10ffef195c39c3796b68ca36bb18fa5c5aa2a588caf687a0fde86a14

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 0f2f080ea687f5c9f0748f07a738f5d8ec21d09fbda39de1e0b3cf40c3f32540
MD5 dc7f418d8eb34197dec992d38524ca0c
BLAKE2b-256 60809d784116f41c06261e298ef7b36499f7aff19ebad98eba78d2ec180cb455

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 5697ee3ef4ab84d8d723164068220c60aa4bc0316e0fd587e8d98fa7ff0f5df3
MD5 9bcafc52d8535cad87cd71caf05cadab
BLAKE2b-256 4bd7e8f3eaf90a03e1ee6f0a3b885d3c3b40475cc984510cd8fc4b2c932f758a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d0fc6c7e0820e1634e4659498102fedee8690e97434878cbd1c7296bda38d20a
MD5 cf9dd0e15183765ea07f57e68a7d0322
BLAKE2b-256 4f08d31c7477a983d5361ed7abc8383f8951cbc6ce99105fc8905247bf8bc053

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 3ee27fed396b2c593a6b08f4fb40459e59576f18139b4d56b8f777130e987b64
MD5 b8b629120357cab7e21eb37dad65fa3e
BLAKE2b-256 973f15f46b26110d3b6bf102d02dddc0352e3d52a1d2e206e7e564ef1c1eeca9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.242-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 b606ba4f2424c3d811b8991d29ac7ba92126e22def4e8451332e74b2137b370e
MD5 d29c1d7b20757d9a80d88632110bc21e
BLAKE2b-256 5c804b8559a1c60887976c2e3900290f4df76951c24cc6626eab809cb30f07c6

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