0 导言
DDS(Direct Digital Frequency Synthesis)频率合成器能够很方便地输出恣意波形[1],方波作为最常用波形之一,具有其特殊性。但输出的方波存在显着的重影现象直接影响了方波的质量。
1 方波重影呈现的原因
假定体系时钟频率为200 MHz,以输出3 MHz方波为例,从模仿示波器观察到的成果如图1所示。
图1中存在显着的双边缘现象,且两条上升沿的距离为5 ns,刚好等于体系时钟的周期。这种现象可称为方波重影。
依据DDS的作业原理可知,相位序列具有周期性[2].
在相位序列的一个周期内,相位累加器会溢出若干次,而且每次溢出后的残留量都不相同。当残留量足够大时,再次产生溢出所需的累加次数会削减一次。累加次数的削减,意味着方波的周期变小。不同周期的方波叠加在一同,便呈现重影现象。
运用Matlab模仿DDS生成方波的进程,能够得到更直观的知道,如图2所示。
依照图2中的参数设置,方波的周期等于:
从图2能够看出,为了输出周期为3.2Tc 的方波,在相位序列的一个周期内,DDS 频率合成器的实践输出为:一个周期为4Tc 且占空比为50%的方波,两个周期为3Tc 且占空比为75%的方波,两个周期为3Tc 且占空比为25%的方波。从均匀的意义上看,刚好组成周期为3.2Tc 且占空比为50%的方波。因而,DDS 频率合成器输出的方波不只周期在动摇,而且占空比也产生动摇。
假如将DDS 频率合成器当作分频器,在满意奈奎斯特采样定理[4]的条件下,能够得出如下定论:输出正弦波等接连信号时,DDS能够完成恣意份额的分频;输出方波等存在跳变沿的信号时,这类信号的周期只能是体系时钟周期的整数倍,不然呈现重影。
2 方波改善算法的研讨与完成
为了处理方波重影问题,可从时域的视点剖析。将若干个不同周期的方波叠加到一同,可得示意图如图3所示。
图3 中,使a 点和d 点向下颤动,使b 点和c 点向上颤动,屡次叠加后可有用弱化方波重影,乃至彻底消除。可是,怎么精确地判别a、b、c、d 四个点,成为完成这一办法的最大妨碍。
仔细观察图3和图2,引进时钟节拍的概念,便能找到依据判别a、b、c、d四个点。首要,界说方波的周期和上升沿时间,以50%占空比为例,这两个数值可别离表明为:
其间,ceil表明朝正无量方向取整,floor表明朝负无量方向取整,均为Matlab运算符[5].
当体系时钟的频率为200 MHz时,以输出3 MHz方波为例,计算成果如表1所示。
类似于图3,3 MHz方波的示意图如图4所示。
从图4 能够看出,a 点和b 点产生在时钟节拍为33的方位,c点和d点产生在时钟节拍为65的方位。当呈现c点时,意味着本次方波的周期较小,下一个时钟节依据图3 的规则,在时钟节拍为grl 和gda 的方位,运用原始方波信号的凹凸电平信息,就能得到a、b、c、d四个点。假定DAC的位数为14位,方波改善算法的完成进程可分为以下三个过程:
第一步,界说一个计数器,并以相位累加器的进位输出信号作为清零信号,即相位累加器每溢出一次,该计数器就清零一次。因而,该计数器的计数值就表明图4中的时钟节拍。
第二步,界说一个状况机,假定计数器的计数值为num,简化后的状况搬运图如图5所示。
状况RISE符号的时钟节拍是grl,处于此状况时,假如原始方波信号为高电平,便得到a点;假如原始方波信号为低电平,便得到b点。状况DOWN符号的时钟节拍是gda,处于此状况时,假如原始方波信号为低电平,便得到c点;假如原始方波信号为高电平,便得到d点。
第三步,界说一个随机变量random,random的改变规模是0~2 048,可通过11位m序列完成之。运用verilog言语的位拼接运算符[6],在a 点和d 点将送给DAC 的数据界说为10 240 加random,即“{3’b101,random}”;在b 点和c 点将送给DAC 的数据界说为4 096 加random,即“{3’b010,random}”.
3 测验与总结
运用新的方波算法后,可得测验成果如图6所示。
比照图6和图1能够看出,方波重影的宽度从5 ns缩短至3 ns,而且上升沿呈实心状,不再由两条边缘组成。
另一方面,图6和图1中,方波的上升时间均为15 ns左右,这说明方波改善算法并没有导致上升时间的添加。