高精度逐次逼近结构ADC的变权重子DAC校正方法
技术领域
本发明涉及电子领域,尤其涉及一种高精度逐次逼近结构ADC的变权重子DAC校正方法。
背景技术
逐次逼近(SAR:Successive-Approximation-Register,逐次逼近寄存器)ADC是常用的ADC结构类型之一,具有结构简单、易集成、低功耗等优势获得了广泛应用。目前,随着逐次逼近ADC转换精度的提高,由于工艺加工的偏差,已无法达到对应的转换精度要求,必须针对单个电路的实际情况进行修调。介于高精度ADC设计必须依靠校准技术,目前,一般校准技术有两类:一种是模拟校准技术,通过在模拟领域把相关的量调整到正常数值或者利用激光对芯片元件进行修正,但这种技术成本高,且容易受到封装时机械应力的影响;另一种是数字校准技术,通过把电路中失配误差等影响在数字领域描述,然后在数字领域对输出代码进行调整,数字校准是现行校准技术的主流。其中,权重修调技术通过改变每一位对应的权重,可以补偿工艺加工的偏差,提高SAR ADC转换精度,因此,在SAR ADC等芯片中得到广泛应用。
但是,传统的固定权重校正方法其每位权重的校正值是固定的,逻辑和时序操作简单,并且仅能实现对工艺固定匹配误差的校正,对由于器件本身随模拟输入电压变化造成的匹配误差则无能为力,已经无法满足目前宽输入高精度模数转换电路的设计要求。
发明内容
鉴于以上所述现有技术的缺点,本发明提供一种高精度逐次逼近结构ADC的变权重子DAC校正方法,以解决上述技术问题。
本发明提供的高精度逐次逼近结构ADC的变权重子DAC校正方法,包括:
启动模数转换器进行采样,采集获取转换曲线;
根据模数转换器的分辨率,将转换曲线进行分段;
预设用于进行偏移误差校正的校正码;
针对每一分段分别采用不同的校正码对偏移误差进行校正。
进一步,根据模数转换器需要进行校正的转换位位数,对转换曲线进行分段,若需要进行校正的转换位的数量为n,则将转换曲线分为2n段,并在启动转换时获取最高位转换结果,根据所述最高位转换结果,获取需要校正的n位转换结果。
进一步,在启动转换时:
若转换为单极输入,则取第0段的校正码对偏移误差进行校正,并获取最高位转换结果;
若转换为双极输入,则取第2n-1段的校正码对偏移误差进行校正,并获取最高位转换结果。
进一步,当最高位为0时,根据最高位转换结果取2n-2段的校正码与前次校正码求和后进行次高位校正,获取次高位转换结果,所述前次校正码包括第0段或第2n-1段校正码;
当最高位为1时,根据最高位转换结果取3*2n-2段的校正码前次求和后进行次高位校正,获取次高位转换结果;
依次获取n位转换结果。
进一步,还包括预计算处理,所述预计算处理包括在依次获取n位转换结果过程中,获取每位转换结果之前进行提前计算,并获取两个校正值,当获取上一位的转换结果后,对两个校正值进行选择输出。
进一步,所述校正码包括斜率校正码和离散校正码,通过对所述斜率校正码按转换位进行位移操作,再与所述离散校正码相加,获取该转换位的的实际校正值。
进一步,在ADC中设置主DAC和子DAC,所述子DAC输出正端与主DAC输出正端连接,所述子DAC输出负端与主DAC输出负端连接,所述子DAC为伪差分结构。
进一步,模数转换器进行采样时,控制子DAC输出最高位为1,其余为0。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法。
本发明还提供一种电子终端,包括:处理器及存储器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行上述任一项所述方法。
本发明的有益效果:本发明中的高精度逐次逼近结构ADC的变权重子DAC校正方法,采用分段校正的方法来实现整个转换曲线的线性化,通过在转换曲线的不同分段中采用不同的权重校正值,来实现对整个转换曲线的线性校正,从而实现了对各种转换误差的综合校正,大大减少了器件本身随模拟输入电压变化造成的匹配误差,满足了宽输入高精度模数转换电路的要求。
附图说明
图1是本发明实施例的高精度逐次逼近结构ADC的变权重子DAC校正电路示意图。
图2是本发明实施例的变权重子DAC校正逻辑框图。
图3是本发明实施例的变权重子DAC校正流程示意图。
图4是本发明实施例的变权重子DAC校正系统结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
本实施例中的高精度逐次逼近结构ADC的变权重子DAC校正方法,包括:
启动模数转换器进行采样,采集获取转换曲线;
根据模数转换器的分辨率,将转换曲线进行分段;
预设用于进行偏移误差校正的校正码;
针对每一分段分别采用不同的校正码对偏移误差进行校正。
在本实施例中,整个ADC分辨率为m位,其中高n位由于工艺偏差或输入电压变化需要进行线性校正。则可将整个转换曲线分为2n段,每一段采用不同的校正码,在本实施例中n根据工艺加工水平和模数转换结构确定,例如目前广泛使用的电荷重分布,在10位以上均进行校正,如果m=16的话,则n=6,其中预设的校正码是根据首次未矫正的测试结果进行预设。
在本实施例中,在启动转换时,如果输入为单极输入,直接取第0段的校正码对偏移误差进行校正并得到最高位转换结果;如果输入为双极输入,直接取第2n-1段的校正码对偏移误差进行校正并得到最高位转换结果,然后根据最高位转换结果,当最高位为0时,取2n-2段校正码与前次校正值求和后进行次高位校正,当最高位为1时,取3*2n-2段校正码与前次校正值求和后进行次高位校正,得到次高位转换结果,以此类推得到需要校正的n位转换结果。最后保持校正值之和,完成所有不需要校正位的转换,在本实施例中,第0段的校正码和第2n-1段的校正码获取的方式是通过读取已存贮好的数字码,比如读取熔丝修调的数据,在实际工作时,根据未校正时的测试结果的偏差,在出厂时将数据存储在ADC中的用于存贮各段数字码的只读存贮器中。
如图3所示,本实施例中变权重子DAC校正方法的实现逻辑和步骤如下:
1)采样阶段:输出2n-1码值控制子DAC,读取第2n-1段校正代码E(2n-1),计算Σm=2n -1+E(2n-1)结果。
2)最高位转换:读取E(2n-2)、E(3*2n-2)校正代码,输出Σm控制子DAC输出,计算Σm-1L=Σm+E(2n-2)、Σm-1H=Σm+E(3*2n-2);
3)次高位转换:按照
Σm=Σm-1L(Dm=0)
Σm=Σm-1H(Dm=1)
输出Σm控制子DAC输出,计算Σm-2L=Σm+E(Dm*2n-1+2n-3)、Σm-2H=Σm+E(Dm*2n-1+3*2n-3);
4)第三位转换:按照
Σm=Σm-2L(Dm-1=0)
Σm=Σm-2H(Dm-1=1)
输出Σm控制子DAC输出,计算Σm-3L=Σm+E(Dm*2n-1+Dm-1*2n-2+2n-4)、Σm-2H=Σm+E(Dm*2n-1+Dm-1*2n-2+3*2n-4);
5)以此类推,完成所有需要校正的高位转换;
6)保持Σm完成剩余的低位转换。
在本实施例中,在模数转换器采样时,校正逻辑应输出2n-1控制子DAC,表示子DAC最高位为1,其余为0;这样后续的分段校正值只需要给出与理想值的偏差,有效降低了校正值的位数,整个子DAC的输出既可逐步增加,也可以逐步降低。
在本实施例中,子DAC以伪差分方式工作,负端的所有数据输入全部接0,正端由校正逻辑控制,但通过容值的变化保证其权重为全差分时的2倍。
在本实施例中,由于变权重校正时需要进行大量的加减运算,在整个ADC高速工作时对逻辑的时序要求较高,为了保证子DAC建立时间充裕,将每位实际需要进行的加减运算提前了一拍进行预计算,预计算处理包括在依次获取n位转换结果过程中,获取每位转换结果之前进行提前计算,并获取两个校正值,当获取上一位的转换结果后,对两个校正值进行选择输出,通过这种方式,将每位实际需要进行的加减运算提前了一拍进行预计算,每次会计算出两个校正值,在上一位得到转换结果后只进行选择输出,从而获得较高的转换速率。
如图1所示,本实施例中的电路是以一个16位电荷重分布主DAC进行示例,子DAC输出正端接入主DAC输出正端第二分段(A点);子DAC输出负端接入主DAC输出负端第二分段(B点),本实施例中主DAC的结构为差分“6+10”两段设计,子DAC为一个差分10位电荷重分布DAC,最小校正权重1LSB,子DAC线路设计为伪差分,工作时按照伪差分方式工作。如果需要更高的分辨率,主DAC可以增加高位段的对应权重电容;如果需要更小的校正权重,子DAC可以增加更小的权重电容和控制位。
如图2所示,在本实施例中,所述校正码包括斜率校正码和离散校正码,首先对斜率校正码按转换位进行移位操作,然后和离散校正码相加得到该转换位的真实校正值,通过校验码组合的作为每位校验码的存贮方法,可以减少存贮校验码的位数。本实施例中的位移操作是指二进制的位数的移动,例如,在本实施例中,第10位校正0.5LSB斜率,第11位就要校正1LSB斜率,第12位校正2LSB斜率,从二进制来说,每升高一位,则斜率校正值增大2倍,相当于二进制左移一位。
本实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中的任一项方法。
本实施例还提供一种电子终端,包括:处理器及存储器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述终端执行本实施例中任一项方法。
本实施例中的计算机可读存储介质,本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
如图4所示,本实施例提供了系统的结构示意图,本实施例提供的系统,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于和如图1所示的高精度逐次逼近结构ADC的变权重子DAC校正电路进行通信,处理器和收发器用于运行计算机程序,使高精度逐次逼近结构ADC的变权重子DAC校正系统执行如上高精度逐次逼近结构ADC的变权重子DAC校正方法的各个步骤。
在本实施例中,存储器可能包含随机存取存储器(RandomAccessMemory,简称RAM),也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DigitalSignalProcessing,简称DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-ProgrammableGateArray,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。