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

📄 addsub16.v

📁 这是用python语言写的一个数字广播的信号处理工具包。利用它
💻 V
字号:
// megafunction wizard: %LPM_ADD_SUB%CBX%// GENERATION: STANDARD// VERSION: WM1.0// MODULE: lpm_add_sub // ============================================================// File Name: addsub16.v// Megafunction Name(s):// 			lpm_add_sub// ============================================================// ************************************************************// THIS IS A WIZARD-GENERATED FILE. DO NOT EDIT THIS FILE!// ************************************************************//Copyright (C) 1991-2003 Altera Corporation//Any  megafunction  design,  and related netlist (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,  netlist,  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, netlist,//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.//lpm_add_sub DEVICE_FAMILY=Cyclone LPM_PIPELINE=1 LPM_WIDTH=16 aclr add_sub clken clock dataa datab result//VERSION_BEGIN 3.0 cbx_lpm_add_sub 2003:04:10:18:28:42:SJ cbx_mgl 2003:06:11:11:00:44:SJ cbx_stratix 2003:05:16:10:26:50:SJ  VERSION_END//synthesis_resources = lut 17 module  addsub16_add_sub_gp9	( 	aclr,	add_sub,	clken,	clock,	dataa,	datab,	result) /* synthesis synthesis_clearbox=1 */;	input   aclr;	input   add_sub;	input   clken;	input   clock;	input   [15:0]  dataa;	input   [15:0]  datab;	output   [15:0]  result;	wire  [0:0]   wire_add_sub_cella_0cout;	wire  [0:0]   wire_add_sub_cella_1cout;	wire  [0:0]   wire_add_sub_cella_2cout;	wire  [0:0]   wire_add_sub_cella_3cout;	wire  [0:0]   wire_add_sub_cella_4cout;	wire  [0:0]   wire_add_sub_cella_5cout;	wire  [0:0]   wire_add_sub_cella_6cout;	wire  [0:0]   wire_add_sub_cella_7cout;	wire  [0:0]   wire_add_sub_cella_8cout;	wire  [0:0]   wire_add_sub_cella_9cout;	wire  [0:0]   wire_add_sub_cella_10cout;	wire  [0:0]   wire_add_sub_cella_11cout;	wire  [0:0]   wire_add_sub_cella_12cout;	wire  [0:0]   wire_add_sub_cella_13cout;	wire  [0:0]   wire_add_sub_cella_14cout;	wire  [15:0]   wire_add_sub_cella_dataa;	wire  [15:0]   wire_add_sub_cella_datab;	wire  [15:0]   wire_add_sub_cella_regout;	wire  wire_strx_lcell1_cout;	stratix_lcell   add_sub_cella_0	( 	.aclr(aclr),	.cin(wire_strx_lcell1_cout),	.clk(clock),	.cout(wire_add_sub_cella_0cout[0:0]),	.dataa(wire_add_sub_cella_dataa[0:0]),	.datab(wire_add_sub_cella_datab[0:0]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[0:0]));	defparam		add_sub_cella_0.cin_used = "true",		add_sub_cella_0.lut_mask = "96e8",		add_sub_cella_0.operation_mode = "arithmetic",		add_sub_cella_0.sum_lutc_input = "cin",		add_sub_cella_0.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_1	( 	.aclr(aclr),	.cin(wire_add_sub_cella_0cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_1cout[0:0]),	.dataa(wire_add_sub_cella_dataa[1:1]),	.datab(wire_add_sub_cella_datab[1:1]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[1:1]));	defparam		add_sub_cella_1.cin_used = "true",		add_sub_cella_1.lut_mask = "96e8",		add_sub_cella_1.operation_mode = "arithmetic",		add_sub_cella_1.sum_lutc_input = "cin",		add_sub_cella_1.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_2	( 	.aclr(aclr),	.cin(wire_add_sub_cella_1cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_2cout[0:0]),	.dataa(wire_add_sub_cella_dataa[2:2]),	.datab(wire_add_sub_cella_datab[2:2]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[2:2]));	defparam		add_sub_cella_2.cin_used = "true",		add_sub_cella_2.lut_mask = "96e8",		add_sub_cella_2.operation_mode = "arithmetic",		add_sub_cella_2.sum_lutc_input = "cin",		add_sub_cella_2.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_3	( 	.aclr(aclr),	.cin(wire_add_sub_cella_2cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_3cout[0:0]),	.dataa(wire_add_sub_cella_dataa[3:3]),	.datab(wire_add_sub_cella_datab[3:3]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[3:3]));	defparam		add_sub_cella_3.cin_used = "true",		add_sub_cella_3.lut_mask = "96e8",		add_sub_cella_3.operation_mode = "arithmetic",		add_sub_cella_3.sum_lutc_input = "cin",		add_sub_cella_3.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_4	( 	.aclr(aclr),	.cin(wire_add_sub_cella_3cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_4cout[0:0]),	.dataa(wire_add_sub_cella_dataa[4:4]),	.datab(wire_add_sub_cella_datab[4:4]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[4:4]));	defparam		add_sub_cella_4.cin_used = "true",		add_sub_cella_4.lut_mask = "96e8",		add_sub_cella_4.operation_mode = "arithmetic",		add_sub_cella_4.sum_lutc_input = "cin",		add_sub_cella_4.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_5	( 	.aclr(aclr),	.cin(wire_add_sub_cella_4cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_5cout[0:0]),	.dataa(wire_add_sub_cella_dataa[5:5]),	.datab(wire_add_sub_cella_datab[5:5]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[5:5]));	defparam		add_sub_cella_5.cin_used = "true",		add_sub_cella_5.lut_mask = "96e8",		add_sub_cella_5.operation_mode = "arithmetic",		add_sub_cella_5.sum_lutc_input = "cin",		add_sub_cella_5.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_6	( 	.aclr(aclr),	.cin(wire_add_sub_cella_5cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_6cout[0:0]),	.dataa(wire_add_sub_cella_dataa[6:6]),	.datab(wire_add_sub_cella_datab[6:6]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[6:6]));	defparam		add_sub_cella_6.cin_used = "true",		add_sub_cella_6.lut_mask = "96e8",		add_sub_cella_6.operation_mode = "arithmetic",		add_sub_cella_6.sum_lutc_input = "cin",		add_sub_cella_6.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_7	( 	.aclr(aclr),	.cin(wire_add_sub_cella_6cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_7cout[0:0]),	.dataa(wire_add_sub_cella_dataa[7:7]),	.datab(wire_add_sub_cella_datab[7:7]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[7:7]));	defparam		add_sub_cella_7.cin_used = "true",		add_sub_cella_7.lut_mask = "96e8",		add_sub_cella_7.operation_mode = "arithmetic",		add_sub_cella_7.sum_lutc_input = "cin",		add_sub_cella_7.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_8	( 	.aclr(aclr),	.cin(wire_add_sub_cella_7cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_8cout[0:0]),	.dataa(wire_add_sub_cella_dataa[8:8]),	.datab(wire_add_sub_cella_datab[8:8]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[8:8]));	defparam		add_sub_cella_8.cin_used = "true",		add_sub_cella_8.lut_mask = "96e8",		add_sub_cella_8.operation_mode = "arithmetic",		add_sub_cella_8.sum_lutc_input = "cin",		add_sub_cella_8.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_9	( 	.aclr(aclr),	.cin(wire_add_sub_cella_8cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_9cout[0:0]),	.dataa(wire_add_sub_cella_dataa[9:9]),	.datab(wire_add_sub_cella_datab[9:9]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[9:9]));	defparam		add_sub_cella_9.cin_used = "true",		add_sub_cella_9.lut_mask = "96e8",		add_sub_cella_9.operation_mode = "arithmetic",		add_sub_cella_9.sum_lutc_input = "cin",		add_sub_cella_9.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_10	( 	.aclr(aclr),	.cin(wire_add_sub_cella_9cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_10cout[0:0]),	.dataa(wire_add_sub_cella_dataa[10:10]),	.datab(wire_add_sub_cella_datab[10:10]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[10:10]));	defparam		add_sub_cella_10.cin_used = "true",		add_sub_cella_10.lut_mask = "96e8",		add_sub_cella_10.operation_mode = "arithmetic",		add_sub_cella_10.sum_lutc_input = "cin",		add_sub_cella_10.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_11	( 	.aclr(aclr),	.cin(wire_add_sub_cella_10cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_11cout[0:0]),	.dataa(wire_add_sub_cella_dataa[11:11]),	.datab(wire_add_sub_cella_datab[11:11]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[11:11]));	defparam		add_sub_cella_11.cin_used = "true",		add_sub_cella_11.lut_mask = "96e8",		add_sub_cella_11.operation_mode = "arithmetic",		add_sub_cella_11.sum_lutc_input = "cin",		add_sub_cella_11.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_12	( 	.aclr(aclr),	.cin(wire_add_sub_cella_11cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_12cout[0:0]),	.dataa(wire_add_sub_cella_dataa[12:12]),	.datab(wire_add_sub_cella_datab[12:12]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[12:12]));	defparam		add_sub_cella_12.cin_used = "true",		add_sub_cella_12.lut_mask = "96e8",		add_sub_cella_12.operation_mode = "arithmetic",		add_sub_cella_12.sum_lutc_input = "cin",		add_sub_cella_12.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_13	( 	.aclr(aclr),	.cin(wire_add_sub_cella_12cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_13cout[0:0]),	.dataa(wire_add_sub_cella_dataa[13:13]),	.datab(wire_add_sub_cella_datab[13:13]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[13:13]));	defparam		add_sub_cella_13.cin_used = "true",		add_sub_cella_13.lut_mask = "96e8",		add_sub_cella_13.operation_mode = "arithmetic",		add_sub_cella_13.sum_lutc_input = "cin",		add_sub_cella_13.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_14	( 	.aclr(aclr),	.cin(wire_add_sub_cella_13cout[0:0]),	.clk(clock),	.cout(wire_add_sub_cella_14cout[0:0]),	.dataa(wire_add_sub_cella_dataa[14:14]),	.datab(wire_add_sub_cella_datab[14:14]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[14:14]));	defparam		add_sub_cella_14.cin_used = "true",		add_sub_cella_14.lut_mask = "96e8",		add_sub_cella_14.operation_mode = "arithmetic",		add_sub_cella_14.sum_lutc_input = "cin",		add_sub_cella_14.lpm_type = "stratix_lcell";	stratix_lcell   add_sub_cella_15	( 	.aclr(aclr),	.cin(wire_add_sub_cella_14cout[0:0]),	.clk(clock),	.dataa(wire_add_sub_cella_dataa[15:15]),	.datab(wire_add_sub_cella_datab[15:15]),	.ena(clken),	.inverta((~ add_sub)),	.regout(wire_add_sub_cella_regout[15:15]));	defparam		add_sub_cella_15.cin_used = "true",		add_sub_cella_15.lut_mask = "9696",		add_sub_cella_15.operation_mode = "normal",		add_sub_cella_15.sum_lutc_input = "cin",		add_sub_cella_15.lpm_type = "stratix_lcell";	assign		wire_add_sub_cella_dataa = datab,		wire_add_sub_cella_datab = dataa;	stratix_lcell   strx_lcell1	( 	.cout(wire_strx_lcell1_cout),	.dataa(1'b0),	.datab((~ add_sub)),	.inverta((~ add_sub)));	defparam		strx_lcell1.cin_used = "false",		strx_lcell1.lut_mask = "00cc",		strx_lcell1.operation_mode = "arithmetic",		strx_lcell1.lpm_type = "stratix_lcell";	assign		result = wire_add_sub_cella_regout;endmodule //addsub16_add_sub_gp9//VALID FILEmodule addsub16 (	add_sub,	dataa,	datab,	clock,	aclr,	clken,	result)/* synthesis synthesis_clearbox = 1 */;	input	  add_sub;	input	[15:0]  dataa;	input	[15:0]  datab;	input	  clock;	input	  aclr;	input	  clken;	output	[15:0]  result;	wire [15:0] sub_wire0;	wire [15:0] result = sub_wire0[15:0];	addsub16_add_sub_gp9	addsub16_add_sub_gp9_component (				.dataa (dataa),				.add_sub (add_sub),				.datab (datab),				.clken (clken),				.aclr (aclr),				.clock (clock),				.result (sub_wire0));endmodule// ============================================================// CNX file retrieval info// ============================================================// Retrieval info: PRIVATE: nBit NUMERIC "16"// Retrieval info: PRIVATE: Function NUMERIC "2"// Retrieval info: PRIVATE: WhichConstant NUMERIC "0"// Retrieval info: PRIVATE: ConstantA NUMERIC "0"// Retrieval info: PRIVATE: ConstantB NUMERIC "0"// Retrieval info: PRIVATE: ValidCtA NUMERIC "0"// Retrieval info: PRIVATE: ValidCtB NUMERIC "0"// Retrieval info: PRIVATE: CarryIn NUMERIC "0"// Retrieval info: PRIVATE: CarryOut NUMERIC "0"// Retrieval info: PRIVATE: Overflow NUMERIC "0"// Retrieval info: PRIVATE: Latency NUMERIC "1"// Retrieval info: PRIVATE: aclr NUMERIC "1"// Retrieval info: PRIVATE: clken NUMERIC "1"// Retrieval info: PRIVATE: LPM_PIPELINE NUMERIC "1"// Retrieval info: PRIVATE: INTENDED_DEVICE_FAMILY STRING "Cyclone"// Retrieval info: CONSTANT: LPM_WIDTH NUMERIC "16"// Retrieval info: CONSTANT: LPM_DIRECTION STRING "UNUSED"// Retrieval info: CONSTANT: LPM_TYPE STRING "LPM_ADD_SUB"// Retrieval info: CONSTANT: LPM_HINT STRING "ONE_INPUT_IS_CONSTANT=NO"// Retrieval info: CONSTANT: LPM_PIPELINE NUMERIC "1"// Retrieval info: CONSTANT: INTENDED_DEVICE_FAMILY STRING "Cyclone"// Retrieval info: USED_PORT: add_sub 0 0 0 0 INPUT NODEFVAL add_sub// Retrieval info: USED_PORT: result 0 0 16 0 OUTPUT NODEFVAL result[15..0]// Retrieval info: USED_PORT: dataa 0 0 16 0 INPUT NODEFVAL dataa[15..0]// Retrieval info: USED_PORT: datab 0 0 16 0 INPUT NODEFVAL datab[15..0]// Retrieval info: USED_PORT: clock 0 0 0 0 INPUT NODEFVAL clock// Retrieval info: USED_PORT: aclr 0 0 0 0 INPUT NODEFVAL aclr// Retrieval info: USED_PORT: clken 0 0 0 0 INPUT NODEFVAL clken// Retrieval info: CONNECT: @add_sub 0 0 0 0 add_sub 0 0 0 0// Retrieval info: CONNECT: result 0 0 16 0 @result 0 0 16 0// Retrieval info: CONNECT: @dataa 0 0 16 0 dataa 0 0 16 0// Retrieval info: CONNECT: @datab 0 0 16 0 datab 0 0 16 0// Retrieval info: CONNECT: @clock 0 0 0 0 clock 0 0 0 0// Retrieval info: CONNECT: @aclr 0 0 0 0 aclr 0 0 0 0// Retrieval info: CONNECT: @clken 0 0 0 0 clken 0 0 0 0// Retrieval info: LIBRARY: lpm lpm.lpm_components.all

⌨️ 快捷键说明

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