具备纠错功能的数模转换器 【技术领域】
本发明涉及具备纠错功能的电流导引数模转换器(DAC)。
背景技术
数模转换器被用在很多提供电子输出信号或物理非电子输出信号的电子设备中。这种设备包括,例如,带有用于发射电磁波或提供声频信号的天线的电子数字设备,例如移动电话和CD播放器。DAC在周期性重复的时间上接收输入数字信号并在所述重复的时间稍后的某个时间上提供输出信号,例如电子电压或电流,其量级应与先前的输入信号所表示的值成比例。所述周期性重复的时间之间的时间周期的长度称为更新周期时间。
除了,例如,部件失配之外,影响电流导引DAC地线性的一个重要限制因素是电流源和开关由于寄生电阻和电容而导致的非理想行为。这个问题在下列文献中已经有所论述:J.J.Wikner和N.Tan的“Modeling of CMOS digital-to-analog converters fortelecommunication”(IEEE Trans.On Circuits and Systems II,Vol 46,No.5 pp489-499,1999,5),A.van den Bosch,M.Steyaert和W.Sansen的“SFDR-bandwidth limitations for high speed highresolution current steering CMOS D/A converters”(Proc.6thIEEE Int.Conf.On Electronics,Circuits,and Systems,Vol.3,1999,pp1193-1196),J.J.Wikner和N.Tan的“Influence of CircuitImperfections on the Dynamic Performance of DACs”(NorChip’97Conference,Tallinn,Estonia,Nov.1997),K.O.Anderson和J.J.Wikner的“Characterization of a CMOS current-steering DACusing state-space models”(Proc.IEEE 2000 Midwest Sysposiumon Circuits and Systems,NWSCAS’00,Lansing,MI,USA,Aug.2000),J.J.Wikner的“Studies on CMOS Digital-to-AnalogConverters”(Linkoping Studies in Science and Technology,Dissertation No.667,ISBN 91-7219-910-5,2001),以及M.Gustavsson,J.J.Wikner和N.Tan的“CMOS datacoverters forcommunications”(Kluwer Academic Publishers,2000)。
电流源和电流开关的输出结点上的寄生电容的影响通常是最具有决定性的,产生随增大的信号频率而“增长”的动态非线性,例如,对单音输入信号来说第三阶调谐波项增加15-20dB/增加的信号频率的十倍,参见上面引用的最后三篇文章。通常这对较高的频率是成立的,其中DAC的输出值不能用无记忆表达式逼近。
【发明内容】
本发明的一个目标是提供上述现象的低复杂度模型。
本发明的另一目标是提供一种允许在误差补偿系统中使用相对便宜的片上实现的模型。
本发明的另一个目标是提供一种稳定误差校正技术和具备校正稳定误差的校正装置的DAC。
因而,通常为了补偿DAC中的误差,要在DAC的输入值进入DAC之前对其进行调整以减少误差。对输入值进行调整是为了依照特定的模型补偿所产生的误差。依照该模型,DAC的每个输出值是和各个输入值直接成比例的期望值和一个误差的和,该误差是稳定的输出值,即期望值和由DAC实际提供的前一输出值之间的差值,和只是各个输入信号的函数的相对步长误差的积。
附图描述
现在将通过参考附图的非限制性实施方案描述本发明,附图中:
图1是理想的电流导引数模转换器的电路图;
图2a是有内部电阻的单位电流源的等效电路模型;
图2b是有内部电阻的通用电流源的等效电路模型;
图2c是与负载相连并包括有内部电阻的电流源的数模转换器的等效电路模型;
图3是与负载相连并包括有内部电阻的电流源的数模转换器的更复杂的等效电路模型;
图4是与电阻性负载相连并有与该电阻性负载并联的纯电容性寄生负载的数模转换器的等效电路模型;
图5是数模转换器中产生输出值的方式的模型的框图;
图6a是作为数模转换器中输入值的函数的相对步长误差的相反数的图示;
图6b是作为数模转换器中输入值与想要的转换的符号之积的函数的相对步长误差的相反数的图示;
图7是与图5的模型类似的对数模转换器中产生输入出值的方式进行调整过的模型的框图;
图8是与图5的模型类似的另一对数模转换器中产生输入出值的方式进行调整过的模型的框图;
图9是示出了向数模转换器产生调整过的输入值的过程的框图;
图10是依照现有技术的数模转换器的误差补偿方法的框图;
图11a和11b分别是作为无误差补偿和有误差补偿的数模转换器的频率的函数的输出信号频谱的图示。
具体实施例详细描述
理想的电流导引DAC
图1示出了理想的电流导引数模转换器的示意电路图。在N个并行线路1中连接了提供电流强度I0,I1,......,IN的电流源3相连。受控开关5也连接在线路1中,线路1在它们的输出端与一个公共结点7相连,公共结点7还耦合到一条输出线路9,输出电流强度Iout在输出线路9中被提供给负载或终端电阻R。结点7上的输出电压是Vout。开关5由代表数字输入向量X=[bN-1,........,b0]的输入电子信号所控制,这些输入电子信号依次代表整数值X=Σi=0N-1bi·wi,]]>其中wi是bi的权重,wi在大多数情况下是整数,bi∈{0,1}。下文中字母X将用来表示整数值和向量,因为很难产生混淆。对DAC的期望操作是构成与X成比例的输出电流或电压,即
Iout=Σi=0N-1bi·wi·Iunit=X·Iunit---(1)]]>
或
Vout=R·Σi=0N-1bi·wi·Iunit=R·X·Iunit]]>
如果分析图1的示意图就会发现如果编号为i的线路1中的开关5在bi=1时为ON,在bi=0时为OFF,就能实现这个操作,因为来自电流源3的电流被根据基尔霍夫电流法则相加在一起。
现在考虑电流源3是非理想的情况。单位电流源(即权重w=1的电流源)的输出或表观电阻被设为Runit,如图2a的示意图所示。通过并联连接wi个相等的单位电流源就可以构造出提供权重为wi的电流强度Ii通用电流源,对应的输出电阻为:
Ri=Runitwi---(2)]]>
如图2b所示。
如果对特定的给定输入值X考虑DAC,可以分析图2c的等效电路。等效电流变成
I=Iunit·X (3)
并且这还是期望的输出电流。等效输出电阻为
Rout=1Σi=0N-1bi·1Ri=RunitΣi=0N-1bi·wi=RunitX---(4)]]>
分析图1的电路并解方程(3)和(4)得到
Iout=K·11+RRunit·X=K·X1+ρu·X---(5)]]>
其中K是常数,ρu是负载电阻和单位电流源的输出电阻之比。即使这个电路模型过于简化无法为实际电路的输入输出关系提供精确的表达式,因为晶体管是非线性设备等,但它关于构成有非常高(实际是“无限”)的输出电阻的电流源以便实现高度线性的需要提供了很好的理解。但是,应该注意到实现足够高的输出电阻是不经常的,并且如果考虑了上面引用的文章中隐含给出的设计标准,这实际上决不是问题。
电流源的有限输出电阻是DAC静态性能的限制因素之一,但就像已经提到的那样,这不是实际问题。但是,对高频操作重要的DAC的动态性能在很大程度上受电流源的有限输出电容影响,也受其它寄生电容影响。上面引用的文章中有一些对此已经进行了论述。
在所引用的Andersson和Wikner的文章中公开了一种更精巧的模型,考虑了寄生电容和开关电阻的影响。图3中示出了依照这种模型的电路图。这个模型关于动态转换属性,与实际DAC电路有较好的对应。因而,寄生电容被并联到电流源的内部电阻部分。寄生电容被并联到终端或负载电阻。另外,在开关的切换位置,开关被连接到包括并联的电阻和电容的断开负载。
除了上述模型之外,文献中还给出了其它非理想因子的模型,例如部件失配和采样时钟不稳定的影响。这些现象没有被包括进下文要描述的模型中。但是,并非是说这些现象不重要,但这里考虑的是寄生部件的影响占支配地位的情况。
看上面给出的模型,可以观察到非线性行为来自如下事实:除了想要的或理想电流源之外,还存在寄生网络,即有一个由寄生部件构成的网络与输出结点相连。这个寄生网络导致了电流的丢失,即,期望导向负载的一部分电流通过寄生网络而丢失了。
例如,可以考虑寄生网络是纯电容的情况。这种情况下,不考虑电流源的内部寄生电容可以由图4的电路图模型化DAC。该电路不同于图1的电路,不同之处在于电容Cx与负载电阻器R并连。电容器Cx代表与输入码X关联的寄生电容。这是合理的假设,因为与输出相连的电流源(包括它们固有的电容)的数量是由输入码决定的。对这个简化的电路模型,可以由下列微分方程给出输出电压:
Vout(t)=R·Iout(t)=R·(IX-CX·∂∂tVout(t)).---(6)]]>
其中期望的输出电流是
IX=Iunit·X. (7)
可以看到方程(6)表示所有固定码X的一阶线性建立过程。这个方程的通解是
Vout(t)=A·e1R·Cx+B---(8)]]>
其中A和B由物理强加的边界条件确定,这些边界条件通常被当作建立过程的起始和结束值:
Vout(O)=V0(初始电压) (9)
并且
Iimt→∞Vout(t)=IX·R=VX]]>(所需的输出电压), (10)
得出
Vout(t)=V0+(VX-V0)·(1-etR·Cx)---(11)]]>
在时间t的相对步长误差erel(t,X)定义为:
erel(t,X)=VX-Vout(t)VX-V0=1-Vout(t)-VVX-V0---(12)]]>
用方程(11)发现
erel(t,X)=etR·Cx---(13)]]>
因而已经对两个连续的采样瞬间之间的周期中的输出电压的瞬变行为建立了一些连续-时间分析表达式,即当X固定并因而Cx也已建立时的分析表达式。对离散-时间分析这种周期末尾上的电压值也很有趣,即电压Y(n)=Vout(n·T),其中n是表示更新瞬间T的整数,T是更新周期时间。
用方程(11)和(13),得到
Y(n)=Vout(n·T)=VX(n)-erel(T,X(n))·(VX-Vout((n-1)·T)) (14)
即使Y(n)和X(n)之间的关系是动态的,即取决于输入信号X所有先前的取样,已经发现erel是输入信号X的静态函数,即它只取于X的当前值。此外,计算输出Y(n)只需要erel的值(连同当前输入X(n)以及前一输出Y(n-1)=Vout((n-1)·T))。
现在将论述依照图4的模型电路的电流导引DAC实际实现中的稳定误差的本质。首先规格化输出电压Vout,使期望的输出电压是VX=X。根据方程(14)作下列假设(以后将被其稍事调整)
Y(n)=X(n)-erel(X(n))·(X(n)-Y(n-1)) (15)
通常这样给定的更新瞬间上的输出值是期望值X(n)加上额外误差。这个额外误差是两个因子之积:
-稳定的输出步长X(n)-Y(n-1)
-相对步长误差erel(X(n)),它只是当前输入电流的函数,即输入信号X的静态函数。
如果分析依照方程(15)的基本假设,就会发现只需要两个变量的值来估算输出值,即前一输出值的估算值Y(n-1)及当前输入码X(n)。此外对相对步长误差erel(X(n))的估算(求值)需要一个魔盒,例如查找表。如果使用了查找表,如果假定相对步长误差erel(X(n))在若干值上是分段常量,例如相对步长误差erel(X(n))仅是X的少量MSB的函数,就能保持查找表的大小很小。图5中示出了描绘输出值Y(n)如何依照方程(15)取决于输入值X(n)和前一输出值Y(n-1)的框图。因而输入值X(n)被提供给一些功能模块(例如查找表LTU 11),以在其输出上产生相对步长误差erel(X(n))的值。输入值还被提供给第一个求和结点13的第一输入端,该结点在它的第二个输入端,即倒相输入上接收存储在存储器或寄存器15中的先前的或老的输出值Y(n-1)。第一个求和结点13的输出是求积结点17的输入,结点17还接收来自功能模块11的相对步长误差erel(X(n))。结点17中通过将其输入端上的值相乘而获得的值被提供给第二个求和结点19,结点19还从寄存器15接收老的输出值Y(n-1)。在第二个求和结点的输出端上提供了期望的新输出值Y(n)。
图6a是用所引用的Andersson和Wikner的文章中公开的模型获得的相对步长误差的负值-erel的模拟值的曲线图。输入信号是有矩形概率密度使所有信号转换概率近似相等的随机白噪信号。从这个曲线图中可以看出,相对步长误差erel是X的函数这个假设并不完全有效,因为值中有一个分布。但是,可以观察到相对步长误差erel的值粗略符合由X决定的曲线。如果包括进一个新参数,是想要的转换的符号,即输入值和老的输出值之间差值的符号,sgn(X(n)-Y(n-1)),降低了由估算引入的误差的方差。图6b中示出了这种情况,其中相对步长误差的负值-erel被绘制成想要的转换的符号与输入值或期望的输出值相乘,即X(n)·sgn(X(n)-Y(n-1))。
这个观察导致对依照方程(15)和图5的模型的一些调整,得到两个替代模型,但下面将描述由MY和MX表示的类似模型。
模型MY
上述观察的直接后果是相对步长误差erel通常被看作是X(n)和Y(n-1)的函数的假设。如上面所建议的那样,这比声明相对步长误差erel是X(n)的函数更通用,变迁的符号也是这样。进行估算的功能模块还是一个查找表,并且这个查找表还可以仅由(例如)X(n)和Y(n-1)的少量MSB来寻址,以保持该表的容量较小。图7中示出了所提出的描绘这种DAC模型的框图。
图7的框图因而不同于图5的框图,不同之处在于老的输出值Y(n-1)被提供为功能模块11的第二个输入。
模型MX
上面提出的模型要求在对相对步长误差erel的确定或估算可以开始之前估算Y(n-1)。如果假定老的输入值或期望值X(n-1)和老的输出值Y(n-1)之间的绝对误差|X(n-1)-Y(n-1)|较小,对相对步长误差erel的估算中的Y(n-1)可由X(n)代替。如果在相对步长误差erel的估算中只使用了Y(n-1)的少数MSB,这种代替尤其合理。这给出了图8中调整后的框图,它示出了怎样产生DAC的输出值。
图8的框图因而不同的图5的框图,不同之处在于老的输入或期望值X(n-1)被提供为功能模块11的第二个输入并存储在第二个存储单元或寄存器21中。
现在将描述基于电流导引DAC的上述操作模型的误差校正方法。为简便起见,使用与根据方程(15)和图5的基本假设相一致的模型。将要确定调整后的输入信号X(n),它将导致期望的输出信号Y(n)=X(n)。然后假定误差校正在最后一个更新瞬间上成功,即Y(n-1)=X(n-1)。如果施加了输入信号X(n),从方程(15)获得下面的输出信号:
Y(n)=X(n-1)+erel(X~(n))·(X~(n)-X(n-1))]]>
设Y(n)=X(n),得
X~(n)=X(n-1)+X(n)-X(n-1)erel(X~(n))]]>
进一步假定校正较小或对输入信号没有太大变化,可以假定
erel(X~(n))≈erel(X(n))]]>
得到
X~(n)=X(n-1)+X(n)-X(n-1)erel(X(n))---(16)]]>
值1/erel(X)可以存储在查找表中。使用这个方程(16),可以提供获得调整后的值X(n)的过程,由图9的框图示出。这个过程接着在一个用于校正DAC误差的设备中被执行,如下文所述。
输入值X(n)被提供给一个功能模块(例如查找表LUT)31,以在其输出上产生相对步长误差erel X(n)的倒相值的值。输入值还被提供给第一个求和结点33的第一个输入,该结点在它的第二个输入,即符号倒转输入上接收存储在存储器或寄存器中的先前的或老的输入值X(n-1)。第一个求和结点33的输出是求积结点37的输入,该结点还从功能模块31接收相对步长误差erel X(n)的倒相。结点37中通过将其输入端上的值相乘获得的值被提供给第二个求和结点39,该结点还从寄存器15接收老的输入值X(n-1)。调整后的输入值X(n)被提供在第二个求和结点39的输出端上。
在K.O.Anderson,Niklas U.Andersson和J.J.Wikner的“Spectral Shaping of DAC nonlinearity errors throughmodulation of expected errors”(Proc.IEEE InternationSymposium on Circuits and Systems(ISCAS’01),Vol.3,pp.417-420,Sydney,Australia,May6-9,2001)中,已经描述了一种基于Δ-E周制的误差校正方法。图10的框图中示意性地示出了这种现有技术的误差校正方法中所用的基本方法。该现有技术的方法的基本思想是使用反馈环中的估算误差来抑制信号带中的非线性失真,到高频失真的成本。在模拟领域中可以过滤掉这个高频失真。该技术依赖于DAC引入的非线性误差的良好模型,如上所述。
输入信号被提供给第一个求和结点41,还在倒相输入上向该结点提供校正。这个校正是用DAC模型模块43计算的,模块43给出输出信号的估算。这个估算被提供给第二个求和结点45,还在倒相输入端上向该结点提供输入信号。第二个求和因而提供对误差的估算作为输出信号。这个估算的误差通过有传输功能的过滤器47,并且被作为校正提供给第一个求和结点41。校正后的输入信号是DAC 49的输入。
现在将描述一些测定结果,以展示现实世界中模型的有效性。图11a和11b中示出了有补偿和无补偿时测定的单音频谱的实例。所用模型是依照图5的模型的非常简单的版本。查找表仅包含两个值并由输入信号的MSB寻址。假定当XMSB=0时相对误差erel=0,当XMSB=a时相对误差erel=a,其中a是某个常数。即使这是一个粗略的近似,在图11a和11b中可以观察到主要的寄生音(第二谐波)降低了12dB,到高频失真的成本。可以为最佳的可能的性能选择参数a。
因而,已经考虑由于寄生部件而导致的信号相关的稳定误差描述了一种低复杂度模型。该模型的低复杂度使得它适用于误差补偿技术的片上实现。使用该模型的误差补偿技术的测定结果显示了该误差补偿模型的有用性。应该存储在查找表中的相对步长误差的绝对值对不同的电路是不同的,可以通过对输出信号的(如)模拟和/或在线测定来实现。