人工审阅正文

This commit is contained in:
guocheng 2026-07-28 14:32:35 +08:00
parent 3c2b27fa88
commit 607374dfae
10 changed files with 60 additions and 48 deletions

View File

@ -1,18 +1,22 @@
# 4. 处理器ACQ通道编程模型 # 4. 处理器ACQ通道编程模型
来自量子芯片RO端口的射频信号首先经过混频板模拟电路调理后进入读出基带处理单元采集处理。 来自量子芯片RO端口的射频信号首先经过混频板调理后再进入读出基带处理单元采集处理。
混频板模拟调理电路主要负责将输入功率和频率的信号转换成基带板卡能够处理的中频信号, 混频板负责将输入功率和频率的信号转换成基带板卡能够处理的频率功率合适的信号,
对模拟调理电路的编程包括变频增益控制和变频本振频率控制。 因此对混频板的编程主要包括`变频增益`和变频`本振频率`。
模拟信号进入基带处理单元后先经过巴伦将单端信号转换成ADC所需的差分信号。 模拟信号进入基带处理单元后先经过巴伦将单端信号转换成ADC所需的差分信号。
接着读出芯片`RBPU`利用ADC(FPGA平台为8 bit@4 GspsASIC 平台为8 bit@6 Gsps采样输入信号并给到数字电路。 接着基带板上的读出芯片`RBPU`利用ADC(FPGA平台为8 bit@4 GspsASIC 平台为8 bit@6 Gsps采样,
数字电路对数据进行处理后将结果通过数据推送接口`rslt_push`发送到上位机。 然后将量化后的数字信号送到数字电路进行处理。
对读出基带单元RO通道数字电路的编程包括MCU的指令、MCU的数据、ACQ通道控制寄存器、解模参数、模拟电路配置5类数据。 数字电路对数据进行处理后将结果通过推送接口`rslt_push`发送到上位机。
对读出数字电路的编程包括MCU的指令、MCU的数据、ACQ通道控制寄存器、解模参数结合模拟电路配置则ACQ通道编程项如下
- MCU指令+MCU数据可用于编程发出触发码字以及实时修改控制寄存器 - MCU指令+MCU数据可用于编程发出触发码字以及实时修改控制寄存器
- ACQ通道控制寄存器用于指定解模频率、相位、权重/系数数据的索引等参数; - DAQ控制寄存器用于指定解模频率、相位、权重/系数数据的索引等参数;
- 解模参数数据定义了具体的权重数据和量子态判断参数等数据。 - 解模参数数据定义了具体的权重数据和量子态判断参数等数据。
- 模拟电路配置用于设置变频增益和本振频率。 - 模拟电路配置用于设置变频增益和本振频率。
目前FPGA平台模拟电路无需配置下图是FPGA平台ACQ通道数字部分编程控制模型。 目前模拟电路采用固定变频增益仅支持设置本振频率。下图是ASIC平台ACQ通道数字部分编程控制模型。
![读出ACQ通道控制模型](../assets/readout_ro.png) ![读出ACQ通道控制模型](../assets/readout_ro.png)
@ -24,8 +28,8 @@
上述过程中,数据①②③④⑤都可以在数据转发模块缓存后通过`rslt_push`接口发送出去, 上述过程中,数据①②③④⑤都可以在数据转发模块缓存后通过`rslt_push`接口发送出去,
需要注意到的是数据②是解模求和数据③在求和次数为1的特殊情况。 需要注意到的是数据②是解模求和数据③在求和次数为1的特殊情况。
由于ACQ通道有且仅有基带处理单元存在状态机 ACQ通道有且仅有基带处理单元存在状态机
因此需要考虑到异常状态恢复因此ACQ通道提供了软复位功能 考虑到异常状态恢复需要ACQ通道提供了软复位功能。
当RO通道由于上位机强制中断或者MCU配置了错误指令而产生异常时 当RO通道由于上位机强制中断或者MCU配置了错误指令而产生异常时
可以通过调用驱动API函数执行复位操作 可以通过调用驱动API函数执行复位操作
其能够将状态机从异常中复位(同时也复位部分寄存器的默认值), 其能够将状态机从异常中复位(同时也复位部分寄存器的默认值),

View File

@ -6,9 +6,9 @@
|配置名|描述| |配置名|描述|
|:-:|:-:| |:-:|:-:|
|lo_freq|变频本振频率设置| |lo_freq|变频本振频率设置|
|mix_gain|下变频增益设置| |dn_gain|下变频增益设置|
``` * lo_freq32比特整数范围[5400000, 5600000]单位是kHz
目前ez-Q 2.5 FPGA平台暂不支持下变频增益
mix_gain 设置;仅支持 lo_freq 变频本振频率设置 >目前ez-Q 2.5 FPGA平台暂不支持下变频增益dn_gain 设置;
``` 仅支持 lo_freq 变频本振频率设置单板上下变频通道共享lo_freq设置

View File

@ -1,6 +1,6 @@
## 4.2. ACQ码字功能定义 ## 4.2. ACQ码字功能定义
ACQ通道通过产生32位的码字来控制读出行为32位的操控码字功能定义如下表所示。 ACQ通道利用MCU产生32位的码字来控制读出行为32位的操控码字功能定义如下表所示。
|比特位|名字|功能描述| |比特位|名字|功能描述|
|:-|:-|:-| |:-|:-|:-|
@ -32,6 +32,7 @@ ACQ通道通过产生32位的码字来控制读出行为32位的操控码字
- 码字比特[3:0]用于选择要实时从存储中加载的解模和态判断参数总共支持16组参数进行快速切换 - 码字比特[3:0]用于选择要实时从存储中加载的解模和态判断参数总共支持16组参数进行快速切换
**注意码字存在优先级和时序:** **注意码字存在优先级和时序:**
* 当同一个指令中同时对多个量子比特解模/读出时, * 当同一个指令中同时对多个量子比特解模/读出时,
* 解模时间等于最长那个比特的解模时间 * 解模时间等于最长那个比特的解模时间
* 读出时间等于最长那个比特的读出时间 * 读出时间等于最长那个比特的读出时间
@ -41,9 +42,9 @@ ACQ通道通过产生32位的码字来控制读出行为32位的操控码字
1. 态判断数据 1. 态判断数据
1. 态计数数据 1. 态计数数据
* 在一个指令中同时使能了解模求和清零、解模求和和求和存储时,顺序为: * 在一个指令中同时使能了解模求和清零、解模求和和求和存储时,顺序为:
1. 先执行求和清零, 1. 先执行IQ结果清零,
1. 再执行求和 1. 再执行IQ结果求和
1. 最后执行求和结果存储 1. 最后执行IQ结果存储
* 在一个指令中同时使能了态计数清零、态计数和计数存储时,顺序为: * 在一个指令中同时使能了态计数清零、态计数和计数存储时,顺序为:
1. 先执行态计数清零 1. 先执行态计数清零
1. 再执行态计数 1. 再执行态计数

View File

@ -2,10 +2,9 @@
ACQ通道寄存器的地址空间可以被SPI和MCU同时访问 ACQ通道寄存器的地址空间可以被SPI和MCU同时访问
因此用户可通过SPI或者MCU设置参数建议 因此用户可通过SPI或者MCU设置参数建议
```
静态参数通过SPI配置完成就保持不变 >**建议:** 静态参数通过SPI配置完成就保持不变
需要动态控制的参数通过MCU来实时更新。 需要动态控制的参数通过MCU来实时更新。
```
|名字|功能描述| |名字|功能描述|
|:-|:-| |:-|:-|
@ -20,7 +19,7 @@ ACQ通道寄存器的地址空间可以被SPI和MCU同时访问
- 低16比特对应索引长度单位是时钟周期 - 低16比特对应索引长度单位是时钟周期
- dds_fpw_q在使能寄存器控制情况下用于控制解模载波的频率和相位 - dds_fpw_q在使能寄存器控制情况下用于控制解模载波的频率和相位
- 高20位对应载波频率控制字fcw$F_{c}=fcw/2^{20}*sample\\_rate$ - 高20位对应载波频率控制字fcw$F_{c}=fcw/2^{20}*sample\\_rate$
- 低12位对应载波相位控制字pcw$\\phi_{c} = pcw/2^{12}*2*\\pi$ - 低12位对应载波相位控制字pcw$\phi_{c} = pcw/2^{12}*2*\pi$
- function用来控制整个读出基带板数据处理行为 - function用来控制整个读出基带板数据处理行为
function功能寄存器与实验控制相关的具体控制位包括 function功能寄存器与实验控制相关的具体控制位包括
@ -50,10 +49,10 @@ function功能寄存器与实验控制相关的具体控制位包括
- `TWO_STA_EN==0` 默认三态读出 - `TWO_STA_EN==0` 默认三态读出
- `TWO_STA_EN==1` 使能二态读出 - `TWO_STA_EN==1` 使能二态读出
```
ez-Q 2.5 FPGA平台采用系数直读模式因此不支持系数生产相关功能。 > **注意:** ez-Q 2.5 FPGA平台采用系数直读模式因此不支持系数生产相关功能。
即在ez-Q 2.5 FPGA平台下dds_fpw 寄存器无实际效果; 即在ez-Q 2.5 FPGA平台下dds_fpw 寄存器无实际效果;
function寄存器WEIGHT_IQCONST_EN, STEP_CTRL 位无实际效果 function寄存器WEIGHT_IQCONST_EN, STEP_CTRL 位无实际效果
```
解模完成后,可以通过`TWO_STA_EN`来控制是否启动2态判定 解模完成后,可以通过`TWO_STA_EN`来控制是否启动2态判定
当`TWO_STA_EN=1`时,可以只配置一组直线方程系数进行态判断。 当`TWO_STA_EN=1`时,可以只配置一组直线方程系数进行态判断。

View File

@ -1,15 +1,17 @@
## 4.4. 匹配滤波器 ## 4.4. 匹配滤波器
匹配滤波器在FPGA/ASIC两种平台下由于资源不同实现的形式也不同区别如下 匹配滤波器在FPGA/ASIC两种平台下由于资源不同实现的形式也不同区别如下
* 由于ASIC多计算少存储因而ASIC平台使用系数计算模式以节省存储资源。 * 由于ASIC多计算少存储因而ASIC平台使用系数计算模式以节省存储资源。
* 由于FPGA 多存储少计算因此FPGA平台使用系数直读模式以节省DSP资源。 * 由于FPGA 多存储少计算因此FPGA平台使用系数直读模式以节省DSP资源。
### 4.4.1. 读出参数存储 ### 4.4.1. 读出参数存储
系数计算模式下匹配滤波器的系数由DDS生成的载波乘以权重参数得到。 系数计算模式下匹配滤波器的系数由DDS生成的载波乘以权重参数得到。
- 载波的频率和相位由dds_pfd控制其高20为作为频率控制字低12位作为相位控制字。 - 载波的频率和相位由dds_pfd控制其高20为作为频率控制字低12位作为相位控制字。
- 权重参数的选择由mtf_idx控制其高16位作为地址低16位作为长度。 - 权重参数的选择由mtf_idx控制其高16位作为地址低16位作为长度。
- mtf_idx索引得到的权重数据颗粒度是权重数据点,一个数据点可对应多个周期采样点; - mtf_idx索引得到的权重数据颗粒度是权重样本点,一个样本点可对应多个周期采样点;
- 寄存器dds_pfw_q 和mtf_idx_q 的详细定义与查找表中定义保持相同。 - 寄存器dds_pfw_q 和mtf_idx_q 的详细定义与查找表中定义保持相同。
读出系统的的读出参数存储格式如下图所示。 读出系统的的读出参数存储格式如下图所示。
@ -20,6 +22,7 @@ FPGA平台下的系数直读模式只使用`Ctrl`部分中的数据,并忽略`
### 4.4.2. 匹配滤波器系数 ### 4.4.2. 匹配滤波器系数
ez-Q 2.5 FPGA平台使用系数直读模式其需要额外的存储空间来配置匹配滤波器系数。 ez-Q 2.5 FPGA平台使用系数直读模式其需要额外的存储空间来配置匹配滤波器系数。
- 其中mtf_idx的含义从索引权重数据变为索引匹配滤波器系数。 - 其中mtf_idx的含义从索引权重数据变为索引匹配滤波器系数。
- 匹配滤波器系数索引的粒度是时钟周期, - 匹配滤波器系数索引的粒度是时钟周期,
- 在FPGA平台下每个时钟周期对应16个采样点数据。 - 在FPGA平台下每个时钟周期对应16个采样点数据。

View File

@ -19,22 +19,25 @@ ACQ通道采集的数据以流的形式按照先后顺序缓存
### 4.5.2. 采集IQ数据 ### 4.5.2. 采集IQ数据
解模计算公式如下: 解模计算公式如下:
$$ $$
I = \\sum_{i=1}^{m}{\\sum_{j=1}^n{\\frac{S_{i,j} * iw_{i,j} * \\cos(\\omega_i t+\\phi_i)}{scale_i} }} I = \sum_{i=1}^{m}{\sum_{j=1}^n{\frac{S_{i,j} * iw_{i,j} * \cos(\omega_i t+\phi_i)}{scale_i} }}
$$ $$
$$ $$
Q = \\sum_{i=1}^{m}{\\sum_{j=1}^n{\\frac{S_{i,j} * qw_{i,j} * \\sin(\\omega_i t+\\phi_i)}{scale_i} }} Q = \sum_{i=1}^{m}{\sum_{j=1}^n{\frac{S_{i,j} * qw_{i,j} * \sin(\omega_i t+\phi_i)}{scale_i} }}
$$ $$
* $m$表示解模次数,$n$表示解模的采样点个数; * $m$表示解模次数,$n$表示解模的采样点个数;
* $S_{i,j}$为输入波形的第i次解模第j个采样点8比特有符号数 * $S_{i,j}$为输入波形的第i次解模第j个采样点8比特有符号数
* $iw_{i,j}$、$qw_{i,j}$为i、q权重的第i次解模第j个采样点8比特有符号数 * $iw_{i,j}$、$qw_{i,j}$为i、q权重的第i次解模第j个采样点8比特有符号数
* $\\omega_i$、$\\phi_i$分别为第i次解模的频率和相位 * $\omega_i$、$\phi_i$分别为第i次解模的频率和相位
* $scale_i$为第i次解模的范围选择可设置为1或者16 * $scale_i$为第i次解模的范围选择可设置为1或者16
解模频率应设置为输入波形对应频率一遍使得解模结果频率为0 >解模频率应设置为输入波形对应频率使得解模结果频率为0
解模结果相位等于解模设置相位设置减去输入波形相位。 解模结果相位等于解模设置相位设置减去输入波形相位。
若解模相位为0则结果相位等于波形相位取反。 若解模相位为0则结果相位等于波形相位取反。
解模求和结果I、Q分别用32比特二进制补码表示解模的结果存储格式如下 解模求和结果I、Q分别用32比特二进制补码表示解模的结果存储格式如下
* 1个完整的数据包含I,Q8字节 * 1个完整的数据包含I,Q8字节

View File

@ -1,14 +1,17 @@
# 5. 处理器EXC-Pump编程模型 # 5. 处理器EXC-Pump编程模型
EXC-Pump通道的编程包括 EXC-Pump通道的编程包括
MCU的指令、MCU的数据、控制寄存器、波形索性表、波形仓库和模拟电路配置6类数据。 MCU的指令、MCU的数据、控制寄存器、波形索性表、波形仓库、混频板与泵浦板配置7类数据。
- MCU指令+MCU数据可用于编程发出触发码字以及实时修改控制寄存器 - MCU指令+MCU数据可用于编程发出触发码字以及实时修改控制寄存器
- 控制寄存器可用于指定调制频率、调制相位、工作模式等参数; - 控制寄存器可用于指定调制频率、调制相位、工作模式等参数;
- 波形索引表定义了从波形ID到波形地址和长度的映射波形仓库定义了波形具体的采样点数据。 - 波形索引表定义了从波形ID到波形地址和长度的映射波形仓库定义了波形具体的采样点数据
- 模拟电路配置用于设置变频增益和本振频率以及Pump通道的频率和功率等。 - 混频板配置用于设置变频增益和本振频率;
- 泵浦板配置用于配置Pump通道的频率和功率等
当前模拟电路仅需配置Pump参数下图是EXC-Pump通道数字部分的编程控制模型 > 混频板上变频不支持增益设置,只能设置本振频率,并且上下变频通道共享同一个本振设置,这里不额外赘述了
数字部分MCU的指令、MCU的数据、控制寄存器、波形索性表、波形仓库的编程模型如下图所示
![读出RI-Pump通道控制模型](../assets/readout_ri.png) ![读出RI-Pump通道控制模型](../assets/readout_ri.png)
1. EXC-Pump通道的波形输出由AWG模块MCU发出的码字触发。 1. EXC-Pump通道的波形输出由AWG模块MCU发出的码字触发。
@ -21,6 +24,7 @@ MCU的指令、MCU的数据、控制寄存器、波形索性表、波形仓库
1. 最后数字信号经过DAC转换后输出基带信号基带信号经过上变频输出读出系统 1. 最后数字信号经过DAC转换后输出基带信号基带信号经过上变频输出读出系统
上述过程中模式选择器可以选择原始波形数据、希尔伯特虚部数据、正交调制数据以及NCO自身产生的单音数据。 上述过程中模式选择器可以选择原始波形数据、希尔伯特虚部数据、正交调制数据以及NCO自身产生的单音数据。
- 原始波形模式:用于量子实验,通过直接输出包含多个读出频率的波形,可以实现对多个量子比特的并行读出; - 原始波形模式:用于量子实验,通过直接输出包含多个读出频率的波形,可以实现对多个量子比特的并行读出;
- 正交调制模式用于腔频扫描等应用通过实时修改NCO频率可以实时改变输出频率配合DAQ进行实时读取可以实现扫频功能。若基带信号包含多个频点还能实现多频点并行扫描功能 - 正交调制模式用于腔频扫描等应用通过实时修改NCO频率可以实时改变输出频率配合DAQ进行实时读取可以实现扫频功能。若基带信号包含多个频点还能实现多频点并行扫描功能
- NCO Only模式可以输出连续波形方便连接外部仪器上进行测试用于芯片本身性能的测试。 - NCO Only模式可以输出连续波形方便连接外部仪器上进行测试用于芯片本身性能的测试。
@ -43,12 +47,10 @@ MCU的指令、MCU的数据、控制寄存器、波形索性表、波形仓库
Pump通道输出的使能信号由MCU码字触发输出 Pump通道输出的使能信号由MCU码字触发输出
当MCU输出码字的对应位使能后脉冲发生模块从寄存器或波形索引表得到脉冲长度控制数据 当MCU输出码字的对应位使能后脉冲发生模块从寄存器或波形索引表得到脉冲长度控制数据
并将指定长度的脉冲信号通过I/O直接输出。 并将指定长度的脉冲信号通过I/O直接输出。
```
ez-Q 2.5 FPGA平台的Pump通道需要提前配置频率、功率和输出使能
```
由于EXC-Pump通道有且仅有基带处理单元存在状态机 > ez-Q 2.5 FPGA/ASIC平台的Pump通道需要提前配置频率、功率和输出使能
当EXC-Pump通道由于上位机强制中断程序或者MCU配置了错误指令而产生异常时
为了清除EXC-Pump通道的异常状态 由于EXC-Pump通道有且仅有数字部分存在状态机
为了清除EXC-Pump通道由于上位机强制中断程序或者MCU配置了错误指令而产生异常
EXC-Pump通道提供了软复位功能支持通过调用驱动API来执行软复位操作 EXC-Pump通道提供了软复位功能支持通过调用驱动API来执行软复位操作
其能够使得状态机从异常中恢复,从而使得下一次历史无关配置项能够正确执行。 软复位可使得状态机从异常中恢复,从而使得下一次历史无关配置项能够正确执行。

View File

@ -17,11 +17,11 @@ EXC-Pump通道的全部寄存器可以被SPI和MCU同时访问
- 高16位为索引地址单位是时钟周期 - 高16位为索引地址单位是时钟周期
- 低16为为索引长度单位是时钟周期 - 低16为为索引长度单位是时钟周期
- `amplitude`调制幅度控制字 - `amplitude`调制幅度控制字
- 高16为幅度控制字acw范围0~16384归一化幅度$Amp = acw/2^{16}$ - 高16为幅度控制字acw范围-32768~32767归一化幅度$Amp = acw/2^{14}$
- `frequency`调制频率控制 - `frequency`调制频率控制
- 32比特频率控制字fcw$F_{nco}= fcw/2^{32}*F_s$,其中$F_s$是输出采样率。 - 32比特频率控制字fcw$F_{nco}= fcw/2^{32}*F_s$,其中$F_s$是输出采样率。
- `phase`调制相位控制 - `phase`调制相位控制
- 高16位相位控制字pcw $\\phi_{nco} = pcw/2^{16}*2*\\pi$。 - 高16位相位控制字pcw $\phi_{nco} = pcw/2^{16}*2*\pi$。
- `funciton`寄存器用于设置AWG的工作模式 - `funciton`寄存器用于设置AWG的工作模式
- `pump_ctrl`泵浦脉冲使能控制 - `pump_ctrl`泵浦脉冲使能控制
- 高16位控制输出延迟时钟周期范围1~65535 - 高16位控制输出延迟时钟周期范围1~65535

View File

@ -2,7 +2,7 @@
* ASIC平台下每个时钟周期对应8个采样点采样点个数需要为8的整数倍数据更新率为6 Gsps每个采样点持续时间为167 皮秒(6 GS/s)。 * ASIC平台下每个时钟周期对应8个采样点采样点个数需要为8的整数倍数据更新率为6 Gsps每个采样点持续时间为167 皮秒(6 GS/s)。
* 在FPGA平台下每个时钟周期对应16个采样点采样点个数需要为16的整数倍数据更新率为 4 GSps每个采样点持续时间为250皮秒。 * 在FPGA平台下每个时钟周期对应16个采样点采样点个数需要为16的整数倍数据更新率为 4 GSps每个采样点持续时间为250皮秒。
* 每个采样点为16比特的二进制补码数据 * 每个采样点通过16比特的二进制补码数据表示
* 波形仓库的容量为128 KB在FPGA平台和ASIC平台下最大分别支持16 us和10 us波形输出。 * 波形仓库的容量为128 KB在FPGA平台和ASIC平台下最大分别支持16 us和10 us波形输出。
对于EXC输出频率$F_{out}$例如6.7 GHz在本振为$F_{LO}$(例如5.5GHz)本振频率下, 对于EXC输出频率$F_{out}$例如6.7 GHz在本振为$F_{LO}$(例如5.5GHz)本振频率下,

View File

@ -2,10 +2,10 @@
来自读出基带板输出端口的中频信号需要经过混频板上变频电路处理后才能够被发送到量子芯片。 来自读出基带板输出端口的中频信号需要经过混频板上变频电路处理后才能够被发送到量子芯片。
前端上变频电路包括增益和本振,这里需要注意同一个混频板上四个通道上下变频使用同一个本振信号。 前端上变频电路包括增益和本振,这里需要注意同一个混频板上四个通道上下变频使用同一个本振信号。
目前ez-Q 2.5 FPGA平台硬件暂不支持变频增益设置。
|配置名|描述| |配置名|描述|
|:-:|:-:| |:-:|:-:|
|lo_freq|变频本振频率设置| |lo_freq|变频本振频率设置|
|up_gain|上变频增益设置|
* lo_freq32比特整数范围[5400000, 5600000]单位是kHz > 目前ez-Q 2.5 FPGA平台硬件暂不支持变频增益设置。