累加器的概念
在中央处理器中,累加器(accumulator)是一种寄存器,用来储存计算产生的中间结果。如果没有像累加器这样的寄存器,那么在每次计算(加法,乘法,移位等等)后就必须要把结果写回到内存,也许马上就得读回来。然而存取主存的速度是比从算术逻辑单元到有直接路径的累加器存取更慢。
相位累加器原理
一个正弦波,虽然它的幅度不是线性的,但是它的相位却是线性增加的。
DDS正是利用了这一特点来产生正弦信号。如图2,根据DDS的频率控制字的位数N,把360°平均分成了2的N次等份。
图2.相位累加器原理
假设系统时钟为Fc,输出频率为Fout。每次转动一个角度360°/2N,则可以产生一个频率为Fc/2N的正弦波的相位递增量。那么只要选择恰当的频率控制字M,使得Fout/Fc=M/2N,就可以得到所需要的输出频率Fout,
Fout=Fc*M/2N,相位幅度转换通过相位累加器,我们已经得到了合成Fout频率所对应的相位信息,然后相位幅度转换器把0°~360°的相位转换成相应相位的幅度值。比如当DDS选择为2Vp-p的输出时,45°对应的幅度值为0.707V,这个数值以二进制的形式被送入DAC。这个相位到幅度的转换是通过查表完成的。
DAC输出代表幅度的二进制数字信号被送入DAC中,并转换成为模拟信号输出。注意DAC的位数并不影响输出频率的分辨率