⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nco_tb.v

📁 Quartus中实现的DDS 使用的是altera提供的IP core
💻 V
字号:
//	Copyright (C) 1988-2007 Altera Corporation//	Any megafunction design, and related net list (encrypted or decrypted),//	support information, device programming or simulation file, and any other//	associated documentation or information provided by Altera or a partner//	under Altera's Megafunction Partnership Program may be used only to//	program PLD devices (but not masked PLD devices) from Altera.  Any other//	use of such megafunction design, net list, support information, device//	programming or simulation file, or any other related documentation or//	information is prohibited for any other purpose, including, but not//	limited to modification, reverse engineering, de-compiling, or use with//	any other silicon devices, unless such use is explicitly licensed under//	a separate agreement with Altera or a megafunction partner.  Title to//	the intellectual property, including patents, copyrights, trademarks,//	trade secrets, or maskworks, embodied in any such megafunction design,//	net list, support information, device programming or simulation file, or//	any other related documentation or information provided by Altera or a//	megafunction partner, remains with Altera, the megafunction partner, or//	their respective licensors.  No other licenses, including any licenses//	needed under any third party's intellectual property, are provided herein.//   NCO ver 8.1 VERILOG HDL TESTBENCH`timescale 1ps / 1psmodule NCO_tb;wire [9:0] sin_val;reg [31:0] phi;reg [15:0] fmod;reg [9:0] pmod;wire out_valid;reg reset_n;wire reset; assign reset = !reset_n;reg clken;reg clk;initial  begin    $dumpvars;    #0 clk = 1'b0;    #0 reset_n = 1'b0;    #0 clken = 1'b1;    #0 phi = 32'b00000010100011110101110000101001;    #0 fmod = 16'b0001000000000000;    #0 pmod = 64;    #69999 reset_n = 1'b1;  endalways  begin    #5000 clk = 1;    #5000 clk = 0;  endinteger sin_ch, sin_print;initial  begin    sin_ch = $fopen ("fsin_o_ver_NCO.txt");  endalways @(posedge clk)  begin    if(reset_n==1'b1 & out_valid==1'b1)      begin        if (sin_val[9:0] < (1<<9))          sin_print = sin_val[9:0];        else          sin_print =  sin_val[9:0] - (1<<10);    $fdisplay (sin_ch, "%d", sin_print);      endendNCO i_NCO (    .out_valid(out_valid),    .fsin_o(sin_val[9:0]),    .phi_inc_i(phi[31:0]),    .freq_mod_i(fmod),    .phase_mod_i(pmod),    .reset_n(reset_n),    .clken(clken),    .clk(clk)    );endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -