一种基于最小均方算法的数字后台校正方法与流程

文档序号:18898018发布日期:2019-10-18 21:32阅读:509来源:国知局
一种基于最小均方算法的数字后台校正方法与流程

本发明属于模拟集成电路技术领域,特别涉及一种基于最小均方算法lms的数字后台校正方法,用于校正高精度逐次逼近模数转换器saradc的电容阵列。



背景技术:

随着模数转换器(adc)精度的提高,在小尺寸工艺下,电容的匹配精度决定了adc静态和动态性能。除了较好的排布电容阵列版图之外,我们还需要对电容阵列进行校正。目前主流的校正方式包括数字校正和模拟校正。数字校正是指电容失配的消除在数字域完成,每一个电容的权重都对应一个数字码字,这个码字对应该电容的数字权重,数字校正的目的是让数字权重逼近电容制造完成后在总电容阵列所占比重(即真实权重),从而消除电容失配;而后台校正是指校正不影响电路正常的采样和量化,电路没有特定的校正模式,校正的所有操作在后台完成。数字后台校正中的典型代表为基于分裂式splitadc的数字校准技术,采用两个adc对同一个输入信号进行转换,根据输出结果的差值来调整各自的权重,当两者差值足够小时,则可认为校准完成。

基于splitadc的数字校准技术的原理为,当一个n位adc在转换结束时,输入信号的模拟值可表示为:

式中,di代表每一位的量化码字,ωi为该位对应的权重,vref为电容阵列的参考电压。当电容没有失配时,ωi组成一组二进制权重序列,不考虑其他非理想因素,则di就是输入信号vin的正确量化码字。而实际上,电容在制造过程中存在随机失配,权重ωi不再是二进制权重序列,非理想的权重序列可能导致量化码字出错,从而无法还原出真实输入信号。

这种情况下,基于splitadc的数字校准技术采用两个独立的adc:“adca”和“adcb”,同时对一个输入信号采样并转换。它们的失配不同,假设它们的实际权重为ωia和ωib,则还原的输入信号可以表示为:

假设实际权重可以表示为理想权重ωi,ideal和误差权重ξi的和,则:

ωia=ωia,ideal+ξia(4)

ωib=ωib,ideal+ξib(5)

则“adca”“adcb”两个adc还原的输入信号值可以重写为:

因为两个adc对同一个输入信号进行采样和转换,在不断的迭代过程中,量化码字dia和dib会趋于相等,所以转换后的模拟值差值为:

转换后的码字差值为:

如果差值为零,则权重ωia和ωib就是真实权重,所得到的转换后的模拟值也是正确的。权重迭代可表示为:

其中,lms的迭代系数μ控制着迭代的速度和精度,μ一般取2的指数次方。通常而言,大的μ使权重很快的向真实值靠近,但是系统容易受到噪声的干扰,很可能出现迭代错误;小的μ可以得到较为精确的实际权重,但需要更长的校正时间,所以μ需要在速度和精度之间进行折中。

以一个传统的3位电荷重分配型saradc为例,假设dac电容阵列各位电容的理想值分别为4c、2c和c(c为单位电容),那么各位电容真实的模拟权重分别为4、2和1,而它们的数字权重分别是100、010和001。假设电容失配导致各位电容的实际值分别变为3.875c,2.125c和c,那么各位电容的模拟权重分别变为3.875、2.125和1,数字后台校正通过一定的算法使它们的数字权重分别变为011_111、010_001和001_000,其中高3位为数字权重的整数部分,而低3位为数字权重的小数部分,实现了数字权重和模拟权重相等,从而消除了电容失配。

数字后台校正的优点是校正可以实时跟随环境参数的变化,可以应用在实时的信息采集系统中。在基于splitadc的数字后台校正算法中,两个adc的工作模式不能完全相同,否则当两个adc的失配方向一致时,码字误差始终为零,达不到校正的目的。同时,校正adc的电容阵列需要引入冗余,保证dac失配误差的数字可校准性。最后,很多的数字后台校正算法没有将最高位的电容进行采样校正,直接影响最后校正的效果。



技术实现要素:

