用于逐次逼近型寄存器模数转换器的偏移校准的制作方法

文档序号:24306948发布日期:2021-03-17 00:59阅读:105来源:国知局
用于逐次逼近型寄存器模数转换器的偏移校准的制作方法

附图说明

图1是图示了逐次逼近型寄存器(sar)模数转换器(adc)的框图。

图2是图示了两个比较器逐次逼近型寄存器模数转换器的框图。

图3a至图3c是考虑到随机或分布良好的输入信号,最低有效比特值的分布的图示。

图4是图示了校准最低有效比特比较器的方法的流程图。

图5a是图示了具有抖动输入的逐次逼近型寄存器模数转换器的框图。

图5b是图示了具有抖动输入的逐次逼近型寄存器模数转换器的另一实施例的框图。

图6是图示了具有最低有效比特累加器的逐次逼近型寄存器模拟的框图。

图7是图示了用于校准最低有效比特比较器的方法的流程图。

图8a是图示了使用2个或多个比较器的逐次逼近型寄存器(sar)模数转换器(adc)的框图。

图8b是图示了使用2个或多个比较器的逐次逼近型寄存器(sar)模数转换器(adc)的另一实施例的框图。

图9a至图9c是考虑到随机或分布良好的输入信号,比特值分布的图示。

图10是图示了校准至少一个比较器的方法的流程图。

图11是图示了校准一个或多个比较器的方法的流程图。

图12是处理系统的框图。

具体实施方式

逐次逼近型寄存器(sar)模数转换器(adc)如同具有用于确定最终输出的一个比特的每个比较步骤的二进制搜索进行操作。该过程从最高有效比特运作至最低有效比特。为了加快比较过程,可以利用两个或多个比较器。这允许多个比较器共存操作,但是在交错的操作阶段中。然而,saradc的输出可能会由于比较器之间的偏移的失配而非线性地失真。比较器偏移之间的差异可以被称作“差分偏移”。解析比特n的比较器与解析比特n+1的比较器之间的“差分偏移”可能反映于比n的统计分布中。“共模偏移”或“dc偏移”是在所有比较器之间共有的共享偏移且对saradc的非线性没有贡献或几乎没有贡献。

在实施例中,统计测量被用于校正解析相邻位的比较器的差分偏移。例如,分布良好或随机的输入信号应该产生针对最低有效比特(例如比特#0)的大致相等数目的1值和0值。如果1和0出现的数目在统计上明显失配,那么可以对最低有效比特比较器的偏移进行调整,直到存在大致相等数目的1值和0值。这些调整使解析比特#0的比较器与解析比特#1的比较器之间的差分偏移为零。因此,减少或消除了对专用偏移校正循环的需要。

图1是图示了逐次逼近型寄存器(sar)模数转换器(adc)的框图。在图1中,saradc100包括n个比较器110至113、m位寄存器120、m位数模转换器(dac)130、时钟和控制电路系统140以及分布计算150。saradc100使用n个比较器来将其输入(vin)处的模拟信号转换为m个数字位,其中n大于或等于2,且m是确定saradc100的解析度的任意整数。saradc100可以是集成电路的一部分。

输入vin处的模拟信号可以是待被转换为数字值的任何模拟电压。可以使用saradc100进行模数转换的应用包括工业(或消费者)测量、语音带宽音频、数据获取、视频、无线电(例如if采样)等。因此,vin可以表示例如可通过模拟电路系统/传感器感测/接收的温度、光、湿度、压力、速度、位置、距离、数量、心电图信号、rf信号、音频信号和/或任何模拟(或数字)物理特性。在机器(例如汽车、工厂设备)中和它们周围的物理特性的转换已经实现了许多最新的技术进展。这些领域包括例如防震刹车、机器人技术、气候控制(例如恒温控制器)。模拟rf信号到数字值的转换已经通过用计算机功能(例如软件无线电、移动通信、cdma、ofdm、ofdma等)替换模拟电路系统,而在通信方面实现了许多最新进展。

在操作中,在时钟和控制电路系统140的控制下,寄存器120最初被设置为dac130可以输出的最大值的1/2(例如对于m=6为100000)。在第一循环中,n-1级比较器113然后将dac130的输出与输入电压vin进行比较,以确定最高有效比特d[m-1]的值。然后将最高有效比特的值加载到寄存器120中,该寄存器可以使dac130输出新的模拟电压。在下一个循环中,由n-2级比较器112将该新的模拟电压与输入电压vin进行比较,来确定第二最高有效比特的值。然后将第二最高有效比特的值加载到寄存器120中,且在m个循环内依此类推。在已经确定了m个比特值之后,寄存器120中的值是saradc100的输入vin上的模拟电压的数字表示。saradc100然后可以通过将寄存器120中的值设置为dac130可以输出的最大值的1/2(例如对于m=6为100000)并且继续进行相同过程,来继续转换vin上的另一模拟电压。

在实施例中,m是n的整数倍。这确保了比较器110始终是产生由saradc100输出的最低有效比特的比较器。然而,也设想了其他配置。例如,如果m=7(即,奇整数)且n=2,那么saradc100可以被配置成使得比较器110和111分别在交替转换循环上产生最低有效比特。复用器(图1中未示出)或其他逻辑可以被用于将比较器110和111的相应输出路由至寄存器120的适当位的位置。

在实施例中,分布计算150监测由saradc100通过多次模数转换输出的最低有效比特值。分布计算150监测由saradc100输出的最低有效比特值,以确定1和0正在出现的数目是否存在统计上的明显失配。如果分布计算150确定了1和0出现的数目存在统计上的明显失配,那么分布计算150对最低有效比特比较器110的偏移进行调整。

例如,如果分布计算150确定存在由比较器110输出的1的数目在统计上比0的数目更多的情况,那么分布计算150可以改变比较器110的偏移(例如经由信号off_adj),以改变比较器110的阈值,因此比较器110针对任何给定比较将输出1的可能性增加。同样地,如果分布计算150确定由比较器110输出的0的数目在统计上比1的数目更多的情况,那么分布计算150可以改变比较器110的偏移(例如经由信号off_adj),以改变比较器110的阈值,因此比较器110针对任何给定比较将输出0的可能性增加。

应理解,还可以校正比较器111至113中的一者或多者的偏移。这些校正可以以各种方式执行。这些方式可以包括其他已知的校准技术和/或分析与比较器111至113相关联的统计分布。由于被用于比较器111至113的校准技术可以不包括统计分布分析,因此在图1中未示出分布计算150与比较器111至113之间的连接——但在一些实现中,可以存在连接。

在实施例中,分布计算150是在与saradc100的其余部分相同的集成电路上运行的电路系统和/或软件。在另一实施例中,分布计算150可以是在单独的集成电路上运行的软件,该软件可以控制比较器110的偏移(例如经由写入到控制输出off_adj信号的dac的寄存器)。

图2是图示了两个比较器逐次逼近型寄存器模数转换器的框图。在图2中,saradc200包括比较器a210、比较器b211、m位寄存器220、m位数模转换器(dac)230、时钟和控制电路系统240、分布计算250、偏移调整daca251以及偏移调整dacb255。saradc200使用两个比较器210至211以交替(亦称为乒乓)的方式来将saradc200的输入(vin)处的模拟信号转换为m个数字位。通过仅使用两个比较器210-211,saradc200的生产成本可以比n>2时的saradc100的生产成本低。相反,通过使用更多的比较器(即,n>2),saradc100可能能够以更高的频率运行。偏移调整dacb255接收共模偏移调整值cm_off_val。偏移调整dacb255可操作地耦合至比较器b211以控制比较器b211的偏移。偏移调整daca251可操作地耦合至比较器a210以控制比较器a210的偏移。saradc200可以是集成电路的一部分。

在操作中,在时钟和控制电路系统240的控制下,寄存器220最初被设置为dac230可以输出的最大值的1/2(例如对于m=6为100000)。在第一循环中,比较器b211然后将dac230的输出与输入电压vin进行比较,以确定最高有效比特d[m-1]的值。然后将最高有效比特的值加载到寄存器220中,该寄存器可以使dac230输出新的模拟电压。在下一个循环中,由比较器a210将该新的模拟电压与输入电压vin进行比较,以确定第二最高有效比特的值。然后将第二最高有效比特的值加载到寄存器220中,并且在m个循环内依此类推,当比较器a210确定了最低有效比特d[0]的1值或0值时完成。在已经确定了m个比特值之后,寄存器220中的值是对saradc200的输入vin上的模拟电压的数字表示。saradc200然后可以通过将寄存器220中的值设置为dac230可以输出的最大值的1/2(例如对于m=6为100000)并且继续进行相同过程,来继续转换vin上的另一模拟电压。

在实施例中,m是偶数。这确保了比较器210始终是产生由saradc200输出的最低有效比特的比较器。然而,可以设想其他配置。例如,如果m是奇数且n=2,那么saradc200可以被配置成使得比较器210和211分别在交替转换循环上产生最低有效比特。复用器(图2中未示出)或其他逻辑可以用于将比较器210和211的相应输出路由至寄存器220的适当位的位置。

在实施例中,分布计算250监测由saradc200通过多次模数转换输出的最低有效比特值。分布计算250监测由saradc200输出的最低有效比特值,来确定1和0的数目是否正在出现统计上的明显失配。如果分布计算250确定存在1和0的数目出现统计上的明显失配,那么分布计算250调整值off_val,这使由偏移dac251输出的电压改变。由偏移dac251输出的模拟电压控制比较器a210的偏移。

如果分布计算250确定存在由比较器210输出的1的数目在统计上比0的数目更多的情况,那么分布计算250可以改变off_val的值,以使得比较器210的偏移被改变成使得比较器210针对任何给定比较将输出1的可能性增加。同样地,如果分布计算250确定存在由比较器210输出的0的数目在统计上比1的数目更多的情况,那么分布计算250可以改变off_val的值,以使得比较器210的偏移被改变成使得比较器210针对任何给定比较将输出0的可能性增加。

在实施例中,分布计算250是在与saradc200的其余部分相同的集成电路上运行的电路系统和/或软件。在另一实施例中,分布计算250可以是在单独的集成电路上运行的软件,该软件可以控制比较器210的偏移(例如经由写入到控制值off_val的寄存器)。

图3a至图3c是考虑到随机或分布良好的输入信号,最低有效比特值的分布的图示。图3a图示了可能不需要偏移调整的最低有效比特值的分布(或等效地,出现概率)。注意,0和1的分布在图3a中相等或近似相等。因此,假设图3a中的分布表示统计上较大的样本大小(例如1000、10000等),并且在统计上1的数目与0的数目之间的差异相等(例如1%-5%的差或更少),那么分布计算150和分布计算250将不会调整其相应的最低有效比特比较器的偏移。

图3b图示了可能需要增加的正偏移调整的最低有效比特值的分布(或等效地,出现概率)。注意,在图3b中,0和1的分布具有与0相比明显更多的1。因此,假设图3b中的分布表示统计上较大的样本大小(例如1000、10000等),并且1的数目与0的数目之间的差异示出了在统计上存在更多的1(例如与0相比,5%或更多的1),那么分布计算150和分布计算250将增加其相应的最低有效比特比较器的偏移,从而增加了最低有效比特0的数目。

图3c图示了可能需要减少的偏移调整的最低有效比特值的分布(或等效地,出现概率)。注意,在图3b中,0和1的分布具有与1相比明显更多的0。因此,假设图3c中的分布表示统计上较大的样本大小(例如1000、10000等),并且1的数目与0的数目之间的差异示出了在统计上存在更多的0(例如与1相比,5%或更多的0),那么分布计算150和分布计算250将减少其相应的最低有效比特比较器的偏移,从而减少了最低有效比特0的数目。

图4是图示了校准最低有效比特比较器的方法的流程图。图4中所图示的步骤可以由saradc100、saradc200和/或其组件执行。应理解,图4中所图示的步骤迭代地重复和/或不时地重复。例如,可以在首次使用saradc100之前执行图4中的步骤,以使得当正常操作开始时,saradc100将进行准确测量。在另一示例中,saradc100可以不时地进行周期性地校准(例如每隔100秒一次、每隔十分钟一次等),以确保相对缓慢改变的环境条件(例如温度、电源电压等)不影响由saradc100进行的测量的准确性。在另一示例中,已知改变的环境条件(例如在温度或电源电压等方面改变了阈值量)可以触发校准序列。在另一示例中,在saradc100外部的外部软件和/或其他控制功能可以基于对saradc100未知的其他信息/时序(例如模式)来触发校准序列。

接收待被转换为数字表示的输入信号,其中最低有效比特由第一比较器确定,且第二最低有效比特由第二比较器确定(402)。例如,输入信号vin可以由saradc200接收,其中比较器a210确定由saradc200输出的最低有效比特,且比较器b211确定由saradc200输出的第二最低有效比特。

接收待被转换为数字表示的输入信号,该输入信号可以是待被转换为数字值的任何模拟电压。这包括工业(或消费者)测量、语音带宽音频、数据获取、视频、无线电(例如if采样)等。因此,可以使用saradc100进行模数转换的应用包括工业(或消费者)测量、语音带宽音频、数据获取、视频、无线电(例如if采样)等。因此,接收待被转换为数字表示的输入信号,该输入信号可以表示例如可通过模拟电路系统/传感器感测/接收的温度、光、湿度、压力、速度、位置、距离、数量、心电图信号、rf信号、音频信号和/或任何模拟(或数字)物理特性。在机器(例如汽车、工厂设备)中和它们周围的物理特性的转换已经实现了许多最新的技术进展。这些领域包括例如防震刹车、机器人技术、气候控制(例如恒温控制器)。模拟rf信号到数字值的转换已经通过用计算机功能(例如软件无线电、移动通信、cdma、ofdm、ofdma等)替换模拟电路系统而在通信方面实现了许多最新进展。

计算对最低有效比特值的分布的表示(404)。例如,分布计算250可以计算以下中的一者或多者:在一段时间内或通过多次转换输出的1的数目与0的数目的差;累加值,其中1使累加器递增,且0使累加器递减;在一段时间内或通过多次转换输出的0的总数和1的总数;0出现的概率与1出现的概率之间的关系等。

基于表示,调整第一比较器的偏移(406)。例如,如果在步骤404中计算的表示,示出在统计上存在更多的1(例如与0相比5%或更多的1),那么分布计算200增加比较器210的偏移,从而增加了最低有效比特0的数目。同样地,如果在步骤404中计算的表示,示出在统计上存在更多的0(例如与1相比5%或更多的0),那么分布计算200减少比较器210的偏移,从而减少了最低有效比特0的数目。

应理解,本文中所描述的偏移调整技术可以使用分布良好或随机的输入信号。即使正确地调整了最低有效比特比较器的偏移,恒定输入(即,dc)也将必然产生统计上更多的1或0。这种情况将导致最坏情况的1位的校准误差(即,最低有效比特将是无意义的)。为了解决恒定值输入的可能性,可以将抖动信号(通常大于或等于1/2lsb)添加到输入或从输入中减去抖动信号(通常大于或等于1/2lsb),以确保即使在通过saradc输入恒定值时,最低有效比特也将在恰当地调整偏移时在1与0之间进行平等地平衡。

图5a是图示了具有抖动输入的逐次逼近型寄存器模数转换器的框图。除了添加了抖动信号生成器560之外,saradc201在功能上与saradc200相同。将由抖动信号生成器560输出的信号添加到输入信号vin,以使得即使在通过saradc输入恒定值时,最低有效比特也将在恰当地调整偏移时在1与0之间进行平等地平衡。saradc201可以是集成电路的一部分。

图5b是图示了具有抖动输入的逐次逼近型寄存器模数转换器的另一实施例的框图。将输入抖动到saradc202是这样的方法,该方法确保了至少相对于最低有效比特,转换后的模拟特性是分布良好或随机的输入并且应该(在校准saradc202时)产生针对最低有效比特(例如比特#0)的大致相等数目的1值和0值。除了添加随机数生成器241、抖动增益调整242和数字求和243之外,saradc202在功能上与saradc201相同。随机数生成器241控制抖动560以提供添加到输入信号的随机抖动信号。在saradc202确定针对输入信号加抖动的数字表示d[m-1:0]之后,求和243从d[m-1:0]中减去抖动量以产生可以不包括抖动信号的输出out[m-1:0]表示。抖动增益调整242将抖动560的增益设置成使得当从d[m-1:0]中减去来自随机数生成器241的随机数时,out[m-1:0]可以不包括抖动信号的贡献。saradc202可以是集成电路的一部分。

图6是图示了具有最低有效比特累加器的逐次逼近型寄存器模拟的框图。在图6中,saradc600包括比较器a610、比较器b611、m位寄存器620、m位数模转换器(dac)630、时钟和控制电路系统640、分布计算650、偏移调整daca651以及偏移调整dacb655。分布计算650包括累加器652。分布计算可操作地耦合到时钟和控制640。分布计算可操作地耦合至时钟和控制640,使得由累加器652保存的值(例如,重置为0)可以被读取和/或写入。当在累加器652中所保存的值满足阈值条件(例如超过某个值,翻滚(rollover)等)时,分布计算可以可操作地耦合至时钟和控制640以发信号通知时钟和控制640。saradc600可以是集成电路的一部分。

saradc600使用两个比较器610至611以交替(亦称为乒乓)的方式来将saradc600的输入(vin)处的模拟信号转换为m个数字位。偏移调整dacb655可操作地耦合至比较器b611以控制比较器b611的偏移。偏移调整daca651可操作地耦合至比较器a610以控制比较器a610的偏移。

在操作中,在时钟和控制电路系统640的控制下,寄存器620最初被设置为dac630可以输出的最大值的1/2(例如对于m=6为100000)。在第一循环中,比较器b611然后将dac630的输出与输入电压vin进行比较,以确定最高有效比特d[m-1]的值。然后将最高有效比特的值加载到寄存器620中,该寄存器可以使dac630输出新的模拟电压。在下一个循环中,通过比较器a610将该新的模拟电压与输入电压vin进行比较,以确定第二最高有效比特的值。然后将第二最高有效比特的值加载到寄存器620中,且在m个循环内依此类推,当比较器a610确定了最低有效比特d[0]的1值或0值时完成。在已经确定m个比特值之后,寄存器620中的值是对saradc600的输入vin上的模拟电压的数字表示。saradc600然后可以通过将寄存器620中的值设置为dac630可以输出的最大值的1/2(例如对于m=6为100000)并且继续进行相同过程,来继续转换vin上的另一模拟电压。

在实施例中,m是偶数。这确保了比较器610始终是产生由saradc600输出的最低有效比特的比较器。然而,可以设想其他配置。例如,如果m是奇数且n=2,那么saradc600可以被配置成使得比较器610和611分别在交替转换循环上产生最低有效比特。复用器(图2中未示出)或其他逻辑可以被用于将比较器610和611的相应输出路由至寄存器620的适当位的位置。

在实施例中,分布计算650根据由saradc600输出的最低有效比特值使累加器652递增。在多个模数转换循环内,如果1和0的数目存在失配,那么累加器652的值将逐渐增加或减小。因此,累加器652可以被视为对最低有效比特值的平均的表示。

如果不存在失配,那么累加器652应该在其初始值周围浮动。因此,在一段时间(或多个转换循环)内,累加器652中的值可以被用于确定1和0出现的数目在统计上是否存在明显差异。如果1和0出现的数目在统计上存在明显差异(例如由于累加器652中的值满足阈值和/或滚动而确定的),那么分布计算650可以调整值off_val,从而调整比较器a610的偏移。

在实施例中,分布计算650是在与saradc600的其余部分相同的集成电路上运行的电路系统和/或软件。在另一实施例中,分布计算650可以是在单独的集成电路上运行的软件,该软件可以控制比较器610的偏移(例如经由写入到控制值off_val的寄存器)。

图7是图示了校准最低有效比特比较器的方法的流程图。图7中所图示的步骤可以由saradc100、saradc200、saradc201、saradc600和/或其组件执行。接收待被转换为数字表示的输入信号,其中最低有效比特由第一比较器确定,且第二最低有效比特由第二比较器确定(702)。例如,输入信号vin可以由saradc600接收,其中比较器a610确定由saradc600输出的最低有效比特,且比较器b611确定由saradc600输出的第二最低有效比特。

计算对最低有效比特值的平均的表示(704)。例如,分布计算650可以针对为1的每个最低有效比特,累加器652递增,并且针对为0的每个最低有效比特,累加器652递减。因此,累加器652中的值将表示最低有效比特值的平均。

基于对平均的表示,调整第一比较器的偏移(706)。例如,如果累加器652超过了阈值(例如指示在某个时间段内,已存在1的数目比0的数目多出1000个),那么分布计算650可以增加比较器a610的偏移。同样地,如果累加器652在另一方向上超过了阈值(例如指示了在某个时间段内,已存在0的数目比1的数目多出1000个),那么分布计算650可以减少比较器a610的偏移。

图8a是图示了使用2个或多个比较器的逐次逼近型寄存器(sar)模数转换器(adc)的框图。在图8a中,saradc800包括n个比较器810至813、m位寄存器820、m位数模转换器(dac)830、时钟和控制电路系统840以及分布计算850。saradc800使用n个比较器来将saradc800的输入(vin)处的模拟信号转换为m个数字位,其中n大于或等于2,且m是确定saradc800的解析度的任意整数。偏移调整信号cm_off_adj可操作地耦合至n-1级比较器813以控制比较器813的偏移。cm_off_adj可以由图8a至图8b中未示出的电路系统(例如dac)控制或设置。saradc800可以是集成电路的一部分。

在操作中,在时钟和控制电路系统840的控制下,寄存器820最初被设置为dac830可以输出的最大值的1/2(例如对于m=6为100000)。在第一循环中,n-1级比较器813然后将dac830的输出与输入电压vin进行比较,以确定最高有效比特d[m-1]的值。然后将最高有效比特的值加载到寄存器820中,该寄存器可以使dac830输出新的模拟电压。在下一个循环中,通过n-2级比较器812将该新的模拟电压与输入电压vin进行比较,以确定第二最高有效比特的值。然后将第二最高有效比特的值加载到寄存器820中,并且在m个循环内依此类推。在已确定m个比特值之后,寄存器820中的值是对saradc800的输入vin上的模拟电压的数字表示。saradc800然后可以通过将寄存器820中的值设置为dac830可以输出的最大值的1/2(例如对于m=6为100000)并且继续进行相同过程,来继续转换vin上的另一模拟电压。

在实施例中,m是n的整数倍。这确保了比较器810至812始终是产生由saradc800输出的n-1个最低有效比特的比较器。然而,也设想了其他配置。例如,如果m不是n的整数倍,那么saradc800可以被配置成使得n-1个最低有效比特由比较器810至813的旋转(rotating)集合产生。复用器(图8a中未示出)或其他逻辑可以bei用于将比较器810至812的相应输出路由至寄存器820的适当位的位置。

在实施例中,分布计算850监测由saradc800通过多次模数转换解析的最低有效的n-1个位的值。分布计算850监测由saradc800解析的n-1个最低有效比特的值,以确定1和0在每个监测到的比特中正出现的数目在统计上是否明显失配。如果分布计算850确定1和0出现的数目在统计上存在明显失配,那么分布计算850对解析该位810至812的比较器的偏移进行调整。

例如,如果分布计算850确定在统计上存在由比较器810输出的1的数目比0的数目更多的情况,那么分布计算850可以改变比较器810的偏移(例如经由信号off_adj[0]),以改变比较器810的阈值,因此比较器810针对任何给定比较将输出1的可能性增加。同样地,如果分布计算850确定在统计上存在由比较器810输出的0的数目比1的数目更多的情况,那么分布计算850可以改变比较器810的偏移(例如经由信号off_adj[0]),以改变比较器810的阈值,因此比较器810针对任何给定比较将输出0的可能性增加。

在实施例中,分布计算850是在与saradc800的其余部分相同的集成电路上运行的电路系统和/或软件。在另一实施例中,分布计算850可以是在单独的集成电路上运行的软件,该软件可以控制比较器810的偏移(例如经由写入到控制输出off_adj[0]信号的dac的寄存器)。

图8b是图示了使用2个或多个比较器的逐次逼近型寄存器(sar)模数转换器(adc)的另一实施例的框图。除了分布计算851可以接收值d[m-1:0]的全部或子集之外,图8b中的saradc801类似于图8a中的saradc800。分布计算851可以从寄存器820而非直接从比较器810至813接收值d[m-1:0](的全部或子集)。因为m通常大于n,所以与saradc800的分布计算850相比,saradc801的分布计算851可能要花费更多转换循环才能累加统计上相当大数目的d[m-2:0]样本。

应理解,分布计算851(和类似地,分布计算850)可以选择需要确定以下情况的值/数字:1和0在监测到的比特(或所选择的子集)中出现的数目是否在统计上明显失配。所选择的值/数字可以通过由分布计算851(和类似地,分布计算850)所使用的算法,来确定是否存在统计上的明显失配。

例如,在一次迭代中,分布计算851可以仅基于d[1]的值来累加统计,以便调整比较器811的偏移。在另一示例中,分布计算851可以基于d[n-2:0]来累加统计,以调整比较器810至812的偏移。在另一示例中,分布计算851可以基于高阶位(d[m-1:2])的值和d[1]的值中的一者或多者来累加统计(例如关联)。这将允许例如在已知dac830的输出相对静止和/或有效(例如仅在先前的位是1000…0或0111…1时查看d[1],以使得dac830的输出在某一逼近循环次数中尚未改变)时累加统计。应理解,在一些情况下,d[m-1:0]的某些子集和/或比特模式可能产生更佳或更坏的用于调整给定比较器813至810的统计样本空间。

图9a至图9c是考虑到随机或分布良好的输入信号,比特值的分布的图示。图9a图示了可能不需要偏移调整的比特值分布(或等效地,出现概率)。注意,对于图9a中所图示的每个输出数字(比特),0和1的分布相等或近似相等。因此,假设图9a中的分布表示统计上较大的样本大小(例如1000、10000等),并且1的数目与0的数目之间的差在统计上相等(例如1%-5%的差或更少),那么分布计算850将不会调整解析所图示比特的比较器中的任一者的偏移。

图9b图示了针对至少一个比较器,可能需要增加的正偏移调整的比特值分布(或等效地,出现概率)。注意,在图9b中与位d[1]相关联的0和1的分布具有与0相比明显更多的1。因此,假设图9b中的分布表示统计上较大的样本大小(例如1000、10000等),并且1的数目与0的数目之间的差示出了在统计上存在更多的1(例如与0相比,5%或更多的1),那么分布计算850将增加产生该分布的d[1]比较器的偏移,从而增加了0在比特d[1]处出现的数目。

图9c图示了可能需要减少的偏移调整的比特值分布(或等效地,出现概率)。注意,在图9b中,与位d[1]相关联的0和1的分布具有与0相比明显更多的1。因此,假设图9b中的分布表示统计上较大的样本大小(例如1000、10000等),并且1的数目与0的数目之间的差示出了在统计上存在更多的1(例如与0相比,5%或更多的1),那么分布计算850将增加产生该分布的d[1]比较器的偏移,从而增加0在比特d[1]处出现的数目。同样地,注意,在图9c中与位d[n-2]相关联的0和1的分布具有与1相比明显更多的0。因此,假设图9c中的分布表示统计上较大的样本大小(例如1000、10000等),并且1的数目与0的数目之间的差示出了在统计上存在更多的0(例如与1相比,5%或更多的0),那么分布计算850将减少产生该分布的d[n-2]比较器的偏移,从而减少0在比特d[n-2]处出现的的数目。

图10是图示了校准至少一个比较器的方法的流程图。图10中所图示的步骤可以由saradc100、saradc200、saradc201、saradc202、saradc800、saradc801和/或其组件执行。接收待被转换为数字表示的输入信号,其中数字表示具有多个比特,该多个比特包括比特子集,其中数字表示的多个比特的比特值由至少两个比较器确定(1002)。例如,可以通过saradc800接收输入信号vin,其中0级比较器810确定由saradc800输出的最低有效比特;1级比较器811确定由saradc800输出的第二最低有效比特,以此类推,n-2级比较器812确定由saradc800输出的第二最高有效比特。可以将这些比特分组成待被统计分析的一个或多个子集(例如最低有效的x个比特,其中x<n)。

计算比特子集的比特值分布的至少一种表示(1004)。例如,分布计算850可以针对与在saradc800中所使用的比较器810至812的子集相关联的比特中的每个比特,计算以下中的一者或多者:在一段时间内或通过多次转换输出的1的数目与0的数目的差;累加值,其中1使累加器递增,且0使累加器递减;在一段时间内或通过多次转换输出的0的总数和1的总数;0出现的概率与1出现的概率之间的关系等。

基于比特值分布的至少一种表示,调整至少两个比较器中的至少一者的偏移(1006)。例如,如果在步骤1004中针对给定比特(例如比特d[1])计算的表示,示出了在统计上存在更多的1(例如与0相比,5%或更多的1),那么分布计算850增加对应比较器810至812(例如对于比特d[1],比较器811)的偏移,从而增加了与该比特相关联的最低有效比特0的数目。同样地,如果在步骤1004中计算的表示,示出了在统计上存在更多的0(例如与1相比,5%或更多的0),那么分布计算850减少对应比较器810至812(例如对于比特d[1],比较器811)的偏移,从而减少了与该比特相关联的最低有效比特0的数目。

应理解,本文中所描述的偏移调整技术可以使用分布良好或随机的输入信号。即使正确地调整了最低有效比特比较器的偏移,恒定输入(即,dc)也将必然产生统计上更多的1或0。这种情况将导致最坏情况的1比特的校准误差(即,最低有效比特将是无意义的)。为了解决恒定值输入的可能性,可以将抖动信号(通常为+/-1/2lsb)添加到输入以确保即使在通过saradc输入恒定值时,最低有效比特也将在恰当地调整偏移时在1与0之间进行平等地平衡。

图11是图示了校准一个或多个比较器的方法的流程图。图11中所图示的步骤可以由saradc100、saradc200、saradc201、saradc202、saradc800、saradc801和/或其组件执行。接收待被转换为数字表示的输入信号,其中数字表示的比特值由至少两个比较器确定(1102)。例如,可以通过saradc800接收输入信号vin,其中0级比较器810确定由saradc800输出的最低有效比特;1级比较器811确定由saradc800输出的第二最低有效比特,依次类推,n-2级比较器812确定由saradc800输出的第二最高有效比特。

计算来自数字表示的比特子集的比特值的平均的至少一种表示(1104)。例如,由sar800确定的比特d[n-1:0]可以被分组成待被统计分析的一个或多个子集(例如最低有效的x个比特,其中x<n)。针对这些比特(数字)中的每一个,在一段时间内或通过多次转换,这些平均比特值可以被独立计算或相互计算。在另一示例中,分布计算850可以针对1在该比特处的每次出现使相关联的累加器递增,并且针对0在该比特处的每次出现使相关联的累加器递减。因此,相关联的累加器中的值将表示在该比特处已出现的比特值的平均。

基于对平均的至少一种表示,调整至少一个比较器的偏移(1106)。例如,如果与给定比特相关联的累加器超过了阈值(例如指示在某个时间段内,已存在1的数目比0的数目多出1000个),那么分布计算850可以增加与该比特相关联的比较器的偏移。同样地,如果与该比特相关联的累加器在另一方向上超过了阈值(例如指示了在某个时间段内,已存在0的数目比1的数目多出1000个),那么分布计算850可以减少与该比特相关联的比较器。

上述方法、系统和设备可以在计算机系统中实现或由计算机系统存储。也可以将上述方法存储在非瞬态计算机可读介质上。本文中所描述的设备、电路以及系统可以使用本领域中可用的计算机辅助设计工具来实现,并且可以通过包含对此类电路的软件描述的计算机可读文件来实施。这可以包括但不限于saradc100、saradc200、saradc201、saradc202、saradc600、saradc800、saradc801及其组件的一个或多个元件。这些软件描述可以是:行为描述、寄存器传送描述、逻辑组件描述、晶体管描述和布局几何级别描述。此外,可以将软件描述存储在存储介质上,或软件描述可以由载波传输。

可以实现此类描述的数据格式包括但不限于:支持行为语言的格式(比如c)、支持寄存器传送级(rtl)语言的格式(比如verilog和vhdl)、支持几何描述语言的格式(诸如gdsii、gdsiii、gdsiv、cif和mebes)以及其他合适的格式和语言。此外,此类文件在机器可读介质上的数据传输可以通过互联网上的不同介质或例如经由电子邮件以电子方式进行。注意,物理文件可以在以下机器可读介质上实现,诸如:4mm磁带、8mm磁带、3-1/2英寸软盘介质、cd、dvd等。

图12是图示了用于包括、处理或生成对电路组件1220的表示的处理系统1200的一个实施例的框图。处理系统1200包括一个或多个处理器1202、存储器1204以及一个或多个通信设备1206。处理器1202、存储器1204以及通信设备1206使用有线和/或无线连接1208的任何合适的类型、数目和/或配置进行通信。

处理器1202执行存储在存储器1204中的一个或多个过程1212的指令,以响应于用户输入1214和参数1216而处理和/或生成电路组件1220。过程1212可以是用于设计、仿真、分析和/或验证电子电路系统和/或生成用于电子电路系统的光掩模的任何合适的电子设计自动化(eda)工具或其一部分。如图中所示的,表示1220包括描述saradc100、saradc200、saradc201、saradc202、saradc600、saradc800、saradc801及其组件的全部或部分的数据。

表示1220可以包括行为描述、寄存器传送描述、逻辑组件描述、晶体管描述和布局几何级别描述中的一者或多者。此外,可以将表示1220存储在存储介质上,或表示1220可以由载波传输。

可以实现表示1220的数据格式包括但不限于:支持行为语言的格式(比如c)、支持寄存器传输级(rtl)语言的格式(比如verilog和vhdl)、支持几何描述语言的格式(诸如gdsii、gdsiii、gdsiv、cif和mebes)以及其他合适的格式和语言。此外,此类文件在机器可读介质上的数据传输可以通过互联网上的不同介质或例如经由电子邮件以电子方式进行。

用户输入1214可以包括来自键盘、鼠标、语音识别接口、麦克风和扬声器、图形显示器、触摸屏或其他类型的用户接口设备的输入参数。这些用户接口可以分布在多个接口设备之间。参数1216可以包括规范和/或特性,它们被输入以帮助定义表示1220。例如,参数1216可以包括定义设备类型(例如nfet、pfet等)、拓扑(例如框图、电路描述、示意图等)和/或设备描述(例如设备特性、器件尺寸、电源电压、仿真温度、仿真模型等)的信息。

存储器1204包括存储过程1212、用户输入1214、参数1216以及电路组件1220的非瞬态计算机可读存储介质的任何合适的类型、数目和/或配置。

通信设备1206包括有线和/或无线设备的任何合适的类型、数目和/或配置,该有线和/或无线设备将信息从处理系统1200传输至另一处理或存储系统(未示出)和/或从另一处理或存储系统(未示出)接收信息。例如,通信设备1206可以将电路组件1220传输至另一系统。通信设备1206可以接收过程1212、用户输入1214、参数1216和/或电路组件1220,并且使过程1212、用户输入1214、参数1216和/或电路组件1220存储在存储器1204中。

已经出于说明和描述之目的呈现了本发明的前述描述。不旨在详尽地展现本发明或将本发明限制于所公开的精确形式,并且鉴于以上教导,其他修改和变化可以是可能的。选择并且描述实施例是为了最佳地解释本发明的原理和其实际应用,从而使本领域的技术人员能够在各种实施例和适合于所预期的特定用途的各种修改中最佳地利用本发明。除了如现有技术所限制的范围以外,所附权利要求旨在被解释为包括本发明的其他备选实施例。

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