资源描述:
《eda综合实验——正弦信号发生器-张炘》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、学生实验报告系别电子信息学院课程名称《EDA综合实验》班级10通信A班实验名称正弦信号发生器姓名张炘实验时间2012年 10月 30日学号2010010101073指导教师王红航报告内容一、实验目的和任务本次实验的任务是设计一个正弦信号发生器,并且熟悉QuartusII软件中软件功能自模块设计的使用。以软件中自带的计数器模块、ROM模块设计正弦信号发生器。二、实验原理介绍本次是利用fpga芯片设计一个正弦信号发生器,利用ROM模块把正弦信号的每时刻对应的幅度数值填入其中,然后用一个八位计数器与ROM级联,然后把其中的数据读出,数据进入DA数模转换器中实现正弦信号的发生。三、设计代码(
2、或原理图)、仿真波形及分析以上为ROM中的数据系统中ROM的程序如下:moduleROM(address,clock,q);input[5:0]address;inputclock;output[7:0]q;`ifndefALTERA_RESERVED_QIS//synopsystranslate_off`endiftri1clock;`ifndefALTERA_RESERVED_QIS//synopsystranslate_on`endifwire[7:0]sub_wire0;wire[7:0]q=sub_wire0[7:0];altsyncramaltsyncram_compon
3、ent(.address_a(address),.clock0(clock),.q_a(sub_wire0),.aclr0(1'b0),.aclr1(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),.data_a({8{1'b1}}),.data_b(1'b1),.eccstat
4、us(),.q_b(),.rden_a(1'b1),.rden_b(1'b1),.wren_a(1'b0),.wren_b(1'b0));defparamaltsyncram_component.clock_enable_input_a="BYPASS",altsyncram_component.clock_enable_output_a="BYPASS",altsyncram_component.init_file="ROM.mif",altsyncram_component.intended_device_family="CycloneII",altsyncram_compone
5、nt.lpm_hint="ENABLE_RUNTIME_MOD=NO",altsyncram_component.lpm_type="altsyncram",altsyncram_component.numwords_a=64,altsyncram_component.operation_mode="ROM",altsyncram_component.outdata_aclr_a="NONE",altsyncram_component.outdata_reg_a="UNREGISTERED",altsyncram_component.widthad_a=6,altsyncram_co
6、mponent.width_a=8,altsyncram_component.width_byteena_a=1;endmodule得到ROM模块图形以下是计数器的程序如下:moduleCOUNT(clock,q);inputclock;output[5:0]q;wire[5:0]sub_wire0;wire[5:0]q=sub_wire0[5:0];lpm_counterLPM_COUNTER_component(.clock(clock),.q(sub_wire0),.aclr(1'b0),.aload(1'b0),.aset(1'b0),.cin(1'b1),.clk_en(1
7、'b1),.cnt_en(1'b1),.cout(),.data({6{1'b0}}),.eq(),.sclr(1'b0),.sload(1'b0),.sset(1'b0),.updown(1'b1));defparamLPM_COUNTER_component.lpm_direction="UP",LPM_COUNTER_component.lpm_port_updown="PORT_UNUSED",LPM_COUNTER_component.lpm_t