针对上述传统基于分裂式splitadc的数字后台校正方法存在的失配方向一致时无法校正和没有进行最高位电容校正的不足之处,本发明提出一种基于最小均方算法(lms算法)的数字后台校正方法,采用非二进制电容阵列,可以有效的解决两个adc电容失配方向一致导致校正无效的问题;同时非二进制的电容阵列引入了冗余量,保证了数字校正的可行性;最后,对权重最高的电容进行了特殊设计,可以对其进行有效校正。

本发明的技术方案为:

一种基于最小均方算法的数字后台校正方法,适用于分裂式逐次逼近模数转换器,所述数字后台校正方法包括如下步骤:

步骤一、设置所述分裂式逐次逼近模数转换器,所述分裂式逐次逼近模数转换器包括第一模数转换模块和第二模数转换模块;

所述第一模数转换模块包括比较器和连接比较器两个输入端的两个dac电容阵列,所述dac电容阵列包括n位主dac冗余电容阵列和m位校正dac电容阵列,其中m、n均为正整数且m<n;

所述主dac冗余电容阵列为带失配的非二进制电容阵列,所述主dac冗余电容阵列中第1位电容即最高位电容的电容值为1c,c为单位电容值,第2位电容和第3位电容为拆分后的具有相同电容值的两个电容;所述主dac冗余电容阵列中所有电容的下极板均通过开关后连接电源电压、地电压、共模电压或输入电压,其上极板均连接所述比较器的输入端;

所述校正dac电容阵列中第m位电容的容值与所述主dac冗余电容阵列中第m+1位电容的容值之和小于所述主dac冗余电容阵列中第m+2位电容至第n位电容的电容值之和,m为正整数且m∈[1,m];所述校正dac电容阵列中所有电容的下极板均通过开关后连接电源电压、地电压或共模电压,其上极板均连接所述比较器的输入端;

所述比较器用于将两个所述dac电容阵列的输出信号进行比较并得到所述第一模数转换模块的量化码字;

所述第二模数转换模块的结构与所述第一模数转换模块相同,但所述第二模数转换模块的dac电容阵列中的电容带有不同的失配;

步骤二、所述第一模数转换模块和第二模数转换模块对输入电压进行量化得到第一模数转换模块的量化码字dia和第二模数转换模块的量化码字dib;

步骤三、将所述第一模数转换模块的量化码字dia转换为各位权重之和得到第一输出码字将所述第二模数转换模块的量化码字dib转换为各位权重之和得到第二输出码字其中ωia为所述第一模数转换模块中主dac冗余电容阵列第i位电容的权重,dia为所述第一模数转换模块中主dac冗余电容阵列第i位电容对应的量化码字,ωib为所述第二模数转换模块中主dac冗余电容阵列第i位电容的权重,dib为所述第二模数转换模块中主dac冗余电容阵列第i位电容对应的量化码字,i为正整数且i∈[1,n];

步骤四、将第一输出码字δdout,a与第二输出码字δdout,b的平均值作为所述分裂式逐次逼近模数转换器的输出码字,若所述分裂式逐次逼近模数转换器的输出码字的线性度不再增长时停止校正,否则转到步骤五;

步骤五、利用第一输出码字δdout,a与第二输出码字δdout,b的差值δdout更新所述第一模数转换模块和第二模数转换模块的主dac冗余电容阵列中电容的权重,其中更新之后的所述第一模数转换模块中主dac冗余电容阵列第i位电容的权重ωia′=ωia-μ×δdout×dia,更新之后的所述第二模数转换模块中主dac冗余电容阵列第i位电容的权重ωib′=ωib-μ×δdout×dib,返回步骤二。

具体的,所述步骤二中得到第一模数转换模块的输出码字和第二模数转换模块的输出码字的具体方法为:

a、将所述第一模数转换模块和第二模数转换模块中主dac冗余电容阵列的电容下极板连接输入电压,校正dac电容阵列的电容下极板连接共模电压进行采样;

b、采样结束后将所述第一模数转换模块和第二模数转换模块中主dac冗余电容阵列的电容下极板连接共模电压,所述第一模数转换模块和第二模数转换模块中比较器进行第一次比较并根据比较结果指导各自的主dac冗余电容阵列中最高位即第1位电容切换;

c、所述第一模数转换模块和第二模数转换模块中校正dac电容阵列的最高位即第1位电容下极板随机切换,所述第一模数转换模块和第二模数转换模块中比较器进行第二次比较并根据比较结果指导各自的主dac冗余电容阵列中次高位即第2位电容切换;

d、继续对所述第一模数转换模块和第二模数转换模块中主dac冗余电容阵列的第3位至第m位电容进行切换,其中对所述第一模数转换模块和第二模数转换模块中主dac冗余电容阵列的第k位电容进行切换的方法如下,k∈[3,m]:

将所述第一模数转换模块和第二模数转换模块中校正dac电容阵列的第k-2位电容下极板连接共模电压,将所述第一模数转换模块和第二模数转换模块中校正dac电容阵列的第k-1位电容下极板随机切换,所述第一模数转换模块和第二模数转换模块中比较器进行第k次比较并根据比较结果指导各自的主dac冗余电容阵列中第k位电容切换;

e、所述第一模数转换模块和第二模数转换模块中校正dac电容阵列的电容下极板均接共模电压,所述第一模数转换模块和第二模数转换模块中主dac冗余电容阵列的剩余n-m位电容按照基于共模电压复位的方式切换,全部切换完成后得到所述第一模数转换模块的量化码字dia和第二模数转换模块的量化码字dib。

本发明的有益效果为:本发明基于最小均方算法提出一种数字后台校正方法,根据将两个输出码字的差值δdout作为误差信号连接到lmsωia校正模块和lmsωib校正模块并进行权重校正,设置的dac电容阵列中最高位电容容值最小,使得包括权重最大的电容在内的每个电容的实际权重都得以量化;同时校正dac随机切换方式的引入可以有效的解决两个adc电容失配方向一致导致校正无效的问题;非二进制的主dac电容阵列引入了冗余量,保证了每次切换的正确性。

附图说明

图1为本发明提出的一种基于最小均方算法的数字后台校正方法的框架示意图。

图2为实施例中第一模数转换模块adca和第二模数转换模块adcb的dac电容阵列单端示意图。

图3为dac电容阵列上极板电压变化示意图。

图4为采用本发明提出的一种基于最小均方算法的数字后台校正方法校正后的有效位数(enob)随迭代次数变化图。

图5为采用本发明提出的一种基于最小均方算法的数字后台校正方法校正后的无杂散动态范围(sfdr)随迭代次数变化图。

具体实施方式

下面结合附图,通过实施例进一步说明本发明。

如图1所示是本发明提出的一种基于最小均方算法的数字后台校正方法的框架示意图,采用本发明的方法进行校正的结构中包括分裂式saradc、lmsωia校正模块、lmsωib校正模块、第一累计码字计算模块和第二累计码字计算模块,分裂式saradc包括第一模数转换模块adca和第二模数转换模块adcb,第一模数转换模块adca和第二模数转换模块adcb模块输入端连接输入信号vin,第一模数转换模块adca模块的输出端连接第一累计码字计算模块的第一输入端,第二模数转换模块adcb模块的输出端连接第二累计码字计算模块的第一输入端,lmsωia校正模块的输出端连接第一累计码字计算模块的第二输入端,lmsωib校正模块的输出端连接第二累计码字计算模块的第二输入端,两个累计码字计算模块输出端的和再除以二之后作为整体分裂式saradc的校正输出dout,而两个累计码字计算模块输出端的差δdout作为误差信号,连接到lmsωia校正模块和lmsωib校正模块的输入端,lmsωia校正模块和lmsωib校正模块根据δdout分别对第一模数转换模块adca和第二模数转换模块adcb的权重进行校正。

进行校正前首先设置分裂式saradc,分裂式逐次逼近模数转换器包括第一模数转换模块adca和第二模数转换模块adcb,首先说明第一模数转换模块adca的结构,第一模数转换模块adca包括比较器和连接比较器n输入端和p输入端的两个dac电容阵列,dac电容阵列包括n位主dac冗余电容阵列和m位校正dac电容阵列,其中m、n均为正整数且m<n。m位的校正dac电容阵列的上极板直接连接到n位的主dac冗余电容阵列上极板,按高位到低位的位置顺序给主dac冗余电容阵列的n个电容编号为c1、c2、c3……cn,按高位到低位的位置顺序给校正dac阵列的m个电容编号为cc1、cc2、cc3……ccm。

主dac冗余电容阵列为带失配的非二进制电容阵列,将主dac冗余电容阵列中最高位电容的权重设置为最小,即主dac冗余电容阵列中第1位电容即最高位电容的电容值为1c,c为单位电容值,第2位电容和第3位电容为拆分后的具有相同电容值的两个电容,这样次高位的电容值权重最大;主dac冗余电容阵列中所有电容的下极板均通过开关后连接电源电压、地电压、共模电压或输入电压,其上极板均连接比较器的输入端。

校正dac电容阵列可以为二进制电容阵列或非二进制电容阵列,校正dac电容阵列中的m位电容的取值需要满足:校正dac电容阵列中第m位电容的容值与主dac冗余电容阵列中第m+1位电容的容值之和小于主dac冗余电容阵列中第m+2位电容至第n位电容的电容值之和,m为正整数且m∈[1,m];此时存在权衡关系为:校正dac电容阵列中电容的容值越大,校正收敛速度越快,但adc的量化范围会越少,校正dac电容阵列中电容的容值越小,校正收敛速度越慢,但adc的量化范围会越大。校正dac电容阵列中所有电容的下极板均通过开关后连接电源电压、地电压或共模电压,其上极板均连接比较器的输入端。

比较器的两个输入端连接两个dac电容阵列,用于将两个dac电容阵列的输出信号进行比较并得到第一模数转换模块的量化码字。

第二模数转换模块adcb的结构与第一模数转换模块adca相同,但第二模数转换模块adcb的dac电容阵列中的电容与第一模数转换模块adca相比带有不同的失配。

本发明提出的一种基于最小均方算法的数字后台校正方法对分裂式saradc中的电容阵列做了改进,主dac电容阵列采用非二进制设计,其中最高位电容的权重最小,次高位电容权重最大,这样校正dac电容阵列的随机切换可以有效的校正权重最大的电容,可以保证包括权重最大的电容在内的每个电容都得到量化,解决传统校正中无法校正最高位电容的问题,提升adc的线性度和动态范围;同时dac电容阵列高位采用了非二进制引入了冗余量,可以弱化系统在量化过程中引入的动态误差,提高迭代的速度。

设置好分裂式saradc后开始进行后台校正,包括如下步骤:

步骤1、将输入信号vin接入两个带有失配且完全独立的第一模数转换模块adca和第二模数转换模块adcb中,采样时只有主dac冗余电容阵列中电容的下极板接入输入信号,主dac冗余电容阵列中电容的上极板以及校正dac电容阵列中电容的下极板均连接到共模电平vcm上。

步骤2、采样结束后,将主dac冗余电容阵列中电容的下极板与输入信号断开,并连接到共模电平vcm上,校正dac电容阵列保持之前的连接关系不变。此时,比较器进行第一次比较并指导主dac冗余电容阵列的最高位电容c1切换,同时,校正dac电容阵列的最高位电容cc1随机切换,这两次切换后形成的主dac电容阵列的上极板电压输入到比较器,比较器进行第二次比较并指导主dac冗余电容阵列的次高位电容c2切换,同时,校正dac电容阵列的最高位电容cc1切回共模电平vcm,校正dac电容阵列的次高位电容cc2随机切换,这两次切换后形成的主dac冗余电容阵列的上极板电压输入到比较器,进行第三次比较,以此类推。需要注意的是,每次随机切换校正dac电容阵列的电容时,要将随机切换的校正dac电容阵列的那位电容的上一位电容复位到共模电平vcm,直到所需校正的主dac冗余电容阵列高m位切换完成,则校正dac电容阵列下极板均连接共模电平vcm,主dac冗余电容阵列的后续电容按照传统的基于共模电压vcm-based切换方式切换,最终得到第一模数转换模块adca的量化码字dia和第二模数转换模块adcb的量化码字dib。

步骤3、将所述步骤2中得到量化码字dia和dib分别通过累计码字计算模块算出该采样点对应的输出码字δdout,a和δdout,b。将两个输出码字δdout,a和δdout,b的平均值作为分裂式saradc的输出码字dout,判断dout的线性度是否达到要求,若达到要求则停止校正,否则将两个输出码字δdout,a和δdout,b的差值δdout作为误差信号连接到lmsωia校正模块和lmsωib校正模块并按照公式(10)和公式(11)进行一次迭代,更新第一模数转换模块adca和第二模数转换模块adcb的主dac冗余电容阵列中电容的权重,其中更新之后的第一模数转换模块adca中主dac冗余电容阵列第i位电容的权重ωia′=ωia-μ×δdout×dia,更新之后的第二模数转换模块adcb中主dac冗余电容阵列第i位电容的权重ωib′=ωib-μ×δdout×dib。

