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

Uploaded CPython 3.14Windows x86-64

nsqdriver-0.0.402-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.5 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.402-cp314-cp314-macosx_10_15_universal2.whl (2.6 MB view details)

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

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

Uploaded CPython 3.13Windows x86-64

nsqdriver-0.0.402-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.402-cp313-cp313-macosx_10_13_universal2.whl (2.6 MB view details)

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

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

Uploaded CPython 3.12Windows x86-64

nsqdriver-0.0.402-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.402-cp312-cp312-macosx_10_13_universal2.whl (2.6 MB view details)

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

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

Uploaded CPython 3.11Windows x86-64

nsqdriver-0.0.402-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.402-cp311-cp311-macosx_10_9_universal2.whl (2.6 MB view details)

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

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

Uploaded CPython 3.10Windows x86-64

nsqdriver-0.0.402-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (8.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

nsqdriver-0.0.402-cp310-cp310-macosx_10_9_universal2.whl (2.6 MB view details)

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

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 db35648161959070e9d64ae05a1edeec47cd8e15c9714db6d95149701ace2ae8
MD5 d476de2a0ea0731bfd1900559a971180
BLAKE2b-256 e0686af8b94dd147724a03cf5bd32bb29cff44acebb546718cbcaa5c3841ae54

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 01a94450808e0546a7c20ceeaa7e3b4f8d75511019bdc14505c319dbb15df090
MD5 ae53e169a64d0818ee38b4497f5d0a82
BLAKE2b-256 c8ae9da823c1c3f00edef8adeb0a91d8627064859d00835d868d623f3ee8f292

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp314-cp314-macosx_10_15_universal2.whl
Algorithm Hash digest
SHA256 1aab7abcf17aac5b021116ee9915a789c3ac0dbd5cea34b975c88d881138672e
MD5 42907743b3155825ae13de2a118781b6
BLAKE2b-256 8015873c668974bf5fde03bbbc95a197505c4889e0c8a7dbfe95c49f405b7a9c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 dfebd626a790bdb6357dc0a41d275ae883edbe9ba47a1b8a8e42f27ebbdc4abf
MD5 557cf2b84947381353cc3167f614064d
BLAKE2b-256 3e4148b1f797a49feb417be095a91a8a5715ba24e3789dc9e14bd8e7cfe8a1da

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 8cdf2242c80580f458806e4115e7f870dd9fa062cea8159e079c60885ad7fd79
MD5 242e16b479fe98923c710ef9f1f092b0
BLAKE2b-256 e20d97fb977650edd4de51d8138446d60da0cf59d21978f2fb4e6516af37bf96

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp313-cp313-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 eb35534f515aa875cae80123bd91dba034c40e76328b0402ed56a94c377847d0
MD5 c59e7304efaef5d624ffbcd1dbfe2ee5
BLAKE2b-256 a028f40bacccda14144d47fb7e10bf2b8e6080f1b3c4fb7a69f70bb83a31e8bd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 afaf847d91df835d105433adab8f6325882a365acc2830097e9328e6b4da3e4b
MD5 8aa5e98499416185909609e66048cac2
BLAKE2b-256 c7d15be9ee751e8e2cb04857d2d8966bd8d2c8fed258564ecf0cdb6e2f483956

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 dbaa9c738f3a89b8d151593e0a11782b2cd3b05e8e4f8d1f1b92f109603a02d7
MD5 85e5809074548932d50309f3ba222baf
BLAKE2b-256 1a4e1bfbb5359d48656f66299b00548c211ec720500ab6ca629c3532a94d0a4e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp312-cp312-macosx_10_13_universal2.whl
Algorithm Hash digest
SHA256 45404897bd93ac744bb3fef3571f33a968b579f022f610fad667e226354c6a3f
MD5 499d801a98c3f82df6c5a33479d58b1b
BLAKE2b-256 9a2a090f77117793ce1194ae86314a2e8a3fa316aceb5436f5221ecac068df9a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 607d7b6ef4aa7bc5722ae0265f4a3be8f7126cca9eb40455b91a2cbd2c686754
MD5 66fee9b4c8de3f523ea5ae53a847da2b
BLAKE2b-256 e3c33fb7541eed54736dd51060ad6573af5536bdce1304712073499ad97c9e50

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 99fa71a48719e493f5af75f943a225f49ac0475f93ee08223980a55b6ec41e5b
MD5 bb1e17520821b1fbd1cc2d797cccc38c
BLAKE2b-256 0003ab0f1c37be7e7e146a9d5234a0f0c5bcd34801d7a870052ea59378e2a260

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 ab382c437e9d401ffdb44134d7f8051248436e493b4c625a751b9ca587d7c3d0
MD5 b539b486beb01d31a1fdb9bf4f2fe1b0
BLAKE2b-256 073874f4857a5762c27e7786ae612697b13ad573e49ac1d8dcec38b70210c224

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 3bb921edb4fa19db792035f08b9349b7d41c439eba250109877f0d7f3c7f8ae9
MD5 d134e162908ca23e54d09a877c90c29a
BLAKE2b-256 9ebe2f5d679a13abc7427a78625c31b023cacfc82799e79e34d2ddece7b9ba3b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 b5f31904a050e65685d05824624ca526323df57945c9ea0b4d52789e934ef635
MD5 0dc6173637ac1b686bd1165c0993325e
BLAKE2b-256 f9bdebc2fc002ca27ab461ce3aef300dabc9bb781c536e436dc8664573f152fe

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nsqdriver-0.0.402-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 a1b0d5c9671cc01f03f9a3555ff59ed10185e180d8e8d971dc871e681228e190
MD5 bf9ba30968f5862390019ee914f0ee70
BLAKE2b-256 1030bc4a13a07d3e4c4fb09cc304d29c5007c1696657dd27a057b4f957904bbd

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