模数转换器非线性校准方法技术

技术编号:20925471 阅读:23 留言:0更新日期:2019-04-20 11:40
本发明专利技术公开一种模数转换器非线性校准方法,所述方法包括:获取五个模拟输入信号V1至V5,且满足V3=0,V2=‑V4,V1=‑V5,V5=2V4,所述模拟输入信号通过模数转换器进行模数转换并用当前非线性失真系数补偿得到相对应的数字编码分别记为:code(V1)至code(V5);计算err1=2*code(V2)‑code(V1),err2=2*code(V4)‑code(V5),若err1≠0或err2≠0,则所述模数转换器仍存在失真;根据err1和err2计算新的二阶和/或三阶失真系数来更新模数转换器的非线性失真补偿参数,然后重复模数转换和失真系数计算,反复迭代到err1和/或err2小于预设值时,完成模数转换器非线性校准。模数转换器非线性通常以二阶和三阶为主,通过非线性校准二阶和/或三阶失真,可以有效的提高模数转换器的线性度,本发明专利技术方法采样点少,计算量小,容易在芯片上或芯片外实现。

A Nonlinear Calibration Method for ADC

The invention discloses a non-linear calibration method for analog-to-digital converter, which includes acquiring five analog input signals V1 to V5 and satisfying V3=0, V2= V4, V1= V5, V5=2V4. The analog input signals are analog-to-digital converted by analog-to-digital converter and the corresponding digital codes are coded (V1) to code (V5) by compensating the current non-linear distortion coefficient. * Code (V2)code (V1), err2 = 2*code (V4)code (V5). If err1_0 or err2_0, the ADC still has distortion. According to err1 and err2, the new second and/or third order distortion coefficients are calculated to update the ADC's non-linear distortion compensation parameters, and then the ADC and distortion coefficients are calculated again and again. When err1 and/or err2 are less than the preset values, the ADC is completed. Nonlinear calibration of converter. The linearity of ADC can be effectively improved by calibrating the second and/or third order distortion. The method of the present invention has fewer sampling points, less computation and is easy to be realized on or off the chip.

【技术实现步骤摘要】
模数转换器非线性校准方法
本专利技术涉及电子
,尤其涉及一种模数转换器非线性校准方法。
技术介绍
模数转换器(ADC)将模拟信号转换成数字信号,是外部世界到数字计算机的桥梁。随着科学技术的发展,高精度ADC在工业,医疗,汽车等领域成为必不可少的芯片之一。高精度ADC(16-24位)要求高信噪比和高线性度。高线性度保证信号失真小。电路本身功能的非线性,比如放大器的传递函数不是理想的线性函数,直接导致ADC的非线性,限制ADC的精度。ADC线性度的提高可以通过设计高线性度模块来实现,但会受限于电源电压的范围,信号的范围,功耗的要求等因素。同时被动器件譬如电容,由于工艺的限制,也会有不可避免的非线性,限制了ADC的精度。ADC非线性反应在传递函数上不再是理想的线性函数,其传递函数含有非线性成分,譬如二阶函数,三阶函数等。ADC的非线性一般主要集中在二阶和三阶,在频谱上体现在二阶和三阶谐波上。这些非线性失真函数系数可以通过传递函数多项式函数拟合得到,然后进行校准。这样的方法需要的数据量大,计算量大,难以在芯片上有效实现。
技术实现思路
鉴于上述技术问题,本专利技术提出一种模数转换器非线性校准方法,所述方法包括:一种模数转换器非线性校准方法,其特征在于,所述方法包括步骤:S1,获取五个模拟输入信号V1至V5,且满足V3=0,V2=-V4,V1=-V5,V5=2V4,所述模拟输入信号通过模数转换器进行模数转换并用当前非线性失真系数补偿得到相对应的数字编码,分别记为:code(V1),code(V2),code(V3),code(V4),code(V5);S2,计算err1=2*code(V2)-code(V1),err2=2*code(V4)-code(V5),若err1≠0或err2≠0,则所述模数转换器仍存在失真;S3,更新二阶和/或三阶失真系数来更新模数转换器非线性补偿参数,进行模数转换器非线性校准,二阶失真系数计算方法为:a2i+1=a2i+k*(err2+err1);三阶失真系数计算方法为:a3i+1=a3i+k*(err2-err1);其中,k是更新步长,a30、a20为初始化预设值,设为0,i是正整数;重复步骤S1至S3,当err1和/或err2小于预设值时,完成非线性校准。进一步地,所述方法在芯片内部实现和/或在芯片外部实现;当在芯片内部实现时,每次更新失真系数时重新采样再模数转换后更新失真系数,或者,当芯片内部有额外的逻辑电路时,采用N次采样转换后数字编码的平均值更新失真系数;当在芯片外部实现时,采用计算五个模拟信号输入N次采样转换后数字编码的平均值,根据所述平均值更新失真系数。进一步地,若所述模数转换器同时存在二阶和三阶失真时,可以同时进行二阶和三阶失真系数校准;或者根据已知非线性失真,直接进行二阶或三阶失真系数校准。进一步地,所述err1和/或err2小于预设值,还包括:err1和/或err2在预设时间段内所取得的平均值小于预设值。进一步地,所述方法还包括若err1≠0或err2≠0,则分别采用一位整数标记err1或err2的正负符号信息,用于降低计算量。实施本专利技术方法的有益效果在于,使用五点校准,利用二阶和三阶非线性造成的误差及其特性,采用逐次逼近的方法,得到数字域补偿值,从而校正模数转换器的二阶或三阶误差,其采样点少,使得计算简单且计算量小,很容易在芯片上或芯片外实现,尤其是在芯片上实现时,能取得显著效果。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。图1是本专利技术实施例三阶误差及校准示意图;图2是本专利技术实施例二阶误差及校准示意图;图3是本专利技术实施例非线性校准方法流程图;图4是本专利技术实施例在逐次逼近过程中err1和err2以及失真系数的轨迹图;图5是本专利技术实施例非线性校准前ADC输出的FFT结果图;图6是本专利技术实施例非线性校准后ADC输出的FFT结果图。具体实施方式下面结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术的保护范围。下面结合附图对本专利技术的技术方案进行详细说明:图1和图2分别是5点三阶和二阶失真和校准方法示意图。首先选取5个模拟输入信号V1,V2,V3,V4,V5,其中V3=0,V2=-V4,V1=-V5,V5=2*V4,通过ADC模数转换得到相对应的数字编码,分别为:code(V1),code(V2),code(V3),code(V4),code(V5)。如果ADC是理想的线性,模拟输入和对应的数字编码传递函数是直线,即:code(V1)=2*code(V2),code(5)=2*code(4)当模数转换器有三阶失真时,传递函数会含有三阶多项式函数,code(V1)≠2*code(V2),code(5)≠2*code(4)。传递函数形状(弯曲方向)由三阶失真系数a3的符号决定,如图1所示。当模数转换器有二阶失真时,传递函数会含有二阶多项式函数,code(V1)≠2*code(V2),code(V5)≠2*code(V4)。传递函数形状(弯曲方向)由二阶失真系数a2的符号决定,如图2所示。可以看出,err1和err2与a2和a3的关系是不同的。如果能估算出a2,a3,就可以在数字域把非线性失真校正。以下结合图3给出本专利技术逐次估计a2和a3的步骤:S101,初始化a2和a3的估计值:a2_est=0,a3_est=0;S102,选取五个模拟输入信号V1,V2,V3,V4,V5,其中V3=0,V2=-V4,V1=-V5,V5=2*V4,用当前的a2_est和a3_est通过ADC模数转换对五个输入信号进行模数转换得到非线性补偿后数字编码code(V1),code(V2)…,code(V5)。S103,计算err1,err2:err1=2*code(V2)-code(V1),err2=2*code(V4)-code(V5);本实施例中进一步简化为只用一位整数err1和err2的正负符号信息,例如err1或err2大于0标记为1,小于0标记为-1,有效的降低计算量。S104,更新a2和a3的估计值,k是更新步长,取值太小则更新较慢,取值太大则有可能不收敛,需要实验决定。本实施例中k=10-8,其中:a3est=a3est+k*(err2-err1)a2est=a2est+k*(err2+err1)重复步骤S102到S104,a2_est和a3_est越来越趋近于a2、a3,err1和/或err2趋近于零,当err1和/或err2小于设定的预设值,操作停止。由于系统存在噪声,当某一时间段内所取得的所有err1和/或err2的平均值小于预设值r,如r=0.001,则停止循环迭代,完成非线性系数更新。若只存在一种非线性失真,重复上述步骤,不会影响其校准。由于系统存在噪声,在片上实现采用每次重新采样本文档来自技高网...