步骤4、将所述步骤1、2、3重复进行,每采一个输入信号就进行一次权重迭代,直到最终输出码字dout的线性度达到要求不再增长。

下面以主dac冗余电容阵列为16位,校正dac电容阵列为8位为例。如图2所示为给出了本实施例中采用的dac电容阵列结构,以连接比较器p输入端的dac电容阵列为例进行说明,比较器n输入端连接的dac电容阵列同理。其中,主dac冗余电容阵列是16位,按照高位到低位的位置顺序,主dac冗余电容阵列c1~c16的容值分别为1c、5223c、5223c、5223c、2735c、1432c、750c、393c、206c、108c、57c、30c、16c、8c、4c、2c,c为单位电容;校正dac电容阵列为8位,用于校正主dac冗余电容阵列对应的高8位电容,采用8个电容,按照高位到低位的位置顺序,校正dac电容阵列cc1~cc8的容值分别为8192c、4096c、360c、188c、98c、51c、27c、14c。

输入信号同时经adca模块和adcb模块采样,采样结束后主dac电容阵列的上极板电压可以表示为:

这样一来,第一次比较结果与电容失配没有关系,所以高位无法得到校正。如附图3所示,这次比较结果指导主dac冗余电容阵列中的c1进行切换,由于c1容值较小,权重小,引起的上极板电压变化量并不大;随后校正dac电容阵列对应的最高位电容cc1随机切换,本实施例中adc为双端电容阵列,比较器的p输入端和n输入端分别连接了dac电容阵列,如图3所示,p端往上切,n端往下切,即p端连接的dac电容阵列中的电容下极板从共模电压切换到更高的电源电压,n端连接的dac电容阵列中的电容下极板从共模电压切换到更低的地电压,则这两次切换后n端上极板电压小于p端上极板电压,故主dac电容阵列p端的次高位c2下极板由vcm接到地,主dac电容阵列n端的次高位c2下极板由vcm接到vref;随后校正dac电容阵列的最高位电容复位到共模电平vcm,校正dac电容阵列对应的次高位电容cc2随机切换,假设如图3中p端往下切,n端往上切,则这两次切换后p端上极板电压大于n端上极板电压,则主dac电容阵列p端的电容c3下极板由vcm接到地,主dac电容阵列n端的电容c3下极板由vcm接到vref;以此类推,直到所需校正的主dac电容阵列高m位切换完成,则校正dac电容阵列下极板均连接vcm,主dac电容阵列的后续电容按照vcm-based切换方式切换,最终得到量化码字dia和dib。

量化码字dia和dib分别通过两个累计码字计算模块算出该采样点对应的输出码字。由于校正dac电容阵列为随机切换且主dac电容阵列存在独立失配,所以量化码字dia和dib存在差异,将两个输出码字的差值δdout作为误差信号连接到lmsωia校正模块和lmsωib校正模块并按照公式(10)和公式(11)进行一次迭代,其中初始权重取二进制权重序列,本实施例中μ取2-16。将所述过程重复进行,每采一个输入信号就进行一次权重迭代,直到最终输出码字dout的线性度达到要求。本发明在数字域将权重不断迭代,可以有效的消除两个adc模块中的主dac电容阵列高位的失配,从而提升了adc的线性度。

基于本实施例提出的一种基于lms算法的数字后台校正技术,在matlab仿真软件上进行了行为级验证,证明了本发明可以有效的消除两个adc模块中的主dac电容阵列高位的失配。如图4和图5为使用本实施例的一个16位adc经数字后台校正的仿真结果,单位电容给3%的电容失配,在无校正情况下有效位数仅为12.1,在有校正情况下提升至14.8。在无校正情况下无杂散动态范围仅为81db,在有校正情况下提升至100db。

以上实例仅用于说明本发明的技术方案。本领域的普通技术人员应当理解,可以对本发明做出修改和变形组合,但在不脱离本方案的精神的范围内,均应涵盖在本发明的权利保护范围之内。

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