readout_program/chapters/04-05-acq-data-processing.md

89 lines
3.3 KiB
Markdown
Raw Normal View History

2026-07-24 20:24:39 +08:00
## 4.5. 采集数据处理
ACQ通道采集的数据以流的形式按照先后顺序缓存
缓存到设定数据量后或者计时器超时后数据被打包成帧上传,
上位机驱动解帧后以流模式将数据返回给调用接口。
当采集多种数据时,用户需要维护采集数据的顺序,
从而解析返回数据的含义。
建议一个实验仅仅采集一种类型数据以简化数据处理。
### 4.5.1. 采集波形数据
波形数据为模拟信号经ADC量化和符号转换后结果
用8比特二进制补码表示范围对应-128~127
* ASIC平台1个时钟周期对应8个采样点(8个字节)
* FPGA平台1个时钟周期对应16个采样点16字节
* 数据采用大端字节序,数据遵循先采先到顺序
### 4.5.2. 采集IQ数据
解模计算公式如下:
2026-07-28 14:32:35 +08:00
2026-07-24 20:24:39 +08:00
$$
2026-07-28 14:32:35 +08:00
I = \sum_{i=1}^{m}{\sum_{j=1}^n{\frac{S_{i,j} * iw_{i,j} * \cos(\omega_i t+\phi_i)}{scale_i} }}
2026-07-24 20:24:39 +08:00
$$
2026-07-28 14:32:35 +08:00
2026-07-24 20:24:39 +08:00
$$
2026-07-28 14:32:35 +08:00
Q = \sum_{i=1}^{m}{\sum_{j=1}^n{\frac{S_{i,j} * qw_{i,j} * \sin(\omega_i t+\phi_i)}{scale_i} }}
2026-07-24 20:24:39 +08:00
$$
* $m$表示解模次数,$n$表示解模的采样点个数;
* $S_{i,j}$为输入波形的第i次解模第j个采样点8比特有符号数
* $iw_{i,j}$、$qw_{i,j}$为i、q权重的第i次解模第j个采样点8比特有符号数
2026-07-28 14:32:35 +08:00
* $\omega_i$、$\phi_i$分别为第i次解模的频率和相位
2026-07-24 20:24:39 +08:00
* $scale_i$为第i次解模的范围选择可设置为1或者16
2026-07-28 14:32:35 +08:00
>解模频率应设置为输入波形对应频率使得解模结果频率为0
2026-07-24 20:24:39 +08:00
解模结果相位等于解模设置相位设置减去输入波形相位。
若解模相位为0则结果相位等于波形相位取反。
2026-07-28 14:32:35 +08:00
2026-07-24 20:24:39 +08:00
解模求和结果I、Q分别用32比特二进制补码表示解模的结果存储格式如下
* 1个完整的数据包含I,Q8字节
* I先到达Q后到达
* I, Q数据采用大端字节都占用4个字节
### 4.5.3. 采集态数据
2026-07-28 15:50:19 +08:00
#### 态判断计算
态判断利用解模IQ数据通过三组直线方程将 IQ 平面划分为三个区域,判定量子比特状态。
三组直线方程定义在 DAQ_PAR 参数区(见 [§4.4.1](#441-读出参数存储)
每组包含三个系数a, b, c直线方程为 $ax + by = c$
其中 a、b 为 16 位有符号数c 为 32 位有符号数I、Q 为 20 位截位后的解模结果。
对于每条直线,位置判定公式为:
$$
compare[i] = (a_i \times I < c_i \times 2^4 - b_i \times Q),\quad i = 0, 1, 2
$$
得到三条直线的位置判定结果后,通过优先级电路确定态信息:
|优先级|态值|判定条件|
|:-|:-|:-|
|1|0|compare[0] = 1 且 compare[1] = 0|
|2|1|compare[1] = 1 且 compare[2] = 0|
|3|2|compare[2] = 1 且 compare[0] = 0|
|—|3错误态|其它情况|
```
三态判断要求三条直线交于同一点,否则 IQ 平面被划分为 4 个以上区域,
部分 IQ 点将落入未定义区域产生错误态3态
仅需两态判断时,设置 func_ctrl.TWO_STA_EN = 1仅使用一组直线方程。
```
#### 态数据存储格式
2026-07-24 20:24:39 +08:00
* 1个完整数据包含16个qubit态信息4字节
* 每个量子比特态信息用2个比特表示
2026-07-28 15:50:19 +08:00
* 高位表示高序号即32比特对应 {q15, q14, ..., q0}
2026-07-24 20:24:39 +08:00
### 4.5.4. 采态计数数据
* 1个完整数据包含4个计数器数据16字节
* 4个计数数据顺序为0态计数器、1态计数器、2态计数器、3态计数器
* 计数器采用大端字节序为32比特无符号数