CN115589228B - Pipeline-SAR ADC非线性误差的校准方法、系统 - Google Patents
Pipeline-SAR ADC非线性误差的校准方法、系统 Download PDFInfo
- Publication number
- CN115589228B CN115589228B CN202211478445.1A CN202211478445A CN115589228B CN 115589228 B CN115589228 B CN 115589228B CN 202211478445 A CN202211478445 A CN 202211478445A CN 115589228 B CN115589228 B CN 115589228B
- Authority
- CN
- China
- Prior art keywords
- output data
- pseudo
- digital converter
- successive approximation
- calibrated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M1/00—Analogue/digital conversion; Digital/analogue conversion
- H03M1/10—Calibration or testing
- H03M1/1009—Calibration
- H03M1/1033—Calibration over the full range of the converter, e.g. for correcting differential non-linearity
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M1/00—Analogue/digital conversion; Digital/analogue conversion
- H03M1/06—Continuously compensating for, or preventing, undesired influence of physical parameters
- H03M1/0614—Continuously compensating for, or preventing, undesired influence of physical parameters of harmonic distortion
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M1/00—Analogue/digital conversion; Digital/analogue conversion
- H03M1/12—Analogue/digital converters
- H03M1/34—Analogue value compared with reference values
- H03M1/38—Analogue value compared with reference values sequentially only, e.g. successive approximation type
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Nonlinear Science (AREA)
- Analogue/Digital Conversion (AREA)
Abstract
本发明公开了一种Pipeline‑SAR ADC非线性误差的校准方法、系统,该方法包括:将获取的与待校准Pipeline‑SAR ADC非线性误差对应的至少一组伪随机序列注入Pipeline‑SAR ADC中,从注入伪随机序列的ADC中获取输出数据;将重构得到的重构输出数据与伪随机序列进行数学运算,得到该非线性误差的校准值;根据校准值对该非线性误差进行校准,得到校准后的输出数据。本发明将注入伪随机序列的输出数据重构后再与伪随机序列进行数学运算,得到该非线性误差的校准值,实现了基于校准值对待校准Pipeline‑SAR ADC非线性误差的校准,提高了校准的稳定性和精准度,满足了校准需求。
Description
技术领域
本发明涉及误差校准技术领域,特别涉及一种Pipeline-SAR ADC非线性误差的校准方法、系统。
背景技术
流水线型逐次逼近型模数转换器(Pipelined Successive ApproximationRegister Digital to Analog Converter,以下简称pipelined SAR ADC)实际上是pipelined ADC和SARADC的一种有效结合,其将高能效的SAR ADC与pipelined ADC的工作机制相结合。
随着技术的不断进步,物联网以及5G通信等的不断发展,低功耗,中高速,中高精度的ADC的需求在不断扩大。为了协调ADC得低功耗和中高速或者高精度等需求,当前的pipelined ADC在市场上有很大的份额,其中有包括pipelined-SAR ADC兼具中高速和中高精度的特点。但在其工作过程中,pipelined-SAR ADC各子级ADC之间的级间放大器有比较显著的非线性误差,需要对这些非线性的谐波误差进行校准。而现有技术中对pipelined-SARADC的非线性误差的校准方式存在校准性能不稳定的缺陷。
发明内容
本发明要解决的技术问题是为了克服现有技术中现有的校准的pipelined-SARADC的非线性误差的方式存在校准性能不稳定缺陷,提供一种Pipeline-SAR ADC非线性误差的校准方法、系统。
本发明是通过下述技术方案来解决上述技术问题:
本发明第一方面提供了一种Pipeline-SAR ADC非线性误差的校准方法,所述校准方法包括:
获取与待校准Pipeline-SAR ADC非线性误差对应的至少一组伪随机序列;
将所述至少一组伪随机序列注入Pipeline-SAR ADC中,以得到注入伪随机序列的Pipeline-SAR ADC;
获取所述注入伪随机序列的Pipeline-SAR ADC的输出数据;
重构所述输出数据,以得到重构输出数据;
将所述重构输出数据与所述至少一组伪随机序列进行数学运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值;
根据所述校准值对所述待校准Pipeline-SAR ADC非线性误差进行校准,以得到校准后的Pipeline-SAR ADC的输出数据。
较佳地,将所述重构输出数据与所述至少一组伪随机序列进行数学运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值的步骤包括:
获取每组所述伪随机序列的幅值;
对每组所述伪随机序列的幅值进行相加运算,以得到各伪随机序列之和;
对每组所述伪随机序列的幅值进行相乘运算,以得到各伪随机序列之积;
对所述各伪随机序列之积进行取反运算,以得到所述各伪随机序列之积的相反数;
对所述重构输出数据与所述各伪随机序列之和进行相加运算,以得到相加后的重构输出数据;
对所述相加后的重构输出数据与所述各伪随机序列之积的相反数进行相乘运算,以得到相乘后的重构输出数据;
对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值。
较佳地,根据所述校准值对所述待校准Pipeline-SAR ADC非线性误差进行校准,以得到校准后的Pipeline-SAR ADC的输出数据的步骤包括:
利用所述校准值对所述输出数据进行重构处理,以得到校准后的Pipeline-SARADC的输出数据。
较佳地,对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值的步骤包括:
采用移位运算对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值。
本发明第二方面提供了一种Pipeline-SAR ADC非线性误差的校准系统,所述校准系统包括第一获取模块、注入模块、第二获取模块、重构模块、运算模块以及校准模块;
所述第一获取模块用于获取与待校准Pipeline-SAR ADC非线性误差对应的至少一组伪随机序列;
所述注入模块用于将所述至少一组伪随机序列注入Pipeline-SAR ADC中,以得到注入伪随机序列的Pipeline-SAR ADC;
所述第二获取模块用于获取所述注入伪随机序列的Pipeline-SAR ADC的输出数据;
所述重构模块用于重构所述输出数据,以得到重构输出数据;
所述运算模块用于将所述重构输出数据与所述至少一组伪随机序列进行数学运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值;
所述校准模块用于根据所述校准值对所述待校准Pipeline-SAR ADC非线性误差进行校准,以得到校准后的Pipeline-SAR ADC的输出数据。
较佳地,所述运算模块包括获取单元、第一相加运算单元、第一相乘运算单元、取反运算单元、第二相加运算单元、第二相乘运算单元以及累加平均运算单元;
所述获取单元用于获取每组所述伪随机序列的幅值;
所述第一相加运算单元用于对每组所述伪随机序列的幅值进行相加运算,以得到各伪随机序列之和;
所述第一相乘运算单元用于对每组所述伪随机序列的幅值进行相乘运算,以得到各伪随机序列之积;
所述取反运算单元用于对所述各伪随机序列之积进行取反运算,以得到所述各伪随机序列之积的相反数;
所述第二相加运算单元用于对所述重构输出数据与所述各伪随机序列之和进行相加运算,以得到相加后的重构输出数据;
所述第二相乘运算单元用于对所述相加后的重构输出数据与所述各伪随机序列之积的相反数进行相乘运算,以得到相乘后的重构输出数据;
所述累加平均运算单元用于对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值。
较佳地,所述校准模块用于利用所述校准值对所述输出数据进行重构处理,以得到校准后的Pipeline-SAR ADC的输出数据。
较佳地,所述累加平均运算单元用于采用移位运算对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准Pipeline-SAR ADC非线性误差的校准值。
本发明第三方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的Pipeline-SAR ADC非线性误差的校准方法。
本发明第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的Pipeline-SAR ADC非线性误差的校准方法。
本发明的积极进步效果在于:
本发明将注入伪随机序列的Pipeline-SAR ADC的输出数据进行重构后再与伪随机序列进行相关的数学运算,得到待校准Pipeline-SAR ADC非线性误差的校准值,实现了基于校准值对待校准Pipeline-SAR ADC非线性误差的校准,提高了校准的稳定性和精准度,满足了非线性误差的校准需求。
附图说明
图1为本发明实施例1的Pipeline-SAR ADC非线性误差的校准方法的流程图。
图2为本发明实施例1和2的流水线型ADC的结构示意图。
图3为本发明实施例1的Pipeline-SAR ADC非线性误差的校准方法的步骤105的流程图。
图4为本发明实施例1和2的Pipeline-SAR ADC三阶非线性误差的校准流程示意图。
图5为本发明实施例2的Pipeline-SAR ADC非线性误差的校准系统的结构示意图。
图6为本发明实施例3的电子设备的结构示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
实施例1
本实施例提供一种Pipeline-SAR ADC非线性误差的校准方法,如图1所示,该校准方法包括:
步骤101、获取与待校准Pipeline-SAR ADC非线性误差对应的至少一组伪随机序列;
本实施例中,需要注入的伪随机序列的数量由待校准Pipeline-SAR ADC非线性误差的阶数确定,例如,待校准Pipeline-SAR ADC非线性误差为三阶非线性误差,此时就需要注入三组伪随机序列。
作为可选的一种实施方式,pipelined ADC(流水线型ADC)是通过较低位数的子级ADC级联对模拟输入信号进行流水线式的量化,最终输出相应的数字码。需要说明的是,子级ADC多用flash ADC,也可以使用SAR ADC等。子级ADC间通过残差放大器相连,残差放大器将上一级的ADC未能量化为数字码的模拟信号放大,传递给下一级Flash ADC,进行后续的量化,即后面子级ADC的输入是前级模拟余量的放大值。经过多级子级ADC的量化后,最终由数字校正模块进行时间对齐和数字纠错,并将每一级子级ADC的数字输出码进行组合,得到整个Pipelined ADC的N位数字输出码,也就是整个ADC与模拟输入信号对应的数字输出数据。
图2是一个N级流水线型ADC的结构框图,拟输入信号Vin可以根据各子级ADC的数字输出数据(即输出码)由下列公式(1)还原得到:
式中,DN表示第N级的数字输出码,GN-1表示第N与第N+1级之间的级间残差放大器的增益,Vref表示参考电压。该式可以根据数字输出码还原为模拟输入信号Vin。
其中,各子级ADC和放大器在工作过程中都会因为模拟器件本身的一些性质产生一定的误差,其主要表现为:最主要能产生线性和各阶非线性误差的主要是各级级间放大器,各子级ADC也会有一定影响。在理想情况下,进入第一级间放大器的信号R1(t)经过后续的子级ADC处理之后,进入特定链路节点的信号依旧应该是R1(t)。但因为以上提到的误差因素,会导致该节点的信号在没经过校准前会变现为公式(2)所示:
其中 a1表示放大器的放大倍数和其线性误差系数之和, aN表示其余各阶非线性误差的系数值。
本实施例中,SAR ADC则是逐次逼近型ADC,本实施例所针对的是电容阵列结构的DAC(数字模拟转换器)的SAR ADC。
步骤102、将至少一组伪随机序列注入Pipeline-SAR ADC中,以得到注入伪随机序列的Pipeline-SAR ADC;
在具体实施过程中,通过注入经过设计的同一组但经过延时的伪随机序列(即确定序列),使得每两组伪随机序列之间的互相关系数尽可能减小,进而提高算法的精度。通过SAR的电容切换来控制各组伪随机序列的注入到Pipeline-SAR ADC的数据链路中。
步骤103、获取注入伪随机序列的Pipeline-SAR ADC的输出数据;
本实施例中,Pipeline-SAR ADC包括多级子ADC,具体地,获取注入伪随机序列的Pipeline-SAR ADC的各级子ADC的输出数据。
步骤104、重构输出数据,以得到重构输出数据;
步骤105、将重构输出数据与至少一组伪随机序列进行数学运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值;
本实施例中,数学运算包括但不限于加法运算、乘法运算、除法运算等。
步骤106、根据校准值对待校准Pipeline-SAR ADC非线性误差进行校准,以得到校准后的Pipeline-SAR ADC的输出数据。
作为可选的一种实施方式,利用校准值对输出数据进行重构处理,以得到校准后的Pipeline-SAR ADC的输出数据。在具体校准过程中,将重构输出数据进行立方运算后再与待校准Pipeline-SAR ADC非线性误差的校准值相乘,得到待消除的误差项(即待减去的误差项);将待校准Pipeline-SAR ADC非线性误差的校准值与注入伪随机序列的Pipeline-SAR ADC的输出数据再次进行重构,通过消除待消除的误差项以达到校准Pipeline-SARADC非线性误差的目的,最终得到校准后的Pipeline-SAR ADC的输出数据。
需要说明的是,Pipeline-SAR ADC非线性误差的校准方法通过ASIC电路实现,对于使用ASIC电路的方式,在具体实施过程中,先获取与待校准Pipeline-SAR ADC非线性误差对应的至少一组伪随机序列;本质上,获取的是至少一组伪随机序列01码,需要说明的是,本实施例使用的伪随机序列本质上是相同的各组序列,但要经过两两之间不同的延时,以使各组伪随机序列之间相关程度降到最低。此伪随机序列01码主要是通过控制SAR逻辑进行相应的电容切换并且输出相应的01码。而伪随机序列对应的01码代表采用的序列正负,影响到后续的运算,所以需要接收从模拟部分传过来的各组序列所对应的01码。
再将至少一组伪随机序列注入Pipeline-SAR ADC中,以得到注入伪随机序列的Pipeline-SAR ADC;
然后获取注入伪随机序列的Pipeline-SAR ADC的输出数据,其中,该输出数据中包含了注入的至少一组伪随机序列,另外,还需要从前台获取至少一组伪随机序列的幅值以便后续进行计算。对输出数据进行重构处理,以得到重构输出数据,需要说明的是,对输出数据进行重构时根据需要校准的级间放大器的位置确定重构的方式。
再将重构处理后得到的重构输出数据与至少一组伪随机序列进行数学运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值;具体地,由前台校准得到各组伪随机序列的幅值,计算各组伪随机序列所对应的幅值之和,以得到各伪随机序列之和,计算各组伪随机序列的幅值之积后再进行取反运算,以得到各伪随机序列之积的相反数。根据具体需求,将重构输出数据与各伪随机序列之和做相加运算,相加后的重构输出数据,再将相加后的重构输出数据与各伪随机序列之积的相反数做相乘运算,以得到相乘后的重构输出数据;对相乘后的重构输出数据进行累加运算,经过一定的序列长度之后,再做平均得到待校准Pipeline-SAR ADC非线性误差的校准值;再根据Pipeline-SAR ADC的输出数据和此校准值即可计算出一个经过校准的Pipeline-SAR ADC的输出数据。
需要说明的是,本实施例的Pipeline-SAR ADC非线性误差的校准方法是基于谐波失真校准算法进行运算校准,以消除Pipeline-SAR ADC非线性误差的误差项,达到校准的目的。
本实施例采用与前台校准配合使用的方式,可以有效减少因为伪随机序列的幅值不匹配而导致谐波失真校准算法引入的二次误差,使得本谐波失真校准算法的工作精度能够有效提升。
另外,本实施例的谐波失真校准算法采用的设计后的伪随机序列注入,其中,使用的各组伪随机序列相对于原始序列的延时可以是0、1、4、9、17,这样可以保证各组伪随机序列两两之间的相关性较低,能够满足谐波失真校准算法的需求。
作为可选的一种实施方式,如图3所示,步骤105包括:
步骤1051、获取每组伪随机序列的幅值;
本实施例中,从前台获取得到每组伪随机序列的幅值,以便后续进行计算。
本实施例中,采用SAR电容切换控制注入伪随机序列的方式,这种注入方式可以有效配合针对SAR ADC电容失配的前台校准,以获取注入的各组伪随机序列所对应的接近真实幅值的数值(即获取注入的各伪随机序列的幅值)。
需要说明的是,从前台获取的是每组伪随机序列的真实幅值而并非理想幅值,并使用真实幅值进行信号的重构运算,进一步提高了算法的有效性。
另外,利用前台的校准得到注入伪随机序列所用的电容权重,方便在对输出数据进行处理时用真实值进行计算,以提高算法的准确性。
步骤1052、对每组伪随机序列的幅值进行相加运算,以得到各伪随机序列之和;
步骤1053、对每组伪随机序列的幅值进行相乘运算,以得到各伪随机序列之积;
步骤1054、对各伪随机序列之积进行取反运算,以得到各伪随机序列之积的相反数;
步骤1055、对重构输出数据与各伪随机序列之和进行相加运算,以得到相加后的重构输出数据;
步骤1056、对相加后的重构输出数据与各伪随机序列之积的相反数进行相乘运算,以得到相乘后的重构输出数据;
步骤1057、对相乘后的重构输出数据进行累加平均运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值。
作为可选的一种实施方式,采用移位运算对相乘后的重构输出数据进行累加平均运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值。
本实施例中,采用移位运算按照预设模式对相乘后的重构输出数据进行累加平均运算,经过一定长度的累加平均,最终输出待校准的N阶非线性误差的校准值。
需要说明的是,鉴于求平均是除法运算,而除法器所占用的面积和功耗的开销都相对较高,因此,可以在累加的次数达到2的m次方时,采用移位运算代替除法运算,可以达到减少开销的目的。
例如,如图4所示,以三阶非线性误差为例,对于需要校准的级间放大器的三阶非线性误差,通过控制SAR的电容切换来控制各组伪随机序列注入到第一级子ADC的残差信号当中,残差信号经过第一级级间放大器的放大在后面的ADC子级中包含了非线性误差系数的信息。而校准三阶非线性误差需要注入三组伪随机序列。从ADC中不断获取输出数据。在一个例子中,需要校准的是第一级放大器的三阶非线性误差,所以需要提取的此阶非线性误差包含在第一级子ADC之后的所有子级ADC当中。在获取输出信号之后,需要对输出数据重构,即得到了除法器之后的输出数据。此输出数据中就包含了因第一级级间放大器三阶非线性误差造成的三次谐波误差项,也包含了三阶非线性误差的系数信息。在具体运算过程中,先将重构后的输出数据与各组伪随机序列之和相加。该步骤是为了消除重构输出数据中包含的各组伪随机序列在之后相关运算中的影响。相加后的重构输出数据再与各伪随机序列之积的相反数做相乘运算,得到相乘后的重构输出数据,该相乘后的重构输出数据经过一段长度的累加平均之后得到三阶非线性误差的校准值。需要说明的是,与重构输出数据做乘加运算的伪随机序列信息与此重构输出数据中包含的伪随机序列信息一一对应。得到第一级级间放大器的三阶非线性误差的校准值之后,对之前一次重构运算后得到的重构输出数据进行立方运算后再与三阶非线性误差的校准值相乘,即可得到需要减去的误差项,根据校准值减去三阶非线性误差的误差项后,再将校准值与Pipeline-SAR ADC的输出数据再次进行重构后即可得到Pipeline-SAR ADC的输出数据。需要说明的是,再进行一次重构是为了消除注入伪随机序列对Pipeline-SAR ADC的输出数据产生的影响。
本实施例将注入伪随机序列的Pipeline-SAR ADC的输出数据进行重构后再与伪随机序列进行相关的数学运算,得到待校准Pipeline-SAR ADC非线性误差的校准值,实现了基于校准值对待校准Pipeline-SAR ADC非线性误差的校准,提高了校准的稳定性和精准度,满足了非线性误差的校准需求。
实施例2
本实施例提供一种Pipeline-SAR ADC非线性误差的校准系统,如图5所示,该校准系统包括第一获取模块21、注入模块22、第二获取模块23、重构模块24、运算模块25以及校准模块26;
第一获取模块21用于获取与待校准Pipeline-SAR ADC非线性误差对应的至少一组伪随机序列;
本实施例中,需要注入的伪随机序列的数量由待校准Pipeline-SAR ADC非线性误差的阶数确定,例如,待校准Pipeline-SAR ADC非线性误差为三阶非线性误差,此时就需要注入三组伪随机序列。
作为可选的一种实施方式,pipelined ADC(流水线型ADC)是通过较低位数的子级ADC级联对模拟输入信号进行流水线式的量化,最终输出相应的数字码。需要说明的是,子级ADC多用flash ADC,也可以使用SAR ADC等。子级ADC间通过残差放大器相连,残差放大器将上一级的ADC未能量化为数字码的模拟信号放大,传递给下一级Flash ADC,进行后续的量化,即后面子级ADC的输入是前级模拟余量的放大值。经过多级子级ADC的量化后,最终由数字校正模块进行时间对齐和数字纠错,并将每一级子级ADC的数字输出码进行组合,得到整个Pipelined ADC的N位数字输出码,也就是整个ADC与模拟输入信号对应的数字输出数据。
图2是一个N级流水线型ADC的结构框图,拟输入信号Vin可以根据各子级ADC的数字输出数据(即输出码)由下列公式(1)还原得到:
式中,DN表示第N级的数字输出码,GN-1表示第N与第N+1级之间的级间残差放大器的增益,Vref表示参考电压。该式可以根据数字输出码还原为模拟输入信号Vin。
其中,各子级ADC和放大器在工作过程中都会因为模拟器件本身的一些性质产生一定的误差,其主要表现为:最主要能产生线性和各阶非线性误差的主要是各级级间放大器,各子级ADC也会有一定影响。在理想情况下,进入第一级间放大器的信号R1(t)经过后续的子级ADC处理之后,进入特定链路节点的信号依旧应该是R1(t)。但因为以上提到的误差因素,会导致该节点的信号在没经过校准前会变现为公式(2)所示:
其中 a1表示放大器的放大倍数和其线性误差系数之和, aN表示其余各阶非线性误差的系数值。
本实施例中,SAR ADC则是逐次逼近型ADC,本实施例所针对的是电容阵列结构的DAC的SAR ADC。
注入模块22用于将至少一组伪随机序列注入Pipeline-SAR ADC中,以得到注入伪随机序列的Pipeline-SAR ADC;
在具体实施过程中,通过注入经过设计的同一组但经过延时的伪随机序列(即确定序列),使得每两组伪随机序列之间的互相关系数尽可能减小,进而提高算法的精度。通过SAR的电容切换来控制各组伪随机序列的注入到Pipeline-SAR ADC的数据链路中。
第二获取模块23用于获取注入伪随机序列的Pipeline-SAR ADC的输出数据;
本实施例中,Pipeline-SAR ADC包括多级子ADC,具体地,获取注入伪随机序列的Pipeline-SAR ADC的各级子ADC的输出数据。
重构模块24用于重构输出数据,以得到重构输出数据;
运算模块25用于将重构输出数据与至少一组伪随机序列进行数学运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值;
本实施例中,数学运算包括但不限于加法运算、乘法运算、除法运算等。
校准模块26用于根据校准值对待校准Pipeline-SAR ADC非线性误差进行校准,以得到校准后的Pipeline-SAR ADC的输出数据。
作为可选的一种实施方式,利用校准值对输出数据进行重构处理,以得到校准后的Pipeline-SAR ADC的输出数据。在具体校准过程中,将重构输出数据进行立方运算后再与待校准Pipeline-SAR ADC非线性误差的校准值相乘,得到待消除的误差项(即待减去的误差项);将待校准Pipeline-SAR ADC非线性误差的校准值与注入伪随机序列的Pipeline-SAR ADC的输出数据再次进行重构,通过消除待消除的误差项以达到校准Pipeline-SARADC非线性误差的目的,最终得到校准后的Pipeline-SAR ADC的输出数据。
需要说明的是,Pipeline-SAR ADC非线性误差的校准方法通过ASIC电路实现,对于使用ASIC电路的方式,在具体实施过程中,先获取与待校准Pipeline-SAR ADC非线性误差对应的至少一组伪随机序列;本质上,获取的是至少一组伪随机序列01码,需要说明的是,本实施例使用的伪随机序列本质上是相同的各组序列,但要经过两两之间不同的延时,以使各组伪随机序列之间相关程度降到最低。此伪随机序列01码主要是通过控制SAR逻辑进行相应的电容切换并且输出相应的01码。而伪随机序列对应的01码代表采用的序列正负,影响到后续的运算,所以需要接收从模拟部分传过来的各组序列所对应的01码。
再将至少一组伪随机序列注入Pipeline-SAR ADC中,以得到注入伪随机序列的Pipeline-SAR ADC;
然后获取注入伪随机序列的Pipeline-SAR ADC的输出数据,其中,该输出数据中包含了注入的至少一组伪随机序列,另外,还需要从前台获取至少一组伪随机序列的幅值以便后续进行计算。对输出数据进行重构处理,以得到重构输出数据,需要说明的是,对输出数据进行重构时根据需要校准的级间放大器的位置确定重构的方式。
再将重构处理后得到的重构输出数据与至少一组伪随机序列进行数学运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值;具体地,由前台校准得到各组伪随机序列的幅值,计算各组伪随机序列所对应的幅值之和,以得到各伪随机序列之和,计算各组伪随机序列的幅值之积后再进行取反运算,以得到各伪随机序列之积的相反数。根据具体需求,将重构输出数据与各伪随机序列之和做相加运算,相加后的重构输出数据,再将相加后的重构输出数据与各伪随机序列之积的相反数做相乘运算,以得到相乘后的重构输出数据;对相乘后的重构输出数据进行累加运算,经过一定的序列长度之后,再做平均得到待校准Pipeline-SAR ADC非线性误差的校准值;再根据Pipeline-SAR ADC的输出数据和此校准值即可计算出一个经过校准的Pipeline-SAR ADC的输出数据。
需要说明的是,本实施例的Pipeline-SAR ADC非线性误差的校准方法是基于谐波失真校准算法进行运算校准,以消除Pipeline-SAR ADC非线性误差的误差项,达到校准的目的。
本实施例采用与前台校准配合使用的方式,可以有效减少因为伪随机序列的幅值不匹配而导致谐波失真校准算法引入的二次误差,使得本谐波失真校准算法的工作精度能够有效提升。
另外,本实施例的谐波失真校准算法采用的设计后的伪随机序列注入,其中,使用的各组伪随机序列相对于原始序列的延时可以是0、1、4、9、17,这样可以保证各组伪随机序列两两之间的相关性较低,能够满足谐波失真校准算法的需求。
作为可选的一种实施方式,如图5所示,运算模块25包括获取单元251、第一相加运算单元252、第一相乘运算单元253、取反运算单元254、第二相加运算单元255、第二相乘运算单元256以及累加平均运算单元257;
获取单元251用于获取每组伪随机序列的幅值;
本实施例中,从前台获取得到每组伪随机序列的幅值,以便后续进行计算。
本实施例中,采用SAR电容切换控制注入伪随机序列的方式,这种注入方式可以有效配合针对SAR ADC电容失配的前台校准,以获取注入的各组伪随机序列所对应的接近真实幅值的数值(即获取注入的各伪随机序列的幅值)。
需要说明的是,从前台获取的是每组伪随机序列的真实幅值而并非理想幅值,并使用真实幅值进行信号的重构运算,进一步提高了算法的有效性。
另外,利用前台的校准得到注入伪随机序列所用的电容权重,方便在对输出数据进行处理时用真实值进行计算,以提高算法的准确性。
第一相加运算单元252用于对每组伪随机序列的幅值进行相加运算,以得到各伪随机序列之和;
第一相乘运算单元253用于对每组伪随机序列的幅值进行相乘运算,以得到各伪随机序列之积;
取反运算单元254用于对各伪随机序列之积进行取反运算,以得到各伪随机序列之积的相反数;
第二相加运算单元255用于对重构输出数据与各伪随机序列之和进行相加运算,以得到相加后的重构输出数据;
第二相乘运算单元256用于对相加后的重构输出数据与各伪随机序列之积的相反数进行相乘运算,以得到相乘后的重构输出数据;
累加平均运算单元257用于对相乘后的重构输出数据进行累加平均运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值。
作为可选的一种实施方式,采用移位运算对相乘后的重构输出数据进行累加平均运算,以得到待校准Pipeline-SAR ADC非线性误差的校准值。
本实施例中,采用移位运算按照预设模式对相乘后的重构输出数据进行累加平均运算,经过一定长度的累加平均,最终输出待校准的N阶非线性误差的校准值。
需要说明的是,鉴于求平均是除法运算,而除法器所占用的面积和功耗的开销都相对较高,因此,可以在累加的次数达到2的m次方时,采用移位运算代替除法运算,可以达到减少开销的目的。
例如,如图4所示,以三阶非线性误差为例,对于需要校准的级间放大器的三阶非线性误差,通过控制SAR的电容切换来控制各组伪随机序列注入到第一级子ADC的残差信号当中,残差信号经过第一级级间放大器的放大在后面的ADC子级中包含了非线性误差系数的信息。而校准三阶非线性误差需要注入三组伪随机序列。从ADC中不断获取输出数据。在一个例子中,需要校准的是第一级放大器的三阶非线性误差,所以需要提取的此阶非线性误差包含在第一级子ADC之后的所有子级ADC当中。在获取输出信号之后,需要对输出数据重构,即得到了除法器之后的输出数据。此输出数据中就包含了因第一级级间放大器三阶非线性误差造成的三次谐波误差项,也包含了三阶非线性误差的系数信息。在具体运算过程中,先将重构后的输出数据与各组伪随机序列之和相加。该步骤是为了消除重构输出数据中包含的各组伪随机序列在之后相关运算中的影响。相加后的重构输出数据再与各伪随机序列之积的相反数做相乘运算,得到相乘后的重构输出数据,该相乘后的重构输出数据经过一段长度的累加平均之后得到三阶非线性误差的校准值。需要说明的是,与重构输出数据做乘加运算的伪随机序列信息与此重构输出数据中包含的伪随机序列信息一一对应。得到第一级级间放大器的三阶非线性误差的校准值之后,对之前一次重构运算后得到的重构输出数据进行立方运算后再与三阶非线性误差的校准值相乘,即可得到需要减去的误差项,根据校准值减去三阶非线性误差的误差项后,再将校准值与Pipeline-SAR ADC的输出数据再次进行重构后即可得到Pipeline-SAR ADC的输出数据。需要说明的是,再进行一次重构是为了消除注入伪随机序列对Pipeline-SAR ADC的输出数据产生的影响。
本实施例将注入伪随机序列的Pipeline-SAR ADC的输出数据进行重构后再与伪随机序列进行相关的数学运算,得到待校准Pipeline-SAR ADC非线性误差的校准值,实现了基于校准值对待校准Pipeline-SAR ADC非线性误差的校准,提高了校准的稳定性和精准度,满足了非线性误差的校准需求。
实施例3
图6为本发明实施例3提供的一种电子设备的结构示意图。电子设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现实施例1的Pipeline-SAR ADC非线性误差的校准方法。图6显示的电子设备30仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图6所示,电子设备30可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备30的组件可以包括但不限于:上述至少一个处理器31、上述至少一个存储器32、连接不同系统组件(包括存储器32和处理器31)的总线33。
总线33包括数据总线、地址总线和控制总线。
存储器32可以包括易失性存储器,例如随机存取存储器(RAM)321和/或高速缓存存储器322,还可以进一步包括只读存储器(ROM)323。
存储器32还可以包括具有一组(至少一个)程序模块324的程序/实用工具325,这样的程序模块324包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器31通过运行存储在存储器32中的计算机程序,从而执行各种功能应用以及数据处理,例如本发明实施例1的Pipeline-SAR ADC非线性误差的校准方法。
电子设备30也可以与一个或多个外部设备34(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口35进行。并且,模型生成的设备30还可以通过网络适配器36与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图6所示,网络适配器36通过总线33与模型生成的设备30的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的设备30使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
实施例4
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,程序被处理器执行时实现实施例1所提供的Pipeline-SAR ADC非线性误差的校准方法。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行实现实施例1所述的Pipeline-SAR ADC非线性误差的校准方法。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (8)
1.一种流水线型逐次逼近型模数转换器非线性误差的校准方法,其特征在于,所述校准方法包括:
获取与待校准流水线型逐次逼近型模数转换器非线性误差对应的至少一组伪随机序列;
将所述至少一组伪随机序列注入流水线型逐次逼近型模数转换器中,以得到注入伪随机序列的流水线型逐次逼近型模数转换器;
获取所述注入伪随机序列的流水线型逐次逼近型模数转换器的输出数据;
重构所述输出数据,以得到重构输出数据;
将所述重构输出数据与所述至少一组伪随机序列进行数学运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值;
根据所述校准值对所述待校准流水线型逐次逼近型模数转换器非线性误差进行校准,以得到校准后的流水线型逐次逼近型模数转换器的输出数据;
将所述重构输出数据与所述至少一组伪随机序列进行数学运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值的步骤包括:
获取每组所述伪随机序列的幅值;
对每组所述伪随机序列的幅值进行相加运算,以得到各伪随机序列之和;
对每组所述伪随机序列的幅值进行相乘运算,以得到各伪随机序列之积;
对所述各伪随机序列之积进行取反运算,以得到所述各伪随机序列之积的相反数;
对所述重构输出数据与所述各伪随机序列之和进行相加运算,以得到相加后的重构输出数据;
对所述相加后的重构输出数据与所述各伪随机序列之积的相反数进行相乘运算,以得到相乘后的重构输出数据;
对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值。
2.如权利要求1所述的流水线型逐次逼近型模数转换器非线性误差的校准方法,其特征在于,根据所述校准值对所述待校准流水线型逐次逼近型模数转换器非线性误差进行校准,以得到校准后的流水线型逐次逼近型模数转换器的输出数据的步骤包括:
利用所述校准值对所述输出数据进行重构处理,以得到校准后的流水线型逐次逼近型模数转换器的输出数据;
将重构输出数据进行立方运算后再与待校准流水线型逐次逼近型模数转换器非线性误差的校准值相乘,得到待消除的误差项;将待校准流水线型逐次逼近型模数转换器非线性误差的校准值与注入伪随机序列的流水线型逐次逼近型模数转换器的输出数据再次进行重构;消除待消除的误差项,得到校准后的流水线型逐次逼近型模数转换器的输出数据。
3.如权利要求1所述的流水线型逐次逼近型模数转换器非线性误差的校准方法,其特征在于,对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值的步骤包括:
采用移位运算对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值。
4.一种流水线型逐次逼近型模数转换器非线性误差的校准系统,其特征在于,所述校准系统包括第一获取模块、注入模块、第二获取模块、重构模块、运算模块以及校准模块;
所述第一获取模块用于获取与待校准流水线型逐次逼近型模数转换器非线性误差对应的至少一组伪随机序列;
所述注入模块用于将所述至少一组伪随机序列注入流水线型逐次逼近型模数转换器中,以得到注入伪随机序列的流水线型逐次逼近型模数转换器;
所述第二获取模块用于获取所述注入伪随机序列的流水线型逐次逼近型模数转换器的输出数据;
所述重构模块用于重构所述输出数据,以得到重构输出数据;
所述运算模块用于将所述重构输出数据与所述至少一组伪随机序列进行数学运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值;
所述校准模块用于根据所述校准值对所述待校准流水线型逐次逼近型模数转换器非线性误差进行校准,以得到校准后的流水线型逐次逼近型模数转换器的输出数据;
所述运算模块包括获取单元、第一相加运算单元、第一相乘运算单元、取反运算单元、第二相加运算单元、第二相乘运算单元以及累加平均运算单元;
所述获取单元用于获取每组所述伪随机序列的幅值;
所述第一相加运算单元用于对每组所述伪随机序列的幅值进行相加运算,以得到各伪随机序列之和;
所述第一相乘运算单元用于对每组所述伪随机序列的幅值进行相乘运算,以得到各伪随机序列之积;
所述取反运算单元用于对所述各伪随机序列之积进行取反运算,以得到所述各伪随机序列之积的相反数;
所述第二相加运算单元用于对所述重构输出数据与所述各伪随机序列之和进行相加运算,以得到相加后的重构输出数据;
所述第二相乘运算单元用于对所述相加后的重构输出数据与所述各伪随机序列之积的相反数进行相乘运算,以得到相乘后的重构输出数据;
所述累加平均运算单元用于对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值。
5.如权利要求4所述的流水线型逐次逼近型模数转换器非线性误差的校准系统,其特征在于,所述校准模块用于利用所述校准值对所述输出数据进行重构处理,以得到校准后的流水线型逐次逼近型模数转换器的输出数据;
所述校准模块用于将重构输出数据进行立方运算后再与待校准流水线型逐次逼近型模数转换器非线性误差的校准值相乘,得到待消除的误差项;将待校准流水线型逐次逼近型模数转换器非线性误差的校准值与注入伪随机序列的流水线型逐次逼近型模数转换器的输出数据再次进行重构;消除待消除的误差项,得到校准后的流水线型逐次逼近型模数转换器的输出数据。
6.如权利要求4所述的流水线型逐次逼近型模数转换器非线性误差的校准系统,其特征在于,所述累加平均运算单元用于采用移位运算对所述相乘后的重构输出数据进行累加平均运算,以得到所述待校准流水线型逐次逼近型模数转换器非线性误差的校准值。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-3中任一项所述的流水线型逐次逼近型模数转换器非线性误差的校准方法。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-3中任一项所述的流水线型逐次逼近型模数转换器非线性误差的校准方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211478445.1A CN115589228B (zh) | 2022-11-24 | 2022-11-24 | Pipeline-SAR ADC非线性误差的校准方法、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211478445.1A CN115589228B (zh) | 2022-11-24 | 2022-11-24 | Pipeline-SAR ADC非线性误差的校准方法、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115589228A CN115589228A (zh) | 2023-01-10 |
CN115589228B true CN115589228B (zh) | 2023-03-28 |
Family
ID=84783362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211478445.1A Active CN115589228B (zh) | 2022-11-24 | 2022-11-24 | Pipeline-SAR ADC非线性误差的校准方法、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115589228B (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7602323B2 (en) * | 2007-04-04 | 2009-10-13 | The Regents Of The University Of California | Digital background correction of nonlinear error ADC's |
US9525428B2 (en) * | 2014-12-17 | 2016-12-20 | Analog Devices, Inc. | Randomly sampling reference ADC for calibration |
CN110971235B (zh) * | 2019-10-29 | 2022-11-15 | 东南大学 | 一种pipelined SAR ADC电容失配和级间增益误差的后台校准方法 |
CN112003620B (zh) * | 2020-10-29 | 2021-02-19 | 南京航空航天大学 | 一种流水线逐次逼近型adc位权后台校准系统和方法 |
CN114584140B (zh) * | 2022-02-21 | 2022-09-20 | 中国科学院微电子研究所 | 一种级间增益误差校准方法、装置、设备及介质 |
-
2022
- 2022-11-24 CN CN202211478445.1A patent/CN115589228B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN115589228A (zh) | 2023-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107359878B (zh) | 一种基于最小量化误差的流水线adc的前端校准方法 | |
CN108134606B (zh) | 一种基于数字校准的流水线adc | |
CN107453756B (zh) | 一种用于流水线adc的前端校准方法 | |
JPH11274927A (ja) | パイプライン接続a/d変換器のためのデジタル自己較正方式 | |
CN113114247B (zh) | 基于比较时间探测器的流水线adc级间增益校准方法 | |
CN110880935A (zh) | 一种用于高速模数转换器的误差校准方法及系统 | |
CN111565042A (zh) | 一种适用于两步式adc的校正方法 | |
CN111585574A (zh) | 一种流水线模数转换器 | |
WO2007064604A1 (en) | Analog-to-digital converter | |
CN1788413A (zh) | 功率放大器预失真 | |
CN115549683A (zh) | 一种高精度增量型zoom ADC架构 | |
CN115589228B (zh) | Pipeline-SAR ADC非线性误差的校准方法、系统 | |
US20230251829A1 (en) | High throughput parallel architecture for recursive sinusoid synthesizer | |
CN114584140B (zh) | 一种级间增益误差校准方法、装置、设备及介质 | |
Zia et al. | A split-based digital background calibration of pipelined analog-to-digital converters by cubic spline interpolation filtering | |
Peng et al. | A low-power low-cost on-chip digital background calibration for pipelined ADCs | |
CN115529039B (zh) | 流水线型adc线性及非线性误差的校准方法、系统 | |
Wang et al. | A high resolution multi-bit incremental converter insensitive to DAC mismatch error | |
Kaur et al. | Fast digital foreground gain error calibration for pipelined ADC | |
US11025262B1 (en) | Pipelined analog-to-digital converter | |
Rombouts et al. | A digital error-averaging technique for pipelined A/D conversion | |
CN111371456A (zh) | 全动态范围ns sar adc中的二阶失配误差整形技术 | |
CN109687870B (zh) | 电荷重分配型saradc电容失配校正方法及系统 | |
Lee et al. | FFT‐based calibration method for 1.5 bit/stage pipelined ADCs | |
Zia et al. | Digital calibration of pipelined ADC using Newton–Raphson algorithm |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |