mirror of
https://github.com/supleed2/ELEC40006-P1-CW.git
synced 2024-11-10 02:05:48 +00:00
873 lines
22 KiB
Plaintext
873 lines
22 KiB
Plaintext
/*
|
|
WARNING: Do NOT edit the input and output ports in this file in a text
|
|
editor if you plan to continue editing the block that represents it in
|
|
the Block Editor! File corruption is VERY likely to occur.
|
|
*/
|
|
/*
|
|
Copyright (C) 2018 Intel Corporation. All rights reserved.
|
|
Your use of Intel 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 Intel Program License
|
|
Subscription Agreement, the Intel Quartus Prime License Agreement,
|
|
the Intel FPGA IP License Agreement, or other applicable license
|
|
agreement, including, without limitation, that your use is for
|
|
the sole purpose of programming logic devices manufactured by
|
|
Intel and sold by Intel or its authorized distributors. Please
|
|
refer to the applicable agreement for further details.
|
|
*/
|
|
(header "graphic" (version "1.4"))
|
|
(pin
|
|
(input)
|
|
(rect 48 256 224 272)
|
|
(text "INPUT" (rect 133 0 161 10)(font "Arial" (font_size 6)))
|
|
(text "A[15..0]" (rect 9 0 47 12)(font "Arial" ))
|
|
(pt 176 8)
|
|
(drawing
|
|
(line (pt 92 12)(pt 117 12))
|
|
(line (pt 92 4)(pt 117 4))
|
|
(line (pt 121 8)(pt 176 8))
|
|
(line (pt 92 12)(pt 92 4))
|
|
(line (pt 117 4)(pt 121 8))
|
|
(line (pt 117 12)(pt 121 8))
|
|
)
|
|
(text "VCC" (rect 136 7 156 17)(font "Arial" (font_size 6)))
|
|
)
|
|
(pin
|
|
(input)
|
|
(rect 40 304 216 320)
|
|
(text "INPUT" (rect 133 0 161 10)(font "Arial" (font_size 6)))
|
|
(text "B[15..0]" (rect 9 0 47 12)(font "Arial" ))
|
|
(pt 176 8)
|
|
(drawing
|
|
(line (pt 92 12)(pt 117 12))
|
|
(line (pt 92 4)(pt 117 4))
|
|
(line (pt 121 8)(pt 176 8))
|
|
(line (pt 92 12)(pt 92 4))
|
|
(line (pt 117 4)(pt 121 8))
|
|
(line (pt 117 12)(pt 121 8))
|
|
)
|
|
(text "VCC" (rect 136 7 156 17)(font "Arial" (font_size 6)))
|
|
)
|
|
(pin
|
|
(input)
|
|
(rect 40 208 216 224)
|
|
(text "INPUT" (rect 133 0 161 10)(font "Arial" (font_size 6)))
|
|
(text "CLOCK" (rect 9 0 46 12)(font "Arial" ))
|
|
(pt 176 8)
|
|
(drawing
|
|
(line (pt 92 12)(pt 117 12))
|
|
(line (pt 92 4)(pt 117 4))
|
|
(line (pt 121 8)(pt 176 8))
|
|
(line (pt 92 12)(pt 92 4))
|
|
(line (pt 117 4)(pt 121 8))
|
|
(line (pt 117 12)(pt 121 8))
|
|
)
|
|
(text "VCC" (rect 136 7 156 17)(font "Arial" (font_size 6)))
|
|
)
|
|
(pin
|
|
(output)
|
|
(rect 1872 272 2048 288)
|
|
(text "OUTPUT" (rect 1 0 39 10)(font "Arial" (font_size 6)))
|
|
(text "PRODUCT[31..0]" (rect 90 0 176 12)(font "Arial" ))
|
|
(pt 0 8)
|
|
(drawing
|
|
(line (pt 0 8)(pt 52 8))
|
|
(line (pt 52 4)(pt 78 4))
|
|
(line (pt 52 12)(pt 78 12))
|
|
(line (pt 52 12)(pt 52 4))
|
|
(line (pt 78 4)(pt 82 8))
|
|
(line (pt 82 8)(pt 78 12))
|
|
(line (pt 78 12)(pt 82 8))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 1296 544 1456 712)
|
|
(text "LPM_ADD_SUB" (rect 37 0 149 16)(font "Arial" (font_size 10)))
|
|
(text "ADD2" (rect 3 156 32 168)(font "Arial" ))
|
|
(port
|
|
(pt 0 120)
|
|
(input)
|
|
(text "datab[LPM_WIDTH-1..0]" (rect 20 105 153 119)(font "Arial" (font_size 8)))
|
|
(text "datab[]" (rect 20 105 58 119)(font "Arial" (font_size 8)))
|
|
(line (pt 0 120)(pt 15 120)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "add_sub" (rect 20 17 69 31)(font "Arial" (font_size 8)))
|
|
(text "add_sub" (rect 20 17 69 31)(font "Arial" (font_size 8)))
|
|
(line (pt 0 32)(pt 15 32))
|
|
)
|
|
(port
|
|
(pt 0 72)
|
|
(input)
|
|
(text "dataa[LPM_WIDTH-1..0]" (rect 20 57 153 71)(font "Arial" (font_size 8)))
|
|
(text "dataa[]" (rect 20 57 58 71)(font "Arial" (font_size 8)))
|
|
(line (pt 0 72)(pt 15 72)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 48)
|
|
(input)
|
|
(text "cin" (rect 20 34 36 48)(font "Arial" (font_size 8)))
|
|
(text "cin" (rect 20 34 36 48)(font "Arial" (font_size 8)))
|
|
(line (pt 0 48)(pt 15 48))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 144)
|
|
(input)
|
|
(text "aclr" (rect 20 130 41 144)(font "Arial" (font_size 8)))
|
|
(text "aclr" (rect 20 130 41 144)(font "Arial" (font_size 8)))
|
|
(line (pt 0 144)(pt 15 144))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 88)
|
|
(input)
|
|
(text "clock" (rect 20 74 49 88)(font "Arial" (font_size 8)))
|
|
(text "clock" (rect 20 74 49 88)(font "Arial" (font_size 8)))
|
|
(line (pt 0 88)(pt 56 88))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 104)
|
|
(input)
|
|
(text "clken" (rect 20 90 49 104)(font "Arial" (font_size 8)))
|
|
(text "clken" (rect 20 90 49 104)(font "Arial" (font_size 8)))
|
|
(line (pt 0 104)(pt 56 104))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 144)
|
|
(output)
|
|
(text "cout" (rect 120 129 144 143)(font "Arial" (font_size 8)))
|
|
(text "cout" (rect 120 129 140 143)(font "Arial" (font_size 8)))
|
|
(line (pt 145 144)(pt 160 144))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 128)
|
|
(output)
|
|
(text "overflow" (rect 99 113 150 127)(font "Arial" (font_size 8)))
|
|
(text "overflow" (rect 97 113 140 127)(font "Arial" (font_size 8)))
|
|
(line (pt 145 128)(pt 160 128))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 96)
|
|
(output)
|
|
(text "result[LPM_WIDTH-1..0]" (rect 109 81 242 95)(font "Arial" (font_size 8)))
|
|
(text "result[]" (rect 108 81 140 95)(font "Arial" (font_size 8)))
|
|
(line (pt 145 96)(pt 160 96)(line_width 3))
|
|
)
|
|
(parameter
|
|
"LPM_DIRECTION"
|
|
"ADD"
|
|
"Selects between addition, subtraction, or both"
|
|
"\"DEFAULT\"" "\"ADD\"" "\"SUB\""
|
|
(type "PARAMETER_STRING") )
|
|
(parameter
|
|
"LPM_PIPELINE"
|
|
""
|
|
"Output latency in clock cycles - requires use of optional clock"
|
|
"0" "1" "2" "3" "4"
|
|
)
|
|
(parameter
|
|
"LPM_REPRESENTATION"
|
|
"UNSIGNED"
|
|
"Numeric representation of inputs"
|
|
"\"UNSIGNED\"" "\"SIGNED\""
|
|
(type "PARAMETER_STRING") )
|
|
(parameter
|
|
"LPM_WIDTH"
|
|
"32"
|
|
"Width of I/O, any integer > 0"
|
|
" 1" " 2" " 3" " 4" " 5" " 6" " 7" " 8" " 9" "10" "11" "12" "13" "14" "15" "16" "20" "24" "28" "32" "40" "48" "56" "64"
|
|
(type "PARAMETER_UNSIGNED_DEC") )
|
|
(parameter
|
|
"MAXIMIZE_SPEED"
|
|
""
|
|
"Hint to help tradeoff between speed and size"
|
|
" 0" " 1" " 2" " 3" " 4" " 5" " 6" " 7" " 8" " 9" "10"
|
|
)
|
|
(parameter
|
|
"ONE_INPUT_IS_CONSTANT"
|
|
""
|
|
"Hint to help minimize the number of LCELLs"
|
|
"\"NO\"" "\"YES\""
|
|
)
|
|
(drawing
|
|
(line (pt 16 48)(pt 72 48))
|
|
(line (pt 16 152)(pt 144 152))
|
|
(line (pt 16 16)(pt 144 16))
|
|
(line (pt 16 72)(pt 56 72)(line_width 3))
|
|
(line (pt 16 120)(pt 56 120)(line_width 3))
|
|
(line (pt 104 96)(pt 144 96)(line_width 3))
|
|
(line (pt 88 128)(pt 144 128))
|
|
(line (pt 16 32)(pt 88 32))
|
|
(line (pt 80 144)(pt 144 144))
|
|
(line (pt 16 144)(pt 72 144))
|
|
(line (pt 104 112)(pt 104 80))
|
|
(line (pt 88 128)(pt 88 120))
|
|
(line (pt 16 152)(pt 16 16))
|
|
(line (pt 144 152)(pt 144 16))
|
|
(line (pt 56 136)(pt 56 56))
|
|
(line (pt 72 64)(pt 72 48))
|
|
(line (pt 88 72)(pt 88 32))
|
|
(line (pt 80 144)(pt 80 124))
|
|
(line (pt 72 144)(pt 72 128))
|
|
(line (pt 56 56)(pt 104 80))
|
|
(line (pt 56 136)(pt 104 112))
|
|
)
|
|
(annotation_block (parameter)(rect 1208 416 1518 549))
|
|
)
|
|
(symbol
|
|
(rect 1264 48 1424 216)
|
|
(text "LPM_ADD_SUB" (rect 37 0 149 16)(font "Arial" (font_size 10)))
|
|
(text "ADD3" (rect 3 156 32 168)(font "Arial" ))
|
|
(port
|
|
(pt 0 120)
|
|
(input)
|
|
(text "datab[LPM_WIDTH-1..0]" (rect 20 105 153 119)(font "Arial" (font_size 8)))
|
|
(text "datab[]" (rect 20 105 58 119)(font "Arial" (font_size 8)))
|
|
(line (pt 0 120)(pt 15 120)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "add_sub" (rect 20 17 69 31)(font "Arial" (font_size 8)))
|
|
(text "add_sub" (rect 20 17 69 31)(font "Arial" (font_size 8)))
|
|
(line (pt 0 32)(pt 15 32))
|
|
)
|
|
(port
|
|
(pt 0 72)
|
|
(input)
|
|
(text "dataa[LPM_WIDTH-1..0]" (rect 20 57 153 71)(font "Arial" (font_size 8)))
|
|
(text "dataa[]" (rect 20 57 58 71)(font "Arial" (font_size 8)))
|
|
(line (pt 0 72)(pt 15 72)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 48)
|
|
(input)
|
|
(text "cin" (rect 20 34 36 48)(font "Arial" (font_size 8)))
|
|
(text "cin" (rect 20 34 36 48)(font "Arial" (font_size 8)))
|
|
(line (pt 0 48)(pt 15 48))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 144)
|
|
(input)
|
|
(text "aclr" (rect 20 130 41 144)(font "Arial" (font_size 8)))
|
|
(text "aclr" (rect 20 130 41 144)(font "Arial" (font_size 8)))
|
|
(line (pt 0 144)(pt 15 144))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 88)
|
|
(input)
|
|
(text "clock" (rect 20 74 49 88)(font "Arial" (font_size 8)))
|
|
(text "clock" (rect 20 74 49 88)(font "Arial" (font_size 8)))
|
|
(line (pt 0 88)(pt 56 88))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 104)
|
|
(input)
|
|
(text "clken" (rect 20 90 49 104)(font "Arial" (font_size 8)))
|
|
(text "clken" (rect 20 90 49 104)(font "Arial" (font_size 8)))
|
|
(line (pt 0 104)(pt 56 104))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 144)
|
|
(output)
|
|
(text "cout" (rect 120 129 144 143)(font "Arial" (font_size 8)))
|
|
(text "cout" (rect 120 129 140 143)(font "Arial" (font_size 8)))
|
|
(line (pt 145 144)(pt 160 144))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 128)
|
|
(output)
|
|
(text "overflow" (rect 99 113 150 127)(font "Arial" (font_size 8)))
|
|
(text "overflow" (rect 97 113 140 127)(font "Arial" (font_size 8)))
|
|
(line (pt 145 128)(pt 160 128))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 96)
|
|
(output)
|
|
(text "result[LPM_WIDTH-1..0]" (rect 109 81 242 95)(font "Arial" (font_size 8)))
|
|
(text "result[]" (rect 108 81 140 95)(font "Arial" (font_size 8)))
|
|
(line (pt 145 96)(pt 160 96)(line_width 3))
|
|
)
|
|
(parameter
|
|
"LPM_DIRECTION"
|
|
"ADD"
|
|
"Selects between addition, subtraction, or both"
|
|
"\"DEFAULT\"" "\"ADD\"" "\"SUB\""
|
|
(type "PARAMETER_STRING") )
|
|
(parameter
|
|
"LPM_PIPELINE"
|
|
""
|
|
"Output latency in clock cycles - requires use of optional clock"
|
|
"0" "1" "2" "3" "4"
|
|
)
|
|
(parameter
|
|
"LPM_REPRESENTATION"
|
|
"UNSIGNED"
|
|
"Numeric representation of inputs"
|
|
"\"UNSIGNED\"" "\"SIGNED\""
|
|
(type "PARAMETER_STRING") )
|
|
(parameter
|
|
"LPM_WIDTH"
|
|
"32"
|
|
"Width of I/O, any integer > 0"
|
|
" 1" " 2" " 3" " 4" " 5" " 6" " 7" " 8" " 9" "10" "11" "12" "13" "14" "15" "16" "20" "24" "28" "32" "40" "48" "56" "64"
|
|
(type "PARAMETER_UNSIGNED_DEC") )
|
|
(parameter
|
|
"MAXIMIZE_SPEED"
|
|
""
|
|
"Hint to help tradeoff between speed and size"
|
|
" 0" " 1" " 2" " 3" " 4" " 5" " 6" " 7" " 8" " 9" "10"
|
|
)
|
|
(parameter
|
|
"ONE_INPUT_IS_CONSTANT"
|
|
""
|
|
"Hint to help minimize the number of LCELLs"
|
|
"\"NO\"" "\"YES\""
|
|
)
|
|
(drawing
|
|
(line (pt 16 48)(pt 72 48))
|
|
(line (pt 16 152)(pt 144 152))
|
|
(line (pt 16 16)(pt 144 16))
|
|
(line (pt 16 72)(pt 56 72)(line_width 3))
|
|
(line (pt 16 120)(pt 56 120)(line_width 3))
|
|
(line (pt 104 96)(pt 144 96)(line_width 3))
|
|
(line (pt 88 128)(pt 144 128))
|
|
(line (pt 16 32)(pt 88 32))
|
|
(line (pt 80 144)(pt 144 144))
|
|
(line (pt 16 144)(pt 72 144))
|
|
(line (pt 104 112)(pt 104 80))
|
|
(line (pt 88 128)(pt 88 120))
|
|
(line (pt 16 152)(pt 16 16))
|
|
(line (pt 144 152)(pt 144 16))
|
|
(line (pt 56 136)(pt 56 56))
|
|
(line (pt 72 64)(pt 72 48))
|
|
(line (pt 88 72)(pt 88 32))
|
|
(line (pt 80 144)(pt 80 124))
|
|
(line (pt 72 144)(pt 72 128))
|
|
(line (pt 56 56)(pt 104 80))
|
|
(line (pt 56 136)(pt 104 112))
|
|
)
|
|
(annotation_block (parameter)(rect 1208 -104 1518 29))
|
|
)
|
|
(symbol
|
|
(rect 1568 184 1728 352)
|
|
(text "LPM_ADD_SUB" (rect 37 0 149 16)(font "Arial" (font_size 10)))
|
|
(text "ADD4" (rect 3 156 32 168)(font "Arial" ))
|
|
(port
|
|
(pt 0 120)
|
|
(input)
|
|
(text "datab[LPM_WIDTH-1..0]" (rect 20 105 153 119)(font "Arial" (font_size 8)))
|
|
(text "datab[]" (rect 20 105 58 119)(font "Arial" (font_size 8)))
|
|
(line (pt 0 120)(pt 15 120)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "add_sub" (rect 20 17 69 31)(font "Arial" (font_size 8)))
|
|
(text "add_sub" (rect 20 17 69 31)(font "Arial" (font_size 8)))
|
|
(line (pt 0 32)(pt 15 32))
|
|
)
|
|
(port
|
|
(pt 0 72)
|
|
(input)
|
|
(text "dataa[LPM_WIDTH-1..0]" (rect 20 57 153 71)(font "Arial" (font_size 8)))
|
|
(text "dataa[]" (rect 20 57 58 71)(font "Arial" (font_size 8)))
|
|
(line (pt 0 72)(pt 15 72)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 48)
|
|
(input)
|
|
(text "cin" (rect 20 34 36 48)(font "Arial" (font_size 8)))
|
|
(text "cin" (rect 20 34 36 48)(font "Arial" (font_size 8)))
|
|
(line (pt 0 48)(pt 15 48))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 144)
|
|
(input)
|
|
(text "aclr" (rect 20 130 41 144)(font "Arial" (font_size 8)))
|
|
(text "aclr" (rect 20 130 41 144)(font "Arial" (font_size 8)))
|
|
(line (pt 0 144)(pt 15 144))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 88)
|
|
(input)
|
|
(text "clock" (rect 20 74 49 88)(font "Arial" (font_size 8)))
|
|
(text "clock" (rect 20 74 49 88)(font "Arial" (font_size 8)))
|
|
(line (pt 0 88)(pt 56 88))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 0 104)
|
|
(input)
|
|
(text "clken" (rect 20 90 49 104)(font "Arial" (font_size 8)))
|
|
(text "clken" (rect 20 90 49 104)(font "Arial" (font_size 8)))
|
|
(line (pt 0 104)(pt 56 104))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 144)
|
|
(output)
|
|
(text "cout" (rect 120 129 144 143)(font "Arial" (font_size 8)))
|
|
(text "cout" (rect 120 129 140 143)(font "Arial" (font_size 8)))
|
|
(line (pt 145 144)(pt 160 144))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 128)
|
|
(output)
|
|
(text "overflow" (rect 99 113 150 127)(font "Arial" (font_size 8)))
|
|
(text "overflow" (rect 97 113 140 127)(font "Arial" (font_size 8)))
|
|
(line (pt 145 128)(pt 160 128))
|
|
(unused)
|
|
)
|
|
(port
|
|
(pt 160 96)
|
|
(output)
|
|
(text "result[LPM_WIDTH-1..0]" (rect 109 81 242 95)(font "Arial" (font_size 8)))
|
|
(text "result[]" (rect 108 81 140 95)(font "Arial" (font_size 8)))
|
|
(line (pt 145 96)(pt 160 96)(line_width 3))
|
|
)
|
|
(parameter
|
|
"LPM_DIRECTION"
|
|
"ADD"
|
|
"Selects between addition, subtraction, or both"
|
|
"\"DEFAULT\"" "\"ADD\"" "\"SUB\""
|
|
(type "PARAMETER_STRING") )
|
|
(parameter
|
|
"LPM_PIPELINE"
|
|
""
|
|
"Output latency in clock cycles - requires use of optional clock"
|
|
"0" "1" "2" "3" "4"
|
|
)
|
|
(parameter
|
|
"LPM_REPRESENTATION"
|
|
"UNSIGNED"
|
|
"Numeric representation of inputs"
|
|
"\"UNSIGNED\"" "\"SIGNED\""
|
|
(type "PARAMETER_STRING") )
|
|
(parameter
|
|
"LPM_WIDTH"
|
|
"32"
|
|
"Width of I/O, any integer > 0"
|
|
" 1" " 2" " 3" " 4" " 5" " 6" " 7" " 8" " 9" "10" "11" "12" "13" "14" "15" "16" "20" "24" "28" "32" "40" "48" "56" "64"
|
|
(type "PARAMETER_UNSIGNED_DEC") )
|
|
(parameter
|
|
"MAXIMIZE_SPEED"
|
|
""
|
|
"Hint to help tradeoff between speed and size"
|
|
" 0" " 1" " 2" " 3" " 4" " 5" " 6" " 7" " 8" " 9" "10"
|
|
)
|
|
(parameter
|
|
"ONE_INPUT_IS_CONSTANT"
|
|
""
|
|
"Hint to help minimize the number of LCELLs"
|
|
"\"NO\"" "\"YES\""
|
|
)
|
|
(drawing
|
|
(line (pt 16 48)(pt 72 48))
|
|
(line (pt 16 152)(pt 144 152))
|
|
(line (pt 16 16)(pt 144 16))
|
|
(line (pt 16 72)(pt 56 72)(line_width 3))
|
|
(line (pt 16 120)(pt 56 120)(line_width 3))
|
|
(line (pt 104 96)(pt 144 96)(line_width 3))
|
|
(line (pt 88 128)(pt 144 128))
|
|
(line (pt 16 32)(pt 88 32))
|
|
(line (pt 80 144)(pt 144 144))
|
|
(line (pt 16 144)(pt 72 144))
|
|
(line (pt 104 112)(pt 104 80))
|
|
(line (pt 88 128)(pt 88 120))
|
|
(line (pt 16 152)(pt 16 16))
|
|
(line (pt 144 152)(pt 144 16))
|
|
(line (pt 56 136)(pt 56 56))
|
|
(line (pt 72 64)(pt 72 48))
|
|
(line (pt 88 72)(pt 88 32))
|
|
(line (pt 80 144)(pt 80 124))
|
|
(line (pt 72 144)(pt 72 128))
|
|
(line (pt 56 56)(pt 104 80))
|
|
(line (pt 56 136)(pt 104 112))
|
|
)
|
|
(annotation_block (parameter)(rect 1728 48 2038 181))
|
|
)
|
|
(symbol
|
|
(rect 168 160 200 192)
|
|
(text "GND" (rect 8 16 29 26)(font "Arial" (font_size 6)))
|
|
(text "inst5" (rect 3 21 26 33)(font "Arial" )(invisible))
|
|
(port
|
|
(pt 16 0)
|
|
(output)
|
|
(text "1" (rect 18 0 23 12)(font "Courier New" (bold))(invisible))
|
|
(text "1" (rect 18 0 23 12)(font "Courier New" (bold))(invisible))
|
|
(line (pt 16 8)(pt 16 0))
|
|
)
|
|
(drawing
|
|
(line (pt 8 8)(pt 16 16))
|
|
(line (pt 16 16)(pt 24 8))
|
|
(line (pt 8 8)(pt 24 8))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 648 176 848 272)
|
|
(text "mul8" (rect 5 0 35 19)(font "Intel Clear" (font_size 8)))
|
|
(text "MUL2" (rect 8 75 36 92)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "CLOCK" (rect 0 0 41 19)(font "Intel Clear" (font_size 8)))
|
|
(text "CLOCK" (rect 21 27 62 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 32)(pt 16 32))
|
|
)
|
|
(port
|
|
(pt 0 48)
|
|
(input)
|
|
(text "NUM1[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM1[7..0]" (rect 21 43 89 62)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 48)(pt 16 48)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 64)
|
|
(input)
|
|
(text "NUM2[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM2[7..0]" (rect 21 59 89 78)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 64)(pt 16 64)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 200 32)
|
|
(output)
|
|
(text "PROD[15..0]" (rect 0 0 74 19)(font "Intel Clear" (font_size 8)))
|
|
(text "PROD[15..0]" (rect 105 27 179 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 200 32)(pt 184 32)(line_width 3))
|
|
)
|
|
(drawing
|
|
(rectangle (rect 16 16 184 80))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 648 288 848 384)
|
|
(text "mul8" (rect 5 0 35 19)(font "Intel Clear" (font_size 8)))
|
|
(text "MUL3" (rect 8 75 36 92)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "CLOCK" (rect 0 0 41 19)(font "Intel Clear" (font_size 8)))
|
|
(text "CLOCK" (rect 21 27 62 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 32)(pt 16 32))
|
|
)
|
|
(port
|
|
(pt 0 48)
|
|
(input)
|
|
(text "NUM1[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM1[7..0]" (rect 21 43 89 62)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 48)(pt 16 48)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 64)
|
|
(input)
|
|
(text "NUM2[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM2[7..0]" (rect 21 59 89 78)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 64)(pt 16 64)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 200 32)
|
|
(output)
|
|
(text "PROD[15..0]" (rect 0 0 74 19)(font "Intel Clear" (font_size 8)))
|
|
(text "PROD[15..0]" (rect 105 27 179 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 200 32)(pt 184 32)(line_width 3))
|
|
)
|
|
(drawing
|
|
(rectangle (rect 16 16 184 80))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 648 392 848 488)
|
|
(text "mul8" (rect 5 0 35 19)(font "Intel Clear" (font_size 8)))
|
|
(text "MUL4" (rect 8 75 36 92)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "CLOCK" (rect 0 0 41 19)(font "Intel Clear" (font_size 8)))
|
|
(text "CLOCK" (rect 21 27 62 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 32)(pt 16 32))
|
|
)
|
|
(port
|
|
(pt 0 48)
|
|
(input)
|
|
(text "NUM1[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM1[7..0]" (rect 21 43 89 62)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 48)(pt 16 48)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 64)
|
|
(input)
|
|
(text "NUM2[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM2[7..0]" (rect 21 59 89 78)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 64)(pt 16 64)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 200 32)
|
|
(output)
|
|
(text "PROD[15..0]" (rect 0 0 74 19)(font "Intel Clear" (font_size 8)))
|
|
(text "PROD[15..0]" (rect 105 27 179 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 200 32)(pt 184 32)(line_width 3))
|
|
)
|
|
(drawing
|
|
(rectangle (rect 16 16 184 80))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 648 56 848 152)
|
|
(text "mul8" (rect 5 0 35 19)(font "Intel Clear" (font_size 8)))
|
|
(text "MUL1" (rect 8 75 36 92)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "CLOCK" (rect 0 0 41 19)(font "Intel Clear" (font_size 8)))
|
|
(text "CLOCK" (rect 21 27 62 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 32)(pt 16 32))
|
|
)
|
|
(port
|
|
(pt 0 48)
|
|
(input)
|
|
(text "NUM1[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM1[7..0]" (rect 21 43 89 62)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 48)(pt 16 48)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 0 64)
|
|
(input)
|
|
(text "NUM2[7..0]" (rect 0 0 68 19)(font "Intel Clear" (font_size 8)))
|
|
(text "NUM2[7..0]" (rect 21 59 89 78)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 0 64)(pt 16 64)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 200 32)
|
|
(output)
|
|
(text "PROD[15..0]" (rect 0 0 74 19)(font "Intel Clear" (font_size 8)))
|
|
(text "PROD[15..0]" (rect 105 27 179 46)(font "Intel Clear" (font_size 8)))
|
|
(line (pt 200 32)(pt 184 32)(line_width 3))
|
|
)
|
|
(drawing
|
|
(rectangle (rect 16 16 184 80))
|
|
)
|
|
)
|
|
(connector
|
|
(text "B[15..8]" (rect 570 104 606 121)(font "Intel Clear" ))
|
|
(pt 648 120)
|
|
(pt 560 120)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "A[15..8]" (rect 570 88 606 105)(font "Intel Clear" ))
|
|
(pt 648 104)
|
|
(pt 560 104)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "A[15..8]" (rect 578 208 614 225)(font "Intel Clear" ))
|
|
(pt 648 224)
|
|
(pt 568 224)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "B[7..0]" (rect 578 224 608 241)(font "Intel Clear" ))
|
|
(pt 648 240)
|
|
(pt 568 240)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "A[7..0]" (rect 586 320 616 337)(font "Intel Clear" ))
|
|
(pt 648 336)
|
|
(pt 576 336)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "B[15..8]" (rect 586 336 622 353)(font "Intel Clear" ))
|
|
(pt 576 352)
|
|
(pt 648 352)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "A[7..0]" (rect 594 424 624 441)(font "Intel Clear" ))
|
|
(pt 648 440)
|
|
(pt 584 440)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "B[7..0]" (rect 594 440 624 457)(font "Intel Clear" ))
|
|
(pt 648 456)
|
|
(pt 584 456)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 520 88)
|
|
(pt 648 88)
|
|
)
|
|
(connector
|
|
(pt 520 208)
|
|
(pt 648 208)
|
|
)
|
|
(connector
|
|
(pt 520 208)
|
|
(pt 520 88)
|
|
)
|
|
(connector
|
|
(pt 520 424)
|
|
(pt 648 424)
|
|
)
|
|
(connector
|
|
(pt 520 208)
|
|
(pt 520 216)
|
|
)
|
|
(connector
|
|
(pt 520 320)
|
|
(pt 648 320)
|
|
)
|
|
(connector
|
|
(pt 520 216)
|
|
(pt 520 320)
|
|
)
|
|
(connector
|
|
(pt 520 320)
|
|
(pt 520 424)
|
|
)
|
|
(connector
|
|
(pt 1544 304)
|
|
(pt 1568 304)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 1544 304)
|
|
(pt 1544 640)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 1544 640)
|
|
(pt 1456 640)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 1424 144)
|
|
(pt 1480 144)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 1480 144)
|
|
(pt 1480 256)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 1568 256)
|
|
(pt 1480 256)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "0" (rect 168 153 185 158)(font "Intel Clear" )(vertical))
|
|
(pt 184 136)
|
|
(pt 184 160)
|
|
)
|
|
(connector
|
|
(text "P1[15..0],0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0" (rect 962 104 1136 121)(font "Intel Clear" ))
|
|
(pt 1264 120)
|
|
(pt 952 120)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,P4[15..0]" (rect 978 152 1152 169)(font "Intel Clear" ))
|
|
(pt 1264 168)
|
|
(pt 968 168)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "0,0,0,0,0,0,0,0,P2[15..0],0,0,0,0,0,0,0,0" (rect 986 600 1160 617)(font "Intel Clear" ))
|
|
(pt 1296 616)
|
|
(pt 976 616)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "0,0,0,0,0,0,0,0,P3[15..0],0,0,0,0,0,0,0,0" (rect 994 648 1168 665)(font "Intel Clear" ))
|
|
(pt 1296 664)
|
|
(pt 984 664)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "PR[31..0]" (rect 1738 264 1781 281)(font "Intel Clear" ))
|
|
(pt 1728 280)
|
|
(pt 1872 280)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "P1[15..0]" (rect 858 72 900 89)(font "Intel Clear" ))
|
|
(pt 848 88)
|
|
(pt 904 88)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "P2[15..0]" (rect 858 192 900 209)(font "Intel Clear" ))
|
|
(pt 848 208)
|
|
(pt 904 208)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "P3[15..0]" (rect 858 296 900 313)(font "Intel Clear" ))
|
|
(pt 848 320)
|
|
(pt 912 320)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "P4[15..0]" (rect 858 408 900 425)(font "Intel Clear" ))
|
|
(pt 848 424)
|
|
(pt 912 424)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 216 264)
|
|
(pt 224 264)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 224 264)
|
|
(pt 376 264)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 208 312)
|
|
(pt 216 312)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 216 312)
|
|
(pt 376 312)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 200 216)
|
|
(pt 216 216)
|
|
)
|
|
(connector
|
|
(pt 216 216)
|
|
(pt 520 216)
|
|
)
|
|
(junction (pt 520 208))
|
|
(junction (pt 520 216))
|
|
(junction (pt 520 320))
|
|
(junction (pt 216 312))
|
|
(junction (pt 224 264))
|
|
(junction (pt 216 216))
|