DDS载波信号生成
DDS IP核详细介绍
Xilinx直接数字频率合成(DDS)IP核用来实现面向多种应用的正弦波信号源。DDS包括一个相位生成器和一个SIN/COS查找表,可以单独使用或组合使用。
DDS IPcore包含Phase Generator和SIN/COS查找表两部分,这两部分可以单独使用,也可以组合使用。
DDS的结构如下:
DDS Core 的结构如下:
由两部分构成,即Phase Generator和Sin/Cos LUT。
Ipcore的接口情况如下图所示:
CORE Generator 用户配置参数
1:配置选项:选择DDS、Phase Generator或者SIN/COS LUT
2:系统要求:DDS上下文的参数由该组参数设置(当1配置选项将DDS配置为SIN/COS LUT Only 时,改组参数不需要配置)
2.1系统时钟设置
2.2通道数
2.3 每个通道频率
3:参数选择:DDS关键参数,可选系统参数和硬件参数。当1配置选项将DDS配置为SIN/COS LUT Only 时,该参数被强制配置成硬件参数)
相位宽度计算公式。
4:Phase Increment Programmability:选择PINC值的设置,分别有固定的,可编程的和数据流三种。
5:Phase Offset Programmability:选择POFF值得设置,分别有固定的,可编程的和数据流三种。
6:输出选择:可选SIN或COS,也可以两者都选。
7:极性:negative sine 和negative cosine两种可选。
8:幅度模式:有full range和unit circle两种。其中full range时针对通信应用,在此应用中,需要在两种补码表示中求出最大幅度。其中unit circle应用于对于dds输出的精确幅度非常重要的应用,例如ft旋转因子的产生。
9:实现选择:主要包含存储类型选择(Distributed ROM 和 Block ROM),优化目标(面积和速度),DSP48USE
10:延迟选择(Auto 和 Configurable)
DDS设计实现:只采用SIN/COS 实现
在初相位固定模式中,我们使用xilinx自带的软核dds compiler4.0实现,在ip核配置时,在配置选项中,我们的选择是 SIN COS LUT only,但是该模式不支持初相位可变可配;为满足工程需求,要实现初相位可变可配,在ip核的配置选项时,我们选择Phase Generator and SIN COS LUT选项,下面将详细介绍各配置参数的意义
模式选择,时钟设置和输入输出位宽
模式配置选择Phase Generator and SIN COS LUT选项,系统时钟设置为100MHz,通道数为1,输入位宽为25位,输出位宽为16位宽。
PINC和POFF配置和输出正余弦选择
其中PINC为输入相位增量,POFF为输入相位偏移;两者可选为固定值、可编程的和数据流三种格式,根据相位增量和相位偏移可变可配的要求,可编程和数据流两种格式均满足要求,下面对这两种格式进行介绍。
可编程格式:
1) 接口
数据输入端口为DATA,通过寄存器选择信号REG_SELECT来寻址PINC和POFF两个寄存器;
2) 时序
首先在DATA端口输入相位增量数据,通过将REG_SELECT设置为0来寻址PINC寄存器;再将REG_SELECT设置为1来寻址POFF寄存器,当CE有效时开始工作;
3) 输出相位
在第n个周期输出的相位为:
连续输入流格式
1) 接口
相位增量和相位偏移分别通过PINC_IN和POFF_IN两个端口输入;
2) 时序
3) 输出相位
在第n个周期输出的相位为:
综上所述,连续输入流格式可变可配,控制简单,且适用于调制频率和/或相位偏移,所有最终ip核配置为连续输入流格式。
可选端口和硬件实现
调用DDS ip核,设计实现DDS模块;
配置PINC和POFF,PINC(决定输出正弦余弦的频率)和POFF(决定初相位)均为定值;
ISE软件联合modelsim仿真,将Modelsim仿真结果用模拟信号形式表示;
修改POFF的值,进行仿真。