一种基于参数提取的快速ADC测试方法与流程

文档序号:13914572阅读:526来源:国知局

本发明涉及adc测试领域,具体涉及一种adc动态参数估算算法以及改进的adc测试架构。



背景技术:

模数转化器(简称a/d转换器或者adc)作为将连续的模拟信号转换为计算机可以处理的数字信号器件,即现实世界与机器语言之间的重要接口,已经成为现代电子系统中不可或缺的重要组成部分。随着电子技术的不断发展,adc在无线通信、医疗设备、控制系统以及数字消费类产品(如数码相机,数字电视)等方面有着广泛的应用。为了满足更高层次的应用需求,adc芯片的集成度以及内部复杂度不断提高,这就需要更高效、可靠的adc测试方法对芯片进行性能测试以保证芯片的稳定性应用。

adc主要有两类性能指标。一类性能指标是基于adc转移特性曲线命名,包括积分非线性(inl)、微分非线性(dnl)、偏移误差(offseterror)以及增益误差(gainerror)。根据ieee标准,这些参数主要将正弦信号或者斜坡信号作为输入信号,利用直方图方法获得。另一类是根据adc频谱性能命名,主要包括总谐波失真(thd),无杂散动态范围(sfdr)、信噪比(snr)等。这些参数主要是将高纯度的正弦信号作为输入信号源,利用快速傅里叶变换(fft)方法测得。根据传统的测试方法,若要测得a/d转换器的所有性能指标往往需要两次测试过程,使得测试成本大大增加。为了降低测试成本,开始研究adc静态参数与动态参数之间的关系,试图仅通过一次静态测试或者一次动态测试过程,获得adc所有性能参数。有很多文章提出利用动态测试方法通过估算得到积分非线性曲线,能够避免进行静态测试过程以减少测试成本。但是,由于动态测试所需采样点数少,这些方法只能粗略的描绘积分非线性曲线,并不能准确的得到积分非线性误差,与直方图测试方法相比,计算精度低。虽然,这些方法被许多学者进行广泛的研究,但是还没有一种方法被单独的使用去计算adc的所有性能参数。在需要精确积分非线性误差值的情况下,还需要用直方图方法进行测试,也就是说,并没有真正实现一次测试过程测得adc所有性能参数。因此,人们开始研究基于静态测试估算动态参数的估算方法。由于此类方法基于静态测试过程,能够利用大量的采样点数精确的得到静态参数和动态参数值,达到了一次测试过程测得所有性能参数的目的,减少了动态测试过程所需成本。

综上所述,研究基于静态测试估算动态参数的测试方法,能够在保证测试精度的前提下,避免动态测试过程以达到减少测试成本的目的,具有很高的研究价值。



技术实现要素:

本发明的目的是提供一种基于参数提取的快速adc测试方法,以解决传统的adc测试方法存在的测试时间过长、成本过高等问题。

为实现上述目的,本发明采用的技术方案为:

一种基于参数提取的快速adc测试方法,包括如下步骤:

步骤一,通过仿真实验确定现有动态参数估算算法的最佳测试条件,并进行仿真分析,得到在此最佳测试条件下的动态参数值;其中,所述现有动态参数估算算法为基于inl值估算动态参数算法;

步骤二,通过理论推导以及实验仿真,明确静态参数与动态参数之间存在的关系,为现有动态参数估算算法的优化作铺垫;

步骤三,对现有动态参数估算算法进行优化,具体为:通过对静态测试所采集的静态码值,进行数据处理,使其能够进行频谱分析进而得出动态参数指标,并通过对12位adc模型进行matlab仿真验证所提优化算法的可行性以及精确性;

步骤四,在上述步骤优化算法的基础上,采用移动平均滤波器法优化直方图方法,从而达到优化测试时间的目的;

步骤五,选择一款adc芯片,搭建adc测试系统,通过具体的实验对优化算法做性能验证。

步骤一中,确定最佳测试条件的方法为:在不同的采样点数下,其他测试条件相同,计算inl误差。

步骤三中,在静态测试时,采用的测试条件是输入信号幅度略高于adc满量程幅度。步骤四中,优化的直方图方法即是利用较少的采样点数,通过平均移动滤波器法,得出adc静态参数。

步骤五中,adc芯片为adi公司生产的ad9258芯片。

本发明通过研究adc动态参数估算算法,试图通过一次测试测得所有adc参数,从而达到节省测试时间和成本的目的。对于现有动态参数估算算法,即基于inl值估算动态参数算法,通过利用inl值与谐波失真的对应关系,计算得到总噪声功率,进而得到动态参数sinad以及enob参数。本发明目标是在原有的估算算法的基础上提高该算法的测试精度且在最佳测试时使用更少的测试时间。

有益效果:相对于现有的技术方案,本发明的优点是:

(1)基于inl估算动态参数的估算算法,认为adc的噪声来源全部来自量化噪声,但在实际adc测试中,其噪底并非仅由量化噪声构成,由于adc内部结构,外围电路以及测试仪器均会使测试系统引入噪声成分,依据原基于inl估算动态参数的估算算法所提公式计算得出的动态参数与标准测试方法fft相比差距很大。而本发明所提算法通过将数据处理后的静态码值进行频谱分析,所有噪声成分都会以频谱的形式展示出来,提高了计算精度。

(2)本发明提出优化的adc测试架构,即采用优化的直方图测试与参数提取测试算法相结合,通过采集与传统测试以及原基于inl估算动态参数算法相比较少的采样点数,达到一次测试过程测得所有性能参数的目的,使得测试时间大大减少。

(3)本发明所提算法除计算得到静态参数外,能够估算得出所有的动态性能参数,sinad、enob、sfdr和thd。而原估算算法由于只能根据总噪声功率,计算得出siand以及enob,无法识别谐波分量,不能得到sfdr和thd参数。

附图说明

图1为本发明所述优化的adc测试架构图;

图2为本发明所述的参数提取测试算法的方法流程图;

图3为本发明采用的优化的直方图方法的流程图;

图4为原基于inl估算动态参数算法流程图;

图5为研究原基于inl估算动态参数算法的最佳测试条件图;

图6为采用参数提取测试算法经过对静态码值提取过后频谱图;

图7为采用参数提取算法提取过后的静态码值消除增益误差后的频谱图;

图8为标准动态测试算法与参数提取测试算法频谱比较图;

图9为采用优化的直方图方法后的inl曲线图;

图10为传统直方图测试方法所得的inl曲线图;

图11为实测标准动态测试算法与参数提取测试算法频谱比较图;

图12为实测采用优化的直方图方法后的inl曲线图;

图13为实测传统直方图测试方法所得的inl曲线图。

具体实施方式

以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规实验中的条件。

实施例:

本实施例描述了一种基于参数提取的快速adc测试方法,首先以12比特adc模型通过matlab仿真说明改进算法的可行性,然后采用14位实际adc芯片,即adi公司ad9258芯片验证改进算法,具体过程如下:

1、研究原算法即基于inl估算动态参数算法的最佳测试条件,并进行仿真分析,得到在此条件下的动态参数值。确定最佳测试条件如图5所示。具体方法是在不同的采样点数下,其他测试条件相同,计算inl误差。从图中可知,当采样点数为8192时,inl值为1.67lsb,随着采样点数的增加,inl显著下降,当采样点数为131072,即12位adc平均每个码值采集32个点时,inl下降至0.773lsb。当再增加采样点数时,inl值变化很小,并趋于稳定。因此,确定正弦直方图的最佳采样点数为平均每个码值采集32个点数。在此基础计算得出的inl值,即根据图4所示流程图,并根据公式(1)、(2)、(3)计算得到sinad以及enob。计算结果为sinad为65.897db,enob为10.820。

其中,σn为噪声功率,vlsb最小分辨率电压,bits为adc位数,xi为每个代码对应的inl值。

sinad=6.02*enob+1.76(3)

