CN102324939B - 用于电流舵dac的dem编码方法 - Google Patents

用于电流舵dac的dem编码方法 Download PDF

Info

Publication number
CN102324939B
CN102324939B CN201110182455.6A CN201110182455A CN102324939B CN 102324939 B CN102324939 B CN 102324939B CN 201110182455 A CN201110182455 A CN 201110182455A CN 102324939 B CN102324939 B CN 102324939B
Authority
CN
China
Prior art keywords
input
pstart
value
pend
pointer
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
Application number
CN201110182455.6A
Other languages
English (en)
Other versions
CN102324939A (zh
Inventor
王源
赵俊雷
苏炜
贾嵩
张兴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peking University
Original Assignee
Peking University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Peking University filed Critical Peking University
Priority to CN201110182455.6A priority Critical patent/CN102324939B/zh
Publication of CN102324939A publication Critical patent/CN102324939A/zh
Application granted granted Critical
Publication of CN102324939B publication Critical patent/CN102324939B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Analogue/Digital Conversion (AREA)

Abstract

本发明公开了一种用于电流舵DAC的DEM编码方法,涉及DEM编码领域。所述方法包括步骤:判断电流舵DAC的当前周期的数字输入Input(n)与前一周期的数字输入Input(n-1)的大小关系;如果相等,保持DEM模块的输出不变,保持指针Pstart和Pend的值不变;如果Input(n)大于Input(n-1),对DEM模块的输出进行第一置位操作,修改Pstart和Pend的值;如果Input(n)小于Input(n-1),进行第二置位操作,修改Pstart和Pend的值。所述方法,有效减少了每周期跳变开关数,从而减小了开关跳变引起的动态误差。

Description

用于电流舵DAC的DEM编码方法
技术领域
本发明涉及DEM编码领域,特别涉及一种用于电流舵DAC的DEM编码方法。
背景技术
由于生产工艺的偏差和工作温度、电压的不一致,芯片元件(比如晶体管尺寸、阈值电压和电阻阻值等)会出现失配,这会严重影响系统的性能,尤其是线性度。DEM(Dynamic Element Matching,动态元素匹配)编码方法能够将元件失配引起的失真转化为噪声,从而有效提高系统的线性度,因而广泛应用于各种结构的ADC和DAC中。图1是传统的包含DEM模块的DAC的工作原理图。如图1所示,DAC的数字输入经过DEM模块编码后,输出M个数字位(图1中C1到CM),所述M个数字位分别经过一个1位子DAC转换为M个子模拟输出(图1中y1到yM),所述M个子模拟输出合成最终的模拟输出(图1中y)。
然而,传统DEM编码方法(比如Data Weighted Averaging,DWA)会急剧增大每采样周期跳变的开关数,而过多的开关跳变会导致较大的动态误差(开关跳变不同步、时钟馈通等),这也会影响系统的性能。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何提供一种用于电流舵DAC的DEM编码方法,以便在将失配引起的失真转换为噪声的同时,减小每个采样周期的开关跳变数。
(二)技术方案
为解决上述技术问题,本发明提供一种用于电流舵DAC的DEM编码方法,其包括以下步骤:
S100:判断所述电流舵DAC的当前周期的数字输入Input(n)与所述电流舵DAC的前一周期的数字输入Input(n-1)的大小关系;如果Input(n)等于Input(n-1),执行S200;如果Input(n)大于Input(n-1),执行S300;如果Input(n)小于Input(n-1),执行S400;
S200:保持DEM模块的输出不变,保持指针Pstart和指针Pend的值不变;
S300:对所述DEM模块的输出进行第一置位操作,并且相应地修改所述指针Pstart和指针Pend的值;
S400:对所述DEM模块的输出进行第二置位操作,并且相应地修改所述指针Pstart和指针Pend的值。
优选地,在所述步骤S100之前还包括步骤S000:设定所述指针Pstart的初始值为1;设定所述指针Pend的初始值为所述电流舵DAC的第一个周期的数字输入Input(1)。
优选地,所述步骤S300具体包括步骤:
S301:判断Pstart+Input(n)-1与所述DEM模块的输出位数M的大小关系;如果Pstart+Input(n)-1不大于M,执行S302;否则,执行S303;
S302:将所述DEM模块的输出中,从所述指针Pstart的值对应的数位到Pstart+Input(n)-1的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pend的值为Pstart+Input(n)-1;
S303:将所述DEM模块的输出中,从所述指针Pstart的值对应的数位到M对应的数位均置位为1,从第1位到Pstart+Input(n)-1-M的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pend的值为Pstart+Input(n)-1-M。
优选地,所述步骤S400具体包括步骤:
S401:判断Pend-Input(n)+1是否小于1,如果不小于,执行S402,否则,执行S403;
S402:将所述DEM模块的输出中,从Pend-Input(n)+1的值对应的数位到所述指针Pend的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pstart的值为Pend-Input(n)+1;
S403:将所述DEM模块的输出中,从第1位到所述指针Pend的值对应的数位均置位为1,从Pend-Input(n)+1+M的值对应的数位到M对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pstart的值为Pend-Input(n)+1+M;所述M为所述DEM模块的输出位数。
优选地,如果所述DEM模块的输出经过置位操作后所有数位均为1或者均为0,则修改所述指针Pstart的值为Pstart+Num,然后修改所述指针Pend的值为Pstart-1;所述Num为对应所述电流舵DAC的当前周期的数字输入Input(n)的位数的常值。
优选地,修改所述指针Pstart的值为Pstart+Num后,如果Pstart为1,则修改所述指针Pend的值为M。
(三)有益效果
本发明的用于电流舵DAC的DEM编码方法,其DEM模块的输出具有一定的随机性,能将失配引起的失真转换为噪声,同时,有效减少了每周期跳变开关数,从而有效减小开关跳变引起的动态误差。
附图说明
图1是传统的包含DEM模块的DAC的工作原理图;
图2是本发明实施例所述用于电流舵DAC的DEM编码方法的流程图;
图3本发明实施例所述用于电流舵DAC的DEM编码方法的编码过程示意图;
图4是采用本发明实施例所述用于电流舵DAC的DEM编码方法的DAC的电路静态特性图;
图5是采用本发明实施例所述用于电流舵DAC的DEM编码方法的DAC的SFDR特性图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图2是本发明实施例所述用于电流舵DAC的DEM编码方法的流程图。如图2所示,所示方法包括:
步骤S000:设定指针Pstart的初始值为1;设定指针Pend的初始值为所述电流舵DAC的第一个周期的数字输入Input(1)。
步骤S100:判断所述电流舵DAC的当前周期的数字输入Input(n)与所述电流舵DAC的前一周期的数字输入Input(n-1)的大小关系;如果Input(n)等于Input(n-1),执行S200;如果Input(n)大于Input(n-1),执行S300;如果Input(n)小于Input(n-1),执行S400。
步骤S200:保持DEM模块的输出不变,保持所述指针Pstart和指针Pend的值不变。
步骤S300:对所述DEM模块的输出进行第一置位操作,并且相应地修改所述指针Pstart和指针Pend的值。
所述步骤S300具体包括:
步骤S301:判断Pstart+Input(n)-1与所述DEM模块的输出位数M的大小关系;如果Pstart+Input(n)-1不大于M,执行S302;否则,执行S303。
步骤S302:将所述DEM模块的输出中,从所述指针Pstart的值对应的数位到Pstart+Input(n)-1的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pend的值为Pstart+Input(n)-1。
步骤S303:将所述DEM模块的输出中,从所述指针Pstart的值对应的数位到M对应的数位均置位为1,从第1位到Pstart+Input(n)-1-M的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pend的值为Pstart+Input(n)-1-M。
步骤S400:对所述DEM模块的输出进行第二置位操作,并且相应地修改所述指针Pstart和指针Pend的值。
所述步骤S400具体包括:
步骤S401:判断Pend-Input(n)+1是否小于1,如果不小于,执行S402,否则,执行S403。
步骤S402:将所述DEM模块的输出中,从Pend-Input(n)+1的值对应的数位到所述指针Pend的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pstart的值为Pend-Input(n)+1。
步骤S403:将所述DEM模块的输出中,从第1位到所述指针Pend的值对应的数位均置位为1,从Pend-Input(n)+1+M的值对应的数位到M对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pstart的值为Pend-Input(n)+1+M。
如果所述DEM模块的输出经过所述步骤S300或者步骤S400的置位操作后所有数位均为1或者均为0,则修改所述指针Pstart的值为Pstart+Num,然后修改所述指针Pend的值为Pstart-1;所述Num为对应所述电流舵DAC的当前周期的数字输入Input(n)的位数的常值,可以通过仿真实验确定,一般为DEM模块的输出位数M的四分之一取整。
其中,修改所述指针Pstart的值为Pstart+Num后,如果Pstart为1,则修改所述指针Pend的值为M。
图3是本发明实施例所述用于电流舵DAC的DEM编码方法的编码过程示意图。如图3所示,第1周期时所述电流舵DAC的数字输入为3。设定所述指针Pstart的初始值为1,设定所述指针Pend的初始值为3。
第2周期时所述电流舵DAC的数字输入为7,大于所述第1周期时所述电流舵DAC的数字输入3,并且Pstart+Input(n)-1=7,不大于所述DEM模块的输出位数M=15,则所述DEM模块的输出中从第1位到第7位的数位均置位为1,剩余的从第8位到第15位的数位均置位为0,修改所述指针Pend的值为7。
第3周期时所述电流舵DAC的数字输入为12,大于所述第2周期时所述电流舵DAC的数字输入7,并且Pstart+Input(n)-1=12,不大于所述DEM模块的输出位数M=15,则所述DEM模块的输出中从第1位到第12位的数位均置位为1,剩余的从第13位到第15位的数位均置位为0,修改所述指针Pend的值为12;
第4周期时所述电流舵DAC的数字输入为6,小于所述第3周期时所述电流舵DAC的数字输入12,并且Pend-Input(n)+1=7,不小于1,则所述DEM模块的输出中从第7位到第12位的数位均置位为1,剩余的从第1位到第6位以及从第13位到第15位的数位均置位为0,修改所述指针Pstart的值为7。
第5周期时所述电流舵DAC的数字输入为15,大于所述第4周期时所述电流舵DAC的数字输入6,并且Pstart+Input(n)-1=21,大于所述DEM模块的输出位数M=15,则从第7位到第1 5位均置位为1,从第1位到第6位均置位为1。这时所有输出为都被置位为1,修改所述指针Pstart的值为Pstart+Num=11,然后修改所述指针Pend的值为Pstart-1=10。其中所述Num取常值为4。
第6周期时所述电流舵DAC的数字输入为9,小于所述第5周期时所述电流舵DAC的数字输入15,并且Pend-Input(n)+1=2,不小于1,则所述DEM模块的输出中从第2位到第10位的数位均置位为1,剩余的第1位以及从第11位到第15位的数位均置位为0,修改所述指针Pstart的值为2。
第7周期时所述电流舵DAC的数字输入为0,小于所述第6周期时所述电流舵DAC的数字输入9,并且Pend-Input(n)+1=11,不小于1,则所述DEM模块的输出中所有数位均置位为0,修改所述指针Pstart的值为Pstart+Num=6,然后修改所述指针Pend的值为Pstart-1=5。
第8周期时所述电流舵DAC的数字输入为2,大于所述第7周期时所述电流舵DAC的数字输入0,并且Pstart+Input(n)-1=6不大于所述DEM模块的输出位数M=15,则所述DEM模块的输出中从第6位到第7位的数位均置位为1,剩余的第1位到第5位以及从第8位到第15位的数位均置位为0,修改所述指针Pend的值为7。
通过Matlab建模仿真电流源静态失配对6位DAC性能的影响。图4是采用本发明实施例所述用于电流舵DAC的DEM编码方法的DAC的电路静态特性图。我们将电流源标准差置为10%,仿真100次,得出采用本发明实施例所述用于电流舵DAC的DEM编码方法的DAC的静态特性如图4所示,其中,左部是积分非线性分布直方图,右部是差分非线性分布直方图。
图5是采用本发明实施例所述用于电流舵DAC的DEM编码方法的DAC的SFDR特性图。我们将采样频率设为300MHz,仿真得出采用本发明实施例所述用于电流舵DAC的DEM编码方法的DAC的输入频率较低(10MHz)和较高(90MHz)时的SFDR特性如图5所示。其中,图5中左半部分为输入频率较低时的SFDR特性图,图5中右半部分为输入频率较高时的SFDR特性图。
上述仿真结果表明,本发明实施例所述用于电流舵DAC的DEM编码方法,不仅有很好的静态特性,同时在不同的输入频率下都有很好的SFDR(Spurious Free Dynamic range,无杂散动态范围)特性。
本发明实施例所述用于电流舵DAC的DEM编码方法,有效减少了每周期跳变开关数,从而有效减小开关跳变引起的动态误差;输出具有一定的随机性,能将失配引起的失真转换为噪声。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (4)

1.一种用于电流舵DAC的DEM编码方法,其特征在于,包括以下步骤:
S100:判断所述电流舵DAC的当前周期的数字输入Input(n)与所述电流舵DAC的前一周期的数字输入Input(n-1)的大小关系;如果Input(n)等于Input(n-1),执行S200;如果Input(n)大于Input(n-1),执行S300;如果Input(n)小于Input(n-1),执行S400;
S200:保持DEM模块的输出不变,保持指针Pstart和指针Pend的值不变;
S300:对所述DEM模块的输出进行第一置位操作,并且相应地修改所述指针Pstart和指针Pend的值;
S400:对所述DEM模块的输出进行第二置位操作,并且相应地修改所述指针Pstart和指针Pend的值;
所述步骤S300具体包括步骤:
S301:判断Pstart+Input(n)-1与所述DEM模块的输出位数M的大小关系;如果Pstart+Input(n)-1不大于M,执行S302;否则,执行S303;
S302:将所述DEM模块的输出中,从所述指针Pstart的值对应的数位到Pstart+Input(n)-1的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pend的值为Pstart+Input(n)-1;
S303:将所述DEM模块的输出中,从所述指针Pstart的值对应的数位到M对应的数位均置位为1,从第1位到Pstart+Input(n)-1-M的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pend的值为Pstart+Input(n)-1-M;
其中,步骤S400具体包括步骤:
S401:判断Pend-Input(n)+1是否小于1,如果不小于,执行S402,否则,执行S403;
S402:将所述DEM模块的输出中,从Pend-Input(n)+1的值对应的数位到所述指针Pend的值对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pstart的值为Pend-Input(n)+1;
S403:将所述DEM模块的输出中,从第1位到所述指针Pend的值对应的数位均置位为1,从Pend-Input(n)+1+M的值对应的数位到M对应的数位均置位为1,其他数位置位为0,然后修改所述指针Pstart的值为Pend-Input(n)+1+M;所述M为所述DEM模块的输出位数。
2.如权利要求1所述的方法,其特征在于,在所述步骤S100之前还包括步骤S000:设定所述指针Pstart的初始值为1;设定所述指针Pend的初始值为所述电流舵DAC的第一个周期的数字输入Input(1)。
3.如权利要求1所述的方法,其特征在于,如果所述DEM模块的输出经过置位操作后所有数位均为1或者均为0,则修改所述指针Pstart的值为Pstart+Num,然后修改所述指针Pend的值为Pstart-1;所述Num为对应所述电流舵DAC的当前周期的数字输入Input(n)的位数的常值。
4.如权利要求3所述的方法,其特征在于,修改所述指针Pstart的值为Pstart+Num后,如果Pstart为1,则修改所述指针Pend的值为M。
CN201110182455.6A 2011-06-30 2011-06-30 用于电流舵dac的dem编码方法 Active CN102324939B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110182455.6A CN102324939B (zh) 2011-06-30 2011-06-30 用于电流舵dac的dem编码方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110182455.6A CN102324939B (zh) 2011-06-30 2011-06-30 用于电流舵dac的dem编码方法

Publications (2)

Publication Number Publication Date
CN102324939A CN102324939A (zh) 2012-01-18
CN102324939B true CN102324939B (zh) 2014-04-23

Family

ID=45452619

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110182455.6A Active CN102324939B (zh) 2011-06-30 2011-06-30 用于电流舵dac的dem编码方法

Country Status (1)

Country Link
CN (1) CN102324939B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102751992B (zh) * 2012-07-20 2015-02-11 北京大学 动态元素匹配编码方法
CN103138763B (zh) * 2013-02-01 2016-03-09 苏州云芯微电子科技有限公司 一种动态器件匹配方法及运用该方法的电路
CN111245439A (zh) * 2020-04-26 2020-06-05 杭州城芯科技有限公司 一种应用于数模转换器的动态元件匹配电路和方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7675448B1 (en) * 2008-09-01 2010-03-09 Mediatek Inc. Continuous-time sigma-delta modulator using dynamic element matching having low latency and dynamic element matching method thereof
CN101350622B (zh) * 2008-09-10 2012-01-11 华为技术有限公司 一种dem算法的量化器电路及实现方法
EP2339754A1 (en) * 2009-12-23 2011-06-29 Nxp B.V. A converter

Also Published As

Publication number Publication date
CN102324939A (zh) 2012-01-18

Similar Documents

Publication Publication Date Title
CN100452655C (zh) 自校准多通道模数转换器
CN102324939B (zh) 用于电流舵dac的dem编码方法
CN103095300B (zh) 逐次逼近模拟至数字转换器及转换方法
CN102394653B (zh) 数模转换器及数模转换方法
EP2426822A1 (en) Method and device for fast cyclic redundancy check coding
CN106559080A (zh) 用于数模转换器的低功率切换技术
CN109660255B (zh) 模数转换器非线性校准方法
CN109639278A (zh) 多通道时间交错adc的时序补偿方法及装置
CN102722690A (zh) 磁卡解码方法
CN105591645B (zh) 一种多级串并转换电路
CN102025375A (zh) 模数转换器及其数字校准电路
CN108023595A (zh) 高速低功率数模上变频器
CN104660260B (zh) Adc的自适应滤波数字校准电路和方法
CN104270149B (zh) 一种模数转换器的自适应校正启动电路
CN104158547B (zh) 一种温度计码到n位二进制码的并行转换装置及转换方法
CN110380728A (zh) 一种高分辨率的混合模数电路转换装置及转换方法
CN102386922B (zh) 一种可编程零周期时延与高速流水线模数转换器
CN105897274A (zh) 一种8位元高精度dac电流源阵列及其布局方法
US10778240B1 (en) Device and method for digital to analog conversion
CN106446416B (zh) 一种应用于分段电流舵dac的电路仿真方法
CN102751992B (zh) 动态元素匹配编码方法
CN106559069B (zh) 时序译码器
CN102291145A (zh) 一种基于格雷编码和绝对值算法的模数转换方法
CN105989200B (zh) 模数转换器的仿真方法和装置
CN210274034U (zh) 一种高精度dac

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant