R-2R 梯形电阻 DAC:分压网络、开关网络与单调性
更新时间:2026-09-19。前置:用 PWM/PDM 做低成本 DAC、SAR CDAC。数字码转模拟电压,最直接的电阻分压要 2^N 个电阻;R-2R 梯形只需两种阻值就能实现任意位宽。
本文要回答的问题
- R-2R 网络为什么只用 R 和 2R 两种电阻?
- 每个数字位怎样贡献二分加权电压/电流?
- 开关接哪里,输出为什么常配运放?
- 失配、毛刺和终端电阻带来什么问题?
一、为什么不用 2^N 电阻
N 位全电阻串 DAC 需要 2^N 个等值电阻 + 庞大开关树(8 位 256 个,16 位 65536 个),面积和失配都爆炸。R-2R 梯形网络用反复出现的 R、2R 两种电阻,从 MSB 到 LSB 逐级二分,规模只随位数线性增长(每增加一位加一节「R + 2R」)。
二、梯形结构与戴维南等效
bash
R R R R(2R 终端到地)
Vref ──┬──/\/\/──┬──/\/\/──┬──/\/\/── ... ──┬──/\/\/── GND
│ bN-1 │ bN-2 │ bN-3 b0 │
2R 2R 2R 2R
│SW │SW │SW │SW
Vout/虚地(各位开关在 Vref(1) 与 地(0) 间选择,电流型接虚地)关键性质:从梯形任意一个节点向右看进去的等效电阻都是 R(终端 2R 与并联路径等效),因此每过一节,电流精确对半分流:
- MSB 支路电流 = Vref/(2R) 量级,下一位 = 一半,再下一位一半……每位权重 2⁻¹、2⁻²……2⁻ⁿ。
- 每个数字位用开关把对应的 2R 接到参考(1)或地(0)(电压型),或接到运放虚地/地两条电流求和路径(电流型)。
- 总输出(电流型在运放反馈电阻上)与二进制码成正比:
Vout ≈ −Vref·(code/2^N)·(Rf/R 归一)。
三、电压型与电流型
- 电压型(电压开关):2R 开关在 Vref 与地之间,梯形顶端直接输出电压。结构直观,但开关在电阻串里、基准看到的阻抗随码变化(Vref 负载随输入码跳动),对基准源调整率要求高;输出阻抗随码变化,需高阻缓冲。
- 电流型(电流开关,倒 R-2R):梯形固定接参考建立各节点电流,2R 下端开关在「运放反相端(虚地)」和「地」之间切换。因为虚地=地电位,开关两端电位恒为 0 附近,切换时节点电压不摆动、速度快、glitch 小、基准看到恒定阻抗;运放把加权电流求和转电压,是高性能常见接法。
- 无论哪种,输出通常接运放做 I/V 转换 + 缓冲/电平搬移/滤波,否则负载拉偏分压。
四、失配、单调性与毛刺
- 电阻失配 → DNL/INL,甚至非单调:R-2R 依赖每节精确二分。若 MSB 附近电阻偏差使该位权重略小于所有低位之和(理想 MSB=所有低位和+1 LSB),码从
0111…跳到1000…时输出反而下降——非单调(DNL<−1 LSB),闭环控制可能因此震荡/丢锁。这是 R-2R 最致命的误差。布局上让 MSB 段用更大面积/匹配结构、必要时 trim/激光修调。 - 码相关毛刺(glitch impulse):多位同时切换(如 0111→1000)时开关不同步,中间瞬间出现错误码,输出一个窄脉冲(毛刺)。高速建立/低失真应用用去毛刺保持(de-glitch sample-hold)、差分对称版图、电流型虚地开关减小。
- 终端 2R 精度:最末端的 2R 决定整链等效,偏差累积成 INL;片内做精密 2R 或外接。
- 基准调整率/阻抗:电压型里 Vref 看到的输入阻抗随码变,基准必须低阻、快建立;基准噪声/漂移直接乘进输出(见 bandgap 基准)。
- 运放误差:失调电压、偏置电流、有限增益、压摆率和建立时间决定最终精度/速度;虚地若偏离真地产生 INL。
- 温度梯度/电压系数:电阻温度系数失配在温度两端造成漂移。
五、与其他 DAC 方案对比
| 方案 | 分辨率/成本 | 说明 |
|---|---|---|
| PWM/PDM + RC | 低成本、低速 | 靠占空比/平均,需 RC 滤波,纹波/建立慢(见 PWM DAC) |
| 电阻串 | 低位数 | 2^N 电阻,保证单调但面积大 |
| R-2R | 中高分辨率 | 线性面积、依赖匹配、可静态输出 |
| ΣΔ/过采样 DAC | 高分辨率音频 | 1 位流+模拟重建滤波(见 ΣΔ ADC 对偶) |
| 电流舵(current-steering) | 高速 | 单位/分段电流源,用于高速视频/任意波形 |
R-2R 适合需要真静态模拟电压/直流设定(偏置、反馈给定、慢速控制)和中等分辨率的场景;音频更常用过采样/PWM,极高速用电流舵。
六、常见的坑
- MSB 权重不足导致非单调:电阻失配让 0111→1000 跳变反向,闭环出错;要保证匹配/trim。
- 终端 2R 不准:整链二分被破坏,INL 累积。
- 输出不带缓冲:负载直接拉偏高阻分压,读数随负载变。
- 基准随码负载跳动(电压型):基准调整率差造成码相关误差,选电流型或强缓冲基准。
- 切换毛刺进后级:0111/1000 边界大 glitch,需 de-glitch/滤波,否则当作真实跳变。
- 运放速度/精度不匹配:压摆率、建立时间不够,高位码更新不到位;失调直接当偏置误差。
- 电阻温度/电压系数失配:温漂造成 DNL。
- 混价位权算错:MSB 端对应参考侧,接反方向导致码-电压反向。
- 超出输出摆幅:运放轨到轨不足,高位码削顶。
- 数字开关噪声耦合:开关翻转耦合进敏感电阻/基准,差分布局与隔离。
- 上电码随机产生尖峰:DAC 上电到稳定前输出不可控,敏感器件加钳位/默认码。
- 把 R-2R 当高分辨率音频:无过采样整形,静态电阻网络做高分辨率音频在面积/失配上不划算。
相关与延伸
低成本方案见 PWM/PDM DAC;过采样高分辨率对偶见 ΣΔ ADC;基准来源见 bandgap 基准;电容版加权网络见 SAR CDAC。
总结
R-2R 梯形 DAC 只用 R 和 2R 两种电阻:终端 2R 与逐级并联使每个节点向右看都是 R,于是参考电流在每一节精确对半分流,给各位 2⁻¹、2⁻²……2⁻ⁿ 的二进制权重,数字码用开关把对应 2R 切到参考/地(电压型)或运放虚地/地(电流型,虚地电位不摆动、glitch 小、基准负载恒定),再由运放把加权电流求和缓冲成与 code/2^N 成正比的电压;它面积随位数线性增长,但精度完全依赖电阻匹配——MSB 段权重一旦小于所有低位之和就在 0111→1000 处非单调,加上多位同时翻转的毛刺、终端 2R 误差和基准调整率,是设计时最需要匹配布局、trim 和去毛刺的四个点。