差分输出、电流模式DAC的参数和测量方法

发布者:RadiantEnergy最新更新时间:2010-08-12 来源: elecfans关键字:测量  电流模式DAC  MAX5891  差分输出 手机看文章 扫描二维码
随时随地手机看文章

  本文中,将以MAX5891 作为测量和规格说明的特例。但所介绍的参数和测量方法可以用于其他的差分输出、电流模式DAC。

  线性参数说明

  定义数据转换器线性精度主要有两个参数:积分(INL)和差分(DNL)非线性。INL是输出传输函数和理想直线之间的偏差;DNL是转换器输出步长相对于理想步长的误差。

  可以采用两种方法之一对INL进行定义:(1)端点INL或(2)最佳拟合INL。端点INL是采用DAC传输函数端点测得的实际值计算转换器的线性度;最佳拟合INL则是计算传输函数的斜率获得INL的峰值。

  图1a. 端点积分非线性误差

  图1b. 最佳拟合积分非线性误差

  图1a和图1b以图形的形式显示了两种测试方法与给定传输函数之间的关系。注意,两种情况中,DAC传输函数曲线的数值和形状都一样。还要注意,图1a的端点线性度有较大的正INL,而没有负误差。[page]

  采用图1b所示的最佳拟合方法,将部分正误差转移到直线的负侧,以降低报告的最大INL。注意,线性度误差总量和直线计算结果相同。

  DNL定义理解起来要难一些,确定最低有效位(LSB)的权值会影响DNL。DAC中需要考虑DNL没有小于-1 LSB的编码。小于这一电平的DNL误差表明器件是非单调的。当输出不随输入码增大而减小时,或者输出不随输入码减小而增大时,DAC是单调的。图2解释了正、负DNL误差,澄清了单调的概念。

  测量线性度所采用的方法需要考虑待*估DAC的体系结构。优先选择将电流模式DAC输出转换为电压,因为这样可以使用电压表而不是电流表。普通的万用表在测量电压时分辨率要高于电流测量。电流源的配置决定了需要测量多少位编码才能对器件性能进行精确的*估。

  图2. DNL误差实例

  有很多方法可以将电流(I)转换为电压(V),主要取决于几种因素。首先考虑使用万用表进行测量,能够得到的最高分辨率决定了精确测量的最小LSB权重。推荐LSB权重与仪表分辨率的比是100比1;仪表应能够测量LSB的1/100。

  待测DAC的输出额定容限也影响了如何进行I至V的转换。电流模式DAC输出容限是指器件在输出上能够承受多大的电压而不会对性能有影响。增大负载电阻会提高电压摆幅和LSB的大小,但是容限限制了最大负载。

  替代简单的电阻转换的方法是使用虚拟地配置的运算放大器,如图3所示。由于DAC输出电压保持为零,这种配置的优势是能够提高LSB的大小,明显高于容限限制。然而,放大器容限和线性度以及热梯度会影响测量。同样的,需要两个匹配放大器来测量差分输出器件。

  图3. 虚拟地的I至V转换[page]

  测量线性度时需要考虑的另一因素是待*估DAC的分辨率。器件分辨率越高,LSB越小。考虑MAX5891 (16位)、MAX5890 (14位)、MAX5889  (12位)器件。每一器件的满量程输出为20mA。使用50Ω负载时,相应的LSB大小为15.25?V、61.04?V和244.2?V。LSB越小,万用表需要的精度和分辨率就越高。

  考虑到DAC的分辨率,还应该确定需要多少位编码才能精确地测量器件性能。16位器件有65,536个可能的输入编码,12位器件有4,096个。由于不可能人工测量所有这些编码,因此,常用的方法是测量编码子集。少量的编码减少了采集数据所需要的时间,并且能够提供非常精确的结果。掌握器件的体系结构有助于选择某一器件的最佳编码。

  测量电流输出器件的线性度时,温度效应比较明显。输出负载电阻的功耗导致发热,从而改变了电阻值(除非采用的电阻具有0ppm温度系数)。解决这一问题的方法是转换输入编码,有效地对负载功耗进行平均。

  这里采用的方法非常适合自动测量,因为它能够减小所有编码的延迟时间。测量每一编码及其补码,例如0x4800,然后是0xB7FF。通过测量每一编码及其补码,负载平均功率保持固定,这是因为采用了从零到满量程递增的方式来测量最高有效位(MSB)输入。由于在量程中部测量LSB,该方法不太适合,因为功率的变化相当小。

  测量说明

  以下是Maxim开发的几种器件所采用的线性度测量方法。MAX5873 、MAX5875 、MAX5885、MAX5888 MAX5891、MAX5895 和MAX5898 /都采用了该方法进行测量。在最初设计*估和产品测试时进行了实验室测量。虽然下面实例针对MAX5891,该方法也可以用于其他器件。

  MAX5891采用了5-4-3-4分段结构。分段是指将一个16位器件有效地分成四个单独的DAC,一个5位、一个4位、一个3位和第二个4位器件。5个MSB含有31个(25 - 1)等权重电流源,对于5位分辨率,每个输入编码采用一个等权重电流源。下一个4位使用15个源,再下一个3位使用7个。4个LSB是二进制权重电流源,每个低位比特等于前一比特值的一半。

  电流源的总数57 (31 + 15 + 7 + 4)加上满幅值和零值,确定了测量MAX5891线性度所需的最少编码数。59次测量支持重新构建完整的DAC输出传输函数。一旦确定了传输函数,即可计算线性度。该方法虽然缩短了测试时间,但降低了测量精度。表1列出了推荐的MAX5891编码组。

  表1. 5-4-3-4体系结构16位编码组[page]

  MAX5890和其他Maxim 14位器件使用5-4-3-2分段体系结构,14位体系结构的编码组如表2所示。MAX5889和其他Maxim 12位器件使用5-4-3体系结构,12位体系结构的编码组如表3所示。

  表2. 5-4-3-2体系结构的14位编码组

  表3. 5-4-3体系结构的12位编码组

  定义了编码组后,必须解决采集测量点的问题。适合这类测量的万用表是Agilent? 3458,分辨率高达8.5位。该表连接在MAX5891的OUTP和OUTN端之间,输出端以50Ω负载接地。当DAC设置为20mA满量程电流时,万用表输入得到的电压摆幅是±1V。[page]

  万用表量程设置为固定的1.2V,使用最大分辨率,得到10nV最小测量结果。切换表的量程会增大测量值的增益误差;因此,使用单电压量程可以避免其他的误差源。由于需要锁存数字输入,MAX5891还需要时钟信号。一旦连接好了万用表、时钟源、电源和数字输入控制,就可以采集线性度测量点。

  采集所有测量点后,需要画出重建后的DAC输出传输函数。由于对每一电流源都进行了测量,很容易产生对应于所有编码的传输函数。例如,考虑器件的4个LSB。我们测量编码0x8000、0x8001、0x8002、0x8004和0x8008。对于编码0x8000,LSB计算的基准是DAC量程中部。LSB权重是在0x8001测得的电压值减去在0x8000测得的电压值。

  在0x8001和0x8780之间测量的所有编码采用相同的公式。0x0800到0xF800的其他点是MSB电流源,以编码0x0000为基准进行计算。考虑编码0x4F31作为各种电流相加的例子。

  首先,我们需要确定哪一测量点什么时候相加能够等于实例编码。0x4800是小于目标编码的最大MSB。从0x4F31中减去0x4800后的余数为0x0331。编码0x0300是可以减掉的次最大编码(0x8300 - 0x8000),随后是0x0030 (0x8030 - 0x8000),最后是0x0001 (0x8001 - 0x8000)。

  因此,可以采用下面的等式来表示编码0x4F31的电压值:

  [V(0x4800) - V(0x0000)] + [V(0x8300) - V(0x8000)] + [V(0x8030) - V(0x8000)] + [V(0x8001) - V(0x8000)](公式1)

  使用相似的等式,可以计算任意给定输入编码的电压值。利用MATLAB?或Excel?软件等工具可以很容易地计算所有编码的电压,重建全部的DAC传输。

  一旦建立了传输函数,就可以计算线性度。第一步是根据传输函数的端点计算LSB的电压值(端点法)。

  VLSB = [V(0xFFFF) - V(0x0000)]/[2N - 1](公式2)

  其中

  N是器件分辨率 (16、14或者12位)

  V(0x0000)是测得的DAC零标输出电压。

  V(0xFFFF)是测得的DAC满幅输出电压。

  采用下面的等式来计算任意给定编码的INL:

  INLCODE(LSB) = [VCODE - (CODE × VLSB)]/VLSB(公式3)

  其中

  CODE是要计算的数字编码。

  VLSB是公式2中计算的电压值。

  VCODE是计算的DAC输出电压值。

  下面的等式用于计算任意给定编码的DNL:

  DNLCODE(LSBs) = [VCODE - VCode-1 - VLSB]/VLSB(公式4)

  其中

  CODE是要计算的数字编码。

  VCODE是针对CODE计算的DAC输出电压值。

  VCODE-1是针对CODE - 1计算的DAC输出电压值。

  VLSB是公式2中计算的电压值。

  以下举例说明利用MATLAB脚本计算MAX5889、MAX5890和MAX5891的线性度。每次计算都得到最小和最大DNL和INL误差编码和误差值。实例还为所有编码画出了传输函数,得到INL和DNL。要求用户输入前面表格中所列出编码的电压测量值。必须按照所列顺序输入数值。[page]

  计算16位线性度的MATLAB脚本

