# JSSC—"A compact power-efficient 3 V CMOS rail-to-rail input/output operational amplifier for VLSI cell libraries"—复现1
## 
## 总体结构
在复现阶段一,省略输入 NMOS 对管 M1 和 M2。则电路结构可以拆解为两个部分:
### 输入级
M3,M4,M15,M16,M13,M14,M11,M12组成折叠式共源共栅 OTA
取:
<div align="center">
\(\displaystyle \begin{array}{l}
I_{b1} = 8\,\mu\text{A}\\
I_{b3} = I_{b4} = 20\,\mu\text{A}
\end{array}\)
</div>
#### 输入级偏置电路
在初步复现时将\(I_{b3}\) 和 \(I_{b4}\) 通过 NMOS 管实现,其偏置电压由偏置电路给定,下图的\(V_{b1}\)给出其偏压
\(V_{b2}\) 是给 M15、M16 栅极偏置电压,由下图 M2、M3 组成的self-cascode 结构产生,该结构等效的宽长比为单个晶体管的一半
\(V_{b3}\) 是给 M13、M4 栅极偏置电压,也由self-cascode 结构产生
> [!NOTE]
>
> \(V_{b2}\)和\(V_{b3}\)需要产生的是一个合适的偏置电压,让偏置管下方的 NMOS 或者上方的 PMOS 能够进入饱和区而不是线性区。
>
> 这两个偏压不需要产生一个特别精确的值,\(V_{GS}\)在流过恒定电流的情况下几乎恒定,让源极的电压跟随偏置电压

### 输出级
M20,M19,M25,M26 为输出 Class-AB 结构

#### M20,M19浮动控制单元:

##### 静态工作点:
<div align="center">
\(\displaystyle \begin{array}{l}
V_A = V_{BP} – V_{GS,p}\\
V_B = V_{BN} – V_{GS,n}
\end{array}\)
</div>
因此可以通过调节\(V_{BP}\)和\(V_{BN}\),让 Class-AB 的静态电压\(V_A\)和\(V_B\)合适
##### 小信号特性:
可以证明,当控制管的跨导相等时,\(A\)、\(B\) 两点近似短路,因此输入的小信号可以同等加到 \(A\)、\(B\) 节点上
##### 对比:
与下图传统的 Class-AB 结构进行对比:

| 性质\结构 | 传统 | 本文 |
| ———- | —————————- | —————————— |
| 功耗 | 高 | 低 |
| 小信号增益 | <1(带源极负反馈的共源极) | 高 |
| 稳定性 | 高(输出阻抗小,带载能力强) | 低(输出阻抗大,带电容能力弱) |
对于最后的稳定性问题,此结构作为第二级必须做电容补偿
## 参数计算
### 电流源电流大小
在初步复现中取:
<div align="center">
\(\displaystyle \begin{array}{l}
I_{b1} = 8\,\mu\text{A}\\
I_{b3} = I_{b4} = 20\,\mu\text{A}
\end{array}\)
</div>
未来加入三倍电流镜结构后可以取:
<div align="center">
\(\displaystyle \begin{array}{l}
I_{b1} = I_{b2} = 4\,\mu\text{A}\\
I_{b3} = I_{b4} = 20\,\mu\text{A}
\end{array}\)
</div>
### \(g_m/I_D\) 扫参
#### NMOS:


NMOS 管设计工作在 \(\frac{g_m}{I_D}=10\)的工作状态,取 \(L=0.8\,\mu\text{m}\),读图得到 \(\frac{I_D}{W}=2.05\,\mu\text{A}/\mu\text{m}\)
#### PMOS:


PMOS 管设计工作在 \(\frac{g_m}{I_D}=8\)的工作状态下。取 \(L=0.8\,\mu\text{m}\),读图得到:\(\frac{I_D}{W}=0.856\,\mu\text{A}/\mu\text{m}\)
### 宽度确定
#### 输入级:折叠共源共栅 OTA

##### M12、M13:
<div align="center">
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_p} = \frac{4\,\mu\text{A}}{0.856\,\mu\text{A}/\mu\text{m}} \approx 4.7\,\mu\text{m}\)
</div>
##### M4、M6:
<div align="center">
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_n} = \frac{20\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 9.8\,\mu\text{m}\)
</div>
##### M5、M7:
<div align="center">
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_n} = \frac{16\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 7.8\,\mu\text{m}\)
</div>
##### M14、M15、M16、M17:
<div align="center">
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_p} = \frac{16\,\mu\text{A}}{0.856\,\mu\text{A}/\mu\text{m}} \approx 18.7\,\mu\text{m}\)
</div>
#### 偏置电路:

