📄 mult_c8o.tdf
字号:
--lpm_mult CBX_DECLARE_ALL_CONNECTED_PORTS="OFF" DEVICE_FAMILY="Cyclone" DSP_BLOCK_BALANCING="Auto" LPM_REPRESENTATION="UNSIGNED" LPM_WIDTHA=8 LPM_WIDTHB=10 LPM_WIDTHP=18 LPM_WIDTHS=1 MAXIMIZE_SPEED=5 dataa datab result CARRY_CHAIN="MANUAL" CARRY_CHAIN_LENGTH=48
--VERSION_BEGIN 6.0 cbx_cycloneii 2006:02:07:15:19:20:SJ cbx_lpm_add_sub 2006:01:09:11:17:20:SJ cbx_lpm_mult 2006:03:20:13:34:24:SJ cbx_mgl 2006:04:14:11:14:36:SJ cbx_padd 2006:01:12:17:31:50:SJ cbx_stratix 2006:02:07:15:17:04:SJ cbx_stratixii 2006:03:03:09:35:36:SJ cbx_util_mgl 2006:01:09:10:46:36:SJ VERSION_END
-- Copyright (C) 1991-2006 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 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 135
SUBDESIGN mult_c8o
(
dataa[7..0] : input;
datab[9..0] : input;
result[17..0] : output;
)
VARIABLE
add12_result[17..0] : WIRE;
add16_result[14..0] : WIRE;
add20_result[8..0] : WIRE;
add24_result[2..0] : WIRE;
add8_result[20..0] : WIRE;
cs1a[4..0] : carry_sum;
cs2a[4..0] : carry_sum;
le3a[11..0] : lcell;
le4a[11..0] : lcell;
le5a[11..0] : lcell;
le6a[11..0] : lcell;
le7a[10..0] : lcell;
sft10a[20..0] : soft;
sft11a[20..0] : soft;
sft13a[17..0] : soft;
sft14a[17..0] : soft;
sft15a[17..0] : soft;
sft17a[14..0] : soft;
sft18a[14..0] : soft;
sft19a[14..0] : soft;
sft21a[8..0] : soft;
sft22a[8..0] : soft;
sft23a[8..0] : soft;
sft25a[2..0] : soft;
sft26a[2..0] : soft;
sft27a[2..0] : soft;
sft9a[20..0] : soft;
dataa_node[9..0] : WIRE;
datab_node[7..0] : WIRE;
final_result_node[17..0] : WIRE;
w101w[11..0] : WIRE;
w102w[11..0] : WIRE;
w103w[11..0] : WIRE;
w116w[11..0] : WIRE;
w117w[11..0] : WIRE;
w158w : WIRE;
w160w[11..0] : WIRE;
w161w[11..0] : WIRE;
w162w[11..0] : WIRE;
w175w[11..0] : WIRE;
w176w[11..0] : WIRE;
w207w : WIRE;
w209w : WIRE;
w210w[11..0] : WIRE;
w211w[11..0] : WIRE;
w212w[11..0] : WIRE;
w225w[11..0] : WIRE;
w226w[11..0] : WIRE;
w243w : WIRE;
w245w : WIRE;
w247w : WIRE;
w249w : WIRE;
w251w : WIRE;
w253w : WIRE;
w255w : WIRE;
w257w : WIRE;
w265w : WIRE;
w267w : WIRE;
w268w[11..0] : WIRE;
w269w[11..0] : WIRE;
w270w[11..0] : WIRE;
w287w : WIRE;
w289w : WIRE;
w291w : WIRE;
w293w : WIRE;
w295w : WIRE;
w297w : WIRE;
w299w : WIRE;
w301w : WIRE;
w308w[10..0] : WIRE;
w310w[10..0] : WIRE;
w322w : WIRE;
w324w : WIRE;
w326w : WIRE;
w328w : WIRE;
w330w : WIRE;
w332w : WIRE;
w334w : WIRE;
w336w : WIRE;
w338w : WIRE;
w341w : WIRE;
w342w : WIRE;
w343w : WIRE;
w344w : WIRE;
w345w : WIRE;
w346w : WIRE;
w350w : WIRE;
w351w : WIRE;
w352w : WIRE;
w353w : WIRE;
w354w : WIRE;
w355w : WIRE;
w356w : WIRE;
w357w : WIRE;
w358w : WIRE;
w359w : WIRE;
w360w : WIRE;
w361w : WIRE;
w362w : WIRE;
w365w : WIRE;
w556w[20..0] : WIRE;
w7w[9..0] : WIRE;
BEGIN
add12_result[] = sft13a[].out + sft14a[].out;
add16_result[] = sft17a[].out + sft18a[].out;
add20_result[] = sft21a[].out + sft22a[].out;
add24_result[] = sft25a[].out + sft26a[].out;
add8_result[] = sft9a[].out + sft10a[].out;
cs1a[].cin = ( ((w7w[8..8] & cs1a[3].cout) # w7w[9..9]), (cs1a[2].cout & w7w[6..6]), ((w7w[4..4] & cs1a[1].cout) # w7w[5..5]), ((w7w[2..2] & cs1a[0].cout) # w7w[3..3]), w7w[1..1]);
cs1a[].sin = ( ((((((! 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))), (cs1a[2].cout & w7w[6..6]), ((((((! 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]);
cs2a[].cin = ( ((w7w[8..8] & cs2a[3].cout) # w7w[9..9]), (cs2a[2].cout $ w7w[6..6]), ((w7w[4..4] & cs2a[1].cout) # w7w[5..5]), ((w7w[2..2] & cs2a[0].cout) # w7w[3..3]), w7w[1..1]);
cs2a[].sin = ( ((((((! w7w[9..9]) & (! w7w[8..8])) & cs2a[3].cout) # (((! w7w[9..9]) & w7w[8..8]) & (! cs2a[3].cout))) # ((w7w[9..9] & w7w[8..8]) & (! cs2a[3].cout))) # ((w7w[9..9] & (! w7w[8..8])) & cs2a[3].cout)), (cs2a[2].cout $ w7w[6..6]), ((((((! w7w[5..5]) & (! w7w[4..4])) & cs2a[1].cout) # (((! w7w[5..5]) & w7w[4..4]) & (! cs2a[1].cout))) # ((w7w[5..5] & w7w[4..4]) & (! cs2a[1].cout))) # ((w7w[5..5] & (! w7w[4..4])) & cs2a[1].cout)), ((((((! w7w[3..3]) & (! w7w[2..2])) & cs2a[0].cout) # (((! w7w[3..3]) & w7w[2..2]) & (! cs2a[0].cout))) # ((w7w[3..3] & w7w[2..2]) & (! cs2a[0].cout))) # ((w7w[3..3] & (! w7w[2..2])) & cs2a[0].cout)), w7w[0..0]);
le3a[].in = (! ((! w116w[]) & (! w117w[])));
le4a[].in = (! ((! w175w[]) & (! w176w[])));
le5a[].in = (! ((! w225w[]) & (! w226w[])));
le6a[].in = ((cs1a[3].sout & w269w[]) # (cs2a[3].sout & w270w[]));
le7a[].in = (w7w[7..7] & w310w[]);
sft10a[].in = ( w365w, ( w362w, ( w361w, ( w359w, ( w358w, ( w356w, ( w344w, ( w334w, ( w332w, ( w297w, ( w295w, ( w293w, ( w291w, ( w289w, ( w287w, ( w351w, ( w267w, ( w350w, ( w209w, ( w365w, w158w))))))))))))))))))));
sft11a[].in = add8_result[];
sft13a[].in = ( w365w, ( w341w, ( w308w[10..10], ( w308w[9..9], ( w308w[8..8], ( w308w[7..7], ( w308w[6..6], ( w308w[5..5], ( w308w[4..4], ( w308w[3..3], ( w308w[2..2], ( w308w[1..1], ( w308w[0..0], ( w268w[0..0], ( w210w[1..1], ( w210w[0..0], ( w101w[3..2])))))))))))))))));
sft14a[].in = ( w365w, ( w365w, ( w268w[11..11], ( w268w[10..10], ( w268w[9..9], ( w355w, ( w353w, ( w343w, ( w330w, ( w328w, ( w326w, ( w324w, ( w322w, ( w210w[2..2], ( w160w[3..3], ( w160w[2..2], ( w365w, w207w)))))))))))))))));
sft15a[].in = add12_result[];
sft17a[].in = ( w365w, ( w341w, ( w341w, ( (! w210w[11..11]), ( w268w[8..8], ( w268w[7..7], ( w268w[6..6], ( w268w[5..5], ( w268w[4..4], ( w268w[3..3], ( w268w[2..2], ( w268w[1..1], ( w160w[4..4], ( w101w[5..5], w265w))))))))))))));
sft18a[].in = ( w365w, ( w365w, ( w365w, ( w357w, ( w210w[10..10], ( w354w, ( w352w, ( w342w, ( w210w[6..6], ( w210w[5..5], ( w210w[4..4], ( w210w[3..3], ( w101w[6..6], ( w365w, w101w[4..4]))))))))))))));
sft19a[].in = add16_result[];
sft21a[].in = ( w365w, ( w341w, ( w210w[9..9], ( w210w[8..8], ( w210w[7..7], ( w160w[8..8], ( w160w[7..7], ( w160w[6..5]))))))));
sft22a[].in = ( w365w, ( w365w, ( (! w160w[11..11]), ( w160w[10..10], ( w160w[9..9], ( w101w[10..10], ( w101w[9..9], ( w101w[8..7]))))))));
sft23a[].in = add20_result[];
sft25a[].in = ( w365w, ( w341w, w341w));
sft26a[].in = ( w365w, ( w365w, (! w101w[11..11])));
sft27a[].in = add24_result[];
sft9a[].in = ( w341w, ( w341w, ( w360w, ( w346w, ( w345w, ( w338w, ( w336w, ( w301w, ( w299w, ( w257w, ( w255w, ( w253w, ( w251w, ( w249w, ( w247w, ( w245w, ( w243w, ( w160w[1..1], ( w160w[0..0], ( w101w[1..0]))))))))))))))))))));
dataa_node[] = ( datab[9..0]);
datab_node[] = ( dataa[7..0]);
final_result_node[] = ( w556w[17..0]);
result[] = ( final_result_node[17..0]);
w101w[] = le3a[].out;
w102w[] = ( B"0", dataa_node[], B"0");
w103w[] = ( B"0", B"0", dataa_node[]);
w116w[] = (((! w102w[]) & cs1a[0].sout) & (! cs2a[0].sout));
w117w[] = ((((! w103w[]) & cs1a[0].sout) & cs2a[0].sout) # ((w103w[] & (! cs1a[0].sout)) & cs2a[0].sout));
w158w = cs1a[0].sout;
w160w[] = le4a[].out;
w161w[] = ( B"0", dataa_node[], B"0");
w162w[] = ( B"0", B"0", dataa_node[]);
w175w[] = (((! w161w[]) & cs1a[1].sout) & (! cs2a[1].sout));
w176w[] = ((((! w162w[]) & cs1a[1].sout) & cs2a[1].sout) # ((w162w[] & (! cs1a[1].sout)) & cs2a[1].sout));
w207w = cs1a[1].sout;
w209w = sft15a[0..0].out;
w210w[] = le5a[].out;
w211w[] = ( B"0", dataa_node[], B"0");
w212w[] = ( B"0", B"0", dataa_node[]);
w225w[] = (((! w211w[]) & cs1a[2].sout) & (! cs2a[2].sout));
w226w[] = ((((! w212w[]) & cs1a[2].sout) & cs2a[2].sout) # ((w212w[] & (! cs1a[2].sout)) & cs2a[2].sout));
w243w = sft15a[2..2].out;
w245w = sft15a[3..3].out;
w247w = sft15a[4..4].out;
w249w = sft15a[5..5].out;
w251w = sft15a[6..6].out;
w253w = sft15a[7..7].out;
w255w = sft15a[8..8].out;
w257w = sft15a[9..9].out;
w265w = cs1a[2].sout;
w267w = sft19a[0..0].out;
w268w[] = le6a[].out;
w269w[] = ( B"0", dataa_node[], B"0");
w270w[] = ( B"0", B"0", dataa_node[]);
w287w = sft19a[2..2].out;
w289w = sft19a[3..3].out;
w291w = sft19a[4..4].out;
w293w = sft19a[5..5].out;
w295w = sft19a[6..6].out;
w297w = sft19a[7..7].out;
w299w = sft15a[10..10].out;
w301w = sft15a[11..11].out;
w308w[] = le7a[].out;
w310w[] = ( B"0", dataa_node[]);
w322w = sft23a[0..0].out;
w324w = sft23a[1..1].out;
w326w = sft23a[2..2].out;
w328w = sft23a[3..3].out;
w330w = sft23a[4..4].out;
w332w = sft19a[8..8].out;
w334w = sft19a[9..9].out;
w336w = sft15a[12..12].out;
w338w = sft15a[13..13].out;
w341w = B"1";
w342w = sft27a[0..0].out;
w343w = sft23a[5..5].out;
w344w = sft19a[10..10].out;
w345w = sft15a[14..14].out;
w346w = sft15a[15..15].out;
w350w = sft15a[1..1].out;
w351w = sft19a[1..1].out;
w352w = sft27a[1..1].out;
w353w = sft23a[6..6].out;
w354w = sft27a[2..2].out;
w355w = sft23a[7..7].out;
w356w = sft19a[11..11].out;
w357w = sft23a[8..8].out;
w358w = sft19a[12..12].out;
w359w = sft19a[13..13].out;
w360w = sft15a[16..16].out;
w361w = sft19a[14..14].out;
w362w = sft15a[17..17].out;
w365w = B"0";
w556w[] = ( sft11a[20..19].out, sft11a[18..17].out, sft11a[16..15].out, sft11a[14..13].out, sft11a[12..11].out, sft11a[10..9].out, sft11a[8..7].out, sft11a[6..5].out, sft11a[4..3].out, sft11a[2..1].out, sft11a[0..0].out);
w7w[] = ( B"00", datab_node[]);
END;
--VALID FILE
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -