模拟CMOS集成电路设计入门学习(12)

本文介绍了吉尔伯特单元,一种用于实现增益可变的放大器电路。通过控制电压来调整尾电流,从而改变放大器的增益。电路结构中,两个差动对以相反的增益工作,使得输出电压能够从负值连续变化到正值。这种设计消耗了更多的电压余度,但提供了更大的灵活性。为了确保晶体管M5和M6工作在饱和区,共模电平必须满足特定条件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

吉尔伯特单元

回顾:

差动放大器两个重要特性

电路的小信号增益是尾电流的函数;

差动对的两个输入管为控制尾电流在两个支路的流动提供了简便的方法。

下图为可变增益放大器VGA)的一个简单例子:

 其控制电压确定了尾电流的大小,从而也决定了增益的大小。{这种电路结构中,A_{v}可以从0变化到由电压余度极限和器件的尺寸所决定最大值}

我们想找到一个增益可以由负值连续变化到正值的放大器

 上图所示电路中,两个差动对以相反的增益对输入进行放大

因为V_{out1}+V_{out2}=R_{D}(I_{D1}+I_{D4})-R_{D}(I_{D2}+I_{D3})

所以我们只需将相应晶体管的漏端短接即可是电流相加,从而产生所需要的输出电压,如下图所示:

 对于大的\left | V_{count1}-V_{count2} \right |,所有的尾电流只流过顶端两个差动对中的一个。

为了简化,我们将电路画成下面所示:

我们称其为“吉尔伯特单元”。

与共源共栅结构一样,吉尔伯特单元比简单的差动对消耗更多的电压余度。这是因为M1-M2和M3-M4组成的两个差动对层叠在控制差动对的顶部。

为了使M5管和M6管工作在饱和区,V_{count}共模电平必须满足V_{CM,cont}\leq V_{CM,in}-V_{GS1}+V_{TH5,6}

### VGA 可变增益放大器的工作原理 VGA(Voltage Controlled Amplifier),即可变增益放大器,是一种能够通过控制电压来调整其增益特性的电子元件。这种特性使得VGA在多种应用场景中非常有用。 #### 控制机制 对于像AD603这样的压控增益放大器,在特定范围内改变施加于器件上的直流偏置电压可以线性地调节信号的增益水平[^1]。这意味着可以通过外部电路精确设定所需的放大量,从而实现动态范围内的灵活调控功能。 #### 应用场景 这类设备广泛应用于通信系统、音频处理等领域。例如,在无线接收机前端设计里,为了补偿路径损耗并维持稳定的输出电平,常常会采用VGA来进行自动增益控制(AGC)[^2]。此外,它们也适用于测试测量仪器以及任何需要精细调谐信号强度的地方。 #### 实际案例分析 考虑一个具体的例子:当频率设为10kHz时,并且给定条件下的DC电压(Vdc)=2.3伏特,而振幅(Amplitude)分别取正值(+2.3V)与负值(-2.3V),此时观察到输入端口Vin3和Vin4处所对应的响应曲线变化情况表明了不同条件下系统的性能差异。 ```python import numpy as np from matplotlib import pyplot as plt frequencies = [1, 10, 100, 1e3, 10e3] # 频率列表 (Hz) gains_pos = [] # 正向增益数据存储数组 gains_neg = [] # 负向增益数据存储数组 for freq in frequencies: gain_pos = calculate_gain(freq, vdc=2.3, amplitude=2.3) # 计算正向增益 gains_pos.append(gain_pos) gain_neg = calculate_gain(freq, vdc=2.3, amplitude=-2.3) # 计算负向增益 gains_neg.append(gain_neg) plt.figure() plt.plot(frequencies, gains_pos, label='Positive Amplitude') plt.plot(frequencies, gains_neg, label='Negative Amplitude', linestyle='--') plt.xscale('log') # 对数坐标轴显示更清晰的趋势关系 plt.xlabel('Frequency (Hz)') plt.ylabel('Gain (dB)') plt.title('VGA Gain vs Frequency at Different Amplitudes') plt.legend() plt.grid(True) plt.show() def calculate_gain(freq, vdc, amplitude): # 这是一个假设函数用于模拟实际计算过程 """Simulate the calculation of gain based on frequency and other parameters.""" return ((freq / 10)**0.5 * abs(amplitude)) + vdc # 返回基于参数的假想增益值 ``` 此代码片段展示了如何根据不同幅度下随频率变化绘制出相应的增益图表,有助于理解VGA工作过程中各因素间的影响规律。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

❀爱理的哲也❀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值