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

📄 booth_com.vo

📁 布思基四乘法器实现,很好用,快来看,希望对大家有所帮助.
💻 VO
📖 第 1 页 / 共 4 页
字号:
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\m2_reg[1]~49 ),
	.regout(\m2_reg[0] ),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \m2_reg[0]~I .operation_mode = "normal";
defparam \m2_reg[0]~I .synch_mode = "on";
defparam \m2_reg[0]~I .register_cascade_mode = "off";
defparam \m2_reg[0]~I .sum_lutc_input = "qfbk";
defparam \m2_reg[0]~I .lut_mask = "0005";
defparam \m2_reg[0]~I .output_mode = "reg_and_comb";
// synopsys translate_on

// atom is at LC_X4_Y2_N1
maxii_lcell \m2_reg[3]~I (
// Equation(s):
// \pro_tmp~132  = \m1_reg[0]  & (m2_reg[3] $ !\m2_reg[1]~49 )
// \m2_reg[3]  = DFFEAS(\pro_tmp~132 , GLOBAL(\CLK~combout ), GLOBAL(\RST_~combout ), , , \M2[3]~combout , , , VCC)

	.clk(\CLK~combout ),
	.dataa(\m1_reg[0] ),
	.datab(vcc),
	.datac(\M2[3]~combout ),
	.datad(\m2_reg[1]~49 ),
	.aclr(!\RST_~combout ),
	.aload(gnd),
	.sclr(gnd),
	.sload(vcc),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\pro_tmp~132 ),
	.regout(\m2_reg[3] ),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \m2_reg[3]~I .operation_mode = "normal";
defparam \m2_reg[3]~I .synch_mode = "on";
defparam \m2_reg[3]~I .register_cascade_mode = "off";
defparam \m2_reg[3]~I .sum_lutc_input = "qfbk";
defparam \m2_reg[3]~I .lut_mask = "A00A";
defparam \m2_reg[3]~I .output_mode = "reg_and_comb";
// synopsys translate_on

// atom is at LC_X4_Y2_N8
maxii_lcell \add~756_I (
// Equation(s):
// \add~756  = \m2_reg[2]  $ \pro_tmp~132  $ \add~737 
// \add~758  = CARRY(\m2_reg[2]  & \pro_tmp~132  & !\add~737  # !\m2_reg[2]  & (\pro_tmp~132  # !\add~737 ))
// \add~758COUT1_807  = CARRY(\m2_reg[2]  & \pro_tmp~132  & !\add~737COUT1_805  # !\m2_reg[2]  & (\pro_tmp~132  # !\add~737COUT1_805 ))

	.clk(gnd),
	.dataa(\m2_reg[2] ),
	.datab(\pro_tmp~132 ),
	.datac(vcc),
	.datad(vcc),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(\add~737 ),
	.cin1(\add~737COUT1_805 ),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~756 ),
	.regout(),
	.cout(),
	.cout0(\add~758 ),
	.cout1(\add~758COUT1_807 ));
// synopsys translate_off
defparam \add~756_I .operation_mode = "arithmetic";
defparam \add~756_I .synch_mode = "off";
defparam \add~756_I .register_cascade_mode = "off";
defparam \add~756_I .sum_lutc_input = "cin";
defparam \add~756_I .lut_mask = "964D";
defparam \add~756_I .cin0_used = "true";
defparam \add~756_I .cin1_used = "true";
defparam \add~756_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X5_Y2_N3
maxii_lcell \add~751_I (
// Equation(s):
// \add~751  = \pro_tmp~132  $ \m2_reg[2]  $ !\add~732 
// \add~753  = CARRY(\pro_tmp~132  & (\m2_reg[2]  # !\add~732 ) # !\pro_tmp~132  & \m2_reg[2]  & !\add~732 )
// \add~753COUT1_812  = CARRY(\pro_tmp~132  & (\m2_reg[2]  # !\add~732COUT1_810 ) # !\pro_tmp~132  & \m2_reg[2]  & !\add~732COUT1_810 )

	.clk(gnd),
	.dataa(\pro_tmp~132 ),
	.datab(\m2_reg[2] ),
	.datac(vcc),
	.datad(vcc),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(\add~732 ),
	.cin1(\add~732COUT1_810 ),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~751 ),
	.regout(),
	.cout(),
	.cout0(\add~753 ),
	.cout1(\add~753COUT1_812 ));
