数模转换器(DAC)
数模转换器就是把 ADC 反过来跑:它接收一串数字——芯片算出来或存下来的代码——再把它们重建成真实、连续的电压或电流,送给扬声器、天线驱动器或某个控制环路。可以把它想成一套按数字填色的颜料盒。数字这边递过来一个序号(“这个采样点是 4096 级里的第 1402 级”),DAC 就调出恰好那种深浅的模拟量,并把它稳稳保持在输出端,直到下一个数字到来。每一个代码对应一架梯子上的一级,这架梯子总共有 2^N 个等间距的输出电平;一级的高度——也就是转换器能迈出的最小一步——就是 LSB,等于满量程范围除以 2^N。所以一个满量程 1.2 V 的 12 位 DAC,每一跳大约是 1.2 V / 4096,约 0.3 mV。
由于输出只在新采样到来时才变化,之后就保持平直(这叫零阶保持),原始信号出来的是一道楼梯,而不是一条平滑曲线。这种棱角分明的台阶是你并没有要的高频杂质,所以 DAC 后面几乎总要接一个模拟重建滤波器——一个温和的低通——把这些台阶重新磨圆成本该有的波形。有限的级数还给保真度设了一道硬天花板:一个理想的 N 位转换器在满量程正弦信号下,信噪比最多也就到大约 6.02N + 1.76 dB,这跟 ADC 遵守的量化极限是同一条,所以每多一位大约能换来 6 dB。真实的 DAC 连这个数都达不到,因为没有哪两级是间距完全相等的。
正是这些间距上的不完美,让模拟实践变得棘手。微分非线性(DNL)衡量每一步偏离一个理想 LSB 有多远,积分非线性(INL)则衡量整条传输曲线累积起来的弯曲程度;一旦 DNL 达到 -1 LSB,代码在递增、输出却可能往回走,这就是非单调 DAC,会悄无声息地毁掉任何依赖它的反馈环路。另一个经典的坑是毛刺能量(glitch energy):在像 0111 跳到 1000 这样的大代码跳变处,许多内部开关会在略有差异的瞬间翻转,于是有那么几纳秒,输出会冲到一个它本不该去的地方。这就是为什么架构很关键——慢速、高精度的音频器件可能用 R-2R 梯形网络,而高速的通信发射机则会选用电流舵(current-steering)DAC,它专为以最小毛刺切换电流而设计。
一个 N 位 DAC 把它的输入代码按比例缩放成参考电压的一个分数;LSB 就是一个输出台阶的大小。
位数更多提升的是分辨率,未必是准确度:一个 INL 很差的 16 位 DAC,可能还不如一个经过良好微调的 12 位 DAC 来得真实,所以要看线性度和毛刺指标,而不是只看位数。