##### M1、M0:
<div align="center">
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_p} = \frac{4\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 2\,\mu\text{m}\)
</div>
##### M2、M3
M2、M3 形成 self-cascode 结构。假设两者宽度相等,则等效宽长比为单个管子的一半。设计目标为等效管子\(V_{ov}\)为单个管子的二倍多,其产生的偏置电压就够\(V_{b1}+V_{DS}\)
当等效管子的过驱动电压为原先2倍时:
<div align="center">
\(\displaystyle \left(\frac{W}{L}\right)_{\mathrm{eq}} = \frac{1}{4}\frac{W}{L}\)
</div>
在这里单个管子的宽为:
<div align="center">
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_n} = \frac{8\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 4\,\mu\text{m}\)
</div>
在这里我们取等效管子的宽为原来的八分之一,留够裕量,因此:
<div align="center">
\(\displaystyle W_{\mathrm{eq}} = \frac{W}{8} = 0.5\,\mu\text{m}\)
</div>
因此这两个管子的宽都取1u
##### M10,M11
这两个管子同样组成self-cascode 结构,宽的确定与M2,M3的确定思路类似
#### 输出级

##### 浮动控制模块M27、M28:
在这一条电路上总电流预计约 \(16\,\mu\text{A}\)。根据:
<div align="center">
\(\displaystyle \begin{array}{l}
g_{m27} = g_{m28}\\
\left(\frac{g_m}{I_D}\right)_{27} = 8\\
\left(\frac{g_m}{I_D}\right)_{28} = 10\\
\left(\frac{I_D}{W}\right)_{27} = 0.856\,\mu\text{A}/\mu\text{m}\\
\left(\frac{I_D}{W}\right)_{28} = 2.05\,\mu\text{A}/\mu\text{m}
\end{array}\)
</div>
可以求出二者宽度的粗略解
##### 偏置电路
M31,M32,M29,M30的宽都根据已经确定的\(\frac{I_D}{W}\)计算
##### Class-AB:
M33和M34的宽度根据相同的思路求得
##### 后续调整:
在静态仿真时发现浮动控制管的跨导不等。选择增大 NMOS 的宽到 \(4.5\,\mu\text{m}\)而减少 PMOS 的宽到 \(8\,\mu\text{m}\),可观察到二者跨导近似相等。
Class-AB 输出对管的电流也比预想稍大,猜想为这两者\(\frac{g_m}{I_D}\)工作点与理论有所偏差。
## 补偿方法
在电路中,采用cascode补偿方法
### 第一种cascode补偿


与米勒补偿相同,补偿后的带宽为:
<div align="center">
\(\displaystyle \omega_{u,\mathrm{cascode1}} = \frac{g_{m1}}{C_c}\)
</div>
与米勒补偿不同,其次极点表达式分母少了负载电容,因此次级点更高,带载能力更强
与米勒补偿不同,其零点在左半平面
<div align="center">
\(\displaystyle \omega_{z,\mathrm{cascode1}} = \frac{g_{mc}}{C_c}\)
</div>
#### 第二种cascode补偿


其带宽和次极点与第一种相同
与第一种补偿不同的是,其零点为零点对:
<div align="center">
\(\displaystyle \omega_{z,\mathrm{cascode2}} = \pm \sqrt{\frac{g_{mc}g_{m2}}{C_c C_1}}\)
</div>
这两种补偿的零点通常都很大
在此次复现中,选用这两种补偿方式,补偿电容选两个都为 \(0.2\,\text{pF}\)
## 仿真
### 单位增益 STB 仿真


在负载电容\(1\,\text{pF}\)时,单位增益带宽约\(13\,\text{MHz}\),相位裕度\(84^\circ\)
### CMRR


### PSRR


可以看到低频\(\mathrm{PSRR}>60\,\text{dB}\)
在接近单位增益频率时PSRR下降,是因为在单位增益接法下随着频率升高,环路增益的减小会让其对于电源噪声的抑制减弱:
<div align="center">
\(\displaystyle \begin{array}{l}
A_v(s)\left(V_{in+} – V_o\right) = V_o + H_p(s)V_{DD,n}\\
V_o = \frac{A_v(s)V_{in+} – H_p(s)V_{DD,n}}{1 + A_v(s)}
\end{array}\)
</div>
### Slew-Rate