// synopsys translate_off
defparam \add~751_I .operation_mode = "arithmetic";
defparam \add~751_I .synch_mode = "off";
defparam \add~751_I .register_cascade_mode = "off";
defparam \add~751_I .sum_lutc_input = "cin";
defparam \add~751_I .lut_mask = "698E";
defparam \add~751_I .cin0_used = "true";
defparam \add~751_I .cin1_used = "true";
defparam \add~751_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X5_Y2_N9
maxii_lcell \Select~1267_I (
// Equation(s):
// \Select~1267  = \m1_reg[0]  & (\add~751 ) # !\m1_reg[0]  & (\add~756 )

	.clk(gnd),
	.dataa(\m1_reg[0] ),
	.datab(vcc),
	.datac(\add~756 ),
	.datad(\add~751 ),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\Select~1267 ),
	.regout(),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \Select~1267_I .operation_mode = "normal";
defparam \Select~1267_I .synch_mode = "off";
defparam \Select~1267_I .register_cascade_mode = "off";
defparam \Select~1267_I .sum_lutc_input = "datac";
defparam \Select~1267_I .lut_mask = "FA50";
defparam \Select~1267_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X5_Y2_N5
maxii_lcell \Select~1268_I (
// Equation(s):
// \Select~1268  = \m1_reg[1]  & (\m1_reg[0]  & \pro_tmp~132  # !\m1_reg[0]  & (\Select~1267 )) # !\m1_reg[1]  & (\m1_reg[0]  & (\Select~1267 ) # !\m1_reg[0]  & \pro_tmp~132 )

	.clk(gnd),
	.dataa(\m1_reg[1] ),
	.datab(\m1_reg[0] ),
	.datac(\pro_tmp~132 ),
	.datad(\Select~1267 ),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\Select~1268 ),
	.regout(),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \Select~1268_I .operation_mode = "normal";
defparam \Select~1268_I .synch_mode = "off";
defparam \Select~1268_I .register_cascade_mode = "off";
defparam \Select~1268_I .sum_lutc_input = "datac";
defparam \Select~1268_I .lut_mask = "F690";
defparam \Select~1268_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at PIN_83
maxii_io \M1[2]~I (
	.datain(gnd),
	.oe(gnd),
	.combout(\M1[2]~combout ),
	.padio(M1[2]));
// synopsys translate_off
defparam \M1[2]~I .operation_mode = "input";
// synopsys translate_on

// atom is at LC_X5_Y3_N1
maxii_lcell \add~725_I (
// Equation(s):
// \add~725  = \Select~1265  $ \m2_reg[0] 
// \add~727  = CARRY(\Select~1265  & \m2_reg[0] )
// \add~727COUT1_819  = CARRY(\Select~1265  & \m2_reg[0] )

	.clk(gnd),
	.dataa(\Select~1265 ),
	.datab(\m2_reg[0] ),
	.datac(vcc),
	.datad(vcc),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~725 ),
	.regout(),
	.cout(),
	.cout0(\add~727 ),
	.cout1(\add~727COUT1_819 ));
// synopsys translate_off
defparam \add~725_I .operation_mode = "arithmetic";
defparam \add~725_I .synch_mode = "off";
defparam \add~725_I .register_cascade_mode = "off";
defparam \add~725_I .sum_lutc_input = "datac";
defparam \add~725_I .lut_mask = "6688";
defparam \add~725_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X5_Y3_N2
maxii_lcell \add~741_I (
// Equation(s):
// \add~741  = \m2_reg[1]  $ \Select~1268  $ \add~727 
// \add~743  = CARRY(\m2_reg[1]  & !\Select~1268  & !\add~727  # !\m2_reg[1]  & (!\add~727  # !\Select~1268 ))
// \add~743COUT1_820  = CARRY(\m2_reg[1]  & !\Select~1268  & !\add~727COUT1_819  # !\m2_reg[1]  & (!\add~727COUT1_819  # !\Select~1268 ))

	.clk(gnd),
	.dataa(\m2_reg[1] ),
	.datab(\Select~1268 ),
	.datac(vcc),
	.datad(vcc),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(\add~727 ),
	.cin1(\add~727COUT1_819 ),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~741 ),
	.regout(),
	.cout(),
	.cout0(\add~743 ),
	.cout1(\add~743COUT1_820 ));
