首页> 中国专利> 一种扩展DDS输出信号频率范围的方法和系统

一种扩展DDS输出信号频率范围的方法和系统

摘要

本发明公开了一种扩展DDS输出信号频率范围的方法和系统,该方法首先译码出频率控制字并根据控制字的变化情况生成复位信号,接着根据频率控制字和复位信号实时得到N路DDS IP核的初始相位,然后根据频率控制字、复位信号、初始相位生成N路DDS数据,并生成用来标识N路DDS数据之间相位关系的相位标志信号,最后根据标识信号对DDS数据重新排列组合成连续信号,并转换成模拟信号输出。所述系统包括频率控制字产生模块、初相管理模块、数据产生模块、数据后处理模块和数模转换模块。本发明解决现有DDS技术产生信号频率范围受限与工作时钟的问题,使得输出信号频率范围可达到工作时钟的数倍。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-07-07

    未缴年费专利权终止 IPC(主分类):H03L 7/18 专利号:ZL2015103172593 申请日:20150610 授权公告日:20180508

    专利权的终止

  • 2018-05-08

    授权

    授权

  • 2015-10-21

    实质审查的生效 IPC(主分类):H03L7/18 申请日:20150610

    实质审查的生效

  • 2015-09-23

    公开

    公开

说明书

技术领域

本发明属于信息传输与处理技术、信号发生器和设备全数字化领域,特别涉及了一种扩展DDS输出信号频率范围的方法和系统。

背景技术

在信号发生器、设备全数字化等领域,系统产生信号的主要方法是直接数字频率合成技术(DDS),即利用数字处理技术来构成一个输出信号的波形,然后通过一个数模转换器来重构出一个正弦波或者所要求的信号波形。DDS技术能够提供优异的相位噪声,频率分辨率高,这个主要受限于DDS相位累加器的长度。

根据DDS的产生原理,DDS的主要缺点是输出频率范围窄,仅为输入时钟频率的一半,当利用FPGA(Field-Programmable Gate Array,现场可编程门阵列)+DAC(数模转换)技术产生DDS信号时,输出频率范围受限于FPGA器件的工作时钟,如Xilinx公司最新V7系列FPGA的DDS IP核工作时钟最快是550MHz,则输出DDS信号的最高频率仅为275MHz。较窄的输出频率范围不能满足宽带信号产生等场合的应用,从而在宽带信号领域不能发挥DDS技术低相噪、高分辨率且频率可控制的优势。

发明内容

为了解决上述背景技术提出的技术问题,本发明旨在提供一种扩展DDS输出信号频率范围的方法和系统,解决现有DDS技术产生信号频率范围受限与工作时钟的问题,使得输出信号频率范围可达到工作时钟的数倍。

为了实现上述技术目的,本发明的技术方案为:

一种扩展DDS输出信号频率范围的方法,该方法利用N路并行的DDS输出数据进行频率范围扩展,将输出信号频率范围扩展N倍,其中N取2的幂次方,包括以下步骤:

(1)将来自上位机的频率控制指令译码为32位二进制频率控制字,并根据该频率控制字的变化情况产生复位信号;

(2)根据频率控制字和复位信号实时管理N路DDS IP核的初始相位的动态变化;

(3)根据频率控制字、复位信号以及初始相位,利用N路DDS IP核生成N路DDS数据,并生成用来标识N路DDS数据之间相位关系的标志信号;

(4)根据标识信号对DDS数据重新排列组合,使得组合后DDS数据的相位连续;

(5)将DDS数据转换成模拟数据输出。

一种扩展DDS输出信号频率范围的系统,包括频率控制字产生模块、初相管理模块、数据产生模块、数据后处理模块和数模转换模块;

所述频率控制字产生模块包括频率控制数据接收单元、译码器和复位信号产生单元;所述频率控制数据接收单元接收上位机的指令,并根据通信协议解析出输出频率值;所述译码器将该输出频率值译码为32位二进制的频率控制字;所述复位信号产生单元根据频率控制字的变化产生复位信号,若本时钟周期输入的频率控制字相较于前一周期输入的频率控制字发生改变,则复位信号产生单元输出的复位信号为1,否则输出的复位信号为0;

所述初相管理模块根据频率控制字产生模块输出的频率控制字和复位信号产生N路DDS数据各自的初始相位值,以N个时钟周期作为初相管理模块的一个初相管理阶段,当复位信号为1时,初相管理模块采集此时的频率控制字,并在该初相管理阶段内输出N路DDS数据各自的初始相位值,相邻两个初相管理阶段 输出的初始相位值是连续的;

所述数据产生模块包括N路DDS IP核运算单元和标志信号产生单元,所述N路DDS IP核运算单元根据频率控制字、复位信号和N路DDS数据各自的初始相位值生成N路DDS数据,所述标志信号产生单元生成相位标志信号,用以标志N路DDS数据之间的相位关系;

所述数据后处理模块包括格式转换单元和相位排序单元,所述格式转换单元将N路DDS数据从补码二进制格式转换为偏移二进制格式;所述相位排序模块根据前述相位标志信号将转码后的N路相位不连续的DDS数据排列成相位连续的DDS数据;

所述数模转换模块将DDS数据转换为模拟信号输出。

其中,上述译码器的译码公式为,

Δθ=fout·232fclk

上式中,Δθ为二进制频率控制字所表示的十进制数值,fout为输出频率值,fclk为DDS IP核的工作时钟。

其中,上述复位信号产生单元包括时钟同步的比较器和延时器,比较器包括输入端口A和输入端口B,译码器生成的频率控制字分别送入比较器的输入端口A和延时器的输入端,延时器将频率控制字延时一个时钟周期后送入输入端口B,比较器根据输入端口A和输入端口B的值来输出复位信号,当输入端口A输入的值等于输入端口B输入的值时,比较器输出的复位信号为0,否则,比较器输出的复位信号为1。

其中,上述数据后处理模块还包括并串转换单元,所述并串转换单元将相位排序单元输出的N路并行的DDS数据转换为两路串行数据并送给数模转换模块。

其中,上述数模转换模块为AD9739。

采用上述技术方案带来的有益效果:

本发明可以根据用户需求实时改变输出信号频率范围,并能利用数字域处理优点对DDS输出幅频曲线进行校正,在不改变系统硬件的条件下控制输出信号的频率范围、幅度特性。另外,本发明可以根据应用需求选择频率控制字的位数,位数越宽,则输出信号的频率分辨率越高,系统引入的相位截断误差也会更低,满足在宽带雷达信号产生、射频仿真系统等方面的应用。本发明能将输出信号频率扩展为原来的N倍,且不影响输出信号的信躁指标,从而除了在宽带雷达等领域的应用,还可以广泛应用在宽带信号处理、宽带通信、宽带数模系统测试等领域。

附图说明

图1是本发明的系统结构框图;

图2是本发明的复位信号产生单元示意图;

图3是本发明的初相管理模块的示意图;

图4是本发明产生DDS数据的仿真图;

图5是本发明产生DDS数据的时序图;

图6是本发明相位排序前后DDS数据的相位关系图;

图7是本发明并串转换时序图。

具体实施方式

以下将结合附图,对本发明的技术方案进行详细说明。

本发明提供了一种扩展DDS输出信号频率范围的方法,该方法利用N路并行的、窄范围的DDS输出数据进行频率范围扩展,从而将输出信号频率范围扩展为原来的N倍,其中N取2的幂次方,包括以下步骤:

(1)将来自上位机的频率控制指令译码为32位二进制频率控制字,并根据该频率控制字的变化情况产生复位信号;

(2)根据频率控制字和复位信号实时管理N路DDS IP核的初始相位的动态变化;

(3)根据频率控制字、复位信号以及初始相位,利用N路DDS IP核生成N路DDS数据,并生成用来标识N路DDS数据之间相位关系的标志信号;

(4)根据标识信号对DDS数据重新排列组合,使得组合后DDS数据的相位连续;

(5)将DDS数据转换成模拟数据输出。

如图1所示本发明的系统结构框图,利用该系统来实现上述扩展DDS输出信号频率范围的方法。该系统由FPGA器件和数模转换模块组成,所述FPGA器件包括频率控制字产生模块、初相管理模块、数据产生模块和数据后处理模块。

频率控制字产生模块,将来自上位机的频率控制数据指令译码为32位二进制频率控制字送到初相管理模块,并根据频率控制字的变化情况产生复位信号rst_dds来控制初相管理模块和数据产生模块。

