dds

本人需要利用Vivado软件中的DDS核生成一个正弦信号。由于后期还要生成线性调频信号,如果直接编写代码生成比特流文件下载到板子上进行验证会使工作的效率大大下降,所有想利用Vivado软件功能仿真,这样可以极大的提高效率。Vivado软件自带仿真功能,不需要对IP核进行特别的处理,所以很方便。

DDS核的基本原理,看以下一个链接: https://www.xilinx.com/support/documentation/ip_documentation/dds_compil...

此处对DDS核的配置如下:DDS核命名DDS_Signal


作者:Peter Delos和Jarret Liner

简介
在雷达应用中,相位噪声是要求高杂波衰减的系统的关键性能指标。相位噪声是所有无线电系统都会关心的问题,但是雷达相比通信系统来说特别要求非常靠近载波频率的频偏位置的相位噪声性能。

这些高性能系统中的系统设计人员将选择超低相位噪声振荡器,并且从噪声角度来讲,信号链的目标就是使振荡器相位噪声曲线的恶化最小。这就要求对信号链上的各种元器件做残余或加性的相位噪声测量。

最近发布的高速数模转换器(DAC)产品对于频率转换阶段需要的任何LO的波形生成和频率创建都非常有吸引力。然而,雷达目标会挑战DAC相位噪声的性能。

图1. AD9164相位噪声的改进

图1. AD9164相位噪声的改进

基于Vivado调用ROM IP core设计DDS

DDS直接数字式频率合成器(Direct Digital Synthesizer)

下面是使用MATLAB生成正弦波、三角波、方波的代码,直接使用即可。
t=0:2*pi/2^12:2*pi
y=0.5*sin(t)+0.5;
r=ceil(y*(2^8-1)); %将小数转换为整数,ceil是向上取整。
fid = fopen('sin.coe','w'); %写到sin.coe文件,用来初始化sin_rom
fprintf(fid,'MEMORY_INITIALIZATION_RADIX=10;\n');
fprintf(fid,'MEMORY_INITIALIZATION_VECTOR=\n');
for i = 1:1:2^12
fprintf(fid,'%d',r(i));
if i==2^12
fprintf(fid,';');
else
fprintf(fid,',');
end
if i%15==0
fprintf(fid,'\n');
end
end
fclose(fid);
t=1:1:2^12;
y=(t<=2047);
r=ceil(y*(2^8-1));
fid = fopen('square.coe','w'); %写到square.coe,用来初始化rom_square

作者:Ken Gentile

简介
现代直接数字频率合成器(DDS)通常利用累加器和数字频率调谐字(FTW)在累加器输出端产生周期性的N位数字斜坡(见图1)。此数字斜坡可依据公式1定义DDS的输出频率(fO),其中fS为DDS采样速率(或系统时钟频率)。

DDS给定时,组成FTW的位数(N)定义了fO的最小可能变化,这发生在FTW值仅更改最低有效位(LSB)时。也就是说,FTW中的1 LSB变化定义了DDS的调谐分辨率。例如,N = 32的DDS的调谐分辨率高于N = 24的DDS。为了证实DDS的极佳调谐能力,以AD9912为例,N = 48产生的调谐分辨率为1/248(即1/281,474,976,710,656)。事实上,fS= 1 GHz时,AD9912产生的频率调谐分辨率约为3.6 µHz(0.0000036 Hz)。

基于FPGA的改进结构的DDS设计与实现

作者:王 硕,马永奎,高玉龙,张士伟,赵东来 哈尔滨工业大学 通信技术研究所

摘 要: 主要介绍了数字频率合成器的原理和杂散来源,给出了节约存储空间的ROM表的压缩算法,采用相位抖动和平衡DAC方法对DDS结构进行了改进,抑制了相位截断误差和减小了DAC非理想特性的影响。仿真分析了用于相位抖动的随机序列周期性对杂散的影响,最后基于FPGA平台实现了改进结构的DDS,并对结果进行了测试。测试结果表明DDS用作跳频器时,杂散抑制优于40 dBc。采用此种方法设计的DDS杂散抑制度高,稳定性好,性能优越。

0 引言

跳频系统由于抗干扰能力强被广泛应用,其中最重要的器件为频率合成器,它决定了系统的性能。越来越多的设备都依赖于频率合成技术,所以频率源可以称作为许多电子系统的“心脏”。数字频率合成器(Direct Digital Synthesizer,DDS)由于具有频率分辨率高、转换时间快、相位噪声低等传统技术无法实现的优点,在频率合成技术领域中占有重要地位。

Xilinx DDS IP设置

DDS(Direct Digital Frequency Synthesizer)直接数字频率合成器

本文主要介绍如何调用Xilinx的DDS IP核生成某一频率的Sin和Cos信号。

1、相关参数的介绍及求解

1)DDS输出频率

2)频率分辨率

3)相位增量

2、具体实例

1) 相关数值计算

关于DDS的几点理解

DDS的理解关键在于分清相位累加器、ROM查找表和DAC的位数的不同,如果将上述三者的位数混淆的话就很难理解DDS的原理。

直接数字频率合成器DDS(Direct Digital Synthesizer)是从相位概念出发直接合成所需波形的一种频率合成技术,通过控制相位的变化速度,直接产生各种不同频率、不同波形信号的一种频率合成方法。DDS 的基本结构如下图 所示,它主要由相位累加器、正弦ROM 表、D/A 转换器和低通滤波器构成。

用FPGA实现DDS任意波形发生器

DDS直接数字式频率合成器(Direct Digital Synthesizer),相信所有人看到这个名字就觉得不会陌生。有些资料讲述的方式太高大上,不少人一时半会接受不了。本篇文章从双口RAM入手,由浅入深脱掉DDS高大上的外衣。

基本原理框图:

两个关键术语:
a. 相位累加器:Phase = Phase + freq_ctrl,可以暂且理解为i = i + 1一样的东西。
b. 频率控制字:freq_ctrl,这个东西的值直接影响输出信号的频率。

直接数字频率合成器的FPGA实现

1 DDS结构原理

  DDS是一种从相位概念出发直接合成所需波形的数字频率合成技术,主要通过查找波形表实现。由奈奎斯特抽样定理可知,当抽样频率大于被抽样频率的2倍时,通过抽样得到的数字信号可通过一个低通滤波器还原成原来的信号。

  DDS的工作原理为:在参考时钟的驱动下,相位累加器对频率控制字进行线性累加,得到的相位码对波形存储器寻址,使之输出相应的幅度码,经过模/数转换器得到相应的阶梯波,最后再使用低通滤波器对其进行平滑,得到所需频率的平滑连续的波形,其结构如图1所示。

基于FPGA的传统DDS方法优化设计

随着科技的飞速发展,对信号发生器的要求越来越高,例如频率分辨率高、变换迅速稳定、相位连续、噪声低、易于扩展集成等。如果用传统分立式模拟电路来实现,难度非常大。为解决这个问题,美国学者J.Tierncy、C.M.Rader以及B.Glod于1971年提出直接数字合成器(Direct Digital Synthesizer,DDS)技术。DDS作为一种先进的数字信号处理技术,能很轻松地满足以上要求;并且由于是全数字化信号,能非常容易地对其输出信号实现AM、PM、FM调制,完全满足数字通信系统中的要求。正因为如此,DDS在许多领域都得到了广泛的应用。

同步内容