简介
电子行业经常需要测量宽动态范围信号,但目前的技术常常难以满足系统的实际要求。电子秤系统通常采用称重桥式传感器,最大满量程输出为1 mV至2 mV。这种系统要求分辨率约为1000000:1,折合到2 mV输入端时,需要高性能、低噪声、高增益放大器和∑-∆调制器。与此类似,医疗应用中进行化学和血液分析时经常会采用光电二极管传感器,产生的电流很小,需要精确测量(如图1所示)。通常采用的是低噪声跨导放大器,该放大器有多级增益和后处理功能。
尽管实际传感器数据通常只占输入信号范围的一小部分,但系统往往必须经过专门设计以处理故障情况。因此,宽动态范围、高性能(且输入较小)以及对快速变化信号的迅速响应就成了关键要求。有些应用(如振动监控系统)包含交流和直流两种信息,因此,具备精确监控大小两种信号的能力变得越来越重要。
要满足这些要求,需要有灵活的信号调理模块、低噪声输入、较高的增益,还要能够在不影响性能的前提下动态改变增益以响应输入电平变化,同时依然维持宽动态范围。现有的∑-∆ 技术能够提供很多应用所需的动态范围,但要牺牲更新速率。本文提出了一种替代方法,即结合采用高速逐次逼近型采样ADC和自动调节量程的可编程增益放大器(PGA)前端。鉴于增益会根据模拟输入值自动改变,这种方法采用过采样将系统的动态范围增加至126 dB以上。
技术
在ADC应用中,动态范围是指满量程均方根值与均方根噪声之比,通常将模拟输入短接在一起测得。动态范围通常以分贝表示 (dBV = 20 × log10 电压比)表示ADC能够辨识的信号幅度范围;动态范围为60 dB的ADC可辨识的信号幅度范围为1000:1。N位ADC的动态范围(DR)计算公式如下:
DR = 6.021N + 1.763 dB
∑-∆ ADC,(如AD7767, 可以通过结合∑-∆ 调制器和数字后置处理器实现出色的动态范围。转换器之后的数字滤波用于消除带外量化噪声,它还可以将数据速率从滤波器输入端的fMCLK, 降低到数字输出端的fMCLK/8, fMCLK/16, 或fMCLK/32, 具体取决于所用器件的型号。要提高动态范围,可以添加低噪声PGA,通过调理输入信号来实现满量程。系统的本底噪声主要表现为前端PGA的输入噪声,后者取决于增益设置。如果信号太大,就会超出ADC输入的量程。如果信号太小,就会在转换器的量化噪声中丢失。∑-∆ ADC往往用于需要较低系统更新速率的应用。
对逐次逼近型ADC进行过采样以提高动态范围
提高逐次逼近型ADC动态范围的方法之一是实施过采样,即以远高于奈奎斯特频率的速率完成输入信号的采样过程。一般说来,采样频率每增加一倍,噪声性能就会提升约3 dB(如图2所示)。过采样可通过后处理技术以数字形式完成。有些ADC (如 AD7606, 具有可编程过采样率,最终用户可以选择合适的过采样率。
PGA功能与过采样相结合
要实现最大动态范围,可以添加前端PGA级,从而提高极小信号输入的有效信噪比(SNR)。假设系统动态范围要求为126 dB以上,首先,计算出最小均方根噪声,以实现该动态范围。例如,3 V的输入范围(6 V p-p)具有2.12 V的满量程均方根值(6/2&radIC;2)。最大系统容许噪声计算公式如下:
126 dB = 20 log (2.12 V/rms noise)
因此 rms 噪声≈ 1 µV rms.
现在,考虑系统更新速率,系统更新速率决定了过采样速率和系统所能容许的最大噪声量(折合到输入端(RTI))。例如AD7985 16-bit, 2.5-MSPS PulSAR®是一款16位、2.5 MSPS PulSAR® ADC,当该器件运行于600 kSPS(功耗11 mW),过采样率为72时,输入信号限制在大约4 kHz带宽内。噪声密度(ND)乘以√f即可得出总均方根噪声,因此,最大容许输入频谱噪声密度(ND)计算公式如下:
1 μV rms = ND × √4 kHz
或, ND = 15.5 nV/√Hz
从RTI系统输入噪声的这一品质因数来看,可以选择适当的仪表放大器来提供足够的模拟前端增益(与ADC的信噪比相加并具有相关过采样时),从而实现所需的126 dB。AD7985的典型信噪比值为89 dB,72倍过采样会进一步将信噪比增加约18 dB(72 接近26,相当于每倍增一次增加3 dB)。要实现126 dB的动态范围,还需要再增加20 dB,这可以通过模拟PGA级的增益来提供。仪表放大器必须提供≥20的增益(或至少不能超过15.5 nV/√Hz的噪声密度指标)。AD8253是很好的选择,它是一款10 MHz、20 V/µs、G = 1、10、100的1000iCMOS®可编程增益仪表放大器,具有低噪声、10 nV/√Hz输入级,增益为100,满足所需带宽,如图3所示。
图4所示为采用前端PGA增益和ADC过采样的系统级解决方案。AD8021是一款2.1 nV/√Hz的低噪声高速放大器,能够驱动AD7985,还可以偏置或衰减AD8253的输出。AD8253和AD8021都采用外部共模偏置电压工作,可共同确保ADC的输入具有相同的共模电压。
由于整个系统的噪声预算为最大15 nV/√Hz折合到输入端 (RTI),必要计算每个模块的主要噪声源,确保不会超过15 nV/√Hz的强制限幅。AD8021折合到输入端的噪声值小于3 nV/√Hz,当折合到增益为100的AD8253级的输入端时可忽略不计。AD7985的额定信噪比为89 dB,采用外部4.5 V基准电压源,适用的噪声分辨率小于45 μV rms。假设ADC的奈奎斯特带宽为300 kHz,在该带宽范围内会产生约83 nV/√Hz的噪声。折合到AD7985输入端时,其小于1 nV/√Hz的噪声在系统中可忽略不计,因为其中的RTI噪声源是用平方和的平方根计算方法相加的。
采用AD8253的另一个好处是具有数字增益控制,可使系统增益进行动态变化以响应输入变化。这一功能可通过系统的数字信号处理能力智能化实现。
在该应用中,数字处理的主要功能是利用AD7985 16位转换结果产生高分辨率输出。该功能通过自动抽取数据和切换模拟输入增益实现(具体取决于输入幅度)。这种过采样产生的输出数据速率低于ADC采样速率,但是动态范围大大增加。
要对该应用的数字端进行原型设计,应采用现场可编程门阵列(FPGA)作为数字内核。为了快速调试系统,模拟电路和FPGA整合到了一块电路板上,如图5所示,采用了 系统演示平台 (SDP) 连接器标准,可以轻松通过USB连接到PC。SDP结合了可重复使用的硬件和软件,可以通过最常用的器件接口轻松控制硬件并从中捕捉数据。
基本控制流如下:
- 先上电,然后校零。将AD8253的差分模拟输入端对地短接,每次增益设置时进行AD7985转换。存储ADC值,以供稍后使用。
- 校准完成后,FPGA以预设速率向AD7985发出一个周期转换开始信号,本例中约为600 kSPS。每个ADC结果都读入FPGA,并同时传递至抽取和增益模块。
- 增益模块检查当前的ADC结果、之前的ADC结果和当前的增益设置,然后确定对下一次ADC转换最合适的增益设置。下面将详细介绍这一过程。
- 抽取模块处理每个ADC样本及其当前PGA增益设置,以及之前存储的校准值。收到72个ADC样本后,23位输出结果就是72个样本的平均值,其中考虑了失调和增益。
- 然后,该23位结果会转换成二进制补码,以兼容Blackfin串口(SPORT)的格式从FPGA接收,并由SDP-B硬件捕捉。该过程每隔72个样本采用新数据字重复进行。
FPGA中采用的两个主要模块是抽取器和增益计算器。下面将详细介绍每个模块。
抽取器
该模块具有内部状态机,可以管理一些连续的数据处理步骤:
每个AD7985样本都归一化为相同的比例。例如:AD7985输入4 mV,基准电压4.5 V,得出代码(4 mV/4.5 V × 65535) = 58,G = 1。G = 100时,ADC输入端获得电压为400 mV,得出输出代码为5825。对模拟前端增益(AFE)为1的ADC样本而言,当AFE增益为100时,样本必须乘以100,以抵消比例影响。这样就能保证这些样本能够正确求得平均值且合理抽取,而不受AFE增益设置的影响。
抽取器功能就位后,就可以对模拟输入进行初始测试。
将输入短接,系统就能在高增益直流模式下测试(如图6所示)。
结果显示,p-p噪声为6位,均方根噪声出色,为0.654 µV rms(0.84 LSB,16位)。2.12 V均方根满量程范围时,动态范围计算公式如下:
DR = 20 log10(FS/rms noise) = ~130 dB
因此,系统很容易满足有关噪声的动态范围目标。采用50 mV p-p交流模拟输入进行测试时,频域出现重大失真(如图7所示)。这一特定输入幅度突出表明了系统的最差情况——即交流输入幅度略大于增益 为100的模式所处理的范围,而且系统经常在两种模式之间切换。选择增益阈值也会加重这一范围切换效应问题,详见下文所述。每个增益模式失调之间的不匹配会以总谐波失真形式显示出来,因为计算出的输出码的跳变幅度为每个范围中各失调之差。
只要通过校准消除每个增益范围的零失调,就会明显减少信号失真。实际上,单凭校准就可以减少约50 dB的谐波,如图8所示。即使输入音处于最差情况,谐波也可以减少至–110 dB满量程水平。
校准后的失调从归一化的样本中去除。由于两种增益设置时都进行了校准,去除的失调取决于ADC采样时的增益。
经过归一化和失调校准后的样本添加至累加器寄存器,累加器寄存器上电时可复位,每次接收72个样本。72个样本接收完成且添加至累加器后,总和传递至除法器,除法器将累加器中的值除以72,产生一个23位的平均值。此时会设置输出标志,说明除法完成,新的结果已就绪。
增益设置
该模块根据当前的增益设置、两个原始ADC样本和一些硬编码阈值来输出新的增益设置。系统采用四个阈值;这些阈值的选择对最大限度地增加系统的模拟输入范围至关重要,保证G = 100模式用于尽可能多的信号范围,同时防止超过ADC输入的量程。注意,该增益模块的运行基于每个原始ADC结果,而非经过归一化的数据。记住这一点后,下面将举例说明可用于此类系统的一些阈值(假设为双极性系统,中量程为0):
T1(正下阈值):+162(高于中量程162个代码)
T2(负下阈值):-162(低于中量程162个代码)
T3(正上阈值):+32507(低于正满量程260个代码)
T4(负上阈值):–32508(高于负满量程260个代码)
处于G = 1模式时,采用内限值T1和T2。当实际ADC结果处于T1和T2之间时,增益切换至G = 100模式。这样可以确保ADC接收到的模拟输入电压尽快最大化。
处于G = 100模式时,采用外限值T3和T4。如果ADC结果预计高于T3或低于T4,增益就会切换至G = 1模式,以防止超出ADC输入的量程(如图9所示)。
当处于G = 100模式时,如果算法预测下一个ADC样本刚好落在外阈值以外(采用非常基本的线性预测),产生的ADC结果为+32510,增益就会切换到G = 1,下一个ADC输出结果就不是+32510,而是+325。
在类似的系统中,要想防止震颤(阈值附近快速反复的增益切换), 则须使用迟滞 (100至1和1至100切换电平的分离) 它对确定正确的阈值限值十分重要。在本例采用的实际限值的计算中,设置了明显的迟滞。如果系统从高增益(G = 100)模式切换到低增益(G = 1)模式,系统的模拟输入电压就必须减少约50%才能返回到高增益模式。
整个系统的性能
获得充分优化的增益和抽取算法后,整个系统就准备就绪,可以开始测试。图10显示了系统对运行在1 kHz下的–0.5 dBFS大信号输入音作出的响应。将100的PGA增益考虑在内时,实现的动态范围为127 dB。
与此类似,当针对图11中的小信号输入进行测试,且输入音在–46.5 dBFS下为70 Hz时,实现的动态范围可达129 dB。较小输入音的性能有望得到提升,因为该测量过程中没有发生增益范围的有源切换。
结束语
系统的性能取决于其能否动态地切换增益以处理大小两种信号输入。∑-∆技术能够提供出色的动态范围,而逼近型解决方案则可以根据输入信号动态改变前端增益,不会影响系统的性能。小信号和大信号交流和直流输入都可以实时测量,无需等待系统建立时间,也不会由于延迟增益改变而产生较大的突波。
系统的关键是结合ADC过采样技术与预见性增益设置算法。如何处理输入信号的压摆率对于增益算法至关重要。输入压摆率较高时,可能需要定制增益设置,以便当信号接近可能超出ADC输入量程的电平时,快速做出响应。这一要求可以通过缩小阈值来实现,或者用多个样本取代两个样本,通过对输入信号进行更复杂的预测分析来实现,如本例所述。反之,在输入压摆率极低的系统中,可以扩大阈值,从而更好地使用高增益模式,而不会超出ADC输入量程。
虽然本文介绍的是AD7985 ADC,但所用的技术同样适用于ADI公司的其他高速转换器。采用更快的ADC采样速率后,最终用户可以将增加的输入带宽和更快的输出数据转变为增加的过采样率,从而实现更大的动态范围。
如果采用AD8253 VGA的额外增益范围,而不仅仅是G = 1和G = 100,可以进一步减小增益变化的影响。在本文所述的示例中,增益切换时会产生少量的失真。但是,如果采用G= 10的范围,对采用额外校准点的三步进增益而言,可能会实现更好的系统THD参数。