Vivado IP 核 DDS 配置与原理详解
直接数字合成器(DDS)或数控振荡器(NCO)是许多数字通信系统的重要组成部分。正交合成器用于构建数字下行和上行转换器和解调器,并实现各种类型的调制方案,包括 PSK(相移键控)、FSK(频移键控)和 MSK(最小移位键控)。
数字生成复值或实值正弦波的常用方法是采用查找表方案。查找表存储正弦波的样本,数字积分器用于生成合适的相位参数,该参数由查找表映射到所需的输出波形。简单的用户界面可接受系统级参数,如所需的输出频率和生成波形的杂散抑制。
模式配置
Phase Generator
相位发生器由一个累加器和一个可选的加法器组成,用于添加相位偏移。在定制内核时,相位增量(PINC)和相位偏移(POFF)可独立配置为固定、可编程(使用 CONFIG 通道)或流式(使用输入 PHASE 通道)。
SIN/COS LUT
当仅配置为正弦/余弦 LUT 时,不执行相位发生器,PHASE_IN 信号使用输入 PHASE 通道输入,并使用查找表转换为正弦和余弦输出。通过利用正弦波形的对称性,实现了高效的内存使用。内核可配置为仅正弦输出、仅余弦输出或两者(正交)输出。每个输出可独立配置为负输出。使用可选的泰勒级数校正功能可提高精度,利用支持 DSP 片的 FPGA 系列实现高速运行下的高 SFDR。
Phase Generator and SIN/COS LUT (DDS)
相位发生器与 SIN/COS LUT 配合使用,可提供相位截断 DDS 或泰勒级校正 DDS。可在这两个模块之间添加一个可选的抖动发生器,以提供相位抖动 DDS。
系统设置
- System Clock (MHz) 系统时钟:50MHz 工作时钟,即 50MHz 采样率。
- Number of Channels 通道数量:设为 1,单通道模式,通道的采样频率等于采样时钟 50MHz。如果设置多通道模式,那么每个通道的频率为 50MHz/N,N 为通道数量。
- Mode of Operation 模式:Standard 标准模式,Rasterized 栅格模式。两种情况下,输出的频率和频率分辨率、相位增量等参量的计算方式不同。
- Standard 模式下计算出来的相位增量可能是小数,而在 FPGA 中要对相位进行截断取整,存在相位误差,对噪声要求较高的场合,可以使用 8 处的噪声整形配置来弥补,使用相位抖动(Phase Dithering)或者泰勒级数纠正(Taylor Series Correct)来补偿相位误差。
- Rasterized Mode 配置下,相位增量一定是整数,不存在截断效应,没有 Standard 模式下的时间基抖动。
一般情况下,多选择 Standard 标准模式。
system Parameters 系统参数:包括 System parameters 和 Hardware parameters。一般设置 System parameters。
系统参数
- Spurious Free Dynamic Range 无杂散动态范围:对应幅度,对应 M_AXIS_DATA 通道,SFDR 越大,用于表示幅度的数据的位宽越大。
- Frequency Resolution 配置频率分辨率:对应相位的增量配置、位宽,对应 M_AXIS_PHASE 通道,频率分辨率越小,用于表示相位的数据的位宽越大。
- Noise Shape 噪声整形:
- Auto:根据设计的 SFDR 参数自动选择是否使用整形。
- None:不整形。
- Phase Dithering:相位抖动,在使用相位截断技术时,产生随机的噪声来使得量化误差随机。
- Phase Increment Programmability(相位增量可编程性):
- Fixed(固定):相位增量为常数,输出频率不可动态调整。
- Programmable(可编程):相位增量可通过外部接口实时修改,实现动态调频(最常用)。
- Streaming(流式):相位增量以数据流形式持续输入,适合高速连续频率变化。
- Resync(重同步):勾选后,当参数更新时自动插入重同步周期,使相位平滑过渡,避免信号出现相位跳变,适用于对相位连续性要求高的应用。
- Phase Offset Programmability(相位偏移可编程性):


