Verilog期末实验报告-波形发生器

Verilog期末实验报告-波形发生器

ID:36600071

大小:451.86 KB

页数:7页

时间:2019-05-12

Verilog期末实验报告-波形发生器_第1页
Verilog期末实验报告-波形发生器_第2页
Verilog期末实验报告-波形发生器_第3页
Verilog期末实验报告-波形发生器_第4页
Verilog期末实验报告-波形发生器_第5页
资源描述:

《Verilog期末实验报告-波形发生器》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、深圳大学实验报告课程名称:Verilog使用及其应用实验名称:频率可变的任意波形发生器学院:电子科学与技术学院专业:电子科学与技术班级:组号:指导教师:报告人:学号:实验地点一、实验目的应用Verilog进行编写四种波形发生的程序,并结合DE2板与DVCC实验板上的D/A转换器在示波器显示出波形。初步了解Verilog的编程及DE2板的应用,加强对其的实际应用操作能力。二、实验原理实验程序分为三部分:第一、通过计数器实现内置信号分频,并通过外置开关调节频率来控制输出波形的频率。第二、设定ROM中的数值,将波形数据存储到ROM中。第三、设定波形选择开关。总体设计方案及其原理说明:FP

2、GA图1-1系统总体设计方案DDS是一种把数字信号通过数/模转换器转换成模拟信号的合成技术。它由相位累加器、相幅转换函数表、D/A转换器以及内部时序控制产生器等电路组成。参考频率f_clk为整个合成器的工作频率,输入的频率字保存在频率寄存器中,经N位相位累加器,累加一次,相位步进增加,经过内部ROM波形表得到相应的幅度值,经过D/A转换和低通滤波器得到合成的波形。p为频率字,即相位增量;参考频率为f_clk;相位累加器的长度为N位,输出频率f_out为:f_out——输出信号的频率;N————相位累加器的位数;p———频率控制字(步长);f_clk——基准时钟频率。图1-2四种波形单

3、周期的取样示意图段地址基地址D7D6D5D4D3D2D1D000000100000117000101500011170010010001013001105001113010003010013010103010113011001011011011101011111100000100015100101010011151010020101012510110301011135110003511001301101025110112011100151110110111105111110图1-3函数查找表的设计三、实验内容程序编码:moduledds(f_clk,p,choose,data);//

4、端口设定input[5:0]p;//频率控制字input[1:0]choose;//波形选择inputf_clk;//内置晶振output[7:0]data;wire[7:0]data;reg[5:0]addr,addr1;reg[5:0]i;regf_out;initialbegini<=0;addr<=0;f_out<=0;endalways@(posedgef_clk)//利用计数器实现任意分频beginif(i==p)//设定频率控制字pbegini=0;f_out=~f_out;endelsei=i+1;endfunction[7:0]rom_out;//ROM的设定inp

5、ut[5:0]addr1;case(addr1)//各波形初值的预装入0:rom_out=10;//正弦波初值1:rom_out=17;2:rom_out=15;3:rom_out=17;4:rom_out=10;5:rom_out=3;6:rom_out=5;7:rom_out=3;8:rom_out=3;//方波初值9:rom_out=3;10:rom_out=3;11:rom_out=3;12:rom_out=1;13:rom_out=1;14:rom_out=1;15:rom_out=1;16:rom_out=0;//正三角波初值17:rom_out=5;18:rom_out

6、=10;19:rom_out=15;20:rom_out=20;21:rom_out=25;22:rom_out=30;23:rom_out=35;24:rom_out=35;//反三角波初值25:rom_out=30;26:rom_out=25;27:rom_out=20;28:rom_out=15;29:rom_out=10;30:rom_out=5;31:rom_out=0;default:rom_out=10'hxx;endcaseendfunctionalways@(posedgef_out)beginif(addr==8)//波形数据切换addr=0;elseaddr=a

7、ddr+1;case(choose)//波形选择开关设定0:addr1=addr;1:addr1=addr+8;2:addr1=addr+16;3:addr1=addr+24;endcaseendassigndata=rom_out(addr1);//将ROM中对应数据传递输出端口data输出endmodule四、实验截图1.正弦波示意图:(choose=0时的波形数值)2.方波示意图:(choose=1时的波形数值)3.正三角波示意图:(choose=2

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

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

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