- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VHDL语言的波形
发生器的设计
基于VHDL语言的波形发生器的设计
利用FPGA芯片信号发生器的设计。当按下开关1时产生三角波,当按下开关2时产生正弦波,当按下开关3时产生方波。本次设计采用xilinx公司的ISE设计工具,在zedboard开发板中的xc7z020芯片上用VHDL来实现,并且利用ISE自带的chipscop完成对FPGA内部的信号的读取。这样的设计具有体积小,修改升级容易等特点。
本设计采用自顶向下、纯文本实现数字时钟的设计、下载和调试。
1 设计原理
本设计由信号产生,信号选择,信号控制输出三大模块组合而成。其中信号产生模块有:三角波模块、方波模块、正弦波模块。本设计采用K0~K2这三个按键为信号选择开关,选择信号产生模块输出的信号。(顶层设计的例化语句见附录一)其RTL图1-1:
RTL图1-1
2主要功能模块
u1:square方波产生模块;
u2:sin正弦波产生模块;
u3:delta三角波产生模块;
u4:sig_control数据选择器模块;
u5,u6:为使用chipscope所需生成的IP核。
2.1 u1方波产生模块(程序见附录二)
产生方波,初始化为幅值225的高电平,每有一次时钟上升沿触发产生一次计数,当计数值达到128时跳到为0的低电平。利用循环语句不断的产生高低电平的方波输出。原理如图2-1:
方波模块RTL 图2-1
2.2 u1正弦波产生模块(程序见附录三)
功能是产生正弦波,产用信号抽样的原理,在一个正弦信号中等间隔的抽样64点,此64点的幅值作为一个正弦波数据表,每有一次时钟上升沿触发便赋予输出端q一个点的数据,依次赋值64个点的数据便完成一个周期的正弦波的输出。并利用循环语句不断的产生正弦波的输出。原理如图2-2:
正弦波模块RTL 图2-2
2.3 u1三角波产生模块(程序见附录四)
功能是产生三角波,初始化为幅值为0,每有一次时钟上升沿触发便进行幅值加1,当幅值达到最大255时,每有一次时钟上升沿触发便进行幅值减1,当幅值减为0时完成一个周期的输出。利用循环语句不断的产生幅值为255的波形的输出。原理图如下:
三角波模块RTL 图2-3
2.3 u4数据选择器模块(见附录五)
利用数据选择器模块可以对三角波,正弦波,方波进行三选一得输出。当开关d0拨通,d1,d2均闭合时q端输出的是三角波;
当开关d1拨通,d0,d2均闭合时q端输出的是方波;
当开关d2拨通,d0,d1均闭合时q端输出的是正弦波;
数据选择器模块RTL 图2-4
3 硬件测试
当程序下载到硬件之后,采用chipscope实现对FPGA内部信号的在线调试。
在FPGA已经下载程序的情况下,添加我们关心的信号或者接口,将选定了端口Chipscope(不妨理解为一个嵌入的系统)加入到程序后重新布局布线下载到FPGA中,此时我们就可以观察信号和接口的值了。
在对ip核的设置中设置chipscope每次对信号的抓取为2048个。
3.1 对三角波的抓取
当选择信号K0置1,K1、K2置0时,信号发生器输出波形为三角波,如图3-1-1所示:
Chipscope抓三角波波形 图3-1-1
利用chipscope的导出功能,得到具体的数据表。如图3-1-2
所示:
Chipscope对三角波形的导出 图3-1-2
3.2 对方波的抓取
当选择信号K1置1,K0、K2置0时,信号发生器输出波形为方波,如图3-2-1所示:
Chipscope抓方波波形 图3-2-1
利用chipscope的导出功能,得到具体的数据表。如图3-2-2所示:
Chipscope对方波形的导出 图3-2-2
3.3 对正弦波的抓取
当选择信号K2置1,K0、K1置0时,信号发生器输出波形为正弦波,如图3-3-1所示:
Chipscope抓正弦波形 图3-3-1
利用chipscope的导出功能,得到具体的数据表。如图3-3-2所示:
Chipscope对正弦波形的导出 图3-3-2
4 利用MATLAB实现直观的观测数据
因为利用chipscope所导出的数据是一个一个的数组,所以无法对波形实现直观的观察。为了方便观察实验数据,利用MATLAB软件实现对文本文件中的数据的读。导出的每行数据可看做一个数组,每个数组第11位是波形的数据位,因此利用MATLAB只读第11列的数据。利用MATLAB画波形时,横轴作为波形的时间轴,每间隔为1打一个点,纵轴作为波形的幅值,用polt输出将这些点链接起来,就可以直观的观测波形。
方波的MATLAB程序如下:
clc,clear
data=textread(
您可能关注的文档
- 九年级上第三章:能量的转化与守恒知识点整理重点分析.doc
- 基础摄影知识点-复习参考重点分析.doc
- 九年级上第四章人体新陈代谢总结复习_new重点分析.doc
- 基础摄影知识点重点分析.doc
- 九年级上第四章人体新陈代谢总结复习重点分析.doc
- 基础生化试题集_new重点分析.doc
- 建筑史考研题型-解题思路_new重点分析.doc
- 九年级物理声现象_new重点分析.doc
- 基础生化试题集重点分析.doc
- 九年级物理声现象重点分析.doc
- 江苏省镇江市2013届高三第一学期期末考试高三语文试卷_new重点分析.doc
- 考博英语高频词汇精华版-打印版_new重点分析.doc
- 基于Web的企业考勤管理系统设计_new重点分析.doc
- 江苏省镇江市2013届高三第一学期期末考试高三语文试卷重点分析.doc
- 考博英语高频词汇精华版-打印版重点分析.doc
- 基于Web的企业考勤管理系统设计重点分析.doc
- 考博英语高频单词_new_new重点分析.docx
- 江苏省镇江中学2015-2016学年高二上学期期中考试生物(选修)试卷_new重点分析.doc
- 基于WIFI模块和单片机的无线数据传输(附代码)_new重点分析.doc
- 考博英语---高频单词_new_new重点分析.docx
文档评论(0)