2、在静态测试时,为了能够将所有码值采集到,其采用的测试条件是输入信号幅度略高于adc满量程幅度。因此,为了能够从静态的码值提取出正确的谐波失真信息,需对增益误差进行校准,消除这部分对谐波分量的影响,进而估算得出正确的动态参数值。利用本发明所述改进的动态参数估算算法计算得到动态参数值并与标准动态测试以及原算法进行比较。具体做法流程图如图2和图3所示。首先,实现参数提取测试算法。具体步骤如下:

(1)同样利用1所述的测试条件,即采样点数为每个码值平均采样32次。利用参数提取,即等间隔对静态码值进行采样,得到进行频谱测试的8192个采样点。此时得到的静态码值为有截断的静态码值,根据奈奎斯特采样定律,8192个点能够很好的恢复出原波形。

(2)由于当对所得有截断的静态码值(点数)进行傅里叶变换后,结果存在增益误差,即得到图6所示频谱图,其并不能代表真实的动态参数值。因此需对数字码进行增益误差消除。这里采用最小二乘法进行增益误差校正。定义m位adc,其输入正弦波为:

其中,aactual为实际输入信号幅度,f为输入信号幅度,vos(actual)为直流偏移。通过静态测试所得的码值,其幅度aactual大于满量程输入信号幅度。对此输入信号采样n个点后,得到y[n]

设误差消除之前的数字码波形为y(n)。

式中,这一项代表频谱中谐波成分,j为信号周期,n则为0,1,…,n-1

幅度校正的具体做法是:

①计算原波形的幅度a0与偏移vos0:

其中,n为有截断的静态码值点数,vref+为adc的正参考电压,vref-为adc的负参考电压,wb为有截断的静态码值的最低代码宽度,wt为有截断的静态码值的最高代码宽度。

②对原波形做傅里叶变换,得到y[k]后,根据傅里叶系数求出y[n]的周期j1和初始相位

j1=max1≤k≤n/2{abs(y(k))}-1(8)

③在计算得到j1和后,利用最小二乘法求出所求未发生截断的信号y0[n]周期j0和相位为:

j0=δj+j1(10)

其中δj为j和j1之差,之差。

④最后可拟合得到未发生截断的波形表达式,即增益误差消除后表达式:

⑤将原始信号y[n]中减去截断的波形信号ycli[n],然后加上未截断的波形信号即可得到所要求得到信号y0[n]:

经过增益误差消除后的频谱图如图7所示。

3、做标准动态参数测试并与本发明所述改进的测试算法进行比较,比较图如图8所示。建立表格说明本发明所述改进的算法与原算法以及标准动态参数算法进行比较,如表格1所示。从表格可以看出,改进的算法与原算法相比精度更高。原算法与标准动态测试方法sinad的值相差0.879db,enob值相差0.146。改进算法与标准动态测试方法sinad的值仅相差0.137db,enob值相差0.023。与原算法相比,改进算法的计算精度sinad提高了0.742db,enob提高了0.123。由于原算法无法计算得出thd和sfdr参数,本发明用改进算法与标准算法做比较,从表中可知,adc的thd计算误差为0.176db,sfdr计算误差为0.118db。

表1

4、在原算法的基础上利用优化的直方图方法,即采用移动平均滤波器法进行计算,实验表明,在采用65540个采样点数时,得到的最大inl值与标准直方图方法得到的最大inl值仅相差0.089lsb,具体如图9和图10所示。

5、通过12位adc模型仿真验证改进算法的可行性之后,采用14位实际adc芯片,即ad9258芯片进行验证。按照测试流程,所得计算结果如表2所示。图11说明了实测时,标准动态测试算法与参数提取测试算法频谱比较图,图12说明了实测时,采用优化的直方图方法后的inl曲线图,图13说明了实测时,传统直方图测试方法所得的inl曲线图。

表2

6、实验结果表明,利用改进算法计算所得的最大inl估算误差为0.186lsb,sinad、thd、sfdr、enob估算误差分别为0.211db、0.159db、0.119db、0.035。与原估算算法相比,优化算法所得sinad和enob的估算精度提高了0.343db和0.057。与传统adc测试方法相比,在保证测试精度的前提下,测试时间减少了50.769%。

上述实例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1