// synopsys translate_off
defparam \add~741_I .operation_mode = "arithmetic";
defparam \add~741_I .synch_mode = "off";
defparam \add~741_I .register_cascade_mode = "off";
defparam \add~741_I .sum_lutc_input = "cin";
defparam \add~741_I .lut_mask = "9617";
defparam \add~741_I .cin0_used = "true";
defparam \add~741_I .cin1_used = "true";
defparam \add~741_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X5_Y3_N6
maxii_lcell \add~720_I (
// Equation(s):
// \add~720  = \Select~1265  $ \m2_reg[0] 
// \add~722  = CARRY(\Select~1265  # !\m2_reg[0] )
// \add~722COUT1_814  = CARRY(\Select~1265  # !\m2_reg[0] )

	.clk(gnd),
	.dataa(\Select~1265 ),
	.datab(\m2_reg[0] ),
	.datac(vcc),
	.datad(vcc),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~720 ),
	.regout(),
	.cout(),
	.cout0(\add~722 ),
	.cout1(\add~722COUT1_814 ));
// synopsys translate_off
defparam \add~720_I .operation_mode = "arithmetic";
defparam \add~720_I .synch_mode = "off";
defparam \add~720_I .register_cascade_mode = "off";
defparam \add~720_I .sum_lutc_input = "datac";
defparam \add~720_I .lut_mask = "66BB";
defparam \add~720_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X5_Y3_N7
maxii_lcell \add~746_I (
// Equation(s):
// \add~746  = \m2_reg[1]  $ \Select~1268  $ !\add~722 
// \add~748  = CARRY(\m2_reg[1]  & (!\add~722  # !\Select~1268 ) # !\m2_reg[1]  & !\Select~1268  & !\add~722 )
// \add~748COUT1_815  = CARRY(\m2_reg[1]  & (!\add~722COUT1_814  # !\Select~1268 ) # !\m2_reg[1]  & !\Select~1268  & !\add~722COUT1_814 )

	.clk(gnd),
	.dataa(\m2_reg[1] ),
	.datab(\Select~1268 ),
	.datac(vcc),
	.datad(vcc),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(\add~722 ),
	.cin1(\add~722COUT1_814 ),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~746 ),
	.regout(),
	.cout(),
	.cout0(\add~748 ),
	.cout1(\add~748COUT1_815 ));
// synopsys translate_off
defparam \add~746_I .operation_mode = "arithmetic";
defparam \add~746_I .synch_mode = "off";
defparam \add~746_I .register_cascade_mode = "off";
defparam \add~746_I .sum_lutc_input = "cin";
defparam \add~746_I .lut_mask = "692B";
defparam \add~746_I .cin0_used = "true";
defparam \add~746_I .cin1_used = "true";
defparam \add~746_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X6_Y3_N5
maxii_lcell \Select~1266_I (
// Equation(s):
// \Select~1266  = \m1_reg[1]  & \add~741  # !\m1_reg[1]  & (\add~746 )

	.clk(gnd),
	.dataa(vcc),
	.datab(\add~741 ),
	.datac(\m1_reg[1] ),
	.datad(\add~746 ),
	.aclr(gnd),
	.aload(gnd),
	.sclr(gnd),
	.sload(gnd),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\Select~1266 ),
	.regout(),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \Select~1266_I .operation_mode = "normal";
defparam \Select~1266_I .synch_mode = "off";
defparam \Select~1266_I .register_cascade_mode = "off";
defparam \Select~1266_I .sum_lutc_input = "datac";
defparam \Select~1266_I .lut_mask = "CFC0";
defparam \Select~1266_I .output_mode = "comb_only";
// synopsys translate_on

// atom is at LC_X6_Y3_N6
maxii_lcell \m1_reg[2]~I (
// Equation(s):
// \Select~1273  = \Select~1268  & (\Select~1266  # \m1_reg[1]  $ !m1_reg[2]) # !\Select~1268  & \Select~1266  & (\m1_reg[1]  $ m1_reg[2])
// \m1_reg[2]  = DFFEAS(\Select~1273 , GLOBAL(\CLK~combout ), GLOBAL(\RST_~combout ), , , \M1[2]~combout , , , VCC)

	.clk(\CLK~combout ),
	.dataa(\Select~1268 ),
	.datab(\m1_reg[1] ),
	.datac(\M1[2]~combout ),
	.datad(\Select~1266 ),
	.aclr(!\RST_~combout ),
	.aload(gnd),
	.sclr(gnd),
	.sload(vcc),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\Select~1273 ),
	.regout(\m1_reg[2] ),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \m1_reg[2]~I .operation_mode = "normal";
defparam \m1_reg[2]~I .synch_mode = "on";
defparam \m1_reg[2]~I .register_cascade_mode = "off";
defparam \m1_reg[2]~I .sum_lutc_input = "qfbk";
defparam \m1_reg[2]~I .lut_mask = "BE82";
defparam \m1_reg[2]~I .output_mode = "reg_and_comb";
// synopsys translate_on

// atom is at PIN_38
maxii_io \M2[2]~I (
	.datain(gnd),
	.oe(gnd),
	.combout(\M2[2]~combout ),
	.padio(M2[2]));
// synopsys translate_off
defparam \M2[2]~I .operation_mode = "input";
// synopsys translate_on

// atom is at PIN_82
maxii_io \M1[3]~I (
	.datain(gnd),
	.oe(gnd),
	.combout(\M1[3]~combout ),
	.padio(M1[3]));
// synopsys translate_off
defparam \M1[3]~I .operation_mode = "input";
// synopsys translate_on

// atom is at LC_X6_Y3_N8
maxii_lcell \m1_reg[3]~I (
// Equation(s):
// \add~740  = \m2_reg[0]  $ (!\m1_reg[2]  & m1_reg[3])
// \m1_reg[3]  = DFFEAS(\add~740 , GLOBAL(\CLK~combout ), GLOBAL(\RST_~combout ), , , \M1[3]~combout , , , VCC)

	.clk(\CLK~combout ),
	.dataa(\m1_reg[2] ),
	.datab(vcc),
	.datac(\M1[3]~combout ),
	.datad(\m2_reg[0] ),
	.aclr(!\RST_~combout ),
	.aload(gnd),
	.sclr(gnd),
	.sload(vcc),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~740 ),
	.regout(\m1_reg[3] ),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \m1_reg[3]~I .operation_mode = "normal";
defparam \m1_reg[3]~I .synch_mode = "on";
defparam \m1_reg[3]~I .register_cascade_mode = "off";
defparam \m1_reg[3]~I .sum_lutc_input = "qfbk";
defparam \m1_reg[3]~I .lut_mask = "AF50";
defparam \m1_reg[3]~I .output_mode = "reg_and_comb";
// synopsys translate_on

// atom is at LC_X4_Y2_N2
maxii_lcell \m2_reg[2]~I (
// Equation(s):
// \add~782  = m2_reg[2] $ (!\m1_reg[2]  & \m1_reg[3] )
// \m2_reg[2]  = DFFEAS(\add~782 , GLOBAL(\CLK~combout ), GLOBAL(\RST_~combout ), , , \M2[2]~combout , , , VCC)

	.clk(\CLK~combout ),
	.dataa(vcc),
	.datab(\m1_reg[2] ),
	.datac(\M2[2]~combout ),
	.datad(\m1_reg[3] ),
	.aclr(!\RST_~combout ),
	.aload(gnd),
	.sclr(gnd),
	.sload(vcc),
	.ena(vcc),
	.cin(gnd),
	.cin0(gnd),
	.cin1(vcc),
	.inverta(gnd),
	.regcascin(gnd),
	.devclrn(devclrn),
	.devpor(devpor),
	.combout(\add~782 ),
	.regout(\m2_reg[2] ),
	.cout(),
	.cout0(),
	.cout1());
// synopsys translate_off
defparam \m2_reg[2]~I .operation_mode = "normal";
defparam \m2_reg[2]~I .synch_mode = "on";
defparam \m2_reg[2]~I .register_cascade_mode = "off";
defparam \m2_reg[2]~I .sum_lutc_input = "qfbk";
defparam \m2_reg[2]~I .lut_mask = "C3F0";
defparam \m2_reg[2]~I .output_mode = "reg_and_comb";
// synopsys translate_on

// atom is at LC_X7_Y2_N3

⌨️ 快捷键说明

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