function Lin16(Measurements)
%Calculate INL and DNL of a 16-bit device with a 5-4-3-4 segmentation architecture
% DacCodes is the range of possible input data to the 16-bit DAC
DacCodes=[0:65535]’;
%VOUT for each code is calculated from the measured points
%create a VOUT variable and fill it with zeros
VOUT=zeros(size(DacCodes));
%The first measurement is the zero-scale point, or code (0x0000)
ZS=Measurements(1);
VOUT(1)=ZS;
%The last measurement is the full-scale point, or code (0xFFFF)
FS=Measurements(length(Measurements));
VOUT(65536)=FS;
%Midscale is stored at position 43 of the input data array
MS=Measurements(43);
%The device has four segmentation levels
Segments=4;
%The decimal values for the LSB codes are 1, 2, 4 and 8
Seg1Codes=[1;2;4;8];
%The voltages for the LSBs are in positions 2-5 of the input array
for i=1:4
Seg1V(i)=Measurements(i+1)-MS;
end
%The second level of segmentation is controlled with input codes 16 through
%112 in steps of 16. Create the code array and fill the measurements for
%this segmentation level
Seg2Codes=[16:16:16*7]’;
for i=1:7
Seg2V(i)=Measurements(i+5)-MS;
end
%Segmentation level 3 uses input codes 128 through 1920 in steps of 128.
%Create the code array and fill the measurements array.
Seg3Codes=[128:128:128*(2^4-1)]’;
for i=1:15
Seg3V(i)=Measurements(i+12)-MS;
end
%Segmentation level 3 uses input codes 2048 through 63,488 in steps of 2048.
%Create the code array and fill the measurements array.
Seg4Codes=[2048:2048:2048*(2^5-1)]’;
for i=1:31
Seg4V(i)=Measurements(i+27)-ZS;
end
%The endpoints have been defined, now fill in the voltages for the
%remaining points of the DAC transfer function.
for i = 2:65535
targetcode=i-1;
VOUT(i)=ZS;
for s=31:-1:1
if Seg4Codes(s)<=targetcode
targetcode=targetcode-Seg4Codes(s);
VOUT(i)=VOUT(i)+Seg4V(s);
s=0;
end
end
for s=15:-1:1
if Seg3Codes(s)<=targetcode
targetcode=targetcode-Seg3Codes(s);
VOUT(i)=VOUT(i)+Seg3V(s);
s=0;
end
if targetcode==0
s=0;
end
end
for s=7:-1:1
if Seg2Codes(s)<=targetcode
targetcode=targetcode-Seg2Codes(s);
VOUT(i)=VOUT(i)+Seg2V(s);
s=0;
end
if targetcode==0
s=0;
end
end
if targetcode==0
s=0;
end
for s=4:-1:1
if Seg1Codes(s)<=targetcode
targetcode=targetcode-Seg1Codes(s);
VOUT(i)=VOUT(i)+Seg1V(s);
end
end
end
%Plot the transfer function
figure(1)
plot(DacCodes, VOUT);
xlabel(‘DAC Input Code’);
ylabel(‘Measured Voltage’);
axis([0 65536 -1.1 1.1]);
title(‘DAC Transfer Function’);
set(gca,’XTick’,0:16384:65536)
%Calculate the linearity
LSB=(max(VOUT)-min(VOUT))/65535;
INL(1)=0;
DNL(1)=0;
for i=2:65536
INL(i)=(VOUT(i)-(VOUT(1)+(i-1)*LSB))/LSB;
DNL(i)=(VOUT(i)-VOUT(i-1)-LSB)/LSB;
end
%Plot INL
figure(2)
plot(DacCodes, INL);
title(‘DAC Integral Linearity’);
xlabel(‘DAC Input Code’);
ylabel(‘INL (LSBs)’);
axis([0 65536 min(INL)*1.1 max(INL)*1.1]);
set(gca,’XTick’,0:16384:65536)
%Plot DNL
figure(3)
plot(DacCodes, DNL);
title(‘DAC Differential Linearity’);
xlabel(‘DAC Input Code’);
ylabel(‘DNL (LSBs)’);
axis([0 65536 min(DNL)*1.1 max(DNL)*1.1]);
set(gca,’XTick’,0:16384:65536)
txtstr=sprintf(‘INL MAX = %f’, max(INL));
disp (txtstr);
txtstr=sprintf(‘INL MIN = %f’, min(INL));
disp (txtstr);
txtstr=sprintf(‘DNL MAX = %f’, max(DNL));
disp (txtstr);
txtstr=sprintf(‘DNL MIN = %f’, min(DNL));
disp (txtstr); [page]

关键字:测量  电流模式DAC  MAX5891  差分输出 引用地址:差分输出、电流模式DAC的参数和测量方法

上一篇:MIPI D-PHY 解决方案新增一键式一致性测试功能
下一篇:海洋光学对其产品和配件实行三年质保期

推荐阅读最新更新时间:2024-03-30 22:12

利用Advantest R3132频谱分析仪测量回波损耗
摘要:该应用笔记包含了一些基本的操作程序,可帮助工程师利用Advantest® R3132频谱分析仪(或类似频谱分析仪)完成对回波损耗的测量,并提供了在实验室测量回波损耗的相关知识。其中一些特定的按键操作只适用于R3132频谱分析仪,但是一些基本的操作程序对所有的频谱分析仪都适用。该应用笔记并不是一个的全面的使用指南,读者还需要掌握一些频谱分析仪的基本操作知识。 回波损耗要求 E3、ITU G.703和ETS 300-686规定的输入回波损耗如表1所列,输出回波损耗要求如表2所列。 表1. 输入端最小回波损耗 Frequency Range (kHz) Return Loss (dB) 860 to 1720 12 1
[测试测量]
利用Advantest R3132频谱分析仪<font color='red'>测量</font>回波损耗
5G 时代,电子测试和测量制造商该做什么?
让我们从电子测试与测量 (ETM) 设备制造商的现状开始说起吧。新型手机层出不穷、手机年出货量不断增长以及推动新型基础设施设备发展的无线技术进步是无线ETM业务增长的原因。手机出货量增长速度已有所减缓,因为年出货量开始超过了10亿台。同时,无线基础设施行业的并购减少了该领域的客户数量。最后,ETM制造商还一直在应对在主要市场中部署LTE-Advanced载波聚合过程中发生的延迟情况。因而在业界等待技术过渡到5G期间,LTE研发和生产测试设备市场的增长缓慢。 5G时代即将到来,同时也带来了挑战 随着无线宽带技术的不断发展,特别是功能的持续演进,ETM制造商往往能够依靠软件升级来适应各种变化。然而
[网络通信]
5G 时代,电子测试和<font color='red'>测量</font>制造商该做什么?
宽带测量技术白皮书
1.复杂电子系统的发展及其测量需求 典型的复杂电子系统主要有:宽带雷达,捷变频电台,电子对抗,宽带无线通信,卫星通信等系统。 射频微波电路是复杂电子系统的重要组成部分,主要完成发射和接收信号的功率控制和频率搬移,对整个电子系统灵敏度,动态范围等指标有决定性的影响。典型的射频微波电路包含天线,放大器,滤波器,频率合成器,传输线等有源和无源电路。随着系统功能和性能要求的提高,电子系统对这些射频微波电路的要求越来越高,带宽要求越来越宽,很多系统要求500MHz或1GHz以上的带宽。 高速数字电路是复杂电子系统的另一重要组成部分,主要完成复杂信号的生成,复杂信号的处理,大数据量和高速信号的传输,对整个电子系统工作速
[测试测量]
宽带<font color='red'>测量</font>技术白皮书
光谱共焦传感器的测量原理和特点
1666年,牛顿获得了一块三棱镜,开始了他的光学研究。 他在一间暗室的窗户上设置了一个小孔,紧挨着小孔放置着该三棱镜。阳光由小孔投射进来,透过三棱镜,将太阳的像投射到对面的墙壁上。使他感到“惊奇”的是,根据光的折射理论,这一成像的形状本应为圆形,然而他所看到的则是明显的长条形状,其长度达宽度的五倍。 牛顿高明之处就在于他已经意识到了不同颜色的光具有不同的折射性能,只有拉长距离才能分解开不同折射角的光线。 为了证明色散现象不是由于棱镜跟阳光的相互作用,也不是由于其它原因,而是由于不同颜色具有不同的折射性,牛顿又做了一个实验。他拿三个棱镜做实验,三个棱镜完全相同,只是放置方式不一样,倘若分散是由于棱镜的不平或其它偶然的不规则性
[测试测量]
光谱共焦传感器的<font color='red'>测量</font>原理和特点
串联电池电压及温度测量方法研究
一、引言 在提倡节能减排的时代背景下,新能源的研究正成为公众关注的焦点,以电为动力的电动车就是研究的热点之一。电池是电动车的能量之源,为确保电池组性能良好并延长其使用寿命,需要对电池组进行管理和控制,其前提是必须准确而又可靠的获得电池现存的容量参数。电池的电压及温度是和电池容量密切相关的两个参数,因此精确采集单体电池电压及温度是十分重要的。 二、常用测量方法分析 1、单体电池电压测量方法分析 串联电池组单体电池电压的测量方法有很多,比较常见的有机械继电器法隔离检测、差分放大器法隔离检测、电压分压法隔离检测、光电继电器法等。机械继电器法可直接测量每个单体的电压,但是机械继电器使用寿命有限、动作速度慢,不宜使用在长期快速巡检过程中。差
[单片机]
串联电池电压及温度<font color='red'>测量</font>方法研究
功率测量及显示电路
功率测量及显示电路 功率测量及显示电路由真有效值转换电路和单片机系统组成。 ⑴ 真有效值转换器 选用高精度的AD637芯片(图 16),其外围元件少、频带宽,精度 高于0.5%。 图16 真有效值转换电路 ⑵ 单片机系统 本系统主要由 89C5l 单片机、可编程逻辑器件 EPM7128、A/D 转换器 AD574 和键盘显示接口电路等 组 成。 经AD637进行有效值变换后的模拟电压信号送A/D转换器AD574,由89C51控制 AD574进行模/数转换,并对转换结果 进 行运算处理,最后送显示电路完成功率显示。其中 EPM7128完成地址译码和各种控制信号的产生,62256用于存储数据的处理。
[模拟电子]
功率<font color='red'>测量</font>及显示电路
无线传感器网络——放飞你的测量应用
自人类踏入信息时代,自然界的信息通过传感器源源而来。而随着技术的发展,人们已不满足于原有单一的、独立的传感器系统。很多时候,我们需要将来自不同区域的信息联合汇总,从而实现对现场状况的综合判断。 在农场里,我们需要了解各处作物的灌溉情况,土壤空气质量,以确保农作物健康生长;在矿区,我们需要知道瓦斯浓度,矿工位置以及地下矿场温湿度,粉尘浓度以保证工人人身安全;在大型建筑中,我们又需要了解建筑各个位置受环境湿度,风速的影响以及自身老化程度,以及时维护建筑的结构健康。通常,在这些情况下,用来采集数据的传感器被放置在相距上千米的位置,并且需要在长达几个月甚至几年的时间内进行连续数据检测工作,工作人员无法经常进行维护。这时,长距离布线
[测试测量]
无线传感器网络——放飞你的<font color='red'>测量</font>应用
基于虚拟仪器技术的航空机载电子设备自动测试系统
机载电子设备自动测试系统需要对上百种部件进行功能测试,涉及的信号种类和数量都很多,这些信号按照频率分为低频和高频两种,按时域特性分为连续和离散信号,按照形式分为电信号和非电信号(如温度、速度、高度、气压、航向等)。为满足复杂的测试需求,我们采用虚拟仪器技术。 系统硬件设计 PXI模块化仪器相对于GPIB、VXI、RS232等仪器而言,具有速度快、体积小、易扩展等优势,因此作为硬件的主体。再选用常规信号源(SOURCE)和信号测量模块(SENSOR),通过GPIB和RS232总线扩展专用和自研设备。整个系统硬件原理如图1所示。 图1 系统硬件架构 由于PXI模块较多,且为了今后的扩展,选用了18槽的PXI-1045机
[测试测量]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved