CN102497205B - 一种改进型dds信号发生器及其信号发生方法 - Google Patents

一种改进型dds信号发生器及其信号发生方法 Download PDF

Info

Publication number
CN102497205B
CN102497205B CN 201110384207 CN201110384207A CN102497205B CN 102497205 B CN102497205 B CN 102497205B CN 201110384207 CN201110384207 CN 201110384207 CN 201110384207 A CN201110384207 A CN 201110384207A CN 102497205 B CN102497205 B CN 102497205B
Authority
CN
China
Prior art keywords
phase accumulator
fpga
acc
signal
phase
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN 201110384207
Other languages
English (en)
Other versions
CN102497205A (zh
Inventor
黄继业
高明煜
黄健
邹宏
何志伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN 201110384207 priority Critical patent/CN102497205B/zh
Publication of CN102497205A publication Critical patent/CN102497205A/zh
Application granted granted Critical
Publication of CN102497205B publication Critical patent/CN102497205B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Abstract

本发明公布了一种改进型DDS信号发生器及其信号发生方法。目前DDS信号发生器要产生低频频率信号和实现低频率步进,需要使用很大的存储空间。本发明中DDS信号发生器包括晶振、FPGA、SRAM和D/A转换器。FPGA接收晶振输入的时钟信号和外部输入的频率字,FPGA进行处理后输入至SRAM,SRAM的输出与D/A转换器信号连接。FPGA由锁相环、相位累加器和除法器组成;锁相环接收晶振输入的时钟信号,锁相环输出的信号作为相位累加器的时钟,相位累加器接收外部输入的频率字,相位累加器的输出作为除法器的输入,除法器输出信号作为FPGA的输出。本发明减小了波形存储器的容量,降低了频率步进值。

Description

一种改进型DDS信号发生器及其信号发生方法
技术领域
本发明属于仪器仪表领域,涉及一种改进型DDS信号发生器及其信号发生方法。
背景技术
DDS信号发生器,即直接数字式频率合成器,与传统的频率合成器相比,DDS信号发生器具有低成本、高分辨率和快速转换时间等优点,广泛使用在典型与电子仪器领域。当前的DDS信号发生器相位累加器输出数据直接送入存储器地址输入,导致所需要的波形存储器容量大,且频率步进值大,不容易调节。
发明内容
本发明的目的在于,针对传统的DDS信号发生器,提出一种改进型DDS信号发生器及其信号发生方法,旨在减小频率步进值,节省存储空间。
一种改进型DDS信号发生器,包括晶振、FPGA、SRAM和D/A转换器。FPGA接收晶振输入的时钟信号和外部输入的频率字,FPGA进行处理后输入至SRAM,SRAM的输出与D/A转换器信号连接。
所述的FPGA由锁相环、相位累加器和除法器组成;锁相环接收晶振输入的时钟信号,锁相环输出的信号作为相位累加器的时钟,相位累加器接收外部输入的频率字,相位累加器的输出作为除法器的输入,除法器输出信号作为FPGA的输出。
利用上述的DDS信号发生器产生DDS信号的方法包括以下步骤:
步骤A1:将输入到FPGA频率为ƒx 的时钟输入,经锁相环,输出产生频率为ƒclk的CLK_DIV 信号,其中ƒclk频率为ƒx频率的十分之一。
步骤A2:FPGA将外部输入的频率字存入FPGA内建的REG_FW步长寄存器中,将输入的相位初始值存入FPGA内建的REG_PHASE相位寄存器中。
步骤A3:在FPGA中内建相位累加寄存器REG_ACC,设定相位累加器寄存器REG_ACC的初始值为REG_PHASE相位寄存器所保存的数值。
步骤A4:相位累加器寄存器REG_ACC在CLK_DIV信号的上升沿时,以REG_FW步长寄存器中的数值为步长自增,并将相位累加器寄存器REG_ACC对累加器模值取模,即数值M_MAX取模,并将所得的数值存入相位累加器寄存器REG_ACC。
步骤A5:取出相位累加器寄存器REG_ACC中的数值,将相位累加器寄存器REG_ACC的数值乘以36000,再整除累加器模值M_MAX后赋值给正弦ROM存储表地址寄存器ROM_ADDR;所述的正弦ROM存储表存储在SRAM中。
步骤A6:将正弦ROM存储表内地址为ROM_ADDR中存储的数据输出到D/A转换器的输入端,D/A转换器的输出即为DDS信号。
所述的相位累加器寄存器REG_ACC的取模运算实现方法具体是:
步骤B1:判断相位累加器寄存器REG_ACC中的数值是否大于累加器模值M_MAX,如果是则执行步骤B2,否则执行步骤B3。
步骤B2:将相位累加器寄存器REG_ACC中的数值减去累加器模值M_MAX后赋值给相位累加器寄存器REG_ACC。
步骤B3:相位累加器寄存器REG_ACC中的数值保持不变。
进一步说,ƒx时钟输入频率为36MHz。
进一步说,累加器模值M_MAX为36000000,是36000的整数倍。
进一步说,正弦ROM存储表地址寄存器ROM_ADDR数值的整除运算使用14级流水线除法器实现。
与现有的技术相比,本发明的有益效果是:减小了波形存储器的容量,降低了频率步进值。
附图说明
图1是本发明的硬件框图;
图2是本发明的方法实现框图。
具体实施方式
以下结合附图对本发明作进一步说明。
如图1所示,改进型DDS信号发生器包括晶振、FPGA、SRAM、D/A转换器;FPGA接收晶振输入的时钟信号和外部输入的数据,FPGA将输入处理之后输出给SRAM地址输入端,SRAM数据输出端输出数据给D/A转换器,D/A转换器输出的信号就是所需要的信号;其中FPGA包括锁相环、相位累加器和除法器,锁相环接收FPGA接收的晶振输入的时钟信号,锁相环输出的信号作为相位累加器的时钟,相位累加器的输出作为除法器的输入,除法器输出信号直接送出FPGA。
如图2所示,上述信号发生器产生DDS信号的具体步骤:
步骤A1:将输入到FPGA频率为36MHz的时钟输入,经锁相环,输出产生频率为360KHz的CLK_DIV 信号。
步骤A2:FPGA将外部输入的频率字存入FPGA内建的REG_FW步长寄存器中,将输入的相位初始值存入FPGA内建的REG_PHASE相位寄存器中,其中REG_FW步长寄存器是用于调节输出信号频率。
步骤A3:在FPGA中内建相位累加寄存器REG_ACC,设定相位累加器寄存器REG_ACC的初始值为REG_PHASE相位寄存器所保存的数值,其中REG_PHASE相位寄存器是用来调整输出信号相位。
步骤A4:相位累加器寄存器REG_ACC在CLK_DIV信号的上升沿时,以REG_FW步长寄存器中的数值为步长自增,并将相位累加器寄存器REG_ACC对累加器模值即数值36000000取模,并将所得的数值存入相位累加器寄存器REG_ACC。
步骤A5:取出相位累加器寄存器REG_ACC中的数值,SRAM地址寄存器ROM_ADDR的数值等于相位累加器寄存器REG_ACC的数值乘以36000,再整除累加器模值36000000,其中除法采用了14级流水线除法器实现。
步骤A6:将SRAM内地址为ROM_ADDR中存储的数据输出到D/A的输入端,D/A的输出端就得到了所需要的信号。
相位累加器寄存器REG_ACC的取模运算是这样实现的:
步骤B1:判断相位累加器寄存器REG_ACC中的数值是否大于累加器模值M_MAX,如果是则执行步骤B2,否则执行步骤B3。
步骤B2:相位累加器寄存器REG_ACC中的数值等于相位累加器寄存器REG_ACC中的数值减去累加器模值M_MAX。
步骤B3:相位累加器寄存器REG_ACC中的数值不变。

Claims (5)

1.一种改进型DDS信号发生器产生DDS信号的方法,所述的改进型DDS信号发生器包括晶振、FPGA、SRAM和D/A转换器,FPGA接收晶振输入的时钟信号和外部输入的频率字,FPGA进行处理后输入至SRAM,SRAM的输出与D/A转换器信号连接;
所述的FPGA由锁相环、相位累加器和除法器组成;锁相环接收晶振输入的时钟信号,锁相环输出的信号作为相位累加器的时钟,相位累加器接收外部输入的频率字,相位累加器的输出作为除法器的输入,除法器输出信号作为FPGA的输出;
其特征在于该方法包括以下步骤:
步骤A1:将输入到FPGA频率为ƒx 的时钟输入,经锁相环,输出产生频率为ƒclk的CLK_DIV 信号,其中ƒclk频率为ƒx频率的十分之一;
步骤A2:FPGA将外部输入的频率字存入FPGA内建的REG_FW步长寄存器中,将输入的相位初始值存入FPGA内建的REG_PHASE相位寄存器中;
步骤A3:在FPGA中内建相位累加寄存器REG_ACC,设定相位累加器寄存器REG_ACC的初始值为REG_PHASE相位寄存器所保存的数值;
步骤A4:相位累加器寄存器REG_ACC在CLK_DIV信号的上升沿时,以REG_FW步长寄存器中的数值为步长自增,并将相位累加器寄存器REG_ACC对累加器模值取模,即数值M_MAX取模,并将所得的数值存入相位累加器寄存器REG_ACC;
步骤A5:取出相位累加器寄存器REG_ACC中的数值,将相位累加器寄存器REG_ACC的数值乘以36000,再整除累加器模值M_MAX后赋值给正弦ROM存储表地址寄存器ROM_ADDR;所述的正弦ROM存储表存储在SRAM中;
步骤A6:将正弦ROM存储表内地址为ROM_ADDR中存储的数据输出到D/A转换器的输入端,D/A转换器的输出即为DDS信号。
2.根据权利要求1所述的方法,其特征在于:步骤4中相位累加器寄存器REG_ACC的取模运算实现方法具体是:
步骤B1:判断相位累加器寄存器REG_ACC中的数值是否大于累加器模值M_MAX,如果是则执行步骤B2,否则执行步骤B3;
步骤B2:将相位累加器寄存器REG_ACC中的数值减去累加器模值M_MAX后赋值给相位累加器寄存器REG_ACC;
步骤B3:相位累加器寄存器REG_ACC中的数值保持不变。
3.根据权利要求1所述的方法,其特征在于:ƒx时钟输入频率为36MHz。
4.根据权利要求1所述的方法,其特征在于:累加器模值M_MAX为36000000,是36000的整数倍。
5.根据权利要求1所述的方法,其特征在于:步骤A5中正弦ROM存储表地址寄存器ROM_ADDR数值的整除运算使用14级流水线除法器实现。
CN 201110384207 2011-11-28 2011-11-28 一种改进型dds信号发生器及其信号发生方法 Active CN102497205B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201110384207 CN102497205B (zh) 2011-11-28 2011-11-28 一种改进型dds信号发生器及其信号发生方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201110384207 CN102497205B (zh) 2011-11-28 2011-11-28 一种改进型dds信号发生器及其信号发生方法

Publications (2)

Publication Number Publication Date
CN102497205A CN102497205A (zh) 2012-06-13
CN102497205B true CN102497205B (zh) 2013-09-18

Family

ID=46189000

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201110384207 Active CN102497205B (zh) 2011-11-28 2011-11-28 一种改进型dds信号发生器及其信号发生方法

Country Status (1)

Country Link
CN (1) CN102497205B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103956994B (zh) * 2014-03-24 2016-12-07 杭州电子科技大学 一种基于fpga的dds任意波形信号发生器
CN104378562B (zh) * 2014-12-01 2018-05-04 重庆洪深现代视声技术有限公司 电视信号发生器
CN104917494B (zh) * 2015-05-08 2017-10-31 深圳市鼎阳科技有限公司 一种函数信号发生器
CN104965200B (zh) * 2015-07-09 2017-04-05 国家海洋技术中心 基于拖曳式水声信号发射系统的动态信号发生装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN200941168Y (zh) * 2006-08-25 2007-08-29 王悦 一种dds信号发生器
CN101131594A (zh) * 2006-08-25 2008-02-27 王悦 一种dds信号发生器及其波形存储深度控制方法
CN202334494U (zh) * 2011-11-28 2012-07-11 杭州电子科技大学 一种改进型dds信号发生器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006012503A2 (en) * 2004-07-22 2006-02-02 Auburn University Automatic analog test & compensation with built-in pattern generator & analyzer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN200941168Y (zh) * 2006-08-25 2007-08-29 王悦 一种dds信号发生器
CN101131594A (zh) * 2006-08-25 2008-02-27 王悦 一种dds信号发生器及其波形存储深度控制方法
CN202334494U (zh) * 2011-11-28 2012-07-11 杭州电子科技大学 一种改进型dds信号发生器

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
周俊峰 陈涛.基于FPGA的直接数字频率合成器的设计和实现.《集成电路应用》.2002,第74页至第75页,第80页.
基于FPGA的直接数字频率合成器的设计和实现;周俊峰 陈涛;《集成电路应用》;20021231;第74页至第75页,第80页 *

Also Published As

Publication number Publication date
CN102497205A (zh) 2012-06-13

Similar Documents

Publication Publication Date Title
CN103297046B (zh) 一种锁相环及其时钟产生方法和电路
CN102497205B (zh) 一种改进型dds信号发生器及其信号发生方法
CN101807089A (zh) 输出信号偏移量任意可调的波形信号发生器
CN102025366B (zh) 等占空比时钟的分频时钟切换方法及分频器
JP2022019553A (ja) 低面積および低消費電力の時間-デジタル変換器
CN101359909B (zh) 具有扩展的范围能力的灵活波形发生器
CN102761332A (zh) 一种时钟产生电路
CN202334494U (zh) 一种改进型dds信号发生器
CN107436619B (zh) 一种高精度低代价数字正弦波发生装置
CN203086442U (zh) 一种基于加法器的锁相式快跳源
CN105425898A (zh) 一种低功耗嵌入式系统
EP2777156B1 (en) Oscillator based frequency locked loop
CN105811968A (zh) 调制器、锁相回路及响应频率控制字产生控制码的方法
CN102571036B (zh) 用dds产生任意精准频率的方法
CN103338037A (zh) 一种锁相环中时钟信号转数字信号的方法和装置
CN104660218A (zh) 一种任意波形合成器
CN201985842U (zh) 微波带宽折叠接收器的本振频率产生电路
CN202026299U (zh) 一种频率合成装置
CN205210137U (zh) 一种多路同步信号输出装置
CN208299782U (zh) 一种高速低功耗四/五预分频器
CN103871444A (zh) 非挥发性存储器的读时序产生电路
Shan et al. Design and implementation of a FPGA-based direct digital synthesizer
CN103576826B (zh) 存储器控制方法、装置及存储器系统
CN102427342A (zh) 开关电容时钟发生器
RU127557U1 (ru) Твердотельное устройство формирования сигнала с прямым цифровым синтезом частоты

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant