1. DDS 原理简介
DDS 技术是从波形相位概念出发,直接对相应的波形数据进行抽样,得到不同的相位,通过 DAC 转换成模拟波形,最后通过低通滤波器平滑输出所需频率的波形。

两个重要参数解释:
频率控制字 FTW:一般为整数,数值大小控制输出信号的频率大小,数值越大输出信号频率越高。实际输出的信号的频率与频率控制字关系为:
频率控制字 = 脉冲频率 * 2^N / 时钟频率
相位控制字 P_WORD:一般为整数,数值大小控制输出信号的相位偏移,主要用于相位的信号调制。
一个普通的 DDS 设计应该由:相位累加器,相位调制器,波形数据表,DAC 转换组成。
相位累加器:是整个 DDS 的核心,用于控制波形的相位累加,组成完整的波形显示。 相位累加器的输入为频率控制字,表示相位增量,其位宽为 N。

相位调制器:接收相位累加器输出的相位码,在这里加上一个相位偏移值 P,主要用于信号的相位调制。
波形数据表:波形数据表 ROM 中存有一个完整周期的正弦波信号。例如:假设波形数据 ROM 的地址位宽为 12 位,储存数据位宽为 8 位,即 ROM 有 2^12=4096 个存储空间,每个存储空间可以存储 1 字节数据。将一个周期的正弦波信号,沿横轴等间隔采样 4096 次,每次采集的信号幅度用 1 字节数据表示,最大值为 255,最小值为 0。将 4096 次采样结果按顺序写入 ROM 的 4096 个存储单元,一个完整周期正弦波的数字幅度信号就写入了波形数据表 ROM 中。波形数据表 ROM 以相位调制器传入的相位码为 ROM 读地址,将地址对应存储单元的电压幅值数字量进行输出。

DAC 转换:将输入的电压幅值数字量转换为模拟量输出。根据奈奎斯特采样定理,频率控制字的最大值应小于 2^N / 2。

运行流程为:

相位累加器得到的相位码是如何实现 ROM 寻址的呢?
对于 N 位的相位累加器,其对应的相位累加值为 2^N,如果正弦 ROM 中存储单元的个数也是 2^N 的话,那这个问题就很容易解决,但是这对 ROM 的存储容量要求较高。


