初相管理模块,根据频率控制字和复位信号来实时管理多路DDS IP核的初始相位的动态变化。

数据产生模块,根据频率控制字、复位信号和初始相位,利用DDS IP核生成DDS数据,并根据相位关系生成标志信号write_flag供数据后处理模块使用。

数据后处理模块,将补码格式数据变换为数模转换模块所需要的偏移二进制格式,然后根据write_flag信号表示的并行数据之间的相位关系对数据重新排列组合,使得组合后数据的相位连续,最后将数据送到到数模转换模块输出。

数模转换模块,将FPGA产生的数字信号转换为模拟信号输出。

下文对整个系统的工作过程进行详细叙述,为了方便说明,下文以8倍(即N取8)扩展DDS输出信号频率范围作为说明。

频率控制字产生模块,包括频率控制数据接收单元、译码器和复位信号产生 单元。频率控制数据接收单元接收上位机下发的指令,并根据JTAG/USB通信协议解析出输出频率值。译码器将该输出频率值译码为32位二进制频率控制字送到初相管理模块,并根据频率控制字的变化情况产生复位信号rst_dds来控制初相管理模块和数据产生模块。其中,译码器的译码公式为Δθ为二进制频率控制字b31b30…b0所表示的十进制数值,fout为接收到的输出频率值,fclk为DDS IP核的工作时钟,选择频率控制字为32位,则输出信号频率分辨率为fclk/232=0.559Hz。如图2所示复位信号产生单元的示意图,包括一个时钟同步的比较器和延时器,输入的频率控制字先经过比较器的输入端口A,再经过延时器送到初相管理模块和数据产生模块,同时,延时后的频率控制字送到比较器的输入端口B,与下一个周期输入的频率控制字进行比较,如果A=B,则控制字不变,复位信号rst_dds=0,否则,频率控制字输入改变,开始下一个频率的处理输出,复位信号rst_dds=1。

初相管理模块,根据频率控制字和复位信号来实时管理多路DDS的初始相位的动态变化,如图3所示,包括时钟同步的加法器、移位器、计数器和截断单元。根据DDS原理,当频率控制字为Δθ时,产生DDS数据是相位间隔为Δθ的离散采样数据。本发明中采用8路并行技术实现频率范围扩展时,前8个时钟周期,第一路输出8个相位间隔为Δθ、相位范围是[0,7Δθ]的离散数据,第二路输出8个相位间隔为Δθ、相位范围是[8Δθ,15Δθ]的离散数据,则第i路输出8个相位间隔为Δθ、相位范围是[(8i-8)·Δθ,(8i-1)Δθ]的离散数据,i=1,2,…,8;接下来的8个周期,第一路输出8个相位间隔为Δθ、相位范围是[64Δθ,64Δθ+7Δθ]的离散数据,第i路输出8个相位间隔为Δθ、相位范围是[64Δθ+(8i-8)·Δθ,64Δθ+(8i-1)Δθ]的离散数据。

根据以上方式,可在低工作时钟情况下产生高频率信号输出,并且产生的DDS数据相位连续,以8个时钟周期为一个初相管理的阶段,则每路DDS的初相动态变化情况为:每个阶段的初始相位值等于上一阶段初始相位值加上64Δθ。为了严格控制初相管理的阶段变化情况,利用一个8计数器进行计数,计数器在每个时钟周期加1,当最大加到7时又变为0,重新累加。阶段开始时计数0,阶段结束时计数为7。移位器是利用FPGA逻辑运算的优势,对数据的乘除操作可通过移位操作实现,通过对频率控制字的移位操作可以得到8路DDS数据的初相值。加法器是对每个初相管理阶段的相位进行累加,当计数器值等于7时,则在下一个时钟周期对每个DDS的初相在原来基础上加64Δθ。在图3中,A0为频率控制字刚发生改变时每路DDS的初相值,Ainc为每个初相管理阶段的相位累加值,cnt为时钟计数器。在初相管理第一阶段,即前8个时钟周期,加法器输出等于A0,当cnt又回到0时,加法器输出等于B+Ainc。加法器输出的是38位的数据,通过截断单元将38位数据截断成32位的初始相位值

数据产生模块,包括8路DDS IP核运算单元和标志信号产生单元,8路DDS IP核运算单元根据频率控制字、复位信号和初始相位,生成8路DDS数据 标志信号产生单元根据相位关系生成标志信号write_flag供数据后处理模块使用。

如图4所示产生DDS数据的仿真图,其中PINC_IN为频率控制字输入,POFF_IN为初相值输入,SCLR为复位信号(rst_dds)输入,SINE为输出的DDS数据,PHASE_OUT为输出数据对应的相位,Ready为DDS工作有效后的标志信号。如图5所示产生DDS数据的时序图,当Ready有效时(Ready=1)开始计数,当过8个时钟周期后,write_flag变为高电平信号,否则一直处于低电平状态。

数据后处理模块,包括格式转换单元、相位排序单元和并串转换单元,格式 转换单元将补码格式数据变换为数模转换单元所需要的偏移二进制格式,然后相位排序单元根据write_flag信号表示的并行数据之间的相位关系对数据重新排列组合,使得组合后数据的相位连续,最后通过并串转换模块将数据送到到DAC器件输出。

格式转换单元的具体实现方式为对DDS输出的数据的最高位与1异或取反,其他位与0异或保持不变,最后得到数据datai(十进制)。

如图6所示相位排序前后DDS数据的相位关系示意图,相位排序单元是以write_flag信号为相位排序起始信号,将8路相位不连续的DDS数据排列成相位连续的并行数据,具体实现包括一个16计数器和8x16个14位寄存器。

计数器的操作:当write_flag信号有效(变为1)后,计数器从0开始计数,即datareg_cnt=0,当datareg_cnt计数到15后重新从0开始计数。

寄存器的操作步骤:

为每个DDS IP i分配16个14位寄存器,即reg_dout_i_1、reg_dout_i_2、…、reg_dout_i_16,则8个并行DDS总共需要8组16个14位的寄存器,每个DDS对应其中一组寄存器。

当datareg_cnt=0时,将DDS产生的数据datai分别寄存到reg_dout_i_1;然后将DDS 1对应的第一组寄存器中的高8个寄存器中的值送给并串转换单元,即将reg_dout_1_9、…、reg_dout_1_16中的8x 14bit数据送给并串转换单元。

当datareg_cnt=1时,将DDS产生的数据datai分别寄存到reg_dout_i_2;然后将DDS 2对应的第一组寄存器中的高8个寄存器中的值送给并串转换单元,即将reg_dout_2_9、…、reg_dout_2_16中的8x 14bit数据送给并串转换单元。

依次对datareg_cnt加1,当datareg_cnt=7时,将DDS产生的数据datai分别寄存到reg_dout_i_8;然后将DDS 8对应的第一组寄存器中的高8个寄存器中的值送给并串转换单元,即将reg_dout_8_9、…、reg_dout_8_16中的8x 14bit数 据送给并串转换单元。

当datareg_cnt=8时,将DDS产生的数据datai分别寄存到reg_dout_i_9;然后将DDS 1对应的第一组寄存器中的低8个寄存器中的值送给并串转换单元,即将reg_dout_1_1、…、reg_dout_1_8中的8x 14bit数据送给并串转换单元。

依次对datareg_cnt加1,当datareg_cnt=15时,将DDS产生的数据datai分别寄存到reg_dout_i_16;然后将DDS 8对应的第一组寄存器中的低8个寄存器中的值送给并串转换单元,即将reg_dout_8_1、…、reg_dout_8_8中的8x 14bit数据送给并串转换单元。

当上述一个计数器周期执行结束后,计数器从0重新开始计数,寄存器的操作转至datareg_cnt=0的操作步骤。

并串转换单元是将速度较慢的8路并行数据转换为速度较快的两路串行数据,其串行数据的速度为并行数据速度的4倍。本发明中的并串转换设计是基于Xilinx OSERDES IP核,如图7所示,将输入4路14bit、速度为300MHz的并行DDS数据(D1~D4),输出为一路14bit、速度为1.2GHz的串行数据。并串转换单元利用两组OSERDES,将8路300MHz数据转换为2路1.2GHz数据送给数模转换模块。

数模转换模块,将并串转换单元输出的2路串行数据转化为模拟信号输出,本发明采用AD9739。

以上实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号