移相器——K波段有源移相器设计

目录

前言

正交信号产生单元

矢量合成单元

幅度调制单元

仿真结果

相位切换模块(数控)

总结


前言

博主研一阶段在做一款K波段有源数控移相器,所用工艺为smic55nmll,完成了几个关键模块的前仿真,现对之前工作做个总结。

正交信号产生单元

首先是正交信号产生电路,分别仿真了两种结构,即RC结构(图1)和RLC结构(图2)。

    

图1 RC结构正交信号产生电路                                                  图2 RLC结构正交信号产生电路

经过仿真发现,RC电路和RLC电路都能产生近乎无误差的四路正交信号,如图3和图4 所示。

  

图3 RC结构相位仿真                                                                 图4 RLC结构相位仿真 

但是,RC结构的增益损失交大,RLC增益损失较小,增益曲线如图5和图6所示。

  

图5 RC结构增益仿真                                                                图6 RLC结构增益仿真

我们的指标要求里还有温度范围的要求,即-55°C——125°C的范围,经仿真发现,RC结构的正交信号精度受温度影响较小,RLC结构的正交信号精度受温度影响较大,故本设计采用RC结构,其瞬态仿真如图7。

图7 RC结构瞬态仿真结果

矢量合成单元

矢量合成单元采用吉尔伯特单元结构,电路结构如图8所示,其中为了扩大带宽,采用了电感峰化技术(源端增加电感)。

图8 吉尔伯特单元电路结构

目前用理想的电流源代替幅度调制部分的电流镜,方便仿真,真实结构如图9所示。

图9 吉尔伯特单元电路结构(加MOS开关)

幅度调制单元

对于幅度调制单元,设计如图10所示。其中电流由NMOS入,传到PMOS,采用共源共栅电流镜,可以减小衬偏效应。通过开关选择电流流入到I通路还是Q通路,从而控制输出信号幅度。尾部的NMOS开关用来选择极性,即四个象限,11代表第一象限,01代表第二象限,00代表第三个象限,10代表第四个象限。

图10 幅度调制单元

仿真结果

首先,通过吉尔伯特单元的带宽,如图11所示,可以看到带宽远远满足要求。接着仿真了第一象限的相位,如图12所示,最后,仿真了360°的相位变化,如图13所示。

图11 吉尔伯特单元带宽仿真

接着仿真了第一象限的相位,如图12所示,最后,仿真了360°的相位变化,如图13所示。

  

图12 第一象限相位仿真                                                              图13 360°相位仿真

现在基本的模块已经搭建完毕,360°的相移也可以实现,基本功能完成,但是还要考虑输入输出巴伦,其作用是匹配和单端差分的转换,在这里不做考虑(我不懂这部分内容)。

相位切换模块(数控)

最后要给出的是开关的真值表,利用该真值表可以完成数字控制,如表1和表2所示。真值表基本采用类似one-hot编码的方式(忽略转变极性的开关)。

表1 0到180°的开关控制真值表

表2 180°到360°的开关控制真值表

考虑到每次开关切换,如果按照上述真值表,那么每次可能会改变两个相位及以上相位,造成移相误差及不必要的功耗,故采用格雷码完成开关电路设计。真值表如表3和表4所示。

表3 0到180°的开关控制真值表(格雷码)

表4 180°到360°的开关控制真值表(格雷码)

总结

基本模块介绍完毕,移相器的内容就更新到这里,接下来还是继续更新数字IC的内容吧。做过模拟之后为什么又开始做数字呢?模拟射频IC设计,非常需要经验,资深工程师一眼就能看出的问题,小白需要不断去尝试,随着尝试多了,经验也就上来了,做数字IC的时候,每次看到自己写的代码,仿出来的波形完全正确,心里就非常舒服,感觉非常有成就感,随着学的东西越多,自己的能力也在慢慢提升,现在甚至有点喜欢手撕代码,从代码看波形,这种进步的感觉是可以量化的,所以我选择了数字IC的道路。

希望同学们都能找到自己的方向,一起努力~

### 二阶有源移相器工作原理详解 #### 定义与组成 二阶有源移相器是一种能够改变输入信号相位并提供一定增益的电路。该类移相器通常由运算放大器以及RC网络构成,其中RC网络决定了相移量。 #### 工作机制 当交流电压施加于二阶有源移相器时,在特定频率范围内,通过精心设计的反馈路径中的电阻和电容元件可以实现所需的相角偏转效果。具体来说: - 输入端接入待处理的正弦波形; - 经过内部级联的一对RC环节后形成新的输出波形,其相对于原始输入存在固定角度差异; - 这种变化取决于所选组件参数及其配置方式; 对于理想情况下的二阶系统,传递函数可表示为: \[ H(s)=\frac{V_{out}(s)}{V_{in}(s)}=\frac{(1+sT_2)(1-sT_1)}{(1+\alpha sT_2)(1-\beta sT_1)} \] 这里 \( T_1, T_2 \) 是时间常数而 \( \alpha,\beta \) 则代表比例系数[^4]。 为了获得最佳性能,应当合理调整这些参数使得整个装置能够在目标频带内稳定运行,并满足预期的功能需求。 ```python import numpy as np from scipy import signal import matplotlib.pyplot as plt # 设定仿真条件 frequencies = np.logspace(0, 7, num=500) omega = frequencies * (2*np.pi) # 参数设定 R1 = R2 = 1e3 # 假设两个电阻均为1kΩ C1 = C2 = 1e-9 # 和两个电容器都是1nF alpha = beta = 1.0 def transfer_function(w): """计算给定角频率w处的幅值响应""" w_c1 = 1/(R1*C1); w_c2 = 1/(R2*C2); numerator = complex((1+(w/w_c2)), -(w*w_c1)) denominator = complex((1+alpha*(w/w_c2)),-beta*(w*w_c1)) return abs(numerator/denominator),np.angle(numerator/denominator)*180/np.pi amplitude_response, phase_shift = zip(*map(lambda x:transfer_function(x), omega)) plt.figure(figsize=(12,6)) plt.subplot(211) plt.semilogx(frequencies, amplitude_response,'b') plt.title('Amplitude Response of Second Order Active Phase Shifter') plt.ylabel('|H(jω)|') plt.subplot(212) plt.semilogx(frequencies,phase_shift,'r') plt.xlabel('Frequency(Hz)') plt.ylabel('Phase Shift(Degree)') plt.title('Phase Shift vs Frequency') plt.tight_layout() plt.show() ``` 此图展示了不同频率下对应的幅度响应及相应的相位移动特性曲线。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值