基于FPGA三相正弦信号发生器的设计
2014-04-19王培李涪帆
王培+李涪帆
摘 要:波形平滑、频率稳定的正弦信号是仿真研究的重要前提。为了能够方便地产生此信号,文章提出了一种基于DDS技术的正弦信号发生器的设计方法。该方法利用FPGA芯片及D/A转换器,采用直接数字频率合成(DDS)技术,设计并实现了相位、频率可控的相位相差120°的三相正弦信号发生器。同时把在Matlab环境中用DSP Builder画的原理图转化为VHDL语言,然后通过信号分析在QuartusⅡ中模拟仿真,最终下载到FPGA试验箱,这样,接上示波器即可观察到三相正弦信号。文章给出了基于FPGA的三相正弦信号波形的设计方法,并经软件仿真测试验证及硬件测试,结果表明,该系统具有较高的精度和稳定性。
关键词:直接数字频率合成器;三相正弦信号;FPGA;DDS
中图法分类号:TN76 文献标识码:A 文章编号:2095-1302(2014)04-0061-02
0 引 言
直接数字频率合成器[1](Direct Digtal Synthesiser,DDS)与数字信号处理器[2](DSP)一样,是一项关键的数字化技术。与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛应用在电信与电子仪器领域,是实现设备数字化的一个关键技术。
目前,各大芯片厂商都相继推出了高性能和多功能的DDS芯片,内部数字信号抖动很小,输出信号的质量较高。但是在某些场合,由于专用的DDS芯片的控制方式是固定的,故在工作方式、频率控制等方面与系统的要求差距很大,数字控制器接口不便,难以满足复杂要求,对处理速度要求较高,从而也限制了频率进一步的提高,同时微处理器的处理任务也更加繁重。FPGA以其可靠性高、功耗低、保密性强等特点,在电子产品设计中得到了广泛的应用。本文根据实际需要,设计出符合特定需要的三相正弦DDS电路,通过实验证明,利用FPGA合成DDS是一个较好的解决方法,具有良好的实用性和灵活性。
1 DDS的基本原理
直接数字频率合成(DDS)技术的工作原理是基于相位和幅度的对应关系,通过改变频率控制字K来改变相位累加器的累加速度,然后在固定时钟fc的控制下取样,取样得到的相位值通过相位幅度转换得到与相位值对应的幅度序列,幅度序列再通过D/A转换就可以得到模拟波形的输出。DDS 原理框图如图1所示。
图1 DDS原理图
在图 1 中,累加器单个时钟周期的相位增量为 :
(1)
其中N为累加器字长,角频率为:
(2)
DDS的输出频率为:
(3)
DDS输出的频率步进间隔:
(4)
由式(3)可见,相位累加器进行线性相位累加时 , 频率控制字的相位增加量越大 , 相位累加器的溢出频率越高 , 输出信号的频率也就越高。
2 三相正弦信号系统框图
系统结构图由频率、相位控制字,数字模拟转换器(即D/A转换),DDS模块以及低通滤波器(LPF)等构成。如图2所示,其中频率控制字K控制频率的输入,而相位控制字为P,与DDS模块一起精确控制频率的变化;D/A转换是把波形对应的数字量快速地转换为对应波形的模拟信号;低通滤波器用于滤除阶梯信号中的谐波分量。本文采用2阶低通滤波电路,阶梯信号通过低通滤波,使得输出信号频谱纯度较好,失真较小。
图2 三相正弦信号系统框图
3 三相正弦信号发生器的FPGA 实现
3.1 DSP Builder设计流程
DSP Builder设计流程图如图3所示。具体步骤如下:
(1)在Matlab/Simulink中进行设计输入。即在Matlab的Simulink环境中建立一个mdl模型文件,用图形方式调用Altera DSP Builder和其他的Simulink库中的图形模块,构成系统级或算法级设计框图;
(2)利用Simulink的图形化仿真、分析功能。分析此设计模型的正确性,完成模型仿真;
(3)通过Signal Compiler把Simulink的模型文件(后缀为.mdl)转化成通用的硬件描述语言,VHDL文件(后缀为.vhd)。也是DSP Builder设计实现的关键一步;
(4)对以上顶层设计产生的VHDL的RTL代码和仿真文件进行综合、编译适配以及仿真。
图3 DSP Builder设计流程图
3.2 系统模型图建立
实现相位互差120°的三相正弦信号发生器的原理与单相正弦信号发生器的原理基本一致,不同的是三相发生器需要两个具有固定相位偏移的相位加法器。图4为基于Simulink平台建立的系统系统模型图。图5为频率控制字为2时的仿真波形。
图4 三相正弦信号发生器模型图
图5 频率控制字为2时的仿真波形
3.3 硬件实时测试
三相正弦信号发生器的输出信号经D/A转换后可以通过示波器进行测试,也可以通过嵌入式逻辑分析仪Signal TapⅡ直接测试。通过嵌入式逻辑分析仪Signal TapⅡ直接测试得到的实时波形如6所示。由波形图可知,成功地完成了三相正弦信号发生器的FPGA设计。
图6 硬件实时测试中三项正弦信号在SignalTapⅡ中的测试结果
4 结 语
本文提出了利用直接数字频率合成技术(即DDS)设计三相电正弦波形的方法,这种方法克服了传统波形发生器输出波形频率窄的缺点,可以根据需要得到很宽范围的合成波形。采用FPGA构造电力电子装置的控制单元具有简单灵活、控制精确、易修改、可现场编程等优点。这种方法可广泛应用于要求合成波形的谐波小、频带宽的测试仪器中。如果适当地设计低通滤波器,则可以制作频率范围宽、精度高的信号源。
参 考 文 献
[1]左磊.双RAM直接数字合成任意波形发生器微机插卡研制[J].清华大学学报,1999,39(2):90-93.
[2]张平.在DDS波形发生器中相位截尾噪声的分析和抑制[J].仪器仪表学报,2003,24(1):92-95.
[3]崔敏,邓祥明.改革实验教学方式.培养工程实践能力[J].实验技术与管理,2001,18(3):118-120.
[4]夏宇闻.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,2008.
[5]张庆顺,李金凤.基于单片机与DDS的多功能正弦信号发生器设计[J].仪器仪表学报,2008,29(4):214-217.
[6]谢亮.基于FPGA的ROM数据定制的几种方法[J].科技广场,2008(10):162-163.
[7]李志鹏,沈军.基于DDS技术实现信号发生[J].微计算机信息,2007(23):175-177.
[8]李蒙,毛建东.单片机原理及应用[M].北京:中国轻工业出版社,2010.
[9]王爱华.浅谈单片机汇编语言教学[J].黑龙江科技信息,2009(17):149.
[10] Hmjushon. W. Lidamalu. ——Cx51 Compiler Users Guide. Optimizing C Compiler and Library Reference for Classic and Extended C51.Microcontrollers[J].IEEE.Trans.Ind.Aplication.2002:232-243.
摘 要:波形平滑、频率稳定的正弦信号是仿真研究的重要前提。为了能够方便地产生此信号,文章提出了一种基于DDS技术的正弦信号发生器的设计方法。该方法利用FPGA芯片及D/A转换器,采用直接数字频率合成(DDS)技术,设计并实现了相位、频率可控的相位相差120°的三相正弦信号发生器。同时把在Matlab环境中用DSP Builder画的原理图转化为VHDL语言,然后通过信号分析在QuartusⅡ中模拟仿真,最终下载到FPGA试验箱,这样,接上示波器即可观察到三相正弦信号。文章给出了基于FPGA的三相正弦信号波形的设计方法,并经软件仿真测试验证及硬件测试,结果表明,该系统具有较高的精度和稳定性。
关键词:直接数字频率合成器;三相正弦信号;FPGA;DDS
中图法分类号:TN76 文献标识码:A 文章编号:2095-1302(2014)04-0061-02
0 引 言
直接数字频率合成器[1](Direct Digtal Synthesiser,DDS)与数字信号处理器[2](DSP)一样,是一项关键的数字化技术。与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛应用在电信与电子仪器领域,是实现设备数字化的一个关键技术。
目前,各大芯片厂商都相继推出了高性能和多功能的DDS芯片,内部数字信号抖动很小,输出信号的质量较高。但是在某些场合,由于专用的DDS芯片的控制方式是固定的,故在工作方式、频率控制等方面与系统的要求差距很大,数字控制器接口不便,难以满足复杂要求,对处理速度要求较高,从而也限制了频率进一步的提高,同时微处理器的处理任务也更加繁重。FPGA以其可靠性高、功耗低、保密性强等特点,在电子产品设计中得到了广泛的应用。本文根据实际需要,设计出符合特定需要的三相正弦DDS电路,通过实验证明,利用FPGA合成DDS是一个较好的解决方法,具有良好的实用性和灵活性。
1 DDS的基本原理
直接数字频率合成(DDS)技术的工作原理是基于相位和幅度的对应关系,通过改变频率控制字K来改变相位累加器的累加速度,然后在固定时钟fc的控制下取样,取样得到的相位值通过相位幅度转换得到与相位值对应的幅度序列,幅度序列再通过D/A转换就可以得到模拟波形的输出。DDS 原理框图如图1所示。
图1 DDS原理图
在图 1 中,累加器单个时钟周期的相位增量为 :
(1)
其中N为累加器字长,角频率为:
(2)
DDS的输出频率为:
(3)
DDS输出的频率步进间隔:
(4)
由式(3)可见,相位累加器进行线性相位累加时 , 频率控制字的相位增加量越大 , 相位累加器的溢出频率越高 , 输出信号的频率也就越高。
2 三相正弦信号系统框图
系统结构图由频率、相位控制字,数字模拟转换器(即D/A转换),DDS模块以及低通滤波器(LPF)等构成。如图2所示,其中频率控制字K控制频率的输入,而相位控制字为P,与DDS模块一起精确控制频率的变化;D/A转换是把波形对应的数字量快速地转换为对应波形的模拟信号;低通滤波器用于滤除阶梯信号中的谐波分量。本文采用2阶低通滤波电路,阶梯信号通过低通滤波,使得输出信号频谱纯度较好,失真较小。
图2 三相正弦信号系统框图
3 三相正弦信号发生器的FPGA 实现
3.1 DSP Builder设计流程
DSP Builder设计流程图如图3所示。具体步骤如下:
(1)在Matlab/Simulink中进行设计输入。即在Matlab的Simulink环境中建立一个mdl模型文件,用图形方式调用Altera DSP Builder和其他的Simulink库中的图形模块,构成系统级或算法级设计框图;
(2)利用Simulink的图形化仿真、分析功能。分析此设计模型的正确性,完成模型仿真;
(3)通过Signal Compiler把Simulink的模型文件(后缀为.mdl)转化成通用的硬件描述语言,VHDL文件(后缀为.vhd)。也是DSP Builder设计实现的关键一步;
(4)对以上顶层设计产生的VHDL的RTL代码和仿真文件进行综合、编译适配以及仿真。
图3 DSP Builder设计流程图
3.2 系统模型图建立
实现相位互差120°的三相正弦信号发生器的原理与单相正弦信号发生器的原理基本一致,不同的是三相发生器需要两个具有固定相位偏移的相位加法器。图4为基于Simulink平台建立的系统系统模型图。图5为频率控制字为2时的仿真波形。
图4 三相正弦信号发生器模型图
图5 频率控制字为2时的仿真波形
3.3 硬件实时测试
三相正弦信号发生器的输出信号经D/A转换后可以通过示波器进行测试,也可以通过嵌入式逻辑分析仪Signal TapⅡ直接测试。通过嵌入式逻辑分析仪Signal TapⅡ直接测试得到的实时波形如6所示。由波形图可知,成功地完成了三相正弦信号发生器的FPGA设计。
图6 硬件实时测试中三项正弦信号在SignalTapⅡ中的测试结果
4 结 语
本文提出了利用直接数字频率合成技术(即DDS)设计三相电正弦波形的方法,这种方法克服了传统波形发生器输出波形频率窄的缺点,可以根据需要得到很宽范围的合成波形。采用FPGA构造电力电子装置的控制单元具有简单灵活、控制精确、易修改、可现场编程等优点。这种方法可广泛应用于要求合成波形的谐波小、频带宽的测试仪器中。如果适当地设计低通滤波器,则可以制作频率范围宽、精度高的信号源。
参 考 文 献
[1]左磊.双RAM直接数字合成任意波形发生器微机插卡研制[J].清华大学学报,1999,39(2):90-93.
[2]张平.在DDS波形发生器中相位截尾噪声的分析和抑制[J].仪器仪表学报,2003,24(1):92-95.
[3]崔敏,邓祥明.改革实验教学方式.培养工程实践能力[J].实验技术与管理,2001,18(3):118-120.
[4]夏宇闻.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,2008.
[5]张庆顺,李金凤.基于单片机与DDS的多功能正弦信号发生器设计[J].仪器仪表学报,2008,29(4):214-217.
[6]谢亮.基于FPGA的ROM数据定制的几种方法[J].科技广场,2008(10):162-163.
[7]李志鹏,沈军.基于DDS技术实现信号发生[J].微计算机信息,2007(23):175-177.
[8]李蒙,毛建东.单片机原理及应用[M].北京:中国轻工业出版社,2010.
[9]王爱华.浅谈单片机汇编语言教学[J].黑龙江科技信息,2009(17):149.
[10] Hmjushon. W. Lidamalu. ——Cx51 Compiler Users Guide. Optimizing C Compiler and Library Reference for Classic and Extended C51.Microcontrollers[J].IEEE.Trans.Ind.Aplication.2002:232-243.
摘 要:波形平滑、频率稳定的正弦信号是仿真研究的重要前提。为了能够方便地产生此信号,文章提出了一种基于DDS技术的正弦信号发生器的设计方法。该方法利用FPGA芯片及D/A转换器,采用直接数字频率合成(DDS)技术,设计并实现了相位、频率可控的相位相差120°的三相正弦信号发生器。同时把在Matlab环境中用DSP Builder画的原理图转化为VHDL语言,然后通过信号分析在QuartusⅡ中模拟仿真,最终下载到FPGA试验箱,这样,接上示波器即可观察到三相正弦信号。文章给出了基于FPGA的三相正弦信号波形的设计方法,并经软件仿真测试验证及硬件测试,结果表明,该系统具有较高的精度和稳定性。
关键词:直接数字频率合成器;三相正弦信号;FPGA;DDS
中图法分类号:TN76 文献标识码:A 文章编号:2095-1302(2014)04-0061-02
0 引 言
直接数字频率合成器[1](Direct Digtal Synthesiser,DDS)与数字信号处理器[2](DSP)一样,是一项关键的数字化技术。与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛应用在电信与电子仪器领域,是实现设备数字化的一个关键技术。
目前,各大芯片厂商都相继推出了高性能和多功能的DDS芯片,内部数字信号抖动很小,输出信号的质量较高。但是在某些场合,由于专用的DDS芯片的控制方式是固定的,故在工作方式、频率控制等方面与系统的要求差距很大,数字控制器接口不便,难以满足复杂要求,对处理速度要求较高,从而也限制了频率进一步的提高,同时微处理器的处理任务也更加繁重。FPGA以其可靠性高、功耗低、保密性强等特点,在电子产品设计中得到了广泛的应用。本文根据实际需要,设计出符合特定需要的三相正弦DDS电路,通过实验证明,利用FPGA合成DDS是一个较好的解决方法,具有良好的实用性和灵活性。
1 DDS的基本原理
直接数字频率合成(DDS)技术的工作原理是基于相位和幅度的对应关系,通过改变频率控制字K来改变相位累加器的累加速度,然后在固定时钟fc的控制下取样,取样得到的相位值通过相位幅度转换得到与相位值对应的幅度序列,幅度序列再通过D/A转换就可以得到模拟波形的输出。DDS 原理框图如图1所示。
图1 DDS原理图
在图 1 中,累加器单个时钟周期的相位增量为 :
(1)
其中N为累加器字长,角频率为:
(2)
DDS的输出频率为:
(3)
DDS输出的频率步进间隔:
(4)
由式(3)可见,相位累加器进行线性相位累加时 , 频率控制字的相位增加量越大 , 相位累加器的溢出频率越高 , 输出信号的频率也就越高。
2 三相正弦信号系统框图
系统结构图由频率、相位控制字,数字模拟转换器(即D/A转换),DDS模块以及低通滤波器(LPF)等构成。如图2所示,其中频率控制字K控制频率的输入,而相位控制字为P,与DDS模块一起精确控制频率的变化;D/A转换是把波形对应的数字量快速地转换为对应波形的模拟信号;低通滤波器用于滤除阶梯信号中的谐波分量。本文采用2阶低通滤波电路,阶梯信号通过低通滤波,使得输出信号频谱纯度较好,失真较小。
图2 三相正弦信号系统框图
3 三相正弦信号发生器的FPGA 实现
3.1 DSP Builder设计流程
DSP Builder设计流程图如图3所示。具体步骤如下:
(1)在Matlab/Simulink中进行设计输入。即在Matlab的Simulink环境中建立一个mdl模型文件,用图形方式调用Altera DSP Builder和其他的Simulink库中的图形模块,构成系统级或算法级设计框图;
(2)利用Simulink的图形化仿真、分析功能。分析此设计模型的正确性,完成模型仿真;
(3)通过Signal Compiler把Simulink的模型文件(后缀为.mdl)转化成通用的硬件描述语言,VHDL文件(后缀为.vhd)。也是DSP Builder设计实现的关键一步;
(4)对以上顶层设计产生的VHDL的RTL代码和仿真文件进行综合、编译适配以及仿真。
图3 DSP Builder设计流程图
3.2 系统模型图建立
实现相位互差120°的三相正弦信号发生器的原理与单相正弦信号发生器的原理基本一致,不同的是三相发生器需要两个具有固定相位偏移的相位加法器。图4为基于Simulink平台建立的系统系统模型图。图5为频率控制字为2时的仿真波形。
图4 三相正弦信号发生器模型图
图5 频率控制字为2时的仿真波形
3.3 硬件实时测试
三相正弦信号发生器的输出信号经D/A转换后可以通过示波器进行测试,也可以通过嵌入式逻辑分析仪Signal TapⅡ直接测试。通过嵌入式逻辑分析仪Signal TapⅡ直接测试得到的实时波形如6所示。由波形图可知,成功地完成了三相正弦信号发生器的FPGA设计。
图6 硬件实时测试中三项正弦信号在SignalTapⅡ中的测试结果
4 结 语
本文提出了利用直接数字频率合成技术(即DDS)设计三相电正弦波形的方法,这种方法克服了传统波形发生器输出波形频率窄的缺点,可以根据需要得到很宽范围的合成波形。采用FPGA构造电力电子装置的控制单元具有简单灵活、控制精确、易修改、可现场编程等优点。这种方法可广泛应用于要求合成波形的谐波小、频带宽的测试仪器中。如果适当地设计低通滤波器,则可以制作频率范围宽、精度高的信号源。
参 考 文 献
[1]左磊.双RAM直接数字合成任意波形发生器微机插卡研制[J].清华大学学报,1999,39(2):90-93.
[2]张平.在DDS波形发生器中相位截尾噪声的分析和抑制[J].仪器仪表学报,2003,24(1):92-95.
[3]崔敏,邓祥明.改革实验教学方式.培养工程实践能力[J].实验技术与管理,2001,18(3):118-120.
[4]夏宇闻.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,2008.
[5]张庆顺,李金凤.基于单片机与DDS的多功能正弦信号发生器设计[J].仪器仪表学报,2008,29(4):214-217.
[6]谢亮.基于FPGA的ROM数据定制的几种方法[J].科技广场,2008(10):162-163.
[7]李志鹏,沈军.基于DDS技术实现信号发生[J].微计算机信息,2007(23):175-177.
[8]李蒙,毛建东.单片机原理及应用[M].北京:中国轻工业出版社,2010.
[9]王爱华.浅谈单片机汇编语言教学[J].黑龙江科技信息,2009(17):149.
[10] Hmjushon. W. Lidamalu. ——Cx51 Compiler Users Guide. Optimizing C Compiler and Library Reference for Classic and Extended C51.Microcontrollers[J].IEEE.Trans.Ind.Aplication.2002:232-243.