- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FPGA三相正弦信号发生器的设计.doc
基于FPGA三相正弦信号发生器的设计
摘 要:波形平滑、频率稳定的正弦信号是仿真研究的重要前提。为了能够方便地产生此信号,文章提出了一种基于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 三相正弦信号发生器模型图
文档评论(0)