#! /opt/homebrew/Cellar/icarus-verilog/13.0/bin/vvp :ivl_version "13.0 (stable)" "(v13_0)"; :ivl_delay_selection "TYPICAL"; :vpi_time_precision - 12; :vpi_module "/opt/homebrew/Cellar/icarus-verilog/13.0/lib/ivl/system.vpi"; :vpi_module "/opt/homebrew/Cellar/icarus-verilog/13.0/lib/ivl/vhdl_sys.vpi"; :vpi_module "/opt/homebrew/Cellar/icarus-verilog/13.0/lib/ivl/vhdl_textio.vpi"; :vpi_module "/opt/homebrew/Cellar/icarus-verilog/13.0/lib/ivl/v2005_math.vpi"; :vpi_module "/opt/homebrew/Cellar/icarus-verilog/13.0/lib/ivl/va_math.vpi"; :vpi_module "/opt/homebrew/Cellar/icarus-verilog/13.0/lib/ivl/v2009.vpi"; S_0x100d39790 .scope package, "$unit" "$unit" 2 1; .timescale 0 0; S_0x100d3a3f0 .scope module, "tb" "tb" 3 3; .timescale -9 -12; P_0x8990fbe80 .param/l "ACC_WIDTH" 0 3 9, +C4<00000000000000000000000000100000>; P_0x8990fbec0 .param/l "DATA_WIDTH" 0 3 5, +C4<00000000000000000000000000001000>; P_0x8990fbf00 .param/l "N_INPUTS" 0 3 6, +C4<00000000000000000000000000100000>; P_0x8990fbf40 .param/l "N_NEURONS" 0 3 7, +C4<00000000000000000000000000000100>; P_0x8990fbf80 .param/l "PARALLEL" 0 3 8, +C4<00000000000000000000000000100000>; v0x8991b86e0_0 .var/s "bias_bus", 31 0; v0x8991b8780_0 .net "busy", 0 0, L_0x89913c500; 1 drivers v0x8991b8820_0 .var "clk", 0 0; v0x8991b88c0_0 .net "done", 0 0, L_0x89913c460; 1 drivers v0x8991b8960_0 .var/i "errors", 31 0; v0x8991b8a00_0 .var/i "expected", 31 0; v0x8991b8aa0_0 .var/i "i", 31 0; v0x8991b8b40_0 .var "rst", 0 0; v0x8991b8be0_0 .var "start", 0 0; v0x8991b8c80_0 .var/s "weights_bus", 1023 0; v0x8991b8d20_0 .var/s "x_bus", 255 0; v0x8991b8dc0_0 .net/s "y_bus", 31 0, L_0x8991ce120; 1 drivers S_0x100d3aa50 .scope module, "dut" "layer" 3 38, 4 1 0, S_0x100d3a3f0; .timescale 0 0; .port_info 0 /INPUT 1 "clk"; .port_info 1 /INPUT 1 "rst"; .port_info 2 /INPUT 1 "start"; .port_info 3 /INPUT 256 "x_bus"; .port_info 4 /INPUT 1024 "weights_bus"; .port_info 5 /INPUT 32 "bias_bus"; .port_info 6 /OUTPUT 32 "y_bus"; .port_info 7 /OUTPUT 1 "busy"; .port_info 8 /OUTPUT 1 "done"; P_0x8990fbd40 .param/l "ACC_WIDTH" 0 4 6, +C4<00000000000000000000000000100000>; P_0x8990fbd80 .param/l "DATA_WIDTH" 0 4 2, +C4<00000000000000000000000000001000>; P_0x8990fbdc0 .param/l "N_INPUTS" 0 4 3, +C4<00000000000000000000000000100000>; P_0x8990fbe00 .param/l "N_NEURONS" 0 4 4, +C4<00000000000000000000000000000100>; P_0x8990fbe40 .param/l "PARALLEL" 0 4 5, +C4<00000000000000000000000000100000>; v0x8991b8000_0 .net/s "bias_bus", 31 0, v0x8991b86e0_0; 1 drivers v0x8991b80a0_0 .net "busy", 0 0, L_0x89913c500; alias, 1 drivers v0x8991b8140_0 .net "clk", 0 0, v0x8991b8820_0; 1 drivers v0x8991b81e0_0 .net "done", 0 0, L_0x89913c460; alias, 1 drivers v0x8991b8280_0 .net "neuron_busy", 3 0, L_0x8991ce1c0; 1 drivers v0x8991b8320_0 .net "neuron_done", 3 0, L_0x8991ce260; 1 drivers v0x8991b83c0_0 .net "rst", 0 0, v0x8991b8b40_0; 1 drivers v0x8991b8460_0 .net "start", 0 0, v0x8991b8be0_0; 1 drivers v0x8991b8500_0 .net/s "weights_bus", 1023 0, v0x8991b8c80_0; 1 drivers v0x8991b85a0_0 .net/s "x_bus", 255 0, v0x8991b8d20_0; 1 drivers v0x8991b8640_0 .net/s "y_bus", 31 0, L_0x8991ce120; alias, 1 drivers L_0x898e43980 .part v0x8991b8c80_0, 0, 256; L_0x898e43a20 .part v0x8991b86e0_0, 0, 8; L_0x898e50d20 .part v0x8991b8c80_0, 256, 256; L_0x898e50dc0 .part v0x8991b86e0_0, 8, 8; L_0x898e62120 .part v0x8991b8c80_0, 512, 256; L_0x898e621c0 .part v0x8991b86e0_0, 16, 8; L_0x898e6f520 .part v0x8991b8c80_0, 768, 256; L_0x898e6f5c0 .part v0x8991b86e0_0, 24, 8; L_0x8991ce120 .concat8 [ 8 8 8 8], v0x899181f40_0, v0x89918ff20_0, v0x8991a5f40_0, v0x8991b7f20_0; L_0x8991ce1c0 .concat8 [ 1 1 1 1], v0x899181860_0, v0x89918f840_0, v0x8991a5860_0, v0x8991b7840_0; L_0x8991ce260 .concat8 [ 1 1 1 1], v0x8991819a0_0, v0x89918f980_0, v0x8991a59a0_0, v0x8991b7980_0; L_0x89913c500 .reduce/or L_0x8991ce1c0; L_0x89913c460 .reduce/and L_0x8991ce260; S_0x100d33d60 .scope generate, "GEN_NEURON[0]" "GEN_NEURON[0]" 4 34, 4 34 0, S_0x100d3aa50; .timescale 0 0; P_0x89906ba00 .param/l "n" 1 4 34, +C4<00>; S_0x100d33ee0 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0x100d33d60; .timescale 0 0; .port_info 0 /INPUT 1 "clk"; .port_info 1 /INPUT 1 "rst"; .port_info 2 /INPUT 1 "start"; .port_info 3 /INPUT 256 "x_bus"; .port_info 4 /INPUT 256 "w_bus"; .port_info 5 /INPUT 8 "bias"; .port_info 6 /OUTPUT 8 "y"; .port_info 7 /OUTPUT 1 "busy"; .port_info 8 /OUTPUT 1 "done"; P_0x100d2eb10 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>; P_0x100d2eb50 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>; P_0x100d2eb90 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000000001>; P_0x100d2ebd0 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000001>; P_0x100d2ec10 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000000100000>; P_0x100d2ec50 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000100000>; v0x899180d20_0 .net *"_ivl_0", 31 0, L_0x8991b8e60; 1 drivers v0x899180dc0_0 .net *"_ivl_11", 31 0, L_0x8991b8fa0; 1 drivers v0x899180e60_0 .net *"_ivl_14", 31 0, L_0x8991b9040; 1 drivers L_0x8988540e8 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899180f00_0 .net *"_ivl_17", 30 0, L_0x8988540e8; 1 drivers L_0x898854130 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x899180fa0_0 .net/2u *"_ivl_18", 31 0, L_0x898854130; 1 drivers v0x899181040_0 .net *"_ivl_21", 31 0, L_0x8991b90e0; 1 drivers L_0x898854178 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x8991810e0_0 .net/2u *"_ivl_22", 31 0, L_0x898854178; 1 drivers v0x899181180_0 .net *"_ivl_25", 31 0, L_0x8991b9180; 1 drivers v0x899181220_0 .net *"_ivl_29", 0 0, L_0x898e43840; 1 drivers L_0x898854010 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991812c0_0 .net *"_ivl_3", 30 0, L_0x898854010; 1 drivers v0x899181360_0 .net *"_ivl_31", 23 0, L_0x898e438e0; 1 drivers L_0x898854058 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x899181400_0 .net/2u *"_ivl_4", 31 0, L_0x898854058; 1 drivers v0x8991814a0_0 .net *"_ivl_7", 31 0, L_0x8991b8f00; 1 drivers L_0x8988540a0 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x899181540_0 .net/2u *"_ivl_8", 31 0, L_0x8988540a0; 1 drivers v0x8991815e0_0 .var/s "acc", 31 0; v0x899181680_0 .net/s "acc_next", 31 0, L_0x898c96080; 1 drivers v0x899181720_0 .net/s "bias", 7 0, L_0x898e43a20; 1 drivers v0x8991817c0_0 .net/s "bias_ext", 31 0, L_0x8991be260; 1 drivers v0x899181860_0 .var "busy", 0 0; v0x899181900_0 .net "clk", 0 0, v0x8991b8820_0; alias, 1 drivers v0x8991819a0_0 .var "done", 0 0; v0x899181a40_0 .net/s "final_acc", 31 0, L_0x898c96120; 1 drivers v0x899181ae0_0 .var "group_index", 0 0; v0x899181b80_0 .net "rst", 0 0, v0x8991b8b40_0; alias, 1 drivers v0x899181c20_0 .net "start", 0 0, v0x8991b8be0_0; alias, 1 drivers v0x899181cc0_0 .net/s "w_bus", 255 0, L_0x898e43980; 1 drivers v0x899181d60_0 .net/s "w_group", 255 0, L_0x898dda6c0; 1 drivers v0x899181e00_0 .net/s "x_bus", 255 0, v0x8991b8d20_0; alias, 1 drivers v0x899181ea0_0 .net/s "x_group", 255 0, L_0x898dda620; 1 drivers v0x899181f40_0 .var/s "y", 7 0; E_0x898dc7f00 .event posedge, v0x899181900_0; L_0x8991b8e60 .concat [ 1 31 0 0], v0x899181ae0_0, L_0x898854010; L_0x8991b8f00 .arith/mult 32, L_0x8991b8e60, L_0x898854058; L_0x8991b8fa0 .arith/mult 32, L_0x8991b8f00, L_0x8988540a0; L_0x898dda620 .part/v v0x8991b8d20_0, L_0x8991b8fa0, 256; L_0x8991b9040 .concat [ 1 31 0 0], v0x899181ae0_0, L_0x8988540e8; L_0x8991b90e0 .arith/mult 32, L_0x8991b9040, L_0x898854130; L_0x8991b9180 .arith/mult 32, L_0x8991b90e0, L_0x898854178; L_0x898dda6c0 .part/v L_0x898e43980, L_0x8991b9180, 256; L_0x898e43840 .part L_0x898e43a20, 7, 1; L_0x898e438e0 .repeat 24, 24, L_0x898e43840; L_0x8991be260 .concat [ 8 24 0 0], L_0x898e43a20, L_0x898e438e0; L_0x898c96120 .arith/sum 32, L_0x898c96080, L_0x8991be260; S_0x100d2ec90 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0x100d33ee0; .timescale 0 0; .port_info 0 /INPUT 256 "x_bus"; .port_info 1 /INPUT 256 "w_bus"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x100d3abd0 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>; P_0x100d3ac10 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>; P_0x100d3ac50 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000100000>; v0x8991808c0_0 .net/s "acc_in", 31 0, v0x8991815e0_0; 1 drivers v0x899180960_0 .net/s "acc_out", 31 0, L_0x898c96080; alias, 1 drivers v0x899180a00_0 .var/i "j", 31 0; v0x899180aa0 .array "products", 31 0; v0x899180aa0_0 .net/s v0x899180aa0 0, 31 0, L_0x898c94aa0; 1 drivers v0x899180aa0_1 .net/s v0x899180aa0 1, 31 0, L_0x898c94dc0; 1 drivers v0x899180aa0_2 .net/s v0x899180aa0 2, 31 0, L_0x898c94e60; 1 drivers v0x899180aa0_3 .net/s v0x899180aa0 3, 31 0, L_0x898c94f00; 1 drivers v0x899180aa0_4 .net/s v0x899180aa0 4, 31 0, L_0x898c94d20; 1 drivers v0x899180aa0_5 .net/s v0x899180aa0 5, 31 0, L_0x898c94fa0; 1 drivers v0x899180aa0_6 .net/s v0x899180aa0 6, 31 0, L_0x898c95040; 1 drivers v0x899180aa0_7 .net/s v0x899180aa0 7, 31 0, L_0x898c950e0; 1 drivers v0x899180aa0_8 .net/s v0x899180aa0 8, 31 0, L_0x898c95180; 1 drivers v0x899180aa0_9 .net/s v0x899180aa0 9, 31 0, L_0x898c95220; 1 drivers v0x899180aa0_10 .net/s v0x899180aa0 10, 31 0, L_0x898c952c0; 1 drivers v0x899180aa0_11 .net/s v0x899180aa0 11, 31 0, L_0x898c95360; 1 drivers v0x899180aa0_12 .net/s v0x899180aa0 12, 31 0, L_0x898c95400; 1 drivers v0x899180aa0_13 .net/s v0x899180aa0 13, 31 0, L_0x898c954a0; 1 drivers v0x899180aa0_14 .net/s v0x899180aa0 14, 31 0, L_0x898c95540; 1 drivers v0x899180aa0_15 .net/s v0x899180aa0 15, 31 0, L_0x898c955e0; 1 drivers v0x899180aa0_16 .net/s v0x899180aa0 16, 31 0, L_0x898c95680; 1 drivers v0x899180aa0_17 .net/s v0x899180aa0 17, 31 0, L_0x898c95720; 1 drivers v0x899180aa0_18 .net/s v0x899180aa0 18, 31 0, L_0x898c957c0; 1 drivers v0x899180aa0_19 .net/s v0x899180aa0 19, 31 0, L_0x898c95860; 1 drivers v0x899180aa0_20 .net/s v0x899180aa0 20, 31 0, L_0x898c95900; 1 drivers v0x899180aa0_21 .net/s v0x899180aa0 21, 31 0, L_0x898c959a0; 1 drivers v0x899180aa0_22 .net/s v0x899180aa0 22, 31 0, L_0x898c95a40; 1 drivers v0x899180aa0_23 .net/s v0x899180aa0 23, 31 0, L_0x898c95ae0; 1 drivers v0x899180aa0_24 .net/s v0x899180aa0 24, 31 0, L_0x898c95b80; 1 drivers v0x899180aa0_25 .net/s v0x899180aa0 25, 31 0, L_0x898c95c20; 1 drivers v0x899180aa0_26 .net/s v0x899180aa0 26, 31 0, L_0x898c95cc0; 1 drivers v0x899180aa0_27 .net/s v0x899180aa0 27, 31 0, L_0x898c95d60; 1 drivers v0x899180aa0_28 .net/s v0x899180aa0 28, 31 0, L_0x898c95e00; 1 drivers v0x899180aa0_29 .net/s v0x899180aa0 29, 31 0, L_0x898c95ea0; 1 drivers v0x899180aa0_30 .net/s v0x899180aa0 30, 31 0, L_0x898c95f40; 1 drivers v0x899180aa0_31 .net/s v0x899180aa0 31, 31 0, L_0x898c95fe0; 1 drivers v0x899180b40_0 .var/s "sum", 31 0; v0x899180be0_0 .net/s "w_bus", 255 0, L_0x898dda6c0; alias, 1 drivers v0x899180c80_0 .net/s "x_bus", 255 0, L_0x898dda620; alias, 1 drivers E_0x898dc7f40/0 .event anyedge, v0x899180b40_0, v0x899168320_0, v0x899168960_0, v0x899168fa0_0; E_0x898dc7f40/1 .event anyedge, v0x8991695e0_0, v0x899169c20_0, v0x89916a260_0, v0x89916a8a0_0; E_0x898dc7f40/2 .event anyedge, v0x89916aee0_0, v0x89916b520_0, v0x89916bb60_0, v0x8991701e0_0; E_0x898dc7f40/3 .event anyedge, v0x899170820_0, v0x899170e60_0, v0x8991714a0_0, v0x899171ae0_0; E_0x898dc7f40/4 .event anyedge, v0x899172120_0, v0x899172760_0, v0x899172da0_0, v0x8991733e0_0; E_0x898dc7f40/5 .event anyedge, v0x899173a20_0, v0x8991740a0_0, v0x8991746e0_0, v0x899174d20_0; E_0x898dc7f40/6 .event anyedge, v0x899175360_0, v0x8991759a0_0, v0x899175fe0_0, v0x899176620_0; E_0x898dc7f40/7 .event anyedge, v0x899176c60_0, v0x8991772a0_0, v0x8991778e0_0, v0x899177f20_0; E_0x898dc7f40/8 .event anyedge, v0x8991805a0_0; E_0x898dc7f40 .event/or E_0x898dc7f40/0, E_0x898dc7f40/1, E_0x898dc7f40/2, E_0x898dc7f40/3, E_0x898dc7f40/4, E_0x898dc7f40/5, E_0x898dc7f40/6, E_0x898dc7f40/7, E_0x898dc7f40/8; L_0x898dda8a0 .part L_0x898dda620, 0, 8; L_0x898dda940 .part L_0x898dda6c0, 0, 8; L_0x898ddab20 .part L_0x898dda620, 8, 8; L_0x898ddabc0 .part L_0x898dda6c0, 8, 8; L_0x898ddada0 .part L_0x898dda620, 16, 8; L_0x898ddae40 .part L_0x898dda6c0, 16, 8; L_0x898ddb020 .part L_0x898dda620, 24, 8; L_0x898ddb0c0 .part L_0x898dda6c0, 24, 8; L_0x898ddb2a0 .part L_0x898dda620, 32, 8; L_0x898ddb340 .part L_0x898dda6c0, 32, 8; L_0x898ddb520 .part L_0x898dda620, 40, 8; L_0x898ddb5c0 .part L_0x898dda6c0, 40, 8; L_0x898ddb7a0 .part L_0x898dda620, 48, 8; L_0x898ddb840 .part L_0x898dda6c0, 48, 8; L_0x898ddba20 .part L_0x898dda620, 56, 8; L_0x898ddbac0 .part L_0x898dda6c0, 56, 8; L_0x898ddbca0 .part L_0x898dda620, 64, 8; L_0x898ddbde0 .part L_0x898dda6c0, 64, 8; L_0x898e40000 .part L_0x898dda620, 72, 8; L_0x898e400a0 .part L_0x898dda6c0, 72, 8; L_0x898e40280 .part L_0x898dda620, 80, 8; L_0x898e40320 .part L_0x898dda6c0, 80, 8; L_0x898e40500 .part L_0x898dda620, 88, 8; L_0x898e405a0 .part L_0x898dda6c0, 88, 8; L_0x898e40780 .part L_0x898dda620, 96, 8; L_0x898e40820 .part L_0x898dda6c0, 96, 8; L_0x898e40a00 .part L_0x898dda620, 104, 8; L_0x898e40aa0 .part L_0x898dda6c0, 104, 8; L_0x898e40c80 .part L_0x898dda620, 112, 8; L_0x898e40d20 .part L_0x898dda6c0, 112, 8; L_0x898e40f00 .part L_0x898dda620, 120, 8; L_0x898e40fa0 .part L_0x898dda6c0, 120, 8; L_0x898e41180 .part L_0x898dda620, 128, 8; L_0x898e41220 .part L_0x898dda6c0, 128, 8; L_0x898e41400 .part L_0x898dda620, 136, 8; L_0x898e414a0 .part L_0x898dda6c0, 136, 8; L_0x898e41680 .part L_0x898dda620, 144, 8; L_0x898e41720 .part L_0x898dda6c0, 144, 8; L_0x898e41900 .part L_0x898dda620, 152, 8; L_0x898e419a0 .part L_0x898dda6c0, 152, 8; L_0x898e41b80 .part L_0x898dda620, 160, 8; L_0x898e41c20 .part L_0x898dda6c0, 160, 8; L_0x898e41e00 .part L_0x898dda620, 168, 8; L_0x898e41ea0 .part L_0x898dda6c0, 168, 8; L_0x898e42080 .part L_0x898dda620, 176, 8; L_0x898e42120 .part L_0x898dda6c0, 176, 8; L_0x898e42300 .part L_0x898dda620, 184, 8; L_0x898e423a0 .part L_0x898dda6c0, 184, 8; L_0x898e42580 .part L_0x898dda620, 192, 8; L_0x898e42620 .part L_0x898dda6c0, 192, 8; L_0x898e42800 .part L_0x898dda620, 200, 8; L_0x898e428a0 .part L_0x898dda6c0, 200, 8; L_0x898e42a80 .part L_0x898dda620, 208, 8; L_0x898e42b20 .part L_0x898dda6c0, 208, 8; L_0x898e42d00 .part L_0x898dda620, 216, 8; L_0x898e42da0 .part L_0x898dda6c0, 216, 8; L_0x898e42f80 .part L_0x898dda620, 224, 8; L_0x898e43020 .part L_0x898dda6c0, 224, 8; L_0x898e43200 .part L_0x898dda620, 232, 8; L_0x898e432a0 .part L_0x898dda6c0, 232, 8; L_0x898e43480 .part L_0x898dda620, 240, 8; L_0x898e43520 .part L_0x898dda6c0, 240, 8; L_0x898e43700 .part L_0x898dda620, 248, 8; L_0x898e437a0 .part L_0x898dda6c0, 248, 8; L_0x898c96080 .arith/sum 32, v0x8991815e0_0, v0x899180b40_0; S_0x100d28ca0 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906ba40 .param/l "i" 1 6 17, +C4<00>; S_0x100d28e20 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x100d28ca0; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x100d3a570 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x100d3a5b0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x100d3a5f0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899168000_0 .net/s *"_ivl_0", 15 0, L_0x8991b9220; 1 drivers v0x8991680a0_0 .net/s *"_ivl_2", 15 0, L_0x8991b92c0; 1 drivers v0x899168140_0 .net *"_ivl_7", 0 0, L_0x898dda760; 1 drivers v0x8991681e0_0 .net *"_ivl_9", 15 0, L_0x898dda800; 1 drivers L_0x8988541c0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899168280_0 .net/s "acc_in", 31 0, L_0x8988541c0; 1 drivers v0x899168320_0 .net/s "acc_out", 31 0, L_0x898c94aa0; alias, 1 drivers v0x8991683c0_0 .net/s "product", 15 0, L_0x8991b9360; 1 drivers v0x899168460_0 .net/s "product_ext", 31 0, L_0x8991b9400; 1 drivers v0x899168500_0 .net/s "w", 7 0, L_0x898dda940; 1 drivers v0x8991685a0_0 .net/s "x", 7 0, L_0x898dda8a0; 1 drivers L_0x8991b9220 .extend/s 16, L_0x898dda8a0; L_0x8991b92c0 .extend/s 16, L_0x898dda940; L_0x8991b9360 .arith/mult 16, L_0x8991b9220, L_0x8991b92c0; L_0x898dda760 .part L_0x8991b9360, 15, 1; L_0x898dda800 .repeat 16, 16, L_0x898dda760; L_0x8991b9400 .concat [ 16 16 0 0], L_0x8991b9360, L_0x898dda800; L_0x898c94aa0 .arith/sum 32, L_0x8988541c0, L_0x8991b9400; S_0x100d2b2a0 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906ba80 .param/l "i" 1 6 17, +C4<01>; S_0x100d2b420 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x100d2b2a0; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x100d3e4a0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x100d3e4e0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x100d3e520 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899168640_0 .net/s *"_ivl_0", 15 0, L_0x8991b94a0; 1 drivers v0x8991686e0_0 .net/s *"_ivl_2", 15 0, L_0x8991b9540; 1 drivers v0x899168780_0 .net *"_ivl_7", 0 0, L_0x898dda9e0; 1 drivers v0x899168820_0 .net *"_ivl_9", 15 0, L_0x898ddaa80; 1 drivers L_0x898854208 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991688c0_0 .net/s "acc_in", 31 0, L_0x898854208; 1 drivers v0x899168960_0 .net/s "acc_out", 31 0, L_0x898c94dc0; alias, 1 drivers v0x899168a00_0 .net/s "product", 15 0, L_0x8991b95e0; 1 drivers v0x899168aa0_0 .net/s "product_ext", 31 0, L_0x8991b9680; 1 drivers v0x899168b40_0 .net/s "w", 7 0, L_0x898ddabc0; 1 drivers v0x899168be0_0 .net/s "x", 7 0, L_0x898ddab20; 1 drivers L_0x8991b94a0 .extend/s 16, L_0x898ddab20; L_0x8991b9540 .extend/s 16, L_0x898ddabc0; L_0x8991b95e0 .arith/mult 16, L_0x8991b94a0, L_0x8991b9540; L_0x898dda9e0 .part L_0x8991b95e0, 15, 1; L_0x898ddaa80 .repeat 16, 16, L_0x898dda9e0; L_0x8991b9680 .concat [ 16 16 0 0], L_0x8991b95e0, L_0x898ddaa80; L_0x898c94dc0 .arith/sum 32, L_0x898854208, L_0x8991b9680; S_0x100d329c0 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bac0 .param/l "i" 1 6 17, +C4<010>; S_0x898e0c000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x100d329c0; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x100d3e560 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x100d3e5a0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x100d3e5e0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899168c80_0 .net/s *"_ivl_0", 15 0, L_0x8991b9720; 1 drivers v0x899168d20_0 .net/s *"_ivl_2", 15 0, L_0x8991b97c0; 1 drivers v0x899168dc0_0 .net *"_ivl_7", 0 0, L_0x898ddac60; 1 drivers v0x899168e60_0 .net *"_ivl_9", 15 0, L_0x898ddad00; 1 drivers L_0x898854250 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899168f00_0 .net/s "acc_in", 31 0, L_0x898854250; 1 drivers v0x899168fa0_0 .net/s "acc_out", 31 0, L_0x898c94e60; alias, 1 drivers v0x899169040_0 .net/s "product", 15 0, L_0x8991b9860; 1 drivers v0x8991690e0_0 .net/s "product_ext", 31 0, L_0x8991b9900; 1 drivers v0x899169180_0 .net/s "w", 7 0, L_0x898ddae40; 1 drivers v0x899169220_0 .net/s "x", 7 0, L_0x898ddada0; 1 drivers L_0x8991b9720 .extend/s 16, L_0x898ddada0; L_0x8991b97c0 .extend/s 16, L_0x898ddae40; L_0x8991b9860 .arith/mult 16, L_0x8991b9720, L_0x8991b97c0; L_0x898ddac60 .part L_0x8991b9860, 15, 1; L_0x898ddad00 .repeat 16, 16, L_0x898ddac60; L_0x8991b9900 .concat [ 16 16 0 0], L_0x8991b9860, L_0x898ddad00; L_0x898c94e60 .arith/sum 32, L_0x898854250, L_0x8991b9900; S_0x898e0c180 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bb00 .param/l "i" 1 6 17, +C4<011>; S_0x898e0c300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0c180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x100d39ac0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x100d39b00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x100d39b40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991692c0_0 .net/s *"_ivl_0", 15 0, L_0x8991b99a0; 1 drivers v0x899169360_0 .net/s *"_ivl_2", 15 0, L_0x8991b9a40; 1 drivers v0x899169400_0 .net *"_ivl_7", 0 0, L_0x898ddaee0; 1 drivers v0x8991694a0_0 .net *"_ivl_9", 15 0, L_0x898ddaf80; 1 drivers L_0x898854298 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899169540_0 .net/s "acc_in", 31 0, L_0x898854298; 1 drivers v0x8991695e0_0 .net/s "acc_out", 31 0, L_0x898c94f00; alias, 1 drivers v0x899169680_0 .net/s "product", 15 0, L_0x8991b9ae0; 1 drivers v0x899169720_0 .net/s "product_ext", 31 0, L_0x8991b9b80; 1 drivers v0x8991697c0_0 .net/s "w", 7 0, L_0x898ddb0c0; 1 drivers v0x899169860_0 .net/s "x", 7 0, L_0x898ddb020; 1 drivers L_0x8991b99a0 .extend/s 16, L_0x898ddb020; L_0x8991b9a40 .extend/s 16, L_0x898ddb0c0; L_0x8991b9ae0 .arith/mult 16, L_0x8991b99a0, L_0x8991b9a40; L_0x898ddaee0 .part L_0x8991b9ae0, 15, 1; L_0x898ddaf80 .repeat 16, 16, L_0x898ddaee0; L_0x8991b9b80 .concat [ 16 16 0 0], L_0x8991b9ae0, L_0x898ddaf80; L_0x898c94f00 .arith/sum 32, L_0x898854298, L_0x8991b9b80; S_0x898e0c480 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bb40 .param/l "i" 1 6 17, +C4<0100>; S_0x898e0c600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0c480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x100d39f90 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x100d39fd0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x100d3a010 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899169900_0 .net/s *"_ivl_0", 15 0, L_0x8991b9c20; 1 drivers v0x8991699a0_0 .net/s *"_ivl_2", 15 0, L_0x8991b9cc0; 1 drivers v0x899169a40_0 .net *"_ivl_7", 0 0, L_0x898ddb160; 1 drivers v0x899169ae0_0 .net *"_ivl_9", 15 0, L_0x898ddb200; 1 drivers L_0x8988542e0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899169b80_0 .net/s "acc_in", 31 0, L_0x8988542e0; 1 drivers v0x899169c20_0 .net/s "acc_out", 31 0, L_0x898c94d20; alias, 1 drivers v0x899169cc0_0 .net/s "product", 15 0, L_0x8991b9d60; 1 drivers v0x899169d60_0 .net/s "product_ext", 31 0, L_0x8991b9e00; 1 drivers v0x899169e00_0 .net/s "w", 7 0, L_0x898ddb340; 1 drivers v0x899169ea0_0 .net/s "x", 7 0, L_0x898ddb2a0; 1 drivers L_0x8991b9c20 .extend/s 16, L_0x898ddb2a0; L_0x8991b9cc0 .extend/s 16, L_0x898ddb340; L_0x8991b9d60 .arith/mult 16, L_0x8991b9c20, L_0x8991b9cc0; L_0x898ddb160 .part L_0x8991b9d60, 15, 1; L_0x898ddb200 .repeat 16, 16, L_0x898ddb160; L_0x8991b9e00 .concat [ 16 16 0 0], L_0x8991b9d60, L_0x898ddb200; L_0x898c94d20 .arith/sum 32, L_0x8988542e0, L_0x8991b9e00; S_0x898e0c780 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bb80 .param/l "i" 1 6 17, +C4<0101>; S_0x898e0c900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0c780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c000 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c040 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c080 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899169f40_0 .net/s *"_ivl_0", 15 0, L_0x8991b9ea0; 1 drivers v0x899169fe0_0 .net/s *"_ivl_2", 15 0, L_0x8991b9f40; 1 drivers v0x89916a080_0 .net *"_ivl_7", 0 0, L_0x898ddb3e0; 1 drivers v0x89916a120_0 .net *"_ivl_9", 15 0, L_0x898ddb480; 1 drivers L_0x898854328 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89916a1c0_0 .net/s "acc_in", 31 0, L_0x898854328; 1 drivers v0x89916a260_0 .net/s "acc_out", 31 0, L_0x898c94fa0; alias, 1 drivers v0x89916a300_0 .net/s "product", 15 0, L_0x8991b9fe0; 1 drivers v0x89916a3a0_0 .net/s "product_ext", 31 0, L_0x8991ba080; 1 drivers v0x89916a440_0 .net/s "w", 7 0, L_0x898ddb5c0; 1 drivers v0x89916a4e0_0 .net/s "x", 7 0, L_0x898ddb520; 1 drivers L_0x8991b9ea0 .extend/s 16, L_0x898ddb520; L_0x8991b9f40 .extend/s 16, L_0x898ddb5c0; L_0x8991b9fe0 .arith/mult 16, L_0x8991b9ea0, L_0x8991b9f40; L_0x898ddb3e0 .part L_0x8991b9fe0, 15, 1; L_0x898ddb480 .repeat 16, 16, L_0x898ddb3e0; L_0x8991ba080 .concat [ 16 16 0 0], L_0x8991b9fe0, L_0x898ddb480; L_0x898c94fa0 .arith/sum 32, L_0x898854328, L_0x8991ba080; S_0x898e0ca80 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bbc0 .param/l "i" 1 6 17, +C4<0110>; S_0x898e0cc00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0ca80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c0c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c100 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c140 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89916a580_0 .net/s *"_ivl_0", 15 0, L_0x8991ba120; 1 drivers v0x89916a620_0 .net/s *"_ivl_2", 15 0, L_0x8991ba1c0; 1 drivers v0x89916a6c0_0 .net *"_ivl_7", 0 0, L_0x898ddb660; 1 drivers v0x89916a760_0 .net *"_ivl_9", 15 0, L_0x898ddb700; 1 drivers L_0x898854370 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89916a800_0 .net/s "acc_in", 31 0, L_0x898854370; 1 drivers v0x89916a8a0_0 .net/s "acc_out", 31 0, L_0x898c95040; alias, 1 drivers v0x89916a940_0 .net/s "product", 15 0, L_0x8991ba260; 1 drivers v0x89916a9e0_0 .net/s "product_ext", 31 0, L_0x8991ba300; 1 drivers v0x89916aa80_0 .net/s "w", 7 0, L_0x898ddb840; 1 drivers v0x89916ab20_0 .net/s "x", 7 0, L_0x898ddb7a0; 1 drivers L_0x8991ba120 .extend/s 16, L_0x898ddb7a0; L_0x8991ba1c0 .extend/s 16, L_0x898ddb840; L_0x8991ba260 .arith/mult 16, L_0x8991ba120, L_0x8991ba1c0; L_0x898ddb660 .part L_0x8991ba260, 15, 1; L_0x898ddb700 .repeat 16, 16, L_0x898ddb660; L_0x8991ba300 .concat [ 16 16 0 0], L_0x8991ba260, L_0x898ddb700; L_0x898c95040 .arith/sum 32, L_0x898854370, L_0x8991ba300; S_0x898e0cd80 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bc00 .param/l "i" 1 6 17, +C4<0111>; S_0x898e0cf00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0cd80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c180 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c1c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c200 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89916abc0_0 .net/s *"_ivl_0", 15 0, L_0x8991ba3a0; 1 drivers v0x89916ac60_0 .net/s *"_ivl_2", 15 0, L_0x8991ba440; 1 drivers v0x89916ad00_0 .net *"_ivl_7", 0 0, L_0x898ddb8e0; 1 drivers v0x89916ada0_0 .net *"_ivl_9", 15 0, L_0x898ddb980; 1 drivers L_0x8988543b8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89916ae40_0 .net/s "acc_in", 31 0, L_0x8988543b8; 1 drivers v0x89916aee0_0 .net/s "acc_out", 31 0, L_0x898c950e0; alias, 1 drivers v0x89916af80_0 .net/s "product", 15 0, L_0x8991ba4e0; 1 drivers v0x89916b020_0 .net/s "product_ext", 31 0, L_0x8991ba580; 1 drivers v0x89916b0c0_0 .net/s "w", 7 0, L_0x898ddbac0; 1 drivers v0x89916b160_0 .net/s "x", 7 0, L_0x898ddba20; 1 drivers L_0x8991ba3a0 .extend/s 16, L_0x898ddba20; L_0x8991ba440 .extend/s 16, L_0x898ddbac0; L_0x8991ba4e0 .arith/mult 16, L_0x8991ba3a0, L_0x8991ba440; L_0x898ddb8e0 .part L_0x8991ba4e0, 15, 1; L_0x898ddb980 .repeat 16, 16, L_0x898ddb8e0; L_0x8991ba580 .concat [ 16 16 0 0], L_0x8991ba4e0, L_0x898ddb980; L_0x898c950e0 .arith/sum 32, L_0x8988543b8, L_0x8991ba580; S_0x898e0d080 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bc40 .param/l "i" 1 6 17, +C4<01000>; S_0x898e0d200 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0d080; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c240 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c280 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c2c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89916b200_0 .net/s *"_ivl_0", 15 0, L_0x8991ba620; 1 drivers v0x89916b2a0_0 .net/s *"_ivl_2", 15 0, L_0x8991ba6c0; 1 drivers v0x89916b340_0 .net *"_ivl_7", 0 0, L_0x898ddbb60; 1 drivers v0x89916b3e0_0 .net *"_ivl_9", 15 0, L_0x898ddbc00; 1 drivers L_0x898854400 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89916b480_0 .net/s "acc_in", 31 0, L_0x898854400; 1 drivers v0x89916b520_0 .net/s "acc_out", 31 0, L_0x898c95180; alias, 1 drivers v0x89916b5c0_0 .net/s "product", 15 0, L_0x8991ba760; 1 drivers v0x89916b660_0 .net/s "product_ext", 31 0, L_0x8991ba800; 1 drivers v0x89916b700_0 .net/s "w", 7 0, L_0x898ddbde0; 1 drivers v0x89916b7a0_0 .net/s "x", 7 0, L_0x898ddbca0; 1 drivers L_0x8991ba620 .extend/s 16, L_0x898ddbca0; L_0x8991ba6c0 .extend/s 16, L_0x898ddbde0; L_0x8991ba760 .arith/mult 16, L_0x8991ba620, L_0x8991ba6c0; L_0x898ddbb60 .part L_0x8991ba760, 15, 1; L_0x898ddbc00 .repeat 16, 16, L_0x898ddbb60; L_0x8991ba800 .concat [ 16 16 0 0], L_0x8991ba760, L_0x898ddbc00; L_0x898c95180 .arith/sum 32, L_0x898854400, L_0x8991ba800; S_0x898e0d380 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bc80 .param/l "i" 1 6 17, +C4<01001>; S_0x898e0d500 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0d380; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c300 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c340 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c380 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89916b840_0 .net/s *"_ivl_0", 15 0, L_0x8991ba8a0; 1 drivers v0x89916b8e0_0 .net/s *"_ivl_2", 15 0, L_0x8991ba940; 1 drivers v0x89916b980_0 .net *"_ivl_7", 0 0, L_0x898ddbe80; 1 drivers v0x89916ba20_0 .net *"_ivl_9", 15 0, L_0x898ddbf20; 1 drivers L_0x898854448 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89916bac0_0 .net/s "acc_in", 31 0, L_0x898854448; 1 drivers v0x89916bb60_0 .net/s "acc_out", 31 0, L_0x898c95220; alias, 1 drivers v0x89916bc00_0 .net/s "product", 15 0, L_0x8991ba9e0; 1 drivers v0x89916bca0_0 .net/s "product_ext", 31 0, L_0x8991baa80; 1 drivers v0x89916bd40_0 .net/s "w", 7 0, L_0x898e400a0; 1 drivers v0x89916bde0_0 .net/s "x", 7 0, L_0x898e40000; 1 drivers L_0x8991ba8a0 .extend/s 16, L_0x898e40000; L_0x8991ba940 .extend/s 16, L_0x898e400a0; L_0x8991ba9e0 .arith/mult 16, L_0x8991ba8a0, L_0x8991ba940; L_0x898ddbe80 .part L_0x8991ba9e0, 15, 1; L_0x898ddbf20 .repeat 16, 16, L_0x898ddbe80; L_0x8991baa80 .concat [ 16 16 0 0], L_0x8991ba9e0, L_0x898ddbf20; L_0x898c95220 .arith/sum 32, L_0x898854448, L_0x8991baa80; S_0x898e0d680 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bcc0 .param/l "i" 1 6 17, +C4<01010>; S_0x898e0d800 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0d680; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c3c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c400 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c440 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89916be80_0 .net/s *"_ivl_0", 15 0, L_0x8991bab20; 1 drivers v0x89916bf20_0 .net/s *"_ivl_2", 15 0, L_0x8991babc0; 1 drivers v0x899170000_0 .net *"_ivl_7", 0 0, L_0x898e40140; 1 drivers v0x8991700a0_0 .net *"_ivl_9", 15 0, L_0x898e401e0; 1 drivers L_0x898854490 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899170140_0 .net/s "acc_in", 31 0, L_0x898854490; 1 drivers v0x8991701e0_0 .net/s "acc_out", 31 0, L_0x898c952c0; alias, 1 drivers v0x899170280_0 .net/s "product", 15 0, L_0x8991bac60; 1 drivers v0x899170320_0 .net/s "product_ext", 31 0, L_0x8991bad00; 1 drivers v0x8991703c0_0 .net/s "w", 7 0, L_0x898e40320; 1 drivers v0x899170460_0 .net/s "x", 7 0, L_0x898e40280; 1 drivers L_0x8991bab20 .extend/s 16, L_0x898e40280; L_0x8991babc0 .extend/s 16, L_0x898e40320; L_0x8991bac60 .arith/mult 16, L_0x8991bab20, L_0x8991babc0; L_0x898e40140 .part L_0x8991bac60, 15, 1; L_0x898e401e0 .repeat 16, 16, L_0x898e40140; L_0x8991bad00 .concat [ 16 16 0 0], L_0x8991bac60, L_0x898e401e0; L_0x898c952c0 .arith/sum 32, L_0x898854490, L_0x8991bad00; S_0x898e0d980 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bd00 .param/l "i" 1 6 17, +C4<01011>; S_0x898e0db00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0d980; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c480 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c4c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c500 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899170500_0 .net/s *"_ivl_0", 15 0, L_0x8991bada0; 1 drivers v0x8991705a0_0 .net/s *"_ivl_2", 15 0, L_0x8991bae40; 1 drivers v0x899170640_0 .net *"_ivl_7", 0 0, L_0x898e403c0; 1 drivers v0x8991706e0_0 .net *"_ivl_9", 15 0, L_0x898e40460; 1 drivers L_0x8988544d8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899170780_0 .net/s "acc_in", 31 0, L_0x8988544d8; 1 drivers v0x899170820_0 .net/s "acc_out", 31 0, L_0x898c95360; alias, 1 drivers v0x8991708c0_0 .net/s "product", 15 0, L_0x8991baee0; 1 drivers v0x899170960_0 .net/s "product_ext", 31 0, L_0x8991baf80; 1 drivers v0x899170a00_0 .net/s "w", 7 0, L_0x898e405a0; 1 drivers v0x899170aa0_0 .net/s "x", 7 0, L_0x898e40500; 1 drivers L_0x8991bada0 .extend/s 16, L_0x898e40500; L_0x8991bae40 .extend/s 16, L_0x898e405a0; L_0x8991baee0 .arith/mult 16, L_0x8991bada0, L_0x8991bae40; L_0x898e403c0 .part L_0x8991baee0, 15, 1; L_0x898e40460 .repeat 16, 16, L_0x898e403c0; L_0x8991baf80 .concat [ 16 16 0 0], L_0x8991baee0, L_0x898e40460; L_0x898c95360 .arith/sum 32, L_0x8988544d8, L_0x8991baf80; S_0x898e0dc80 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bd40 .param/l "i" 1 6 17, +C4<01100>; S_0x898e0de00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0dc80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c540 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c580 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c5c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899170b40_0 .net/s *"_ivl_0", 15 0, L_0x8991bb020; 1 drivers v0x899170be0_0 .net/s *"_ivl_2", 15 0, L_0x8991bb0c0; 1 drivers v0x899170c80_0 .net *"_ivl_7", 0 0, L_0x898e40640; 1 drivers v0x899170d20_0 .net *"_ivl_9", 15 0, L_0x898e406e0; 1 drivers L_0x898854520 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899170dc0_0 .net/s "acc_in", 31 0, L_0x898854520; 1 drivers v0x899170e60_0 .net/s "acc_out", 31 0, L_0x898c95400; alias, 1 drivers v0x899170f00_0 .net/s "product", 15 0, L_0x8991bb160; 1 drivers v0x899170fa0_0 .net/s "product_ext", 31 0, L_0x8991bb200; 1 drivers v0x899171040_0 .net/s "w", 7 0, L_0x898e40820; 1 drivers v0x8991710e0_0 .net/s "x", 7 0, L_0x898e40780; 1 drivers L_0x8991bb020 .extend/s 16, L_0x898e40780; L_0x8991bb0c0 .extend/s 16, L_0x898e40820; L_0x8991bb160 .arith/mult 16, L_0x8991bb020, L_0x8991bb0c0; L_0x898e40640 .part L_0x8991bb160, 15, 1; L_0x898e406e0 .repeat 16, 16, L_0x898e40640; L_0x8991bb200 .concat [ 16 16 0 0], L_0x8991bb160, L_0x898e406e0; L_0x898c95400 .arith/sum 32, L_0x898854520, L_0x8991bb200; S_0x898e0df80 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bd80 .param/l "i" 1 6 17, +C4<01101>; S_0x898e0e100 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0df80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c600 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c640 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c680 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899171180_0 .net/s *"_ivl_0", 15 0, L_0x8991bb2a0; 1 drivers v0x899171220_0 .net/s *"_ivl_2", 15 0, L_0x8991bb340; 1 drivers v0x8991712c0_0 .net *"_ivl_7", 0 0, L_0x898e408c0; 1 drivers v0x899171360_0 .net *"_ivl_9", 15 0, L_0x898e40960; 1 drivers L_0x898854568 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899171400_0 .net/s "acc_in", 31 0, L_0x898854568; 1 drivers v0x8991714a0_0 .net/s "acc_out", 31 0, L_0x898c954a0; alias, 1 drivers v0x899171540_0 .net/s "product", 15 0, L_0x8991bb3e0; 1 drivers v0x8991715e0_0 .net/s "product_ext", 31 0, L_0x8991bb480; 1 drivers v0x899171680_0 .net/s "w", 7 0, L_0x898e40aa0; 1 drivers v0x899171720_0 .net/s "x", 7 0, L_0x898e40a00; 1 drivers L_0x8991bb2a0 .extend/s 16, L_0x898e40a00; L_0x8991bb340 .extend/s 16, L_0x898e40aa0; L_0x8991bb3e0 .arith/mult 16, L_0x8991bb2a0, L_0x8991bb340; L_0x898e408c0 .part L_0x8991bb3e0, 15, 1; L_0x898e40960 .repeat 16, 16, L_0x898e408c0; L_0x8991bb480 .concat [ 16 16 0 0], L_0x8991bb3e0, L_0x898e40960; L_0x898c954a0 .arith/sum 32, L_0x898854568, L_0x8991bb480; S_0x898e0e280 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bdc0 .param/l "i" 1 6 17, +C4<01110>; S_0x898e0e400 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0e280; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c6c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c700 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c740 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991717c0_0 .net/s *"_ivl_0", 15 0, L_0x8991bb520; 1 drivers v0x899171860_0 .net/s *"_ivl_2", 15 0, L_0x8991bb5c0; 1 drivers v0x899171900_0 .net *"_ivl_7", 0 0, L_0x898e40b40; 1 drivers v0x8991719a0_0 .net *"_ivl_9", 15 0, L_0x898e40be0; 1 drivers L_0x8988545b0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899171a40_0 .net/s "acc_in", 31 0, L_0x8988545b0; 1 drivers v0x899171ae0_0 .net/s "acc_out", 31 0, L_0x898c95540; alias, 1 drivers v0x899171b80_0 .net/s "product", 15 0, L_0x8991bb660; 1 drivers v0x899171c20_0 .net/s "product_ext", 31 0, L_0x8991bb700; 1 drivers v0x899171cc0_0 .net/s "w", 7 0, L_0x898e40d20; 1 drivers v0x899171d60_0 .net/s "x", 7 0, L_0x898e40c80; 1 drivers L_0x8991bb520 .extend/s 16, L_0x898e40c80; L_0x8991bb5c0 .extend/s 16, L_0x898e40d20; L_0x8991bb660 .arith/mult 16, L_0x8991bb520, L_0x8991bb5c0; L_0x898e40b40 .part L_0x8991bb660, 15, 1; L_0x898e40be0 .repeat 16, 16, L_0x898e40b40; L_0x8991bb700 .concat [ 16 16 0 0], L_0x8991bb660, L_0x898e40be0; L_0x898c95540 .arith/sum 32, L_0x8988545b0, L_0x8991bb700; S_0x898e0e580 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906be00 .param/l "i" 1 6 17, +C4<01111>; S_0x898e0e700 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0e580; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c780 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c7c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c800 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899171e00_0 .net/s *"_ivl_0", 15 0, L_0x8991bb7a0; 1 drivers v0x899171ea0_0 .net/s *"_ivl_2", 15 0, L_0x8991bb840; 1 drivers v0x899171f40_0 .net *"_ivl_7", 0 0, L_0x898e40dc0; 1 drivers v0x899171fe0_0 .net *"_ivl_9", 15 0, L_0x898e40e60; 1 drivers L_0x8988545f8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899172080_0 .net/s "acc_in", 31 0, L_0x8988545f8; 1 drivers v0x899172120_0 .net/s "acc_out", 31 0, L_0x898c955e0; alias, 1 drivers v0x8991721c0_0 .net/s "product", 15 0, L_0x8991bb8e0; 1 drivers v0x899172260_0 .net/s "product_ext", 31 0, L_0x8991bb980; 1 drivers v0x899172300_0 .net/s "w", 7 0, L_0x898e40fa0; 1 drivers v0x8991723a0_0 .net/s "x", 7 0, L_0x898e40f00; 1 drivers L_0x8991bb7a0 .extend/s 16, L_0x898e40f00; L_0x8991bb840 .extend/s 16, L_0x898e40fa0; L_0x8991bb8e0 .arith/mult 16, L_0x8991bb7a0, L_0x8991bb840; L_0x898e40dc0 .part L_0x8991bb8e0, 15, 1; L_0x898e40e60 .repeat 16, 16, L_0x898e40dc0; L_0x8991bb980 .concat [ 16 16 0 0], L_0x8991bb8e0, L_0x898e40e60; L_0x898c955e0 .arith/sum 32, L_0x8988545f8, L_0x8991bb980; S_0x898e0e880 .scope generate, "GEN_MAC[16]" "GEN_MAC[16]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906be40 .param/l "i" 1 6 17, +C4<010000>; S_0x898e0ea00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0e880; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c840 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c880 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c8c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899172440_0 .net/s *"_ivl_0", 15 0, L_0x8991bba20; 1 drivers v0x8991724e0_0 .net/s *"_ivl_2", 15 0, L_0x8991bbac0; 1 drivers v0x899172580_0 .net *"_ivl_7", 0 0, L_0x898e41040; 1 drivers v0x899172620_0 .net *"_ivl_9", 15 0, L_0x898e410e0; 1 drivers L_0x898854640 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991726c0_0 .net/s "acc_in", 31 0, L_0x898854640; 1 drivers v0x899172760_0 .net/s "acc_out", 31 0, L_0x898c95680; alias, 1 drivers v0x899172800_0 .net/s "product", 15 0, L_0x8991bbb60; 1 drivers v0x8991728a0_0 .net/s "product_ext", 31 0, L_0x8991bbc00; 1 drivers v0x899172940_0 .net/s "w", 7 0, L_0x898e41220; 1 drivers v0x8991729e0_0 .net/s "x", 7 0, L_0x898e41180; 1 drivers L_0x8991bba20 .extend/s 16, L_0x898e41180; L_0x8991bbac0 .extend/s 16, L_0x898e41220; L_0x8991bbb60 .arith/mult 16, L_0x8991bba20, L_0x8991bbac0; L_0x898e41040 .part L_0x8991bbb60, 15, 1; L_0x898e410e0 .repeat 16, 16, L_0x898e41040; L_0x8991bbc00 .concat [ 16 16 0 0], L_0x8991bbb60, L_0x898e410e0; L_0x898c95680 .arith/sum 32, L_0x898854640, L_0x8991bbc00; S_0x898e0eb80 .scope generate, "GEN_MAC[17]" "GEN_MAC[17]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906be80 .param/l "i" 1 6 17, +C4<010001>; S_0x898e0ed00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0eb80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c900 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916c940 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916c980 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899172a80_0 .net/s *"_ivl_0", 15 0, L_0x8991bbca0; 1 drivers v0x899172b20_0 .net/s *"_ivl_2", 15 0, L_0x8991bbd40; 1 drivers v0x899172bc0_0 .net *"_ivl_7", 0 0, L_0x898e412c0; 1 drivers v0x899172c60_0 .net *"_ivl_9", 15 0, L_0x898e41360; 1 drivers L_0x898854688 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899172d00_0 .net/s "acc_in", 31 0, L_0x898854688; 1 drivers v0x899172da0_0 .net/s "acc_out", 31 0, L_0x898c95720; alias, 1 drivers v0x899172e40_0 .net/s "product", 15 0, L_0x8991bbde0; 1 drivers v0x899172ee0_0 .net/s "product_ext", 31 0, L_0x8991bbe80; 1 drivers v0x899172f80_0 .net/s "w", 7 0, L_0x898e414a0; 1 drivers v0x899173020_0 .net/s "x", 7 0, L_0x898e41400; 1 drivers L_0x8991bbca0 .extend/s 16, L_0x898e41400; L_0x8991bbd40 .extend/s 16, L_0x898e414a0; L_0x8991bbde0 .arith/mult 16, L_0x8991bbca0, L_0x8991bbd40; L_0x898e412c0 .part L_0x8991bbde0, 15, 1; L_0x898e41360 .repeat 16, 16, L_0x898e412c0; L_0x8991bbe80 .concat [ 16 16 0 0], L_0x8991bbde0, L_0x898e41360; L_0x898c95720 .arith/sum 32, L_0x898854688, L_0x8991bbe80; S_0x898e0ee80 .scope generate, "GEN_MAC[18]" "GEN_MAC[18]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bec0 .param/l "i" 1 6 17, +C4<010010>; S_0x898e0f000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0ee80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916c9c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ca00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ca40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991730c0_0 .net/s *"_ivl_0", 15 0, L_0x8991bbf20; 1 drivers v0x899173160_0 .net/s *"_ivl_2", 15 0, L_0x8991bc000; 1 drivers v0x899173200_0 .net *"_ivl_7", 0 0, L_0x898e41540; 1 drivers v0x8991732a0_0 .net *"_ivl_9", 15 0, L_0x898e415e0; 1 drivers L_0x8988546d0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899173340_0 .net/s "acc_in", 31 0, L_0x8988546d0; 1 drivers v0x8991733e0_0 .net/s "acc_out", 31 0, L_0x898c957c0; alias, 1 drivers v0x899173480_0 .net/s "product", 15 0, L_0x8991bc0a0; 1 drivers v0x899173520_0 .net/s "product_ext", 31 0, L_0x8991bc140; 1 drivers v0x8991735c0_0 .net/s "w", 7 0, L_0x898e41720; 1 drivers v0x899173660_0 .net/s "x", 7 0, L_0x898e41680; 1 drivers L_0x8991bbf20 .extend/s 16, L_0x898e41680; L_0x8991bc000 .extend/s 16, L_0x898e41720; L_0x8991bc0a0 .arith/mult 16, L_0x8991bbf20, L_0x8991bc000; L_0x898e41540 .part L_0x8991bc0a0, 15, 1; L_0x898e415e0 .repeat 16, 16, L_0x898e41540; L_0x8991bc140 .concat [ 16 16 0 0], L_0x8991bc0a0, L_0x898e415e0; L_0x898c957c0 .arith/sum 32, L_0x8988546d0, L_0x8991bc140; S_0x898e0f180 .scope generate, "GEN_MAC[19]" "GEN_MAC[19]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bf00 .param/l "i" 1 6 17, +C4<010011>; S_0x898e0f300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0f180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ca80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916cac0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916cb00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899173700_0 .net/s *"_ivl_0", 15 0, L_0x8991bc1e0; 1 drivers v0x8991737a0_0 .net/s *"_ivl_2", 15 0, L_0x8991bc280; 1 drivers v0x899173840_0 .net *"_ivl_7", 0 0, L_0x898e417c0; 1 drivers v0x8991738e0_0 .net *"_ivl_9", 15 0, L_0x898e41860; 1 drivers L_0x898854718 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899173980_0 .net/s "acc_in", 31 0, L_0x898854718; 1 drivers v0x899173a20_0 .net/s "acc_out", 31 0, L_0x898c95860; alias, 1 drivers v0x899173ac0_0 .net/s "product", 15 0, L_0x8991bc320; 1 drivers v0x899173b60_0 .net/s "product_ext", 31 0, L_0x8991bc3c0; 1 drivers v0x899173c00_0 .net/s "w", 7 0, L_0x898e419a0; 1 drivers v0x899173ca0_0 .net/s "x", 7 0, L_0x898e41900; 1 drivers L_0x8991bc1e0 .extend/s 16, L_0x898e41900; L_0x8991bc280 .extend/s 16, L_0x898e419a0; L_0x8991bc320 .arith/mult 16, L_0x8991bc1e0, L_0x8991bc280; L_0x898e417c0 .part L_0x8991bc320, 15, 1; L_0x898e41860 .repeat 16, 16, L_0x898e417c0; L_0x8991bc3c0 .concat [ 16 16 0 0], L_0x8991bc320, L_0x898e41860; L_0x898c95860 .arith/sum 32, L_0x898854718, L_0x8991bc3c0; S_0x898e0f480 .scope generate, "GEN_MAC[20]" "GEN_MAC[20]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bf40 .param/l "i" 1 6 17, +C4<010100>; S_0x898e0f600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0f480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916cb40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916cb80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916cbc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899173d40_0 .net/s *"_ivl_0", 15 0, L_0x8991bc460; 1 drivers v0x899173de0_0 .net/s *"_ivl_2", 15 0, L_0x8991bc500; 1 drivers v0x899173e80_0 .net *"_ivl_7", 0 0, L_0x898e41a40; 1 drivers v0x899173f20_0 .net *"_ivl_9", 15 0, L_0x898e41ae0; 1 drivers L_0x898854760 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899174000_0 .net/s "acc_in", 31 0, L_0x898854760; 1 drivers v0x8991740a0_0 .net/s "acc_out", 31 0, L_0x898c95900; alias, 1 drivers v0x899174140_0 .net/s "product", 15 0, L_0x8991bc5a0; 1 drivers v0x8991741e0_0 .net/s "product_ext", 31 0, L_0x8991bc640; 1 drivers v0x899174280_0 .net/s "w", 7 0, L_0x898e41c20; 1 drivers v0x899174320_0 .net/s "x", 7 0, L_0x898e41b80; 1 drivers L_0x8991bc460 .extend/s 16, L_0x898e41b80; L_0x8991bc500 .extend/s 16, L_0x898e41c20; L_0x8991bc5a0 .arith/mult 16, L_0x8991bc460, L_0x8991bc500; L_0x898e41a40 .part L_0x8991bc5a0, 15, 1; L_0x898e41ae0 .repeat 16, 16, L_0x898e41a40; L_0x8991bc640 .concat [ 16 16 0 0], L_0x8991bc5a0, L_0x898e41ae0; L_0x898c95900 .arith/sum 32, L_0x898854760, L_0x8991bc640; S_0x898e0f780 .scope generate, "GEN_MAC[21]" "GEN_MAC[21]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bf80 .param/l "i" 1 6 17, +C4<010101>; S_0x898e0f900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0f780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916cc00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916cc40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916cc80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991743c0_0 .net/s *"_ivl_0", 15 0, L_0x8991bc6e0; 1 drivers v0x899174460_0 .net/s *"_ivl_2", 15 0, L_0x8991bc780; 1 drivers v0x899174500_0 .net *"_ivl_7", 0 0, L_0x898e41cc0; 1 drivers v0x8991745a0_0 .net *"_ivl_9", 15 0, L_0x898e41d60; 1 drivers L_0x8988547a8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899174640_0 .net/s "acc_in", 31 0, L_0x8988547a8; 1 drivers v0x8991746e0_0 .net/s "acc_out", 31 0, L_0x898c959a0; alias, 1 drivers v0x899174780_0 .net/s "product", 15 0, L_0x8991bc820; 1 drivers v0x899174820_0 .net/s "product_ext", 31 0, L_0x8991bc8c0; 1 drivers v0x8991748c0_0 .net/s "w", 7 0, L_0x898e41ea0; 1 drivers v0x899174960_0 .net/s "x", 7 0, L_0x898e41e00; 1 drivers L_0x8991bc6e0 .extend/s 16, L_0x898e41e00; L_0x8991bc780 .extend/s 16, L_0x898e41ea0; L_0x8991bc820 .arith/mult 16, L_0x8991bc6e0, L_0x8991bc780; L_0x898e41cc0 .part L_0x8991bc820, 15, 1; L_0x898e41d60 .repeat 16, 16, L_0x898e41cc0; L_0x8991bc8c0 .concat [ 16 16 0 0], L_0x8991bc820, L_0x898e41d60; L_0x898c959a0 .arith/sum 32, L_0x8988547a8, L_0x8991bc8c0; S_0x898e0fa80 .scope generate, "GEN_MAC[22]" "GEN_MAC[22]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89906bfc0 .param/l "i" 1 6 17, +C4<010110>; S_0x898e0fc00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0fa80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ccc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916cd00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916cd40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899174a00_0 .net/s *"_ivl_0", 15 0, L_0x8991bc960; 1 drivers v0x899174aa0_0 .net/s *"_ivl_2", 15 0, L_0x8991bca00; 1 drivers v0x899174b40_0 .net *"_ivl_7", 0 0, L_0x898e41f40; 1 drivers v0x899174be0_0 .net *"_ivl_9", 15 0, L_0x898e41fe0; 1 drivers L_0x8988547f0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899174c80_0 .net/s "acc_in", 31 0, L_0x8988547f0; 1 drivers v0x899174d20_0 .net/s "acc_out", 31 0, L_0x898c95a40; alias, 1 drivers v0x899174dc0_0 .net/s "product", 15 0, L_0x8991bcaa0; 1 drivers v0x899174e60_0 .net/s "product_ext", 31 0, L_0x8991bcb40; 1 drivers v0x899174f00_0 .net/s "w", 7 0, L_0x898e42120; 1 drivers v0x899174fa0_0 .net/s "x", 7 0, L_0x898e42080; 1 drivers L_0x8991bc960 .extend/s 16, L_0x898e42080; L_0x8991bca00 .extend/s 16, L_0x898e42120; L_0x8991bcaa0 .arith/mult 16, L_0x8991bc960, L_0x8991bca00; L_0x898e41f40 .part L_0x8991bcaa0, 15, 1; L_0x898e41fe0 .repeat 16, 16, L_0x898e41f40; L_0x8991bcb40 .concat [ 16 16 0 0], L_0x8991bcaa0, L_0x898e41fe0; L_0x898c95a40 .arith/sum 32, L_0x8988547f0, L_0x8991bcb40; S_0x898e0fd80 .scope generate, "GEN_MAC[23]" "GEN_MAC[23]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x899178000 .param/l "i" 1 6 17, +C4<010111>; S_0x898e10000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e0fd80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916cd80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916cdc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ce00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899175040_0 .net/s *"_ivl_0", 15 0, L_0x8991bcbe0; 1 drivers v0x8991750e0_0 .net/s *"_ivl_2", 15 0, L_0x8991bcc80; 1 drivers v0x899175180_0 .net *"_ivl_7", 0 0, L_0x898e421c0; 1 drivers v0x899175220_0 .net *"_ivl_9", 15 0, L_0x898e42260; 1 drivers L_0x898854838 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991752c0_0 .net/s "acc_in", 31 0, L_0x898854838; 1 drivers v0x899175360_0 .net/s "acc_out", 31 0, L_0x898c95ae0; alias, 1 drivers v0x899175400_0 .net/s "product", 15 0, L_0x8991bcd20; 1 drivers v0x8991754a0_0 .net/s "product_ext", 31 0, L_0x8991bcdc0; 1 drivers v0x899175540_0 .net/s "w", 7 0, L_0x898e423a0; 1 drivers v0x8991755e0_0 .net/s "x", 7 0, L_0x898e42300; 1 drivers L_0x8991bcbe0 .extend/s 16, L_0x898e42300; L_0x8991bcc80 .extend/s 16, L_0x898e423a0; L_0x8991bcd20 .arith/mult 16, L_0x8991bcbe0, L_0x8991bcc80; L_0x898e421c0 .part L_0x8991bcd20, 15, 1; L_0x898e42260 .repeat 16, 16, L_0x898e421c0; L_0x8991bcdc0 .concat [ 16 16 0 0], L_0x8991bcd20, L_0x898e42260; L_0x898c95ae0 .arith/sum 32, L_0x898854838, L_0x8991bcdc0; S_0x898e10180 .scope generate, "GEN_MAC[24]" "GEN_MAC[24]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c000 .param/l "i" 1 6 17, +C4<011000>; S_0x898e10300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e10180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ce40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ce80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916cec0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899175680_0 .net/s *"_ivl_0", 15 0, L_0x8991bce60; 1 drivers v0x899175720_0 .net/s *"_ivl_2", 15 0, L_0x8991bcf00; 1 drivers v0x8991757c0_0 .net *"_ivl_7", 0 0, L_0x898e42440; 1 drivers v0x899175860_0 .net *"_ivl_9", 15 0, L_0x898e424e0; 1 drivers L_0x898854880 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899175900_0 .net/s "acc_in", 31 0, L_0x898854880; 1 drivers v0x8991759a0_0 .net/s "acc_out", 31 0, L_0x898c95b80; alias, 1 drivers v0x899175a40_0 .net/s "product", 15 0, L_0x8991bcfa0; 1 drivers v0x899175ae0_0 .net/s "product_ext", 31 0, L_0x8991bd040; 1 drivers v0x899175b80_0 .net/s "w", 7 0, L_0x898e42620; 1 drivers v0x899175c20_0 .net/s "x", 7 0, L_0x898e42580; 1 drivers L_0x8991bce60 .extend/s 16, L_0x898e42580; L_0x8991bcf00 .extend/s 16, L_0x898e42620; L_0x8991bcfa0 .arith/mult 16, L_0x8991bce60, L_0x8991bcf00; L_0x898e42440 .part L_0x8991bcfa0, 15, 1; L_0x898e424e0 .repeat 16, 16, L_0x898e42440; L_0x8991bd040 .concat [ 16 16 0 0], L_0x8991bcfa0, L_0x898e424e0; L_0x898c95b80 .arith/sum 32, L_0x898854880, L_0x8991bd040; S_0x898e10480 .scope generate, "GEN_MAC[25]" "GEN_MAC[25]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c040 .param/l "i" 1 6 17, +C4<011001>; S_0x898e10600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e10480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916cf00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916cf40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916cf80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899175cc0_0 .net/s *"_ivl_0", 15 0, L_0x8991bd0e0; 1 drivers v0x899175d60_0 .net/s *"_ivl_2", 15 0, L_0x8991bd180; 1 drivers v0x899175e00_0 .net *"_ivl_7", 0 0, L_0x898e426c0; 1 drivers v0x899175ea0_0 .net *"_ivl_9", 15 0, L_0x898e42760; 1 drivers L_0x8988548c8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899175f40_0 .net/s "acc_in", 31 0, L_0x8988548c8; 1 drivers v0x899175fe0_0 .net/s "acc_out", 31 0, L_0x898c95c20; alias, 1 drivers v0x899176080_0 .net/s "product", 15 0, L_0x8991bd220; 1 drivers v0x899176120_0 .net/s "product_ext", 31 0, L_0x8991bd2c0; 1 drivers v0x8991761c0_0 .net/s "w", 7 0, L_0x898e428a0; 1 drivers v0x899176260_0 .net/s "x", 7 0, L_0x898e42800; 1 drivers L_0x8991bd0e0 .extend/s 16, L_0x898e42800; L_0x8991bd180 .extend/s 16, L_0x898e428a0; L_0x8991bd220 .arith/mult 16, L_0x8991bd0e0, L_0x8991bd180; L_0x898e426c0 .part L_0x8991bd220, 15, 1; L_0x898e42760 .repeat 16, 16, L_0x898e426c0; L_0x8991bd2c0 .concat [ 16 16 0 0], L_0x8991bd220, L_0x898e42760; L_0x898c95c20 .arith/sum 32, L_0x8988548c8, L_0x8991bd2c0; S_0x898e10780 .scope generate, "GEN_MAC[26]" "GEN_MAC[26]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c080 .param/l "i" 1 6 17, +C4<011010>; S_0x898e10900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e10780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916cfc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d000 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d040 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899176300_0 .net/s *"_ivl_0", 15 0, L_0x8991bd360; 1 drivers v0x8991763a0_0 .net/s *"_ivl_2", 15 0, L_0x8991bd400; 1 drivers v0x899176440_0 .net *"_ivl_7", 0 0, L_0x898e42940; 1 drivers v0x8991764e0_0 .net *"_ivl_9", 15 0, L_0x898e429e0; 1 drivers L_0x898854910 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899176580_0 .net/s "acc_in", 31 0, L_0x898854910; 1 drivers v0x899176620_0 .net/s "acc_out", 31 0, L_0x898c95cc0; alias, 1 drivers v0x8991766c0_0 .net/s "product", 15 0, L_0x8991bd4a0; 1 drivers v0x899176760_0 .net/s "product_ext", 31 0, L_0x8991bd540; 1 drivers v0x899176800_0 .net/s "w", 7 0, L_0x898e42b20; 1 drivers v0x8991768a0_0 .net/s "x", 7 0, L_0x898e42a80; 1 drivers L_0x8991bd360 .extend/s 16, L_0x898e42a80; L_0x8991bd400 .extend/s 16, L_0x898e42b20; L_0x8991bd4a0 .arith/mult 16, L_0x8991bd360, L_0x8991bd400; L_0x898e42940 .part L_0x8991bd4a0, 15, 1; L_0x898e429e0 .repeat 16, 16, L_0x898e42940; L_0x8991bd540 .concat [ 16 16 0 0], L_0x8991bd4a0, L_0x898e429e0; L_0x898c95cc0 .arith/sum 32, L_0x898854910, L_0x8991bd540; S_0x898e10a80 .scope generate, "GEN_MAC[27]" "GEN_MAC[27]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c0c0 .param/l "i" 1 6 17, +C4<011011>; S_0x898e10c00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e10a80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d080 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d0c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d100 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899176940_0 .net/s *"_ivl_0", 15 0, L_0x8991bd5e0; 1 drivers v0x8991769e0_0 .net/s *"_ivl_2", 15 0, L_0x8991bd680; 1 drivers v0x899176a80_0 .net *"_ivl_7", 0 0, L_0x898e42bc0; 1 drivers v0x899176b20_0 .net *"_ivl_9", 15 0, L_0x898e42c60; 1 drivers L_0x898854958 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899176bc0_0 .net/s "acc_in", 31 0, L_0x898854958; 1 drivers v0x899176c60_0 .net/s "acc_out", 31 0, L_0x898c95d60; alias, 1 drivers v0x899176d00_0 .net/s "product", 15 0, L_0x8991bd720; 1 drivers v0x899176da0_0 .net/s "product_ext", 31 0, L_0x8991bd7c0; 1 drivers v0x899176e40_0 .net/s "w", 7 0, L_0x898e42da0; 1 drivers v0x899176ee0_0 .net/s "x", 7 0, L_0x898e42d00; 1 drivers L_0x8991bd5e0 .extend/s 16, L_0x898e42d00; L_0x8991bd680 .extend/s 16, L_0x898e42da0; L_0x8991bd720 .arith/mult 16, L_0x8991bd5e0, L_0x8991bd680; L_0x898e42bc0 .part L_0x8991bd720, 15, 1; L_0x898e42c60 .repeat 16, 16, L_0x898e42bc0; L_0x8991bd7c0 .concat [ 16 16 0 0], L_0x8991bd720, L_0x898e42c60; L_0x898c95d60 .arith/sum 32, L_0x898854958, L_0x8991bd7c0; S_0x898e10d80 .scope generate, "GEN_MAC[28]" "GEN_MAC[28]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c100 .param/l "i" 1 6 17, +C4<011100>; S_0x898e10f00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e10d80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d140 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d180 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d1c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899176f80_0 .net/s *"_ivl_0", 15 0, L_0x8991bd860; 1 drivers v0x899177020_0 .net/s *"_ivl_2", 15 0, L_0x8991bd900; 1 drivers v0x8991770c0_0 .net *"_ivl_7", 0 0, L_0x898e42e40; 1 drivers v0x899177160_0 .net *"_ivl_9", 15 0, L_0x898e42ee0; 1 drivers L_0x8988549a0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899177200_0 .net/s "acc_in", 31 0, L_0x8988549a0; 1 drivers v0x8991772a0_0 .net/s "acc_out", 31 0, L_0x898c95e00; alias, 1 drivers v0x899177340_0 .net/s "product", 15 0, L_0x8991bd9a0; 1 drivers v0x8991773e0_0 .net/s "product_ext", 31 0, L_0x8991bda40; 1 drivers v0x899177480_0 .net/s "w", 7 0, L_0x898e43020; 1 drivers v0x899177520_0 .net/s "x", 7 0, L_0x898e42f80; 1 drivers L_0x8991bd860 .extend/s 16, L_0x898e42f80; L_0x8991bd900 .extend/s 16, L_0x898e43020; L_0x8991bd9a0 .arith/mult 16, L_0x8991bd860, L_0x8991bd900; L_0x898e42e40 .part L_0x8991bd9a0, 15, 1; L_0x898e42ee0 .repeat 16, 16, L_0x898e42e40; L_0x8991bda40 .concat [ 16 16 0 0], L_0x8991bd9a0, L_0x898e42ee0; L_0x898c95e00 .arith/sum 32, L_0x8988549a0, L_0x8991bda40; S_0x898e11080 .scope generate, "GEN_MAC[29]" "GEN_MAC[29]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c140 .param/l "i" 1 6 17, +C4<011101>; S_0x898e11200 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e11080; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d200 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d240 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d280 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991775c0_0 .net/s *"_ivl_0", 15 0, L_0x8991bdae0; 1 drivers v0x899177660_0 .net/s *"_ivl_2", 15 0, L_0x8991bdb80; 1 drivers v0x899177700_0 .net *"_ivl_7", 0 0, L_0x898e430c0; 1 drivers v0x8991777a0_0 .net *"_ivl_9", 15 0, L_0x898e43160; 1 drivers L_0x8988549e8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899177840_0 .net/s "acc_in", 31 0, L_0x8988549e8; 1 drivers v0x8991778e0_0 .net/s "acc_out", 31 0, L_0x898c95ea0; alias, 1 drivers v0x899177980_0 .net/s "product", 15 0, L_0x8991bdc20; 1 drivers v0x899177a20_0 .net/s "product_ext", 31 0, L_0x8991bdcc0; 1 drivers v0x899177ac0_0 .net/s "w", 7 0, L_0x898e432a0; 1 drivers v0x899177b60_0 .net/s "x", 7 0, L_0x898e43200; 1 drivers L_0x8991bdae0 .extend/s 16, L_0x898e43200; L_0x8991bdb80 .extend/s 16, L_0x898e432a0; L_0x8991bdc20 .arith/mult 16, L_0x8991bdae0, L_0x8991bdb80; L_0x898e430c0 .part L_0x8991bdc20, 15, 1; L_0x898e43160 .repeat 16, 16, L_0x898e430c0; L_0x8991bdcc0 .concat [ 16 16 0 0], L_0x8991bdc20, L_0x898e43160; L_0x898c95ea0 .arith/sum 32, L_0x8988549e8, L_0x8991bdcc0; S_0x898e11380 .scope generate, "GEN_MAC[30]" "GEN_MAC[30]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c180 .param/l "i" 1 6 17, +C4<011110>; S_0x898e11500 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e11380; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d2c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d300 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d340 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899177c00_0 .net/s *"_ivl_0", 15 0, L_0x8991bdd60; 1 drivers v0x899177ca0_0 .net/s *"_ivl_2", 15 0, L_0x8991bde00; 1 drivers v0x899177d40_0 .net *"_ivl_7", 0 0, L_0x898e43340; 1 drivers v0x899177de0_0 .net *"_ivl_9", 15 0, L_0x898e433e0; 1 drivers L_0x898854a30 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899177e80_0 .net/s "acc_in", 31 0, L_0x898854a30; 1 drivers v0x899177f20_0 .net/s "acc_out", 31 0, L_0x898c95f40; alias, 1 drivers v0x899180000_0 .net/s "product", 15 0, L_0x8991bdea0; 1 drivers v0x8991800a0_0 .net/s "product_ext", 31 0, L_0x8991bdf40; 1 drivers v0x899180140_0 .net/s "w", 7 0, L_0x898e43520; 1 drivers v0x8991801e0_0 .net/s "x", 7 0, L_0x898e43480; 1 drivers L_0x8991bdd60 .extend/s 16, L_0x898e43480; L_0x8991bde00 .extend/s 16, L_0x898e43520; L_0x8991bdea0 .arith/mult 16, L_0x8991bdd60, L_0x8991bde00; L_0x898e43340 .part L_0x8991bdea0, 15, 1; L_0x898e433e0 .repeat 16, 16, L_0x898e43340; L_0x8991bdf40 .concat [ 16 16 0 0], L_0x8991bdea0, L_0x898e433e0; L_0x898c95f40 .arith/sum 32, L_0x898854a30, L_0x8991bdf40; S_0x898e11680 .scope generate, "GEN_MAC[31]" "GEN_MAC[31]" 6 17, 6 17 0, S_0x100d2ec90; .timescale 0 0; P_0x89917c1c0 .param/l "i" 1 6 17, +C4<011111>; S_0x898e11800 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e11680; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d380 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d3c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d400 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899180280_0 .net/s *"_ivl_0", 15 0, L_0x8991bdfe0; 1 drivers v0x899180320_0 .net/s *"_ivl_2", 15 0, L_0x8991be080; 1 drivers v0x8991803c0_0 .net *"_ivl_7", 0 0, L_0x898e435c0; 1 drivers v0x899180460_0 .net *"_ivl_9", 15 0, L_0x898e43660; 1 drivers L_0x898854a78 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899180500_0 .net/s "acc_in", 31 0, L_0x898854a78; 1 drivers v0x8991805a0_0 .net/s "acc_out", 31 0, L_0x898c95fe0; alias, 1 drivers v0x899180640_0 .net/s "product", 15 0, L_0x8991be120; 1 drivers v0x8991806e0_0 .net/s "product_ext", 31 0, L_0x8991be1c0; 1 drivers v0x899180780_0 .net/s "w", 7 0, L_0x898e437a0; 1 drivers v0x899180820_0 .net/s "x", 7 0, L_0x898e43700; 1 drivers L_0x8991bdfe0 .extend/s 16, L_0x898e43700; L_0x8991be080 .extend/s 16, L_0x898e437a0; L_0x8991be120 .arith/mult 16, L_0x8991bdfe0, L_0x8991be080; L_0x898e435c0 .part L_0x8991be120, 15, 1; L_0x898e43660 .repeat 16, 16, L_0x898e435c0; L_0x8991be1c0 .concat [ 16 16 0 0], L_0x8991be120, L_0x898e43660; L_0x898c95fe0 .arith/sum 32, L_0x898854a78, L_0x8991be1c0; S_0x898e11980 .scope generate, "GEN_NEURON[1]" "GEN_NEURON[1]" 4 34, 4 34 0, S_0x100d3aa50; .timescale 0 0; P_0x89917c200 .param/l "n" 1 4 34, +C4<01>; S_0x898e11b00 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0x898e11980; .timescale 0 0; .port_info 0 /INPUT 1 "clk"; .port_info 1 /INPUT 1 "rst"; .port_info 2 /INPUT 1 "start"; .port_info 3 /INPUT 256 "x_bus"; .port_info 4 /INPUT 256 "w_bus"; .port_info 5 /INPUT 8 "bias"; .port_info 6 /OUTPUT 8 "y"; .port_info 7 /OUTPUT 1 "busy"; .port_info 8 /OUTPUT 1 "done"; P_0x898e11c80 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>; P_0x898e11cc0 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>; P_0x898e11d00 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000000001>; P_0x898e11d40 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000001>; P_0x898e11d80 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000000100000>; P_0x898e11dc0 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000100000>; v0x89918ed00_0 .net *"_ivl_0", 31 0, L_0x8991be300; 1 drivers v0x89918eda0_0 .net *"_ivl_11", 31 0, L_0x8991be440; 1 drivers v0x89918ee40_0 .net *"_ivl_14", 31 0, L_0x8991be4e0; 1 drivers L_0x898854b98 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918eee0_0 .net *"_ivl_17", 30 0, L_0x898854b98; 1 drivers L_0x898854be0 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x89918ef80_0 .net/2u *"_ivl_18", 31 0, L_0x898854be0; 1 drivers v0x89918f020_0 .net *"_ivl_21", 31 0, L_0x8991be580; 1 drivers L_0x898854c28 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x89918f0c0_0 .net/2u *"_ivl_22", 31 0, L_0x898854c28; 1 drivers v0x89918f160_0 .net *"_ivl_25", 31 0, L_0x8991be620; 1 drivers v0x89918f200_0 .net *"_ivl_29", 0 0, L_0x898e50be0; 1 drivers L_0x898854ac0 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918f2a0_0 .net *"_ivl_3", 30 0, L_0x898854ac0; 1 drivers v0x89918f340_0 .net *"_ivl_31", 23 0, L_0x898e50c80; 1 drivers L_0x898854b08 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x89918f3e0_0 .net/2u *"_ivl_4", 31 0, L_0x898854b08; 1 drivers v0x89918f480_0 .net *"_ivl_7", 31 0, L_0x8991be3a0; 1 drivers L_0x898854b50 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x89918f520_0 .net/2u *"_ivl_8", 31 0, L_0x898854b50; 1 drivers v0x89918f5c0_0 .var/s "acc", 31 0; v0x89918f660_0 .net/s "acc_next", 31 0, L_0x898c975c0; 1 drivers v0x89918f700_0 .net/s "bias", 7 0, L_0x898e50dc0; 1 drivers v0x89918f7a0_0 .net/s "bias_ext", 31 0, L_0x8991c3700; 1 drivers v0x89918f840_0 .var "busy", 0 0; v0x89918f8e0_0 .net "clk", 0 0, v0x8991b8820_0; alias, 1 drivers v0x89918f980_0 .var "done", 0 0; v0x89918fa20_0 .net/s "final_acc", 31 0, L_0x898c97660; 1 drivers v0x89918fac0_0 .var "group_index", 0 0; v0x89918fb60_0 .net "rst", 0 0, v0x8991b8b40_0; alias, 1 drivers v0x89918fc00_0 .net "start", 0 0, v0x8991b8be0_0; alias, 1 drivers v0x89918fca0_0 .net/s "w_bus", 255 0, L_0x898e50d20; 1 drivers v0x89918fd40_0 .net/s "w_group", 255 0, L_0x898e43b60; 1 drivers v0x89918fde0_0 .net/s "x_bus", 255 0, v0x8991b8d20_0; alias, 1 drivers v0x89918fe80_0 .net/s "x_group", 255 0, L_0x898e43ac0; 1 drivers v0x89918ff20_0 .var/s "y", 7 0; L_0x8991be300 .concat [ 1 31 0 0], v0x89918fac0_0, L_0x898854ac0; L_0x8991be3a0 .arith/mult 32, L_0x8991be300, L_0x898854b08; L_0x8991be440 .arith/mult 32, L_0x8991be3a0, L_0x898854b50; L_0x898e43ac0 .part/v v0x8991b8d20_0, L_0x8991be440, 256; L_0x8991be4e0 .concat [ 1 31 0 0], v0x89918fac0_0, L_0x898854b98; L_0x8991be580 .arith/mult 32, L_0x8991be4e0, L_0x898854be0; L_0x8991be620 .arith/mult 32, L_0x8991be580, L_0x898854c28; L_0x898e43b60 .part/v L_0x898e50d20, L_0x8991be620, 256; L_0x898e50be0 .part L_0x898e50dc0, 7, 1; L_0x898e50c80 .repeat 24, 24, L_0x898e50be0; L_0x8991c3700 .concat [ 8 24 0 0], L_0x898e50dc0, L_0x898e50c80; L_0x898c97660 .arith/sum 32, L_0x898c975c0, L_0x8991c3700; S_0x898e11e00 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0x898e11b00; .timescale 0 0; .port_info 0 /INPUT 256 "x_bus"; .port_info 1 /INPUT 256 "w_bus"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d440 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>; P_0x89916d480 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>; P_0x89916d4c0 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000100000>; v0x89918e8a0_0 .net/s "acc_in", 31 0, v0x89918f5c0_0; 1 drivers v0x89918e940_0 .net/s "acc_out", 31 0, L_0x898c975c0; alias, 1 drivers v0x89918e9e0_0 .var/i "j", 31 0; v0x89918ea80 .array "products", 31 0; v0x89918ea80_0 .net/s v0x89918ea80 0, 31 0, L_0x898c961c0; 1 drivers v0x89918ea80_1 .net/s v0x89918ea80 1, 31 0, L_0x898c96260; 1 drivers v0x89918ea80_2 .net/s v0x89918ea80 2, 31 0, L_0x898c96300; 1 drivers v0x89918ea80_3 .net/s v0x89918ea80 3, 31 0, L_0x898c963a0; 1 drivers v0x89918ea80_4 .net/s v0x89918ea80 4, 31 0, L_0x898c96440; 1 drivers v0x89918ea80_5 .net/s v0x89918ea80 5, 31 0, L_0x898c964e0; 1 drivers v0x89918ea80_6 .net/s v0x89918ea80 6, 31 0, L_0x898c96580; 1 drivers v0x89918ea80_7 .net/s v0x89918ea80 7, 31 0, L_0x898c96620; 1 drivers v0x89918ea80_8 .net/s v0x89918ea80 8, 31 0, L_0x898c966c0; 1 drivers v0x89918ea80_9 .net/s v0x89918ea80 9, 31 0, L_0x898c96760; 1 drivers v0x89918ea80_10 .net/s v0x89918ea80 10, 31 0, L_0x898c96800; 1 drivers v0x89918ea80_11 .net/s v0x89918ea80 11, 31 0, L_0x898c968a0; 1 drivers v0x89918ea80_12 .net/s v0x89918ea80 12, 31 0, L_0x898c96940; 1 drivers v0x89918ea80_13 .net/s v0x89918ea80 13, 31 0, L_0x898c969e0; 1 drivers v0x89918ea80_14 .net/s v0x89918ea80 14, 31 0, L_0x898c96a80; 1 drivers v0x89918ea80_15 .net/s v0x89918ea80 15, 31 0, L_0x898c96b20; 1 drivers v0x89918ea80_16 .net/s v0x89918ea80 16, 31 0, L_0x898c96bc0; 1 drivers v0x89918ea80_17 .net/s v0x89918ea80 17, 31 0, L_0x898c96c60; 1 drivers v0x89918ea80_18 .net/s v0x89918ea80 18, 31 0, L_0x898c96d00; 1 drivers v0x89918ea80_19 .net/s v0x89918ea80 19, 31 0, L_0x898c96da0; 1 drivers v0x89918ea80_20 .net/s v0x89918ea80 20, 31 0, L_0x898c96e40; 1 drivers v0x89918ea80_21 .net/s v0x89918ea80 21, 31 0, L_0x898c96ee0; 1 drivers v0x89918ea80_22 .net/s v0x89918ea80 22, 31 0, L_0x898c96f80; 1 drivers v0x89918ea80_23 .net/s v0x89918ea80 23, 31 0, L_0x898c97020; 1 drivers v0x89918ea80_24 .net/s v0x89918ea80 24, 31 0, L_0x898c970c0; 1 drivers v0x89918ea80_25 .net/s v0x89918ea80 25, 31 0, L_0x898c97160; 1 drivers v0x89918ea80_26 .net/s v0x89918ea80 26, 31 0, L_0x898c97200; 1 drivers v0x89918ea80_27 .net/s v0x89918ea80 27, 31 0, L_0x898c972a0; 1 drivers v0x89918ea80_28 .net/s v0x89918ea80 28, 31 0, L_0x898c97340; 1 drivers v0x89918ea80_29 .net/s v0x89918ea80 29, 31 0, L_0x898c973e0; 1 drivers v0x89918ea80_30 .net/s v0x89918ea80 30, 31 0, L_0x898c97480; 1 drivers v0x89918ea80_31 .net/s v0x89918ea80 31, 31 0, L_0x898c97520; 1 drivers v0x89918eb20_0 .var/s "sum", 31 0; v0x89918ebc0_0 .net/s "w_bus", 255 0, L_0x898e43b60; alias, 1 drivers v0x89918ec60_0 .net/s "x_bus", 255 0, L_0x898e43ac0; alias, 1 drivers E_0x898e087c0/0 .event anyedge, v0x89918eb20_0, v0x899182300_0, v0x899182940_0, v0x899182f80_0; E_0x898e087c0/1 .event anyedge, v0x8991835c0_0, v0x899183c00_0, v0x899184280_0, v0x8991848c0_0; E_0x898e087c0/2 .event anyedge, v0x899184f00_0, v0x899185540_0, v0x899185b80_0, v0x8991861c0_0; E_0x898e087c0/3 .event anyedge, v0x899186800_0, v0x899186e40_0, v0x899187480_0, v0x899187ac0_0; E_0x898e087c0/4 .event anyedge, v0x899188140_0, v0x899188780_0, v0x899188dc0_0, v0x899189400_0; E_0x898e087c0/5 .event anyedge, v0x899189a40_0, v0x89918a080_0, v0x89918a6c0_0, v0x89918ad00_0; E_0x898e087c0/6 .event anyedge, v0x89918b340_0, v0x89918b980_0, v0x89918c000_0, v0x89918c640_0; E_0x898e087c0/7 .event anyedge, v0x89918cc80_0, v0x89918d2c0_0, v0x89918d900_0, v0x89918df40_0; E_0x898e087c0/8 .event anyedge, v0x89918e580_0; E_0x898e087c0 .event/or E_0x898e087c0/0, E_0x898e087c0/1, E_0x898e087c0/2, E_0x898e087c0/3, E_0x898e087c0/4, E_0x898e087c0/5, E_0x898e087c0/6, E_0x898e087c0/7, E_0x898e087c0/8; L_0x898e43d40 .part L_0x898e43ac0, 0, 8; L_0x898e43de0 .part L_0x898e43b60, 0, 8; L_0x898ddbd40 .part L_0x898e43ac0, 8, 8; L_0x898e48000 .part L_0x898e43b60, 8, 8; L_0x898e481e0 .part L_0x898e43ac0, 16, 8; L_0x898e48280 .part L_0x898e43b60, 16, 8; L_0x898e48460 .part L_0x898e43ac0, 24, 8; L_0x898e48500 .part L_0x898e43b60, 24, 8; L_0x898e486e0 .part L_0x898e43ac0, 32, 8; L_0x898e48780 .part L_0x898e43b60, 32, 8; L_0x898e48960 .part L_0x898e43ac0, 40, 8; L_0x898e48a00 .part L_0x898e43b60, 40, 8; L_0x898e48be0 .part L_0x898e43ac0, 48, 8; L_0x898e48c80 .part L_0x898e43b60, 48, 8; L_0x898e48e60 .part L_0x898e43ac0, 56, 8; L_0x898e48f00 .part L_0x898e43b60, 56, 8; L_0x898e490e0 .part L_0x898e43ac0, 64, 8; L_0x898e49220 .part L_0x898e43b60, 64, 8; L_0x898e49400 .part L_0x898e43ac0, 72, 8; L_0x898e494a0 .part L_0x898e43b60, 72, 8; L_0x898e49680 .part L_0x898e43ac0, 80, 8; L_0x898e49180 .part L_0x898e43b60, 80, 8; L_0x898e49860 .part L_0x898e43ac0, 88, 8; L_0x898e49900 .part L_0x898e43b60, 88, 8; L_0x898e49ae0 .part L_0x898e43ac0, 96, 8; L_0x898e49b80 .part L_0x898e43b60, 96, 8; L_0x898e49d60 .part L_0x898e43ac0, 104, 8; L_0x898e49e00 .part L_0x898e43b60, 104, 8; L_0x898e49fe0 .part L_0x898e43ac0, 112, 8; L_0x898e4a080 .part L_0x898e43b60, 112, 8; L_0x898e4a260 .part L_0x898e43ac0, 120, 8; L_0x898e4a300 .part L_0x898e43b60, 120, 8; L_0x898e4a4e0 .part L_0x898e43ac0, 128, 8; L_0x898e4a580 .part L_0x898e43b60, 128, 8; L_0x898e4a760 .part L_0x898e43ac0, 136, 8; L_0x898e4a800 .part L_0x898e43b60, 136, 8; L_0x898e4a9e0 .part L_0x898e43ac0, 144, 8; L_0x898e4aa80 .part L_0x898e43b60, 144, 8; L_0x898e4ac60 .part L_0x898e43ac0, 152, 8; L_0x898e4ad00 .part L_0x898e43b60, 152, 8; L_0x898e4aee0 .part L_0x898e43ac0, 160, 8; L_0x898e4af80 .part L_0x898e43b60, 160, 8; L_0x898e4b160 .part L_0x898e43ac0, 168, 8; L_0x898e4b200 .part L_0x898e43b60, 168, 8; L_0x898e4b3e0 .part L_0x898e43ac0, 176, 8; L_0x898e4b480 .part L_0x898e43b60, 176, 8; L_0x898e4b660 .part L_0x898e43ac0, 184, 8; L_0x898e4b700 .part L_0x898e43b60, 184, 8; L_0x898e4b8e0 .part L_0x898e43ac0, 192, 8; L_0x898e4b980 .part L_0x898e43b60, 192, 8; L_0x898e4bb60 .part L_0x898e43ac0, 200, 8; L_0x898e4bc00 .part L_0x898e43b60, 200, 8; L_0x898e4bde0 .part L_0x898e43ac0, 208, 8; L_0x898e4be80 .part L_0x898e43b60, 208, 8; L_0x898e500a0 .part L_0x898e43ac0, 216, 8; L_0x898e50140 .part L_0x898e43b60, 216, 8; L_0x898e50320 .part L_0x898e43ac0, 224, 8; L_0x898e503c0 .part L_0x898e43b60, 224, 8; L_0x898e505a0 .part L_0x898e43ac0, 232, 8; L_0x898e50640 .part L_0x898e43b60, 232, 8; L_0x898e50820 .part L_0x898e43ac0, 240, 8; L_0x898e508c0 .part L_0x898e43b60, 240, 8; L_0x898e50aa0 .part L_0x898e43ac0, 248, 8; L_0x898e50b40 .part L_0x898e43b60, 248, 8; L_0x898c975c0 .arith/sum 32, v0x89918f5c0_0, v0x89918eb20_0; S_0x898e11f80 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c240 .param/l "i" 1 6 17, +C4<00>; S_0x898e12100 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e11f80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d500 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d540 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d580 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899181fe0_0 .net/s *"_ivl_0", 15 0, L_0x8991be6c0; 1 drivers v0x899182080_0 .net/s *"_ivl_2", 15 0, L_0x8991be760; 1 drivers v0x899182120_0 .net *"_ivl_7", 0 0, L_0x898e43c00; 1 drivers v0x8991821c0_0 .net *"_ivl_9", 15 0, L_0x898e43ca0; 1 drivers L_0x898854c70 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899182260_0 .net/s "acc_in", 31 0, L_0x898854c70; 1 drivers v0x899182300_0 .net/s "acc_out", 31 0, L_0x898c961c0; alias, 1 drivers v0x8991823a0_0 .net/s "product", 15 0, L_0x8991be800; 1 drivers v0x899182440_0 .net/s "product_ext", 31 0, L_0x8991be8a0; 1 drivers v0x8991824e0_0 .net/s "w", 7 0, L_0x898e43de0; 1 drivers v0x899182580_0 .net/s "x", 7 0, L_0x898e43d40; 1 drivers L_0x8991be6c0 .extend/s 16, L_0x898e43d40; L_0x8991be760 .extend/s 16, L_0x898e43de0; L_0x8991be800 .arith/mult 16, L_0x8991be6c0, L_0x8991be760; L_0x898e43c00 .part L_0x8991be800, 15, 1; L_0x898e43ca0 .repeat 16, 16, L_0x898e43c00; L_0x8991be8a0 .concat [ 16 16 0 0], L_0x8991be800, L_0x898e43ca0; L_0x898c961c0 .arith/sum 32, L_0x898854c70, L_0x8991be8a0; S_0x898e12280 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c280 .param/l "i" 1 6 17, +C4<01>; S_0x898e12400 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e12280; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d5c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d600 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d640 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899182620_0 .net/s *"_ivl_0", 15 0, L_0x8991be940; 1 drivers v0x8991826c0_0 .net/s *"_ivl_2", 15 0, L_0x8991be9e0; 1 drivers v0x899182760_0 .net *"_ivl_7", 0 0, L_0x898e43e80; 1 drivers v0x899182800_0 .net *"_ivl_9", 15 0, L_0x898e43f20; 1 drivers L_0x898854cb8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991828a0_0 .net/s "acc_in", 31 0, L_0x898854cb8; 1 drivers v0x899182940_0 .net/s "acc_out", 31 0, L_0x898c96260; alias, 1 drivers v0x8991829e0_0 .net/s "product", 15 0, L_0x8991bea80; 1 drivers v0x899182a80_0 .net/s "product_ext", 31 0, L_0x8991beb20; 1 drivers v0x899182b20_0 .net/s "w", 7 0, L_0x898e48000; 1 drivers v0x899182bc0_0 .net/s "x", 7 0, L_0x898ddbd40; 1 drivers L_0x8991be940 .extend/s 16, L_0x898ddbd40; L_0x8991be9e0 .extend/s 16, L_0x898e48000; L_0x8991bea80 .arith/mult 16, L_0x8991be940, L_0x8991be9e0; L_0x898e43e80 .part L_0x8991bea80, 15, 1; L_0x898e43f20 .repeat 16, 16, L_0x898e43e80; L_0x8991beb20 .concat [ 16 16 0 0], L_0x8991bea80, L_0x898e43f20; L_0x898c96260 .arith/sum 32, L_0x898854cb8, L_0x8991beb20; S_0x898e12580 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c2c0 .param/l "i" 1 6 17, +C4<010>; S_0x898e12700 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e12580; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d680 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d6c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d700 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899182c60_0 .net/s *"_ivl_0", 15 0, L_0x8991bebc0; 1 drivers v0x899182d00_0 .net/s *"_ivl_2", 15 0, L_0x8991bec60; 1 drivers v0x899182da0_0 .net *"_ivl_7", 0 0, L_0x898e480a0; 1 drivers v0x899182e40_0 .net *"_ivl_9", 15 0, L_0x898e48140; 1 drivers L_0x898854d00 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899182ee0_0 .net/s "acc_in", 31 0, L_0x898854d00; 1 drivers v0x899182f80_0 .net/s "acc_out", 31 0, L_0x898c96300; alias, 1 drivers v0x899183020_0 .net/s "product", 15 0, L_0x8991bed00; 1 drivers v0x8991830c0_0 .net/s "product_ext", 31 0, L_0x8991beda0; 1 drivers v0x899183160_0 .net/s "w", 7 0, L_0x898e48280; 1 drivers v0x899183200_0 .net/s "x", 7 0, L_0x898e481e0; 1 drivers L_0x8991bebc0 .extend/s 16, L_0x898e481e0; L_0x8991bec60 .extend/s 16, L_0x898e48280; L_0x8991bed00 .arith/mult 16, L_0x8991bebc0, L_0x8991bec60; L_0x898e480a0 .part L_0x8991bed00, 15, 1; L_0x898e48140 .repeat 16, 16, L_0x898e480a0; L_0x8991beda0 .concat [ 16 16 0 0], L_0x8991bed00, L_0x898e48140; L_0x898c96300 .arith/sum 32, L_0x898854d00, L_0x8991beda0; S_0x898e12880 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c300 .param/l "i" 1 6 17, +C4<011>; S_0x898e12a00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e12880; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d740 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d780 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d7c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991832a0_0 .net/s *"_ivl_0", 15 0, L_0x8991bee40; 1 drivers v0x899183340_0 .net/s *"_ivl_2", 15 0, L_0x8991beee0; 1 drivers v0x8991833e0_0 .net *"_ivl_7", 0 0, L_0x898e48320; 1 drivers v0x899183480_0 .net *"_ivl_9", 15 0, L_0x898e483c0; 1 drivers L_0x898854d48 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899183520_0 .net/s "acc_in", 31 0, L_0x898854d48; 1 drivers v0x8991835c0_0 .net/s "acc_out", 31 0, L_0x898c963a0; alias, 1 drivers v0x899183660_0 .net/s "product", 15 0, L_0x8991bef80; 1 drivers v0x899183700_0 .net/s "product_ext", 31 0, L_0x8991bf020; 1 drivers v0x8991837a0_0 .net/s "w", 7 0, L_0x898e48500; 1 drivers v0x899183840_0 .net/s "x", 7 0, L_0x898e48460; 1 drivers L_0x8991bee40 .extend/s 16, L_0x898e48460; L_0x8991beee0 .extend/s 16, L_0x898e48500; L_0x8991bef80 .arith/mult 16, L_0x8991bee40, L_0x8991beee0; L_0x898e48320 .part L_0x8991bef80, 15, 1; L_0x898e483c0 .repeat 16, 16, L_0x898e48320; L_0x8991bf020 .concat [ 16 16 0 0], L_0x8991bef80, L_0x898e483c0; L_0x898c963a0 .arith/sum 32, L_0x898854d48, L_0x8991bf020; S_0x898e12b80 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c340 .param/l "i" 1 6 17, +C4<0100>; S_0x898e12d00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e12b80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d800 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d840 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d880 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991838e0_0 .net/s *"_ivl_0", 15 0, L_0x8991bf0c0; 1 drivers v0x899183980_0 .net/s *"_ivl_2", 15 0, L_0x8991bf160; 1 drivers v0x899183a20_0 .net *"_ivl_7", 0 0, L_0x898e485a0; 1 drivers v0x899183ac0_0 .net *"_ivl_9", 15 0, L_0x898e48640; 1 drivers L_0x898854d90 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899183b60_0 .net/s "acc_in", 31 0, L_0x898854d90; 1 drivers v0x899183c00_0 .net/s "acc_out", 31 0, L_0x898c96440; alias, 1 drivers v0x899183ca0_0 .net/s "product", 15 0, L_0x8991bf200; 1 drivers v0x899183d40_0 .net/s "product_ext", 31 0, L_0x8991bf2a0; 1 drivers v0x899183de0_0 .net/s "w", 7 0, L_0x898e48780; 1 drivers v0x899183e80_0 .net/s "x", 7 0, L_0x898e486e0; 1 drivers L_0x8991bf0c0 .extend/s 16, L_0x898e486e0; L_0x8991bf160 .extend/s 16, L_0x898e48780; L_0x8991bf200 .arith/mult 16, L_0x8991bf0c0, L_0x8991bf160; L_0x898e485a0 .part L_0x8991bf200, 15, 1; L_0x898e48640 .repeat 16, 16, L_0x898e485a0; L_0x8991bf2a0 .concat [ 16 16 0 0], L_0x8991bf200, L_0x898e48640; L_0x898c96440 .arith/sum 32, L_0x898854d90, L_0x8991bf2a0; S_0x898e12e80 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c380 .param/l "i" 1 6 17, +C4<0101>; S_0x898e13000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e12e80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d8c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d900 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916d940 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899183f20_0 .net/s *"_ivl_0", 15 0, L_0x8991bf340; 1 drivers v0x899184000_0 .net/s *"_ivl_2", 15 0, L_0x8991bf3e0; 1 drivers v0x8991840a0_0 .net *"_ivl_7", 0 0, L_0x898e48820; 1 drivers v0x899184140_0 .net *"_ivl_9", 15 0, L_0x898e488c0; 1 drivers L_0x898854dd8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991841e0_0 .net/s "acc_in", 31 0, L_0x898854dd8; 1 drivers v0x899184280_0 .net/s "acc_out", 31 0, L_0x898c964e0; alias, 1 drivers v0x899184320_0 .net/s "product", 15 0, L_0x8991bf480; 1 drivers v0x8991843c0_0 .net/s "product_ext", 31 0, L_0x8991bf520; 1 drivers v0x899184460_0 .net/s "w", 7 0, L_0x898e48a00; 1 drivers v0x899184500_0 .net/s "x", 7 0, L_0x898e48960; 1 drivers L_0x8991bf340 .extend/s 16, L_0x898e48960; L_0x8991bf3e0 .extend/s 16, L_0x898e48a00; L_0x8991bf480 .arith/mult 16, L_0x8991bf340, L_0x8991bf3e0; L_0x898e48820 .part L_0x8991bf480, 15, 1; L_0x898e488c0 .repeat 16, 16, L_0x898e48820; L_0x8991bf520 .concat [ 16 16 0 0], L_0x8991bf480, L_0x898e488c0; L_0x898c964e0 .arith/sum 32, L_0x898854dd8, L_0x8991bf520; S_0x898e13180 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c3c0 .param/l "i" 1 6 17, +C4<0110>; S_0x898e13300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e13180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916d980 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916d9c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916da00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991845a0_0 .net/s *"_ivl_0", 15 0, L_0x8991bf5c0; 1 drivers v0x899184640_0 .net/s *"_ivl_2", 15 0, L_0x8991bf660; 1 drivers v0x8991846e0_0 .net *"_ivl_7", 0 0, L_0x898e48aa0; 1 drivers v0x899184780_0 .net *"_ivl_9", 15 0, L_0x898e48b40; 1 drivers L_0x898854e20 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899184820_0 .net/s "acc_in", 31 0, L_0x898854e20; 1 drivers v0x8991848c0_0 .net/s "acc_out", 31 0, L_0x898c96580; alias, 1 drivers v0x899184960_0 .net/s "product", 15 0, L_0x8991bf700; 1 drivers v0x899184a00_0 .net/s "product_ext", 31 0, L_0x8991bf7a0; 1 drivers v0x899184aa0_0 .net/s "w", 7 0, L_0x898e48c80; 1 drivers v0x899184b40_0 .net/s "x", 7 0, L_0x898e48be0; 1 drivers L_0x8991bf5c0 .extend/s 16, L_0x898e48be0; L_0x8991bf660 .extend/s 16, L_0x898e48c80; L_0x8991bf700 .arith/mult 16, L_0x8991bf5c0, L_0x8991bf660; L_0x898e48aa0 .part L_0x8991bf700, 15, 1; L_0x898e48b40 .repeat 16, 16, L_0x898e48aa0; L_0x8991bf7a0 .concat [ 16 16 0 0], L_0x8991bf700, L_0x898e48b40; L_0x898c96580 .arith/sum 32, L_0x898854e20, L_0x8991bf7a0; S_0x898e13480 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c400 .param/l "i" 1 6 17, +C4<0111>; S_0x898e13600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e13480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916da40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916da80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916dac0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899184be0_0 .net/s *"_ivl_0", 15 0, L_0x8991bf840; 1 drivers v0x899184c80_0 .net/s *"_ivl_2", 15 0, L_0x8991bf8e0; 1 drivers v0x899184d20_0 .net *"_ivl_7", 0 0, L_0x898e48d20; 1 drivers v0x899184dc0_0 .net *"_ivl_9", 15 0, L_0x898e48dc0; 1 drivers L_0x898854e68 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899184e60_0 .net/s "acc_in", 31 0, L_0x898854e68; 1 drivers v0x899184f00_0 .net/s "acc_out", 31 0, L_0x898c96620; alias, 1 drivers v0x899184fa0_0 .net/s "product", 15 0, L_0x8991bf980; 1 drivers v0x899185040_0 .net/s "product_ext", 31 0, L_0x8991bfa20; 1 drivers v0x8991850e0_0 .net/s "w", 7 0, L_0x898e48f00; 1 drivers v0x899185180_0 .net/s "x", 7 0, L_0x898e48e60; 1 drivers L_0x8991bf840 .extend/s 16, L_0x898e48e60; L_0x8991bf8e0 .extend/s 16, L_0x898e48f00; L_0x8991bf980 .arith/mult 16, L_0x8991bf840, L_0x8991bf8e0; L_0x898e48d20 .part L_0x8991bf980, 15, 1; L_0x898e48dc0 .repeat 16, 16, L_0x898e48d20; L_0x8991bfa20 .concat [ 16 16 0 0], L_0x8991bf980, L_0x898e48dc0; L_0x898c96620 .arith/sum 32, L_0x898854e68, L_0x8991bfa20; S_0x898e13780 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c440 .param/l "i" 1 6 17, +C4<01000>; S_0x898e13900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e13780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916db00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916db40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916db80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899185220_0 .net/s *"_ivl_0", 15 0, L_0x8991bfac0; 1 drivers v0x8991852c0_0 .net/s *"_ivl_2", 15 0, L_0x8991bfb60; 1 drivers v0x899185360_0 .net *"_ivl_7", 0 0, L_0x898e48fa0; 1 drivers v0x899185400_0 .net *"_ivl_9", 15 0, L_0x898e49040; 1 drivers L_0x898854eb0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991854a0_0 .net/s "acc_in", 31 0, L_0x898854eb0; 1 drivers v0x899185540_0 .net/s "acc_out", 31 0, L_0x898c966c0; alias, 1 drivers v0x8991855e0_0 .net/s "product", 15 0, L_0x8991bfc00; 1 drivers v0x899185680_0 .net/s "product_ext", 31 0, L_0x8991bfca0; 1 drivers v0x899185720_0 .net/s "w", 7 0, L_0x898e49220; 1 drivers v0x8991857c0_0 .net/s "x", 7 0, L_0x898e490e0; 1 drivers L_0x8991bfac0 .extend/s 16, L_0x898e490e0; L_0x8991bfb60 .extend/s 16, L_0x898e49220; L_0x8991bfc00 .arith/mult 16, L_0x8991bfac0, L_0x8991bfb60; L_0x898e48fa0 .part L_0x8991bfc00, 15, 1; L_0x898e49040 .repeat 16, 16, L_0x898e48fa0; L_0x8991bfca0 .concat [ 16 16 0 0], L_0x8991bfc00, L_0x898e49040; L_0x898c966c0 .arith/sum 32, L_0x898854eb0, L_0x8991bfca0; S_0x898e13a80 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c480 .param/l "i" 1 6 17, +C4<01001>; S_0x898e13c00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e13a80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916dbc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916dc00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916dc40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899185860_0 .net/s *"_ivl_0", 15 0, L_0x8991bfd40; 1 drivers v0x899185900_0 .net/s *"_ivl_2", 15 0, L_0x8991bfde0; 1 drivers v0x8991859a0_0 .net *"_ivl_7", 0 0, L_0x898e492c0; 1 drivers v0x899185a40_0 .net *"_ivl_9", 15 0, L_0x898e49360; 1 drivers L_0x898854ef8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899185ae0_0 .net/s "acc_in", 31 0, L_0x898854ef8; 1 drivers v0x899185b80_0 .net/s "acc_out", 31 0, L_0x898c96760; alias, 1 drivers v0x899185c20_0 .net/s "product", 15 0, L_0x8991bfe80; 1 drivers v0x899185cc0_0 .net/s "product_ext", 31 0, L_0x8991bff20; 1 drivers v0x899185d60_0 .net/s "w", 7 0, L_0x898e494a0; 1 drivers v0x899185e00_0 .net/s "x", 7 0, L_0x898e49400; 1 drivers L_0x8991bfd40 .extend/s 16, L_0x898e49400; L_0x8991bfde0 .extend/s 16, L_0x898e494a0; L_0x8991bfe80 .arith/mult 16, L_0x8991bfd40, L_0x8991bfde0; L_0x898e492c0 .part L_0x8991bfe80, 15, 1; L_0x898e49360 .repeat 16, 16, L_0x898e492c0; L_0x8991bff20 .concat [ 16 16 0 0], L_0x8991bfe80, L_0x898e49360; L_0x898c96760 .arith/sum 32, L_0x898854ef8, L_0x8991bff20; S_0x898e13d80 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c4c0 .param/l "i" 1 6 17, +C4<01010>; S_0x898e18000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e13d80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916dc80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916dcc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916dd00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899185ea0_0 .net/s *"_ivl_0", 15 0, L_0x8991c0000; 1 drivers v0x899185f40_0 .net/s *"_ivl_2", 15 0, L_0x8991c00a0; 1 drivers v0x899185fe0_0 .net *"_ivl_7", 0 0, L_0x898e49540; 1 drivers v0x899186080_0 .net *"_ivl_9", 15 0, L_0x898e495e0; 1 drivers L_0x898854f40 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899186120_0 .net/s "acc_in", 31 0, L_0x898854f40; 1 drivers v0x8991861c0_0 .net/s "acc_out", 31 0, L_0x898c96800; alias, 1 drivers v0x899186260_0 .net/s "product", 15 0, L_0x8991c0140; 1 drivers v0x899186300_0 .net/s "product_ext", 31 0, L_0x8991c01e0; 1 drivers v0x8991863a0_0 .net/s "w", 7 0, L_0x898e49180; 1 drivers v0x899186440_0 .net/s "x", 7 0, L_0x898e49680; 1 drivers L_0x8991c0000 .extend/s 16, L_0x898e49680; L_0x8991c00a0 .extend/s 16, L_0x898e49180; L_0x8991c0140 .arith/mult 16, L_0x8991c0000, L_0x8991c00a0; L_0x898e49540 .part L_0x8991c0140, 15, 1; L_0x898e495e0 .repeat 16, 16, L_0x898e49540; L_0x8991c01e0 .concat [ 16 16 0 0], L_0x8991c0140, L_0x898e495e0; L_0x898c96800 .arith/sum 32, L_0x898854f40, L_0x8991c01e0; S_0x898e18180 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c500 .param/l "i" 1 6 17, +C4<01011>; S_0x898e18300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e18180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916dd40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916dd80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ddc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991864e0_0 .net/s *"_ivl_0", 15 0, L_0x8991c0280; 1 drivers v0x899186580_0 .net/s *"_ivl_2", 15 0, L_0x8991c0320; 1 drivers v0x899186620_0 .net *"_ivl_7", 0 0, L_0x898e49720; 1 drivers v0x8991866c0_0 .net *"_ivl_9", 15 0, L_0x898e497c0; 1 drivers L_0x898854f88 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899186760_0 .net/s "acc_in", 31 0, L_0x898854f88; 1 drivers v0x899186800_0 .net/s "acc_out", 31 0, L_0x898c968a0; alias, 1 drivers v0x8991868a0_0 .net/s "product", 15 0, L_0x8991c03c0; 1 drivers v0x899186940_0 .net/s "product_ext", 31 0, L_0x8991c0460; 1 drivers v0x8991869e0_0 .net/s "w", 7 0, L_0x898e49900; 1 drivers v0x899186a80_0 .net/s "x", 7 0, L_0x898e49860; 1 drivers L_0x8991c0280 .extend/s 16, L_0x898e49860; L_0x8991c0320 .extend/s 16, L_0x898e49900; L_0x8991c03c0 .arith/mult 16, L_0x8991c0280, L_0x8991c0320; L_0x898e49720 .part L_0x8991c03c0, 15, 1; L_0x898e497c0 .repeat 16, 16, L_0x898e49720; L_0x8991c0460 .concat [ 16 16 0 0], L_0x8991c03c0, L_0x898e497c0; L_0x898c968a0 .arith/sum 32, L_0x898854f88, L_0x8991c0460; S_0x898e18480 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c540 .param/l "i" 1 6 17, +C4<01100>; S_0x898e18600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e18480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916de00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916de40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916de80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899186b20_0 .net/s *"_ivl_0", 15 0, L_0x8991c0500; 1 drivers v0x899186bc0_0 .net/s *"_ivl_2", 15 0, L_0x8991c05a0; 1 drivers v0x899186c60_0 .net *"_ivl_7", 0 0, L_0x898e499a0; 1 drivers v0x899186d00_0 .net *"_ivl_9", 15 0, L_0x898e49a40; 1 drivers L_0x898854fd0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899186da0_0 .net/s "acc_in", 31 0, L_0x898854fd0; 1 drivers v0x899186e40_0 .net/s "acc_out", 31 0, L_0x898c96940; alias, 1 drivers v0x899186ee0_0 .net/s "product", 15 0, L_0x8991c0640; 1 drivers v0x899186f80_0 .net/s "product_ext", 31 0, L_0x8991c06e0; 1 drivers v0x899187020_0 .net/s "w", 7 0, L_0x898e49b80; 1 drivers v0x8991870c0_0 .net/s "x", 7 0, L_0x898e49ae0; 1 drivers L_0x8991c0500 .extend/s 16, L_0x898e49ae0; L_0x8991c05a0 .extend/s 16, L_0x898e49b80; L_0x8991c0640 .arith/mult 16, L_0x8991c0500, L_0x8991c05a0; L_0x898e499a0 .part L_0x8991c0640, 15, 1; L_0x898e49a40 .repeat 16, 16, L_0x898e499a0; L_0x8991c06e0 .concat [ 16 16 0 0], L_0x8991c0640, L_0x898e49a40; L_0x898c96940 .arith/sum 32, L_0x898854fd0, L_0x8991c06e0; S_0x898e18780 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c580 .param/l "i" 1 6 17, +C4<01101>; S_0x898e18900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e18780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916dec0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916df00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916df40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899187160_0 .net/s *"_ivl_0", 15 0, L_0x8991c0780; 1 drivers v0x899187200_0 .net/s *"_ivl_2", 15 0, L_0x8991c0820; 1 drivers v0x8991872a0_0 .net *"_ivl_7", 0 0, L_0x898e49c20; 1 drivers v0x899187340_0 .net *"_ivl_9", 15 0, L_0x898e49cc0; 1 drivers L_0x898855018 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991873e0_0 .net/s "acc_in", 31 0, L_0x898855018; 1 drivers v0x899187480_0 .net/s "acc_out", 31 0, L_0x898c969e0; alias, 1 drivers v0x899187520_0 .net/s "product", 15 0, L_0x8991c08c0; 1 drivers v0x8991875c0_0 .net/s "product_ext", 31 0, L_0x8991c0960; 1 drivers v0x899187660_0 .net/s "w", 7 0, L_0x898e49e00; 1 drivers v0x899187700_0 .net/s "x", 7 0, L_0x898e49d60; 1 drivers L_0x8991c0780 .extend/s 16, L_0x898e49d60; L_0x8991c0820 .extend/s 16, L_0x898e49e00; L_0x8991c08c0 .arith/mult 16, L_0x8991c0780, L_0x8991c0820; L_0x898e49c20 .part L_0x8991c08c0, 15, 1; L_0x898e49cc0 .repeat 16, 16, L_0x898e49c20; L_0x8991c0960 .concat [ 16 16 0 0], L_0x8991c08c0, L_0x898e49cc0; L_0x898c969e0 .arith/sum 32, L_0x898855018, L_0x8991c0960; S_0x898e18a80 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c5c0 .param/l "i" 1 6 17, +C4<01110>; S_0x898e18c00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e18a80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916df80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916dfc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e000 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991877a0_0 .net/s *"_ivl_0", 15 0, L_0x8991c0a00; 1 drivers v0x899187840_0 .net/s *"_ivl_2", 15 0, L_0x8991c0aa0; 1 drivers v0x8991878e0_0 .net *"_ivl_7", 0 0, L_0x898e49ea0; 1 drivers v0x899187980_0 .net *"_ivl_9", 15 0, L_0x898e49f40; 1 drivers L_0x898855060 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899187a20_0 .net/s "acc_in", 31 0, L_0x898855060; 1 drivers v0x899187ac0_0 .net/s "acc_out", 31 0, L_0x898c96a80; alias, 1 drivers v0x899187b60_0 .net/s "product", 15 0, L_0x8991c0b40; 1 drivers v0x899187c00_0 .net/s "product_ext", 31 0, L_0x8991c0be0; 1 drivers v0x899187ca0_0 .net/s "w", 7 0, L_0x898e4a080; 1 drivers v0x899187d40_0 .net/s "x", 7 0, L_0x898e49fe0; 1 drivers L_0x8991c0a00 .extend/s 16, L_0x898e49fe0; L_0x8991c0aa0 .extend/s 16, L_0x898e4a080; L_0x8991c0b40 .arith/mult 16, L_0x8991c0a00, L_0x8991c0aa0; L_0x898e49ea0 .part L_0x8991c0b40, 15, 1; L_0x898e49f40 .repeat 16, 16, L_0x898e49ea0; L_0x8991c0be0 .concat [ 16 16 0 0], L_0x8991c0b40, L_0x898e49f40; L_0x898c96a80 .arith/sum 32, L_0x898855060, L_0x8991c0be0; S_0x898e18d80 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c600 .param/l "i" 1 6 17, +C4<01111>; S_0x898e18f00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e18d80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e040 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e080 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e0c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899187de0_0 .net/s *"_ivl_0", 15 0, L_0x8991c0c80; 1 drivers v0x899187e80_0 .net/s *"_ivl_2", 15 0, L_0x8991c0d20; 1 drivers v0x899187f20_0 .net *"_ivl_7", 0 0, L_0x898e4a120; 1 drivers v0x899188000_0 .net *"_ivl_9", 15 0, L_0x898e4a1c0; 1 drivers L_0x8988550a8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991880a0_0 .net/s "acc_in", 31 0, L_0x8988550a8; 1 drivers v0x899188140_0 .net/s "acc_out", 31 0, L_0x898c96b20; alias, 1 drivers v0x8991881e0_0 .net/s "product", 15 0, L_0x8991c0dc0; 1 drivers v0x899188280_0 .net/s "product_ext", 31 0, L_0x8991c0e60; 1 drivers v0x899188320_0 .net/s "w", 7 0, L_0x898e4a300; 1 drivers v0x8991883c0_0 .net/s "x", 7 0, L_0x898e4a260; 1 drivers L_0x8991c0c80 .extend/s 16, L_0x898e4a260; L_0x8991c0d20 .extend/s 16, L_0x898e4a300; L_0x8991c0dc0 .arith/mult 16, L_0x8991c0c80, L_0x8991c0d20; L_0x898e4a120 .part L_0x8991c0dc0, 15, 1; L_0x898e4a1c0 .repeat 16, 16, L_0x898e4a120; L_0x8991c0e60 .concat [ 16 16 0 0], L_0x8991c0dc0, L_0x898e4a1c0; L_0x898c96b20 .arith/sum 32, L_0x8988550a8, L_0x8991c0e60; S_0x898e19080 .scope generate, "GEN_MAC[16]" "GEN_MAC[16]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c640 .param/l "i" 1 6 17, +C4<010000>; S_0x898e19200 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e19080; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e100 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e140 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e180 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899188460_0 .net/s *"_ivl_0", 15 0, L_0x8991c0f00; 1 drivers v0x899188500_0 .net/s *"_ivl_2", 15 0, L_0x8991c0fa0; 1 drivers v0x8991885a0_0 .net *"_ivl_7", 0 0, L_0x898e4a3a0; 1 drivers v0x899188640_0 .net *"_ivl_9", 15 0, L_0x898e4a440; 1 drivers L_0x8988550f0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991886e0_0 .net/s "acc_in", 31 0, L_0x8988550f0; 1 drivers v0x899188780_0 .net/s "acc_out", 31 0, L_0x898c96bc0; alias, 1 drivers v0x899188820_0 .net/s "product", 15 0, L_0x8991c1040; 1 drivers v0x8991888c0_0 .net/s "product_ext", 31 0, L_0x8991c10e0; 1 drivers v0x899188960_0 .net/s "w", 7 0, L_0x898e4a580; 1 drivers v0x899188a00_0 .net/s "x", 7 0, L_0x898e4a4e0; 1 drivers L_0x8991c0f00 .extend/s 16, L_0x898e4a4e0; L_0x8991c0fa0 .extend/s 16, L_0x898e4a580; L_0x8991c1040 .arith/mult 16, L_0x8991c0f00, L_0x8991c0fa0; L_0x898e4a3a0 .part L_0x8991c1040, 15, 1; L_0x898e4a440 .repeat 16, 16, L_0x898e4a3a0; L_0x8991c10e0 .concat [ 16 16 0 0], L_0x8991c1040, L_0x898e4a440; L_0x898c96bc0 .arith/sum 32, L_0x8988550f0, L_0x8991c10e0; S_0x898e19380 .scope generate, "GEN_MAC[17]" "GEN_MAC[17]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c680 .param/l "i" 1 6 17, +C4<010001>; S_0x898e19500 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e19380; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e1c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e200 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e240 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899188aa0_0 .net/s *"_ivl_0", 15 0, L_0x8991c1180; 1 drivers v0x899188b40_0 .net/s *"_ivl_2", 15 0, L_0x8991c1220; 1 drivers v0x899188be0_0 .net *"_ivl_7", 0 0, L_0x898e4a620; 1 drivers v0x899188c80_0 .net *"_ivl_9", 15 0, L_0x898e4a6c0; 1 drivers L_0x898855138 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899188d20_0 .net/s "acc_in", 31 0, L_0x898855138; 1 drivers v0x899188dc0_0 .net/s "acc_out", 31 0, L_0x898c96c60; alias, 1 drivers v0x899188e60_0 .net/s "product", 15 0, L_0x8991c12c0; 1 drivers v0x899188f00_0 .net/s "product_ext", 31 0, L_0x8991c1360; 1 drivers v0x899188fa0_0 .net/s "w", 7 0, L_0x898e4a800; 1 drivers v0x899189040_0 .net/s "x", 7 0, L_0x898e4a760; 1 drivers L_0x8991c1180 .extend/s 16, L_0x898e4a760; L_0x8991c1220 .extend/s 16, L_0x898e4a800; L_0x8991c12c0 .arith/mult 16, L_0x8991c1180, L_0x8991c1220; L_0x898e4a620 .part L_0x8991c12c0, 15, 1; L_0x898e4a6c0 .repeat 16, 16, L_0x898e4a620; L_0x8991c1360 .concat [ 16 16 0 0], L_0x8991c12c0, L_0x898e4a6c0; L_0x898c96c60 .arith/sum 32, L_0x898855138, L_0x8991c1360; S_0x898e19680 .scope generate, "GEN_MAC[18]" "GEN_MAC[18]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c6c0 .param/l "i" 1 6 17, +C4<010010>; S_0x898e19800 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e19680; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e280 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e2c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e300 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991890e0_0 .net/s *"_ivl_0", 15 0, L_0x8991c1400; 1 drivers v0x899189180_0 .net/s *"_ivl_2", 15 0, L_0x8991c14a0; 1 drivers v0x899189220_0 .net *"_ivl_7", 0 0, L_0x898e4a8a0; 1 drivers v0x8991892c0_0 .net *"_ivl_9", 15 0, L_0x898e4a940; 1 drivers L_0x898855180 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899189360_0 .net/s "acc_in", 31 0, L_0x898855180; 1 drivers v0x899189400_0 .net/s "acc_out", 31 0, L_0x898c96d00; alias, 1 drivers v0x8991894a0_0 .net/s "product", 15 0, L_0x8991c1540; 1 drivers v0x899189540_0 .net/s "product_ext", 31 0, L_0x8991c15e0; 1 drivers v0x8991895e0_0 .net/s "w", 7 0, L_0x898e4aa80; 1 drivers v0x899189680_0 .net/s "x", 7 0, L_0x898e4a9e0; 1 drivers L_0x8991c1400 .extend/s 16, L_0x898e4a9e0; L_0x8991c14a0 .extend/s 16, L_0x898e4aa80; L_0x8991c1540 .arith/mult 16, L_0x8991c1400, L_0x8991c14a0; L_0x898e4a8a0 .part L_0x8991c1540, 15, 1; L_0x898e4a940 .repeat 16, 16, L_0x898e4a8a0; L_0x8991c15e0 .concat [ 16 16 0 0], L_0x8991c1540, L_0x898e4a940; L_0x898c96d00 .arith/sum 32, L_0x898855180, L_0x8991c15e0; S_0x898e19980 .scope generate, "GEN_MAC[19]" "GEN_MAC[19]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c700 .param/l "i" 1 6 17, +C4<010011>; S_0x898e19b00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e19980; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e340 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e380 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e3c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899189720_0 .net/s *"_ivl_0", 15 0, L_0x8991c1680; 1 drivers v0x8991897c0_0 .net/s *"_ivl_2", 15 0, L_0x8991c1720; 1 drivers v0x899189860_0 .net *"_ivl_7", 0 0, L_0x898e4ab20; 1 drivers v0x899189900_0 .net *"_ivl_9", 15 0, L_0x898e4abc0; 1 drivers L_0x8988551c8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991899a0_0 .net/s "acc_in", 31 0, L_0x8988551c8; 1 drivers v0x899189a40_0 .net/s "acc_out", 31 0, L_0x898c96da0; alias, 1 drivers v0x899189ae0_0 .net/s "product", 15 0, L_0x8991c17c0; 1 drivers v0x899189b80_0 .net/s "product_ext", 31 0, L_0x8991c1860; 1 drivers v0x899189c20_0 .net/s "w", 7 0, L_0x898e4ad00; 1 drivers v0x899189cc0_0 .net/s "x", 7 0, L_0x898e4ac60; 1 drivers L_0x8991c1680 .extend/s 16, L_0x898e4ac60; L_0x8991c1720 .extend/s 16, L_0x898e4ad00; L_0x8991c17c0 .arith/mult 16, L_0x8991c1680, L_0x8991c1720; L_0x898e4ab20 .part L_0x8991c17c0, 15, 1; L_0x898e4abc0 .repeat 16, 16, L_0x898e4ab20; L_0x8991c1860 .concat [ 16 16 0 0], L_0x8991c17c0, L_0x898e4abc0; L_0x898c96da0 .arith/sum 32, L_0x8988551c8, L_0x8991c1860; S_0x898e19c80 .scope generate, "GEN_MAC[20]" "GEN_MAC[20]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c740 .param/l "i" 1 6 17, +C4<010100>; S_0x898e19e00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e19c80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e400 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e440 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e480 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899189d60_0 .net/s *"_ivl_0", 15 0, L_0x8991c1900; 1 drivers v0x899189e00_0 .net/s *"_ivl_2", 15 0, L_0x8991c19a0; 1 drivers v0x899189ea0_0 .net *"_ivl_7", 0 0, L_0x898e4ada0; 1 drivers v0x899189f40_0 .net *"_ivl_9", 15 0, L_0x898e4ae40; 1 drivers L_0x898855210 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899189fe0_0 .net/s "acc_in", 31 0, L_0x898855210; 1 drivers v0x89918a080_0 .net/s "acc_out", 31 0, L_0x898c96e40; alias, 1 drivers v0x89918a120_0 .net/s "product", 15 0, L_0x8991c1a40; 1 drivers v0x89918a1c0_0 .net/s "product_ext", 31 0, L_0x8991c1ae0; 1 drivers v0x89918a260_0 .net/s "w", 7 0, L_0x898e4af80; 1 drivers v0x89918a300_0 .net/s "x", 7 0, L_0x898e4aee0; 1 drivers L_0x8991c1900 .extend/s 16, L_0x898e4aee0; L_0x8991c19a0 .extend/s 16, L_0x898e4af80; L_0x8991c1a40 .arith/mult 16, L_0x8991c1900, L_0x8991c19a0; L_0x898e4ada0 .part L_0x8991c1a40, 15, 1; L_0x898e4ae40 .repeat 16, 16, L_0x898e4ada0; L_0x8991c1ae0 .concat [ 16 16 0 0], L_0x8991c1a40, L_0x898e4ae40; L_0x898c96e40 .arith/sum 32, L_0x898855210, L_0x8991c1ae0; S_0x898e19f80 .scope generate, "GEN_MAC[21]" "GEN_MAC[21]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c780 .param/l "i" 1 6 17, +C4<010101>; S_0x898e1a100 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e19f80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e4c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e500 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e540 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918a3a0_0 .net/s *"_ivl_0", 15 0, L_0x8991c1b80; 1 drivers v0x89918a440_0 .net/s *"_ivl_2", 15 0, L_0x8991c1c20; 1 drivers v0x89918a4e0_0 .net *"_ivl_7", 0 0, L_0x898e4b020; 1 drivers v0x89918a580_0 .net *"_ivl_9", 15 0, L_0x898e4b0c0; 1 drivers L_0x898855258 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918a620_0 .net/s "acc_in", 31 0, L_0x898855258; 1 drivers v0x89918a6c0_0 .net/s "acc_out", 31 0, L_0x898c96ee0; alias, 1 drivers v0x89918a760_0 .net/s "product", 15 0, L_0x8991c1cc0; 1 drivers v0x89918a800_0 .net/s "product_ext", 31 0, L_0x8991c1d60; 1 drivers v0x89918a8a0_0 .net/s "w", 7 0, L_0x898e4b200; 1 drivers v0x89918a940_0 .net/s "x", 7 0, L_0x898e4b160; 1 drivers L_0x8991c1b80 .extend/s 16, L_0x898e4b160; L_0x8991c1c20 .extend/s 16, L_0x898e4b200; L_0x8991c1cc0 .arith/mult 16, L_0x8991c1b80, L_0x8991c1c20; L_0x898e4b020 .part L_0x8991c1cc0, 15, 1; L_0x898e4b0c0 .repeat 16, 16, L_0x898e4b020; L_0x8991c1d60 .concat [ 16 16 0 0], L_0x8991c1cc0, L_0x898e4b0c0; L_0x898c96ee0 .arith/sum 32, L_0x898855258, L_0x8991c1d60; S_0x898e1a280 .scope generate, "GEN_MAC[22]" "GEN_MAC[22]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c7c0 .param/l "i" 1 6 17, +C4<010110>; S_0x898e1a400 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1a280; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e580 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e5c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e600 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918a9e0_0 .net/s *"_ivl_0", 15 0, L_0x8991c1e00; 1 drivers v0x89918aa80_0 .net/s *"_ivl_2", 15 0, L_0x8991c1ea0; 1 drivers v0x89918ab20_0 .net *"_ivl_7", 0 0, L_0x898e4b2a0; 1 drivers v0x89918abc0_0 .net *"_ivl_9", 15 0, L_0x898e4b340; 1 drivers L_0x8988552a0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918ac60_0 .net/s "acc_in", 31 0, L_0x8988552a0; 1 drivers v0x89918ad00_0 .net/s "acc_out", 31 0, L_0x898c96f80; alias, 1 drivers v0x89918ada0_0 .net/s "product", 15 0, L_0x8991c1f40; 1 drivers v0x89918ae40_0 .net/s "product_ext", 31 0, L_0x8991c1fe0; 1 drivers v0x89918aee0_0 .net/s "w", 7 0, L_0x898e4b480; 1 drivers v0x89918af80_0 .net/s "x", 7 0, L_0x898e4b3e0; 1 drivers L_0x8991c1e00 .extend/s 16, L_0x898e4b3e0; L_0x8991c1ea0 .extend/s 16, L_0x898e4b480; L_0x8991c1f40 .arith/mult 16, L_0x8991c1e00, L_0x8991c1ea0; L_0x898e4b2a0 .part L_0x8991c1f40, 15, 1; L_0x898e4b340 .repeat 16, 16, L_0x898e4b2a0; L_0x8991c1fe0 .concat [ 16 16 0 0], L_0x8991c1f40, L_0x898e4b340; L_0x898c96f80 .arith/sum 32, L_0x8988552a0, L_0x8991c1fe0; S_0x898e1a580 .scope generate, "GEN_MAC[23]" "GEN_MAC[23]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c800 .param/l "i" 1 6 17, +C4<010111>; S_0x898e1a700 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1a580; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e640 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e680 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e6c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918b020_0 .net/s *"_ivl_0", 15 0, L_0x8991c2080; 1 drivers v0x89918b0c0_0 .net/s *"_ivl_2", 15 0, L_0x8991c2120; 1 drivers v0x89918b160_0 .net *"_ivl_7", 0 0, L_0x898e4b520; 1 drivers v0x89918b200_0 .net *"_ivl_9", 15 0, L_0x898e4b5c0; 1 drivers L_0x8988552e8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918b2a0_0 .net/s "acc_in", 31 0, L_0x8988552e8; 1 drivers v0x89918b340_0 .net/s "acc_out", 31 0, L_0x898c97020; alias, 1 drivers v0x89918b3e0_0 .net/s "product", 15 0, L_0x8991c21c0; 1 drivers v0x89918b480_0 .net/s "product_ext", 31 0, L_0x8991c2260; 1 drivers v0x89918b520_0 .net/s "w", 7 0, L_0x898e4b700; 1 drivers v0x89918b5c0_0 .net/s "x", 7 0, L_0x898e4b660; 1 drivers L_0x8991c2080 .extend/s 16, L_0x898e4b660; L_0x8991c2120 .extend/s 16, L_0x898e4b700; L_0x8991c21c0 .arith/mult 16, L_0x8991c2080, L_0x8991c2120; L_0x898e4b520 .part L_0x8991c21c0, 15, 1; L_0x898e4b5c0 .repeat 16, 16, L_0x898e4b520; L_0x8991c2260 .concat [ 16 16 0 0], L_0x8991c21c0, L_0x898e4b5c0; L_0x898c97020 .arith/sum 32, L_0x8988552e8, L_0x8991c2260; S_0x898e1a880 .scope generate, "GEN_MAC[24]" "GEN_MAC[24]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c840 .param/l "i" 1 6 17, +C4<011000>; S_0x898e1aa00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1a880; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e700 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e740 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e780 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918b660_0 .net/s *"_ivl_0", 15 0, L_0x8991c2300; 1 drivers v0x89918b700_0 .net/s *"_ivl_2", 15 0, L_0x8991c23a0; 1 drivers v0x89918b7a0_0 .net *"_ivl_7", 0 0, L_0x898e4b7a0; 1 drivers v0x89918b840_0 .net *"_ivl_9", 15 0, L_0x898e4b840; 1 drivers L_0x898855330 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918b8e0_0 .net/s "acc_in", 31 0, L_0x898855330; 1 drivers v0x89918b980_0 .net/s "acc_out", 31 0, L_0x898c970c0; alias, 1 drivers v0x89918ba20_0 .net/s "product", 15 0, L_0x8991c2440; 1 drivers v0x89918bac0_0 .net/s "product_ext", 31 0, L_0x8991c24e0; 1 drivers v0x89918bb60_0 .net/s "w", 7 0, L_0x898e4b980; 1 drivers v0x89918bc00_0 .net/s "x", 7 0, L_0x898e4b8e0; 1 drivers L_0x8991c2300 .extend/s 16, L_0x898e4b8e0; L_0x8991c23a0 .extend/s 16, L_0x898e4b980; L_0x8991c2440 .arith/mult 16, L_0x8991c2300, L_0x8991c23a0; L_0x898e4b7a0 .part L_0x8991c2440, 15, 1; L_0x898e4b840 .repeat 16, 16, L_0x898e4b7a0; L_0x8991c24e0 .concat [ 16 16 0 0], L_0x8991c2440, L_0x898e4b840; L_0x898c970c0 .arith/sum 32, L_0x898855330, L_0x8991c24e0; S_0x898e1ab80 .scope generate, "GEN_MAC[25]" "GEN_MAC[25]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c880 .param/l "i" 1 6 17, +C4<011001>; S_0x898e1ad00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1ab80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e7c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e800 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e840 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918bca0_0 .net/s *"_ivl_0", 15 0, L_0x8991c2580; 1 drivers v0x89918bd40_0 .net/s *"_ivl_2", 15 0, L_0x8991c2620; 1 drivers v0x89918bde0_0 .net *"_ivl_7", 0 0, L_0x898e4ba20; 1 drivers v0x89918be80_0 .net *"_ivl_9", 15 0, L_0x898e4bac0; 1 drivers L_0x898855378 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918bf20_0 .net/s "acc_in", 31 0, L_0x898855378; 1 drivers v0x89918c000_0 .net/s "acc_out", 31 0, L_0x898c97160; alias, 1 drivers v0x89918c0a0_0 .net/s "product", 15 0, L_0x8991c26c0; 1 drivers v0x89918c140_0 .net/s "product_ext", 31 0, L_0x8991c2760; 1 drivers v0x89918c1e0_0 .net/s "w", 7 0, L_0x898e4bc00; 1 drivers v0x89918c280_0 .net/s "x", 7 0, L_0x898e4bb60; 1 drivers L_0x8991c2580 .extend/s 16, L_0x898e4bb60; L_0x8991c2620 .extend/s 16, L_0x898e4bc00; L_0x8991c26c0 .arith/mult 16, L_0x8991c2580, L_0x8991c2620; L_0x898e4ba20 .part L_0x8991c26c0, 15, 1; L_0x898e4bac0 .repeat 16, 16, L_0x898e4ba20; L_0x8991c2760 .concat [ 16 16 0 0], L_0x8991c26c0, L_0x898e4bac0; L_0x898c97160 .arith/sum 32, L_0x898855378, L_0x8991c2760; S_0x898e1ae80 .scope generate, "GEN_MAC[26]" "GEN_MAC[26]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c8c0 .param/l "i" 1 6 17, +C4<011010>; S_0x898e1b000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1ae80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e880 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e8c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e900 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918c320_0 .net/s *"_ivl_0", 15 0, L_0x8991c2800; 1 drivers v0x89918c3c0_0 .net/s *"_ivl_2", 15 0, L_0x8991c28a0; 1 drivers v0x89918c460_0 .net *"_ivl_7", 0 0, L_0x898e4bca0; 1 drivers v0x89918c500_0 .net *"_ivl_9", 15 0, L_0x898e4bd40; 1 drivers L_0x8988553c0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918c5a0_0 .net/s "acc_in", 31 0, L_0x8988553c0; 1 drivers v0x89918c640_0 .net/s "acc_out", 31 0, L_0x898c97200; alias, 1 drivers v0x89918c6e0_0 .net/s "product", 15 0, L_0x8991c2940; 1 drivers v0x89918c780_0 .net/s "product_ext", 31 0, L_0x8991c29e0; 1 drivers v0x89918c820_0 .net/s "w", 7 0, L_0x898e4be80; 1 drivers v0x89918c8c0_0 .net/s "x", 7 0, L_0x898e4bde0; 1 drivers L_0x8991c2800 .extend/s 16, L_0x898e4bde0; L_0x8991c28a0 .extend/s 16, L_0x898e4be80; L_0x8991c2940 .arith/mult 16, L_0x8991c2800, L_0x8991c28a0; L_0x898e4bca0 .part L_0x8991c2940, 15, 1; L_0x898e4bd40 .repeat 16, 16, L_0x898e4bca0; L_0x8991c29e0 .concat [ 16 16 0 0], L_0x8991c2940, L_0x898e4bd40; L_0x898c97200 .arith/sum 32, L_0x8988553c0, L_0x8991c29e0; S_0x898e1b180 .scope generate, "GEN_MAC[27]" "GEN_MAC[27]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c900 .param/l "i" 1 6 17, +C4<011011>; S_0x898e1b300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1b180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916e940 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916e980 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916e9c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918c960_0 .net/s *"_ivl_0", 15 0, L_0x8991c2a80; 1 drivers v0x89918ca00_0 .net/s *"_ivl_2", 15 0, L_0x8991c2b20; 1 drivers v0x89918caa0_0 .net *"_ivl_7", 0 0, L_0x898e4bf20; 1 drivers v0x89918cb40_0 .net *"_ivl_9", 15 0, L_0x898e50000; 1 drivers L_0x898855408 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918cbe0_0 .net/s "acc_in", 31 0, L_0x898855408; 1 drivers v0x89918cc80_0 .net/s "acc_out", 31 0, L_0x898c972a0; alias, 1 drivers v0x89918cd20_0 .net/s "product", 15 0, L_0x8991c2bc0; 1 drivers v0x89918cdc0_0 .net/s "product_ext", 31 0, L_0x8991c2c60; 1 drivers v0x89918ce60_0 .net/s "w", 7 0, L_0x898e50140; 1 drivers v0x89918cf00_0 .net/s "x", 7 0, L_0x898e500a0; 1 drivers L_0x8991c2a80 .extend/s 16, L_0x898e500a0; L_0x8991c2b20 .extend/s 16, L_0x898e50140; L_0x8991c2bc0 .arith/mult 16, L_0x8991c2a80, L_0x8991c2b20; L_0x898e4bf20 .part L_0x8991c2bc0, 15, 1; L_0x898e50000 .repeat 16, 16, L_0x898e4bf20; L_0x8991c2c60 .concat [ 16 16 0 0], L_0x8991c2bc0, L_0x898e50000; L_0x898c972a0 .arith/sum 32, L_0x898855408, L_0x8991c2c60; S_0x898e1b480 .scope generate, "GEN_MAC[28]" "GEN_MAC[28]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c940 .param/l "i" 1 6 17, +C4<011100>; S_0x898e1b600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1b480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ea00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ea40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ea80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918cfa0_0 .net/s *"_ivl_0", 15 0, L_0x8991c2d00; 1 drivers v0x89918d040_0 .net/s *"_ivl_2", 15 0, L_0x8991c2da0; 1 drivers v0x89918d0e0_0 .net *"_ivl_7", 0 0, L_0x898e501e0; 1 drivers v0x89918d180_0 .net *"_ivl_9", 15 0, L_0x898e50280; 1 drivers L_0x898855450 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918d220_0 .net/s "acc_in", 31 0, L_0x898855450; 1 drivers v0x89918d2c0_0 .net/s "acc_out", 31 0, L_0x898c97340; alias, 1 drivers v0x89918d360_0 .net/s "product", 15 0, L_0x8991c2e40; 1 drivers v0x89918d400_0 .net/s "product_ext", 31 0, L_0x8991c2ee0; 1 drivers v0x89918d4a0_0 .net/s "w", 7 0, L_0x898e503c0; 1 drivers v0x89918d540_0 .net/s "x", 7 0, L_0x898e50320; 1 drivers L_0x8991c2d00 .extend/s 16, L_0x898e50320; L_0x8991c2da0 .extend/s 16, L_0x898e503c0; L_0x8991c2e40 .arith/mult 16, L_0x8991c2d00, L_0x8991c2da0; L_0x898e501e0 .part L_0x8991c2e40, 15, 1; L_0x898e50280 .repeat 16, 16, L_0x898e501e0; L_0x8991c2ee0 .concat [ 16 16 0 0], L_0x8991c2e40, L_0x898e50280; L_0x898c97340 .arith/sum 32, L_0x898855450, L_0x8991c2ee0; S_0x898e1b780 .scope generate, "GEN_MAC[29]" "GEN_MAC[29]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c980 .param/l "i" 1 6 17, +C4<011101>; S_0x898e1b900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1b780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916eac0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916eb00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916eb40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918d5e0_0 .net/s *"_ivl_0", 15 0, L_0x8991c2f80; 1 drivers v0x89918d680_0 .net/s *"_ivl_2", 15 0, L_0x8991c3020; 1 drivers v0x89918d720_0 .net *"_ivl_7", 0 0, L_0x898e50460; 1 drivers v0x89918d7c0_0 .net *"_ivl_9", 15 0, L_0x898e50500; 1 drivers L_0x898855498 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918d860_0 .net/s "acc_in", 31 0, L_0x898855498; 1 drivers v0x89918d900_0 .net/s "acc_out", 31 0, L_0x898c973e0; alias, 1 drivers v0x89918d9a0_0 .net/s "product", 15 0, L_0x8991c30c0; 1 drivers v0x89918da40_0 .net/s "product_ext", 31 0, L_0x8991c3160; 1 drivers v0x89918dae0_0 .net/s "w", 7 0, L_0x898e50640; 1 drivers v0x89918db80_0 .net/s "x", 7 0, L_0x898e505a0; 1 drivers L_0x8991c2f80 .extend/s 16, L_0x898e505a0; L_0x8991c3020 .extend/s 16, L_0x898e50640; L_0x8991c30c0 .arith/mult 16, L_0x8991c2f80, L_0x8991c3020; L_0x898e50460 .part L_0x8991c30c0, 15, 1; L_0x898e50500 .repeat 16, 16, L_0x898e50460; L_0x8991c3160 .concat [ 16 16 0 0], L_0x8991c30c0, L_0x898e50500; L_0x898c973e0 .arith/sum 32, L_0x898855498, L_0x8991c3160; S_0x898e1ba80 .scope generate, "GEN_MAC[30]" "GEN_MAC[30]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917c9c0 .param/l "i" 1 6 17, +C4<011110>; S_0x898e1bc00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1ba80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916eb80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ebc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ec00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918dc20_0 .net/s *"_ivl_0", 15 0, L_0x8991c3200; 1 drivers v0x89918dcc0_0 .net/s *"_ivl_2", 15 0, L_0x8991c32a0; 1 drivers v0x89918dd60_0 .net *"_ivl_7", 0 0, L_0x898e506e0; 1 drivers v0x89918de00_0 .net *"_ivl_9", 15 0, L_0x898e50780; 1 drivers L_0x8988554e0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918dea0_0 .net/s "acc_in", 31 0, L_0x8988554e0; 1 drivers v0x89918df40_0 .net/s "acc_out", 31 0, L_0x898c97480; alias, 1 drivers v0x89918dfe0_0 .net/s "product", 15 0, L_0x8991c3340; 1 drivers v0x89918e080_0 .net/s "product_ext", 31 0, L_0x8991c33e0; 1 drivers v0x89918e120_0 .net/s "w", 7 0, L_0x898e508c0; 1 drivers v0x89918e1c0_0 .net/s "x", 7 0, L_0x898e50820; 1 drivers L_0x8991c3200 .extend/s 16, L_0x898e50820; L_0x8991c32a0 .extend/s 16, L_0x898e508c0; L_0x8991c3340 .arith/mult 16, L_0x8991c3200, L_0x8991c32a0; L_0x898e506e0 .part L_0x8991c3340, 15, 1; L_0x898e50780 .repeat 16, 16, L_0x898e506e0; L_0x8991c33e0 .concat [ 16 16 0 0], L_0x8991c3340, L_0x898e50780; L_0x898c97480 .arith/sum 32, L_0x8988554e0, L_0x8991c33e0; S_0x898e1bd80 .scope generate, "GEN_MAC[31]" "GEN_MAC[31]" 6 17, 6 17 0, S_0x898e11e00; .timescale 0 0; P_0x89917ca00 .param/l "i" 1 6 17, +C4<011111>; S_0x898e24000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e1bd80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ec40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ec80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ecc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89918e260_0 .net/s *"_ivl_0", 15 0, L_0x8991c3480; 1 drivers v0x89918e300_0 .net/s *"_ivl_2", 15 0, L_0x8991c3520; 1 drivers v0x89918e3a0_0 .net *"_ivl_7", 0 0, L_0x898e50960; 1 drivers v0x89918e440_0 .net *"_ivl_9", 15 0, L_0x898e50a00; 1 drivers L_0x898855528 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89918e4e0_0 .net/s "acc_in", 31 0, L_0x898855528; 1 drivers v0x89918e580_0 .net/s "acc_out", 31 0, L_0x898c97520; alias, 1 drivers v0x89918e620_0 .net/s "product", 15 0, L_0x8991c35c0; 1 drivers v0x89918e6c0_0 .net/s "product_ext", 31 0, L_0x8991c3660; 1 drivers v0x89918e760_0 .net/s "w", 7 0, L_0x898e50b40; 1 drivers v0x89918e800_0 .net/s "x", 7 0, L_0x898e50aa0; 1 drivers L_0x8991c3480 .extend/s 16, L_0x898e50aa0; L_0x8991c3520 .extend/s 16, L_0x898e50b40; L_0x8991c35c0 .arith/mult 16, L_0x8991c3480, L_0x8991c3520; L_0x898e50960 .part L_0x8991c35c0, 15, 1; L_0x898e50a00 .repeat 16, 16, L_0x898e50960; L_0x8991c3660 .concat [ 16 16 0 0], L_0x8991c35c0, L_0x898e50a00; L_0x898c97520 .arith/sum 32, L_0x898855528, L_0x8991c3660; S_0x898e24180 .scope generate, "GEN_NEURON[2]" "GEN_NEURON[2]" 4 34, 4 34 0, S_0x100d3aa50; .timescale 0 0; P_0x89917ca40 .param/l "n" 1 4 34, +C4<010>; S_0x898e24300 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0x898e24180; .timescale 0 0; .port_info 0 /INPUT 1 "clk"; .port_info 1 /INPUT 1 "rst"; .port_info 2 /INPUT 1 "start"; .port_info 3 /INPUT 256 "x_bus"; .port_info 4 /INPUT 256 "w_bus"; .port_info 5 /INPUT 8 "bias"; .port_info 6 /OUTPUT 8 "y"; .port_info 7 /OUTPUT 1 "busy"; .port_info 8 /OUTPUT 1 "done"; P_0x898e24480 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>; P_0x898e244c0 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>; P_0x898e24500 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000000001>; P_0x898e24540 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000001>; P_0x898e24580 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000000100000>; P_0x898e245c0 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000100000>; v0x8991a4d20_0 .net *"_ivl_0", 31 0, L_0x8991c37a0; 1 drivers v0x8991a4dc0_0 .net *"_ivl_11", 31 0, L_0x8991c38e0; 1 drivers v0x8991a4e60_0 .net *"_ivl_14", 31 0, L_0x8991c3980; 1 drivers L_0x898855648 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a4f00_0 .net *"_ivl_17", 30 0, L_0x898855648; 1 drivers L_0x898855690 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x8991a4fa0_0 .net/2u *"_ivl_18", 31 0, L_0x898855690; 1 drivers v0x8991a5040_0 .net *"_ivl_21", 31 0, L_0x8991c3a20; 1 drivers L_0x8988556d8 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x8991a50e0_0 .net/2u *"_ivl_22", 31 0, L_0x8988556d8; 1 drivers v0x8991a5180_0 .net *"_ivl_25", 31 0, L_0x8991c3ac0; 1 drivers v0x8991a5220_0 .net *"_ivl_29", 0 0, L_0x898e61fe0; 1 drivers L_0x898855570 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a52c0_0 .net *"_ivl_3", 30 0, L_0x898855570; 1 drivers v0x8991a5360_0 .net *"_ivl_31", 23 0, L_0x898e62080; 1 drivers L_0x8988555b8 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x8991a5400_0 .net/2u *"_ivl_4", 31 0, L_0x8988555b8; 1 drivers v0x8991a54a0_0 .net *"_ivl_7", 31 0, L_0x8991c3840; 1 drivers L_0x898855600 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x8991a5540_0 .net/2u *"_ivl_8", 31 0, L_0x898855600; 1 drivers v0x8991a55e0_0 .var/s "acc", 31 0; v0x8991a5680_0 .net/s "acc_next", 31 0, L_0x898e58b40; 1 drivers v0x8991a5720_0 .net/s "bias", 7 0, L_0x898e621c0; 1 drivers v0x8991a57c0_0 .net/s "bias_ext", 31 0, L_0x8991c8be0; 1 drivers v0x8991a5860_0 .var "busy", 0 0; v0x8991a5900_0 .net "clk", 0 0, v0x8991b8820_0; alias, 1 drivers v0x8991a59a0_0 .var "done", 0 0; v0x8991a5a40_0 .net/s "final_acc", 31 0, L_0x898e58be0; 1 drivers v0x8991a5ae0_0 .var "group_index", 0 0; v0x8991a5b80_0 .net "rst", 0 0, v0x8991b8b40_0; alias, 1 drivers v0x8991a5c20_0 .net "start", 0 0, v0x8991b8be0_0; alias, 1 drivers v0x8991a5cc0_0 .net/s "w_bus", 255 0, L_0x898e62120; 1 drivers v0x8991a5d60_0 .net/s "w_group", 255 0, L_0x898e50f00; 1 drivers v0x8991a5e00_0 .net/s "x_bus", 255 0, v0x8991b8d20_0; alias, 1 drivers v0x8991a5ea0_0 .net/s "x_group", 255 0, L_0x898e50e60; 1 drivers v0x8991a5f40_0 .var/s "y", 7 0; L_0x8991c37a0 .concat [ 1 31 0 0], v0x8991a5ae0_0, L_0x898855570; L_0x8991c3840 .arith/mult 32, L_0x8991c37a0, L_0x8988555b8; L_0x8991c38e0 .arith/mult 32, L_0x8991c3840, L_0x898855600; L_0x898e50e60 .part/v v0x8991b8d20_0, L_0x8991c38e0, 256; L_0x8991c3980 .concat [ 1 31 0 0], v0x8991a5ae0_0, L_0x898855648; L_0x8991c3a20 .arith/mult 32, L_0x8991c3980, L_0x898855690; L_0x8991c3ac0 .arith/mult 32, L_0x8991c3a20, L_0x8988556d8; L_0x898e50f00 .part/v L_0x898e62120, L_0x8991c3ac0, 256; L_0x898e61fe0 .part L_0x898e621c0, 7, 1; L_0x898e62080 .repeat 24, 24, L_0x898e61fe0; L_0x8991c8be0 .concat [ 8 24 0 0], L_0x898e621c0, L_0x898e62080; L_0x898e58be0 .arith/sum 32, L_0x898e58b40, L_0x8991c8be0; S_0x898e24600 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0x898e24300; .timescale 0 0; .port_info 0 /INPUT 256 "x_bus"; .port_info 1 /INPUT 256 "w_bus"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ed00 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>; P_0x89916ed40 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>; P_0x89916ed80 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000100000>; v0x8991a48c0_0 .net/s "acc_in", 31 0, v0x8991a55e0_0; 1 drivers v0x8991a4960_0 .net/s "acc_out", 31 0, L_0x898e58b40; alias, 1 drivers v0x8991a4a00_0 .var/i "j", 31 0; v0x8991a4aa0 .array "products", 31 0; v0x8991a4aa0_0 .net/s v0x8991a4aa0 0, 31 0, L_0x898c97700; 1 drivers v0x8991a4aa0_1 .net/s v0x8991a4aa0 1, 31 0, L_0x898c977a0; 1 drivers v0x8991a4aa0_2 .net/s v0x8991a4aa0 2, 31 0, L_0x898c97840; 1 drivers v0x8991a4aa0_3 .net/s v0x8991a4aa0 3, 31 0, L_0x898c978e0; 1 drivers v0x8991a4aa0_4 .net/s v0x8991a4aa0 4, 31 0, L_0x898c97980; 1 drivers v0x8991a4aa0_5 .net/s v0x8991a4aa0 5, 31 0, L_0x898c97a20; 1 drivers v0x8991a4aa0_6 .net/s v0x8991a4aa0 6, 31 0, L_0x898c97ac0; 1 drivers v0x8991a4aa0_7 .net/s v0x8991a4aa0 7, 31 0, L_0x898c97b60; 1 drivers v0x8991a4aa0_8 .net/s v0x8991a4aa0 8, 31 0, L_0x898c97c00; 1 drivers v0x8991a4aa0_9 .net/s v0x8991a4aa0 9, 31 0, L_0x898c97ca0; 1 drivers v0x8991a4aa0_10 .net/s v0x8991a4aa0 10, 31 0, L_0x898c97d40; 1 drivers v0x8991a4aa0_11 .net/s v0x8991a4aa0 11, 31 0, L_0x898c97de0; 1 drivers v0x8991a4aa0_12 .net/s v0x8991a4aa0 12, 31 0, L_0x898c97e80; 1 drivers v0x8991a4aa0_13 .net/s v0x8991a4aa0 13, 31 0, L_0x898c97f20; 1 drivers v0x8991a4aa0_14 .net/s v0x8991a4aa0 14, 31 0, L_0x898e58000; 1 drivers v0x8991a4aa0_15 .net/s v0x8991a4aa0 15, 31 0, L_0x898e580a0; 1 drivers v0x8991a4aa0_16 .net/s v0x8991a4aa0 16, 31 0, L_0x898e58140; 1 drivers v0x8991a4aa0_17 .net/s v0x8991a4aa0 17, 31 0, L_0x898e581e0; 1 drivers v0x8991a4aa0_18 .net/s v0x8991a4aa0 18, 31 0, L_0x898e58280; 1 drivers v0x8991a4aa0_19 .net/s v0x8991a4aa0 19, 31 0, L_0x898e58320; 1 drivers v0x8991a4aa0_20 .net/s v0x8991a4aa0 20, 31 0, L_0x898e583c0; 1 drivers v0x8991a4aa0_21 .net/s v0x8991a4aa0 21, 31 0, L_0x898e58460; 1 drivers v0x8991a4aa0_22 .net/s v0x8991a4aa0 22, 31 0, L_0x898e58500; 1 drivers v0x8991a4aa0_23 .net/s v0x8991a4aa0 23, 31 0, L_0x898e585a0; 1 drivers v0x8991a4aa0_24 .net/s v0x8991a4aa0 24, 31 0, L_0x898e58640; 1 drivers v0x8991a4aa0_25 .net/s v0x8991a4aa0 25, 31 0, L_0x898e586e0; 1 drivers v0x8991a4aa0_26 .net/s v0x8991a4aa0 26, 31 0, L_0x898e58780; 1 drivers v0x8991a4aa0_27 .net/s v0x8991a4aa0 27, 31 0, L_0x898e58820; 1 drivers v0x8991a4aa0_28 .net/s v0x8991a4aa0 28, 31 0, L_0x898e588c0; 1 drivers v0x8991a4aa0_29 .net/s v0x8991a4aa0 29, 31 0, L_0x898e58960; 1 drivers v0x8991a4aa0_30 .net/s v0x8991a4aa0 30, 31 0, L_0x898e58a00; 1 drivers v0x8991a4aa0_31 .net/s v0x8991a4aa0 31, 31 0, L_0x898e58aa0; 1 drivers v0x8991a4b40_0 .var/s "sum", 31 0; v0x8991a4be0_0 .net/s "w_bus", 255 0, L_0x898e50f00; alias, 1 drivers v0x8991a4c80_0 .net/s "x_bus", 255 0, L_0x898e50e60; alias, 1 drivers E_0x898e09040/0 .event anyedge, v0x8991a4b40_0, v0x899190320_0, v0x899190960_0, v0x899190fa0_0; E_0x898e09040/1 .event anyedge, v0x8991915e0_0, v0x899191c20_0, v0x899192260_0, v0x8991928a0_0; E_0x898e09040/2 .event anyedge, v0x899192ee0_0, v0x899193520_0, v0x899193b60_0, v0x8991941e0_0; E_0x898e09040/3 .event anyedge, v0x899194820_0, v0x899194e60_0, v0x8991954a0_0, v0x899195ae0_0; E_0x898e09040/4 .event anyedge, v0x899196120_0, v0x899196760_0, v0x899196da0_0, v0x8991973e0_0; E_0x898e09040/5 .event anyedge, v0x899197a20_0, v0x8991980a0_0, v0x8991986e0_0, v0x899198d20_0; E_0x898e09040/6 .event anyedge, v0x899199360_0, v0x8991999a0_0, v0x899199fe0_0, v0x89919a620_0; E_0x898e09040/7 .event anyedge, v0x89919ac60_0, v0x89919b2a0_0, v0x89919b8e0_0, v0x89919bf20_0; E_0x898e09040/8 .event anyedge, v0x8991a45a0_0; E_0x898e09040 .event/or E_0x898e09040/0, E_0x898e09040/1, E_0x898e09040/2, E_0x898e09040/3, E_0x898e09040/4, E_0x898e09040/5, E_0x898e09040/6, E_0x898e09040/7, E_0x898e09040/8; L_0x898e510e0 .part L_0x898e50e60, 0, 8; L_0x898e51180 .part L_0x898e50f00, 0, 8; L_0x898e51360 .part L_0x898e50e60, 8, 8; L_0x898e51400 .part L_0x898e50f00, 8, 8; L_0x898e515e0 .part L_0x898e50e60, 16, 8; L_0x898e51680 .part L_0x898e50f00, 16, 8; L_0x898e51860 .part L_0x898e50e60, 24, 8; L_0x898e51900 .part L_0x898e50f00, 24, 8; L_0x898e51ae0 .part L_0x898e50e60, 32, 8; L_0x898e51b80 .part L_0x898e50f00, 32, 8; L_0x898e51d60 .part L_0x898e50e60, 40, 8; L_0x898e51e00 .part L_0x898e50f00, 40, 8; L_0x898e51fe0 .part L_0x898e50e60, 48, 8; L_0x898e52080 .part L_0x898e50f00, 48, 8; L_0x898e52260 .part L_0x898e50e60, 56, 8; L_0x898e52300 .part L_0x898e50f00, 56, 8; L_0x898e524e0 .part L_0x898e50e60, 64, 8; L_0x898e52620 .part L_0x898e50f00, 64, 8; L_0x898e52800 .part L_0x898e50e60, 72, 8; L_0x898e528a0 .part L_0x898e50f00, 72, 8; L_0x898e52a80 .part L_0x898e50e60, 80, 8; L_0x898e52580 .part L_0x898e50f00, 80, 8; L_0x898e52c60 .part L_0x898e50e60, 88, 8; L_0x898e52d00 .part L_0x898e50f00, 88, 8; L_0x898e52ee0 .part L_0x898e50e60, 96, 8; L_0x898e52f80 .part L_0x898e50f00, 96, 8; L_0x898e53160 .part L_0x898e50e60, 104, 8; L_0x898e53200 .part L_0x898e50f00, 104, 8; L_0x898e533e0 .part L_0x898e50e60, 112, 8; L_0x898e53480 .part L_0x898e50f00, 112, 8; L_0x898e53660 .part L_0x898e50e60, 120, 8; L_0x898e53700 .part L_0x898e50f00, 120, 8; L_0x898e538e0 .part L_0x898e50e60, 128, 8; L_0x898e53980 .part L_0x898e50f00, 128, 8; L_0x898e53b60 .part L_0x898e50e60, 136, 8; L_0x898e53c00 .part L_0x898e50f00, 136, 8; L_0x898e53de0 .part L_0x898e50e60, 144, 8; L_0x898e53e80 .part L_0x898e50f00, 144, 8; L_0x898e600a0 .part L_0x898e50e60, 152, 8; L_0x898e60140 .part L_0x898e50f00, 152, 8; L_0x898e60320 .part L_0x898e50e60, 160, 8; L_0x898e603c0 .part L_0x898e50f00, 160, 8; L_0x898e605a0 .part L_0x898e50e60, 168, 8; L_0x898e60640 .part L_0x898e50f00, 168, 8; L_0x898e60820 .part L_0x898e50e60, 176, 8; L_0x898e608c0 .part L_0x898e50f00, 176, 8; L_0x898e60aa0 .part L_0x898e50e60, 184, 8; L_0x898e60b40 .part L_0x898e50f00, 184, 8; L_0x898e60d20 .part L_0x898e50e60, 192, 8; L_0x898e60dc0 .part L_0x898e50f00, 192, 8; L_0x898e60fa0 .part L_0x898e50e60, 200, 8; L_0x898e61040 .part L_0x898e50f00, 200, 8; L_0x898e61220 .part L_0x898e50e60, 208, 8; L_0x898e612c0 .part L_0x898e50f00, 208, 8; L_0x898e614a0 .part L_0x898e50e60, 216, 8; L_0x898e61540 .part L_0x898e50f00, 216, 8; L_0x898e61720 .part L_0x898e50e60, 224, 8; L_0x898e617c0 .part L_0x898e50f00, 224, 8; L_0x898e619a0 .part L_0x898e50e60, 232, 8; L_0x898e61a40 .part L_0x898e50f00, 232, 8; L_0x898e61c20 .part L_0x898e50e60, 240, 8; L_0x898e61cc0 .part L_0x898e50f00, 240, 8; L_0x898e61ea0 .part L_0x898e50e60, 248, 8; L_0x898e61f40 .part L_0x898e50f00, 248, 8; L_0x898e58b40 .arith/sum 32, v0x8991a55e0_0, v0x8991a4b40_0; S_0x898e24780 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917ca80 .param/l "i" 1 6 17, +C4<00>; S_0x898e24900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e24780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916edc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ee00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ee40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899190000_0 .net/s *"_ivl_0", 15 0, L_0x8991c3b60; 1 drivers v0x8991900a0_0 .net/s *"_ivl_2", 15 0, L_0x8991c3c00; 1 drivers v0x899190140_0 .net *"_ivl_7", 0 0, L_0x898e50fa0; 1 drivers v0x8991901e0_0 .net *"_ivl_9", 15 0, L_0x898e51040; 1 drivers L_0x898855720 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899190280_0 .net/s "acc_in", 31 0, L_0x898855720; 1 drivers v0x899190320_0 .net/s "acc_out", 31 0, L_0x898c97700; alias, 1 drivers v0x8991903c0_0 .net/s "product", 15 0, L_0x8991c3ca0; 1 drivers v0x899190460_0 .net/s "product_ext", 31 0, L_0x8991c3d40; 1 drivers v0x899190500_0 .net/s "w", 7 0, L_0x898e51180; 1 drivers v0x8991905a0_0 .net/s "x", 7 0, L_0x898e510e0; 1 drivers L_0x8991c3b60 .extend/s 16, L_0x898e510e0; L_0x8991c3c00 .extend/s 16, L_0x898e51180; L_0x8991c3ca0 .arith/mult 16, L_0x8991c3b60, L_0x8991c3c00; L_0x898e50fa0 .part L_0x8991c3ca0, 15, 1; L_0x898e51040 .repeat 16, 16, L_0x898e50fa0; L_0x8991c3d40 .concat [ 16 16 0 0], L_0x8991c3ca0, L_0x898e51040; L_0x898c97700 .arith/sum 32, L_0x898855720, L_0x8991c3d40; S_0x898e24a80 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cac0 .param/l "i" 1 6 17, +C4<01>; S_0x898e24c00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e24a80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ee80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916eec0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ef00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899190640_0 .net/s *"_ivl_0", 15 0, L_0x8991c3de0; 1 drivers v0x8991906e0_0 .net/s *"_ivl_2", 15 0, L_0x8991c3e80; 1 drivers v0x899190780_0 .net *"_ivl_7", 0 0, L_0x898e51220; 1 drivers v0x899190820_0 .net *"_ivl_9", 15 0, L_0x898e512c0; 1 drivers L_0x898855768 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991908c0_0 .net/s "acc_in", 31 0, L_0x898855768; 1 drivers v0x899190960_0 .net/s "acc_out", 31 0, L_0x898c977a0; alias, 1 drivers v0x899190a00_0 .net/s "product", 15 0, L_0x8991c3f20; 1 drivers v0x899190aa0_0 .net/s "product_ext", 31 0, L_0x8991c4000; 1 drivers v0x899190b40_0 .net/s "w", 7 0, L_0x898e51400; 1 drivers v0x899190be0_0 .net/s "x", 7 0, L_0x898e51360; 1 drivers L_0x8991c3de0 .extend/s 16, L_0x898e51360; L_0x8991c3e80 .extend/s 16, L_0x898e51400; L_0x8991c3f20 .arith/mult 16, L_0x8991c3de0, L_0x8991c3e80; L_0x898e51220 .part L_0x8991c3f20, 15, 1; L_0x898e512c0 .repeat 16, 16, L_0x898e51220; L_0x8991c4000 .concat [ 16 16 0 0], L_0x8991c3f20, L_0x898e512c0; L_0x898c977a0 .arith/sum 32, L_0x898855768, L_0x8991c4000; S_0x898e24d80 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cb00 .param/l "i" 1 6 17, +C4<010>; S_0x898e24f00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e24d80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ef40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ef80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916efc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899190c80_0 .net/s *"_ivl_0", 15 0, L_0x8991c40a0; 1 drivers v0x899190d20_0 .net/s *"_ivl_2", 15 0, L_0x8991c4140; 1 drivers v0x899190dc0_0 .net *"_ivl_7", 0 0, L_0x898e514a0; 1 drivers v0x899190e60_0 .net *"_ivl_9", 15 0, L_0x898e51540; 1 drivers L_0x8988557b0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899190f00_0 .net/s "acc_in", 31 0, L_0x8988557b0; 1 drivers v0x899190fa0_0 .net/s "acc_out", 31 0, L_0x898c97840; alias, 1 drivers v0x899191040_0 .net/s "product", 15 0, L_0x8991c41e0; 1 drivers v0x8991910e0_0 .net/s "product_ext", 31 0, L_0x8991c4280; 1 drivers v0x899191180_0 .net/s "w", 7 0, L_0x898e51680; 1 drivers v0x899191220_0 .net/s "x", 7 0, L_0x898e515e0; 1 drivers L_0x8991c40a0 .extend/s 16, L_0x898e515e0; L_0x8991c4140 .extend/s 16, L_0x898e51680; L_0x8991c41e0 .arith/mult 16, L_0x8991c40a0, L_0x8991c4140; L_0x898e514a0 .part L_0x8991c41e0, 15, 1; L_0x898e51540 .repeat 16, 16, L_0x898e514a0; L_0x8991c4280 .concat [ 16 16 0 0], L_0x8991c41e0, L_0x898e51540; L_0x898c97840 .arith/sum 32, L_0x8988557b0, L_0x8991c4280; S_0x898e25080 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cb40 .param/l "i" 1 6 17, +C4<011>; S_0x898e25200 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e25080; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f000 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f040 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f080 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991912c0_0 .net/s *"_ivl_0", 15 0, L_0x8991c4320; 1 drivers v0x899191360_0 .net/s *"_ivl_2", 15 0, L_0x8991c43c0; 1 drivers v0x899191400_0 .net *"_ivl_7", 0 0, L_0x898e51720; 1 drivers v0x8991914a0_0 .net *"_ivl_9", 15 0, L_0x898e517c0; 1 drivers L_0x8988557f8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899191540_0 .net/s "acc_in", 31 0, L_0x8988557f8; 1 drivers v0x8991915e0_0 .net/s "acc_out", 31 0, L_0x898c978e0; alias, 1 drivers v0x899191680_0 .net/s "product", 15 0, L_0x8991c4460; 1 drivers v0x899191720_0 .net/s "product_ext", 31 0, L_0x8991c4500; 1 drivers v0x8991917c0_0 .net/s "w", 7 0, L_0x898e51900; 1 drivers v0x899191860_0 .net/s "x", 7 0, L_0x898e51860; 1 drivers L_0x8991c4320 .extend/s 16, L_0x898e51860; L_0x8991c43c0 .extend/s 16, L_0x898e51900; L_0x8991c4460 .arith/mult 16, L_0x8991c4320, L_0x8991c43c0; L_0x898e51720 .part L_0x8991c4460, 15, 1; L_0x898e517c0 .repeat 16, 16, L_0x898e51720; L_0x8991c4500 .concat [ 16 16 0 0], L_0x8991c4460, L_0x898e517c0; L_0x898c978e0 .arith/sum 32, L_0x8988557f8, L_0x8991c4500; S_0x898e25380 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cb80 .param/l "i" 1 6 17, +C4<0100>; S_0x898e25500 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e25380; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f0c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f100 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f140 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899191900_0 .net/s *"_ivl_0", 15 0, L_0x8991c45a0; 1 drivers v0x8991919a0_0 .net/s *"_ivl_2", 15 0, L_0x8991c4640; 1 drivers v0x899191a40_0 .net *"_ivl_7", 0 0, L_0x898e519a0; 1 drivers v0x899191ae0_0 .net *"_ivl_9", 15 0, L_0x898e51a40; 1 drivers L_0x898855840 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899191b80_0 .net/s "acc_in", 31 0, L_0x898855840; 1 drivers v0x899191c20_0 .net/s "acc_out", 31 0, L_0x898c97980; alias, 1 drivers v0x899191cc0_0 .net/s "product", 15 0, L_0x8991c46e0; 1 drivers v0x899191d60_0 .net/s "product_ext", 31 0, L_0x8991c4780; 1 drivers v0x899191e00_0 .net/s "w", 7 0, L_0x898e51b80; 1 drivers v0x899191ea0_0 .net/s "x", 7 0, L_0x898e51ae0; 1 drivers L_0x8991c45a0 .extend/s 16, L_0x898e51ae0; L_0x8991c4640 .extend/s 16, L_0x898e51b80; L_0x8991c46e0 .arith/mult 16, L_0x8991c45a0, L_0x8991c4640; L_0x898e519a0 .part L_0x8991c46e0, 15, 1; L_0x898e51a40 .repeat 16, 16, L_0x898e519a0; L_0x8991c4780 .concat [ 16 16 0 0], L_0x8991c46e0, L_0x898e51a40; L_0x898c97980 .arith/sum 32, L_0x898855840, L_0x8991c4780; S_0x898e25680 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cbc0 .param/l "i" 1 6 17, +C4<0101>; S_0x898e25800 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e25680; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f180 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f1c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f200 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899191f40_0 .net/s *"_ivl_0", 15 0, L_0x8991c4820; 1 drivers v0x899191fe0_0 .net/s *"_ivl_2", 15 0, L_0x8991c48c0; 1 drivers v0x899192080_0 .net *"_ivl_7", 0 0, L_0x898e51c20; 1 drivers v0x899192120_0 .net *"_ivl_9", 15 0, L_0x898e51cc0; 1 drivers L_0x898855888 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991921c0_0 .net/s "acc_in", 31 0, L_0x898855888; 1 drivers v0x899192260_0 .net/s "acc_out", 31 0, L_0x898c97a20; alias, 1 drivers v0x899192300_0 .net/s "product", 15 0, L_0x8991c4960; 1 drivers v0x8991923a0_0 .net/s "product_ext", 31 0, L_0x8991c4a00; 1 drivers v0x899192440_0 .net/s "w", 7 0, L_0x898e51e00; 1 drivers v0x8991924e0_0 .net/s "x", 7 0, L_0x898e51d60; 1 drivers L_0x8991c4820 .extend/s 16, L_0x898e51d60; L_0x8991c48c0 .extend/s 16, L_0x898e51e00; L_0x8991c4960 .arith/mult 16, L_0x8991c4820, L_0x8991c48c0; L_0x898e51c20 .part L_0x8991c4960, 15, 1; L_0x898e51cc0 .repeat 16, 16, L_0x898e51c20; L_0x8991c4a00 .concat [ 16 16 0 0], L_0x8991c4960, L_0x898e51cc0; L_0x898c97a20 .arith/sum 32, L_0x898855888, L_0x8991c4a00; S_0x898e25980 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cc00 .param/l "i" 1 6 17, +C4<0110>; S_0x898e25b00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e25980; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f240 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f280 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f2c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899192580_0 .net/s *"_ivl_0", 15 0, L_0x8991c4aa0; 1 drivers v0x899192620_0 .net/s *"_ivl_2", 15 0, L_0x8991c4b40; 1 drivers v0x8991926c0_0 .net *"_ivl_7", 0 0, L_0x898e51ea0; 1 drivers v0x899192760_0 .net *"_ivl_9", 15 0, L_0x898e51f40; 1 drivers L_0x8988558d0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899192800_0 .net/s "acc_in", 31 0, L_0x8988558d0; 1 drivers v0x8991928a0_0 .net/s "acc_out", 31 0, L_0x898c97ac0; alias, 1 drivers v0x899192940_0 .net/s "product", 15 0, L_0x8991c4be0; 1 drivers v0x8991929e0_0 .net/s "product_ext", 31 0, L_0x8991c4c80; 1 drivers v0x899192a80_0 .net/s "w", 7 0, L_0x898e52080; 1 drivers v0x899192b20_0 .net/s "x", 7 0, L_0x898e51fe0; 1 drivers L_0x8991c4aa0 .extend/s 16, L_0x898e51fe0; L_0x8991c4b40 .extend/s 16, L_0x898e52080; L_0x8991c4be0 .arith/mult 16, L_0x8991c4aa0, L_0x8991c4b40; L_0x898e51ea0 .part L_0x8991c4be0, 15, 1; L_0x898e51f40 .repeat 16, 16, L_0x898e51ea0; L_0x8991c4c80 .concat [ 16 16 0 0], L_0x8991c4be0, L_0x898e51f40; L_0x898c97ac0 .arith/sum 32, L_0x8988558d0, L_0x8991c4c80; S_0x898e25c80 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cc40 .param/l "i" 1 6 17, +C4<0111>; S_0x898e25e00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e25c80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f300 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f340 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f380 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899192bc0_0 .net/s *"_ivl_0", 15 0, L_0x8991c4d20; 1 drivers v0x899192c60_0 .net/s *"_ivl_2", 15 0, L_0x8991c4dc0; 1 drivers v0x899192d00_0 .net *"_ivl_7", 0 0, L_0x898e52120; 1 drivers v0x899192da0_0 .net *"_ivl_9", 15 0, L_0x898e521c0; 1 drivers L_0x898855918 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899192e40_0 .net/s "acc_in", 31 0, L_0x898855918; 1 drivers v0x899192ee0_0 .net/s "acc_out", 31 0, L_0x898c97b60; alias, 1 drivers v0x899192f80_0 .net/s "product", 15 0, L_0x8991c4e60; 1 drivers v0x899193020_0 .net/s "product_ext", 31 0, L_0x8991c4f00; 1 drivers v0x8991930c0_0 .net/s "w", 7 0, L_0x898e52300; 1 drivers v0x899193160_0 .net/s "x", 7 0, L_0x898e52260; 1 drivers L_0x8991c4d20 .extend/s 16, L_0x898e52260; L_0x8991c4dc0 .extend/s 16, L_0x898e52300; L_0x8991c4e60 .arith/mult 16, L_0x8991c4d20, L_0x8991c4dc0; L_0x898e52120 .part L_0x8991c4e60, 15, 1; L_0x898e521c0 .repeat 16, 16, L_0x898e52120; L_0x8991c4f00 .concat [ 16 16 0 0], L_0x8991c4e60, L_0x898e521c0; L_0x898c97b60 .arith/sum 32, L_0x898855918, L_0x8991c4f00; S_0x898e25f80 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cc80 .param/l "i" 1 6 17, +C4<01000>; S_0x898e26100 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e25f80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f3c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f400 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f440 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899193200_0 .net/s *"_ivl_0", 15 0, L_0x8991c4fa0; 1 drivers v0x8991932a0_0 .net/s *"_ivl_2", 15 0, L_0x8991c5040; 1 drivers v0x899193340_0 .net *"_ivl_7", 0 0, L_0x898e523a0; 1 drivers v0x8991933e0_0 .net *"_ivl_9", 15 0, L_0x898e52440; 1 drivers L_0x898855960 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899193480_0 .net/s "acc_in", 31 0, L_0x898855960; 1 drivers v0x899193520_0 .net/s "acc_out", 31 0, L_0x898c97c00; alias, 1 drivers v0x8991935c0_0 .net/s "product", 15 0, L_0x8991c50e0; 1 drivers v0x899193660_0 .net/s "product_ext", 31 0, L_0x8991c5180; 1 drivers v0x899193700_0 .net/s "w", 7 0, L_0x898e52620; 1 drivers v0x8991937a0_0 .net/s "x", 7 0, L_0x898e524e0; 1 drivers L_0x8991c4fa0 .extend/s 16, L_0x898e524e0; L_0x8991c5040 .extend/s 16, L_0x898e52620; L_0x8991c50e0 .arith/mult 16, L_0x8991c4fa0, L_0x8991c5040; L_0x898e523a0 .part L_0x8991c50e0, 15, 1; L_0x898e52440 .repeat 16, 16, L_0x898e523a0; L_0x8991c5180 .concat [ 16 16 0 0], L_0x8991c50e0, L_0x898e52440; L_0x898c97c00 .arith/sum 32, L_0x898855960, L_0x8991c5180; S_0x898e26280 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917ccc0 .param/l "i" 1 6 17, +C4<01001>; S_0x898e26400 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e26280; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f480 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f4c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f500 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899193840_0 .net/s *"_ivl_0", 15 0, L_0x8991c5220; 1 drivers v0x8991938e0_0 .net/s *"_ivl_2", 15 0, L_0x8991c52c0; 1 drivers v0x899193980_0 .net *"_ivl_7", 0 0, L_0x898e526c0; 1 drivers v0x899193a20_0 .net *"_ivl_9", 15 0, L_0x898e52760; 1 drivers L_0x8988559a8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899193ac0_0 .net/s "acc_in", 31 0, L_0x8988559a8; 1 drivers v0x899193b60_0 .net/s "acc_out", 31 0, L_0x898c97ca0; alias, 1 drivers v0x899193c00_0 .net/s "product", 15 0, L_0x8991c5360; 1 drivers v0x899193ca0_0 .net/s "product_ext", 31 0, L_0x8991c5400; 1 drivers v0x899193d40_0 .net/s "w", 7 0, L_0x898e528a0; 1 drivers v0x899193de0_0 .net/s "x", 7 0, L_0x898e52800; 1 drivers L_0x8991c5220 .extend/s 16, L_0x898e52800; L_0x8991c52c0 .extend/s 16, L_0x898e528a0; L_0x8991c5360 .arith/mult 16, L_0x8991c5220, L_0x8991c52c0; L_0x898e526c0 .part L_0x8991c5360, 15, 1; L_0x898e52760 .repeat 16, 16, L_0x898e526c0; L_0x8991c5400 .concat [ 16 16 0 0], L_0x8991c5360, L_0x898e52760; L_0x898c97ca0 .arith/sum 32, L_0x8988559a8, L_0x8991c5400; S_0x898e26580 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cd00 .param/l "i" 1 6 17, +C4<01010>; S_0x898e26700 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e26580; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f540 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f580 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f5c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899193e80_0 .net/s *"_ivl_0", 15 0, L_0x8991c54a0; 1 drivers v0x899193f20_0 .net/s *"_ivl_2", 15 0, L_0x8991c5540; 1 drivers v0x899194000_0 .net *"_ivl_7", 0 0, L_0x898e52940; 1 drivers v0x8991940a0_0 .net *"_ivl_9", 15 0, L_0x898e529e0; 1 drivers L_0x8988559f0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899194140_0 .net/s "acc_in", 31 0, L_0x8988559f0; 1 drivers v0x8991941e0_0 .net/s "acc_out", 31 0, L_0x898c97d40; alias, 1 drivers v0x899194280_0 .net/s "product", 15 0, L_0x8991c55e0; 1 drivers v0x899194320_0 .net/s "product_ext", 31 0, L_0x8991c5680; 1 drivers v0x8991943c0_0 .net/s "w", 7 0, L_0x898e52580; 1 drivers v0x899194460_0 .net/s "x", 7 0, L_0x898e52a80; 1 drivers L_0x8991c54a0 .extend/s 16, L_0x898e52a80; L_0x8991c5540 .extend/s 16, L_0x898e52580; L_0x8991c55e0 .arith/mult 16, L_0x8991c54a0, L_0x8991c5540; L_0x898e52940 .part L_0x8991c55e0, 15, 1; L_0x898e529e0 .repeat 16, 16, L_0x898e52940; L_0x8991c5680 .concat [ 16 16 0 0], L_0x8991c55e0, L_0x898e529e0; L_0x898c97d40 .arith/sum 32, L_0x8988559f0, L_0x8991c5680; S_0x898e26880 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cd40 .param/l "i" 1 6 17, +C4<01011>; S_0x898e26a00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e26880; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f600 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f640 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f680 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899194500_0 .net/s *"_ivl_0", 15 0, L_0x8991c5720; 1 drivers v0x8991945a0_0 .net/s *"_ivl_2", 15 0, L_0x8991c57c0; 1 drivers v0x899194640_0 .net *"_ivl_7", 0 0, L_0x898e52b20; 1 drivers v0x8991946e0_0 .net *"_ivl_9", 15 0, L_0x898e52bc0; 1 drivers L_0x898855a38 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899194780_0 .net/s "acc_in", 31 0, L_0x898855a38; 1 drivers v0x899194820_0 .net/s "acc_out", 31 0, L_0x898c97de0; alias, 1 drivers v0x8991948c0_0 .net/s "product", 15 0, L_0x8991c5860; 1 drivers v0x899194960_0 .net/s "product_ext", 31 0, L_0x8991c5900; 1 drivers v0x899194a00_0 .net/s "w", 7 0, L_0x898e52d00; 1 drivers v0x899194aa0_0 .net/s "x", 7 0, L_0x898e52c60; 1 drivers L_0x8991c5720 .extend/s 16, L_0x898e52c60; L_0x8991c57c0 .extend/s 16, L_0x898e52d00; L_0x8991c5860 .arith/mult 16, L_0x8991c5720, L_0x8991c57c0; L_0x898e52b20 .part L_0x8991c5860, 15, 1; L_0x898e52bc0 .repeat 16, 16, L_0x898e52b20; L_0x8991c5900 .concat [ 16 16 0 0], L_0x8991c5860, L_0x898e52bc0; L_0x898c97de0 .arith/sum 32, L_0x898855a38, L_0x8991c5900; S_0x898e26b80 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cd80 .param/l "i" 1 6 17, +C4<01100>; S_0x898e26d00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e26b80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f6c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f700 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f740 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899194b40_0 .net/s *"_ivl_0", 15 0, L_0x8991c59a0; 1 drivers v0x899194be0_0 .net/s *"_ivl_2", 15 0, L_0x8991c5a40; 1 drivers v0x899194c80_0 .net *"_ivl_7", 0 0, L_0x898e52da0; 1 drivers v0x899194d20_0 .net *"_ivl_9", 15 0, L_0x898e52e40; 1 drivers L_0x898855a80 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899194dc0_0 .net/s "acc_in", 31 0, L_0x898855a80; 1 drivers v0x899194e60_0 .net/s "acc_out", 31 0, L_0x898c97e80; alias, 1 drivers v0x899194f00_0 .net/s "product", 15 0, L_0x8991c5ae0; 1 drivers v0x899194fa0_0 .net/s "product_ext", 31 0, L_0x8991c5b80; 1 drivers v0x899195040_0 .net/s "w", 7 0, L_0x898e52f80; 1 drivers v0x8991950e0_0 .net/s "x", 7 0, L_0x898e52ee0; 1 drivers L_0x8991c59a0 .extend/s 16, L_0x898e52ee0; L_0x8991c5a40 .extend/s 16, L_0x898e52f80; L_0x8991c5ae0 .arith/mult 16, L_0x8991c59a0, L_0x8991c5a40; L_0x898e52da0 .part L_0x8991c5ae0, 15, 1; L_0x898e52e40 .repeat 16, 16, L_0x898e52da0; L_0x8991c5b80 .concat [ 16 16 0 0], L_0x8991c5ae0, L_0x898e52e40; L_0x898c97e80 .arith/sum 32, L_0x898855a80, L_0x8991c5b80; S_0x898e26e80 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cdc0 .param/l "i" 1 6 17, +C4<01101>; S_0x898e27000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e26e80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f780 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f7c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f800 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899195180_0 .net/s *"_ivl_0", 15 0, L_0x8991c5c20; 1 drivers v0x899195220_0 .net/s *"_ivl_2", 15 0, L_0x8991c5cc0; 1 drivers v0x8991952c0_0 .net *"_ivl_7", 0 0, L_0x898e53020; 1 drivers v0x899195360_0 .net *"_ivl_9", 15 0, L_0x898e530c0; 1 drivers L_0x898855ac8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899195400_0 .net/s "acc_in", 31 0, L_0x898855ac8; 1 drivers v0x8991954a0_0 .net/s "acc_out", 31 0, L_0x898c97f20; alias, 1 drivers v0x899195540_0 .net/s "product", 15 0, L_0x8991c5d60; 1 drivers v0x8991955e0_0 .net/s "product_ext", 31 0, L_0x8991c5e00; 1 drivers v0x899195680_0 .net/s "w", 7 0, L_0x898e53200; 1 drivers v0x899195720_0 .net/s "x", 7 0, L_0x898e53160; 1 drivers L_0x8991c5c20 .extend/s 16, L_0x898e53160; L_0x8991c5cc0 .extend/s 16, L_0x898e53200; L_0x8991c5d60 .arith/mult 16, L_0x8991c5c20, L_0x8991c5cc0; L_0x898e53020 .part L_0x8991c5d60, 15, 1; L_0x898e530c0 .repeat 16, 16, L_0x898e53020; L_0x8991c5e00 .concat [ 16 16 0 0], L_0x8991c5d60, L_0x898e530c0; L_0x898c97f20 .arith/sum 32, L_0x898855ac8, L_0x8991c5e00; S_0x898e27180 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917ce00 .param/l "i" 1 6 17, +C4<01110>; S_0x898e27300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e27180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f840 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f880 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f8c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991957c0_0 .net/s *"_ivl_0", 15 0, L_0x8991c5ea0; 1 drivers v0x899195860_0 .net/s *"_ivl_2", 15 0, L_0x8991c5f40; 1 drivers v0x899195900_0 .net *"_ivl_7", 0 0, L_0x898e532a0; 1 drivers v0x8991959a0_0 .net *"_ivl_9", 15 0, L_0x898e53340; 1 drivers L_0x898855b10 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899195a40_0 .net/s "acc_in", 31 0, L_0x898855b10; 1 drivers v0x899195ae0_0 .net/s "acc_out", 31 0, L_0x898e58000; alias, 1 drivers v0x899195b80_0 .net/s "product", 15 0, L_0x8991c5fe0; 1 drivers v0x899195c20_0 .net/s "product_ext", 31 0, L_0x8991c6080; 1 drivers v0x899195cc0_0 .net/s "w", 7 0, L_0x898e53480; 1 drivers v0x899195d60_0 .net/s "x", 7 0, L_0x898e533e0; 1 drivers L_0x8991c5ea0 .extend/s 16, L_0x898e533e0; L_0x8991c5f40 .extend/s 16, L_0x898e53480; L_0x8991c5fe0 .arith/mult 16, L_0x8991c5ea0, L_0x8991c5f40; L_0x898e532a0 .part L_0x8991c5fe0, 15, 1; L_0x898e53340 .repeat 16, 16, L_0x898e532a0; L_0x8991c6080 .concat [ 16 16 0 0], L_0x8991c5fe0, L_0x898e53340; L_0x898e58000 .arith/sum 32, L_0x898855b10, L_0x8991c6080; S_0x898e27480 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917ce40 .param/l "i" 1 6 17, +C4<01111>; S_0x898e27600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e27480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f900 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916f940 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916f980 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899195e00_0 .net/s *"_ivl_0", 15 0, L_0x8991c6120; 1 drivers v0x899195ea0_0 .net/s *"_ivl_2", 15 0, L_0x8991c61c0; 1 drivers v0x899195f40_0 .net *"_ivl_7", 0 0, L_0x898e53520; 1 drivers v0x899195fe0_0 .net *"_ivl_9", 15 0, L_0x898e535c0; 1 drivers L_0x898855b58 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899196080_0 .net/s "acc_in", 31 0, L_0x898855b58; 1 drivers v0x899196120_0 .net/s "acc_out", 31 0, L_0x898e580a0; alias, 1 drivers v0x8991961c0_0 .net/s "product", 15 0, L_0x8991c6260; 1 drivers v0x899196260_0 .net/s "product_ext", 31 0, L_0x8991c6300; 1 drivers v0x899196300_0 .net/s "w", 7 0, L_0x898e53700; 1 drivers v0x8991963a0_0 .net/s "x", 7 0, L_0x898e53660; 1 drivers L_0x8991c6120 .extend/s 16, L_0x898e53660; L_0x8991c61c0 .extend/s 16, L_0x898e53700; L_0x8991c6260 .arith/mult 16, L_0x8991c6120, L_0x8991c61c0; L_0x898e53520 .part L_0x8991c6260, 15, 1; L_0x898e535c0 .repeat 16, 16, L_0x898e53520; L_0x8991c6300 .concat [ 16 16 0 0], L_0x8991c6260, L_0x898e535c0; L_0x898e580a0 .arith/sum 32, L_0x898855b58, L_0x8991c6300; S_0x898e27780 .scope generate, "GEN_MAC[16]" "GEN_MAC[16]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917ce80 .param/l "i" 1 6 17, +C4<010000>; S_0x898e27900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e27780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916f9c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916fa00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916fa40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899196440_0 .net/s *"_ivl_0", 15 0, L_0x8991c63a0; 1 drivers v0x8991964e0_0 .net/s *"_ivl_2", 15 0, L_0x8991c6440; 1 drivers v0x899196580_0 .net *"_ivl_7", 0 0, L_0x898e537a0; 1 drivers v0x899196620_0 .net *"_ivl_9", 15 0, L_0x898e53840; 1 drivers L_0x898855ba0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991966c0_0 .net/s "acc_in", 31 0, L_0x898855ba0; 1 drivers v0x899196760_0 .net/s "acc_out", 31 0, L_0x898e58140; alias, 1 drivers v0x899196800_0 .net/s "product", 15 0, L_0x8991c64e0; 1 drivers v0x8991968a0_0 .net/s "product_ext", 31 0, L_0x8991c6580; 1 drivers v0x899196940_0 .net/s "w", 7 0, L_0x898e53980; 1 drivers v0x8991969e0_0 .net/s "x", 7 0, L_0x898e538e0; 1 drivers L_0x8991c63a0 .extend/s 16, L_0x898e538e0; L_0x8991c6440 .extend/s 16, L_0x898e53980; L_0x8991c64e0 .arith/mult 16, L_0x8991c63a0, L_0x8991c6440; L_0x898e537a0 .part L_0x8991c64e0, 15, 1; L_0x898e53840 .repeat 16, 16, L_0x898e537a0; L_0x8991c6580 .concat [ 16 16 0 0], L_0x8991c64e0, L_0x898e53840; L_0x898e58140 .arith/sum 32, L_0x898855ba0, L_0x8991c6580; S_0x898e27a80 .scope generate, "GEN_MAC[17]" "GEN_MAC[17]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cec0 .param/l "i" 1 6 17, +C4<010001>; S_0x898e27c00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e27a80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916fa80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916fac0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916fb00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899196a80_0 .net/s *"_ivl_0", 15 0, L_0x8991c6620; 1 drivers v0x899196b20_0 .net/s *"_ivl_2", 15 0, L_0x8991c66c0; 1 drivers v0x899196bc0_0 .net *"_ivl_7", 0 0, L_0x898e53a20; 1 drivers v0x899196c60_0 .net *"_ivl_9", 15 0, L_0x898e53ac0; 1 drivers L_0x898855be8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899196d00_0 .net/s "acc_in", 31 0, L_0x898855be8; 1 drivers v0x899196da0_0 .net/s "acc_out", 31 0, L_0x898e581e0; alias, 1 drivers v0x899196e40_0 .net/s "product", 15 0, L_0x8991c6760; 1 drivers v0x899196ee0_0 .net/s "product_ext", 31 0, L_0x8991c6800; 1 drivers v0x899196f80_0 .net/s "w", 7 0, L_0x898e53c00; 1 drivers v0x899197020_0 .net/s "x", 7 0, L_0x898e53b60; 1 drivers L_0x8991c6620 .extend/s 16, L_0x898e53b60; L_0x8991c66c0 .extend/s 16, L_0x898e53c00; L_0x8991c6760 .arith/mult 16, L_0x8991c6620, L_0x8991c66c0; L_0x898e53a20 .part L_0x8991c6760, 15, 1; L_0x898e53ac0 .repeat 16, 16, L_0x898e53a20; L_0x8991c6800 .concat [ 16 16 0 0], L_0x8991c6760, L_0x898e53ac0; L_0x898e581e0 .arith/sum 32, L_0x898855be8, L_0x8991c6800; S_0x898e27d80 .scope generate, "GEN_MAC[18]" "GEN_MAC[18]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cf00 .param/l "i" 1 6 17, +C4<010010>; S_0x898e2c000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e27d80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916fb40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916fb80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916fbc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991970c0_0 .net/s *"_ivl_0", 15 0, L_0x8991c68a0; 1 drivers v0x899197160_0 .net/s *"_ivl_2", 15 0, L_0x8991c6940; 1 drivers v0x899197200_0 .net *"_ivl_7", 0 0, L_0x898e53ca0; 1 drivers v0x8991972a0_0 .net *"_ivl_9", 15 0, L_0x898e53d40; 1 drivers L_0x898855c30 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899197340_0 .net/s "acc_in", 31 0, L_0x898855c30; 1 drivers v0x8991973e0_0 .net/s "acc_out", 31 0, L_0x898e58280; alias, 1 drivers v0x899197480_0 .net/s "product", 15 0, L_0x8991c69e0; 1 drivers v0x899197520_0 .net/s "product_ext", 31 0, L_0x8991c6a80; 1 drivers v0x8991975c0_0 .net/s "w", 7 0, L_0x898e53e80; 1 drivers v0x899197660_0 .net/s "x", 7 0, L_0x898e53de0; 1 drivers L_0x8991c68a0 .extend/s 16, L_0x898e53de0; L_0x8991c6940 .extend/s 16, L_0x898e53e80; L_0x8991c69e0 .arith/mult 16, L_0x8991c68a0, L_0x8991c6940; L_0x898e53ca0 .part L_0x8991c69e0, 15, 1; L_0x898e53d40 .repeat 16, 16, L_0x898e53ca0; L_0x8991c6a80 .concat [ 16 16 0 0], L_0x8991c69e0, L_0x898e53d40; L_0x898e58280 .arith/sum 32, L_0x898855c30, L_0x8991c6a80; S_0x898e2c180 .scope generate, "GEN_MAC[19]" "GEN_MAC[19]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cf40 .param/l "i" 1 6 17, +C4<010011>; S_0x898e2c300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2c180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916fc00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916fc40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916fc80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899197700_0 .net/s *"_ivl_0", 15 0, L_0x8991c6b20; 1 drivers v0x8991977a0_0 .net/s *"_ivl_2", 15 0, L_0x8991c6bc0; 1 drivers v0x899197840_0 .net *"_ivl_7", 0 0, L_0x898e53f20; 1 drivers v0x8991978e0_0 .net *"_ivl_9", 15 0, L_0x898e60000; 1 drivers L_0x898855c78 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899197980_0 .net/s "acc_in", 31 0, L_0x898855c78; 1 drivers v0x899197a20_0 .net/s "acc_out", 31 0, L_0x898e58320; alias, 1 drivers v0x899197ac0_0 .net/s "product", 15 0, L_0x8991c6c60; 1 drivers v0x899197b60_0 .net/s "product_ext", 31 0, L_0x8991c6d00; 1 drivers v0x899197c00_0 .net/s "w", 7 0, L_0x898e60140; 1 drivers v0x899197ca0_0 .net/s "x", 7 0, L_0x898e600a0; 1 drivers L_0x8991c6b20 .extend/s 16, L_0x898e600a0; L_0x8991c6bc0 .extend/s 16, L_0x898e60140; L_0x8991c6c60 .arith/mult 16, L_0x8991c6b20, L_0x8991c6bc0; L_0x898e53f20 .part L_0x8991c6c60, 15, 1; L_0x898e60000 .repeat 16, 16, L_0x898e53f20; L_0x8991c6d00 .concat [ 16 16 0 0], L_0x8991c6c60, L_0x898e60000; L_0x898e58320 .arith/sum 32, L_0x898855c78, L_0x8991c6d00; S_0x898e2c480 .scope generate, "GEN_MAC[20]" "GEN_MAC[20]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cf80 .param/l "i" 1 6 17, +C4<010100>; S_0x898e2c600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2c480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916fcc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916fd00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916fd40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899197d40_0 .net/s *"_ivl_0", 15 0, L_0x8991c6da0; 1 drivers v0x899197de0_0 .net/s *"_ivl_2", 15 0, L_0x8991c6e40; 1 drivers v0x899197e80_0 .net *"_ivl_7", 0 0, L_0x898e601e0; 1 drivers v0x899197f20_0 .net *"_ivl_9", 15 0, L_0x898e60280; 1 drivers L_0x898855cc0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899198000_0 .net/s "acc_in", 31 0, L_0x898855cc0; 1 drivers v0x8991980a0_0 .net/s "acc_out", 31 0, L_0x898e583c0; alias, 1 drivers v0x899198140_0 .net/s "product", 15 0, L_0x8991c6ee0; 1 drivers v0x8991981e0_0 .net/s "product_ext", 31 0, L_0x8991c6f80; 1 drivers v0x899198280_0 .net/s "w", 7 0, L_0x898e603c0; 1 drivers v0x899198320_0 .net/s "x", 7 0, L_0x898e60320; 1 drivers L_0x8991c6da0 .extend/s 16, L_0x898e60320; L_0x8991c6e40 .extend/s 16, L_0x898e603c0; L_0x8991c6ee0 .arith/mult 16, L_0x8991c6da0, L_0x8991c6e40; L_0x898e601e0 .part L_0x8991c6ee0, 15, 1; L_0x898e60280 .repeat 16, 16, L_0x898e601e0; L_0x8991c6f80 .concat [ 16 16 0 0], L_0x8991c6ee0, L_0x898e60280; L_0x898e583c0 .arith/sum 32, L_0x898855cc0, L_0x8991c6f80; S_0x898e2c780 .scope generate, "GEN_MAC[21]" "GEN_MAC[21]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917cfc0 .param/l "i" 1 6 17, +C4<010101>; S_0x898e2c900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2c780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916fd80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916fdc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916fe00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991983c0_0 .net/s *"_ivl_0", 15 0, L_0x8991c7020; 1 drivers v0x899198460_0 .net/s *"_ivl_2", 15 0, L_0x8991c70c0; 1 drivers v0x899198500_0 .net *"_ivl_7", 0 0, L_0x898e60460; 1 drivers v0x8991985a0_0 .net *"_ivl_9", 15 0, L_0x898e60500; 1 drivers L_0x898855d08 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899198640_0 .net/s "acc_in", 31 0, L_0x898855d08; 1 drivers v0x8991986e0_0 .net/s "acc_out", 31 0, L_0x898e58460; alias, 1 drivers v0x899198780_0 .net/s "product", 15 0, L_0x8991c7160; 1 drivers v0x899198820_0 .net/s "product_ext", 31 0, L_0x8991c7200; 1 drivers v0x8991988c0_0 .net/s "w", 7 0, L_0x898e60640; 1 drivers v0x899198960_0 .net/s "x", 7 0, L_0x898e605a0; 1 drivers L_0x8991c7020 .extend/s 16, L_0x898e605a0; L_0x8991c70c0 .extend/s 16, L_0x898e60640; L_0x8991c7160 .arith/mult 16, L_0x8991c7020, L_0x8991c70c0; L_0x898e60460 .part L_0x8991c7160, 15, 1; L_0x898e60500 .repeat 16, 16, L_0x898e60460; L_0x8991c7200 .concat [ 16 16 0 0], L_0x8991c7160, L_0x898e60500; L_0x898e58460 .arith/sum 32, L_0x898855d08, L_0x8991c7200; S_0x898e2ca80 .scope generate, "GEN_MAC[22]" "GEN_MAC[22]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d000 .param/l "i" 1 6 17, +C4<010110>; S_0x898e2cc00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2ca80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916fe40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916fe80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916fec0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899198a00_0 .net/s *"_ivl_0", 15 0, L_0x8991c72a0; 1 drivers v0x899198aa0_0 .net/s *"_ivl_2", 15 0, L_0x8991c7340; 1 drivers v0x899198b40_0 .net *"_ivl_7", 0 0, L_0x898e606e0; 1 drivers v0x899198be0_0 .net *"_ivl_9", 15 0, L_0x898e60780; 1 drivers L_0x898855d50 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899198c80_0 .net/s "acc_in", 31 0, L_0x898855d50; 1 drivers v0x899198d20_0 .net/s "acc_out", 31 0, L_0x898e58500; alias, 1 drivers v0x899198dc0_0 .net/s "product", 15 0, L_0x8991c73e0; 1 drivers v0x899198e60_0 .net/s "product_ext", 31 0, L_0x8991c7480; 1 drivers v0x899198f00_0 .net/s "w", 7 0, L_0x898e608c0; 1 drivers v0x899198fa0_0 .net/s "x", 7 0, L_0x898e60820; 1 drivers L_0x8991c72a0 .extend/s 16, L_0x898e60820; L_0x8991c7340 .extend/s 16, L_0x898e608c0; L_0x8991c73e0 .arith/mult 16, L_0x8991c72a0, L_0x8991c7340; L_0x898e606e0 .part L_0x8991c73e0, 15, 1; L_0x898e60780 .repeat 16, 16, L_0x898e606e0; L_0x8991c7480 .concat [ 16 16 0 0], L_0x8991c73e0, L_0x898e60780; L_0x898e58500 .arith/sum 32, L_0x898855d50, L_0x8991c7480; S_0x898e2cd80 .scope generate, "GEN_MAC[23]" "GEN_MAC[23]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d040 .param/l "i" 1 6 17, +C4<010111>; S_0x898e2cf00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2cd80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89916ff00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89916ff40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89916ff80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899199040_0 .net/s *"_ivl_0", 15 0, L_0x8991c7520; 1 drivers v0x8991990e0_0 .net/s *"_ivl_2", 15 0, L_0x8991c75c0; 1 drivers v0x899199180_0 .net *"_ivl_7", 0 0, L_0x898e60960; 1 drivers v0x899199220_0 .net *"_ivl_9", 15 0, L_0x898e60a00; 1 drivers L_0x898855d98 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991992c0_0 .net/s "acc_in", 31 0, L_0x898855d98; 1 drivers v0x899199360_0 .net/s "acc_out", 31 0, L_0x898e585a0; alias, 1 drivers v0x899199400_0 .net/s "product", 15 0, L_0x8991c7660; 1 drivers v0x8991994a0_0 .net/s "product_ext", 31 0, L_0x8991c7700; 1 drivers v0x899199540_0 .net/s "w", 7 0, L_0x898e60b40; 1 drivers v0x8991995e0_0 .net/s "x", 7 0, L_0x898e60aa0; 1 drivers L_0x8991c7520 .extend/s 16, L_0x898e60aa0; L_0x8991c75c0 .extend/s 16, L_0x898e60b40; L_0x8991c7660 .arith/mult 16, L_0x8991c7520, L_0x8991c75c0; L_0x898e60960 .part L_0x8991c7660, 15, 1; L_0x898e60a00 .repeat 16, 16, L_0x898e60960; L_0x8991c7700 .concat [ 16 16 0 0], L_0x8991c7660, L_0x898e60a00; L_0x898e585a0 .arith/sum 32, L_0x898855d98, L_0x8991c7700; S_0x898e2d080 .scope generate, "GEN_MAC[24]" "GEN_MAC[24]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d080 .param/l "i" 1 6 17, +C4<011000>; S_0x898e2d200 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2d080; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c000 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c040 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c080 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899199680_0 .net/s *"_ivl_0", 15 0, L_0x8991c77a0; 1 drivers v0x899199720_0 .net/s *"_ivl_2", 15 0, L_0x8991c7840; 1 drivers v0x8991997c0_0 .net *"_ivl_7", 0 0, L_0x898e60be0; 1 drivers v0x899199860_0 .net *"_ivl_9", 15 0, L_0x898e60c80; 1 drivers L_0x898855de0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899199900_0 .net/s "acc_in", 31 0, L_0x898855de0; 1 drivers v0x8991999a0_0 .net/s "acc_out", 31 0, L_0x898e58640; alias, 1 drivers v0x899199a40_0 .net/s "product", 15 0, L_0x8991c78e0; 1 drivers v0x899199ae0_0 .net/s "product_ext", 31 0, L_0x8991c7980; 1 drivers v0x899199b80_0 .net/s "w", 7 0, L_0x898e60dc0; 1 drivers v0x899199c20_0 .net/s "x", 7 0, L_0x898e60d20; 1 drivers L_0x8991c77a0 .extend/s 16, L_0x898e60d20; L_0x8991c7840 .extend/s 16, L_0x898e60dc0; L_0x8991c78e0 .arith/mult 16, L_0x8991c77a0, L_0x8991c7840; L_0x898e60be0 .part L_0x8991c78e0, 15, 1; L_0x898e60c80 .repeat 16, 16, L_0x898e60be0; L_0x8991c7980 .concat [ 16 16 0 0], L_0x8991c78e0, L_0x898e60c80; L_0x898e58640 .arith/sum 32, L_0x898855de0, L_0x8991c7980; S_0x898e2d380 .scope generate, "GEN_MAC[25]" "GEN_MAC[25]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d0c0 .param/l "i" 1 6 17, +C4<011001>; S_0x898e2d500 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2d380; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c0c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c100 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c140 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x899199cc0_0 .net/s *"_ivl_0", 15 0, L_0x8991c7a20; 1 drivers v0x899199d60_0 .net/s *"_ivl_2", 15 0, L_0x8991c7ac0; 1 drivers v0x899199e00_0 .net *"_ivl_7", 0 0, L_0x898e60e60; 1 drivers v0x899199ea0_0 .net *"_ivl_9", 15 0, L_0x898e60f00; 1 drivers L_0x898855e28 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x899199f40_0 .net/s "acc_in", 31 0, L_0x898855e28; 1 drivers v0x899199fe0_0 .net/s "acc_out", 31 0, L_0x898e586e0; alias, 1 drivers v0x89919a080_0 .net/s "product", 15 0, L_0x8991c7b60; 1 drivers v0x89919a120_0 .net/s "product_ext", 31 0, L_0x8991c7c00; 1 drivers v0x89919a1c0_0 .net/s "w", 7 0, L_0x898e61040; 1 drivers v0x89919a260_0 .net/s "x", 7 0, L_0x898e60fa0; 1 drivers L_0x8991c7a20 .extend/s 16, L_0x898e60fa0; L_0x8991c7ac0 .extend/s 16, L_0x898e61040; L_0x8991c7b60 .arith/mult 16, L_0x8991c7a20, L_0x8991c7ac0; L_0x898e60e60 .part L_0x8991c7b60, 15, 1; L_0x898e60f00 .repeat 16, 16, L_0x898e60e60; L_0x8991c7c00 .concat [ 16 16 0 0], L_0x8991c7b60, L_0x898e60f00; L_0x898e586e0 .arith/sum 32, L_0x898855e28, L_0x8991c7c00; S_0x898e2d680 .scope generate, "GEN_MAC[26]" "GEN_MAC[26]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d100 .param/l "i" 1 6 17, +C4<011010>; S_0x898e2d800 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2d680; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c180 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c1c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c200 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89919a300_0 .net/s *"_ivl_0", 15 0, L_0x8991c7ca0; 1 drivers v0x89919a3a0_0 .net/s *"_ivl_2", 15 0, L_0x8991c7d40; 1 drivers v0x89919a440_0 .net *"_ivl_7", 0 0, L_0x898e610e0; 1 drivers v0x89919a4e0_0 .net *"_ivl_9", 15 0, L_0x898e61180; 1 drivers L_0x898855e70 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89919a580_0 .net/s "acc_in", 31 0, L_0x898855e70; 1 drivers v0x89919a620_0 .net/s "acc_out", 31 0, L_0x898e58780; alias, 1 drivers v0x89919a6c0_0 .net/s "product", 15 0, L_0x8991c7de0; 1 drivers v0x89919a760_0 .net/s "product_ext", 31 0, L_0x8991c7e80; 1 drivers v0x89919a800_0 .net/s "w", 7 0, L_0x898e612c0; 1 drivers v0x89919a8a0_0 .net/s "x", 7 0, L_0x898e61220; 1 drivers L_0x8991c7ca0 .extend/s 16, L_0x898e61220; L_0x8991c7d40 .extend/s 16, L_0x898e612c0; L_0x8991c7de0 .arith/mult 16, L_0x8991c7ca0, L_0x8991c7d40; L_0x898e610e0 .part L_0x8991c7de0, 15, 1; L_0x898e61180 .repeat 16, 16, L_0x898e610e0; L_0x8991c7e80 .concat [ 16 16 0 0], L_0x8991c7de0, L_0x898e61180; L_0x898e58780 .arith/sum 32, L_0x898855e70, L_0x8991c7e80; S_0x898e2d980 .scope generate, "GEN_MAC[27]" "GEN_MAC[27]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d140 .param/l "i" 1 6 17, +C4<011011>; S_0x898e2db00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2d980; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c240 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c280 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c2c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89919a940_0 .net/s *"_ivl_0", 15 0, L_0x8991c7f20; 1 drivers v0x89919a9e0_0 .net/s *"_ivl_2", 15 0, L_0x8991c8000; 1 drivers v0x89919aa80_0 .net *"_ivl_7", 0 0, L_0x898e61360; 1 drivers v0x89919ab20_0 .net *"_ivl_9", 15 0, L_0x898e61400; 1 drivers L_0x898855eb8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89919abc0_0 .net/s "acc_in", 31 0, L_0x898855eb8; 1 drivers v0x89919ac60_0 .net/s "acc_out", 31 0, L_0x898e58820; alias, 1 drivers v0x89919ad00_0 .net/s "product", 15 0, L_0x8991c80a0; 1 drivers v0x89919ada0_0 .net/s "product_ext", 31 0, L_0x8991c8140; 1 drivers v0x89919ae40_0 .net/s "w", 7 0, L_0x898e61540; 1 drivers v0x89919aee0_0 .net/s "x", 7 0, L_0x898e614a0; 1 drivers L_0x8991c7f20 .extend/s 16, L_0x898e614a0; L_0x8991c8000 .extend/s 16, L_0x898e61540; L_0x8991c80a0 .arith/mult 16, L_0x8991c7f20, L_0x8991c8000; L_0x898e61360 .part L_0x8991c80a0, 15, 1; L_0x898e61400 .repeat 16, 16, L_0x898e61360; L_0x8991c8140 .concat [ 16 16 0 0], L_0x8991c80a0, L_0x898e61400; L_0x898e58820 .arith/sum 32, L_0x898855eb8, L_0x8991c8140; S_0x898e2dc80 .scope generate, "GEN_MAC[28]" "GEN_MAC[28]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d180 .param/l "i" 1 6 17, +C4<011100>; S_0x898e2de00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2dc80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c300 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c340 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c380 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89919af80_0 .net/s *"_ivl_0", 15 0, L_0x8991c81e0; 1 drivers v0x89919b020_0 .net/s *"_ivl_2", 15 0, L_0x8991c8280; 1 drivers v0x89919b0c0_0 .net *"_ivl_7", 0 0, L_0x898e615e0; 1 drivers v0x89919b160_0 .net *"_ivl_9", 15 0, L_0x898e61680; 1 drivers L_0x898855f00 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89919b200_0 .net/s "acc_in", 31 0, L_0x898855f00; 1 drivers v0x89919b2a0_0 .net/s "acc_out", 31 0, L_0x898e588c0; alias, 1 drivers v0x89919b340_0 .net/s "product", 15 0, L_0x8991c8320; 1 drivers v0x89919b3e0_0 .net/s "product_ext", 31 0, L_0x8991c83c0; 1 drivers v0x89919b480_0 .net/s "w", 7 0, L_0x898e617c0; 1 drivers v0x89919b520_0 .net/s "x", 7 0, L_0x898e61720; 1 drivers L_0x8991c81e0 .extend/s 16, L_0x898e61720; L_0x8991c8280 .extend/s 16, L_0x898e617c0; L_0x8991c8320 .arith/mult 16, L_0x8991c81e0, L_0x8991c8280; L_0x898e615e0 .part L_0x8991c8320, 15, 1; L_0x898e61680 .repeat 16, 16, L_0x898e615e0; L_0x8991c83c0 .concat [ 16 16 0 0], L_0x8991c8320, L_0x898e61680; L_0x898e588c0 .arith/sum 32, L_0x898855f00, L_0x8991c83c0; S_0x898e2df80 .scope generate, "GEN_MAC[29]" "GEN_MAC[29]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d1c0 .param/l "i" 1 6 17, +C4<011101>; S_0x898e2e100 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2df80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c3c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c400 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c440 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89919b5c0_0 .net/s *"_ivl_0", 15 0, L_0x8991c8460; 1 drivers v0x89919b660_0 .net/s *"_ivl_2", 15 0, L_0x8991c8500; 1 drivers v0x89919b700_0 .net *"_ivl_7", 0 0, L_0x898e61860; 1 drivers v0x89919b7a0_0 .net *"_ivl_9", 15 0, L_0x898e61900; 1 drivers L_0x898855f48 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89919b840_0 .net/s "acc_in", 31 0, L_0x898855f48; 1 drivers v0x89919b8e0_0 .net/s "acc_out", 31 0, L_0x898e58960; alias, 1 drivers v0x89919b980_0 .net/s "product", 15 0, L_0x8991c85a0; 1 drivers v0x89919ba20_0 .net/s "product_ext", 31 0, L_0x8991c8640; 1 drivers v0x89919bac0_0 .net/s "w", 7 0, L_0x898e61a40; 1 drivers v0x89919bb60_0 .net/s "x", 7 0, L_0x898e619a0; 1 drivers L_0x8991c8460 .extend/s 16, L_0x898e619a0; L_0x8991c8500 .extend/s 16, L_0x898e61a40; L_0x8991c85a0 .arith/mult 16, L_0x8991c8460, L_0x8991c8500; L_0x898e61860 .part L_0x8991c85a0, 15, 1; L_0x898e61900 .repeat 16, 16, L_0x898e61860; L_0x8991c8640 .concat [ 16 16 0 0], L_0x8991c85a0, L_0x898e61900; L_0x898e58960 .arith/sum 32, L_0x898855f48, L_0x8991c8640; S_0x898e2e280 .scope generate, "GEN_MAC[30]" "GEN_MAC[30]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d200 .param/l "i" 1 6 17, +C4<011110>; S_0x898e2e400 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2e280; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c480 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c4c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c500 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x89919bc00_0 .net/s *"_ivl_0", 15 0, L_0x8991c86e0; 1 drivers v0x89919bca0_0 .net/s *"_ivl_2", 15 0, L_0x8991c8780; 1 drivers v0x89919bd40_0 .net *"_ivl_7", 0 0, L_0x898e61ae0; 1 drivers v0x89919bde0_0 .net *"_ivl_9", 15 0, L_0x898e61b80; 1 drivers L_0x898855f90 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x89919be80_0 .net/s "acc_in", 31 0, L_0x898855f90; 1 drivers v0x89919bf20_0 .net/s "acc_out", 31 0, L_0x898e58a00; alias, 1 drivers v0x8991a4000_0 .net/s "product", 15 0, L_0x8991c8820; 1 drivers v0x8991a40a0_0 .net/s "product_ext", 31 0, L_0x8991c88c0; 1 drivers v0x8991a4140_0 .net/s "w", 7 0, L_0x898e61cc0; 1 drivers v0x8991a41e0_0 .net/s "x", 7 0, L_0x898e61c20; 1 drivers L_0x8991c86e0 .extend/s 16, L_0x898e61c20; L_0x8991c8780 .extend/s 16, L_0x898e61cc0; L_0x8991c8820 .arith/mult 16, L_0x8991c86e0, L_0x8991c8780; L_0x898e61ae0 .part L_0x8991c8820, 15, 1; L_0x898e61b80 .repeat 16, 16, L_0x898e61ae0; L_0x8991c88c0 .concat [ 16 16 0 0], L_0x8991c8820, L_0x898e61b80; L_0x898e58a00 .arith/sum 32, L_0x898855f90, L_0x8991c88c0; S_0x898e2e580 .scope generate, "GEN_MAC[31]" "GEN_MAC[31]" 6 17, 6 17 0, S_0x898e24600; .timescale 0 0; P_0x89917d240 .param/l "i" 1 6 17, +C4<011111>; S_0x898e2e700 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2e580; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c540 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c580 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c5c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a4280_0 .net/s *"_ivl_0", 15 0, L_0x8991c8960; 1 drivers v0x8991a4320_0 .net/s *"_ivl_2", 15 0, L_0x8991c8a00; 1 drivers v0x8991a43c0_0 .net *"_ivl_7", 0 0, L_0x898e61d60; 1 drivers v0x8991a4460_0 .net *"_ivl_9", 15 0, L_0x898e61e00; 1 drivers L_0x898855fd8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a4500_0 .net/s "acc_in", 31 0, L_0x898855fd8; 1 drivers v0x8991a45a0_0 .net/s "acc_out", 31 0, L_0x898e58aa0; alias, 1 drivers v0x8991a4640_0 .net/s "product", 15 0, L_0x8991c8aa0; 1 drivers v0x8991a46e0_0 .net/s "product_ext", 31 0, L_0x8991c8b40; 1 drivers v0x8991a4780_0 .net/s "w", 7 0, L_0x898e61f40; 1 drivers v0x8991a4820_0 .net/s "x", 7 0, L_0x898e61ea0; 1 drivers L_0x8991c8960 .extend/s 16, L_0x898e61ea0; L_0x8991c8a00 .extend/s 16, L_0x898e61f40; L_0x8991c8aa0 .arith/mult 16, L_0x8991c8960, L_0x8991c8a00; L_0x898e61d60 .part L_0x8991c8aa0, 15, 1; L_0x898e61e00 .repeat 16, 16, L_0x898e61d60; L_0x8991c8b40 .concat [ 16 16 0 0], L_0x8991c8aa0, L_0x898e61e00; L_0x898e58aa0 .arith/sum 32, L_0x898855fd8, L_0x8991c8b40; S_0x898e2e880 .scope generate, "GEN_NEURON[3]" "GEN_NEURON[3]" 4 34, 4 34 0, S_0x100d3aa50; .timescale 0 0; P_0x89917d280 .param/l "n" 1 4 34, +C4<011>; S_0x898e2ea00 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0x898e2e880; .timescale 0 0; .port_info 0 /INPUT 1 "clk"; .port_info 1 /INPUT 1 "rst"; .port_info 2 /INPUT 1 "start"; .port_info 3 /INPUT 256 "x_bus"; .port_info 4 /INPUT 256 "w_bus"; .port_info 5 /INPUT 8 "bias"; .port_info 6 /OUTPUT 8 "y"; .port_info 7 /OUTPUT 1 "busy"; .port_info 8 /OUTPUT 1 "done"; P_0x898e2eb80 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>; P_0x898e2ebc0 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>; P_0x898e2ec00 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000000001>; P_0x898e2ec40 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000001>; P_0x898e2ec80 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000000100000>; P_0x898e2ecc0 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000100000>; v0x8991b6d00_0 .net *"_ivl_0", 31 0, L_0x8991c8c80; 1 drivers v0x8991b6da0_0 .net *"_ivl_11", 31 0, L_0x8991c8dc0; 1 drivers v0x8991b6e40_0 .net *"_ivl_14", 31 0, L_0x8991c8e60; 1 drivers L_0x8988560f8 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b6ee0_0 .net *"_ivl_17", 30 0, L_0x8988560f8; 1 drivers L_0x898856140 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x8991b6f80_0 .net/2u *"_ivl_18", 31 0, L_0x898856140; 1 drivers v0x8991b7020_0 .net *"_ivl_21", 31 0, L_0x8991c8f00; 1 drivers L_0x898856188 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x8991b70c0_0 .net/2u *"_ivl_22", 31 0, L_0x898856188; 1 drivers v0x8991b7160_0 .net *"_ivl_25", 31 0, L_0x8991c8fa0; 1 drivers v0x8991b7200_0 .net *"_ivl_29", 0 0, L_0x898e6f3e0; 1 drivers L_0x898856020 .functor BUFT 1, C4<0000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b72a0_0 .net *"_ivl_3", 30 0, L_0x898856020; 1 drivers v0x8991b7340_0 .net *"_ivl_31", 23 0, L_0x898e6f480; 1 drivers L_0x898856068 .functor BUFT 1, C4<00000000000000000000000000100000>, C4<0>, C4<0>, C4<0>; v0x8991b73e0_0 .net/2u *"_ivl_4", 31 0, L_0x898856068; 1 drivers v0x8991b7480_0 .net *"_ivl_7", 31 0, L_0x8991c8d20; 1 drivers L_0x8988560b0 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>; v0x8991b7520_0 .net/2u *"_ivl_8", 31 0, L_0x8988560b0; 1 drivers v0x8991b75c0_0 .var/s "acc", 31 0; v0x8991b7660_0 .net/s "acc_next", 31 0, L_0x898e5a080; 1 drivers v0x8991b7700_0 .net/s "bias", 7 0, L_0x898e6f5c0; 1 drivers v0x8991b77a0_0 .net/s "bias_ext", 31 0, L_0x8991ce080; 1 drivers v0x8991b7840_0 .var "busy", 0 0; v0x8991b78e0_0 .net "clk", 0 0, v0x8991b8820_0; alias, 1 drivers v0x8991b7980_0 .var "done", 0 0; v0x8991b7a20_0 .net/s "final_acc", 31 0, L_0x898e5a120; 1 drivers v0x8991b7ac0_0 .var "group_index", 0 0; v0x8991b7b60_0 .net "rst", 0 0, v0x8991b8b40_0; alias, 1 drivers v0x8991b7c00_0 .net "start", 0 0, v0x8991b8be0_0; alias, 1 drivers v0x8991b7ca0_0 .net/s "w_bus", 255 0, L_0x898e6f520; 1 drivers v0x8991b7d40_0 .net/s "w_group", 255 0, L_0x898e62300; 1 drivers v0x8991b7de0_0 .net/s "x_bus", 255 0, v0x8991b8d20_0; alias, 1 drivers v0x8991b7e80_0 .net/s "x_group", 255 0, L_0x898e62260; 1 drivers v0x8991b7f20_0 .var/s "y", 7 0; L_0x8991c8c80 .concat [ 1 31 0 0], v0x8991b7ac0_0, L_0x898856020; L_0x8991c8d20 .arith/mult 32, L_0x8991c8c80, L_0x898856068; L_0x8991c8dc0 .arith/mult 32, L_0x8991c8d20, L_0x8988560b0; L_0x898e62260 .part/v v0x8991b8d20_0, L_0x8991c8dc0, 256; L_0x8991c8e60 .concat [ 1 31 0 0], v0x8991b7ac0_0, L_0x8988560f8; L_0x8991c8f00 .arith/mult 32, L_0x8991c8e60, L_0x898856140; L_0x8991c8fa0 .arith/mult 32, L_0x8991c8f00, L_0x898856188; L_0x898e62300 .part/v L_0x898e6f520, L_0x8991c8fa0, 256; L_0x898e6f3e0 .part L_0x898e6f5c0, 7, 1; L_0x898e6f480 .repeat 24, 24, L_0x898e6f3e0; L_0x8991ce080 .concat [ 8 24 0 0], L_0x898e6f5c0, L_0x898e6f480; L_0x898e5a120 .arith/sum 32, L_0x898e5a080, L_0x8991ce080; S_0x898e2ed00 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0x898e2ea00; .timescale 0 0; .port_info 0 /INPUT 256 "x_bus"; .port_info 1 /INPUT 256 "w_bus"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c600 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>; P_0x89919c640 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>; P_0x89919c680 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000100000>; v0x8991b68a0_0 .net/s "acc_in", 31 0, v0x8991b75c0_0; 1 drivers v0x8991b6940_0 .net/s "acc_out", 31 0, L_0x898e5a080; alias, 1 drivers v0x8991b69e0_0 .var/i "j", 31 0; v0x8991b6a80 .array "products", 31 0; v0x8991b6a80_0 .net/s v0x8991b6a80 0, 31 0, L_0x898e58c80; 1 drivers v0x8991b6a80_1 .net/s v0x8991b6a80 1, 31 0, L_0x898e58d20; 1 drivers v0x8991b6a80_2 .net/s v0x8991b6a80 2, 31 0, L_0x898e58dc0; 1 drivers v0x8991b6a80_3 .net/s v0x8991b6a80 3, 31 0, L_0x898e58e60; 1 drivers v0x8991b6a80_4 .net/s v0x8991b6a80 4, 31 0, L_0x898e58f00; 1 drivers v0x8991b6a80_5 .net/s v0x8991b6a80 5, 31 0, L_0x898e58fa0; 1 drivers v0x8991b6a80_6 .net/s v0x8991b6a80 6, 31 0, L_0x898e59040; 1 drivers v0x8991b6a80_7 .net/s v0x8991b6a80 7, 31 0, L_0x898e590e0; 1 drivers v0x8991b6a80_8 .net/s v0x8991b6a80 8, 31 0, L_0x898e59180; 1 drivers v0x8991b6a80_9 .net/s v0x8991b6a80 9, 31 0, L_0x898e59220; 1 drivers v0x8991b6a80_10 .net/s v0x8991b6a80 10, 31 0, L_0x898e592c0; 1 drivers v0x8991b6a80_11 .net/s v0x8991b6a80 11, 31 0, L_0x898e59360; 1 drivers v0x8991b6a80_12 .net/s v0x8991b6a80 12, 31 0, L_0x898e59400; 1 drivers v0x8991b6a80_13 .net/s v0x8991b6a80 13, 31 0, L_0x898e594a0; 1 drivers v0x8991b6a80_14 .net/s v0x8991b6a80 14, 31 0, L_0x898e59540; 1 drivers v0x8991b6a80_15 .net/s v0x8991b6a80 15, 31 0, L_0x898e595e0; 1 drivers v0x8991b6a80_16 .net/s v0x8991b6a80 16, 31 0, L_0x898e59680; 1 drivers v0x8991b6a80_17 .net/s v0x8991b6a80 17, 31 0, L_0x898e59720; 1 drivers v0x8991b6a80_18 .net/s v0x8991b6a80 18, 31 0, L_0x898e597c0; 1 drivers v0x8991b6a80_19 .net/s v0x8991b6a80 19, 31 0, L_0x898e59860; 1 drivers v0x8991b6a80_20 .net/s v0x8991b6a80 20, 31 0, L_0x898e59900; 1 drivers v0x8991b6a80_21 .net/s v0x8991b6a80 21, 31 0, L_0x898e599a0; 1 drivers v0x8991b6a80_22 .net/s v0x8991b6a80 22, 31 0, L_0x898e59a40; 1 drivers v0x8991b6a80_23 .net/s v0x8991b6a80 23, 31 0, L_0x898e59ae0; 1 drivers v0x8991b6a80_24 .net/s v0x8991b6a80 24, 31 0, L_0x898e59b80; 1 drivers v0x8991b6a80_25 .net/s v0x8991b6a80 25, 31 0, L_0x898e59c20; 1 drivers v0x8991b6a80_26 .net/s v0x8991b6a80 26, 31 0, L_0x898e59cc0; 1 drivers v0x8991b6a80_27 .net/s v0x8991b6a80 27, 31 0, L_0x898e59d60; 1 drivers v0x8991b6a80_28 .net/s v0x8991b6a80 28, 31 0, L_0x898e59e00; 1 drivers v0x8991b6a80_29 .net/s v0x8991b6a80 29, 31 0, L_0x898e59ea0; 1 drivers v0x8991b6a80_30 .net/s v0x8991b6a80 30, 31 0, L_0x898e59f40; 1 drivers v0x8991b6a80_31 .net/s v0x8991b6a80 31, 31 0, L_0x898e59fe0; 1 drivers v0x8991b6b20_0 .var/s "sum", 31 0; v0x8991b6bc0_0 .net/s "w_bus", 255 0, L_0x898e62300; alias, 1 drivers v0x8991b6c60_0 .net/s "x_bus", 255 0, L_0x898e62260; alias, 1 drivers E_0x898e098c0/0 .event anyedge, v0x8991b6b20_0, v0x8991a6300_0, v0x8991a6940_0, v0x8991a6f80_0; E_0x898e098c0/1 .event anyedge, v0x8991a75c0_0, v0x8991a7c00_0, v0x8991a8280_0, v0x8991a88c0_0; E_0x898e098c0/2 .event anyedge, v0x8991a8f00_0, v0x8991a9540_0, v0x8991a9b80_0, v0x8991aa1c0_0; E_0x898e098c0/3 .event anyedge, v0x8991aa800_0, v0x8991aae40_0, v0x8991ab480_0, v0x8991abac0_0; E_0x898e098c0/4 .event anyedge, v0x8991ac140_0, v0x8991ac780_0, v0x8991acdc0_0, v0x8991ad400_0; E_0x898e098c0/5 .event anyedge, v0x8991ada40_0, v0x8991ae080_0, v0x8991ae6c0_0, v0x8991aed00_0; E_0x898e098c0/6 .event anyedge, v0x8991af340_0, v0x8991af980_0, v0x8991b4000_0, v0x8991b4640_0; E_0x898e098c0/7 .event anyedge, v0x8991b4c80_0, v0x8991b52c0_0, v0x8991b5900_0, v0x8991b5f40_0; E_0x898e098c0/8 .event anyedge, v0x8991b6580_0; E_0x898e098c0 .event/or E_0x898e098c0/0, E_0x898e098c0/1, E_0x898e098c0/2, E_0x898e098c0/3, E_0x898e098c0/4, E_0x898e098c0/5, E_0x898e098c0/6, E_0x898e098c0/7, E_0x898e098c0/8; L_0x898e624e0 .part L_0x898e62260, 0, 8; L_0x898e62580 .part L_0x898e62300, 0, 8; L_0x898e62760 .part L_0x898e62260, 8, 8; L_0x898e62800 .part L_0x898e62300, 8, 8; L_0x898e629e0 .part L_0x898e62260, 16, 8; L_0x898e62a80 .part L_0x898e62300, 16, 8; L_0x898e62c60 .part L_0x898e62260, 24, 8; L_0x898e62d00 .part L_0x898e62300, 24, 8; L_0x898e62ee0 .part L_0x898e62260, 32, 8; L_0x898e62f80 .part L_0x898e62300, 32, 8; L_0x898e63160 .part L_0x898e62260, 40, 8; L_0x898e63200 .part L_0x898e62300, 40, 8; L_0x898e633e0 .part L_0x898e62260, 48, 8; L_0x898e63480 .part L_0x898e62300, 48, 8; L_0x898e63660 .part L_0x898e62260, 56, 8; L_0x898e63700 .part L_0x898e62300, 56, 8; L_0x898e638e0 .part L_0x898e62260, 64, 8; L_0x898e63a20 .part L_0x898e62300, 64, 8; L_0x898e63c00 .part L_0x898e62260, 72, 8; L_0x898e63ca0 .part L_0x898e62300, 72, 8; L_0x898e63e80 .part L_0x898e62260, 80, 8; L_0x898e63980 .part L_0x898e62300, 80, 8; L_0x898e6c0a0 .part L_0x898e62260, 88, 8; L_0x898e6c140 .part L_0x898e62300, 88, 8; L_0x898e6c320 .part L_0x898e62260, 96, 8; L_0x898e6c3c0 .part L_0x898e62300, 96, 8; L_0x898e6c5a0 .part L_0x898e62260, 104, 8; L_0x898e6c640 .part L_0x898e62300, 104, 8; L_0x898e6c820 .part L_0x898e62260, 112, 8; L_0x898e6c8c0 .part L_0x898e62300, 112, 8; L_0x898e6caa0 .part L_0x898e62260, 120, 8; L_0x898e6cb40 .part L_0x898e62300, 120, 8; L_0x898e6cd20 .part L_0x898e62260, 128, 8; L_0x898e6cdc0 .part L_0x898e62300, 128, 8; L_0x898e6cfa0 .part L_0x898e62260, 136, 8; L_0x898e6d040 .part L_0x898e62300, 136, 8; L_0x898e6d220 .part L_0x898e62260, 144, 8; L_0x898e6d2c0 .part L_0x898e62300, 144, 8; L_0x898e6d4a0 .part L_0x898e62260, 152, 8; L_0x898e6d540 .part L_0x898e62300, 152, 8; L_0x898e6d720 .part L_0x898e62260, 160, 8; L_0x898e6d7c0 .part L_0x898e62300, 160, 8; L_0x898e6d9a0 .part L_0x898e62260, 168, 8; L_0x898e6da40 .part L_0x898e62300, 168, 8; L_0x898e6dc20 .part L_0x898e62260, 176, 8; L_0x898e6dcc0 .part L_0x898e62300, 176, 8; L_0x898e6dea0 .part L_0x898e62260, 184, 8; L_0x898e6df40 .part L_0x898e62300, 184, 8; L_0x898e6e120 .part L_0x898e62260, 192, 8; L_0x898e6e1c0 .part L_0x898e62300, 192, 8; L_0x898e6e3a0 .part L_0x898e62260, 200, 8; L_0x898e6e440 .part L_0x898e62300, 200, 8; L_0x898e6e620 .part L_0x898e62260, 208, 8; L_0x898e6e6c0 .part L_0x898e62300, 208, 8; L_0x898e6e8a0 .part L_0x898e62260, 216, 8; L_0x898e6e940 .part L_0x898e62300, 216, 8; L_0x898e6eb20 .part L_0x898e62260, 224, 8; L_0x898e6ebc0 .part L_0x898e62300, 224, 8; L_0x898e6eda0 .part L_0x898e62260, 232, 8; L_0x898e6ee40 .part L_0x898e62300, 232, 8; L_0x898e6f020 .part L_0x898e62260, 240, 8; L_0x898e6f0c0 .part L_0x898e62300, 240, 8; L_0x898e6f2a0 .part L_0x898e62260, 248, 8; L_0x898e6f340 .part L_0x898e62300, 248, 8; L_0x898e5a080 .arith/sum 32, v0x8991b75c0_0, v0x8991b6b20_0; S_0x898e2ee80 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d2c0 .param/l "i" 1 6 17, +C4<00>; S_0x898e2f000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2ee80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c6c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c700 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c740 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a5fe0_0 .net/s *"_ivl_0", 15 0, L_0x8991c9040; 1 drivers v0x8991a6080_0 .net/s *"_ivl_2", 15 0, L_0x8991c90e0; 1 drivers v0x8991a6120_0 .net *"_ivl_7", 0 0, L_0x898e623a0; 1 drivers v0x8991a61c0_0 .net *"_ivl_9", 15 0, L_0x898e62440; 1 drivers L_0x8988561d0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a6260_0 .net/s "acc_in", 31 0, L_0x8988561d0; 1 drivers v0x8991a6300_0 .net/s "acc_out", 31 0, L_0x898e58c80; alias, 1 drivers v0x8991a63a0_0 .net/s "product", 15 0, L_0x8991c9180; 1 drivers v0x8991a6440_0 .net/s "product_ext", 31 0, L_0x8991c9220; 1 drivers v0x8991a64e0_0 .net/s "w", 7 0, L_0x898e62580; 1 drivers v0x8991a6580_0 .net/s "x", 7 0, L_0x898e624e0; 1 drivers L_0x8991c9040 .extend/s 16, L_0x898e624e0; L_0x8991c90e0 .extend/s 16, L_0x898e62580; L_0x8991c9180 .arith/mult 16, L_0x8991c9040, L_0x8991c90e0; L_0x898e623a0 .part L_0x8991c9180, 15, 1; L_0x898e62440 .repeat 16, 16, L_0x898e623a0; L_0x8991c9220 .concat [ 16 16 0 0], L_0x8991c9180, L_0x898e62440; L_0x898e58c80 .arith/sum 32, L_0x8988561d0, L_0x8991c9220; S_0x898e2f180 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d300 .param/l "i" 1 6 17, +C4<01>; S_0x898e2f300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2f180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c780 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c7c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c800 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a6620_0 .net/s *"_ivl_0", 15 0, L_0x8991c92c0; 1 drivers v0x8991a66c0_0 .net/s *"_ivl_2", 15 0, L_0x8991c9360; 1 drivers v0x8991a6760_0 .net *"_ivl_7", 0 0, L_0x898e62620; 1 drivers v0x8991a6800_0 .net *"_ivl_9", 15 0, L_0x898e626c0; 1 drivers L_0x898856218 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a68a0_0 .net/s "acc_in", 31 0, L_0x898856218; 1 drivers v0x8991a6940_0 .net/s "acc_out", 31 0, L_0x898e58d20; alias, 1 drivers v0x8991a69e0_0 .net/s "product", 15 0, L_0x8991c9400; 1 drivers v0x8991a6a80_0 .net/s "product_ext", 31 0, L_0x8991c94a0; 1 drivers v0x8991a6b20_0 .net/s "w", 7 0, L_0x898e62800; 1 drivers v0x8991a6bc0_0 .net/s "x", 7 0, L_0x898e62760; 1 drivers L_0x8991c92c0 .extend/s 16, L_0x898e62760; L_0x8991c9360 .extend/s 16, L_0x898e62800; L_0x8991c9400 .arith/mult 16, L_0x8991c92c0, L_0x8991c9360; L_0x898e62620 .part L_0x8991c9400, 15, 1; L_0x898e626c0 .repeat 16, 16, L_0x898e62620; L_0x8991c94a0 .concat [ 16 16 0 0], L_0x8991c9400, L_0x898e626c0; L_0x898e58d20 .arith/sum 32, L_0x898856218, L_0x8991c94a0; S_0x898e2f480 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d340 .param/l "i" 1 6 17, +C4<010>; S_0x898e2f600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2f480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c840 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c880 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c8c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a6c60_0 .net/s *"_ivl_0", 15 0, L_0x8991c9540; 1 drivers v0x8991a6d00_0 .net/s *"_ivl_2", 15 0, L_0x8991c95e0; 1 drivers v0x8991a6da0_0 .net *"_ivl_7", 0 0, L_0x898e628a0; 1 drivers v0x8991a6e40_0 .net *"_ivl_9", 15 0, L_0x898e62940; 1 drivers L_0x898856260 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a6ee0_0 .net/s "acc_in", 31 0, L_0x898856260; 1 drivers v0x8991a6f80_0 .net/s "acc_out", 31 0, L_0x898e58dc0; alias, 1 drivers v0x8991a7020_0 .net/s "product", 15 0, L_0x8991c9680; 1 drivers v0x8991a70c0_0 .net/s "product_ext", 31 0, L_0x8991c9720; 1 drivers v0x8991a7160_0 .net/s "w", 7 0, L_0x898e62a80; 1 drivers v0x8991a7200_0 .net/s "x", 7 0, L_0x898e629e0; 1 drivers L_0x8991c9540 .extend/s 16, L_0x898e629e0; L_0x8991c95e0 .extend/s 16, L_0x898e62a80; L_0x8991c9680 .arith/mult 16, L_0x8991c9540, L_0x8991c95e0; L_0x898e628a0 .part L_0x8991c9680, 15, 1; L_0x898e62940 .repeat 16, 16, L_0x898e628a0; L_0x8991c9720 .concat [ 16 16 0 0], L_0x8991c9680, L_0x898e62940; L_0x898e58dc0 .arith/sum 32, L_0x898856260, L_0x8991c9720; S_0x898e2f780 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d380 .param/l "i" 1 6 17, +C4<011>; S_0x898e2f900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2f780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c900 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919c940 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919c980 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a72a0_0 .net/s *"_ivl_0", 15 0, L_0x8991c97c0; 1 drivers v0x8991a7340_0 .net/s *"_ivl_2", 15 0, L_0x8991c9860; 1 drivers v0x8991a73e0_0 .net *"_ivl_7", 0 0, L_0x898e62b20; 1 drivers v0x8991a7480_0 .net *"_ivl_9", 15 0, L_0x898e62bc0; 1 drivers L_0x8988562a8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a7520_0 .net/s "acc_in", 31 0, L_0x8988562a8; 1 drivers v0x8991a75c0_0 .net/s "acc_out", 31 0, L_0x898e58e60; alias, 1 drivers v0x8991a7660_0 .net/s "product", 15 0, L_0x8991c9900; 1 drivers v0x8991a7700_0 .net/s "product_ext", 31 0, L_0x8991c99a0; 1 drivers v0x8991a77a0_0 .net/s "w", 7 0, L_0x898e62d00; 1 drivers v0x8991a7840_0 .net/s "x", 7 0, L_0x898e62c60; 1 drivers L_0x8991c97c0 .extend/s 16, L_0x898e62c60; L_0x8991c9860 .extend/s 16, L_0x898e62d00; L_0x8991c9900 .arith/mult 16, L_0x8991c97c0, L_0x8991c9860; L_0x898e62b20 .part L_0x8991c9900, 15, 1; L_0x898e62bc0 .repeat 16, 16, L_0x898e62b20; L_0x8991c99a0 .concat [ 16 16 0 0], L_0x8991c9900, L_0x898e62bc0; L_0x898e58e60 .arith/sum 32, L_0x8988562a8, L_0x8991c99a0; S_0x898e2fa80 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d3c0 .param/l "i" 1 6 17, +C4<0100>; S_0x898e2fc00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2fa80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919c9c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919ca00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919ca40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a78e0_0 .net/s *"_ivl_0", 15 0, L_0x8991c9a40; 1 drivers v0x8991a7980_0 .net/s *"_ivl_2", 15 0, L_0x8991c9ae0; 1 drivers v0x8991a7a20_0 .net *"_ivl_7", 0 0, L_0x898e62da0; 1 drivers v0x8991a7ac0_0 .net *"_ivl_9", 15 0, L_0x898e62e40; 1 drivers L_0x8988562f0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a7b60_0 .net/s "acc_in", 31 0, L_0x8988562f0; 1 drivers v0x8991a7c00_0 .net/s "acc_out", 31 0, L_0x898e58f00; alias, 1 drivers v0x8991a7ca0_0 .net/s "product", 15 0, L_0x8991c9b80; 1 drivers v0x8991a7d40_0 .net/s "product_ext", 31 0, L_0x8991c9c20; 1 drivers v0x8991a7de0_0 .net/s "w", 7 0, L_0x898e62f80; 1 drivers v0x8991a7e80_0 .net/s "x", 7 0, L_0x898e62ee0; 1 drivers L_0x8991c9a40 .extend/s 16, L_0x898e62ee0; L_0x8991c9ae0 .extend/s 16, L_0x898e62f80; L_0x8991c9b80 .arith/mult 16, L_0x8991c9a40, L_0x8991c9ae0; L_0x898e62da0 .part L_0x8991c9b80, 15, 1; L_0x898e62e40 .repeat 16, 16, L_0x898e62da0; L_0x8991c9c20 .concat [ 16 16 0 0], L_0x8991c9b80, L_0x898e62e40; L_0x898e58f00 .arith/sum 32, L_0x8988562f0, L_0x8991c9c20; S_0x898e2fd80 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d400 .param/l "i" 1 6 17, +C4<0101>; S_0x898e30000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e2fd80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919ca80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919cac0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919cb00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a7f20_0 .net/s *"_ivl_0", 15 0, L_0x8991c9cc0; 1 drivers v0x8991a8000_0 .net/s *"_ivl_2", 15 0, L_0x8991c9d60; 1 drivers v0x8991a80a0_0 .net *"_ivl_7", 0 0, L_0x898e63020; 1 drivers v0x8991a8140_0 .net *"_ivl_9", 15 0, L_0x898e630c0; 1 drivers L_0x898856338 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a81e0_0 .net/s "acc_in", 31 0, L_0x898856338; 1 drivers v0x8991a8280_0 .net/s "acc_out", 31 0, L_0x898e58fa0; alias, 1 drivers v0x8991a8320_0 .net/s "product", 15 0, L_0x8991c9e00; 1 drivers v0x8991a83c0_0 .net/s "product_ext", 31 0, L_0x8991c9ea0; 1 drivers v0x8991a8460_0 .net/s "w", 7 0, L_0x898e63200; 1 drivers v0x8991a8500_0 .net/s "x", 7 0, L_0x898e63160; 1 drivers L_0x8991c9cc0 .extend/s 16, L_0x898e63160; L_0x8991c9d60 .extend/s 16, L_0x898e63200; L_0x8991c9e00 .arith/mult 16, L_0x8991c9cc0, L_0x8991c9d60; L_0x898e63020 .part L_0x8991c9e00, 15, 1; L_0x898e630c0 .repeat 16, 16, L_0x898e63020; L_0x8991c9ea0 .concat [ 16 16 0 0], L_0x8991c9e00, L_0x898e630c0; L_0x898e58fa0 .arith/sum 32, L_0x898856338, L_0x8991c9ea0; S_0x898e30180 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d440 .param/l "i" 1 6 17, +C4<0110>; S_0x898e30300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e30180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919cb40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919cb80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919cbc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a85a0_0 .net/s *"_ivl_0", 15 0, L_0x8991c9f40; 1 drivers v0x8991a8640_0 .net/s *"_ivl_2", 15 0, L_0x8991c9fe0; 1 drivers v0x8991a86e0_0 .net *"_ivl_7", 0 0, L_0x898e632a0; 1 drivers v0x8991a8780_0 .net *"_ivl_9", 15 0, L_0x898e63340; 1 drivers L_0x898856380 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a8820_0 .net/s "acc_in", 31 0, L_0x898856380; 1 drivers v0x8991a88c0_0 .net/s "acc_out", 31 0, L_0x898e59040; alias, 1 drivers v0x8991a8960_0 .net/s "product", 15 0, L_0x8991ca080; 1 drivers v0x8991a8a00_0 .net/s "product_ext", 31 0, L_0x8991ca120; 1 drivers v0x8991a8aa0_0 .net/s "w", 7 0, L_0x898e63480; 1 drivers v0x8991a8b40_0 .net/s "x", 7 0, L_0x898e633e0; 1 drivers L_0x8991c9f40 .extend/s 16, L_0x898e633e0; L_0x8991c9fe0 .extend/s 16, L_0x898e63480; L_0x8991ca080 .arith/mult 16, L_0x8991c9f40, L_0x8991c9fe0; L_0x898e632a0 .part L_0x8991ca080, 15, 1; L_0x898e63340 .repeat 16, 16, L_0x898e632a0; L_0x8991ca120 .concat [ 16 16 0 0], L_0x8991ca080, L_0x898e63340; L_0x898e59040 .arith/sum 32, L_0x898856380, L_0x8991ca120; S_0x898e30480 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d480 .param/l "i" 1 6 17, +C4<0111>; S_0x898e30600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e30480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919cc00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919cc40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919cc80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a8be0_0 .net/s *"_ivl_0", 15 0, L_0x8991ca1c0; 1 drivers v0x8991a8c80_0 .net/s *"_ivl_2", 15 0, L_0x8991ca260; 1 drivers v0x8991a8d20_0 .net *"_ivl_7", 0 0, L_0x898e63520; 1 drivers v0x8991a8dc0_0 .net *"_ivl_9", 15 0, L_0x898e635c0; 1 drivers L_0x8988563c8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a8e60_0 .net/s "acc_in", 31 0, L_0x8988563c8; 1 drivers v0x8991a8f00_0 .net/s "acc_out", 31 0, L_0x898e590e0; alias, 1 drivers v0x8991a8fa0_0 .net/s "product", 15 0, L_0x8991ca300; 1 drivers v0x8991a9040_0 .net/s "product_ext", 31 0, L_0x8991ca3a0; 1 drivers v0x8991a90e0_0 .net/s "w", 7 0, L_0x898e63700; 1 drivers v0x8991a9180_0 .net/s "x", 7 0, L_0x898e63660; 1 drivers L_0x8991ca1c0 .extend/s 16, L_0x898e63660; L_0x8991ca260 .extend/s 16, L_0x898e63700; L_0x8991ca300 .arith/mult 16, L_0x8991ca1c0, L_0x8991ca260; L_0x898e63520 .part L_0x8991ca300, 15, 1; L_0x898e635c0 .repeat 16, 16, L_0x898e63520; L_0x8991ca3a0 .concat [ 16 16 0 0], L_0x8991ca300, L_0x898e635c0; L_0x898e590e0 .arith/sum 32, L_0x8988563c8, L_0x8991ca3a0; S_0x898e30780 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d4c0 .param/l "i" 1 6 17, +C4<01000>; S_0x898e30900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e30780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919ccc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919cd00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919cd40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a9220_0 .net/s *"_ivl_0", 15 0, L_0x8991ca440; 1 drivers v0x8991a92c0_0 .net/s *"_ivl_2", 15 0, L_0x8991ca4e0; 1 drivers v0x8991a9360_0 .net *"_ivl_7", 0 0, L_0x898e637a0; 1 drivers v0x8991a9400_0 .net *"_ivl_9", 15 0, L_0x898e63840; 1 drivers L_0x898856410 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a94a0_0 .net/s "acc_in", 31 0, L_0x898856410; 1 drivers v0x8991a9540_0 .net/s "acc_out", 31 0, L_0x898e59180; alias, 1 drivers v0x8991a95e0_0 .net/s "product", 15 0, L_0x8991ca580; 1 drivers v0x8991a9680_0 .net/s "product_ext", 31 0, L_0x8991ca620; 1 drivers v0x8991a9720_0 .net/s "w", 7 0, L_0x898e63a20; 1 drivers v0x8991a97c0_0 .net/s "x", 7 0, L_0x898e638e0; 1 drivers L_0x8991ca440 .extend/s 16, L_0x898e638e0; L_0x8991ca4e0 .extend/s 16, L_0x898e63a20; L_0x8991ca580 .arith/mult 16, L_0x8991ca440, L_0x8991ca4e0; L_0x898e637a0 .part L_0x8991ca580, 15, 1; L_0x898e63840 .repeat 16, 16, L_0x898e637a0; L_0x8991ca620 .concat [ 16 16 0 0], L_0x8991ca580, L_0x898e63840; L_0x898e59180 .arith/sum 32, L_0x898856410, L_0x8991ca620; S_0x898e30a80 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d500 .param/l "i" 1 6 17, +C4<01001>; S_0x898e30c00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e30a80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919cd80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919cdc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919ce00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a9860_0 .net/s *"_ivl_0", 15 0, L_0x8991ca6c0; 1 drivers v0x8991a9900_0 .net/s *"_ivl_2", 15 0, L_0x8991ca760; 1 drivers v0x8991a99a0_0 .net *"_ivl_7", 0 0, L_0x898e63ac0; 1 drivers v0x8991a9a40_0 .net *"_ivl_9", 15 0, L_0x898e63b60; 1 drivers L_0x898856458 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991a9ae0_0 .net/s "acc_in", 31 0, L_0x898856458; 1 drivers v0x8991a9b80_0 .net/s "acc_out", 31 0, L_0x898e59220; alias, 1 drivers v0x8991a9c20_0 .net/s "product", 15 0, L_0x8991ca800; 1 drivers v0x8991a9cc0_0 .net/s "product_ext", 31 0, L_0x8991ca8a0; 1 drivers v0x8991a9d60_0 .net/s "w", 7 0, L_0x898e63ca0; 1 drivers v0x8991a9e00_0 .net/s "x", 7 0, L_0x898e63c00; 1 drivers L_0x8991ca6c0 .extend/s 16, L_0x898e63c00; L_0x8991ca760 .extend/s 16, L_0x898e63ca0; L_0x8991ca800 .arith/mult 16, L_0x8991ca6c0, L_0x8991ca760; L_0x898e63ac0 .part L_0x8991ca800, 15, 1; L_0x898e63b60 .repeat 16, 16, L_0x898e63ac0; L_0x8991ca8a0 .concat [ 16 16 0 0], L_0x8991ca800, L_0x898e63b60; L_0x898e59220 .arith/sum 32, L_0x898856458, L_0x8991ca8a0; S_0x898e30d80 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d540 .param/l "i" 1 6 17, +C4<01010>; S_0x898e30f00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e30d80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919ce40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919ce80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919cec0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991a9ea0_0 .net/s *"_ivl_0", 15 0, L_0x8991ca940; 1 drivers v0x8991a9f40_0 .net/s *"_ivl_2", 15 0, L_0x8991ca9e0; 1 drivers v0x8991a9fe0_0 .net *"_ivl_7", 0 0, L_0x898e63d40; 1 drivers v0x8991aa080_0 .net *"_ivl_9", 15 0, L_0x898e63de0; 1 drivers L_0x8988564a0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991aa120_0 .net/s "acc_in", 31 0, L_0x8988564a0; 1 drivers v0x8991aa1c0_0 .net/s "acc_out", 31 0, L_0x898e592c0; alias, 1 drivers v0x8991aa260_0 .net/s "product", 15 0, L_0x8991caa80; 1 drivers v0x8991aa300_0 .net/s "product_ext", 31 0, L_0x8991cab20; 1 drivers v0x8991aa3a0_0 .net/s "w", 7 0, L_0x898e63980; 1 drivers v0x8991aa440_0 .net/s "x", 7 0, L_0x898e63e80; 1 drivers L_0x8991ca940 .extend/s 16, L_0x898e63e80; L_0x8991ca9e0 .extend/s 16, L_0x898e63980; L_0x8991caa80 .arith/mult 16, L_0x8991ca940, L_0x8991ca9e0; L_0x898e63d40 .part L_0x8991caa80, 15, 1; L_0x898e63de0 .repeat 16, 16, L_0x898e63d40; L_0x8991cab20 .concat [ 16 16 0 0], L_0x8991caa80, L_0x898e63de0; L_0x898e592c0 .arith/sum 32, L_0x8988564a0, L_0x8991cab20; S_0x898e31080 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d580 .param/l "i" 1 6 17, +C4<01011>; S_0x898e31200 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e31080; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919cf00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919cf40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919cf80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991aa4e0_0 .net/s *"_ivl_0", 15 0, L_0x8991cabc0; 1 drivers v0x8991aa580_0 .net/s *"_ivl_2", 15 0, L_0x8991cac60; 1 drivers v0x8991aa620_0 .net *"_ivl_7", 0 0, L_0x898e63f20; 1 drivers v0x8991aa6c0_0 .net *"_ivl_9", 15 0, L_0x898e6c000; 1 drivers L_0x8988564e8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991aa760_0 .net/s "acc_in", 31 0, L_0x8988564e8; 1 drivers v0x8991aa800_0 .net/s "acc_out", 31 0, L_0x898e59360; alias, 1 drivers v0x8991aa8a0_0 .net/s "product", 15 0, L_0x8991cad00; 1 drivers v0x8991aa940_0 .net/s "product_ext", 31 0, L_0x8991cada0; 1 drivers v0x8991aa9e0_0 .net/s "w", 7 0, L_0x898e6c140; 1 drivers v0x8991aaa80_0 .net/s "x", 7 0, L_0x898e6c0a0; 1 drivers L_0x8991cabc0 .extend/s 16, L_0x898e6c0a0; L_0x8991cac60 .extend/s 16, L_0x898e6c140; L_0x8991cad00 .arith/mult 16, L_0x8991cabc0, L_0x8991cac60; L_0x898e63f20 .part L_0x8991cad00, 15, 1; L_0x898e6c000 .repeat 16, 16, L_0x898e63f20; L_0x8991cada0 .concat [ 16 16 0 0], L_0x8991cad00, L_0x898e6c000; L_0x898e59360 .arith/sum 32, L_0x8988564e8, L_0x8991cada0; S_0x898e31380 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d5c0 .param/l "i" 1 6 17, +C4<01100>; S_0x898e31500 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e31380; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919cfc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d000 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d040 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991aab20_0 .net/s *"_ivl_0", 15 0, L_0x8991cae40; 1 drivers v0x8991aabc0_0 .net/s *"_ivl_2", 15 0, L_0x8991caee0; 1 drivers v0x8991aac60_0 .net *"_ivl_7", 0 0, L_0x898e6c1e0; 1 drivers v0x8991aad00_0 .net *"_ivl_9", 15 0, L_0x898e6c280; 1 drivers L_0x898856530 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991aada0_0 .net/s "acc_in", 31 0, L_0x898856530; 1 drivers v0x8991aae40_0 .net/s "acc_out", 31 0, L_0x898e59400; alias, 1 drivers v0x8991aaee0_0 .net/s "product", 15 0, L_0x8991caf80; 1 drivers v0x8991aaf80_0 .net/s "product_ext", 31 0, L_0x8991cb020; 1 drivers v0x8991ab020_0 .net/s "w", 7 0, L_0x898e6c3c0; 1 drivers v0x8991ab0c0_0 .net/s "x", 7 0, L_0x898e6c320; 1 drivers L_0x8991cae40 .extend/s 16, L_0x898e6c320; L_0x8991caee0 .extend/s 16, L_0x898e6c3c0; L_0x8991caf80 .arith/mult 16, L_0x8991cae40, L_0x8991caee0; L_0x898e6c1e0 .part L_0x8991caf80, 15, 1; L_0x898e6c280 .repeat 16, 16, L_0x898e6c1e0; L_0x8991cb020 .concat [ 16 16 0 0], L_0x8991caf80, L_0x898e6c280; L_0x898e59400 .arith/sum 32, L_0x898856530, L_0x8991cb020; S_0x898e31680 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d600 .param/l "i" 1 6 17, +C4<01101>; S_0x898e31800 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e31680; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d080 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d0c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d100 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991ab160_0 .net/s *"_ivl_0", 15 0, L_0x8991cb0c0; 1 drivers v0x8991ab200_0 .net/s *"_ivl_2", 15 0, L_0x8991cb160; 1 drivers v0x8991ab2a0_0 .net *"_ivl_7", 0 0, L_0x898e6c460; 1 drivers v0x8991ab340_0 .net *"_ivl_9", 15 0, L_0x898e6c500; 1 drivers L_0x898856578 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991ab3e0_0 .net/s "acc_in", 31 0, L_0x898856578; 1 drivers v0x8991ab480_0 .net/s "acc_out", 31 0, L_0x898e594a0; alias, 1 drivers v0x8991ab520_0 .net/s "product", 15 0, L_0x8991cb200; 1 drivers v0x8991ab5c0_0 .net/s "product_ext", 31 0, L_0x8991cb2a0; 1 drivers v0x8991ab660_0 .net/s "w", 7 0, L_0x898e6c640; 1 drivers v0x8991ab700_0 .net/s "x", 7 0, L_0x898e6c5a0; 1 drivers L_0x8991cb0c0 .extend/s 16, L_0x898e6c5a0; L_0x8991cb160 .extend/s 16, L_0x898e6c640; L_0x8991cb200 .arith/mult 16, L_0x8991cb0c0, L_0x8991cb160; L_0x898e6c460 .part L_0x8991cb200, 15, 1; L_0x898e6c500 .repeat 16, 16, L_0x898e6c460; L_0x8991cb2a0 .concat [ 16 16 0 0], L_0x8991cb200, L_0x898e6c500; L_0x898e594a0 .arith/sum 32, L_0x898856578, L_0x8991cb2a0; S_0x898e31980 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d640 .param/l "i" 1 6 17, +C4<01110>; S_0x898e31b00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e31980; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d140 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d180 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d1c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991ab7a0_0 .net/s *"_ivl_0", 15 0, L_0x8991cb340; 1 drivers v0x8991ab840_0 .net/s *"_ivl_2", 15 0, L_0x8991cb3e0; 1 drivers v0x8991ab8e0_0 .net *"_ivl_7", 0 0, L_0x898e6c6e0; 1 drivers v0x8991ab980_0 .net *"_ivl_9", 15 0, L_0x898e6c780; 1 drivers L_0x8988565c0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991aba20_0 .net/s "acc_in", 31 0, L_0x8988565c0; 1 drivers v0x8991abac0_0 .net/s "acc_out", 31 0, L_0x898e59540; alias, 1 drivers v0x8991abb60_0 .net/s "product", 15 0, L_0x8991cb480; 1 drivers v0x8991abc00_0 .net/s "product_ext", 31 0, L_0x8991cb520; 1 drivers v0x8991abca0_0 .net/s "w", 7 0, L_0x898e6c8c0; 1 drivers v0x8991abd40_0 .net/s "x", 7 0, L_0x898e6c820; 1 drivers L_0x8991cb340 .extend/s 16, L_0x898e6c820; L_0x8991cb3e0 .extend/s 16, L_0x898e6c8c0; L_0x8991cb480 .arith/mult 16, L_0x8991cb340, L_0x8991cb3e0; L_0x898e6c6e0 .part L_0x8991cb480, 15, 1; L_0x898e6c780 .repeat 16, 16, L_0x898e6c6e0; L_0x8991cb520 .concat [ 16 16 0 0], L_0x8991cb480, L_0x898e6c780; L_0x898e59540 .arith/sum 32, L_0x8988565c0, L_0x8991cb520; S_0x898e31c80 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d680 .param/l "i" 1 6 17, +C4<01111>; S_0x898e31e00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e31c80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d200 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d240 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d280 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991abde0_0 .net/s *"_ivl_0", 15 0, L_0x8991cb5c0; 1 drivers v0x8991abe80_0 .net/s *"_ivl_2", 15 0, L_0x8991cb660; 1 drivers v0x8991abf20_0 .net *"_ivl_7", 0 0, L_0x898e6c960; 1 drivers v0x8991ac000_0 .net *"_ivl_9", 15 0, L_0x898e6ca00; 1 drivers L_0x898856608 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991ac0a0_0 .net/s "acc_in", 31 0, L_0x898856608; 1 drivers v0x8991ac140_0 .net/s "acc_out", 31 0, L_0x898e595e0; alias, 1 drivers v0x8991ac1e0_0 .net/s "product", 15 0, L_0x8991cb700; 1 drivers v0x8991ac280_0 .net/s "product_ext", 31 0, L_0x8991cb7a0; 1 drivers v0x8991ac320_0 .net/s "w", 7 0, L_0x898e6cb40; 1 drivers v0x8991ac3c0_0 .net/s "x", 7 0, L_0x898e6caa0; 1 drivers L_0x8991cb5c0 .extend/s 16, L_0x898e6caa0; L_0x8991cb660 .extend/s 16, L_0x898e6cb40; L_0x8991cb700 .arith/mult 16, L_0x8991cb5c0, L_0x8991cb660; L_0x898e6c960 .part L_0x8991cb700, 15, 1; L_0x898e6ca00 .repeat 16, 16, L_0x898e6c960; L_0x8991cb7a0 .concat [ 16 16 0 0], L_0x8991cb700, L_0x898e6ca00; L_0x898e595e0 .arith/sum 32, L_0x898856608, L_0x8991cb7a0; S_0x898e31f80 .scope generate, "GEN_MAC[16]" "GEN_MAC[16]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d6c0 .param/l "i" 1 6 17, +C4<010000>; S_0x898e32100 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e31f80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d2c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d300 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d340 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991ac460_0 .net/s *"_ivl_0", 15 0, L_0x8991cb840; 1 drivers v0x8991ac500_0 .net/s *"_ivl_2", 15 0, L_0x8991cb8e0; 1 drivers v0x8991ac5a0_0 .net *"_ivl_7", 0 0, L_0x898e6cbe0; 1 drivers v0x8991ac640_0 .net *"_ivl_9", 15 0, L_0x898e6cc80; 1 drivers L_0x898856650 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991ac6e0_0 .net/s "acc_in", 31 0, L_0x898856650; 1 drivers v0x8991ac780_0 .net/s "acc_out", 31 0, L_0x898e59680; alias, 1 drivers v0x8991ac820_0 .net/s "product", 15 0, L_0x8991cb980; 1 drivers v0x8991ac8c0_0 .net/s "product_ext", 31 0, L_0x8991cba20; 1 drivers v0x8991ac960_0 .net/s "w", 7 0, L_0x898e6cdc0; 1 drivers v0x8991aca00_0 .net/s "x", 7 0, L_0x898e6cd20; 1 drivers L_0x8991cb840 .extend/s 16, L_0x898e6cd20; L_0x8991cb8e0 .extend/s 16, L_0x898e6cdc0; L_0x8991cb980 .arith/mult 16, L_0x8991cb840, L_0x8991cb8e0; L_0x898e6cbe0 .part L_0x8991cb980, 15, 1; L_0x898e6cc80 .repeat 16, 16, L_0x898e6cbe0; L_0x8991cba20 .concat [ 16 16 0 0], L_0x8991cb980, L_0x898e6cc80; L_0x898e59680 .arith/sum 32, L_0x898856650, L_0x8991cba20; S_0x898e32280 .scope generate, "GEN_MAC[17]" "GEN_MAC[17]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d700 .param/l "i" 1 6 17, +C4<010001>; S_0x898e32400 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e32280; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d380 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d3c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d400 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991acaa0_0 .net/s *"_ivl_0", 15 0, L_0x8991cbac0; 1 drivers v0x8991acb40_0 .net/s *"_ivl_2", 15 0, L_0x8991cbb60; 1 drivers v0x8991acbe0_0 .net *"_ivl_7", 0 0, L_0x898e6ce60; 1 drivers v0x8991acc80_0 .net *"_ivl_9", 15 0, L_0x898e6cf00; 1 drivers L_0x898856698 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991acd20_0 .net/s "acc_in", 31 0, L_0x898856698; 1 drivers v0x8991acdc0_0 .net/s "acc_out", 31 0, L_0x898e59720; alias, 1 drivers v0x8991ace60_0 .net/s "product", 15 0, L_0x8991cbc00; 1 drivers v0x8991acf00_0 .net/s "product_ext", 31 0, L_0x8991cbca0; 1 drivers v0x8991acfa0_0 .net/s "w", 7 0, L_0x898e6d040; 1 drivers v0x8991ad040_0 .net/s "x", 7 0, L_0x898e6cfa0; 1 drivers L_0x8991cbac0 .extend/s 16, L_0x898e6cfa0; L_0x8991cbb60 .extend/s 16, L_0x898e6d040; L_0x8991cbc00 .arith/mult 16, L_0x8991cbac0, L_0x8991cbb60; L_0x898e6ce60 .part L_0x8991cbc00, 15, 1; L_0x898e6cf00 .repeat 16, 16, L_0x898e6ce60; L_0x8991cbca0 .concat [ 16 16 0 0], L_0x8991cbc00, L_0x898e6cf00; L_0x898e59720 .arith/sum 32, L_0x898856698, L_0x8991cbca0; S_0x898e32580 .scope generate, "GEN_MAC[18]" "GEN_MAC[18]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d740 .param/l "i" 1 6 17, +C4<010010>; S_0x898e32700 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e32580; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d440 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d480 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d4c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991ad0e0_0 .net/s *"_ivl_0", 15 0, L_0x8991cbd40; 1 drivers v0x8991ad180_0 .net/s *"_ivl_2", 15 0, L_0x8991cbde0; 1 drivers v0x8991ad220_0 .net *"_ivl_7", 0 0, L_0x898e6d0e0; 1 drivers v0x8991ad2c0_0 .net *"_ivl_9", 15 0, L_0x898e6d180; 1 drivers L_0x8988566e0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991ad360_0 .net/s "acc_in", 31 0, L_0x8988566e0; 1 drivers v0x8991ad400_0 .net/s "acc_out", 31 0, L_0x898e597c0; alias, 1 drivers v0x8991ad4a0_0 .net/s "product", 15 0, L_0x8991cbe80; 1 drivers v0x8991ad540_0 .net/s "product_ext", 31 0, L_0x8991cbf20; 1 drivers v0x8991ad5e0_0 .net/s "w", 7 0, L_0x898e6d2c0; 1 drivers v0x8991ad680_0 .net/s "x", 7 0, L_0x898e6d220; 1 drivers L_0x8991cbd40 .extend/s 16, L_0x898e6d220; L_0x8991cbde0 .extend/s 16, L_0x898e6d2c0; L_0x8991cbe80 .arith/mult 16, L_0x8991cbd40, L_0x8991cbde0; L_0x898e6d0e0 .part L_0x8991cbe80, 15, 1; L_0x898e6d180 .repeat 16, 16, L_0x898e6d0e0; L_0x8991cbf20 .concat [ 16 16 0 0], L_0x8991cbe80, L_0x898e6d180; L_0x898e597c0 .arith/sum 32, L_0x8988566e0, L_0x8991cbf20; S_0x898e32880 .scope generate, "GEN_MAC[19]" "GEN_MAC[19]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d780 .param/l "i" 1 6 17, +C4<010011>; S_0x898e32a00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e32880; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d500 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d540 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d580 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991ad720_0 .net/s *"_ivl_0", 15 0, L_0x8991cc000; 1 drivers v0x8991ad7c0_0 .net/s *"_ivl_2", 15 0, L_0x8991cc0a0; 1 drivers v0x8991ad860_0 .net *"_ivl_7", 0 0, L_0x898e6d360; 1 drivers v0x8991ad900_0 .net *"_ivl_9", 15 0, L_0x898e6d400; 1 drivers L_0x898856728 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991ad9a0_0 .net/s "acc_in", 31 0, L_0x898856728; 1 drivers v0x8991ada40_0 .net/s "acc_out", 31 0, L_0x898e59860; alias, 1 drivers v0x8991adae0_0 .net/s "product", 15 0, L_0x8991cc140; 1 drivers v0x8991adb80_0 .net/s "product_ext", 31 0, L_0x8991cc1e0; 1 drivers v0x8991adc20_0 .net/s "w", 7 0, L_0x898e6d540; 1 drivers v0x8991adcc0_0 .net/s "x", 7 0, L_0x898e6d4a0; 1 drivers L_0x8991cc000 .extend/s 16, L_0x898e6d4a0; L_0x8991cc0a0 .extend/s 16, L_0x898e6d540; L_0x8991cc140 .arith/mult 16, L_0x8991cc000, L_0x8991cc0a0; L_0x898e6d360 .part L_0x8991cc140, 15, 1; L_0x898e6d400 .repeat 16, 16, L_0x898e6d360; L_0x8991cc1e0 .concat [ 16 16 0 0], L_0x8991cc140, L_0x898e6d400; L_0x898e59860 .arith/sum 32, L_0x898856728, L_0x8991cc1e0; S_0x898e32b80 .scope generate, "GEN_MAC[20]" "GEN_MAC[20]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d7c0 .param/l "i" 1 6 17, +C4<010100>; S_0x898e32d00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e32b80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d5c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d600 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d640 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991add60_0 .net/s *"_ivl_0", 15 0, L_0x8991cc280; 1 drivers v0x8991ade00_0 .net/s *"_ivl_2", 15 0, L_0x8991cc320; 1 drivers v0x8991adea0_0 .net *"_ivl_7", 0 0, L_0x898e6d5e0; 1 drivers v0x8991adf40_0 .net *"_ivl_9", 15 0, L_0x898e6d680; 1 drivers L_0x898856770 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991adfe0_0 .net/s "acc_in", 31 0, L_0x898856770; 1 drivers v0x8991ae080_0 .net/s "acc_out", 31 0, L_0x898e59900; alias, 1 drivers v0x8991ae120_0 .net/s "product", 15 0, L_0x8991cc3c0; 1 drivers v0x8991ae1c0_0 .net/s "product_ext", 31 0, L_0x8991cc460; 1 drivers v0x8991ae260_0 .net/s "w", 7 0, L_0x898e6d7c0; 1 drivers v0x8991ae300_0 .net/s "x", 7 0, L_0x898e6d720; 1 drivers L_0x8991cc280 .extend/s 16, L_0x898e6d720; L_0x8991cc320 .extend/s 16, L_0x898e6d7c0; L_0x8991cc3c0 .arith/mult 16, L_0x8991cc280, L_0x8991cc320; L_0x898e6d5e0 .part L_0x8991cc3c0, 15, 1; L_0x898e6d680 .repeat 16, 16, L_0x898e6d5e0; L_0x8991cc460 .concat [ 16 16 0 0], L_0x8991cc3c0, L_0x898e6d680; L_0x898e59900 .arith/sum 32, L_0x898856770, L_0x8991cc460; S_0x898e32e80 .scope generate, "GEN_MAC[21]" "GEN_MAC[21]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d800 .param/l "i" 1 6 17, +C4<010101>; S_0x898e33000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e32e80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d680 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d6c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d700 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991ae3a0_0 .net/s *"_ivl_0", 15 0, L_0x8991cc500; 1 drivers v0x8991ae440_0 .net/s *"_ivl_2", 15 0, L_0x8991cc5a0; 1 drivers v0x8991ae4e0_0 .net *"_ivl_7", 0 0, L_0x898e6d860; 1 drivers v0x8991ae580_0 .net *"_ivl_9", 15 0, L_0x898e6d900; 1 drivers L_0x8988567b8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991ae620_0 .net/s "acc_in", 31 0, L_0x8988567b8; 1 drivers v0x8991ae6c0_0 .net/s "acc_out", 31 0, L_0x898e599a0; alias, 1 drivers v0x8991ae760_0 .net/s "product", 15 0, L_0x8991cc640; 1 drivers v0x8991ae800_0 .net/s "product_ext", 31 0, L_0x8991cc6e0; 1 drivers v0x8991ae8a0_0 .net/s "w", 7 0, L_0x898e6da40; 1 drivers v0x8991ae940_0 .net/s "x", 7 0, L_0x898e6d9a0; 1 drivers L_0x8991cc500 .extend/s 16, L_0x898e6d9a0; L_0x8991cc5a0 .extend/s 16, L_0x898e6da40; L_0x8991cc640 .arith/mult 16, L_0x8991cc500, L_0x8991cc5a0; L_0x898e6d860 .part L_0x8991cc640, 15, 1; L_0x898e6d900 .repeat 16, 16, L_0x898e6d860; L_0x8991cc6e0 .concat [ 16 16 0 0], L_0x8991cc640, L_0x898e6d900; L_0x898e599a0 .arith/sum 32, L_0x8988567b8, L_0x8991cc6e0; S_0x898e33180 .scope generate, "GEN_MAC[22]" "GEN_MAC[22]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d840 .param/l "i" 1 6 17, +C4<010110>; S_0x898e33300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e33180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d740 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d780 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d7c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991ae9e0_0 .net/s *"_ivl_0", 15 0, L_0x8991cc780; 1 drivers v0x8991aea80_0 .net/s *"_ivl_2", 15 0, L_0x8991cc820; 1 drivers v0x8991aeb20_0 .net *"_ivl_7", 0 0, L_0x898e6dae0; 1 drivers v0x8991aebc0_0 .net *"_ivl_9", 15 0, L_0x898e6db80; 1 drivers L_0x898856800 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991aec60_0 .net/s "acc_in", 31 0, L_0x898856800; 1 drivers v0x8991aed00_0 .net/s "acc_out", 31 0, L_0x898e59a40; alias, 1 drivers v0x8991aeda0_0 .net/s "product", 15 0, L_0x8991cc8c0; 1 drivers v0x8991aee40_0 .net/s "product_ext", 31 0, L_0x8991cc960; 1 drivers v0x8991aeee0_0 .net/s "w", 7 0, L_0x898e6dcc0; 1 drivers v0x8991aef80_0 .net/s "x", 7 0, L_0x898e6dc20; 1 drivers L_0x8991cc780 .extend/s 16, L_0x898e6dc20; L_0x8991cc820 .extend/s 16, L_0x898e6dcc0; L_0x8991cc8c0 .arith/mult 16, L_0x8991cc780, L_0x8991cc820; L_0x898e6dae0 .part L_0x8991cc8c0, 15, 1; L_0x898e6db80 .repeat 16, 16, L_0x898e6dae0; L_0x8991cc960 .concat [ 16 16 0 0], L_0x8991cc8c0, L_0x898e6db80; L_0x898e59a40 .arith/sum 32, L_0x898856800, L_0x8991cc960; S_0x898e33480 .scope generate, "GEN_MAC[23]" "GEN_MAC[23]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d880 .param/l "i" 1 6 17, +C4<010111>; S_0x898e33600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e33480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d800 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d840 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d880 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991af020_0 .net/s *"_ivl_0", 15 0, L_0x8991cca00; 1 drivers v0x8991af0c0_0 .net/s *"_ivl_2", 15 0, L_0x8991ccaa0; 1 drivers v0x8991af160_0 .net *"_ivl_7", 0 0, L_0x898e6dd60; 1 drivers v0x8991af200_0 .net *"_ivl_9", 15 0, L_0x898e6de00; 1 drivers L_0x898856848 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991af2a0_0 .net/s "acc_in", 31 0, L_0x898856848; 1 drivers v0x8991af340_0 .net/s "acc_out", 31 0, L_0x898e59ae0; alias, 1 drivers v0x8991af3e0_0 .net/s "product", 15 0, L_0x8991ccb40; 1 drivers v0x8991af480_0 .net/s "product_ext", 31 0, L_0x8991ccbe0; 1 drivers v0x8991af520_0 .net/s "w", 7 0, L_0x898e6df40; 1 drivers v0x8991af5c0_0 .net/s "x", 7 0, L_0x898e6dea0; 1 drivers L_0x8991cca00 .extend/s 16, L_0x898e6dea0; L_0x8991ccaa0 .extend/s 16, L_0x898e6df40; L_0x8991ccb40 .arith/mult 16, L_0x8991cca00, L_0x8991ccaa0; L_0x898e6dd60 .part L_0x8991ccb40, 15, 1; L_0x898e6de00 .repeat 16, 16, L_0x898e6dd60; L_0x8991ccbe0 .concat [ 16 16 0 0], L_0x8991ccb40, L_0x898e6de00; L_0x898e59ae0 .arith/sum 32, L_0x898856848, L_0x8991ccbe0; S_0x898e33780 .scope generate, "GEN_MAC[24]" "GEN_MAC[24]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d8c0 .param/l "i" 1 6 17, +C4<011000>; S_0x898e33900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e33780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d8c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d900 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919d940 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991af660_0 .net/s *"_ivl_0", 15 0, L_0x8991ccc80; 1 drivers v0x8991af700_0 .net/s *"_ivl_2", 15 0, L_0x8991ccd20; 1 drivers v0x8991af7a0_0 .net *"_ivl_7", 0 0, L_0x898e6dfe0; 1 drivers v0x8991af840_0 .net *"_ivl_9", 15 0, L_0x898e6e080; 1 drivers L_0x898856890 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991af8e0_0 .net/s "acc_in", 31 0, L_0x898856890; 1 drivers v0x8991af980_0 .net/s "acc_out", 31 0, L_0x898e59b80; alias, 1 drivers v0x8991afa20_0 .net/s "product", 15 0, L_0x8991ccdc0; 1 drivers v0x8991afac0_0 .net/s "product_ext", 31 0, L_0x8991cce60; 1 drivers v0x8991afb60_0 .net/s "w", 7 0, L_0x898e6e1c0; 1 drivers v0x8991afc00_0 .net/s "x", 7 0, L_0x898e6e120; 1 drivers L_0x8991ccc80 .extend/s 16, L_0x898e6e120; L_0x8991ccd20 .extend/s 16, L_0x898e6e1c0; L_0x8991ccdc0 .arith/mult 16, L_0x8991ccc80, L_0x8991ccd20; L_0x898e6dfe0 .part L_0x8991ccdc0, 15, 1; L_0x898e6e080 .repeat 16, 16, L_0x898e6dfe0; L_0x8991cce60 .concat [ 16 16 0 0], L_0x8991ccdc0, L_0x898e6e080; L_0x898e59b80 .arith/sum 32, L_0x898856890, L_0x8991cce60; S_0x898e33a80 .scope generate, "GEN_MAC[25]" "GEN_MAC[25]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d900 .param/l "i" 1 6 17, +C4<011001>; S_0x898e33c00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e33a80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919d980 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919d9c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919da00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991afca0_0 .net/s *"_ivl_0", 15 0, L_0x8991ccf00; 1 drivers v0x8991afd40_0 .net/s *"_ivl_2", 15 0, L_0x8991ccfa0; 1 drivers v0x8991afde0_0 .net *"_ivl_7", 0 0, L_0x898e6e260; 1 drivers v0x8991afe80_0 .net *"_ivl_9", 15 0, L_0x898e6e300; 1 drivers L_0x8988568d8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991aff20_0 .net/s "acc_in", 31 0, L_0x8988568d8; 1 drivers v0x8991b4000_0 .net/s "acc_out", 31 0, L_0x898e59c20; alias, 1 drivers v0x8991b40a0_0 .net/s "product", 15 0, L_0x8991cd040; 1 drivers v0x8991b4140_0 .net/s "product_ext", 31 0, L_0x8991cd0e0; 1 drivers v0x8991b41e0_0 .net/s "w", 7 0, L_0x898e6e440; 1 drivers v0x8991b4280_0 .net/s "x", 7 0, L_0x898e6e3a0; 1 drivers L_0x8991ccf00 .extend/s 16, L_0x898e6e3a0; L_0x8991ccfa0 .extend/s 16, L_0x898e6e440; L_0x8991cd040 .arith/mult 16, L_0x8991ccf00, L_0x8991ccfa0; L_0x898e6e260 .part L_0x8991cd040, 15, 1; L_0x898e6e300 .repeat 16, 16, L_0x898e6e260; L_0x8991cd0e0 .concat [ 16 16 0 0], L_0x8991cd040, L_0x898e6e300; L_0x898e59c20 .arith/sum 32, L_0x8988568d8, L_0x8991cd0e0; S_0x898e33d80 .scope generate, "GEN_MAC[26]" "GEN_MAC[26]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d940 .param/l "i" 1 6 17, +C4<011010>; S_0x898e3c000 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e33d80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919da40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919da80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919dac0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991b4320_0 .net/s *"_ivl_0", 15 0, L_0x8991cd180; 1 drivers v0x8991b43c0_0 .net/s *"_ivl_2", 15 0, L_0x8991cd220; 1 drivers v0x8991b4460_0 .net *"_ivl_7", 0 0, L_0x898e6e4e0; 1 drivers v0x8991b4500_0 .net *"_ivl_9", 15 0, L_0x898e6e580; 1 drivers L_0x898856920 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b45a0_0 .net/s "acc_in", 31 0, L_0x898856920; 1 drivers v0x8991b4640_0 .net/s "acc_out", 31 0, L_0x898e59cc0; alias, 1 drivers v0x8991b46e0_0 .net/s "product", 15 0, L_0x8991cd2c0; 1 drivers v0x8991b4780_0 .net/s "product_ext", 31 0, L_0x8991cd360; 1 drivers v0x8991b4820_0 .net/s "w", 7 0, L_0x898e6e6c0; 1 drivers v0x8991b48c0_0 .net/s "x", 7 0, L_0x898e6e620; 1 drivers L_0x8991cd180 .extend/s 16, L_0x898e6e620; L_0x8991cd220 .extend/s 16, L_0x898e6e6c0; L_0x8991cd2c0 .arith/mult 16, L_0x8991cd180, L_0x8991cd220; L_0x898e6e4e0 .part L_0x8991cd2c0, 15, 1; L_0x898e6e580 .repeat 16, 16, L_0x898e6e4e0; L_0x8991cd360 .concat [ 16 16 0 0], L_0x8991cd2c0, L_0x898e6e580; L_0x898e59cc0 .arith/sum 32, L_0x898856920, L_0x8991cd360; S_0x898e3c180 .scope generate, "GEN_MAC[27]" "GEN_MAC[27]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d980 .param/l "i" 1 6 17, +C4<011011>; S_0x898e3c300 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e3c180; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919db00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919db40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919db80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991b4960_0 .net/s *"_ivl_0", 15 0, L_0x8991cd400; 1 drivers v0x8991b4a00_0 .net/s *"_ivl_2", 15 0, L_0x8991cd4a0; 1 drivers v0x8991b4aa0_0 .net *"_ivl_7", 0 0, L_0x898e6e760; 1 drivers v0x8991b4b40_0 .net *"_ivl_9", 15 0, L_0x898e6e800; 1 drivers L_0x898856968 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b4be0_0 .net/s "acc_in", 31 0, L_0x898856968; 1 drivers v0x8991b4c80_0 .net/s "acc_out", 31 0, L_0x898e59d60; alias, 1 drivers v0x8991b4d20_0 .net/s "product", 15 0, L_0x8991cd540; 1 drivers v0x8991b4dc0_0 .net/s "product_ext", 31 0, L_0x8991cd5e0; 1 drivers v0x8991b4e60_0 .net/s "w", 7 0, L_0x898e6e940; 1 drivers v0x8991b4f00_0 .net/s "x", 7 0, L_0x898e6e8a0; 1 drivers L_0x8991cd400 .extend/s 16, L_0x898e6e8a0; L_0x8991cd4a0 .extend/s 16, L_0x898e6e940; L_0x8991cd540 .arith/mult 16, L_0x8991cd400, L_0x8991cd4a0; L_0x898e6e760 .part L_0x8991cd540, 15, 1; L_0x898e6e800 .repeat 16, 16, L_0x898e6e760; L_0x8991cd5e0 .concat [ 16 16 0 0], L_0x8991cd540, L_0x898e6e800; L_0x898e59d60 .arith/sum 32, L_0x898856968, L_0x8991cd5e0; S_0x898e3c480 .scope generate, "GEN_MAC[28]" "GEN_MAC[28]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917d9c0 .param/l "i" 1 6 17, +C4<011100>; S_0x898e3c600 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e3c480; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919dbc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919dc00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919dc40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991b4fa0_0 .net/s *"_ivl_0", 15 0, L_0x8991cd680; 1 drivers v0x8991b5040_0 .net/s *"_ivl_2", 15 0, L_0x8991cd720; 1 drivers v0x8991b50e0_0 .net *"_ivl_7", 0 0, L_0x898e6e9e0; 1 drivers v0x8991b5180_0 .net *"_ivl_9", 15 0, L_0x898e6ea80; 1 drivers L_0x8988569b0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b5220_0 .net/s "acc_in", 31 0, L_0x8988569b0; 1 drivers v0x8991b52c0_0 .net/s "acc_out", 31 0, L_0x898e59e00; alias, 1 drivers v0x8991b5360_0 .net/s "product", 15 0, L_0x8991cd7c0; 1 drivers v0x8991b5400_0 .net/s "product_ext", 31 0, L_0x8991cd860; 1 drivers v0x8991b54a0_0 .net/s "w", 7 0, L_0x898e6ebc0; 1 drivers v0x8991b5540_0 .net/s "x", 7 0, L_0x898e6eb20; 1 drivers L_0x8991cd680 .extend/s 16, L_0x898e6eb20; L_0x8991cd720 .extend/s 16, L_0x898e6ebc0; L_0x8991cd7c0 .arith/mult 16, L_0x8991cd680, L_0x8991cd720; L_0x898e6e9e0 .part L_0x8991cd7c0, 15, 1; L_0x898e6ea80 .repeat 16, 16, L_0x898e6e9e0; L_0x8991cd860 .concat [ 16 16 0 0], L_0x8991cd7c0, L_0x898e6ea80; L_0x898e59e00 .arith/sum 32, L_0x8988569b0, L_0x8991cd860; S_0x898e3c780 .scope generate, "GEN_MAC[29]" "GEN_MAC[29]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917da00 .param/l "i" 1 6 17, +C4<011101>; S_0x898e3c900 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e3c780; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919dc80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919dcc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919dd00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991b55e0_0 .net/s *"_ivl_0", 15 0, L_0x8991cd900; 1 drivers v0x8991b5680_0 .net/s *"_ivl_2", 15 0, L_0x8991cd9a0; 1 drivers v0x8991b5720_0 .net *"_ivl_7", 0 0, L_0x898e6ec60; 1 drivers v0x8991b57c0_0 .net *"_ivl_9", 15 0, L_0x898e6ed00; 1 drivers L_0x8988569f8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b5860_0 .net/s "acc_in", 31 0, L_0x8988569f8; 1 drivers v0x8991b5900_0 .net/s "acc_out", 31 0, L_0x898e59ea0; alias, 1 drivers v0x8991b59a0_0 .net/s "product", 15 0, L_0x8991cda40; 1 drivers v0x8991b5a40_0 .net/s "product_ext", 31 0, L_0x8991cdae0; 1 drivers v0x8991b5ae0_0 .net/s "w", 7 0, L_0x898e6ee40; 1 drivers v0x8991b5b80_0 .net/s "x", 7 0, L_0x898e6eda0; 1 drivers L_0x8991cd900 .extend/s 16, L_0x898e6eda0; L_0x8991cd9a0 .extend/s 16, L_0x898e6ee40; L_0x8991cda40 .arith/mult 16, L_0x8991cd900, L_0x8991cd9a0; L_0x898e6ec60 .part L_0x8991cda40, 15, 1; L_0x898e6ed00 .repeat 16, 16, L_0x898e6ec60; L_0x8991cdae0 .concat [ 16 16 0 0], L_0x8991cda40, L_0x898e6ed00; L_0x898e59ea0 .arith/sum 32, L_0x8988569f8, L_0x8991cdae0; S_0x898e3ca80 .scope generate, "GEN_MAC[30]" "GEN_MAC[30]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917da40 .param/l "i" 1 6 17, +C4<011110>; S_0x898e3cc00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e3ca80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919dd40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919dd80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919ddc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991b5c20_0 .net/s *"_ivl_0", 15 0, L_0x8991cdb80; 1 drivers v0x8991b5cc0_0 .net/s *"_ivl_2", 15 0, L_0x8991cdc20; 1 drivers v0x8991b5d60_0 .net *"_ivl_7", 0 0, L_0x898e6eee0; 1 drivers v0x8991b5e00_0 .net *"_ivl_9", 15 0, L_0x898e6ef80; 1 drivers L_0x898856a40 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b5ea0_0 .net/s "acc_in", 31 0, L_0x898856a40; 1 drivers v0x8991b5f40_0 .net/s "acc_out", 31 0, L_0x898e59f40; alias, 1 drivers v0x8991b5fe0_0 .net/s "product", 15 0, L_0x8991cdcc0; 1 drivers v0x8991b6080_0 .net/s "product_ext", 31 0, L_0x8991cdd60; 1 drivers v0x8991b6120_0 .net/s "w", 7 0, L_0x898e6f0c0; 1 drivers v0x8991b61c0_0 .net/s "x", 7 0, L_0x898e6f020; 1 drivers L_0x8991cdb80 .extend/s 16, L_0x898e6f020; L_0x8991cdc20 .extend/s 16, L_0x898e6f0c0; L_0x8991cdcc0 .arith/mult 16, L_0x8991cdb80, L_0x8991cdc20; L_0x898e6eee0 .part L_0x8991cdcc0, 15, 1; L_0x898e6ef80 .repeat 16, 16, L_0x898e6eee0; L_0x8991cdd60 .concat [ 16 16 0 0], L_0x8991cdcc0, L_0x898e6ef80; L_0x898e59f40 .arith/sum 32, L_0x898856a40, L_0x8991cdd60; S_0x898e3cd80 .scope generate, "GEN_MAC[31]" "GEN_MAC[31]" 6 17, 6 17 0, S_0x898e2ed00; .timescale 0 0; P_0x89917da80 .param/l "i" 1 6 17, +C4<011111>; S_0x898e3cf00 .scope module, "u_mac" "mac_unit" 6 22, 7 1 0, S_0x898e3cd80; .timescale 0 0; .port_info 0 /INPUT 8 "x"; .port_info 1 /INPUT 8 "w"; .port_info 2 /INPUT 32 "acc_in"; .port_info 3 /OUTPUT 32 "acc_out"; P_0x89919de00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>; P_0x89919de40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>; P_0x89919de80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>; v0x8991b6260_0 .net/s *"_ivl_0", 15 0, L_0x8991cde00; 1 drivers v0x8991b6300_0 .net/s *"_ivl_2", 15 0, L_0x8991cdea0; 1 drivers v0x8991b63a0_0 .net *"_ivl_7", 0 0, L_0x898e6f160; 1 drivers v0x8991b6440_0 .net *"_ivl_9", 15 0, L_0x898e6f200; 1 drivers L_0x898856a88 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>; v0x8991b64e0_0 .net/s "acc_in", 31 0, L_0x898856a88; 1 drivers v0x8991b6580_0 .net/s "acc_out", 31 0, L_0x898e59fe0; alias, 1 drivers v0x8991b6620_0 .net/s "product", 15 0, L_0x8991cdf40; 1 drivers v0x8991b66c0_0 .net/s "product_ext", 31 0, L_0x8991cdfe0; 1 drivers v0x8991b6760_0 .net/s "w", 7 0, L_0x898e6f340; 1 drivers v0x8991b6800_0 .net/s "x", 7 0, L_0x898e6f2a0; 1 drivers L_0x8991cde00 .extend/s 16, L_0x898e6f2a0; L_0x8991cdea0 .extend/s 16, L_0x898e6f340; L_0x8991cdf40 .arith/mult 16, L_0x8991cde00, L_0x8991cdea0; L_0x898e6f160 .part L_0x8991cdf40, 15, 1; L_0x898e6f200 .repeat 16, 16, L_0x898e6f160; L_0x8991cdfe0 .concat [ 16 16 0 0], L_0x8991cdf40, L_0x898e6f200; L_0x898e59fe0 .arith/sum 32, L_0x898856a88, L_0x8991cdfe0; S_0x898e3d080 .scope task, "run_layer" "run_layer" 3 55, 3 55 0, S_0x100d3a3f0; .timescale -9 -12; E_0x898e0a140 .event anyedge, v0x8991b81e0_0; TD_tb.run_layer ; %wait E_0x898dc7f00; %pushi/vec4 1, 0, 1; %store/vec4 v0x8991b8be0_0, 0, 1; %wait E_0x898dc7f00; %pushi/vec4 0, 0, 1; %store/vec4 v0x8991b8be0_0, 0, 1; T_0.0 ; %load/vec4 v0x8991b88c0_0; %pad/u 32; %pushi/vec4 1, 0, 32; %cmp/e; %flag_get/vec4 4; %cmpi/ne 1, 0, 1; %jmp/0xz T_0.1, 6; %wait E_0x898e0a140; %jmp T_0.0; T_0.1 ; %wait E_0x898dc7f00; %end; .scope S_0x100d2ec90; T_1 ; %wait E_0x898dc7f40; %pushi/vec4 0, 0, 32; %store/vec4 v0x899180b40_0, 0, 32; %pushi/vec4 0, 0, 32; %store/vec4 v0x899180a00_0, 0, 32; T_1.0 ; Top of for-loop %load/vec4 v0x899180a00_0; %cmpi/s 32, 0, 32; %jmp/0xz T_1.1, 5; %load/vec4 v0x899180b40_0; %ix/getv/s 4, v0x899180a00_0; %load/vec4a v0x899180aa0, 4; %add; %store/vec4 v0x899180b40_0, 0, 32; T_1.2 ; for-loop step statement %load/vec4 v0x899180a00_0; %addi 1, 0, 32; %store/vec4 v0x899180a00_0, 0, 32; %jmp T_1.0; T_1.1 ; for-loop exit label %jmp T_1; .thread T_1, $push; .scope S_0x100d33ee0; T_2 ; %wait E_0x898dc7f00; %load/vec4 v0x899181b80_0; %flag_set/vec4 8; %jmp/0xz T_2.0, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x899181ae0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x8991815e0_0, 0; %pushi/vec4 0, 0, 8; %assign/vec4 v0x899181f40_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x899181860_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991819a0_0, 0; %jmp T_2.1; T_2.0 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991819a0_0, 0; %load/vec4 v0x899181c20_0; %flag_set/vec4 9; %flag_get/vec4 9; %jmp/0 T_2.4, 9; %load/vec4 v0x899181860_0; %nor/r; %and; T_2.4; %flag_set/vec4 8; %jmp/0xz T_2.2, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x899181ae0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x8991815e0_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x899181860_0, 0; %jmp T_2.3; T_2.2 ; %load/vec4 v0x899181860_0; %flag_set/vec4 8; %jmp/0xz T_2.5, 8; %load/vec4 v0x899181ae0_0; %pad/u 32; %cmpi/e 0, 0, 32; %jmp/0xz T_2.7, 4; %load/vec4 v0x899181a40_0; %assign/vec4 v0x8991815e0_0, 0; %load/vec4 v0x899181a40_0; %cmpi/s 0, 0, 32; %flag_or 5, 4; %jmp/0xz T_2.9, 5; %pushi/vec4 0, 0, 8; %assign/vec4 v0x899181f40_0, 0; %jmp T_2.10; T_2.9 ; %load/vec4 v0x899181a40_0; %cmpi/s 127, 0, 32; %flag_or 5, 4; GT is !LE %flag_inv 5; %jmp/0xz T_2.11, 5; %pushi/vec4 127, 0, 8; %assign/vec4 v0x899181f40_0, 0; %jmp T_2.12; T_2.11 ; %load/vec4 v0x899181a40_0; %parti/s 8, 0, 2; %assign/vec4 v0x899181f40_0, 0; T_2.12 ; T_2.10 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x899181860_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x8991819a0_0, 0; %jmp T_2.8; T_2.7 ; %load/vec4 v0x899181680_0; %assign/vec4 v0x8991815e0_0, 0; %load/vec4 v0x899181ae0_0; %addi 1, 0, 1; %assign/vec4 v0x899181ae0_0, 0; T_2.8 ; T_2.5 ; T_2.3 ; T_2.1 ; %jmp T_2; .thread T_2; .scope S_0x898e11e00; T_3 ; %wait E_0x898e087c0; %pushi/vec4 0, 0, 32; %store/vec4 v0x89918eb20_0, 0, 32; %pushi/vec4 0, 0, 32; %store/vec4 v0x89918e9e0_0, 0, 32; T_3.0 ; Top of for-loop %load/vec4 v0x89918e9e0_0; %cmpi/s 32, 0, 32; %jmp/0xz T_3.1, 5; %load/vec4 v0x89918eb20_0; %ix/getv/s 4, v0x89918e9e0_0; %load/vec4a v0x89918ea80, 4; %add; %store/vec4 v0x89918eb20_0, 0, 32; T_3.2 ; for-loop step statement %load/vec4 v0x89918e9e0_0; %addi 1, 0, 32; %store/vec4 v0x89918e9e0_0, 0, 32; %jmp T_3.0; T_3.1 ; for-loop exit label %jmp T_3; .thread T_3, $push; .scope S_0x898e11b00; T_4 ; %wait E_0x898dc7f00; %load/vec4 v0x89918fb60_0; %flag_set/vec4 8; %jmp/0xz T_4.0, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x89918fac0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x89918f5c0_0, 0; %pushi/vec4 0, 0, 8; %assign/vec4 v0x89918ff20_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x89918f840_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x89918f980_0, 0; %jmp T_4.1; T_4.0 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x89918f980_0, 0; %load/vec4 v0x89918fc00_0; %flag_set/vec4 9; %flag_get/vec4 9; %jmp/0 T_4.4, 9; %load/vec4 v0x89918f840_0; %nor/r; %and; T_4.4; %flag_set/vec4 8; %jmp/0xz T_4.2, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x89918fac0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x89918f5c0_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x89918f840_0, 0; %jmp T_4.3; T_4.2 ; %load/vec4 v0x89918f840_0; %flag_set/vec4 8; %jmp/0xz T_4.5, 8; %load/vec4 v0x89918fac0_0; %pad/u 32; %cmpi/e 0, 0, 32; %jmp/0xz T_4.7, 4; %load/vec4 v0x89918fa20_0; %assign/vec4 v0x89918f5c0_0, 0; %load/vec4 v0x89918fa20_0; %cmpi/s 0, 0, 32; %flag_or 5, 4; %jmp/0xz T_4.9, 5; %pushi/vec4 0, 0, 8; %assign/vec4 v0x89918ff20_0, 0; %jmp T_4.10; T_4.9 ; %load/vec4 v0x89918fa20_0; %cmpi/s 127, 0, 32; %flag_or 5, 4; GT is !LE %flag_inv 5; %jmp/0xz T_4.11, 5; %pushi/vec4 127, 0, 8; %assign/vec4 v0x89918ff20_0, 0; %jmp T_4.12; T_4.11 ; %load/vec4 v0x89918fa20_0; %parti/s 8, 0, 2; %assign/vec4 v0x89918ff20_0, 0; T_4.12 ; T_4.10 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x89918f840_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x89918f980_0, 0; %jmp T_4.8; T_4.7 ; %load/vec4 v0x89918f660_0; %assign/vec4 v0x89918f5c0_0, 0; %load/vec4 v0x89918fac0_0; %addi 1, 0, 1; %assign/vec4 v0x89918fac0_0, 0; T_4.8 ; T_4.5 ; T_4.3 ; T_4.1 ; %jmp T_4; .thread T_4; .scope S_0x898e24600; T_5 ; %wait E_0x898e09040; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991a4b40_0, 0, 32; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991a4a00_0, 0, 32; T_5.0 ; Top of for-loop %load/vec4 v0x8991a4a00_0; %cmpi/s 32, 0, 32; %jmp/0xz T_5.1, 5; %load/vec4 v0x8991a4b40_0; %ix/getv/s 4, v0x8991a4a00_0; %load/vec4a v0x8991a4aa0, 4; %add; %store/vec4 v0x8991a4b40_0, 0, 32; T_5.2 ; for-loop step statement %load/vec4 v0x8991a4a00_0; %addi 1, 0, 32; %store/vec4 v0x8991a4a00_0, 0, 32; %jmp T_5.0; T_5.1 ; for-loop exit label %jmp T_5; .thread T_5, $push; .scope S_0x898e24300; T_6 ; %wait E_0x898dc7f00; %load/vec4 v0x8991a5b80_0; %flag_set/vec4 8; %jmp/0xz T_6.0, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991a5ae0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x8991a55e0_0, 0; %pushi/vec4 0, 0, 8; %assign/vec4 v0x8991a5f40_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991a5860_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991a59a0_0, 0; %jmp T_6.1; T_6.0 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991a59a0_0, 0; %load/vec4 v0x8991a5c20_0; %flag_set/vec4 9; %flag_get/vec4 9; %jmp/0 T_6.4, 9; %load/vec4 v0x8991a5860_0; %nor/r; %and; T_6.4; %flag_set/vec4 8; %jmp/0xz T_6.2, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991a5ae0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x8991a55e0_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x8991a5860_0, 0; %jmp T_6.3; T_6.2 ; %load/vec4 v0x8991a5860_0; %flag_set/vec4 8; %jmp/0xz T_6.5, 8; %load/vec4 v0x8991a5ae0_0; %pad/u 32; %cmpi/e 0, 0, 32; %jmp/0xz T_6.7, 4; %load/vec4 v0x8991a5a40_0; %assign/vec4 v0x8991a55e0_0, 0; %load/vec4 v0x8991a5a40_0; %cmpi/s 0, 0, 32; %flag_or 5, 4; %jmp/0xz T_6.9, 5; %pushi/vec4 0, 0, 8; %assign/vec4 v0x8991a5f40_0, 0; %jmp T_6.10; T_6.9 ; %load/vec4 v0x8991a5a40_0; %cmpi/s 127, 0, 32; %flag_or 5, 4; GT is !LE %flag_inv 5; %jmp/0xz T_6.11, 5; %pushi/vec4 127, 0, 8; %assign/vec4 v0x8991a5f40_0, 0; %jmp T_6.12; T_6.11 ; %load/vec4 v0x8991a5a40_0; %parti/s 8, 0, 2; %assign/vec4 v0x8991a5f40_0, 0; T_6.12 ; T_6.10 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991a5860_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x8991a59a0_0, 0; %jmp T_6.8; T_6.7 ; %load/vec4 v0x8991a5680_0; %assign/vec4 v0x8991a55e0_0, 0; %load/vec4 v0x8991a5ae0_0; %addi 1, 0, 1; %assign/vec4 v0x8991a5ae0_0, 0; T_6.8 ; T_6.5 ; T_6.3 ; T_6.1 ; %jmp T_6; .thread T_6; .scope S_0x898e2ed00; T_7 ; %wait E_0x898e098c0; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b6b20_0, 0, 32; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b69e0_0, 0, 32; T_7.0 ; Top of for-loop %load/vec4 v0x8991b69e0_0; %cmpi/s 32, 0, 32; %jmp/0xz T_7.1, 5; %load/vec4 v0x8991b6b20_0; %ix/getv/s 4, v0x8991b69e0_0; %load/vec4a v0x8991b6a80, 4; %add; %store/vec4 v0x8991b6b20_0, 0, 32; T_7.2 ; for-loop step statement %load/vec4 v0x8991b69e0_0; %addi 1, 0, 32; %store/vec4 v0x8991b69e0_0, 0, 32; %jmp T_7.0; T_7.1 ; for-loop exit label %jmp T_7; .thread T_7, $push; .scope S_0x898e2ea00; T_8 ; %wait E_0x898dc7f00; %load/vec4 v0x8991b7b60_0; %flag_set/vec4 8; %jmp/0xz T_8.0, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991b7ac0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x8991b75c0_0, 0; %pushi/vec4 0, 0, 8; %assign/vec4 v0x8991b7f20_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991b7840_0, 0; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991b7980_0, 0; %jmp T_8.1; T_8.0 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991b7980_0, 0; %load/vec4 v0x8991b7c00_0; %flag_set/vec4 9; %flag_get/vec4 9; %jmp/0 T_8.4, 9; %load/vec4 v0x8991b7840_0; %nor/r; %and; T_8.4; %flag_set/vec4 8; %jmp/0xz T_8.2, 8; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991b7ac0_0, 0; %pushi/vec4 0, 0, 32; %assign/vec4 v0x8991b75c0_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x8991b7840_0, 0; %jmp T_8.3; T_8.2 ; %load/vec4 v0x8991b7840_0; %flag_set/vec4 8; %jmp/0xz T_8.5, 8; %load/vec4 v0x8991b7ac0_0; %pad/u 32; %cmpi/e 0, 0, 32; %jmp/0xz T_8.7, 4; %load/vec4 v0x8991b7a20_0; %assign/vec4 v0x8991b75c0_0, 0; %load/vec4 v0x8991b7a20_0; %cmpi/s 0, 0, 32; %flag_or 5, 4; %jmp/0xz T_8.9, 5; %pushi/vec4 0, 0, 8; %assign/vec4 v0x8991b7f20_0, 0; %jmp T_8.10; T_8.9 ; %load/vec4 v0x8991b7a20_0; %cmpi/s 127, 0, 32; %flag_or 5, 4; GT is !LE %flag_inv 5; %jmp/0xz T_8.11, 5; %pushi/vec4 127, 0, 8; %assign/vec4 v0x8991b7f20_0, 0; %jmp T_8.12; T_8.11 ; %load/vec4 v0x8991b7a20_0; %parti/s 8, 0, 2; %assign/vec4 v0x8991b7f20_0, 0; T_8.12 ; T_8.10 ; %pushi/vec4 0, 0, 1; %assign/vec4 v0x8991b7840_0, 0; %pushi/vec4 1, 0, 1; %assign/vec4 v0x8991b7980_0, 0; %jmp T_8.8; T_8.7 ; %load/vec4 v0x8991b7660_0; %assign/vec4 v0x8991b75c0_0, 0; %load/vec4 v0x8991b7ac0_0; %addi 1, 0, 1; %assign/vec4 v0x8991b7ac0_0, 0; T_8.8 ; T_8.5 ; T_8.3 ; T_8.1 ; %jmp T_8; .thread T_8; .scope S_0x100d3a3f0; T_9 ; %pushi/vec4 0, 0, 1; %store/vec4 v0x8991b8820_0, 0, 1; T_9.0 ; %delay 5000, 0; %load/vec4 v0x8991b8820_0; %inv; %store/vec4 v0x8991b8820_0, 0, 1; %jmp T_9.0; T_9.1 ; %end; .thread T_9; .scope S_0x100d3a3f0; T_10 ; %vpi_call/w 3 71 "$dumpfile", "sim/parametric.vcd" {0 0 0}; %vpi_call/w 3 72 "$dumpvars", 32'sb00000000000000000000000000000000, S_0x100d3a3f0 {0 0 0}; %pushi/vec4 1, 0, 1; %store/vec4 v0x8991b8b40_0, 0, 1; %pushi/vec4 0, 0, 1; %store/vec4 v0x8991b8be0_0, 0, 1; %pushi/vec4 0, 0, 256; %store/vec4 v0x8991b8d20_0, 0, 256; %pushi/vec4 0, 0, 1024; %store/vec4 v0x8991b8c80_0, 0, 1024; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b86e0_0, 0, 32; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b8960_0, 0, 32; %pushi/vec4 2, 0, 32; T_10.0 %dup/vec4; %cmpi/s 0, 0, 32; %jmp/1xz T_10.1, 5; %jmp/1 T_10.1, 4; %subi 1, 0, 32; %wait E_0x898dc7f00; %jmp T_10.0; T_10.1 ; %pop/vec4 1; %pushi/vec4 0, 0, 1; %store/vec4 v0x8991b8b40_0, 0, 1; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; T_10.2 ; Top of for-loop %load/vec4 v0x8991b8aa0_0; %cmpi/s 32, 0, 32; %jmp/0xz T_10.3, 5; %pushi/vec4 1, 0, 8; %load/vec4 v0x8991b8aa0_0; %muli 8, 0, 32; %ix/vec4/s 4; %store/vec4 v0x8991b8d20_0, 4, 8; T_10.4 ; for-loop step statement %load/vec4 v0x8991b8aa0_0; %addi 1, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; %jmp T_10.2; T_10.3 ; for-loop exit label %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; T_10.5 ; Top of for-loop %load/vec4 v0x8991b8aa0_0; %cmpi/s 32, 0, 32; %jmp/0xz T_10.6, 5; %pushi/vec4 1, 0, 8; %pushi/vec4 0, 0, 32; %load/vec4 v0x8991b8aa0_0; %muli 8, 0, 32; %add; %ix/vec4/s 4; %store/vec4 v0x8991b8c80_0, 4, 8; T_10.7 ; for-loop step statement %load/vec4 v0x8991b8aa0_0; %addi 1, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; %jmp T_10.5; T_10.6 ; for-loop exit label %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; T_10.8 ; Top of for-loop %load/vec4 v0x8991b8aa0_0; %cmpi/s 32, 0, 32; %jmp/0xz T_10.9, 5; %pushi/vec4 2, 0, 8; %pushi/vec4 256, 0, 32; %load/vec4 v0x8991b8aa0_0; %muli 8, 0, 32; %add; %ix/vec4/s 4; %store/vec4 v0x8991b8c80_0, 4, 8; T_10.10 ; for-loop step statement %load/vec4 v0x8991b8aa0_0; %addi 1, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; %jmp T_10.8; T_10.9 ; for-loop exit label %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; T_10.11 ; Top of for-loop %load/vec4 v0x8991b8aa0_0; %cmpi/s 32, 0, 32; %jmp/0xz T_10.12, 5; %pushi/vec4 254, 0, 8; %pushi/vec4 512, 0, 32; %load/vec4 v0x8991b8aa0_0; %muli 8, 0, 32; %add; %ix/vec4/s 4; %store/vec4 v0x8991b8c80_0, 4, 8; T_10.13 ; for-loop step statement %load/vec4 v0x8991b8aa0_0; %addi 1, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; %jmp T_10.11; T_10.12 ; for-loop exit label %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; T_10.14 ; Top of for-loop %load/vec4 v0x8991b8aa0_0; %cmpi/s 32, 0, 32; %jmp/0xz T_10.15, 5; %pushi/vec4 4, 0, 8; %pushi/vec4 768, 0, 32; %load/vec4 v0x8991b8aa0_0; %muli 8, 0, 32; %add; %ix/vec4/s 4; %store/vec4 v0x8991b8c80_0, 4, 8; T_10.16 ; for-loop step statement %load/vec4 v0x8991b8aa0_0; %addi 1, 0, 32; %store/vec4 v0x8991b8aa0_0, 0, 32; %jmp T_10.14; T_10.15 ; for-loop exit label %vpi_call/w 3 144 "$display", "\000" {0 0 0}; %vpi_call/w 3 145 "$display", "========================================" {0 0 0}; %vpi_call/w 3 146 "$display", "INT8 / INT32 PARAMETRIC LAYER TEST" {0 0 0}; %vpi_call/w 3 147 "$display", "N_INPUTS = %0d", P_0x8990fbf00 {0 0 0}; %vpi_call/w 3 148 "$display", "N_NEURONS = %0d", P_0x8990fbf40 {0 0 0}; %vpi_call/w 3 149 "$display", "PARALLEL = %0d", P_0x8990fbf80 {0 0 0}; %vpi_call/w 3 150 "$display", "DATA_WIDTH = %0d", P_0x8990fbec0 {0 0 0}; %vpi_call/w 3 151 "$display", "ACC_WIDTH = %0d", P_0x8990fbe80 {0 0 0}; %vpi_call/w 3 152 "$display", "========================================" {0 0 0}; %fork TD_tb.run_layer, S_0x898e3d080; %join; %pushi/vec4 32, 0, 32; %store/vec4 v0x8991b8a00_0, 0, 32; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 0, 2; %pad/s 32; %load/vec4 v0x8991b8a00_0; %cmp/ne; %jmp/0xz T_10.17, 6; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 0, 2; %vpi_call/w 3 162 "$display", "FAIL N0: got %0d expected %0d", S<0,vec4,s8>, v0x8991b8a00_0 {1 0 0}; %load/vec4 v0x8991b8960_0; %addi 1, 0, 32; %store/vec4 v0x8991b8960_0, 0, 32; %jmp T_10.18; T_10.17 ; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 0, 2; %vpi_call/w 3 168 "$display", "PASS N0: %0d", S<0,vec4,s8> {1 0 0}; T_10.18 ; %pushi/vec4 64, 0, 32; %store/vec4 v0x8991b8a00_0, 0, 32; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 8, 5; %pad/s 32; %load/vec4 v0x8991b8a00_0; %cmp/ne; %jmp/0xz T_10.19, 6; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 8, 5; %vpi_call/w 3 178 "$display", "FAIL N1: got %0d expected %0d", S<0,vec4,s8>, v0x8991b8a00_0 {1 0 0}; %load/vec4 v0x8991b8960_0; %addi 1, 0, 32; %store/vec4 v0x8991b8960_0, 0, 32; %jmp T_10.20; T_10.19 ; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 8, 5; %vpi_call/w 3 184 "$display", "PASS N1: %0d", S<0,vec4,s8> {1 0 0}; T_10.20 ; %pushi/vec4 0, 0, 32; %store/vec4 v0x8991b8a00_0, 0, 32; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 16, 6; %pad/s 32; %cmpi/ne 0, 0, 32; %jmp/0xz T_10.21, 6; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 16, 6; %vpi_call/w 3 196 "$display", "FAIL N2: got %0d expected 0", S<0,vec4,s8> {1 0 0}; %load/vec4 v0x8991b8960_0; %addi 1, 0, 32; %store/vec4 v0x8991b8960_0, 0, 32; %jmp T_10.22; T_10.21 ; %vpi_call/w 3 201 "$display", "PASS N2: 0 (ReLU)" {0 0 0}; T_10.22 ; %pushi/vec4 127, 0, 32; %store/vec4 v0x8991b8a00_0, 0, 32; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 24, 6; %pad/s 32; %load/vec4 v0x8991b8a00_0; %cmp/ne; %jmp/0xz T_10.23, 6; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 24, 6; %vpi_call/w 3 215 "$display", "FAIL N3: got %0d expected %0d", S<0,vec4,s8>, v0x8991b8a00_0 {1 0 0}; %load/vec4 v0x8991b8960_0; %addi 1, 0, 32; %store/vec4 v0x8991b8960_0, 0, 32; %jmp T_10.24; T_10.23 ; %load/vec4 v0x8991b8dc0_0; %parti/s 8, 24, 6; %vpi_call/w 3 221 "$display", "PASS N3: %0d (saturation)", S<0,vec4,s8> {1 0 0}; T_10.24 ; %load/vec4 v0x8991b8780_0; %pad/u 32; %cmpi/ne 0, 0, 32; %jmp/0xz T_10.25, 6; %vpi_call/w 3 226 "$display", "FAIL: busy still active" {0 0 0}; %load/vec4 v0x8991b8960_0; %addi 1, 0, 32; %store/vec4 v0x8991b8960_0, 0, 32; T_10.25 ; %load/vec4 v0x8991b88c0_0; %pad/u 32; %cmpi/ne 1, 0, 32; %jmp/0xz T_10.27, 6; %vpi_call/w 3 231 "$display", "FAIL: done not asserted" {0 0 0}; %load/vec4 v0x8991b8960_0; %addi 1, 0, 32; %store/vec4 v0x8991b8960_0, 0, 32; T_10.27 ; %vpi_call/w 3 235 "$display", "\000" {0 0 0}; %vpi_call/w 3 236 "$display", "========================================" {0 0 0}; %load/vec4 v0x8991b8960_0; %cmpi/e 0, 0, 32; %jmp/0xz T_10.29, 4; %vpi_call/w 3 239 "$display", "INT8 PARAMETRIC TEST PASSED" {0 0 0}; %jmp T_10.30; T_10.29 ; %vpi_call/w 3 241 "$display", "INT8 PARAMETRIC TEST FAILED: %0d errors", v0x8991b8960_0 {0 0 0}; T_10.30 ; %vpi_call/w 3 243 "$display", "========================================" {0 0 0}; %vpi_call/w 3 244 "$display", "\000" {0 0 0}; %vpi_call/w 3 246 "$finish" {0 0 0}; %end; .thread T_10; # The file index is used to find the file name in the following table. :file_names 8; "N/A"; ""; "-"; "sim/parametric_tb.v"; "rtl/layer.v"; "rtl/neuron_parallel.v"; "rtl/mac8.v"; "rtl/mac_unit.v";