?? mult_4sm.tdf
字號:
--lpm_mult CBX_DECLARE_ALL_CONNECTED_PORTS="OFF" DEVICE_FAMILY="Cyclone" DSP_BLOCK_BALANCING="Auto" LPM_REPRESENTATION="SIGNED" LPM_WIDTHA=11 LPM_WIDTHB=11 LPM_WIDTHP=11 MAXIMIZE_SPEED=5 dataa datab result CARRY_CHAIN="MANUAL" CARRY_CHAIN_LENGTH=48
--VERSION_BEGIN 7.2 cbx_cycloneii 2007:06:13:15:47:32:SJ cbx_lpm_add_sub 2007:08:06:16:01:34:SJ cbx_lpm_mult 2007:07:20:16:47:26:SJ cbx_mgl 2007:08:03:15:48:12:SJ cbx_padd 2007:07:12:14:48:24:SJ cbx_stratix 2007:05:02:16:27:14:SJ cbx_stratixii 2007:06:28:17:26:26:SJ cbx_util_mgl 2007:06:01:06:37:30:SJ VERSION_END
-- Copyright (C) 1991-2007 Altera Corporation
-- Your use of Altera Corporation's design tools, logic functions
-- and other software and tools, and its AMPP partner logic
-- functions, and any output files from any of the foregoing
-- (including device programming or simulation files), and any
-- associated documentation or information are expressly subject
-- to the terms and conditions of the Altera Program License
-- Subscription Agreement, Altera MegaCore Function License
-- Agreement, or other applicable license agreement, including,
-- without limitation, that your use is for the sole purpose of
-- programming logic devices manufactured by Altera and sold by
-- Altera or its authorized distributors. Please refer to the
-- applicable agreement for further details.
FUNCTION carry_sum (cin, sin)
RETURNS ( cout, sout);
FUNCTION lcell (in)
RETURNS ( out);
FUNCTION soft (in)
RETURNS ( out);
--synthesis_resources = lut 163
SUBDESIGN mult_4sm
(
dataa[10..0] : input;
datab[10..0] : input;
result[10..0] : output;
)
VARIABLE
add13_result[18..0] : WIRE;
add17_result[15..0] : WIRE;
add21_result[11..0] : WIRE;
add25_result[7..0] : WIRE;
add29_result[3..0] : WIRE;
add9_result[21..0] : WIRE;
cs1a[5..0] : carry_sum;
cs3a[4..0] : carry_sum;
le2a[10..0] : lcell;
le4a[11..0] : lcell;
le5a[11..0] : lcell;
le6a[11..0] : lcell;
le7a[11..0] : lcell;
le8a[11..0] : lcell;
sft10a[21..0] : soft;
sft11a[21..0] : soft;
sft12a[21..0] : soft;
sft14a[18..0] : soft;
sft15a[18..0] : soft;
sft16a[18..0] : soft;
sft18a[15..0] : soft;
sft19a[15..0] : soft;
sft20a[15..0] : soft;
sft22a[11..0] : soft;
sft23a[11..0] : soft;
sft24a[11..0] : soft;
sft26a[7..0] : soft;
sft27a[7..0] : soft;
sft28a[7..0] : soft;
sft30a[3..0] : soft;
sft31a[3..0] : soft;
sft32a[3..0] : soft;
dataa_node[10..0] : WIRE;
datab_node[10..0] : WIRE;
final_result_node[21..0] : WIRE;
w12w[10..0] : WIRE;
w14w[10..0] : WIRE;
w164w[11..0] : WIRE;
w165w[11..0] : WIRE;
w166w[11..0] : WIRE;
w175w[11..0] : WIRE;
w176w[11..0] : WIRE;
w192w : WIRE;
w213w : WIRE;
w216w : WIRE;
w218w[11..0] : WIRE;
w219w[11..0] : WIRE;
w220w[11..0] : WIRE;
w228w[11..0] : WIRE;
w229w[11..0] : WIRE;
w254w : WIRE;
w256w : WIRE;
w260w : WIRE;
w262w : WIRE;
w263w[11..0] : WIRE;
w264w[11..0] : WIRE;
w265w[11..0] : WIRE;
w273w[11..0] : WIRE;
w274w[11..0] : WIRE;
w291w : WIRE;
w293w : WIRE;
w295w : WIRE;
w297w : WIRE;
w299w : WIRE;
w301w : WIRE;
w303w : WIRE;
w305w : WIRE;
w307w : WIRE;
w309w : WIRE;
w313w : WIRE;
w315w : WIRE;
w316w[11..0] : WIRE;
w317w[11..0] : WIRE;
w318w[11..0] : WIRE;
w326w[11..0] : WIRE;
w327w[11..0] : WIRE;
w344w : WIRE;
w346w : WIRE;
w348w : WIRE;
w350w : WIRE;
w352w : WIRE;
w354w : WIRE;
w356w : WIRE;
w358w : WIRE;
w360w : WIRE;
w362w : WIRE;
w366w : WIRE;
w368w : WIRE;
w369w[11..0] : WIRE;
w370w[11..0] : WIRE;
w371w[11..0] : WIRE;
w379w[11..0] : WIRE;
w380w[11..0] : WIRE;
w397w : WIRE;
w399w : WIRE;
w401w : WIRE;
w403w : WIRE;
w405w : WIRE;
w407w : WIRE;
w409w : WIRE;
w411w : WIRE;
w413w : WIRE;
w415w : WIRE;
w419w : WIRE;
w421w : WIRE;
w422w : WIRE;
w423w : WIRE;
w424w : WIRE;
w425w : WIRE;
w426w : WIRE;
w427w : WIRE;
w429w : WIRE;
w430w : WIRE;
w431w : WIRE;
w432w : WIRE;
w433w : WIRE;
w434w : WIRE;
w435w : WIRE;
w436w : WIRE;
w437w : WIRE;
w438w : WIRE;
w439w : WIRE;
w440w : WIRE;
w441w : WIRE;
w442w : WIRE;
w443w : WIRE;
w444w : WIRE;
w445w : WIRE;
w448w : WIRE;
w681w[21..0] : WIRE;
w7w[11..0] : WIRE;
BEGIN
add13_result[] = sft14a[].out + sft15a[].out;
add17_result[] = sft18a[].out + sft19a[].out;
add21_result[] = sft22a[].out + sft23a[].out;
add25_result[] = sft26a[].out + sft27a[].out;
add29_result[] = sft30a[].out + sft31a[].out;
add9_result[] = sft10a[].out + sft11a[].out;
cs1a[].cin = ( B"0", ((w7w[8..8] & cs1a[3].cout) # w7w[9..9]), ((w7w[6..6] & cs1a[2].cout) # w7w[7..7]), ((w7w[4..4] & cs1a[1].cout) # w7w[5..5]), ((w7w[2..2] & cs1a[0].cout) # w7w[3..3]), w7w[1..1]);
cs1a[].sin = ( cs1a[4].cout, ((((((! w7w[9..9]) & w7w[8..8]) & cs1a[3].cout) # ((w7w[9..9] & w7w[8..8]) & (! cs1a[3].cout))) # ((w7w[9..9] & (! w7w[8..8])) & cs1a[3].cout)) # ((w7w[9..9] & (! w7w[8..8])) & (! cs1a[3].cout))), ((((((! w7w[7..7]) & w7w[6..6]) & cs1a[2].cout) # ((w7w[7..7] & w7w[6..6]) & (! cs1a[2].cout))) # ((w7w[7..7] & (! w7w[6..6])) & cs1a[2].cout)) # ((w7w[7..7] & (! w7w[6..6])) & (! cs1a[2].cout))), ((((((! w7w[5..5]) & w7w[4..4]) & cs1a[1].cout) # ((w7w[5..5] & w7w[4..4]) & (! cs1a[1].cout))) # ((w7w[5..5] & (! w7w[4..4])) & cs1a[1].cout)) # ((w7w[5..5] & (! w7w[4..4])) & (! cs1a[1].cout))), ((((((! w7w[3..3]) & w7w[2..2]) & cs1a[0].cout) # ((w7w[3..3] & w7w[2..2]) & (! cs1a[0].cout))) # ((w7w[3..3] & (! w7w[2..2])) & cs1a[0].cout)) # ((w7w[3..3] & (! w7w[2..2])) & (! cs1a[0].cout))), w7w[1..1]);
cs3a[].cin = ( ((w7w[8..8] & cs3a[3].cout) # w7w[9..9]), ((w7w[6..6] & cs3a[2].cout) # w7w[7..7]), ((w7w[4..4] & cs3a[1].cout) # w7w[5..5]), ((w7w[2..2] & cs3a[0].cout) # w7w[3..3]), w7w[1..1]);
cs3a[].sin = ( ((((((! w7w[9..9]) & (! w7w[8..8])) & cs3a[3].cout) # (((! w7w[9..9]) & w7w[8..8]) & (! cs3a[3].cout))) # ((w7w[9..9] & w7w[8..8]) & (! cs3a[3].cout))) # ((w7w[9..9] & (! w7w[8..8])) & cs3a[3].cout)), ((((((! w7w[7..7]) & (! w7w[6..6])) & cs3a[2].cout) # (((! w7w[7..7]) & w7w[6..6]) & (! cs3a[2].cout))) # ((w7w[7..7] & w7w[6..6]) & (! cs3a[2].cout))) # ((w7w[7..7] & (! w7w[6..6])) & cs3a[2].cout)), ((((((! w7w[5..5]) & (! w7w[4..4])) & cs3a[1].cout) # (((! w7w[5..5]) & w7w[4..4]) & (! cs3a[1].cout))) # ((w7w[5..5] & w7w[4..4]) & (! cs3a[1].cout))) # ((w7w[5..5] & (! w7w[4..4])) & cs3a[1].cout)), ((((((! w7w[3..3]) & (! w7w[2..2])) & cs3a[0].cout) # (((! w7w[3..3]) & w7w[2..2]) & (! cs3a[0].cout))) # ((w7w[3..3] & w7w[2..2]) & (! cs3a[0].cout))) # ((w7w[3..3] & (! w7w[2..2])) & cs3a[0].cout)), w7w[0..0]);
le2a[].in = (((w7w[10..10] & cs1a[5].sout) # ((w7w[10..10] & (! cs1a[5].sout)) & (! w14w[]))) # (((! w7w[10..10]) & cs1a[5].sout) & w14w[]));
le4a[].in = (! ((! w175w[]) & (! w176w[])));
le5a[].in = (! ((! w228w[]) & (! w229w[])));
le6a[].in = (! ((! w273w[]) & (! w274w[])));
le7a[].in = (! ((! w326w[]) & (! w327w[])));
le8a[].in = (! ((! w379w[]) & (! w380w[])));
sft10a[].in = ( w422w, ( (! w12w[10..10]), ( w443w, ( w427w, ( w415w, ( w413w, ( w362w, ( w360w, ( w309w, ( w307w, ( w256w, ( w213w, ( w301w, ( w299w, ( w297w, ( w295w, ( w293w, ( w291w, ( w218w[1..1], ( w218w[0..0], ( w164w[1..0])))))))))))))))))))));
sft11a[].in = ( w448w, ( w445w, ( w444w, ( w442w, ( w440w, ( w426w, ( w411w, ( w409w, ( w358w, ( w356w, ( w305w, ( w254w, ( w350w, ( w348w, ( w346w, ( w344w, ( w430w, ( w315w, ( w429w, ( w262w, ( w448w, w216w)))))))))))))))))))));
sft12a[].in = add9_result[];
sft14a[].in = ( w448w, ( w12w[9..9], ( w12w[8..8], ( w12w[7..7], ( w12w[6..6], ( w12w[5..5], ( w12w[4..4], ( w12w[3..3], ( w12w[2..2], ( w354w, ( w303w, ( w369w[1..1], ( w369w[0..0], ( w316w[1..1], ( w316w[0..0], ( w263w[1..1], ( w263w[0..0], ( w164w[3..2]))))))))))))))))));
sft15a[].in = ( w448w, ( (! w369w[11..11]), ( w369w[10..10], ( w369w[9..9], ( w439w, ( w437w, ( w425w, ( w407w, ( w405w, ( w423w, ( w401w, ( w399w, ( w397w, ( w431w, ( w368w, ( w218w[3..3], ( w218w[2..2], ( w448w, w260w))))))))))))))))));
sft16a[].in = add13_result[];
sft18a[].in = ( w448w, ( w422w, ( (! w316w[11..11]), ( w369w[8..8], ( w369w[7..7], ( w369w[6..6], ( w434w, ( w424w, ( w12w[1..1], ( w12w[0..0], ( w316w[3..3], ( w316w[2..2], ( w263w[3..3], ( w263w[2..2], ( w164w[5..5], w313w)))))))))))))));
sft19a[].in = ( w448w, ( w448w, ( w441w, ( w316w[10..10], ( w438w, ( w436w, ( w435w, ( w433w, ( w403w, ( w352w, ( w432w, ( w421w, ( w218w[5..5], ( w218w[4..4], ( w448w, w164w[4..4])))))))))))))));
sft20a[].in = add17_result[];
sft22a[].in = ( w448w, ( w422w, ( w316w[9..9], ( w316w[8..8], ( w369w[5..5], ( w369w[4..4], ( w369w[3..3], ( w369w[2..2], ( w263w[5..5], ( w263w[4..4], ( w164w[7..6])))))))))));
sft23a[].in = ( w448w, ( w448w, ( (! w263w[11..11]), ( w263w[10..10], ( w316w[7..7], ( w316w[6..6], ( w316w[5..5], ( w316w[4..4], ( w218w[7..7], ( w218w[6..6], ( w448w, w366w)))))))))));
sft24a[].in = add21_result[];
sft26a[].in = ( w448w, ( w422w, ( w263w[9..9], ( w263w[8..8], ( w263w[7..7], ( w263w[6..6], ( w164w[9..9], w419w)))))));
sft27a[].in = ( w448w, ( w448w, ( (! w218w[11..11]), ( w218w[10..10], ( w218w[9..9], ( w218w[8..8], ( w448w, w164w[8..8])))))));
sft28a[].in = add25_result[];
sft30a[].in = ( w448w, ( w422w, ( (! w164w[11..11]), w7w[10..10])));
sft31a[].in = ( w448w, ( w448w, ( w422w, w164w[10..10])));
sft32a[].in = add29_result[];
dataa_node[] = ( dataa[10..0]);
datab_node[] = ( datab[10..0]);
final_result_node[] = ( w681w[21..0]);
result[] = ( final_result_node[21..11]);
w12w[] = le2a[].out;
w14w[] = dataa_node[];
w164w[] = le4a[].out;
w165w[] = ( dataa_node[], B"0");
w166w[] = ( dataa_node[10..10], dataa_node[]);
w175w[] = (((! w165w[]) & cs1a[0].sout) & (! cs3a[0].sout));
w176w[] = ((((! w166w[]) & cs1a[0].sout) & cs3a[0].sout) # ((w166w[] & (! cs1a[0].sout)) & cs3a[0].sout));
w192w = sft12a[0..0].out;
w213w = sft16a[8..8].out;
w216w = cs1a[0].sout;
w218w[] = le5a[].out;
w219w[] = ( dataa_node[], B"0");
w220w[] = ( dataa_node[10..10], dataa_node[]);
w228w[] = (((! w219w[]) & cs1a[1].sout) & (! cs3a[1].sout));
w229w[] = ((((! w220w[]) & cs1a[1].sout) & cs3a[1].sout) # ((w220w[] & (! cs1a[1].sout)) & cs3a[1].sout));
w254w = sft20a[6..6].out;
w256w = sft16a[9..9].out;
w260w = cs1a[1].sout;
w262w = sft16a[0..0].out;
w263w[] = le6a[].out;
w264w[] = ( dataa_node[], B"0");
w265w[] = ( dataa_node[10..10], dataa_node[]);
w273w[] = (((! w264w[]) & cs1a[2].sout) & (! cs3a[2].sout));
w274w[] = ((((! w265w[]) & cs1a[2].sout) & cs3a[2].sout) # ((w265w[] & (! cs1a[2].sout)) & cs3a[2].sout));
w291w = sft16a[2..2].out;
w293w = sft16a[3..3].out;
w295w = sft16a[4..4].out;
w297w = sft16a[5..5].out;
w299w = sft16a[6..6].out;
w301w = sft16a[7..7].out;
w303w = sft24a[4..4].out;
w305w = sft20a[7..7].out;
w307w = sft16a[10..10].out;
w309w = sft16a[11..11].out;
w313w = cs1a[2].sout;
w315w = sft20a[0..0].out;
w316w[] = le7a[].out;
w317w[] = ( dataa_node[], B"0");
w318w[] = ( dataa_node[10..10], dataa_node[]);
w326w[] = (((! w317w[]) & cs1a[3].sout) & (! cs3a[3].sout));
w327w[] = ((((! w318w[]) & cs1a[3].sout) & cs3a[3].sout) # ((w318w[] & (! cs1a[3].sout)) & cs3a[3].sout));
w344w = sft20a[2..2].out;
w346w = sft20a[3..3].out;
w348w = sft20a[4..4].out;
w350w = sft20a[5..5].out;
w352w = sft32a[0..0].out;
w354w = sft24a[5..5].out;
w356w = sft20a[8..8].out;
w358w = sft20a[9..9].out;
w360w = sft16a[12..12].out;
w362w = sft16a[13..13].out;
w366w = cs1a[3].sout;
w368w = sft24a[0..0].out;
w369w[] = le8a[].out;
w370w[] = ( dataa_node[], B"0");
w371w[] = ( dataa_node[10..10], dataa_node[]);
w379w[] = (((! w370w[]) & cs1a[4].sout) & (! cs3a[4].sout));
w380w[] = ((((! w371w[]) & cs1a[4].sout) & cs3a[4].sout) # ((w371w[] & (! cs1a[4].sout)) & cs3a[4].sout));
w397w = sft24a[2..2].out;
w399w = sft24a[3..3].out;
w401w = sft28a[2..2].out;
w403w = sft32a[1..1].out;
w405w = sft24a[6..6].out;
w407w = sft24a[7..7].out;
w409w = sft20a[10..10].out;
w411w = sft20a[11..11].out;
w413w = sft16a[14..14].out;
w415w = sft16a[15..15].out;
w419w = cs1a[4].sout;
w421w = sft28a[0..0].out;
w422w = B"1";
w423w = sft28a[3..3].out;
w424w = sft28a[4..4].out;
w425w = sft24a[8..8].out;
w426w = sft20a[12..12].out;
w427w = sft16a[16..16].out;
w429w = sft16a[1..1].out;
w430w = sft20a[1..1].out;
w431w = sft24a[1..1].out;
w432w = sft28a[1..1].out;
w433w = sft32a[2..2].out;
w434w = sft28a[5..5].out;
w435w = sft32a[3..3].out;
w436w = sft28a[6..6].out;
w437w = sft24a[9..9].out;
w438w = sft28a[7..7].out;
w439w = sft24a[10..10].out;
w440w = sft20a[13..13].out;
w441w = sft24a[11..11].out;
w442w = sft20a[14..14].out;
w443w = sft16a[17..17].out;
w444w = sft20a[15..15].out;
w445w = sft16a[18..18].out;
w448w = B"0";
w681w[] = ( sft12a[21..21].out, sft12a[20..20].out, sft12a[19..19].out, sft12a[18..18].out, sft12a[17..17].out, sft12a[16..16].out, sft12a[15..15].out, sft12a[14..14].out, sft12a[13..13].out, sft12a[12..12].out, sft12a[11..11].out, sft12a[10..10].out, sft12a[9..9].out, sft12a[8..8].out, sft12a[7..7].out, sft12a[6..6].out, sft12a[5..5].out, sft12a[4..4].out, sft12a[3..3].out, sft12a[2..2].out, sft12a[1..1].out, sft12a[0..0].out);
w7w[] = ( datab_node[10..10], datab_node[]);
END;
--VALID FILE
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -