跳转至

QCIS指令说明

云平台新机型所包含的原生门包含如下操作,X2P, X2M, Y2P, Y2M, RZ, I, B, M.
除此之外, 云平台也配备了复合门操作:X, Y, S, SD, T, TD, Z, H, RX, RY, RXY.
其中,原生门在量子计算机端将不再被转译而直接执行,复合门则一定会被按照规则转译成基础门之后,再交由量子计算机执行。 这一转译过程目前不能被屏蔽,但不排除后期优化更多,将复合门调教到最优作为基础门提供。
如果不希望量子计算机前的环节修改你的程序,请尽量使用基础门进行线路设计。

表1描述了原生门的定义及验证规则

表 1: QCIS原生门的使用规则

指令 说明 QCIS 指令示例 验证规则
X2P X2P = R_x(\pi/2) = e^{-i\pi/4 \, \sigma_x } = \frac{1}{\sqrt{2}}\left[\begin{array}{cc} 1&-i\\-i&1\end{array}\right] X2P Q1
X2M X2M = R_x(-\pi/2) = e^{i \pi/4 \,\sigma_x} = \frac{1}{\sqrt{2}}\left[\begin{array}{cc} 1&i\\i&1\end{array}\right] X2M Q1
Y2P Y2P = R_y(\pi/2) = e^{-i \pi/4\,\sigma_y} = \frac{1}{\sqrt{2}}\left[\begin{array}{cc} 1&-1\\1&1\end{array}\right] Y2P Q1
Y2M Y2M = R_y(-\pi/2) = e^{i\pi/4\, \sigma_y } = \frac{1}{\sqrt{2}}\left[\begin{array}{cc} 1&1\\-1&1\end{array}\right] Y2M Q1
CZ CZ =\left[ \begin{array}{cccc}1&0&0&0\\0&1&0&0\\0&0&1&0\\0&0&0&-1\end{array}\right] CZ Q1 Q2 Q1,Q2需满足
硬件连接条件
RZ RZ(\theta) = e^{-i\theta/2 \sigma_z } = \left[\begin{array}{cc} e^{-i\theta/2}& 0 \\ 0 & e^{i\theta/2}\end{array}\right] RZ Q1 \theta
I 在一段时间t(ns)内无操作 I Q1 t t为整数,单位为0.5ns
即当t=1时,时间为0.5ns
B 对齐量子操作 B Q1 Q2

注:

  • RZ 指令中的\theta 不做-\pi<\theta< \pi的约束

表2描述了复合门的定义和编译规则。

表 2: QCIS复合门的编译规则

指令 说明 QCIS 指令 编译规则
X X =\left[\begin{array}{cc} 0&1\\1&0\end{array}\right] X Q1 X2P Q1
X2P Q1
Y Y =\left[\begin{array}{cc} 0&-i\\i&0\end{array}\right] Y Q1 Y2P Q1
Y2P Q1
S S = e^{i\pi/4}R_z(\pi/2)=\left[\begin{array}{cc} 1&0\\0&i\end{array}\right] S Q1 RZ Q1 \pi/2
SD SD = e^{-i\pi/4}R_z(-\pi/2)= \left[\begin{array}{cc} 1&0\\0&-i\end{array}\right] SD Q1 RZ Q1 -\pi/2
T T = e^{i\pi/8}R_z(\pi/4)= \left[\begin{array}{cc} 1&0\\0&e^{i\pi/4}\end{array}\right] T Q1 RZ Q1 \pi/4
TD TD = e^{-i\pi/8}R_z(-\pi/4)= \left[\begin{array}{cc} 1&0\\0&e^{-i\pi/4}\end{array}\right] TD Q1 RZ Q1 -\pi/4
Z Z = iR_z(\pi)= \left[\begin{array}{cc} 1&0\\0&-1\end{array}\right] Z Q1 RZ Q1 \pi
H H = \frac{1}{\sqrt{2}}\left[\begin{array}{cc} 1&1\\1&-1\end{array}\right] H Q1 Case1: RZ Q1 \pi
Y2P Q1
Case2:Y2M Q1
RZ Q1 \pi
RX RX(\theta) = e^{-i\theta/2 \sigma_x } = \left[\begin{array}{cc} \cos\theta/2 & -i\sin \theta/2 \\ -i\sin\theta/2 & \cos \theta/2 \end{array}\right] RX Q1 \theta RZ Q1 \pi/2
X2P Q1
RZ Q1 \theta
X2M Q1
RZ Q1 -\pi/2
RY RY(\theta) = e^{-i\theta/2\, \sigma_y } = \left[\begin{array}{cc} \cos\theta/2 & -\sin \theta/2 \\ \sin\theta/2 & \cos \theta/2 \end{array}\right] RY Q1 \theta X2P Q1
RZ Q1 \theta
X2M Q1
RXY RXY(\phi, \theta) = e^{-i \theta/2 \hat{n}\cdot\hat{\sigma}}
=\left[\begin{array}{cc} \cos \theta/2 & -ie^{-i\phi}\sin\theta/2 \\-i e^{i\phi} \sin\theta/2 & \cos\theta/2\end{array}\right]
\hat{n} = (\cos\phi, \sin\phi, 0)
RXY Q1 \phi~~\theta RZ Q1 \pi/2 − \phi
X2P Q1
RZ Q1 \theta
X2M Q1
RZ Q1 \phi-\pi/2

