电路设计中的相噪Phase Noise是取10log还是取20log呢?

最近在仿真VCO,用Cadence中的pss+pnoise对VCO的相噪进行仿真,发现noise summary和Phase Noise给出来的值不是直接能够对上的:
在这里插入图片描述
所以从nosie summary给出的噪声功率及其占比到Phase Noise之间是需要转换的。
从Phase Noise的单位dBc/Hz我们可以得到一些线索:比如我们需要知道载波频率carrier power是多少。
——还是用pss仿真可以得到不同谐波处的power值:
在这里插入图片描述
得到载波功率为 P c a r r i e r = 2.613 m W P_{carrier} = 2.613mW Pcarrier=2.613mW
根据noise summary得到噪声功率,因此 P n o i s e P c a r r i e r \frac{P_{noise}}{P_{carrier}} PcarrierPnoise可以计算了。
那么接下来陷阱要来了,你觉得此时求Phase Noise的话是该取10log呢还是该取20log呢?

Answer:看noise summary给出的单位是 V 2 / H z V^2/Hz V2/Hz,再加上计算的都是功率,是不是觉得应该取10log呢?

如果你是这样想的,那就恭喜你,落入陷阱啦!
正确的做法应该是取20log,因此这里的噪声功率和载波功率相除后就没有单位啦,当然直接取20log啦~

下面我们来验证一下:
P h a s e N o i s e = 20 × l o g ( P n o i s e ÷ P c a r r i e r ) = 20 × l o g ( 1.88573 e − 6 ÷ 2.613 e − 3 ) = − 62.833 d B c / H z Phase Noise = 20 × log (P_{noise }÷ P_{carrier}) = 20 × log (1.88573e-6 ÷ 2.613e-3) = -62.833 dBc/Hz PhaseNoise=20×log(Pnoise÷Pcarrier)=20×log(1.88573e6÷2.613e3)=62.833dBc/Hz
与图1中相噪曲线的Mark值非常接近。

所以下次不要记错了,求Phase Noise之类的指标都是用20log啦!

### VCO相位噪声定义 电压控制振荡器(Voltage-Controlled Oscillator, VCO)的相位噪声是一种衡量信号纯度的重要指标。它描述的是理想正弦波偏离其预期频率的程度,通常表现为短时间内的随机波动。这种偏差可以被分解为幅度调制和相位调制两部分,而相位噪声主要关注后者[^1]。 具体来说,VCO 的是指单位带宽内对于载波功率的边带功率水平,通常以 dBc/Hz 表示。较低的相位噪声意味着更高的信号质量以及更少的干扰。 --- ### VCO 计算方法 为了量化 LDO 噪声对 VCO 输出的影响,可以通过以下公式来表示: \[ L(f) = 10 \cdot \log_{10} \left( \frac{S_\phi (f)}{\Phi_0^2} \right) \] 其中: - \( S_\phi (f) \) 是相位噪声频谱密度; - \( \Phi_0 \) 是载波信号的初始相位。 进一步分析表明,当 Kpush 被视为固定参数时,由低降压稳压器(Low Dropout Regulator, LDO)引入的噪声会直接影响到最终输出的性能。这说明了优化电源管理模块的重要性。 另外,在实际应用过程中还需要考虑其他因素如温度漂移、寄生电容等可能带来的额外影响。 --- ### 对于功耗与效率关系的理解 除了探讨如何降低相位噪声外,我们还应该注意到电路设计中的能耗问题。根据已知条件可知,整个系统的总消耗功率 P 可通过下面这个表达式近似得出: \[ P = 3 f_0 C_{tot} V_{dd}^2 \] 这里需要注意一点:尽管工作频率 \( f_0 \) 和总的负载电容 \( C_{tot} \) 存在反向变动趋势,但由于它们调整范围接近一致,从而使得整体能量需求维持恒定状态不变[^2]。 这意味着工程师们可以在不影响总体效能的前提下尝试各种不同的配置组合方案来进行调试优化操作。 --- ```python import numpy as np def calculate_phase_noise(s_phi_f, phi_0): """ Calculate phase noise based on given spectral density and carrier phase. Parameters: s_phi_f : float Phase noise spectrum density at offset frequency f. phi_0 : float Initial phase of the carrier signal. Returns: l_f : float Logarithmic representation of phase noise in decibels relative to carrier per hertz. """ l_f = 10 * np.log10((s_phi_f / (phi_0 ** 2))) return l_f # Example usage with hypothetical values example_s_phi_f = 1e-20 # Hypothetical value for demonstration purposes only example_phi_0 = 1 # Normalized initial phase result = calculate_phase_noise(example_s_phi_f, example_phi_0) print("Calculated Phase Noise:", result, "dBc/Hz") ``` ---
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值