正弦的设计(有详细步骤)

正弦的设计(有详细步骤)

ID:11016506

大小:438.60 KB

页数:10页

时间:2018-07-09

正弦的设计(有详细步骤)_第1页
正弦的设计(有详细步骤)_第2页
正弦的设计(有详细步骤)_第3页
正弦的设计(有详细步骤)_第4页
正弦的设计(有详细步骤)_第5页
资源描述:

《正弦的设计(有详细步骤)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、正弦信号发生器设计信息工程与工程学院电子信息科学与技术091班姓名:李聪学号:3090748117指导老师:易金生一、设计目的:进一步熟悉QuartusII及其LPM_ROM与FPGA硬件资源的使用方法。培养动手能力以及合作能力。二、实验内容设计一正弦信号发生器,采用ROM进行一个周期数据存储,并通过地址发生器产生正弦信号。(ROM:6位地址8位数据;要求使用两种方法:VHDL编程和LPM)。在QUARTUSII上完成正弦波信号发生器的设计,包括仿真和资源利用情况了解(假设利用Cyclone器件)。最后在实验系统上

2、实测,包括FPGA中ROM的在系统数据读写测试和利用示波器测试。信号输出的D/A使用实验系统上的ADC0832。三、实验原理1、图一所示的信号发生器结构图中,顶层文件sin.v在FPGA中实现。它包含两个部分:ROM的地址信号发生器,由6位计数器担任;一个正弦数据ROM,由LPM_ROM模块构成。LPM_ROM底层是FPGA中的EAB、ESB或M4K等模块。地址发生器的时钟clk的输入频率fo与每周期的波形数据点数(在此选择64点),以及D/A输出的频率f的关系是:f=fo/64图一2、图二所示是此正弦波发生器的R

3、TL图。其中左边三个——加法器、多路选择器、寄存器构成六位计数器;其输出接右边ROM的地址输入端;输出可以接FPGA外的DAC,完成正弦波形输出。当然,也可以利用逻辑分析仪SignalTapⅡ对输出口Q[7:0]的数据采样,从计算机上实时了解输出波形的情况。图二3、在设计正弦波信号发生器前,必须首先完成存放波形数据ROM的设计。本实验采取的ROM的数据由康芯片生成器产生四、实验源代码1、顶层模块modulesin(RST,CLK,EN,Q,AR,WR_n);output[7:0]Q;output[5:0]AR;ou

4、tputWR_n;inputEN,CLK,RST;wire[5:0]TMP;reg[5:0]Q1;wireWR_n;wireRST;//例化分频器得到1Hz时钟divider_by_50Mu0(.o_clk(clk_1_Hz),.rst_n(RST),.i_clk(CLOCK_50));always@(posedgeCLKornegedgeRST)if(!RST)Q1<=7'B000000;elseif(EN)Q1<=Q1+1;elseQ1<=Q1;assignTMP=Q1;assignAR=TMP;assign

5、WR_n=~EN;da_sinIC1(.address(TMP),.clock(CLK),.q(Q));endmodule2、分频模块/*divider_by_50M.v/Verilog*/moduledivider_by_50M(outputrego_clk,inputrst_n,inputi_clk);parameterN=1_0000;parameterM=4_999;//M=(N/2)-1reg[15:0]cnt;always@(posedgei_clk,negedgerst_n)beginif(!rst

6、_n)cnt<=0;elsebeginif(cnt==N-1)cnt<=0;elsecnt<=cnt+16'b1;endendalways@(posedgei_clk,negedgerst_n)beginif(!rst_n)o_clk<=0;elsebeginif(cnt<=M)o_clk<=1;elseo_clk<=0;endendendmodule3、模块连接moduleda_sin(address,clock,q);input[4:0]address;inputclock;output[7:0]q;`ifnd

7、efALTERA_RESERVED_QIS//synopsystranslate_off`endiftri1clock;`ifndefALTERA_RESERVED_QIS//synopsystranslate_on`endifwire[7:0]sub_wire0;wire[7:0]q=sub_wire0[7:0];altsyncramaltsyncram_component(.clock0(clock),.address_a(address),.q_a(sub_wire0),.aclr0(1'b0),.aclr1

8、(1'b0),.address_b(1'b1),.addressstall_a(1'b0),.addressstall_b(1'b0),.byteena_a(1'b1),.byteena_b(1'b1),.clock1(1'b1),.clocken0(1'b1),.clocken1(1'b1),.clocken2(1'b1),.clocken3(1'b1),

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

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

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