注:

  • H指令有两种编译形式,相互等效,在实际编译时按照1:1比例随机选取

2023年7月,最新开放指令

加任意控制脉冲操作指令

比特所有操作(包括但比特门、两比特门)都是通过加特定的制脉冲实现,通过此指令可实现对比特最高自由度的调控。
指令格式为:
PULSE [操作比特][脉冲参数列表]
简写指令:PLS [操作比特][脉冲参数列表]
操作比特:加脉冲的比特,适用于所有可操作量子器件,包括数据比特,耦合比特,读取,放大器等;
参数列表:[波形编号][波形起始时间][length, amplitude, frequency, phase, dragAlpha][波形其它参数]。

  • 波形编号。指定波形类型:
波形编号 对应的波形类型
0 数值波形,波形的每个点的值由用户通过[波形其它参数]以数值形式传入。指令示例:PULSE C02 -1 256 0 0 0 0 0 200 100 300 400 … 23466,此指令加数值波形200 100 300 400 … 23466,波形起始时间为256。对数字波形length, amplitude, frequency, phase几个参数没有意义。
1 flattop
2 cosine
其他波形 暂未开放
  • 波形起始时间(tStart):相对控制波形序列起点,单位为DAC采样周期,tStart < 0表示波形起始时间为被操作量子器件上一个门指令波形的结束时间,即和标准门操作一样,以前后拼接的方式生成序列。tStart >= 0,波形时间为tStart,和前面门序列长度无关,即在任意位置自由加波形;
  • length:波形长度,单位为DAC采样周期;
  • amplitude:波形幅度,单位为DAC码值,最大幅度为32768;
  • frequency:边带混频频率,单位Hz;
  • phase:边带混频相位,单位rad;
  • dragAlpha:DRAG修正系数;
  • 波形其它参数:生成波形可能需要的其他参数,和具体波形类型有关。比如,对数值型波形,波形其它参数是一个数值序列,定义波形的每个采样点的值;
    注:对特定波形类型,有些参数可能没有意义,这种情况下这些参数的值不会被用到,可赋任意值。如:数值波形的length, amplitude, frequency, phase几个参数没有意义。

示例:
PLS G107 0 60 0 0 0 0 0 0 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 0
这条指令将在耦合比特G107上加一个数值定义的波形,波形起始时间为60(对应30ns),波形由数值0 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 5E3 0定义,为一个方波。

PLS G107 1 -1 100 0 0 0 0 4
这条指令将在耦合比特G107上加一个预设的波形flattop(有平滑上升沿和下降沿的方波)。波形起始时间为耦合比特G107上一条指令波形的结束时间+1(0.5ns),即和已有波形拼接。这里波形的长度为100(50ns),上升沿和下降沿为4(2ns),幅度为0。因为加的波形幅度为0,所以该指令实现功能为等待50ns不做任何操作。

耦合比特打开耦合操作

通过此操作对耦合比特的耦合功能进行调节控制。
指令格式:
G [耦合比特][作用持续时间] [耦合强度]
耦合比特:操作的耦合比特,此操作仅适用于耦合比特,不能作用在数据比特等其他量子器件。
作用持续时间:耦合打开持续时间,单位:DAC采样周期。
耦合强度:耦合打开的强度(幅度),单位Hz。

示例:
G G107 100 -3E6
这条指令将耦合比特G107耦合强度调到3MHz,保持100(50ns)后关闭。

耦合比特交流耦合门操作

通过此操作控制耦合比特实现两比特耦合交流CZ门(Shaowei Li et al 2022 Chinese Phys. Lett. 39 030302)。
指令格式:
AACZ [耦合比特]