mirror of
https://github.com/supleed2/ELEC40006-P1-CW.git
synced 2024-11-10 02:05:48 +00:00
770 lines
19 KiB
Plaintext
770 lines
19 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) 2019 Intel Corporation. All rights reserved.
|
|
Your use of Intel Corporation's design tools, logic functions
|
|
and other software and tools, and any 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, at
|
|
https://fpgasoftware.intel.com/eula.
|
|
*/
|
|
(header "graphic" (version "1.4"))
|
|
(pin
|
|
(input)
|
|
(rect 64 168 232 184)
|
|
(text "INPUT" (rect 125 0 153 10)(font "Arial" (font_size 6)))
|
|
(text "N[7..0]" (rect 5 0 40 12)(font "Arial" ))
|
|
(pt 168 8)
|
|
(drawing
|
|
(line (pt 84 12)(pt 109 12))
|
|
(line (pt 84 4)(pt 109 4))
|
|
(line (pt 113 8)(pt 168 8))
|
|
(line (pt 84 12)(pt 84 4))
|
|
(line (pt 109 4)(pt 113 8))
|
|
(line (pt 109 12)(pt 113 8))
|
|
)
|
|
(text "VCC" (rect 128 7 148 17)(font "Arial" (font_size 6)))
|
|
)
|
|
(pin
|
|
(output)
|
|
(rect 1152 224 1328 240)
|
|
(text "OUTPUT" (rect 1 0 39 10)(font "Arial" (font_size 6)))
|
|
(text "ABS[7..0]" (rect 90 0 137 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 408 160 472 208)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C2" (rect 3 37 15 54)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 408 224 472 272)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C3" (rect 3 37 15 54)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 408 288 472 336)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C4" (rect 3 37 15 54)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 408 352 472 400)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C5" (rect 3 37 15 54)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 408 416 472 464)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C6" (rect 3 37 15 54)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 408 32 472 80)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C0" (rect 3 37 17 49)(font "Arial" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 408 96 472 144)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C1" (rect 3 37 15 54)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 408 480 472 528)
|
|
(text "XOR" (rect 1 0 21 10)(font "Arial" (font_size 6)))
|
|
(text "C7" (rect 3 37 15 54)(font "Intel Clear" ))
|
|
(port
|
|
(pt 0 16)
|
|
(input)
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(text "IN1" (rect 2 7 19 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 16)(pt 11 16))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(text "IN2" (rect 2 23 19 35)(font "Courier New" (bold))(invisible))
|
|
(line (pt 0 32)(pt 11 32))
|
|
)
|
|
(port
|
|
(pt 64 24)
|
|
(output)
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(text "OUT" (rect 48 15 65 27)(font "Courier New" (bold))(invisible))
|
|
(line (pt 49 24)(pt 64 24))
|
|
)
|
|
(drawing
|
|
(line (pt 14 13)(pt 25 13))
|
|
(line (pt 14 36)(pt 25 36))
|
|
(arc (pt 7 29)(pt 7 19)(rect -14 8 19 41))
|
|
(arc (pt 49 24)(pt 25 13)(rect -6 13 57 76))
|
|
(arc (pt 25 35)(pt 49 24)(rect -6 -27 57 36))
|
|
(arc (pt 8 36)(pt 8 12)(rect -21 7 14 42))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 120 288 152 304)
|
|
(text "VCC" (rect 7 0 27 10)(font "Arial" (font_size 6)))
|
|
(text "inst" (rect 3 5 20 17)(font "Arial" )(invisible))
|
|
(port
|
|
(pt 16 16)
|
|
(output)
|
|
(text "1" (rect 19 7 24 19)(font "Courier New" (bold))(invisible))
|
|
(text "1" (rect 19 7 24 19)(font "Courier New" (bold))(invisible))
|
|
(line (pt 16 16)(pt 16 8))
|
|
)
|
|
(drawing
|
|
(line (pt 8 8)(pt 24 8))
|
|
)
|
|
)
|
|
(symbol
|
|
(rect 168 280 200 312)
|
|
(text "GND" (rect 8 16 29 26)(font "Arial" (font_size 6)))
|
|
(text "inst5" (rect 3 21 25 38)(font "Intel Clear" )(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 968 136 1128 304)
|
|
(text "LPM_ADD_SUB" (rect 37 0 149 16)(font "Arial" (font_size 10)))
|
|
(text "FA_ABS" (rect 3 156 41 173)(font "Intel Clear" ))
|
|
(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 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 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 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 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 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 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 160 144)
|
|
(output)
|
|
(text "cout" (rect 120 129 144 143)(font "Arial" (font_size 8)))
|
|
(text "cout" (rect 120 129 144 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 148 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 146 95)(font "Arial" (font_size 8)))
|
|
(line (pt 145 96)(pt 160 96)(line_width 3))
|
|
)
|
|
(parameter
|
|
"LPM_WIDTH"
|
|
"8"
|
|
"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") )
|
|
(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 960 96 1154 134))
|
|
)
|
|
(symbol
|
|
(rect 784 120 896 208)
|
|
(text "BUSMUX" (rect 28 0 91 16)(font "Arial" (font_size 10)))
|
|
(text "ADD1" (rect 3 77 36 91)(font "Arial" (font_size 8)))
|
|
(port
|
|
(pt 0 64)
|
|
(input)
|
|
(text "datab[WIDTH-1..0]" (rect 6 51 108 65)(font "Arial" (font_size 8)))
|
|
(text "datab[]" (rect 6 51 44 65)(font "Arial" (font_size 8)))
|
|
(line (pt 0 64)(pt 44 64)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 56 88)
|
|
(input)
|
|
(text "sel" (rect 59 70 75 84)(font "Arial" (font_size 8)))
|
|
(text "sel" (rect 59 70 75 84)(font "Arial" (font_size 8)))
|
|
(line (pt 56 88)(pt 56 72))
|
|
)
|
|
(port
|
|
(pt 0 32)
|
|
(input)
|
|
(text "dataa[WIDTH-1..0]" (rect 6 19 108 33)(font "Arial" (font_size 8)))
|
|
(text "dataa[]" (rect 6 19 44 33)(font "Arial" (font_size 8)))
|
|
(line (pt 0 32)(pt 44 32)(line_width 3))
|
|
)
|
|
(port
|
|
(pt 112 48)
|
|
(output)
|
|
(text "result[WIDTH-1..0]" (rect 75 35 177 49)(font "Arial" (font_size 8)))
|
|
(text "result[]" (rect 75 35 113 49)(font "Arial" (font_size 8)))
|
|
(line (pt 68 48)(pt 112 48)(line_width 3))
|
|
)
|
|
(parameter
|
|
"WIDTH"
|
|
"8"
|
|
"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") )
|
|
(drawing
|
|
(text "0" (rect 52 31 56 41)(font "Arial" (font_size 6)))
|
|
(text "1" (rect 52 55 56 65)(font "Arial" (font_size 6)))
|
|
(line (pt 68 64)(pt 68 32))
|
|
(line (pt 44 80)(pt 44 16))
|
|
(line (pt 44 16)(pt 68 32))
|
|
(line (pt 44 80)(pt 68 64))
|
|
)
|
|
(annotation_block (parameter)(rect 720 80 902 118))
|
|
)
|
|
(connector
|
|
(pt 232 176)
|
|
(pt 312 176)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "N[0]" (rect 362 32 382 49)(font "Intel Clear" ))
|
|
(pt 384 48)
|
|
(pt 408 48)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 362 56 382 73)(font "Intel Clear" ))
|
|
(pt 384 64)
|
|
(pt 408 64)
|
|
)
|
|
(connector
|
|
(text "N[1]" (rect 368 96 388 113)(font "Intel Clear" ))
|
|
(pt 390 112)
|
|
(pt 408 112)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 112 388 129)(font "Intel Clear" ))
|
|
(pt 390 128)
|
|
(pt 408 128)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 176 388 193)(font "Intel Clear" ))
|
|
(pt 390 192)
|
|
(pt 408 192)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 240 388 257)(font "Intel Clear" ))
|
|
(pt 390 256)
|
|
(pt 408 256)
|
|
)
|
|
(connector
|
|
(text "N[2]" (rect 368 160 388 177)(font "Intel Clear" ))
|
|
(pt 390 176)
|
|
(pt 408 176)
|
|
)
|
|
(connector
|
|
(text "N[3]" (rect 368 224 388 241)(font "Intel Clear" ))
|
|
(pt 390 240)
|
|
(pt 408 240)
|
|
)
|
|
(connector
|
|
(text "N[4]" (rect 368 288 388 305)(font "Intel Clear" ))
|
|
(pt 390 304)
|
|
(pt 408 304)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 304 388 321)(font "Intel Clear" ))
|
|
(pt 390 320)
|
|
(pt 408 320)
|
|
)
|
|
(connector
|
|
(text "N[5]" (rect 368 352 388 369)(font "Intel Clear" ))
|
|
(pt 390 368)
|
|
(pt 408 368)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 368 388 385)(font "Intel Clear" ))
|
|
(pt 390 384)
|
|
(pt 408 384)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 432 388 449)(font "Intel Clear" ))
|
|
(pt 390 448)
|
|
(pt 408 448)
|
|
)
|
|
(connector
|
|
(text "N[6]" (rect 368 416 388 433)(font "Intel Clear" ))
|
|
(pt 390 432)
|
|
(pt 408 432)
|
|
)
|
|
(connector
|
|
(pt 512 24)
|
|
(pt 512 56)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 512 56)
|
|
(pt 512 120)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 512 120)
|
|
(pt 512 184)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 512 184)
|
|
(pt 512 248)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 512 312)
|
|
(pt 512 376)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "T[0]" (rect 482 40 500 57)(font "Intel Clear" ))
|
|
(pt 472 56)
|
|
(pt 512 56)
|
|
)
|
|
(connector
|
|
(text "T[1]" (rect 482 104 500 121)(font "Intel Clear" ))
|
|
(pt 472 120)
|
|
(pt 512 120)
|
|
)
|
|
(connector
|
|
(text "T[2]" (rect 482 168 500 185)(font "Intel Clear" ))
|
|
(pt 472 184)
|
|
(pt 512 184)
|
|
)
|
|
(connector
|
|
(text "T[3]" (rect 482 232 500 249)(font "Intel Clear" ))
|
|
(pt 472 248)
|
|
(pt 512 248)
|
|
)
|
|
(connector
|
|
(text "T[4]" (rect 482 296 500 313)(font "Intel Clear" ))
|
|
(pt 472 312)
|
|
(pt 512 312)
|
|
)
|
|
(connector
|
|
(text "T[5]" (rect 482 360 500 377)(font "Intel Clear" ))
|
|
(pt 472 376)
|
|
(pt 512 376)
|
|
)
|
|
(connector
|
|
(text "T[6]" (rect 482 424 500 441)(font "Intel Clear" ))
|
|
(pt 472 440)
|
|
(pt 512 440)
|
|
)
|
|
(connector
|
|
(pt 512 376)
|
|
(pt 512 440)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 496 388 513)(font "Intel Clear" ))
|
|
(pt 390 512)
|
|
(pt 408 512)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 368 480 388 497)(font "Intel Clear" ))
|
|
(pt 390 496)
|
|
(pt 408 496)
|
|
)
|
|
(connector
|
|
(pt 512 440)
|
|
(pt 512 504)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 512 504)
|
|
(pt 512 520)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "T[7]" (rect 482 488 500 505)(font "Intel Clear" ))
|
|
(pt 472 504)
|
|
(pt 512 504)
|
|
)
|
|
(connector
|
|
(pt 1128 232)
|
|
(pt 1152 232)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "1" (rect 120 315 137 320)(font "Intel Clear" )(vertical))
|
|
(pt 136 304)
|
|
(pt 136 320)
|
|
)
|
|
(connector
|
|
(text "0" (rect 168 273 185 278)(font "Intel Clear" )(vertical))
|
|
(pt 184 256)
|
|
(pt 184 280)
|
|
)
|
|
(connector
|
|
(text "N[7]" (rect 824 205 841 225)(font "Intel Clear" )(vertical))
|
|
(pt 840 208)
|
|
(pt 840 232)
|
|
)
|
|
(connector
|
|
(text "0,0,0,0,0,0,0,0" (rect 682 136 745 153)(font "Intel Clear" ))
|
|
(pt 784 152)
|
|
(pt 672 152)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "0,0,0,0,0,0,0,1" (rect 682 168 745 185)(font "Intel Clear" ))
|
|
(pt 672 184)
|
|
(pt 784 184)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 896 168)
|
|
(pt 912 168)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 912 168)
|
|
(pt 912 208)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 912 208)
|
|
(pt 968 208)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "T[7..0]" (rect 522 256 551 273)(font "Intel Clear" ))
|
|
(pt 856 272)
|
|
(pt 512 272)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 856 272)
|
|
(pt 856 256)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 512 248)
|
|
(pt 512 272)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 512 272)
|
|
(pt 512 312)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(pt 856 256)
|
|
(pt 968 256)
|
|
(bus)
|
|
)
|
|
(connector
|
|
(text "1" (rect 954 152 959 169)(font "Intel Clear" ))
|
|
(pt 968 168)
|
|
(pt 944 168)
|
|
)
|
|
(junction (pt 512 56))
|
|
(junction (pt 512 120))
|
|
(junction (pt 512 184))
|
|
(junction (pt 512 248))
|
|
(junction (pt 512 312))
|
|
(junction (pt 512 376))
|
|
(junction (pt 512 440))
|
|
(junction (pt 512 272))
|
|
(junction (pt 512 504))
|