首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >如何从运放数据手册反推1/f 转折频率?

如何从运放数据手册反推1/f 转折频率?

作者头像
云深无际
发布2026-01-07 13:55:36
发布2026-01-07 13:55:36
980
举报
文章被收录于专栏:云深之无迹云深之无迹

高温运放哪家强?兜兜转转看 ADI(AD8634)

昨天写了这个 AD 的芯片,但其实有几个点很值得引申出来写。

按数据手册名义值:en(1 kHz) ≈ 4.2 nV/√Hzin ≈ 0.6 pA/√Hz0.1–10 Hz 输入噪声 ≈ 0.13 µV_p-p(据此反推 1/f 转折频率约 2.6 Hz)。

大家有注意到这句话说,据此反推 1/f 转折频率约 2.6 Hz

推导思路

取运放输入电压噪声的功率谱密度模型

其中 是白噪声密度(平坦), 是 1/f 噪声项。

用数据手册给的两条“锚点”来标定:

白噪声密度:(1 kHz 处)

低频区域积分噪声:0.1–10 Hz 的输入噪声 (把它换算成 RMS)

在区间 上做均方积分

白噪声面积面积

把手册的 p-p 换算成 rms:常用高斯近似 。 代入可解出

其中 定义为 1/f 与白噪声相等的“转折频率”。

计算

用上面的公式直接算了一遍(代码与输出已贴在下方):

代码语言:javascript
复制
factor   en_rms[nV]   k [V^2]        f_c[Hz]
  6.2      20.968    5.755e-17     3.262
  6.4      20.312    5.167e-17     2.929
  6.6      19.697    4.633e-17     2.626
  6.8      19.118    4.144e-17     2.349
  7.0      18.571    3.697e-17     2.096

名义计算(factor=6.6):
  en_rms = 19.697 nV
  k      = 4.633e-17 V^2
  f_c    = 2.626 Hz

将 按 6.6 换算:

解得

得到

灵敏度(换不同 p-p→rms 系数)

p-p→rms 的经验因子取 6.2–7.0 都有人用;范围内 变化如下(已在代码里打印):

factor=6.2 → Hz

factor=6.6 → Hz(本文名义值)

factor=7.0 → Hz

后记

公式核心:,由此得 再得 。

用 AD8634 的手册指标代入,得到 ****,和我们前面说的一致;结果对 p-p→rms 的换算因子有轻微敏感度,但数量级稳定在 2–3 Hz。

代码语言:javascript
复制
# 推导 1/f 转折频率 f_c 的数值演示
# 依据:AD8634 数据手册给出的噪声参数(名义值)
#   en_white(1kHz) = 4.2 nV/√Hz
#   0.1~10 Hz 输入噪声(峰-峰) = 0.13 µVpp
# 模型:S_e(f) = en_white^2 + k/f
# 令在 [f1, f2]=[0.1, 10] Hz 上的均方根:
#   ∫(en_white^2 + k/f) df = en_rms^2
#   => en_rms^2 = en_white^2*(f2-f1) + k*ln(f2/f1)
# 解得 k,再取 f_c = k / en_white^2

import math

en_white = 4.2e-9      # V/√Hz
v_pp = 0.13e-6         # Vpp (0.1~10 Hz)
f1, f2 = 0.1, 10.0

def vpp_to_rms(vpp, factor=6.6):
    # 经验:高斯噪声 p-p ≈ factor * σ,常用 factor≈6.6(~±3.3σ)
    return vpp / factor

# 中心换算:factor=6.6,并做灵敏度(6.2~7.0)
factors = [6.2, 6.4, 6.6, 6.8, 7.0]
print("factor   en_rms[nV]   k [V^2]        f_c[Hz]")
for fac in factors:
    en_rms = vpp_to_rms(v_pp, fac)
    # 解 k
    A = (f2 - f1)
    B = math.log(f2/f1)
    k = max(en_rms**2 - en_white**2 * A, 0.0) / B
    f_c = k / (en_white**2)
    print(f"{fac:>5.1f}   {en_rms*1e9:>9.3f}   {k: .3e}   {f_c:>7.3f}")

# 采用 factor=6.6 的名义值
fac = 6.6
en_rms = vpp_to_rms(v_pp, fac)
A = (f2 - f1)
B = math.log(f2/f1)
k = max(en_rms**2 - en_white**2 * A, 0.0) / B
f_c = k / (en_white**2)

print("\n名义计算(factor=6.6):")
print(f"  en_rms = {en_rms*1e9:.3f} nV")
print(f"  k      = {k:.3e} V^2")
print(f"  f_c    = {f_c:.3f} Hz")
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-11-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 推导思路
  • 计算
  • 灵敏度(换不同 p-p→rms 系数)
  • 后记
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档