[go: up one dir, main page]

CN107977044B - 一种dds信号发生器及其线性插值方法 - Google Patents

一种dds信号发生器及其线性插值方法 Download PDF

Info

Publication number
CN107977044B
CN107977044B CN201810042354.0A CN201810042354A CN107977044B CN 107977044 B CN107977044 B CN 107977044B CN 201810042354 A CN201810042354 A CN 201810042354A CN 107977044 B CN107977044 B CN 107977044B
Authority
CN
China
Prior art keywords
value
waveform data
phase
read
memory
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
CN201810042354.0A
Other languages
English (en)
Other versions
CN107977044A (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.)
Uni Trend Technology China Co Ltd
Original Assignee
Uni Trend Technology China Co Ltd
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 Uni Trend Technology China Co Ltd filed Critical Uni Trend Technology China Co Ltd
Priority to CN201810042354.0A priority Critical patent/CN107977044B/zh
Publication of CN107977044A publication Critical patent/CN107977044A/zh
Application granted granted Critical
Publication of CN107977044B publication Critical patent/CN107977044B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • G06F1/022Waveform generators, i.e. devices for generating periodical functions of time, e.g. direct digital synthesizers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及一种DDS信号发生器,包括:相位累加器,相位寄存器,第一只读存储器,第二只读存储器,减法器,乘法器以及加法器,相位累加器将累加后的频率控制字发送给相位寄存器,由相位寄存器根据输出的相位值在第一只读存储器和第二只读存储器中分别查找第一波形数据以及第二波形数据,减法器计算得到第二波形数据与第一波形数据的差值并发送至乘法器,由乘法器将所述差值与相位寄存器中的相位值相乘并将结果进行右移得到小数值,加法器将所述小数值与第一波形数据相加得到波形输出数据。通过本发明的信号发生器在不增加成本,降低外围硬件设计难度的情况下有效的保证了波形的质量,使波形数据每个时钟周期输出的数据都是变化的。

Description

一种DDS信号发生器及其线性插值方法
技术领域
本发明属于信号发生器领域,具体涉及一种DDS信号发生器及其线性插值方法。
背景技术
目前,DDS类信号发生器都采用最基本的DDS方式产生的,如图1所示,其中频率控制字Freq_word是由外设处理器根据用户需求频率计算所得,相位累加器1用来对频率控制字Freq_word进行累加,相位寄存器2用来缓存累加的相位值,只读存储器(ROM)3内存储有所需波形数据数字化后的波形数据,一般为周期性的波形数据,且为一个周期的波形数据。只读存储器3的查询地址是相位寄存器2高截位的相位值。
由于FPGA内部的资源限制,一般相位寄存器2到只读存储器3的数据为10到16位。如果采用的是14位的数据,即ROM的深度为16K的情况下,假如需求频率低于Fsample/16384,ROM中的波形数据会存在一个点被多次连续读取的情况;而且在这种需求频率较低的情况下,对外围滤波要求较高,否则波形会形成阶梯状的波形输出,从而使波形不能满足指标需求。但是,如果FPGA内部使用滤波器,又会占用大量的FPGA内部资源,对FPGA成本有一定的要求。
发明内容
针对上述问题,本发明的目的是提供一种DDS信号发生器及其线性插值方法,用以解决现有技术中在需求频率较低的情况下,波形数据会存在一个点被多次连续读取的情况。
为实现上述目的,本发明采取以下技术方案:
本发明中的一种DDS信号发生器,包括:相位累加器,相位寄存器,第一只读存储器,第二只读存储器,减法器,乘法器以及加法器,所述相位累加器将累加后的频率控制字发送给所述相位寄存器,由所述相位寄存器根据输出的相位值在第一只读存储器和第二只读存储器中分别查找第一波形数据以及第二波形数据,所述减法器计算得到第二波形数据与第一波形数据的差值并发送至所述乘法器,由所述乘法器将所述差值与所述相位寄存器中的相位值相乘并将结果进行右移得到小数值,所述加法器将所述小数值与所述第一波形数据相加得到波形输出数据。
上述DDS信号发生器,优选的,所述信号发生器还包括:数模转换器以及滤波器,所述波形输出数据经过数模转换器以及滤波器后输出。
上述DDS信号发生器,优选的,所述第一只读存储器以及第二只读存储器采用硬件存储器的双端口只读存储器。
上述DDS信号发生器,优选的,所述第二只读存储器比所述第一只读存储器地址值大一。
上述DDS信号发生器,优选的,所述第一只读存储器以及第二只读存储器的地址值是所述相位值的高位。
本发明中的一种DDS信号发生器线性插值方法,包括:
相位累加器将累加后的频率控制字发送给相位寄存器;
由所述相位寄存器根据输出的相位值在第一只读存储器和第二只读存储器中分别查找第一波形数据以及第二波形数据;
由减法器计算第二波形数据与第一波形数据的差值并发送至乘法器;
由所述乘法器将所述差值与所述相位寄存器中的相位值相乘并将结果进行右移得到小数值;
由加法器将所述小数值与所述第一波形数据相加得到波形输出数据。
上述DDS信号发生器线性插值方法,优选的,所述方法还包括:截取所述相位值的高位用以分别查找所述第一只读存储器以及第二只读存储器中的第一波形数据以及第二波形数据;其中,所述相位值的高位是所述第一只读存储器以及第二只读存储器的地址值。
上述DDS信号发生器线性插值方法,优选的,所述第二只读存储器比所述第一只读存储器地址值大一。
上述DDS信号发生器线性插值方法,优选的,所述乘法器将所述差值与所述相位寄存器中的相位值相乘进一步包括:所述乘法器将所述差值与所述相位寄存器中的相位值的小数部分相乘。
上述DDS信号发生器线性插值方法,优选的,所述第二波形数据与第一波形数据的差值是带符号的差值。
本发明的DDS信号发生器及其线性插值方法主要是解决了DDS在为了节省资源的情况下,解决了需求频率较低时,波形是非连续的,存在梯形输出的问题,从而降低外围滤波器的设计难度,提高波形质量。
附图说明
图1是现有技术中DDS信号发生器的结构示意图;
图2是本发明实施例所提供的DDS信号发生器的结构示意图;
图3是本发明实施例所提供的DDS信号发生器线性插值方法的流程图。
具体实施方式
下面结合附图和实施例对本发明进行详细的描述。
本发明实施例提供一种DDS信号发生器,如图2所示,包括:相位累加器4,相位寄存器5,第一只读存储器7,第二只读存储器8,减法器9,乘法器10以及加法器11,所述相位累加器4将累加后的频率控制字发送给所述相位寄存器5,由所述相位寄存器5根据输出的相位值在第一只读存储器7和第二只读存储器8中分别查找第一波形数据以及第二波形数据,所述减法器9计算得到第二波形数据与第一波形数据的差值并发送至所述乘法器10,由所述乘法器10将所述差值与所述相位寄存器5中的相位值相乘并将结果进行右移得到小数值,所述加法器11将所述小数值与所述第一波形数据相加得到波形输出数据。较佳的,本发明实施例中的DDS信号发生器是通过FPGA来实现的。具体的实施例中,相位寄存器5输出的相位值以48位为例,其中,相位值的高14位是第一只读存储器以及第二只读存储器的地址值,为整数部分,用以在第一只读存储器7和第二只读存储器8中分别查找第一波形数据以及第二波形数据;相位值低34位是相位数据,为小数部分。其中,第一只读存储器7和第二只读存储器8中所存储的值是同一个值,并且存储深度都为16384个数据。第一波形数据以及第二波形数据为波形相邻的两个数据值。通过减法器9将第二只读存储器8中的第二波形数据减去第一只读存储器7中的第一波形数据从而得到一个差值,且这个差值是有符号的数据。乘法器10接收所述第二波形数据和第一波形数据的差值,并将该差值和相位寄存器5中相位值的低34位进行乘法运算,并将结果进行右移得到小数值,得到的小数值即为小数部分在相位累加时波形小数部分的波形值的差值。具体到本实施例中,将相乘的结果向右移位34位,即除以2的34次方。较佳的,相乘的结果是带有符号的数据。最后,加法器11将所述小数值与第一只读存储器7中的第一波形数据相加得到最终的波形输出数据,较佳的,该波形输出数据也是带符号的。
本发明实施例所述的DDS信号发生器在不增加成本并且降低FPGA外围硬件设计难度的情况下,有效的保证了波形的质量,使波形数据每个时钟周期输出的数据都是变化的。
本发明实施例所述的DDS信号发生器,较佳的,所述信号发生器还包括:数模转换器以及滤波器,所述波形输出数据经过数模转换器以及滤波器后输出。通过外围滤波器,使得波形连续,谐波分量少的优点。
本发明实施例所述的DDS信号发生器,较佳的,所述第一只读存储器以及第二只读存储器采用硬件存储器的双端口只读存储器。具体的,由于通过FPGA实现,因此第一只读存储器以及第二只读存储器可以通过FPGA中的硬件存储器(BRAM)生成双端口的ROM来同时实现,这样可以节省FPGA中的BRAM资源。
本发明实施例所述的DDS信号发生器,较佳的,所述第二只读存储器比所述第一只读存储器地址值大一。具体的,第一只读存储器7和第二只读存储器8中所存储的值是同一个值,并且存储深度都为16384个数据。因此,当第二只读存储器比所述第一只读存储器地址值大一时,第一波形数据以及第二波形数据为波形相邻的两个数据。
本发明实施例所述的DDS信号发生器,较佳的,所述第一只读存储器以及第二只读存储器的地址值是所述相位值的高位。具体的,所述相位值的高位是用来存储只读存储器的地址值的,因此在本发明实施例中,通过相位寄存器5输出的48位的相位值中高14位来查找第一只读存储器以及第二只读存储器的地址。
由于本发明采用硬件存储器(BRAM)生成双端口的ROM以及相应的算法,没有增加外设成本,有效的解决了波形在低频时存在梯形的问题。
本发明实施例还提供一种DDS信号发生器线性插值方法,如图3所示,所述方法包括:
步骤301,相位累加器将累加后的频率控制字发送给相位寄存器;
步骤302,由所述相位寄存器根据输出的相位值在第一只读存储器和第二只读存储器中分别查找第一波形数据以及第二波形数据;
步骤303,由减法器计算第二波形数据与第一波形数据的差值并发送至乘法器;
步骤304,由所述乘法器将所述差值与所述相位寄存器中的相位值相乘并将结果进行右移得到小数值;
步骤305,由加法器将所述小数值与所述第一波形数据相加得到波形输出数据。
具体的,相位寄存器5输出的相位值以48位为例,其中,相位值的高14位是第一只读存储器以及第二只读存储器的地址值,为整数部分,用以在第一只读存储器和第二只读存储器中分别查找第一波形数据以及第二波形数据;相位值低34位是相位数据,为小数部分。其中,第一只读存储器和第二只读存储器中所存储的是同一个值,并且存储深度都为16384个数据。第一波形数据以及第二波形数据为波形相邻的两个数据值。通过减法器将第二只读存储器中的第二波形数据减去第一只读存储器中的第一波形数据从而得到一个差值,且这个差值是有符号的数据。乘法器接收所述第二波形数据和第一波形数据的差值,并将该差值和相位寄存器中相位值的低34位进行乘法运算,并将结果进行右移得到小数值,得到的小数值即为小数部分在相位累加时波形小数部分的波形值的差值。具体到本实施例中,将相乘的结果向右移位34位,即除以2的34次方。较佳的,相乘的结果是带有符号的数据。最后,加法器将所述小数值与第一只读存储器中的第一波形数据相加得到最终的波形输出数据,较佳的,该波形输出数据也是带符号的。
本发明实施例所述的DDS信号发生器线性插值方法,较佳的,所述第二波形数据与第一波形数据的差值是带符号的差值。
本发明实施例所述的DDS信号发生器线性插值方法,较佳的,所述第二只读存储器比所述第一只读存储器地址值大一。因此,当第二只读存储器比所述第一只读存储器地址值大一时,第一波形数据以及第二波形数据为波形相邻的两个数据值。
本发明实施例所述的DDS信号发生器线性插值方法,较佳的,所述乘法器将所述差值与所述相位寄存器中的相位值相乘进一步包括:所述乘法器将所述差值与所述相位寄存器中的相位值的小数部分相乘,即乘法器将第二波形数据与第一波形数据想减后的有符号的差值与相位寄存器中的低位相乘,所述低位在本发明实施例中为34位。
综上所述,本发明实施例所述的线性插值方法以及信号发生器在不增加成本,降低外围硬件设计难度的情况下有效的保证了波形的质量,使波形数据每个时钟周期输出的数据都是变化的,通过外围滤波器,波形连续,谐波分量少的优点。
本发明不局限于上述最佳实施方式,任何人在本发明的启示下都可得出其他各种形式的产品,但不论在其形状或结构上作任何变化,凡是具有与本申请相同或相近似的技术方案,均落在本发明的保护范围之内。

Claims (8)

1.一种 DDS 信号发生器,其特征在于,包括:相位累加器,相位寄存器,第一只 读存储器,第二只读存储器,减法器,乘法器以及加法器,所述相位累加器将累加后 的频率控制字发送给所述相位寄存器,由所述相位寄存器根据输出的相位值在第一只 读存储器和第二只读存储器中分别查找第一波形数据以及第二波形数据,所述减法器 计算得到第二波形数据与第一波形数据的差值并发送至所述乘法器,由所述乘法器将 所述差值与所述相位寄存器中的相位值相乘并将结果进行右移得到小数值,所述加法 器将所述小数值与所述第一波形数据相加得到波形输出数据;
所述信号发生器还 包括:数模转换器以及滤波器,所述波形输出数据经过数模转换器以及滤波器后输出;
所述第一只读存储 器以及第二只读存储器采用硬件存储器的双端口只读存储器。
2.根据权利要求 1 所述的一种 DDS 信号发生器,其特征在于,所述第二只读存储 器比所述第一只读存储器地址值大一。
3.根据权利要求 1 或 2所述的一种 DDS 信号发生器,其特征在于,所述第一只读 存储器以及第二只读存储器的地址值是所述相位值的高位。
4.一种 DDS 信号发生器线性插值方法,其特征在于,所述方法包括: 相位累加器将累加后的频率控制字发送给相位寄存器;
由所述相位寄存器根据输出的相位值在第一只读存储器和第二只读存储器中分别 查找第一波形数据以及第二波形数据;
由减法器计算第二波形数据与第一波形数据的差值并发送至乘法器; 由所述乘法器将所述差值与所述相位寄存器中的相位值相乘并将结果进行右移得到小数值;
由加法器将所述小数值与所述第一波形数据相加得到波形输出数据。
5.根据权利要求 4所述的一种 DDS 信号发生器线性插值方法,其特征在于,所述 方法还包括:截取所述相位值的高位用以分别查找所述第一只读存储器以及第二只读 存储器中的第一波形数据以及第二波形数据;其中,所述相位值的高位是所述第一只 读存储器以及第二只读存储器的地址值。
6.根据权利要求 5 所述的一种 DDS 信号发生器线性插值方法,其特征在于,所述 第二只读存储器比所述第一只读存储器地址值大一。
7.根据权利要求4所述的一种 DDS 信号发生器线性插值方法,其特征在于,所述 乘法器将所述差值与所述相位寄存器中的相位值相乘进一步包括:所述乘法器将所述 差值与所述相位寄存器中的相位值的小数部分相乘。
8.根据权利要求 4 所述的一种 DDS 信号发生器线性插值方法,其特征在于,所 述第二波形数据与第一波形数据的差值是带符号的差值。
CN201810042354.0A 2018-01-17 2018-01-17 一种dds信号发生器及其线性插值方法 Active CN107977044B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810042354.0A CN107977044B (zh) 2018-01-17 2018-01-17 一种dds信号发生器及其线性插值方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810042354.0A CN107977044B (zh) 2018-01-17 2018-01-17 一种dds信号发生器及其线性插值方法

Publications (2)

Publication Number Publication Date
CN107977044A CN107977044A (zh) 2018-05-01
CN107977044B true CN107977044B (zh) 2023-09-01

Family

ID=62006042

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810042354.0A Active CN107977044B (zh) 2018-01-17 2018-01-17 一种dds信号发生器及其线性插值方法

Country Status (1)

Country Link
CN (1) CN107977044B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109714048B (zh) * 2019-01-08 2024-05-31 优利德科技(中国)股份有限公司 一种相位模可变的dds电路及相位的输出方法
CN109857188B (zh) * 2019-01-08 2020-06-23 优利德科技(中国)股份有限公司 一种基于dds的脉冲波产生方法、装置及其系统
CN113281595A (zh) * 2021-05-19 2021-08-20 中航机载系统共性技术有限公司 一种机载设备测试装置
CN114138051A (zh) * 2021-11-08 2022-03-04 西安电子科技大学 一种用于电化学工作站的波形生成方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2216633A1 (de) * 1972-04-07 1973-10-18 Nsm Apparatebau Gmbh Kg Schaltkreis zur erzeugung von pseudozufallszahlen
CN1395438A (zh) * 1995-08-18 2003-02-05 富士通株式会社 带有失真补偿的放大器及使用此放大器的无线通信基站
CN1518813A (zh) * 2001-01-09 2004-08-04 �����ɷ� 有效多载波滤波器
CN1774689A (zh) * 2003-04-16 2006-05-17 索尼爱立信移动通讯股份有限公司 用于基于快速跳频扩展频谱技术的蜂窝无线通信系统的直接数字频率合成器
CN101807089A (zh) * 2010-04-02 2010-08-18 广西大学 输出信号偏移量任意可调的波形信号发生器
CN103873160A (zh) * 2012-12-12 2014-06-18 北京普源精电科技有限公司 一种改善数字相位调制的相位跳变的方法及装置
CN104067195A (zh) * 2012-01-18 2014-09-24 高通股份有限公司 高准确度正余弦波及频率产生器及相关系统及方法
CN104660218A (zh) * 2013-11-18 2015-05-27 田荣侠 一种任意波形合成器
RU2577488C1 (ru) * 2015-02-17 2016-03-20 Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" Цифровой рекурсивный формирователь отсчетов сигналов с линейной частотной модуляцией
CN207867387U (zh) * 2018-01-17 2018-09-14 优利德科技(中国)股份有限公司 一种dds信号发生器

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6807554B2 (en) * 2001-08-10 2004-10-19 Hughes Electronics Corporation Method, system and computer program product for digitally generating a function

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2216633A1 (de) * 1972-04-07 1973-10-18 Nsm Apparatebau Gmbh Kg Schaltkreis zur erzeugung von pseudozufallszahlen
CN1395438A (zh) * 1995-08-18 2003-02-05 富士通株式会社 带有失真补偿的放大器及使用此放大器的无线通信基站
CN1518813A (zh) * 2001-01-09 2004-08-04 �����ɷ� 有效多载波滤波器
CN1774689A (zh) * 2003-04-16 2006-05-17 索尼爱立信移动通讯股份有限公司 用于基于快速跳频扩展频谱技术的蜂窝无线通信系统的直接数字频率合成器
CN101807089A (zh) * 2010-04-02 2010-08-18 广西大学 输出信号偏移量任意可调的波形信号发生器
CN104067195A (zh) * 2012-01-18 2014-09-24 高通股份有限公司 高准确度正余弦波及频率产生器及相关系统及方法
CN103873160A (zh) * 2012-12-12 2014-06-18 北京普源精电科技有限公司 一种改善数字相位调制的相位跳变的方法及装置
CN104660218A (zh) * 2013-11-18 2015-05-27 田荣侠 一种任意波形合成器
RU2577488C1 (ru) * 2015-02-17 2016-03-20 Федеральное государственное бюджетное образовательное учреждение высшего образования "Вятский государственный университет" Цифровой рекурсивный формирователь отсчетов сигналов с линейной частотной модуляцией
CN207867387U (zh) * 2018-01-17 2018-09-14 优利德科技(中国)股份有限公司 一种dds信号发生器

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
付扬."基于FPGA直接数字频率合成两种控制电路设计".《PLC 技术应用200 例》.2007,第221-223页. *

Also Published As

Publication number Publication date
CN107977044A (zh) 2018-05-01

Similar Documents

Publication Publication Date Title
CN107977044B (zh) 一种dds信号发生器及其线性插值方法
CN113630123B (zh) 一种数据压缩系统及方法
KR970007613A (ko) 클럭 사이클당 복수의 몫 디지트를 발생하는 srt 하드웨어 및 제곱근 유닛
TWI523431B (zh) Phase conversion method and device in DDS
CN112487629B (zh) 考虑多重事件发生的电磁暂态仿真方法、装置以及设备
CN102521312A (zh) 一种文件索引的存储方法及文件系统
CN207867387U (zh) 一种dds信号发生器
CN107943204B (zh) 数字频率合成方法以及装置
CN110768665B (zh) 一种二倍时钟采样速率的dds信号扫频源系统
CN104516821B (zh) 存储器管理方法及存储器管理装置
CN101961248A (zh) 一种超声系统中非线性压缩的方法与装置
Curticapean et al. Low-power direct digital frequency synthesizer
Han et al. FIR filter synthesis considering multiple adder graphs for a coefficient
CN115589216A (zh) 延时陷波的自适应有源电力滤波器的滤波x最小均方方法
CN103795345B (zh) 正弦波生成装置和方法
CN1355655A (zh) 数字本振信号产生方法及数字控制振荡器
CN112910496B (zh) Chirp信号的生成方法、装置、终端及介质
JP6327154B2 (ja) 信号生成装置、信号生成方法及び数値制御発振器
CN109901884B (zh) 一种fpga的高层次综合和码流生成的方法和装置
CN103744927B (zh) 归属地信息存储、获取方法及装置
Sodagar et al. Reduced-memory direct digital frequency synthesizer using parabolic initial guess
JP5817612B2 (ja) 送信器
Paliouras et al. Signal activity and power consumption reduction using the logarithmic number system
CN119628680B (zh) 一种用于电网集抄的数字chrip序列的生成方法
CN112104356B (zh) 一种直接数字频率合成方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 523808 No. 6 industrial North Road, Songshan Lake high tech Industrial Development Zone, Dongguan, Guangdong

Applicant after: UNI-TREND TECHNOLOGY (CHINA) Co.,Ltd.

Address before: 523808 No. 6 industrial North Road, Songshan Lake high tech Industrial Development Zone, Dongguan, Guangdong

Applicant before: UNI-TREND TECHNOLOGY (CHINA) Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant