- 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信号发生器研究与设计
一种基于FPGA的信号发生器研究与设计
摘要:信号发生器已再多个领域中得到广泛应用,一般情况下使用较多的是基于FPGA、单片机等处理器芯片来控制专用信号,这种设计方案与传统模拟分立器信号设计相比具有更精确、更稳定、信号参数容易调节等特点。文章基于此探讨分析了一种基于FPGA的信号发生器的设计问题,以供相关人士参考。
关键词:FPGA;多功能信号发生器;设计
一、正弦波信号的产生方法概述及原理分析
1、正弦波信号的产生方法概述
工程实践中常用的正弦波信号生成方式有以下两种。方式1,使用模拟电路或者专用芯片搭建而成,可以产生方波,正弦波,三角波,通过调整外部元件可以改变输出频率。但是采用模拟器件分散性大,存在频率不高,抗干扰能力差,成本也较高且不易扩展和调试的缺陷。方式2,由单片机来完成。单片机功能强大,集成度高且其设计和控制比较容易。但是由于单片机设计系统中需使用许多分立元件组成单片机的外围电路,因此系统复杂,随着采用数据的增加,需要占用系统很多存储资源,复杂的运行过程容易出现死机或进入死循环,可靠性降低。基于FPGA的正弦波信号发生器的设计方法可以实现三角波和正弦波的数字化处理,将一个周期内的采集点存储起来,生成频率和幅值都可调的正弦波或者三角波,再通过D/A转换和滤波电路便可得到模拟波形。该方法编程简单,实现灵活。
2、基于FPGA的正弦波产生原理
图1给出了基于FPGA的正弦波发生器的组成示意图。系统由4部分组成:波形发生控制电路,波形数据ROM,D/A转换和滤波电路。波形发生控制电路由FPGA来完成。FPGA波形发生控制电路通过输入控制信号和高速时钟信号,向波形数据ROM发出地址信号。波形ROM中存有发生器的波形数据。取出采样点的幅值就可以产生数字化的波形。
图1 波形发生器组成示意图
正弦波在一个周期内的波形可以通过数字采样实现,即用N个幅值离散的等间隔采样点表示。如图2为正弦波采样的原理示意图,设周期为T,采样点数为N,采样间隔为△t,T=N△t,那么就可以得到图示的数字信号。要改变频率只需要改变采样时间间隔,由于采样点数N不变,N=T/△t,因此△t越小,T就越小,对应的频率就越大。
D/A转换器负责将FPGA中ROM输出的数字量数据转换成模拟信号量,再经过滤波电路后,输出就是所要得到的需要波形。输出波形的频率上限与D/A器件的转换速度有重要关系。本实验采用DAC0832器件。
图2 正弦波采样原理示意图
二、基于FPGA信号发生器的模块化设计
FPGA的模块化设计就是按照一定规则把系统划分成若干模块,然后对每个模块分别进行设计,并将结果约束在预先设置好的区域内,最后将所有模块有机的组织起来完成整个系统设计。下面对需要设计的模块进行介绍。
1、FPGA的输入输出模块
输入模块采用按键输入,同时通过按键来改变波形和频率。输出端口输出八位二进制码,代表数字化的正弦波形。输出受内部程序控制,通过FPGA与DAC0832的互联接口输出模拟波形。
2、波形发生模块
由于波形发生控制器和波形数据ROM都是利用硬件描述语言VHDL编程实现的,所以统称为波形发生模块。波形发生模块包括频率设置、正弦波/三角波切换进程。ROM数据存储模块主要用来存储正弦波或者三角波数据。当接收来自FPGA的地址信号后,从数据线输出相应的波形数据,便得到数字化波形。由于选用的D/A转换器一次只能转换8位二进制代码,而且模拟波的电压幅度由幅度比例系数决定,所以限定了波形的幅值比例系数为0~255。对波形采样点数目越多,波形的精准度越高,采样点数增加,需要的ROM数量也会增加。实验证明,只要采样点数超过32个就可以得到正确的波形数据。本设计采用64个采样点,每个采样点都对应了该点的幅值比例系数。每个ROM单元对应一个地址值,FPGA只要向ROM存储器输入相应的地址值就可以确定幅值。具体ROM模块生成步骤如下:
1、建立.mif格式文件
在QuartusII的ROM数据编辑窗口中建立.mif或.hex格式文件,然后将波形数据填入mif文件表中,如图3所示,波形数据mif表格。在表格中输入正弦波形数据,表格中的数据为10进制形式,任一数据(如第三行的99)对应的地址为左列数与顶行数之和)。共64个波形点。
图3 波形数据mif表格
2、定制ROM元件
根据需求设置MegaWizardPlug-inmanager,根据设置得到ROM模块的外部原理图,即ROM模块的结构。如图4所示,并且生成相应的ROM模块VHDL程序。
图4 ROM的外部原理图
3、验证ROM模块的正确性
为了验证正弦波波形数据的正确性,在应用R
您可能关注的文档
最近下载
- 0102、U9 cloud供应链-采购管理.pptx VIP
- 上海市各机构名称英译.docx VIP
- 0303、U9 cloud财务-应收管理.pptx VIP
- 0302、U9 cloud财务-应付管理.pptx VIP
- 0304、U9 cloud财务-总账管理.pptx VIP
- 数据通信与计算机网络(第3版)全套PPT课件.pptx
- 0105、U9 cloud供应链-多组织供应链协同.pptx VIP
- 第5课 走近科学家 第3课时(课件)2025-2026学年道德与法治三年级上册统编版.pptx VIP
- 临床药物治疗学第四节.pdf VIP
- 2025年湖南中医药高等专科学校单招职业技能测试必刷测试卷最新.docx VIP
文档评论(0)