背景技术
附图的图1表示所谓″电流操纵″型的传统数模转换器(DAC)部分。DAC1设计成将m比特的数字输入字(D1-Dm)转换成相应的模拟输出信号。
DAC1包括多个(n)完全相同的电流源21到2n,在此n=2m-1。每个电流源2通过大致恒定的电流I。DAC1另外包括多个分别相应于n个电流源21到2n的差动开关电路41到4n。每个差动开关电路4连接到其相应的电流源2,并将电流源产生的电流I转换到连接到转换器第一连接线A的第一端,或连接到转换器第二连接线B的第二端。
每个差动开关电路4接收多个控制信号T1到Tn(由于下面将要解释的原因称为″温度计编码信号″)的其中一个,并根据有关的信号值选择第一端或第二端。DAC1的第一输出电流IA是传送到差动开关电路第一端的各个电流的总和,DAC1的第二输出电流IB是传送到差动开关电路第二端的各个电流的总和。
模拟输出信号是DAC1的第一输出电流IA加到电阻R产生的电压VA与转换器的第二输出电流加到另一个电阻R产生的电压VB之间的电压差VA-VB。
在图1的DAC中,温度计编码信号T1到Tn由二进制温度计译码器6从二进制输入字D1-Dm得到。译码器6按照下面工作。
当二进制输入字D1-Dm具有最低值时,温度计编码信号T1-Tn使每个差动开关电路41到4n选择第二端,因此所有的电流源21到2n连接到第二连接线B。在此状态下,VA=0和VB=nIR。模拟输出信号VA-VB=-nIR。
当二进制输入字D1-Dm的值逐步增加时,译码器6产生的温度计编码信号T1到Tn使更多的差动开关电路选择其各自的第一端(从差动开关电路41开始),而已经选择第一端的差动开关电路不会转换回到第二端。当二进制输入字D1-Dm具有值i时,前i个差动开关电路41到4i选择其各自的第一端,而剩余的n-i个差动开关电路4i+1到4n选择其各自的第二端。模拟输出信号VA-VB等于(2i-n)IR。
附图的图2表示三位二进制输入字D1-D3(即,此例中m=3)产生温度计编码信号的例子。在这种情况下,需要七个温度计编码信号T1到T7(n=2m-1=7)。
如图2所示,由二进制温度计译码器6生成的温度计编码信号T1到Tn跟在所谓的温度计码之后,在这种温度计码中,已知当触发第r阶信号Tr(设置为″1″)时,所有的低阶信号T1到Tr-1将被触发。
温度计编码在电流操纵型的+DAC中很普及,因为随着二进制输入字的增加,更多的电流源转换到第一连接线A,而已经转换到线路A的电流源不会转换到另一条线B。相应地,DAC的输入/输出特征是单调的,输入字中1的改变导致的低频干扰脉冲较小。
可以理解在图1结构中电流源2和相应差动开关电路4的数目相当大,特别是当m大于等于6时。例如当m=6时,n=63,需要63个电流源和63个差动开关电路。为了处理如此之多的电流源,和允许温度计信号有效传送到不同的差动开关电路,已经建议了将电流源和差动开关电路排列成二维网格阵列,每个网格包括一个电流源及其相关的差动开关电路。此排列表示在附图的图3中。
图3中,64个网格CLij安排成8×8方形阵列,具有八行八列。图3中,用于每个网格下标的第一个数字表示该网格所处的行,下标的第二个数字表示该网格所处的列。因此,网格CL18是在行1列8的网格。
每个网格CLij包括其自己的电流源2及其自己的差动开关电路4。阵列网格的各个第一端一起连接到DAC的第一连接线A,阵列网格的各个第二端一起连接到DAC的第二连接线B,正如图1的DAC。
分配给图3网格CLij的数表示网格被触发(或控制)以从选择其各个第二端变为选择其各个第一端的顺序。触发顺序符合阵列中网格的物理顺序,从行1开始,按列的顺序依次触发行1的网格,随后行2等等,对于该阵列连续的每一行。
图3这种排列出现的一个问题在于虽然该阵列不同网格的各个电流源2的输出电流应当均一,实际上网格的实际输出电流遭受由各种原因引起的非均匀性。
例如,沿电源线的电压降可能沿行或列引起分级的误差,如附图的图4(A)所示。在这种情况下,在有关行或列的前四个网格的电流源具有负误差,象征每个网格产生低于平均的输出电流。这些负误差向着有关行或列中心递减。有关行或列的剩余网格5到8的电流源具有各自的正误差,象征每个网格产生高于平均的输出电流。这些正误差从行或列的中心到底递增。
包括这阵列芯片内的热分布可能引起行或列内的对称误差,如附图的图4(B)所示。在这种情况下,在行或列两端的网格1、2、7和8的电流源具有负误差,而行或列中心网孔3到6的电流源具有正误差。
另外,可能存在诸如随机误差的其它类型的误差,在下面将更详细地讨论。网格阵列的最终误差分布通过叠加所有不同误差成分产生。
图4(A)和图4(B)所示的分级和对称误差倾向累加并导致较大的整数线性误差(INL)。例如,想象一下图4(A)所示的分级误差分布存在于图3所示网格阵列的第一行内。在这种情况下,当网格1到4逐渐触发(由选择其各自的第二端变为选择其各自的第一端)时,负误差累计,当数字输入码是4时,达到显著的总的负误差。只有当网孔5到8被依次触发时,属于这些网格的正误差开始抵消属于网格1到4的较大的负误差。
当然,如果存在相应于图4(A)沿每一列1到8的分级误差,情形会更坏。在这种情况下,当网格1到8逐渐被触发时,对于行1八个网孔的每一个出现最大的负误差(在图4(A)中位置1的误差)。同样,在行2,相应于图4(A)位置2的负误差累计八次。因此,在输入码增加到32时(相应于触发行1到4所有的网格),累积的负误差的确非常大。
累积图4(B)所示的对称型误差时出现类似的问题。
由于分级和对称误差导致的失配可以通过按照不同于网格阵列物理排列顺序的专门顺序选择网格而降低。特别是,在本申请人待审查的欧洲专利EP-A-0929158(相应于英国专利GB-A-2333190)中描述了符合所谓″魔方″顺序的专用网格选择顺序,这里并入其全文作为参考。
但是即使当使用这种专用网格选择顺序时,也不可避免地会保持不同段所产生各个电流之间的失配。这反过来会引起DAC性能的非线性。
在加利福尼亚圣地亚哥1999年3月16-19日的Delta-Sigma数据转换器研讨会Jesper Steensgaard的名称为″SC Delta-Sigma ADC的结构优化和定标″的论文中建议利用元件(或片段)旋转以整形DAC元件之间的失配。在此建议中,利用指向数据的旋转量旋转这些元件。来自同一研讨会IanGalton的名称为″用于Delta-Sigma ADC和DAC的失配形成多位DAC″另一篇论文披露了将噪声从低频移到高频的失配形成技术,以改进噪声形状。在这些技术中,在高输出信号频率上噪声随频率迅速增加,因此必须使用较大的过量抽样率(例如8或25)以得到有用的结果。来自同一研讨会Bob Adams的名称为″噪声整形技术的非传统应用″再一篇论文披露了元件″扰频″可用于sigma-delta DAC以将失真变成整形后的噪声。扰频可以是随机的,其将噪声均衡分布于输出信号期望频率范围内外的整个频谱,或者扰频可以是指向数据的,其将噪声移出DC,而噪声随频率幅度逐渐增加。
在我们待审查的欧洲申请EP-A-1100203中还建议了一项技术,这里并入其全文作为参考。这项技术为了将噪声移出特定的频带,将片段旋转一个不是数据定向的量来整形DAC片段之间的失配。
上述的技术用于克服或减轻特定器件中片段源的分级、对称和随机误差引起的问题。但是,由于随机信源的失配器件之间仍然保持显著的性能变化,现在将更详细地描述。
其附图的图5(A)中,线S说明在例如双极性DAC器件中模拟输出信号如何随二进制输入信号D1-Dm变化的图。线L1表示这种设备中的理想输入输出行为,在此模拟输出以线性方式精确地跟随数字输入。如上所述,在实际的器件中,各种误差不可避免地存在,引起实际输出的模拟信号偏离理想(线L1),如下所述。为了说明误差已经被夸大。
对于所有的数字输入值,偏移误差使得线L1表示的理想输出信号上移特定量E0,如线L2所示。增益误差改变响应曲线的斜率以使线L2的偏移误差旋转一量EG,由线L3所示。最后,由信源失配引起的诸如随机误差的剩余误差使实际的模拟输出信号偏离线L3剩余(随机)误差量ER,其随着二进制输入信号的改变而改变。线L1、L2和L3当然是为了解释的目的仿真的表示,画线L3经过在数字输入范围末端的实际模拟输出信号值(图5(A)的A和D)。
附图的图5(B)是相应于图5(A)的曲线图,但表示了当数字输入信号变化时图5(A)中线S和L3之间输出信号值的差别。因此,图5(B)的曲线表示图5(A)的实际输出信号离开直线的程度;图5(B)不考虑上述的偏移和增益误差E0和EG。因此图5(B)的曲线表示线L3所示仿真直线的偏离,如此构造以便与在点A和D的线S一致,而不是偏离线L1所示的理想直线。图5(B)的曲线还在线S与线L3相交的点B和C返回到零。
对于特定DAC器件的图5(B)的曲线这里称为该器件的″传递函数″。因为横轴表示以离散步长递增的数字输入信号,所以传递函数实际上以步进方式变化。
定义传递函数(非线性误差)E的等式可以通过更详细地考虑图1的DAC而得出。虽然n个电流源21到2n理想地产生完全相同的电流I,但实际上电流源具有各自的可以是正、负或零的电流误差e1到en。图1的DAC具有差动输出信号IA-IB,在此对于x的数字输入信号值(D1-Dm):
相关的误差E(IA)和E(IB)分别通过给出:
因此,总误差E(I)由下列公式给出:
在误差E(I)的等式中,已经忽略上面参照图5(A)所述的偏移误差E0。通过考虑误差e1到en的平均值μ还可以从E(I)等式中消除上面参照图5(A)所述的增益误差EG:
器件的非零平均值μ引起上面参照图5(A)所述的增益误差EG,因为每个电流源产生它所连接的线A或B的平均误差μ,这导致输入输出响应斜率的整个改变。通过如下从每个电流源误差ei减去平均误差μ,则可以从误差E(I)的表示式消除增益误差EG。
连接到线A的电流源21到2x的误差总和(相对于平均误差μ)是:
同样,连接到线B的电流源2x+1到2n的误差总和(相对于平均误差μ)是:
因此,传递函数E可以表示成:
E=EA-ER
当x=0时,所有的误差e1到en连接到线B,这意味着EA为零。EB也是零,因为定义线B的误差e1到en总和等于n倍的平均误差μ。因此,E=0,正如图5(B)的点A所示。
同样,当x=n时,所有的误差e1到en连接到线A,这意味着EB为零。EA也为零,因为线A的误差e1到en总和定义为nμ。因此,E=0,正如图5(B)的点D所示。
对于x的所有其它值,误差将以不同的组合连接到线A和B,因此传递函数E是″随机走动″的形式,其总是在零开始和结束,并可以在中间的点为正、负或零。
当输入值从x-1变成x时,电流源2x从连接到线B变为连接到线A,EA增加(ex-μ),EB减少(ex-μ)。因此,传递函数E随机走动的每一步是2(ex-μ)。相应地,传递函数E可以被认为是特定DAC器件的累加电流源误差,相对于平均电流源误差。选择使E在x=0和n等于零只不过等于选择将线L3画过在图5(A)点A和D的实际输出信号值。
传递函数使DAC的输出发生不必要的变形,其程度和影响随传递函数的准确形状而变。例如,图6(A)所示以单个圆弧向上(或向下)弯曲形状的传递函数将使输出信号生成不必要的二次谐波。图6(B)形状的传递函数将使输出信号产生不必要的三次谐波,它是在或接近中点经过零误差轴的S形状。
电流源误差ei符合高斯型(或正态)分布。当DAC器件已制成时,已制成器件的传递函数E也根据电流源误差的高斯分布而随DAC器件不同。
附图的图7(A)表示六个例子的DAC传递函数。在每个DAC器件中,电流源误差符合高斯分布,电流源误差分布器件之间是类似的,但是器件之间存在某些偏差,如附图的图7(B)所示。每个器件中的片段越多,不同器件的电流源误差分布越相似,但是因为不同的器件以不同的顺序安排(或选择)误差,所以一个器件的传送函数几乎总是不同于另一个器件。
由于不同器件的传递函数不同的事实,因此在相同输入信号的条件下,不同器件的输出信号的失真也不同。例如,如果DAC生成100MHz的正弦波作为其输出信号,则二次谐波将是以200MHz的离散音频,一般具有例如-55dBc的幅度,(即相对于主信号的-55dB)。但是,因为正如上面解释的,传递函数随器件而不同,此二次谐波的幅度在器件之间一般也不同最大可达±10dB。器件非线性输出响应的另一个失真成分也以类似的幅度随器件而变化。
这种器件与器件性能之间的变化对这些器件可以实现的制造成品率具有重要的影响。
从器件制造商的角度,需要在器件成品率和保证最小器件性能(例如,特定重要频带的最小信噪比)的折衷进行评估。器件与器件的性能变化意味着最小的性能必须指定为劣于典型若干个dB。这隐含着需要生产测试和筛选。即使考虑到某些成品率损耗以淘汰最糟的器件,规范必须降低。根据熟知的器件成品率曲线,例如已知如果根据“平均值-2δ”引入保证的最小噪声特性图(通过从平均值减去两倍标准偏差产生),大致97%的已制成器件将符合或超过保证的性能,即成品率将是97%。
如果,代替利用″平均值-2δ″图,制造商根据更适当的″平均值-3δ″图引入保证的性能,成品率将增加到99.9%,以使单价更低,但是当然引入的性能还可以更低,使器件更不吸引客户。如果制造商根据更需要的″平均值-δ″图引入保证的性能,成品率将降低到大约84%,单价上涨,但引入的性能将更高,使器件更吸引客户。″平均值-2δ″图经常是明智的折衷,因为它给出吸引顾客的性能程度,同时保持成品率期望的高,所以单价是经济的。
因此从制造商的角度来说,减少不同传递函数引起的器件与器件的性能变化是理想的,因此允许制造商指定更好的最小性能和/或用于给定最小性能程度的改进成品率。
具体实施方式
图8是用于从总体上解释具体实现本发明DAC的结构和操作的方框图。此后将描述更详细具体实施例。用相同的附图标记表示与上面讨论的图1DAC部分相同或相应的图8DAC部分,省略这些部分的描述。
图8DAC包括数字电路部分DC和模拟电路部分AC。模拟电路部分AC以图1DAC相同的方式构造,并包括多个段(或网格),每段具有恒流源2和开关4。每段的开关4受数字电路部分DC提供的各个相应的温度计编码信号T的控制。
在图8的DAC中,数字电路部分DC包括传递函数变形部分22和变形控制部分24。在此实施例中不需要图1的二进制温度计译码器6,因为它的功能被有效并入传递函数变形部分22,这将在下面更详细地描述。
传递函数变形部分22具有用于接收二进制输入字D1-Dm的m个输入和n个输出,在该输出产生数字电路部分DC的各个温度计编码输出信号T1到Tn。
传递函数变形部分22还具有连接到变形控制部分24输出的控制输入,用于从此接收变形控制信号M。
现在描述图8DAC的操作。DAC以预定的工作频率(采样率)FDAC执行一系列操作周期(转换周期)。FDAC例如是100兆样值每秒(100M样值/s)。
在每个周期,传递函数变形部分22接收用于该周期的变形控制信号M并根据接收信号M将外部施加的输入字D1-Dm转换成n个温度计编码信号(段控制信号)T1到Tn。
现在将参照一说明性的例子描述传递函数变形部分22和变形控制部分24,在此例中为了简化解释DAC只有8段。
图9(A)是表示一组八个段S0到S7的示意图,每段按照上面参照图8所述的构造。每段Si内的电流源2产生电流I,电流I具有与其有关的随机电流源误差ei,因此段Si产生(I+ei)的电流。图9(A)每段内表示段号和与该段有关的随机电流源误差。
在图8的DAC中,如同图1传统的DAC,随着二进制输入字的增加,段从线B依次逐渐转换到线A,即该段的差动开关4i将电流(I+ei)从线B转换到线A。但是,在图8的DAC中,可以在预定的时间间隔,例如每个转换周期由传递函数变形部分22改变段的顺序,因此在一个转换周期段以第一预定次序开关,在另一个转换周期以不同于第一次序的第二预定次序开关。
通过变形控制部分24将变形控制信号应用到传递函数变形部分22,使段次序受到变形控制部分24的控制。变形信号M例如可以指示所用的绝对顺序,或者它可以指示该顺序如何相对于以前的转换周期改变。在每个转换周期,传递函数变形部分22然后解码收到的二进制输入字(数字输入信号)D1-Dm并根据变形控制信号M向差动开关应用温度计编码输出信号T1到Tn,以使段按照该信号指示的顺序排列。
正如引言中所述,相应的各个随机电流源误差e0、e1、e2、e3、e4、e5、e6和e7根据其安排转换的顺序影响传递函数(非线性误差)。
首先,如图9(A)所示,段最初是S0、S1、S2、S3、S4、S5、S6、最后S7的顺序。由图9(A)所示的最初段次序得出的传递函数E示意地由图10(A)的线E1示出。在此例中,误差e0到e7相对于平均误差μ的幅值假设如下:e0=μ+1、e1=μ+1.5、e2=μ-1、e3=μ-0.5、e4=μ+1、e5=μ-3、e6=μ-0.5和e7=μ+1.5。从图10(A)中可以看出,当输入信号值从负满刻度(NFS)增加到正满刻度(PFS)时,段按顺序转换,累积误差(传递函数)逐步增加或减少根据两倍于与正转换段有关的随机电流源误差(相对于平均误差μ)的量。因此当例如段S1正在转换时,传递函数改变2(e1-μ)(此例中上升了3)。当段S5正在转换时,传递函数改变2(e5-μ)(此例中落下了6)。
此说明性例子的第一周期的段的顺序在图11表中的名称为″第一转换周期″两列的第一列中总结出来。
在此例中,在下一个转换周期之前,变形控制部分24发送一变形控制信号M,相比较初始顺序的顺序位置,该变形控制信号M表示段S1和S5对换,因此段以图9(B)示出的新次序(第二次序)转换段。这具有改变选择随机电流源误差顺序的作用,如图11表中两列名称为″第二转换周期″的第一列所示。改变选择随机电流源的顺序导致累积误差(传递函数E)不同的″随机走动″,如图10(B)的线E2示出。在第二个转换周期,在输入值范围内比前一个周期更早地应用较大的负电流源误差段S5(e5=μ-3),导致看起来完全不同的轮廓,早早的倾斜到零下,至于其他的输入值范围则保持为负。在这点上,DAC在第二周期的传递函数E2类似于参照图6(A)所述的传送函数形式,而DAC在第一周期的,E1更类似于上面参照图6(B)所述。
最后,在第三转换周期,变形控制部分24发送变形控制信号M,指示相比较其第二次的段位置,如图9(C)所示对换段S2和S4。这再次具有改变选择随机电流源误差顺序的作用,如图11表中两列名称为″第三转换周期″的第一列所示,导致图10(C)中线E3示意示出的传递函数。
虽然图10(A)到10(C)示出的三个传递函数E1到E3涉及在三个不同各自周期的同一器件,或者它们被看作涉及三个各自不同的DAC,每个具有相同的随机电流源误差分布,但以不同的顺序排列。上述的对换段的顺序具有使单个DAC的传递函数从一种形状″变形″到另一种的效果。
考虑两个单独的DAC,它们具有与这些段有关的相同的一组随机电流源误差的八个段,但在芯片上以不同的物理顺序布置。没有如上所述执行的变形,这两个器件的传递函数也是不同的。例如,假定第一器件具有图9(A)所示顺序选择的这组随机电流源误差,第二器件具有图9(B)所示不同顺序选择的同一组随机电流源误差。第一器件具有图10(A)所示形式的传递函数,而第二器件具有图10(B)所示形式的传递函数。因为,如上所述,第一DAC的传递函数类似于上面参照图6(B)所述的传递函数形式,而第二DAC的传递函数更类似于上面参照图6(A)所述的传递函数,可以料想第二DAC将比第一DAC呈现更大的二次谐波失真。
通过在每个器件执行上述的″变形″操作,因此在每个DAC中随时间以两个或多个不同的顺序排列段,DAC的传递函数将随时间变成具有两个或多个不同的形式。结果,每个DAC具有依据两个或多个不同形式平均的传递函数。因为平均,两个DAC将倾向具有更类似的失真性能。所用的不同段顺序的数目越高,变形性能的会聚越大。
上面已经参照图9(A)到(C)和10(A)到(C)关于实际DAC不可避免存在的电流源失配描述了传递函数变形技术。这些电流源失配在每个转换周期对输出信号的幅度捐献一误差(和因此使输出信号失真)。实际上,各段除了电流幅度失配之外,还具有与其相关的时间延迟失配。通过在传递函数的点上贡献水平(而不是垂直)偏移,这些延时失配误差可以认为是改变了传递函数形状。变形技术对降低由于这些延时失配(其随着抽样频率的增加而会变得更显著)而产生的变形也很有效。
当段数目小到八时,器件之间的随机电流源误差的分布实际上有极大的不同。结果,对于两个选定的器件,不太可能呈现同一组电流源误差,正如刚刚描述的,因此变形操作通常不会使有效的传递函数看起来完全相同。
但是,因为误差从高斯分布得出,随着器件中段数目的增加,不同器件的源误差分布将变得更相似。这是因为,根据统计理论,如果原始样本具有平均值μ和标准偏差δ,然后样值平均值构成平均值μ和标准偏差的大致的高斯型(对于较大的n),样值方差构成平均值为{(n-1)/n}σ2的样本。因此,当n较大时,分布会聚。
结果,当段数目较大时(例如多于16,最好是128或更多),每个器件的传递函数被通过该器件中许多不同的形式(例如多于16,最好是128或更多)进行变形,不同器件的总有效传递函数将看起来非常相似。这具有减低器件之间性能偏差的效果,正如上面提到的,从它在给定一个最小性能要求的情况下提高成品率以及在给定成品率的情况下提高成品率以及在给定成品率的情况下提高确保的最小性能这方面讲,这是我们所需要的。例如,如果传递函数变形成128个不同的形式,则变形之前呈现的器件之间变化±10dB的特定偏差分量在变形之后可以期望呈现大约倍于该偏差或±1dB的器件之间的偏差。
注意此效果不同于上述的旋转技术和″魔方″技术。当从一个周期到另一个周期旋转段选择顺序时,这具有沿传递函数移动起点(段的起始顺序位置)的效果,同时仍然以相同的顺序选择误差,因此能保持相同的器件传递函数的总轮廓。因此每个器件仍然与另一个器件的传递函数不同。在″魔方″技术中,总是以相同的顺序选择段,可是它们的芯片上布置的物理顺序不同,因此特定器件的传递函数是不变的并且器件与器件之间将会发生变化。
变形的效果是取出随器件变化(例如±10dB)的离散失真分量(例如谐波失真),并将这些分量变成同一频率的窄带噪声信号,但是具有小得多的随器件的变化。剩余的变化将依赖段数和它们重新排序的方式,但一般至少是10分之一小。例如,如果DAC生成100MHz的正弦波作为其输出信号,则二次谐波将是一200MHz的离散音频,一般具有例如-55dBc的幅度,(即相对于主信号-55dB),但不同的器件间具有-45dBc到65dBc的范围。如果有效传递函数在1μs的时间内变形成许多可能的形式,则二次谐波将在大约200MHz表现为噪声,具有大致±{1/1μs}或±1MHz的扩展频率(即±3db点)和-55dBc的能量,在所有的器件间一般具有例如-54dBc到-56dBc的范围。
传递函数最好应该相对较慢地改变,因为传递函数要被调制,这会导致失真分量在频率扩散。如果传递函数的改变速度太高,则失真分量能扩散到有用信号带。如果改变速度太慢,则很容易看出瞬时的失真随时间改变得很慢。因此这两个极端之间的改变速度是理想的。传递函数的较大阶跃变化也不受欢迎,因为这将导致输出信号的突然跳跃,这反过来将引起宽带噪声。
慢变形不同于快速和/或大步长改变传递函数,即使只是偶而,快速和/或大步长改变传递函数也将失真变成宽带噪声(例如,通过打乱段的顺序,即在图3的阵列中段被一个象限一个象限地打乱顺序),因为慢变形只将失真扩散到窄频带。
现在将参照图12描述上面参照图8所述的传递函数变形部分22一个可 能的结构。
图12的传递函数变形部分122包括八个本地解码器1240到1247。每个本地解码器124具有两个输入,第一个用于接收上面参照图8所述的变形控制信号M,第二个用于接收二进制输入字D1-Dm。每个本地解码器输入图8所示的n个温度器解码信号(段控制信号)T1-Tn的其中一个。
每个本地解码器包括具有两个输入的比较器126。比较器126在这两个输入接收用于该本地解码器第二输入的二进制输入字D1-Dm和包含特定比特的morph_id信号,这些特定比特每个本地解码器都不同,并从下面将要描述的变形控制信号中选择,该比较器126还输出该段的温度计编码信号T。
现在要描述具有图12所示的传递函数变形部分122的实例DAC操作。在此例中,为了简便,假设段数n是8,但是应当理解进行适当的改变,此概念就能很容易地用于具有8个以上段的DAC。在此例中,因为有8段,二进制输入字是3比特宽,就是上述的morph_id。
通过图12与图1的比较可以看出,在此例中,并不能(由例如图1解码器的居于中心的二进制-温度计解码器)“全局地”地将二进制输入字解码成温度计编码的信号T1-Tn,而是在n段的每一段中本地地进行,正如现在所详细描述的。
8段的每一段被分配值为0-7其中一个的唯一ID(本地ID),比较器126比较该唯一ID与二进制输入字D1-Dm以确定所涉及段的差分开关4的状态。在此例中,如果该二进制输入字大于ID,则比较器(T)的输出高(1),这使得开关4将电流源连接到线A(此后的“开”状态)。
当这种大于比较器264用于上述的8个段的每一个时,其中一个段(ID=7的段)在任何周期都处于关状态(T=0),因为二进制输入字永不会大于7。为了保持零偏移(考虑到开关电路的差分电流开关特性),包含额外的“虚设”段,其总是保持开状态(T=1)。这比只利用7个段会更简便。如果该比较转而执行大于或等于比较,则其中一个段(ID=0的段)总是处于开状态(T=1),因此额外的“虚设”段将转而总是保持关状态(T=0)以实现零偏移。
如上所述,这些段具有范围从0到7的ID。因此,其ID小于二进制输入字的每一段使其温度计编码信号T设置为1。所有其它的段使其温度计编码信号T设置为0。在此例中,因此这组比较器126执行与图1DAC的二进制解码器6相同的功能。
具有此结构,现在可以很容易的通过用morph_id信号改变分配给每段的ID来改变段的选择顺序(段顺序位置)。
利用可改变的ID,必须确保在任何时刻这8个本地编码器126的每一个具有从图13表所示的这组ID中选择唯一ID。每个ID是三比特的二进制数,这些比特标有(从低位到高位)B0、B1和B2。确保每个本地解码器具有分配给它的不同ID的一种方式是保持和改变单个3比特主码,并将这3比特加上其各自的反数发送到本地解码器。这六比特形成变形控制信号M。然后每个本地解码器从这六比特中选出三个形成其自己的morph_id信号。
图14的表表示本地解码器可以将六比特的变形控制信号M用于8段的每一段的一种方式。例如,段0的morph_id是包括顺序从高位到低位比特(B2,B1,B0)的三比特字,而段5的morph_id是包括从高位到低位比特
当主码的值例如为011时,则段0的morph_id是011,而段5的morph_id是110。利用这种方式可以保证每个本地解码器的morph_id输入是唯一的。这也使改变段的本地ID变得简单,因为只必须更新3比特的主码。
顺便说一下,尽管上面已经描述这3比特加上它们的反数(总共6比特)发送到每个本地解码器126,当然有可能只需要发送这三比特本身而不需要反数,并在适当的本地解码器中提供倒相器以本地的产生反信号。但是,这具有不希望的结果,即每个本地解码器的电路系统不同。
根据3比特主码的如何改变可以多种方式在每个周期改变段的选择顺序。如果主码在每个周期简单的加一(111之后绕到000),则段的顺序被旋转。这不能产生传递函数变形的期望效果,因为,如上所述,旋转无法改变传递函数的基本形状,而只是改变沿传递函数的起始位置。
为了实现变形,主码三个比特B0,B1和B2每一个的二进制状态可以随周期而改变。当考虑以它们ID顺序将段安排在不同的各自位置时,这具有将在特定位置的多对段以该顺序对换的效果。例如,如果比特B0的状态改变,则对换在下面位置的段:
一对中两个段移动(位置改变)的距离是1,一次对换四段,因此总有效移动是8。总有效移动可用于定义与每次顺序改变有关的段改变参数(SCP)。这通过计算顺序改变带来的n段顺序位置的所有改变(如果有的话)的和而得出。这充当顺序改变带来的顺序位置总体改变的测量值。
如果B1的状态改变,则对换在下列位置的段:
在此情况下,一对中两个段移动的距离为2,一次对换四段,因此总有效移动(SCP)是16。
如果B2的状态改变,则对换在下列位置的段:
在此情况下,一对中两个段移动的距离为4,一次对换四段,因此总有效移动(SCP)是32。
如果每次随机地选择这三个更新的其中一个,则每个转换周期的平均总有效移动(每周期的平均SCP)是(改变 *概率)=8*(1/3)+16*(1/3)+32*(1/3)=56/3=18.67。
总有效移动(段改变参数)反映在每次改变传递函数的总体改变中。如上所述,希望传递函数从一个状态慢慢地变为另一个状态,不希望一次作太大的变化。这可以通过限制次序改变带来的段顺序位置平均改变相对于总段数n的数目和/或幅度。这等于将SCP值限制为n。另外,SCP最大值和最小值之间的差值最好限制为n。例如,在此情况下,SCP最大值和最小值是8和32,因此差值(24)是3n。在下面的例子中将给出示范性的值。
考虑到此例中比特B2的变换引起相对较大的整体变化32(4n),则最好B2最不经常变化。
实现这种情形的一种方式是每次根据格雷(Gray-scale)码更新主码,即以下面的方式:000->001->011->010->110->111->101->100->101->111等。在这种情况下,B2在16个周期改变两次,而B1改变四次,B0改变8次,因此现在每个转换周期的平均移动=32*(2/16)+16*(4/16)+8*(8/16)=192/16=12(即这种情况下,平均SCP限制为1.5n)。
但是在这种情况下,一组有限的传递函数在固定的间隔重复。在这种情况下,相同序列的传递函数将每隔16个转换周期重复,给出了(FCLK/16)的重复频率,其中FCLK是转换周期的频率,这具有产生离散边带的效果。
在上述的方法中,比特B0,B1和B2的二进制状态在每个周期都发生变化,比特B2的改变引起四对段一次移动四段的距离。为了将总有效移动(SCP)限制为总共8段,有可能将B2改变分成单独的改变,一次只作一个改变,例如
或
以相同的方式,B1的改变可以限制为8段的总有效移动(SCP),通过将它分成两个可能的改变,例如
B0的改变已经引起8个总有效移动,因此,只有一个可能的选择:
为了简便,下面列出了这7种可能的改变:
B0:
B1b:
B2c:
B2d:
这可以通过保持和更新7比特主码来实现(而不是以前的3比特主码),通过对换7比特相应一个比特的值来实现上面7个可能变化的每一个。为了实现这种情况,本地ID相应于图15表所示的7比特主码。比较该表与图13的表,可以看出图13的B2列已经分成四列B2a,B2b,B2c和B2d,分别相应于上述标有B2a,B2b,B2c和B2d的改变,当这些二进制值取反时,每列只包含在两对段四个位置的两对相反的二进制值。图15的B0列与图13的相同。
变形控制信号M现在具有总共14个比特(7比特B0,B1a,B1b,B2a,B2b,B2c和B2d)分配给本地解码器126。因为每个本地解码器只需要3比特morph_id,它根据图16所示的表从变形信号M中选出3比特。
在此例中,变形控制部分24负责在任一周期对换变形信号M7比特的一个,每个转换周期的平均移动8(n),而在不划分高位比特B1和B2的情况下平均是18.67。
从7个可能选项中随机选择一个优选通过生成随机的3比特数来实现,该数选择要进行的7个改变的一个。因为此随机3比特数实际具有8个状态,优选进行其中的两个,以选择通过对换比特B0表示的改变。
如上所述,在上面参照图12描述的传递函数变形部分122中,不是“全局地”(通过例如图1解码器6的居于中心的二进制-温度计解码器)进行二进制输入字D1-Dm到温度计编码信号T1-Tn的解码,而是在n段的每一个中本地执行。可以理解也可以其他不同的方式实现图8的传递函数变形部分22,例如首先利用图1解码器6的二进制温度计解码器的生成一组温度计编码信号,然后重新排序这些温度计编码信号(例如利用桶形移位器),以产生段控制信号T1-Tn。
为了实现最低的器件与器件之间的偏差,DAC中段选择顺序应当理想地逐渐通过每个可能的顺序改变,因此随时间经过如此之多的不同形式的传递函数。但实际上,对于较多的段实现这种情形所需的电路(例如门电路数)复杂性受到抑制。考虑到此,必须在一方面电路复杂性的增加和另一方面限制可以覆盖的总段顺序数(和因此限制变形可以减少的器件之间的变化量)之间作出明智的妥协。
一个可能妥协是将段分成多组,并只在各组内对换段。通过进一步在每组内将段均匀扩展到整个传递函数,有可能在实现良好的变形性能,同时显著降低整个电路的复杂性。例如,图17表示一个例子,其中总共16个段S0到S15分成两组“组0”和“组1”,每组包括8段:(S0,S2,S4,S6,S8,S10,S12,S14)在组0,(S1,S3,S5,S7,S9,S11,S13,S15)在组1。这些段所示的位置与传递函数有关(选择顺序),而不必是它们在芯片上的物理位置。因此有可能(并优选)将一组中所有的段彼此邻近的排列在芯片上,即使实际上它们扩展到整个传递函数。一组之中的段从不与另一组中的段对换。
组数的选择是另一种妥协。越多的组给出越线性的改进(不同DAC间的匹配),但是越小的组给出越小的宽带噪声因为每个时钟周期段改变位置越少。
在上面参照图12-16所述的例子中,总共8段由3比特二进制数据输入字D1-Dm编址。每段的本地解码器具有3比特本地ID,相比较3比特二进制数据输入字D1-Dm以得到温度计编码信号T1-Tn。另外,与每段有关的本地ID要以各种方式对换,因此段顺序持续变化。图12-16的排列很容易修改为现在将描述的更实际的DAC,其有128个段。
128个段可以分成16组每组8个段,如下:
组0=段(0,16,...96,112)
组1=段(1,17,...97,113)
组14=段(14,30,...110,126)
组15=段(15,31,...111,137)
利用此排列,在传递函数中,一组中的每个元素与其该组的邻近元素隔开16段的距离,每组中的元素均匀扩展到整个传递函数。每组具有用于这组所有元素公用的固定和每组不同的4个ID比特(四个最低位比特),它们是固定的,且每组不同,和(三个最高位比特)该组每个元素都不同的3个ID比特。
因为DAC中有128个DAC要编址,需要7比特二进制输入字D1-Dm,每段的本地解码器具有7比特本地ID。一个特定组的这7比特本地ID的低4位可以硬线连接到该组唯一的4比特组合,而该组的每个元素可从14比特的变形信号中选择三个不同的比特,但如上所述提供该元素的本地ID的高3位。改变主码现在将对换一组内的所有元素,但不对换属于不同组的元素。
为了减少每个转换周期执行的对换总数(或SCP),还最好每个周期只对换一组。这可以通过生成四比特随机数来实现,在一个特定的转换周期选择其中一个组工作。然后该变形控制信号M在该周期充当对换工作组的元素。
图18表示图8的传递函数变形部分22在本发明另一个优选实施例中的解构,其中总共128个段分成8组,每组16段,如下:
组0=段(0,8,...112,120)
组1=段(1,9,...113,121)
组6=段(6,14,...118,126)
组7=段(7,15,...119,137)
用这种此排列,在传递函数中,一组中的每个元素与其该组的邻近元素隔开8段的距离,每组中的元素均匀扩展到整个传递函数。
图18的传递函数变形部分22包括组使能解码器8,8段组300到307。传递函数变形部分22具有接收7比特二进制输入字D1-Dm,4比特“local_en”信号和3比特“global_en”信号。“local_en”信号和3比特“global_en”信号包括上面参照图8所述的变形控制信号M。每段组30输出128个温度计编码输出T1-Tn的16个。组使能编码器8具有接收8比特global_en信号的输入和输出8比特global_en信号的输出。每段组具有接收8比特group_en中预定一个比特的输入,接收local_en信号的输入,和接收二进制输入字D1-Dm的输入。
local_en信号和global_en在每个转换周期由图8所示的变形控制部分24生成。global_en信号是3比特随机数,其选择8段组300到307的其中一个以使其段在该特定转换周期对换。所有未选择的段组中的段保持与前一周期相同的段次序。组使能解码器解码此3比特global_en信号以生成1/N的8比特group_en信号,对于3比特global_en的每个不同值,group_en比特的一个不同比特设置成1(所有剩余的group_en设置成0)。8比特的group_en信号用于8段组300到307的不同的一个。
变形控制部分24生成的local_en信号是4比特随机数其选择15个可能段的其中一个对换以在该转换周期选择的段组30中的段进行。因为local_en具有16个不同的状态,所以两个该信号选择相共一个15个可能段对换。这将在下面更详细的描述。
图19更详细的表示段组300到307的结构。每个段组30包括16个段解码器340到3415和在所有段解码器340到3415之间共享的单个组解码器32。组解码器32具有接收上述local_en和group_en信号的输入,接收二进制输入字D1-Dm的3个低位的输入。组解码器32还具有接收3比特group_id信号的输入,该信号表示这组中所有16段的本地ID的3个低位。组解码器32也有单比特的“comp”输出和30比特的morph_id_bus输出。每个段解码器34具有接收二进制输入字D1-Dm的4个高位的输入,和进一步接收comp信号和组解码器输出的morph_id_bus信号选择比特的输入,和在输出温度计编码输出信号T其中一个的单个比特输出。
现在将参照图20到图22更详细的描述组解码器32和段解码器34的结构和操作。组解码器32包括图21(A)中更详细表示的LSB解码器321和图21(B)中更详细表示的变形信号解码器325。LSB解码器321包括比较器322和锁存器323,同时变形信号解码器325包括对换选择器和一组D型触发器327。每个段解码器34包括比较器342和锁存器344。
LSB解码器321中的比较器322比较二进制输入字D1-Dm的低三位与该组的唯一三比特组ID“group_id”。此比较的结果由锁存器323锁存,作为信号“comp”输出,并传递到在每个段解码器340到3415的比较器243。段解码器34中的比较器342然后对高位执行类似的操作,比较二进制输入字D1-Dm的高四位与该组的四位“group_id”,利用低位的比较结果“comp”。在段解码器34中执行的比较结果表示控制该段微分开关4的温度计编码输出信号T。
在上面参照图12的例子中,段没有分成组,每个本地解码器124的比较器126比较二进制输入字D1-Dm的所有m比特与morph_id信号的所有m比特。在此例中,本地解码器执行的操作分成由组解码器32的LSB解码器执行的对低位的操作和由段解码器34执行的对高位的操作。LSB解码器321只利用二进制输入字D1-Dm的三个低位,和段ID的三个低位(group_id)。段解码器34利用二进制输入字D1-Dm的四个高位,和段ID的四个高位(morph_id)。进位比特“comp”需要从低位比较器322传递到高位比较器342。
可以理解,两级比较过程不是必须的。可以安排每段执行单个7比特比较,四个高位包括morph_id比特,三个低位包括group_id比特,它们为该组的所有段所公用。但是,最好使用两级处理,因为低三位的比较电路可以在一组中的所有段之间共享,每个段解码器中只需要提供4位比较器。另外,两级处理允许本地解码器执行的操作形成管道,一个转换周期的操作与另一个转换周期的操作重叠,正如我们的待审查欧洲专利申请EP-A-1100203中所详细讨论的。
现在将参照图21(B),23和24描述每段ID的高四位(或morph_id)。如上所述,变形信号解码器325接收来自变形控制部分24的local_en信号是4位随机数,其选择15个可能段的其中一个在随机组选择信号group_en在转换周期选择的段组30中的段上进行对换。对于上面参照图12描述的例子,一组只有8段,由一三位随机数任意选择7个可能兑换的一个并通过对换7位主码其中一位的二进制状态。由变形信号解码器25执行与此等同的功能。
在此例中,一组中16个段需要4位morph_id。如果通过改变四位主码其中一位B3,B2,B1和B0的二进制状态实现对换,则下面的对换可以发生:
B1:
B2:
B3:
这里,每组元素以十六进制表示成元素0,1,2,...9,A,B,C,D,E,F。例如,组0中,元素0是段0,元素1是段8,元素E是段112,元素F是段120。
每个上述对换一组内元素移动的总距离分别对于对换B0,B1,B3和B4来说是16,32,64和128。因为一组的每个元素与邻近元素实际隔开8段,这分别表示128(n),256(2n),512(4n)和1024(8n)的平均总有效移动(SCP)。为了限制传递函数引起的总变化,上述改变以类似于上述的方式分成下面的子选择:
B1a:
B2b:
B2c:
B3b:
B3c:
B3d:
B3e:
B3g:
B3h:
这些选择每一个的总改变是16个元素的移动。因为每个元素隔开8段,任何改变的总有效移动(SCP)是16×8个段,即128个段。因此,在此情况下,每个周期的平均SCP限制为n。
每个转换周期更新的上述主码在此例中表示成图21(B)这组15个D型触发器327的15个Q输出。这15个输出以及15个Q输出形成馈送到段解码器34的morph_id_bus。每个段解码器利用来自morph_id_bus信号这组唯一四个比特,以形成在图23表总结的其自己的四位morph_id信号。
四位local_en信号选择特定转换周期中所作的上述15对换的其中一个。如果该周期中特定组的group_en信号为高,则只进行该对换。因为local_en具有16个不同的状态,所以其中有两个选择15个可能段对换的相同一个。变形信号解码器325的对换选择器326根据图24所示的表生成N分之一15比特的中间解码信号,高位选择其中一位对换。在此例中,0000和0001的local_en值都启动对换“B0”。当group_en设置为0时不进行对换。
这组D型触发器327的
输出作为各自的D输入反馈到触发器。每次为触发器提供时钟时这使得输出触发。但是,因为中间解码信号只使能一个触发器,每个转换周期触发15比特主码的其中一个比特。
具有16组,每组具有8个可能的对换(或等同于8组16个可能的对换),每个给定对换在(平均)128个时钟周期的间隔重复。这具有将每个失真分量变成扩展到大约±(FCLK/128)噪声,因此每个噪声频带是在624Ms/s的10MHz宽(或±5MHz)。通过适当的选择FCLK和平均对换重复间隔,可以限制以每个失真分量为中心的噪声频带大小从而使它们不延伸到希望的信号频带中。
在一个实施例中,噪声扩展实际上只有这一半,因此每个噪声频带是在624Ms/s的大约5MHz宽(或±2.5MHz)。这是因为DAC提供有两块解码器电路来实现,一个是用于在奇数转换周期解码输入信号的“奇”块,另一个是用于在偶数转换周期解码输入信号的“偶”块。因此每个“奇”和“偶”块以DAC更新速率的一半提供时钟,正如我们共同未决的英国专利申请GB-A-235630所更详细描述的。
正如上面关于使用格雷码更新方法所提到的,如果相同的一组传递函数每16个周期重复一次,则具有以FCLK/16的间隔产生离散边带的效果。但是,如果这组传递函数也改变,则噪声大致扩展到此带宽。如果噪声带宽扩展太大,则段对换的速率可以降低,因此变形发生得更慢。段顺序不必每个周期都变化,因此在某些周期(例如,每隔一个周期)可以安排段顺序不改变。
选择利用8组每组16个段而不选择16组每组8段部分是处于设计的考虑。每组布置成一行16个元素,一端有组逻辑。因为整个块为“奇”和“偶”逻辑复制,所以此布置达到16×16阵列,在两组之间有公用逻辑。每个元素(本地解码器,大约200个门)大致是正方形(因为这是最小化互联的最好形状),因此顶层布置大致是正方形。
上述的变形技术也可以结合在我们待审查欧洲专利EP-A-1100203所详细描述的段旋转技术使用,这里并入其全文作为参考。
正如图25(A)所示意示出的,在旋转技术中,段在每个转换周期旋转一定数目r的段(旋转量)。例如,图25(A)的段顺序已经旋转三段量r,段从结束回卷到开始。三段的进一步旋转使段排序成图25(C)所示。这具有移动传递函数起始位置的效果而不必真正改变传递函数的形状。
段旋转的实现可以很容易的包括在上面参照图18到24所述的变形电路中,通过在每个转换周期为段的整个本地ID增加旋转量r,通过将与该段有关的group_id和morph_id相结合进行。这通过在组解码器32的LSB解码器325的比较器322执行比较操作之前为group_id加旋转量r的低三位,和在段解码器34比较器342比较之前,为morph_id加旋转量r的高四位。最低位加法器的进位比特也发送到最高位加法器。
当结合旋转应用变形时,变形去除了旋转之后仍然存在的器件与器件变化,也去除了旋转所引起频谱的离散音调。当使用变形时,以前要求使用旋转量的随机扩展现在不再必要,尽管现在仍然可用其来改进固有噪声电平的平滑性。
举一个GSM通信系统的例子,其中信道隔开100-200KHz,希望将噪声扩展至少一个信道带宽。扩展也可以小到足以使旋转产生的失真分量不明显扩展到离开其期望的位置,即一般离开频带至少5MHz。变形引起的扩展一般是±2.5MHz的数量级,因此旋转分量不扩展到有用频带内。
现在将参照具有分段结构的电路描述本发明的第三个方面,特别是分段数字模拟转换器(DAC)。
如上所述,我们的待审查欧洲专利申请EP-A-1100203描述了“噪声整形”技术,由此器件非线性引起的失真分量被进行频率转换,因此它们出现在希望的信号频带外(带外)。这通过旋转所选择段的顺序实现,另外对旋转量应用某些小随机扩展,因此离散音调不出现在输出中。本发明的第三个方面设计实现适当参数选择或确认的电路,用于实现失真的希望的重新定位。但下面将描述用于其他情形的更一般的应用。
图26表示应用本发明第三方面的部分DAC。图26的DAC包括数字电路部分和模拟电路部分。模拟电路部分包括多个段(或网格),每段具有恒流源2和开关4。每段的开关4受用于此处的来自数字电路部分DC各自相应温度计编码信号OT的控制。
图27更详细的表示图26其中一个段中的电流源和开关4的结构。恒电流10具有门电路,其保持在电势Vpcs并充当在所涉及段中产生恒电流I。串联晶体管20具有门电路,其保持在电势Vpcasc并充当在电路使用中时保护恒流晶体管10不受电压变化。这两个晶体管一起组成图26的恒流源2。第一和第二晶体管30和40组成图26段的各个差分开关电路4。适于驱动这些第一和第二晶体管30和40电路在我们待审查的英国专利GB-A-2356304中描述,这里并入其全文作为参考。晶体管30和40的漏极分别连接到各自的输出节点OUTA和OUTB,其分别相应于图26差分开关电路的第一和第二端。
在图26的DAC中,数字电路部分包括,除了二进制温度计解码器6之外,段旋转部分22和旋转控制部分24。段旋转部分22具有n个输入,接收一组温度计编码输入信号IT1-ITn。这些温度计编码信号IT1-ITn由二进制解码器根据用于DAC的二进制输入字D1-Dm生成。
段旋转部分22还具有n个输出,在此产生数字电路DC的温度计编码输出信号OT1-OTn。段旋转部分22还具有连接到旋转控制部分24的控制输入,用于接收旋转量r。旋转控制部分24具有第一和第二输入,用于分别接收外部施加的控制信号MEAN和SPREAD。
DAC以预定的操作频率(抽样率)FDAC执行一系列操作周期(转换周期)。FDAC例如是每秒一亿个样值(100Msamples/s)。在每个周期,二进制温度计解码器6将外部应用的输入字D1-Dm转换成n个温度计编码信号IT1-ITn。而且在每个周期,段旋转部分22接收用于该周期的旋转量r值,并根据收到的r值从温度计编码输入信号IT1-ITn得出的温度计编码输出信号OT1-OTn。
段旋转的效果可以参照图28(A)到28(C)解释。每条曲线表示图26输出信号(VA-VB)从DC到DAC抽样率FDAC一半频率的频率范围的信噪比(SNR)。在每条曲线中,竖轴表示的SNR以dB测量,横轴表示的频率与抽样率FDAC成正比测量。假设此例中,段数n是64。
可以看出,在每个例子中,有从大致0.3FDAC到0.5FDAC的宽噪声峰值(奈奎斯特频率)。该宽噪声峰值是用于输入数据D1-Dm的高通滤波抖动的结果以消除量化误差的影响。为了本发明的解释,可以忽略宽噪声峰值。
在此例中,假设DAC正用于在其输出合成由四个“音调”T,即四个不同频率分量组成的输出信号。这四个音调集中在0.09FDAC附近的频率。每个音调T具有DAC全输出幅度FS的峰值幅度-13dB。音调总和的峰值是-1dB FS。顺便提一下在此例中假设输出信号由四个音调组成,因为多个音调使得更容易识别输出频谱中的噪声分量。
图28(A)表示当从一个周期到下一个周期没有执行段旋转,即每个周期中r=0时的输出信号频谱。可以看出尽管从DC到0.3FDAC频率范围的平均噪声电平大约是-90dB,在接近四个音调T的频率有多个重要的交叉调制产物M。这些交叉调制产物M是段失配的结果。
图28(B)表示当每个周期使用r=1的旋转量时的输出信号频谱。在这种情况下,可以看出音调T附近的交叉调制产物M不见了。但是,输出信号频谱包含频率间隔为Δf=FDAC/n(在此例中=0.0156FDAC)。由于段随周期旋转的结果这些频率分量出现在输出信号频谱中,这里称为“旋转分量”。
第一旋转分量(分量1)具有频率rΔf。第二旋转分量(分量2)具有频率2rΔf,第三和更高级旋转分量在频率3rΔf,4rΔf等等。
平均来说,次序越高旋转分量幅度就越低。但是,从图28(B)可以看出,例如分量1和2不比分量3大,这与平均期望相反。这只是图28(B)特定曲线的统计变化。
当旋转量r=1时,正如图28(B)的曲线,最重要的分量都包含在从DC到0.16FDAC的频带内。这意味着所有的分量都在DAC输出信号频率的期望范围内。例如,在使用4x过抽样的系统内,输出信号频率的期望范围是从DC到0.125FDAC。
图28(C)表示当每个周期的旋转量r=21时的输出信号频谱。旋转分量1到19现在的位置与图28(B)完全不同。第一旋转分量(分量1)位于21Δf频率。应当具有2rΔf(42Δf)的分量2被映射到频率21Δf。该映射的出现是因为42Δf比奈奎斯特频率(n/2)Δf(=32Δf)超出10Δf,因此该分量映射到(n/2-10)Δf(=22Δf)。类似的,分量3映射到Δf(因为3rΔf(=63Δf)比奈奎斯特频率超出+31Δf,该分量映射为(n/2-31)Δf=Δf)。分量4映射到20Δf(因为4rΔF(=88Δf)比奈奎斯特频率超出52Δf,因此被映射到-20Δf,这是因为比0小所以反过来映射到20Δf)。以相同的方式映射更高阶的分量。
从图28(C)可以看出,10个低阶分量1到10只有分量3,6和9现在保持在从DC到0.125FDAC的期望范围内。另外一些高阶分量(分量12,15和18)在期望频率范围内,但是这些是较不重要的分量。顺便提一下,图28(C)的分量18的相对较大幅度(相比较其它的分量)也是统计变化。平均来说,分量18的幅度比图28(C)所示的要小。
通过改变各周期间的旋转量施加一个小随机扩展可以实现旋转量r的非整数值,这同时具有平滑固有噪声的作用。器件的噪声整形特性通过将上述的外部应用控制信号MEAN和SPREAD用于图26的旋转控制部分24来设置。
尽管通过适当选择旋转控制参数MEAN和SPREAD,旋转分量可以移到适当的“带外”位置,但必须便给该DAC的一个特定应用能够进行这种选择。在我们待审查的欧洲专利申请EP-A-1100203中描述了系统选择旋转量r的一些图形技术,但是即使具有这样的技术,也希望能够确认该技术达到的控制参数旋转在将旋转分量移到预定频率中有效。另外,当利用旋转而不利用变形时,将会有器件与器件之间的偏差,这意味着,在图形技术建议的旋转控制参数两个可能的选择之间,一种选择将优于另一个。也期望可以选择旋转控制参数而不利用这种图形技术,例如,当通过利用变形(正如本发明的第一个方面)结合旋转使图形技术复杂时。
可以考虑到由制造者在测试阶段或销售后由用户在DAC上实现实际的测量,其中适当的输入信号(预期应用的典型情况)用于DAC,并测量输出信号频谱的实际噪声分量。通过改变旋转控制参数MEAN和SPREAD,旋转分量可以移到频谱中适当的带外位置。可选地,可以检验图形技术达到的旋转控制参数以确定旋转分量被导致在预定的带外位置。这种测量可以有利的用于产生类似于图28(A)到28(C)曲线,但这种测量实际上不能产生图28(A)到28(C)所清楚和容易解释的曲线。图28(A)到28(C)曲线实际上不是通过测量而是通过基于模型DAC的计算机模拟产生的,其中不同段的图26的电流源2(图27的晶体管10和20)假设具有1.7%标准方差σ的的失配。该标准方差σ的图是人为选择的高,以强调输出信号频谱中的噪声分量,因此它们足够大以区别出背景噪声。
0.06到0.17%标准方差σ实际上在前面的DAC中实现了,标准方差σ如此低的值使得端用户难以从背景噪声中难以区分出噪声分量,并且实际很耗时,因此难以选择MEAN和SPREAD适当的值以根据DAC自身实现的实际测量实现各自期望的噪声轮廓。
如图29所示,本发明第三个方面的实施例在每段使用两个单独的电流源:一个测试电流源,在测试和制造芯片期间使用;一个主电流源,在芯片的实际操作期间使用。主电流源包括上面参照图27所述的两个PMOS FET晶体管10和20。测试电流源也包括两个PMOS FET晶体管15和25,其大小不同于其各自相应的主晶体管10和20,下面将解释。
一次只能启动两个电流源中的一个,因此当选择主电流源时,高度匹配工作电流I产生并馈送到由晶体管20和40形成的差分开关,当选择测试电流源时,较差匹配的测试电流Itest产生并馈送到差分开关。不同段的高度匹配工作电流I的标准方差σhm例如好于不同段的较差匹配工作电流Itest的标准方差σpm。例如,δnm可以是0.17%或更好(例如0.06%),而δpm可以是1.7%或更差(例如2%)。主或测试电流源的选择受用于两个开关SW3和SW4的信号TEST和用于两个开关SW1和SW2的信号(TEST的反)的控制。该TEST信号可以经器件的输入端外部用于该器件。
当TEST低时,开关SW1开,开关SW2关,这使得主串联晶体管20的栅极连接到ANALOG VDD因此使该晶体管关。开关SW3关,开关SW4开,允许测试串联偏压Vpcasctest通过并到达串联晶体管25的栅极将其打开。因此选择较差匹配的测试电流Itest传递到微分DAC开关。
当TEST高时,开关SW1关,开关SW2开,允许主串联偏压Vpcasc通过并到达串联晶体管20的栅极将其打开。开关SW3开,开关SW4关,使得主串联晶体管25的栅极连接到ANALOG VDD因此使该晶体管关。因此选择高度匹配的工作电流I传递到微分DAC开关。
在一个实施例中,主电流源晶体管10的宽度大约是测试电流源晶体管15的30倍。主电流源晶体管10的长度也大约是测试电流源晶体管15的30倍。例如,主电流源晶体管10的相对大小是宽240,长15,测试电流源晶体管15的相对大小是宽8,长1/2。通过使晶体管15的长宽比等于晶体管10的,偏置电压Vpcs和Vpestest可以相同。
在这种情况下,I和Itest是都大致为160μA。晶体管10和15的长宽比相同,但是晶体管10的门电路面积是晶体管15的900倍。因为电流的失配与成正比,这使得晶体管10的失配是晶体管15的1/30,即低20dB。
因此测试电流源的选择允许显著的噪声分量突出于背景噪声中,因此帮助制造商在测试设备中和/或端用户在将设备设置成该端用户特定的希望用途中用于测量和定位该噪声分量,一旦已经利用测试电流源在频谱中定位到噪声分量,则主电流源可以向回切换以再次将噪声分量降低到正常操作,来完成测试或设置操作和确定噪声分量没有干扰设备的正常操作(利用主电流源)。因为当选择测试电流源时可以很容易的确定噪声分量的频率位置,因此可以在主电流源向回切换时仔细检查相同的频率位置,以便能够检验到出现的甚至非常小的噪声分量。
有利的选择主和测试电流源的物理布局,因此工作电流I的失配在一定程度上与测试电流Itest的失配有关。这使得可以可靠的优化变形操作,或甚至根据对测试源所取的测量值选择特定的“最佳”传递函数,其具有与主电流源足够的相关程度。即使主和测试电流源之间没有或没有实质的相关性,旋转分量仍然匹配相同的频率,尽管主电流源和测试电流源之间的相对幅度可能不同。
已经关于分段混合信号电路描述了本发明的第三个方面,其操作执行段旋转技术而不是上面关于本发明第一个方面所述的段变形技术。本领域技术人员很容易理解本发明第三个方面的技术可以用于分段混合信号电路,其操作只执行段变形,或段旋转和段变形的组合。选择较差匹配电流源的能力在任何分段混合信号电路中有用,其中期望夸大失真的效果,以利于器件的测试或变化或选择适当的操作参数。
可以理解本发明的第三个方面也可以应用到其他类型的分段电路,例如其中每段定义一个模拟量而不是上述的电流。模拟量可以是电压、电容或电阻,每段具有以明确定义方式定义该模拟量的第一部份,和以较不明确方式定义该模拟量的第二部分,该段选择的实际模拟量可以在两者之间选择。本发明的第三个方面也可以应用于除了混合信号选择电路之外的分断电路,例如纯模拟电路。在这种情况下,段可以根据模拟而不是数字信号控制。
也可以理解本发明的所有方面也可以用于不产生差分输出信号的混合信号电路。不是将其电流从一条线转换到另一条线,每段可以根据数字输入信号简单的打开或关闭信号或以某种其它的方式改变其幅度。