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

📄 ad9957_qudc.v

📁 运用FPGA控制AD9957的操作
💻 V
字号:
`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: // Engineer: // // Create Date:    15:19:20 12/05/2007 // Design Name: // Module Name:    ad9957_qudc // Project Name: // Target Devices: // Tool versions: // Description: //// Dependencies: //// Revision: // Revision 0.01 - File Created// Additional Comments: ////////////////////////////////////////////////////////////////////////////////////module ad9957_qudc(clk, nrst, start, ncs, sclk, sdio, sdo, io_update, io_reset, profile);    input clk;    input nrst;    input start;    output ncs;    output sclk;    output sdio;    input sdo;    output io_update;    output io_reset;    output [2:0] profile;	////////////////////////////////////////////////////////////////////////////////	reg ncs;    reg sclk;    reg sdio;    reg io_update;    reg io_reset;    reg [2:0] profile;	//////////////////////////////////////////////////////////////////////////////////	////AD9957 REGTISTER	reg[31:0] ad9957_cfr1;				//0x00	reg[31:0] ad9957_cfr2;				//0x01	reg[31:0] ad9957_cfr3;				//0x02	reg[31:0] ad9957_aux_dac;			//0x03	reg[31:0] ad9957_ioupdate_rate;		//0x04	reg[47:0] ad9957_ram_seg0;			//0x05	reg[47:0] ad9957_ram_seg1;			//0x06	reg[31:0] ad9957_saf;				//0x09	reg[31:0] ad9957_multichip_sync;	//0x0a	reg[63:0] ad9957_profile0;			//0x0e	reg[63:0] ad9957_profile1;			//0x0f	reg[63:0] ad9957_profile2;			//0x10	reg[63:0] ad9957_profile3;			//0x11	reg[63:0] ad9957_profile4;			//0x12	reg[63:0] ad9957_profile5;			//0x13	reg[63:0] ad9957_profile6;			//0x14	reg[63:0] ad9957_profile7;			//0x15	reg[31:0] ad9957_ram;				//0x16	reg[15:0] ad9957_gpio_config;		//0x18	reg[15:0] ad9957_gpio_data;			//0x19	//////////////////////////////////////////////////////////////////////////////////	// parameter setting	parameter IDLE = "IDLE";	parameter CFG1 = "cfr1";	parameter CFG2 = "cfr2";	parameter CFG3 = "cfr3";	parameter AUX_DAC = "ioupdate_rate";	parameter SEG0 = "ram_seg0";	parameter SEG01 = "ram_seg1";	parameter SAF = "saf";	parameter PRF0 = "profile0";	parameter PRF1 = "profile1";	parameter PRF2 = "profile2";	parameter PRF3 = "profile3";	parameter PRF4 = "profile4";	parameter PRF5 = "profile5";	parameter PRF6 = "profile6";	parameter PRF7 = "profile7";	parameter  = "ram";	parameter GPIO_C = "gpio_cfg";	parameter GPIO_D = "gpio_dat";	//////////////////////////////////////////////////////////////////////////////////	//single tone mode 	reg[3:0] state_sigle_cur,state_sigle_nxt;	//fsm1	always@(posedge clk)	begin		if(!nrst)		begin			state_sigle_cur <= IDLE;		end		else		begin			state_sigle_cur <= state_sigle_nxt; 		end	end	//fsm2	always@(posedge clk)	begin		if(!nrst)		begin			state_sigle_nxt <= IDLE;		end		else		begin			case(state_sigle_nxt)				IDLE:				begin					//				end				CFG1:				begin					//				end				CFG2:				begin					//				end				CFG3:				begin					//				end		end	end	//fsm3	always@(posedge clk)	begin		if(!nrst)		begin			state_sigle_cur <= IDLE;		end		else		begin			state_sigle_cur <= state_sigle_nxt; 		end	end	//////////////////////////////////////////////////////////////////////////////////	//DAC mode 	reg[3:0] state_idac_cur,state_idac_nxt;		always@(posedge clk)	begin		if(!nrst)		begin					end		else		begin					end	end	//////////////////////////////////////////////////////////////////////////////////	//QUDC mode 	reg[3:0] state_qudc_cur,state_qudc_nxt;		always@(posedge clk)	begin		if(!nrst)		begin					end		else		begin					end	end	////////////////////////////////////////////////////////////////////////////////	//serial interface	serial serl (		.clk(clk), 		.nrst(nrst), 		.start(start),		.addr(addr),		.din(data_in), 		.ncs(ncs), 		.sclk(sclk), 		.sdo(sdo), 		.sdi(sdio), 		.io_update(io_update), 		.io_reset(io_reset),		.dout(data_out),		.end_serial(end_serial)	);endmodule

⌨️ 快捷键说明

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