2.2.2 ROM查询表

ROM中所存储的数据是数字波形的幅值,在一个系统时钟周期内,相位累加器将输出一个位宽为L的序列对其进行寻址,经过低通滤波器后得到所需要的波形。若相位累加器的输出序列的位宽L=16,ROM中存储的数据位宽为M=16,可以计算出ROM的存储量为2L×M=1048576bits,虽然一块FPGA开发芯片上提供了大量的ROM,可以显著提高输出信号频率精确度和信号幅值准确性,但这样会使成本提高、功耗增大。

在保证输出信号具有良好频率分辨率的前提下,以产生正弦信号为例,考虑到基于DDS产生的正弦波具有周期性,因此本设计的ROM中存储1/4周期正弦波。如图2所示为存储1/4周期正弦波形ROM查询表设计。利用正弦信号的对称性,通过改变ROM存储器地址及对其输出端控制,最终得到整周期正弦信号。

3 、仿真结果及分析

3.1 DDS单元仿真结果及分析

3.1.1 仿真参数

为分析本设计中DDS所产生频率的精确度,现使用Xilinx ISE 8.11中DDS IP Core进行对比,在同等仿真参数条件下,分别对本设计的DDS和DDS IP Core进行仿真测试。表1中分别给出基于本设计DDS和DDS IP Core的仿真参数。

在FPGA硬件平台通过采用DDS技术实现跳频系统的设计

3.1.2 仿真结果及分析

如图3所示,clk是系统时钟,new_dds_sine为在频率控制字k=16时基于本设计DDS产生的频率为1.5625MHz(理论值)的正弦波,dds_ip_ core_sine为基于DDS IP Core产生的频率为1.5625MHz(理论值)的正弦波。

在FPGA硬件平台通过采用DDS技术实现跳频系统的设计

在FPGA硬件平台通过采用DDS技术实现跳频系统的设计

图4给出在k为1~16时,本设计的DDS所产生信号的频率和DDS IP Core所产生信号的频率与理论频率值的对比。从图中可以看出,本设计DDS所产生的信号频率与理论频率值比较接近,且本设计DDS中ROM查询表中存储的点数少,从硬件的角度考虑更加节省资源,能耗更低。

3.2 基于FPGA跳频信号仿真结果

图2中给出了基于本设计DDS跳频信号生成的总体设计图。共由四部分组成:系统时钟、分频器、逻辑地址控制单元及DDS单元。跳频信号的产生是通过随机地改变频率控制字来达到改变信号的输出频率,图5给出了系统工作流程图。