<img src="https://cdn.jsdelivr.net/gh/Monika-dokidoki/img-bed/img/image-20260611164223021.png" alt="image-20260611164223021" style="zoom:67%;" />
<img src="https://cdn.jsdelivr.net/gh/Monika-dokidoki/img-bed/img/image-20260611164236793.png" alt="image-20260611164236793" style="zoom:67%;" />

可以看出,仿真和理论值相差不大
## 总体电路:

JSSC—“A compact power-efficient 3 V CMOS rail-to-rail input/output operational amplifier for VLSI cell libraries”—复现1

总体结构
在复现阶段一,省略输入 NMOS 对管 M1 和 M2。则电路结构可以拆解为两个部分:
输入级
M3,M4,M15,M16,M13,M14,M11,M12组成折叠式共源共栅 OTA
取:
\(\displaystyle \begin{array}{l}
I_{b1} = 8\,\mu\text{A}\\
I_{b3} = I_{b4} = 20\,\mu\text{A}
\end{array}\)
输入级偏置电路
在初步复现时将\(I_{b3}\) 和 \(I_{b4}\) 通过 NMOS 管实现,其偏置电压由偏置电路给定,下图的\(V_{b1}\)给出其偏压
\(V_{b2}\) 是给 M15、M16 栅极偏置电压,由下图 M2、M3 组成的self-cascode 结构产生,该结构等效的宽长比为单个晶体管的一半
\(V_{b3}\) 是给 M13、M4 栅极偏置电压,也由self-cascode 结构产生
[!NOTE]
\(V_{b2}\)和\(V_{b3}\)需要产生的是一个合适的偏置电压,让偏置管下方的 NMOS 或者上方的 PMOS 能够进入饱和区而不是线性区。
这两个偏压不需要产生一个特别精确的值,\(V_{GS}\)在流过恒定电流的情况下几乎恒定,让源极的电压跟随偏置电压

输出级
M20,M19,M25,M26 为输出 Class-AB 结构

M20,M19浮动控制单元:

静态工作点:
\(\displaystyle \begin{array}{l}
V_A = V_{BP} – V_{GS,p}\\
V_B = V_{BN} – V_{GS,n}
\end{array}\)
因此可以通过调节\(V_{BP}\)和\(V_{BN}\),让 Class-AB 的静态电压\(V_A\)和\(V_B\)合适
小信号特性:
可以证明,当控制管的跨导相等时,\(A\)、\(B\) 两点近似短路,因此输入的小信号可以同等加到 \(A\)、\(B\) 节点上
对比:
与下图传统的 Class-AB 结构进行对比:

| 性质\结构 |
传统 |
本文 |
| 功耗 |
高 |
低 |
| 小信号增益 |
<1(带源极负反馈的共源极) |
高 |
| 稳定性 |
高(输出阻抗小,带载能力强) |
低(输出阻抗大,带电容能力弱) |
对于最后的稳定性问题,此结构作为第二级必须做电容补偿
参数计算
电流源电流大小
在初步复现中取:
\(\displaystyle \begin{array}{l}
I_{b1} = 8\,\mu\text{A}\\
I_{b3} = I_{b4} = 20\,\mu\text{A}
\end{array}\)
未来加入三倍电流镜结构后可以取:
\(\displaystyle \begin{array}{l}
I_{b1} = I_{b2} = 4\,\mu\text{A}\\
I_{b3} = I_{b4} = 20\,\mu\text{A}
\end{array}\)
\(g_m/I_D\) 扫参
NMOS:


NMOS 管设计工作在 \(\frac{g_m}{I_D}=10\)的工作状态,取 \(L=0.8,\mu\text{m}\),读图得到 \(\frac{I_D}{W}=2.05,\mu\text{A}/\mu\text{m}\)
PMOS:


PMOS 管设计工作在 \(\frac{g_m}{I_D}=8\)的工作状态下。取 \(L=0.8,\mu\text{m}\),读图得到:\(\frac{I_D}{W}=0.856,\mu\text{A}/\mu\text{m}\)
宽度确定
输入级:折叠共源共栅 OTA

M12、M13:
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_p} = \frac{4\,\mu\text{A}}{0.856\,\mu\text{A}/\mu\text{m}} \approx 4.7\,\mu\text{m}\)
M4、M6:
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_n} = \frac{20\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 9.8\,\mu\text{m}\)
M5、M7:
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_n} = \frac{16\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 7.8\,\mu\text{m}\)
M14、M15、M16、M17:
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_p} = \frac{16\,\mu\text{A}}{0.856\,\mu\text{A}/\mu\text{m}} \approx 18.7\,\mu\text{m}\)
偏置电路:

