基于FPGA的典型开发系统设计实例--函数信号发生器.pdf

基于FPGA的典型开发系统设计实例--函数信号发生器.pdf

ID:48000747

大小:715.26 KB

页数:17页

时间:2020-01-11

基于FPGA的典型开发系统设计实例--函数信号发生器.pdf_第1页
基于FPGA的典型开发系统设计实例--函数信号发生器.pdf_第2页
基于FPGA的典型开发系统设计实例--函数信号发生器.pdf_第3页
基于FPGA的典型开发系统设计实例--函数信号发生器.pdf_第4页
基于FPGA的典型开发系统设计实例--函数信号发生器.pdf_第5页
资源描述:

《基于FPGA的典型开发系统设计实例--函数信号发生器.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于FPGA的典型开发系统设计实例--函数信号发生器落潇整理2013/11/26开篇:如果你还没有硬件平台,那么Quartus软件仿真也可以完成你的梦想。1.功能描述利用GW48-CK实验开发系统设计一个函数信号发生器,要求能够输出三角波、方波、梯形波、阶梯波等波形,可通过按键选择输出不同波形。2.设计思路函数信号发生器的原理框图如图1所示。FPGA芯片选用ACEX1K30TC144-3,D/A选用8位数模转换器DAC0832,滤波器采用有源滤波,GW48-CK实验开发系统选择模式5。FPGAD/A芯片滤波器图1多波形函数信号发生器原理框图3.系统程序设计首先

2、采用VHDL语言分别编写锯齿波(斜降)、三角波、锯齿波(斜升)、阶梯波(上升)、正弦波、方波、梯形波、双阶梯波以及八选一数据选择器的程序,各程序如下:3.1锯齿波(斜降)程序LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYdcrsISPORT(clk,reset:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDdcrs;ARCHITECTUREbehaveOFdcrsISBEGINPROCESS(clk,res

3、et)VARIABLEtmp:STD_LOGIC_VECTOR(7DOWNTO0);BEGINIFreset='0'THENtmp:="11111111";ELSIFclk'EVENTANDclk='1'THENIFtmp="00000000"THENTmp:="11111111";ELSEtmp:=tmp-1;ENDIF;ENDIF;q<=tmp;ENDPROCESS;ENDbehave;3.2三角波程序LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYde

4、ltaISPORT(clk,reset:INSTD_LOGIC;q:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDdelta;ARCHITECTUREbehaveOFdeltaISBEGINPROCESS(clk,reset)VARIABLEtmp:STD_LOGIC_VECTOR(7DOWNTO0);VARIABLEa:STD_LOGIC;BEGINIFreset='0'THENtmp:="00000000";155ELSIFclk'EVENTANDclk='1'THENIFa='0'THENIFtmp="11111110"THENtm

5、p:="11111111";a:='1';ELSEtmp:=tmp+1;ENDIF;ELSEIFtmp="00000001"THENtmp:="00000000";a:='0';ELSETmp:=tmp-1;ENDIF;ENDIF;ENDIF;q<=tmp;ENDPROCESS;ENDbehave;3.3锯齿波(斜升)程序LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYicrsISPORT(clk,reset:INSTD_LOGIC;q:OUTSTD_LOG

6、IC_VECTOR(7DOWNTO0));ENDicrs;ARCHITECTUREbehaveOFicrsISBEGINPROCESS(clk,reset)VARIABLEtmp:STD_LOGIC_VECTOR(7DOWNTO0);BEGINIFreset='0'THENtmp:="00000000";ELSIFclk'EVENTANDclk='1'THENIFtmp="11111111"THEN156tmp:="00000000";ELSEtmp:=tmp+1;ENDIF;ENDIF;q<=tmp;ENDPROCESS;ENDbehave;3.4阶梯波(上

7、升)程序LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYladder_upISPORT(clk,reset:INSTD_LOGIC;q:OUTintegerRANGE0to255);--STD_LOGIC_VECTOR(7DOWNTO0));ENDladder_up;ARCHITECTUREbehaveOFladder_upISBEGINPROCESS(clk,reset)VARIABLEtmp,a:integer;--STD_LOGIC_VECTOR(7D

8、OWNTO0);BEGINIFrese

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。