【技术保护点】
1.一种模数转换器非线性校准方法,其特征在于,所述方法包括步骤:S1,获取五个模拟输入信号V1至V5,且满足V3=0,V2=‑V4,V1=‑V5,V5=2V4,所述模拟输入信号通过模数转换器进行模数转换并用当前非线性失真系数补偿得到相对应的数字编码,分别记为:code(V1),code(V2),code(V3),code(V4),code(V5);S2,计算err1=2*code(V2)‑code(V1),err2=2*code(V4)‑code(V5),若err1≠0或err2≠0,则所述模数转换器仍存在失真;S3,更新二阶和/或三阶失真系数来更新模数转换器非线性补偿参数,进行模数转换器非线性校准,二阶失真系数计算方法为:a2i+1=a2i+k*(err2+err1);三阶失真系数计算方法为:a3i+1=a3i+k*(err2‑err1);其中,k是更新步长,a30、a20为初始化预设值,设为0,i是正整数;重复步骤S1至S3,当err1和/或err2小于预设值时,完成非线性校准。

【技术特征摘要】
1.一种模数转换器非线性校准方法,其特征在于,所述方法包括步骤:S1,获取五个模拟输入信号V1至V5,且满足V3=0,V2=-V4,V1=-V5,V5=2V4,所述模拟输入信号通过模数转换器进行模数转换并用当前非线性失真系数补偿得到相对应的数字编码,分别记为:code(V1),code(V2),code(V3),code(V4),code(V5);S2,计算err1=2*code(V2)-code(V1),err2=2*code(V4)-code(V5),若err1≠0或err2≠0,则所述模数转换器仍存在失真;S3,更新二阶和/或三阶失真系数来更新模数转换器非线性补偿参数,进行模数转换器非线性校准,二阶失真系数计算方法为:a2i+1=a2i+k*(err2+err1);三阶失真系数计算方法为:a3i+1=a3i+k*(err2-err1);其中,k是更新步长,a30、a20为初始化预设值,设为0,i是正整数;重复步骤S1至S3,当err1和/或err2小于预设值时,完成非线性校准。2.根...

【专利技术属性】
技术研发人员:许鹏
申请(专利权)人:南京南瑞微电子技术有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1