M1、M0:
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_p} = \frac{4\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 2\,\mu\text{m}\)
M2、M3
M2、M3 形成 self-cascode 结构。假设两者宽度相等,则等效宽长比为单个管子的一半。设计目标为等效管子\(V_{ov}\)为单个管子的二倍多,其产生的偏置电压就够\(V_{b1}+V_{DS}\)
当等效管子的过驱动电压为原先2倍时:
\(\displaystyle \left(\frac{W}{L}\right)_{\mathrm{eq}} = \frac{1}{4}\frac{W}{L}\)
在这里单个管子的宽为:
\(\displaystyle W = \frac{I}{\left(\frac{I_D}{W}\right)_n} = \frac{8\,\mu\text{A}}{2.05\,\mu\text{A}/\mu\text{m}} \approx 4\,\mu\text{m}\)
在这里我们取等效管子的宽为原来的八分之一,留够裕量,因此:
\(\displaystyle W_{\mathrm{eq}} = \frac{W}{8} = 0.5\,\mu\text{m}\)
因此这两个管子的宽都取1u
M10,M11
这两个管子同样组成self-cascode 结构,宽的确定与M2,M3的确定思路类似
输出级

浮动控制模块M27、M28:
在这一条电路上总电流预计约 \(16,\mu\text{A}\)。根据:
\(\displaystyle \begin{array}{l}
g_{m27} = g_{m28}\\
\left(\frac{g_m}{I_D}\right)_{27} = 8\\
\left(\frac{g_m}{I_D}\right)_{28} = 10\\
\left(\frac{I_D}{W}\right)_{27} = 0.856\,\mu\text{A}/\mu\text{m}\\
\left(\frac{I_D}{W}\right)_{28} = 2.05\,\mu\text{A}/\mu\text{m}
\end{array}\)
可以求出二者宽度的粗略解
偏置电路
M31,M32,M29,M30的宽都根据已经确定的\(\frac{I_D}{W}\)计算
Class-AB:
M33和M34的宽度根据相同的思路求得
后续调整:
在静态仿真时发现浮动控制管的跨导不等。选择增大 NMOS 的宽到 \(4.5,\mu\text{m}\)而减少 PMOS 的宽到 \(8,\mu\text{m}\),可观察到二者跨导近似相等。
Class-AB 输出对管的电流也比预想稍大,猜想为这两者\(\frac{g_m}{I_D}\)工作点与理论有所偏差。
补偿方法
在电路中,采用cascode补偿方法
第一种cascode补偿


与米勒补偿相同,补偿后的带宽为:
\(\displaystyle \omega_{u,\mathrm{cascode1}} = \frac{g_{m1}}{C_c}\)
与米勒补偿不同,其次极点表达式分母少了负载电容,因此次级点更高,带载能力更强
与米勒补偿不同,其零点在左半平面
\(\displaystyle \omega_{z,\mathrm{cascode1}} = \frac{g_{mc}}{C_c}\)
第二种cascode补偿


其带宽和次极点与第一种相同
与第一种补偿不同的是,其零点为零点对:
\(\displaystyle \omega_{z,\mathrm{cascode2}} = \pm \sqrt{\frac{g_{mc}g_{m2}}{C_c C_1}}\)
这两种补偿的零点通常都很大
在此次复现中,选用这两种补偿方式,补偿电容选两个都为 \(0.2,\text{pF}\)
仿真
单位增益 STB 仿真


在负载电容\(1,\text{pF}\)时,单位增益带宽约\(13,\text{MHz}\),相位裕度\(84^\circ\)
CMRR


PSRR


可以看到低频\(\mathrm{PSRR}>60,\text{dB}\)
在接近单位增益频率时PSRR下降,是因为在单位增益接法下随着频率升高,环路增益的减小会让其对于电源噪声的抑制减弱:
\(\displaystyle \begin{array}{l}
A_v(s)\left(V_{in+} – V_o\right) = V_o + H_p(s)V_{DD,n}\\
V_o = \frac{A_v(s)V_{in+} – H_p(s)V_{DD,n}}{1 + A_v(s)}
\end{array}\)
Slew-Rate


可以看出,仿真和理论值相差不大
总体电路:
