4243 lines
233 KiB
Plaintext
Executable File
4243 lines
233 KiB
Plaintext
Executable File
#! /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_0x1057464e0 .scope package, "$unit" "$unit" 2 1;
|
|
.timescale 0 0;
|
|
S_0x105740920 .scope module, "tb" "tb" 3 3;
|
|
.timescale -9 -12;
|
|
P_0xc3ece7e80 .param/l "ACC_WIDTH" 0 3 9, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ece7ec0 .param/l "DATA_WIDTH" 0 3 5, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ece7f00 .param/l "N_INPUTS" 0 3 6, +C4<00000000000000000000000100000000>;
|
|
P_0xc3ece7f40 .param/l "N_NEURONS" 0 3 7, +C4<00000000000000000000000000000100>;
|
|
P_0xc3ece7f80 .param/l "PARALLEL" 0 3 8, +C4<00000000000000000000000000010000>;
|
|
v0xc3f243020_0 .var/s "bias_bus", 31 0;
|
|
v0xc3f2430c0_0 .net "busy", 0 0, L_0xc3f188c80; 1 drivers
|
|
v0xc3f243160_0 .var "clk", 0 0;
|
|
v0xc3f243200_0 .net "done", 0 0, L_0xc3f188be0; 1 drivers
|
|
v0xc3f2432a0_0 .var/i "errors", 31 0;
|
|
v0xc3f243340_0 .var/i "expected", 31 0;
|
|
v0xc3f2433e0_0 .var/i "i", 31 0;
|
|
v0xc3f243480_0 .var "rst", 0 0;
|
|
v0xc3f243520_0 .var "start", 0 0;
|
|
v0xc3f2435c0_0 .var/s "weights_bus", 8191 0;
|
|
v0xc3f243660_0 .var/s "x_bus", 2047 0;
|
|
v0xc3f243700_0 .net/s "y_bus", 31 0, L_0xc3f2569e0; 1 drivers
|
|
S_0x1057418a0 .scope module, "dut" "layer" 3 38, 4 1 0, S_0x105740920;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 1 "clk";
|
|
.port_info 1 /INPUT 1 "rst";
|
|
.port_info 2 /INPUT 1 "start";
|
|
.port_info 3 /INPUT 2048 "x_bus";
|
|
.port_info 4 /INPUT 8192 "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_0xc3ece7d40 .param/l "ACC_WIDTH" 0 4 6, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ece7d80 .param/l "DATA_WIDTH" 0 4 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ece7dc0 .param/l "N_INPUTS" 0 4 3, +C4<00000000000000000000000100000000>;
|
|
P_0xc3ece7e00 .param/l "N_NEURONS" 0 4 4, +C4<00000000000000000000000000000100>;
|
|
P_0xc3ece7e40 .param/l "PARALLEL" 0 4 5, +C4<00000000000000000000000000010000>;
|
|
v0xc3f242940_0 .net/s "bias_bus", 31 0, v0xc3f243020_0; 1 drivers
|
|
v0xc3f2429e0_0 .net "busy", 0 0, L_0xc3f188c80; alias, 1 drivers
|
|
v0xc3f242a80_0 .net "clk", 0 0, v0xc3f243160_0; 1 drivers
|
|
v0xc3f242b20_0 .net "done", 0 0, L_0xc3f188be0; alias, 1 drivers
|
|
v0xc3f242bc0_0 .net "neuron_busy", 3 0, L_0xc3f256a80; 1 drivers
|
|
v0xc3f242c60_0 .net "neuron_done", 3 0, L_0xc3f256b20; 1 drivers
|
|
v0xc3f242d00_0 .net "rst", 0 0, v0xc3f243480_0; 1 drivers
|
|
v0xc3f242da0_0 .net "start", 0 0, v0xc3f243520_0; 1 drivers
|
|
v0xc3f242e40_0 .net/s "weights_bus", 8191 0, v0xc3f2435c0_0; 1 drivers
|
|
v0xc3f242ee0_0 .net/s "x_bus", 2047 0, v0xc3f243660_0; 1 drivers
|
|
v0xc3f242f80_0 .net/s "y_bus", 31 0, L_0xc3f2569e0; alias, 1 drivers
|
|
L_0xc3ed4c460 .part v0xc3f2435c0_0, 0, 2048;
|
|
L_0xc3ed4c500 .part v0xc3f243020_0, 0, 8;
|
|
L_0xc3ed4f020 .part v0xc3f2435c0_0, 2048, 2048;
|
|
L_0xc3ed4f0c0 .part v0xc3f243020_0, 8, 8;
|
|
L_0xc3ed55c20 .part v0xc3f2435c0_0, 4096, 2048;
|
|
L_0xc3ed55cc0 .part v0xc3f243020_0, 16, 8;
|
|
L_0xc3ed64820 .part v0xc3f2435c0_0, 6144, 2048;
|
|
L_0xc3ed648c0 .part v0xc3f243020_0, 24, 8;
|
|
L_0xc3f2569e0 .concat8 [ 8 8 8 8], v0xc3f20b7a0_0, v0xc3f21f2a0_0, v0xc3f22ada0_0, v0xc3f2428a0_0;
|
|
L_0xc3f256a80 .concat8 [ 1 1 1 1], v0xc3f20b0c0_0, v0xc3f21ebc0_0, v0xc3f22a6c0_0, v0xc3f2421c0_0;
|
|
L_0xc3f256b20 .concat8 [ 1 1 1 1], v0xc3f20b200_0, v0xc3f21ed00_0, v0xc3f22a800_0, v0xc3f242300_0;
|
|
L_0xc3f188c80 .reduce/or L_0xc3f256a80;
|
|
L_0xc3f188be0 .reduce/and L_0xc3f256b20;
|
|
S_0x10572e940 .scope generate, "GEN_NEURON[0]" "GEN_NEURON[0]" 4 34, 4 34 0, S_0x1057418a0;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea1c0 .param/l "n" 1 4 34, +C4<00>;
|
|
S_0x10572eac0 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0x10572e940;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 1 "clk";
|
|
.port_info 1 /INPUT 1 "rst";
|
|
.port_info 2 /INPUT 1 "start";
|
|
.port_info 3 /INPUT 2048 "x_bus";
|
|
.port_info 4 /INPUT 2048 "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_0x10573bdc0 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>;
|
|
P_0x10573be00 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>;
|
|
P_0x10573be40 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000010000>;
|
|
P_0x10573be80 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000100>;
|
|
P_0x10573bec0 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000100000000>;
|
|
P_0x10573bf00 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000010000>;
|
|
v0xc3f20a580_0 .net *"_ivl_0", 31 0, L_0xc3f2437a0; 1 drivers
|
|
v0xc3f20a620_0 .net *"_ivl_11", 31 0, L_0xc3f2438e0; 1 drivers
|
|
v0xc3f20a6c0_0 .net *"_ivl_14", 31 0, L_0xc3f243980; 1 drivers
|
|
L_0xc3e8540e8 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f20a760_0 .net *"_ivl_17", 27 0, L_0xc3e8540e8; 1 drivers
|
|
L_0xc3e854130 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f20a800_0 .net/2u *"_ivl_18", 31 0, L_0xc3e854130; 1 drivers
|
|
v0xc3f20a8a0_0 .net *"_ivl_21", 31 0, L_0xc3f243a20; 1 drivers
|
|
L_0xc3e854178 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f20a940_0 .net/2u *"_ivl_22", 31 0, L_0xc3e854178; 1 drivers
|
|
v0xc3f20a9e0_0 .net *"_ivl_25", 31 0, L_0xc3f243ac0; 1 drivers
|
|
v0xc3f20aa80_0 .net *"_ivl_29", 0 0, L_0xc3ed4c320; 1 drivers
|
|
L_0xc3e854010 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f20ab20_0 .net *"_ivl_3", 27 0, L_0xc3e854010; 1 drivers
|
|
v0xc3f20abc0_0 .net *"_ivl_31", 23 0, L_0xc3ed4c3c0; 1 drivers
|
|
L_0xc3e854058 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f20ac60_0 .net/2u *"_ivl_4", 31 0, L_0xc3e854058; 1 drivers
|
|
v0xc3f20ad00_0 .net *"_ivl_7", 31 0, L_0xc3f243840; 1 drivers
|
|
L_0xc3e8540a0 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f20ada0_0 .net/2u *"_ivl_8", 31 0, L_0xc3e8540a0; 1 drivers
|
|
v0xc3f20ae40_0 .var/s "acc", 31 0;
|
|
v0xc3f20aee0_0 .net/s "acc_next", 31 0, L_0xc3ec65fe0; 1 drivers
|
|
v0xc3f20af80_0 .net/s "bias", 7 0, L_0xc3ed4c500; 1 drivers
|
|
v0xc3f20b020_0 .net/s "bias_ext", 31 0, L_0xc3f24a3a0; 1 drivers
|
|
v0xc3f20b0c0_0 .var "busy", 0 0;
|
|
v0xc3f20b160_0 .net "clk", 0 0, v0xc3f243160_0; alias, 1 drivers
|
|
v0xc3f20b200_0 .var "done", 0 0;
|
|
v0xc3f20b2a0_0 .net/s "final_acc", 31 0, L_0xc3ec66080; 1 drivers
|
|
v0xc3f20b340_0 .var "group_index", 3 0;
|
|
v0xc3f20b3e0_0 .net "rst", 0 0, v0xc3f243480_0; alias, 1 drivers
|
|
v0xc3f20b480_0 .net "start", 0 0, v0xc3f243520_0; alias, 1 drivers
|
|
v0xc3f20b520_0 .net/s "w_bus", 2047 0, L_0xc3ed4c460; 1 drivers
|
|
v0xc3f20b5c0_0 .net/s "w_group", 127 0, L_0xc3ecfda40; 1 drivers
|
|
v0xc3f20b660_0 .net/s "x_bus", 2047 0, v0xc3f243660_0; alias, 1 drivers
|
|
v0xc3f20b700_0 .net/s "x_group", 127 0, L_0xc3ecfd9a0; 1 drivers
|
|
v0xc3f20b7a0_0 .var/s "y", 7 0;
|
|
E_0xc3ed11980 .event posedge, v0xc3f20b160_0;
|
|
L_0xc3f2437a0 .concat [ 4 28 0 0], v0xc3f20b340_0, L_0xc3e854010;
|
|
L_0xc3f243840 .arith/mult 32, L_0xc3f2437a0, L_0xc3e854058;
|
|
L_0xc3f2438e0 .arith/mult 32, L_0xc3f243840, L_0xc3e8540a0;
|
|
L_0xc3ecfd9a0 .part/v v0xc3f243660_0, L_0xc3f2438e0, 128;
|
|
L_0xc3f243980 .concat [ 4 28 0 0], v0xc3f20b340_0, L_0xc3e8540e8;
|
|
L_0xc3f243a20 .arith/mult 32, L_0xc3f243980, L_0xc3e854130;
|
|
L_0xc3f243ac0 .arith/mult 32, L_0xc3f243a20, L_0xc3e854178;
|
|
L_0xc3ecfda40 .part/v L_0xc3ed4c460, L_0xc3f243ac0, 128;
|
|
L_0xc3ed4c320 .part L_0xc3ed4c500, 7, 1;
|
|
L_0xc3ed4c3c0 .repeat 24, 24, L_0xc3ed4c320;
|
|
L_0xc3f24a3a0 .concat [ 8 24 0 0], L_0xc3ed4c500, L_0xc3ed4c3c0;
|
|
L_0xc3ec66080 .arith/sum 32, L_0xc3ec65fe0, L_0xc3f24a3a0;
|
|
S_0x10573bf40 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0x10572eac0;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 128 "x_bus";
|
|
.port_info 1 /INPUT 128 "w_bus";
|
|
.port_info 2 /INPUT 32 "acc_in";
|
|
.port_info 3 /OUTPUT 32 "acc_out";
|
|
P_0x105741a20 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105741a60 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105741aa0 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000010000>;
|
|
P_0x105741ae0 .param/l "TREE_LEVELS" 1 6 70, +C4<00000000000000000000000000000100>;
|
|
v0xc3f20a1c0_0 .net/s "acc_in", 31 0, v0xc3f20ae40_0; 1 drivers
|
|
v0xc3f20a260_0 .net/s "acc_out", 31 0, L_0xc3ec65fe0; alias, 1 drivers
|
|
v0xc3f20a300 .array "products", 15 0;
|
|
v0xc3f20a300_0 .net/s v0xc3f20a300 0, 31 0, L_0xc3ec64e60; 1 drivers
|
|
v0xc3f20a300_1 .net/s v0xc3f20a300 1, 31 0, L_0xc3ec64f00; 1 drivers
|
|
v0xc3f20a300_2 .net/s v0xc3f20a300 2, 31 0, L_0xc3ec64d20; 1 drivers
|
|
v0xc3f20a300_3 .net/s v0xc3f20a300 3, 31 0, L_0xc3ec64b40; 1 drivers
|
|
v0xc3f20a300_4 .net/s v0xc3f20a300 4, 31 0, L_0xc3ec64dc0; 1 drivers
|
|
v0xc3f20a300_5 .net/s v0xc3f20a300 5, 31 0, L_0xc3ec64fa0; 1 drivers
|
|
v0xc3f20a300_6 .net/s v0xc3f20a300 6, 31 0, L_0xc3ec65040; 1 drivers
|
|
v0xc3f20a300_7 .net/s v0xc3f20a300 7, 31 0, L_0xc3ec650e0; 1 drivers
|
|
v0xc3f20a300_8 .net/s v0xc3f20a300 8, 31 0, L_0xc3ec65180; 1 drivers
|
|
v0xc3f20a300_9 .net/s v0xc3f20a300 9, 31 0, L_0xc3ec65220; 1 drivers
|
|
v0xc3f20a300_10 .net/s v0xc3f20a300 10, 31 0, L_0xc3ec652c0; 1 drivers
|
|
v0xc3f20a300_11 .net/s v0xc3f20a300 11, 31 0, L_0xc3ec65360; 1 drivers
|
|
v0xc3f20a300_12 .net/s v0xc3f20a300 12, 31 0, L_0xc3ec65400; 1 drivers
|
|
v0xc3f20a300_13 .net/s v0xc3f20a300 13, 31 0, L_0xc3ec654a0; 1 drivers
|
|
v0xc3f20a300_14 .net/s v0xc3f20a300 14, 31 0, L_0xc3ec65540; 1 drivers
|
|
v0xc3f20a300_15 .net/s v0xc3f20a300 15, 31 0, L_0xc3ec655e0; 1 drivers
|
|
v0xc3f20a3a0 .array "tree", 79 0;
|
|
v0xc3f20a3a0_0 .net/s v0xc3f20a3a0 0, 31 0, L_0x1057423e0; 1 drivers
|
|
v0xc3f20a3a0_1 .net/s v0xc3f20a3a0 1, 31 0, L_0x105742860; 1 drivers
|
|
v0xc3f20a3a0_2 .net/s v0xc3f20a3a0 2, 31 0, L_0x105742ce0; 1 drivers
|
|
v0xc3f20a3a0_3 .net/s v0xc3f20a3a0 3, 31 0, L_0x105742ea0; 1 drivers
|
|
v0xc3f20a3a0_4 .net/s v0xc3f20a3a0 4, 31 0, L_0x1057430a0; 1 drivers
|
|
v0xc3f20a3a0_5 .net/s v0xc3f20a3a0 5, 31 0, L_0x1057432a0; 1 drivers
|
|
v0xc3f20a3a0_6 .net/s v0xc3f20a3a0 6, 31 0, L_0x10573a5a0; 1 drivers
|
|
v0xc3f20a3a0_7 .net/s v0xc3f20a3a0 7, 31 0, L_0x1057411c0; 1 drivers
|
|
v0xc3f20a3a0_8 .net/s v0xc3f20a3a0 8, 31 0, L_0x105741780; 1 drivers
|
|
v0xc3f20a3a0_9 .net/s v0xc3f20a3a0 9, 31 0, L_0x105739b60; 1 drivers
|
|
v0xc3f20a3a0_10 .net/s v0xc3f20a3a0 10, 31 0, L_0x10573c0c0; 1 drivers
|
|
v0xc3f20a3a0_11 .net/s v0xc3f20a3a0 11, 31 0, L_0x10572ec40; 1 drivers
|
|
v0xc3f20a3a0_12 .net/s v0xc3f20a3a0 12, 31 0, L_0x105740aa0; 1 drivers
|
|
v0xc3f20a3a0_13 .net/s v0xc3f20a3a0 13, 31 0, L_0x105746660; 1 drivers
|
|
v0xc3f20a3a0_14 .net/s v0xc3f20a3a0 14, 31 0, L_0xc3f24c000; 1 drivers
|
|
v0xc3f20a3a0_15 .net/s v0xc3f20a3a0 15, 31 0, L_0xc3f24c070; 1 drivers
|
|
v0xc3f20a3a0_16 .net/s v0xc3f20a3a0 16, 31 0, L_0xc3ec65680; 1 drivers
|
|
v0xc3f20a3a0_17 .net/s v0xc3f20a3a0 17, 31 0, L_0xc3ec65720; 1 drivers
|
|
v0xc3f20a3a0_18 .net/s v0xc3f20a3a0 18, 31 0, L_0xc3ec657c0; 1 drivers
|
|
v0xc3f20a3a0_19 .net/s v0xc3f20a3a0 19, 31 0, L_0xc3ec65860; 1 drivers
|
|
v0xc3f20a3a0_20 .net/s v0xc3f20a3a0 20, 31 0, L_0xc3ec65900; 1 drivers
|
|
v0xc3f20a3a0_21 .net/s v0xc3f20a3a0 21, 31 0, L_0xc3ec659a0; 1 drivers
|
|
v0xc3f20a3a0_22 .net/s v0xc3f20a3a0 22, 31 0, L_0xc3ec65a40; 1 drivers
|
|
v0xc3f20a3a0_23 .net/s v0xc3f20a3a0 23, 31 0, L_0xc3ec65ae0; 1 drivers
|
|
o0xc3e822ef0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_24 .net/s v0xc3f20a3a0 24, 31 0, o0xc3e822ef0; 0 drivers
|
|
o0xc3e822f20 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_25 .net/s v0xc3f20a3a0 25, 31 0, o0xc3e822f20; 0 drivers
|
|
o0xc3e822f50 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_26 .net/s v0xc3f20a3a0 26, 31 0, o0xc3e822f50; 0 drivers
|
|
o0xc3e822f80 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_27 .net/s v0xc3f20a3a0 27, 31 0, o0xc3e822f80; 0 drivers
|
|
o0xc3e822fb0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_28 .net/s v0xc3f20a3a0 28, 31 0, o0xc3e822fb0; 0 drivers
|
|
o0xc3e822fe0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_29 .net/s v0xc3f20a3a0 29, 31 0, o0xc3e822fe0; 0 drivers
|
|
o0xc3e823010 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_30 .net/s v0xc3f20a3a0 30, 31 0, o0xc3e823010; 0 drivers
|
|
o0xc3e823040 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_31 .net/s v0xc3f20a3a0 31, 31 0, o0xc3e823040; 0 drivers
|
|
v0xc3f20a3a0_32 .net/s v0xc3f20a3a0 32, 31 0, L_0xc3ec65b80; 1 drivers
|
|
v0xc3f20a3a0_33 .net/s v0xc3f20a3a0 33, 31 0, L_0xc3ec65c20; 1 drivers
|
|
v0xc3f20a3a0_34 .net/s v0xc3f20a3a0 34, 31 0, L_0xc3ec65cc0; 1 drivers
|
|
v0xc3f20a3a0_35 .net/s v0xc3f20a3a0 35, 31 0, L_0xc3ec65d60; 1 drivers
|
|
o0xc3e823130 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_36 .net/s v0xc3f20a3a0 36, 31 0, o0xc3e823130; 0 drivers
|
|
o0xc3e823160 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_37 .net/s v0xc3f20a3a0 37, 31 0, o0xc3e823160; 0 drivers
|
|
o0xc3e823190 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_38 .net/s v0xc3f20a3a0 38, 31 0, o0xc3e823190; 0 drivers
|
|
o0xc3e8231c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_39 .net/s v0xc3f20a3a0 39, 31 0, o0xc3e8231c0; 0 drivers
|
|
o0xc3e8231f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_40 .net/s v0xc3f20a3a0 40, 31 0, o0xc3e8231f0; 0 drivers
|
|
o0xc3e823220 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_41 .net/s v0xc3f20a3a0 41, 31 0, o0xc3e823220; 0 drivers
|
|
o0xc3e823250 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_42 .net/s v0xc3f20a3a0 42, 31 0, o0xc3e823250; 0 drivers
|
|
o0xc3e823280 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_43 .net/s v0xc3f20a3a0 43, 31 0, o0xc3e823280; 0 drivers
|
|
o0xc3e8232b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_44 .net/s v0xc3f20a3a0 44, 31 0, o0xc3e8232b0; 0 drivers
|
|
o0xc3e8232e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_45 .net/s v0xc3f20a3a0 45, 31 0, o0xc3e8232e0; 0 drivers
|
|
o0xc3e823310 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_46 .net/s v0xc3f20a3a0 46, 31 0, o0xc3e823310; 0 drivers
|
|
o0xc3e823340 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_47 .net/s v0xc3f20a3a0 47, 31 0, o0xc3e823340; 0 drivers
|
|
v0xc3f20a3a0_48 .net/s v0xc3f20a3a0 48, 31 0, L_0xc3ec65e00; 1 drivers
|
|
v0xc3f20a3a0_49 .net/s v0xc3f20a3a0 49, 31 0, L_0xc3ec65ea0; 1 drivers
|
|
o0xc3e8233d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_50 .net/s v0xc3f20a3a0 50, 31 0, o0xc3e8233d0; 0 drivers
|
|
o0xc3e823400 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_51 .net/s v0xc3f20a3a0 51, 31 0, o0xc3e823400; 0 drivers
|
|
o0xc3e823430 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_52 .net/s v0xc3f20a3a0 52, 31 0, o0xc3e823430; 0 drivers
|
|
o0xc3e823460 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_53 .net/s v0xc3f20a3a0 53, 31 0, o0xc3e823460; 0 drivers
|
|
o0xc3e823490 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_54 .net/s v0xc3f20a3a0 54, 31 0, o0xc3e823490; 0 drivers
|
|
o0xc3e8234c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_55 .net/s v0xc3f20a3a0 55, 31 0, o0xc3e8234c0; 0 drivers
|
|
o0xc3e8234f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_56 .net/s v0xc3f20a3a0 56, 31 0, o0xc3e8234f0; 0 drivers
|
|
o0xc3e823520 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_57 .net/s v0xc3f20a3a0 57, 31 0, o0xc3e823520; 0 drivers
|
|
o0xc3e823550 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_58 .net/s v0xc3f20a3a0 58, 31 0, o0xc3e823550; 0 drivers
|
|
o0xc3e823580 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_59 .net/s v0xc3f20a3a0 59, 31 0, o0xc3e823580; 0 drivers
|
|
o0xc3e8235b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_60 .net/s v0xc3f20a3a0 60, 31 0, o0xc3e8235b0; 0 drivers
|
|
o0xc3e8235e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_61 .net/s v0xc3f20a3a0 61, 31 0, o0xc3e8235e0; 0 drivers
|
|
o0xc3e823610 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_62 .net/s v0xc3f20a3a0 62, 31 0, o0xc3e823610; 0 drivers
|
|
o0xc3e823640 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_63 .net/s v0xc3f20a3a0 63, 31 0, o0xc3e823640; 0 drivers
|
|
v0xc3f20a3a0_64 .net/s v0xc3f20a3a0 64, 31 0, L_0xc3ec65f40; 1 drivers
|
|
o0xc3e8236a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_65 .net/s v0xc3f20a3a0 65, 31 0, o0xc3e8236a0; 0 drivers
|
|
o0xc3e8236d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_66 .net/s v0xc3f20a3a0 66, 31 0, o0xc3e8236d0; 0 drivers
|
|
o0xc3e823700 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_67 .net/s v0xc3f20a3a0 67, 31 0, o0xc3e823700; 0 drivers
|
|
o0xc3e823730 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_68 .net/s v0xc3f20a3a0 68, 31 0, o0xc3e823730; 0 drivers
|
|
o0xc3e823760 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_69 .net/s v0xc3f20a3a0 69, 31 0, o0xc3e823760; 0 drivers
|
|
o0xc3e823790 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_70 .net/s v0xc3f20a3a0 70, 31 0, o0xc3e823790; 0 drivers
|
|
o0xc3e8237c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_71 .net/s v0xc3f20a3a0 71, 31 0, o0xc3e8237c0; 0 drivers
|
|
o0xc3e8237f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_72 .net/s v0xc3f20a3a0 72, 31 0, o0xc3e8237f0; 0 drivers
|
|
o0xc3e823820 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_73 .net/s v0xc3f20a3a0 73, 31 0, o0xc3e823820; 0 drivers
|
|
o0xc3e823850 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_74 .net/s v0xc3f20a3a0 74, 31 0, o0xc3e823850; 0 drivers
|
|
o0xc3e823880 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_75 .net/s v0xc3f20a3a0 75, 31 0, o0xc3e823880; 0 drivers
|
|
o0xc3e8238b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_76 .net/s v0xc3f20a3a0 76, 31 0, o0xc3e8238b0; 0 drivers
|
|
o0xc3e8238e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_77 .net/s v0xc3f20a3a0 77, 31 0, o0xc3e8238e0; 0 drivers
|
|
o0xc3e823910 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_78 .net/s v0xc3f20a3a0 78, 31 0, o0xc3e823910; 0 drivers
|
|
o0xc3e823940 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f20a3a0_79 .net/s v0xc3f20a3a0 79, 31 0, o0xc3e823940; 0 drivers
|
|
v0xc3f20a440_0 .net/s "w_bus", 127 0, L_0xc3ecfda40; alias, 1 drivers
|
|
v0xc3f20a4e0_0 .net/s "x_bus", 127 0, L_0xc3ecfd9a0; alias, 1 drivers
|
|
L_0xc3ecfdc20 .part L_0xc3ecfd9a0, 0, 8;
|
|
L_0xc3ecfdcc0 .part L_0xc3ecfda40, 0, 8;
|
|
L_0xc3ecfdea0 .part L_0xc3ecfd9a0, 8, 8;
|
|
L_0xc3ecfdf40 .part L_0xc3ecfda40, 8, 8;
|
|
L_0xc3ecfe120 .part L_0xc3ecfd9a0, 16, 8;
|
|
L_0xc3ecfe1c0 .part L_0xc3ecfda40, 16, 8;
|
|
L_0xc3ecfe3a0 .part L_0xc3ecfd9a0, 24, 8;
|
|
L_0xc3ecfe440 .part L_0xc3ecfda40, 24, 8;
|
|
L_0xc3ecfe620 .part L_0xc3ecfd9a0, 32, 8;
|
|
L_0xc3ecfe6c0 .part L_0xc3ecfda40, 32, 8;
|
|
L_0xc3ecfe8a0 .part L_0xc3ecfd9a0, 40, 8;
|
|
L_0xc3ecfe940 .part L_0xc3ecfda40, 40, 8;
|
|
L_0xc3ecfeb20 .part L_0xc3ecfd9a0, 48, 8;
|
|
L_0xc3ecfebc0 .part L_0xc3ecfda40, 48, 8;
|
|
L_0xc3ecfeda0 .part L_0xc3ecfd9a0, 56, 8;
|
|
L_0xc3ecfee40 .part L_0xc3ecfda40, 56, 8;
|
|
L_0xc3ecff020 .part L_0xc3ecfd9a0, 64, 8;
|
|
L_0xc3ecff160 .part L_0xc3ecfda40, 64, 8;
|
|
L_0xc3ecff340 .part L_0xc3ecfd9a0, 72, 8;
|
|
L_0xc3ecff3e0 .part L_0xc3ecfda40, 72, 8;
|
|
L_0xc3ecff5c0 .part L_0xc3ecfd9a0, 80, 8;
|
|
L_0xc3ecff0c0 .part L_0xc3ecfda40, 80, 8;
|
|
L_0xc3ecff7a0 .part L_0xc3ecfd9a0, 88, 8;
|
|
L_0xc3ecff840 .part L_0xc3ecfda40, 88, 8;
|
|
L_0xc3ecffa20 .part L_0xc3ecfd9a0, 96, 8;
|
|
L_0xc3ecffac0 .part L_0xc3ecfda40, 96, 8;
|
|
L_0xc3ecffca0 .part L_0xc3ecfd9a0, 104, 8;
|
|
L_0xc3ecffd40 .part L_0xc3ecfda40, 104, 8;
|
|
L_0xc3ecfff20 .part L_0xc3ecfd9a0, 112, 8;
|
|
L_0xc3ed4c000 .part L_0xc3ecfda40, 112, 8;
|
|
L_0xc3ed4c1e0 .part L_0xc3ecfd9a0, 120, 8;
|
|
L_0xc3ed4c280 .part L_0xc3ecfda40, 120, 8;
|
|
L_0xc3ec65fe0 .arith/sum 32, v0xc3f20ae40_0, L_0xc3ec65f40;
|
|
S_0x105739860 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea200 .param/l "i" 1 6 20, +C4<00>;
|
|
S_0x1057399e0 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0x105739860;
|
|
.timescale -9 -12;
|
|
.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_0x1057416c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105741700 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105741740 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0x105741120_0 .net/s *"_ivl_0", 15 0, L_0xc3f243b60; 1 drivers
|
|
v0x1057435e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f243c00; 1 drivers
|
|
v0x105743680_0 .net *"_ivl_7", 0 0, L_0xc3ecfdae0; 1 drivers
|
|
v0x1057433e0_0 .net *"_ivl_9", 15 0, L_0xc3ecfdb80; 1 drivers
|
|
L_0xc3e8541c0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1fc000_0 .net/s "acc_in", 31 0, L_0xc3e8541c0; 1 drivers
|
|
v0xc3f1fc0a0_0 .net/s "acc_out", 31 0, L_0xc3ec64e60; alias, 1 drivers
|
|
v0xc3f1fc140_0 .net/s "product", 15 0, L_0xc3f243ca0; 1 drivers
|
|
v0xc3f1fc1e0_0 .net/s "product_ext", 31 0, L_0xc3f243d40; 1 drivers
|
|
v0xc3f1fc280_0 .net/s "w", 7 0, L_0xc3ecfdcc0; 1 drivers
|
|
v0xc3f1fc320_0 .net/s "x", 7 0, L_0xc3ecfdc20; 1 drivers
|
|
L_0xc3f243b60 .extend/s 16, L_0xc3ecfdc20;
|
|
L_0xc3f243c00 .extend/s 16, L_0xc3ecfdcc0;
|
|
L_0xc3f243ca0 .arith/mult 16, L_0xc3f243b60, L_0xc3f243c00;
|
|
L_0xc3ecfdae0 .part L_0xc3f243ca0, 15, 1;
|
|
L_0xc3ecfdb80 .repeat 16, 16, L_0xc3ecfdae0;
|
|
L_0xc3f243d40 .concat [ 16 16 0 0], L_0xc3f243ca0, L_0xc3ecfdb80;
|
|
L_0xc3ec64e60 .arith/sum 32, L_0xc3e8541c0, L_0xc3f243d40;
|
|
S_0x10573a2a0 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea240 .param/l "i" 1 6 20, +C4<01>;
|
|
S_0x10573a420 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0x10573a2a0;
|
|
.timescale -9 -12;
|
|
.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_0x105743480 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0x1057434c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105743500 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fc3c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f243de0; 1 drivers
|
|
v0xc3f1fc460_0 .net/s *"_ivl_2", 15 0, L_0xc3f243e80; 1 drivers
|
|
v0xc3f1fc500_0 .net *"_ivl_7", 0 0, L_0xc3ecfdd60; 1 drivers
|
|
v0xc3f1fc5a0_0 .net *"_ivl_9", 15 0, L_0xc3ecfde00; 1 drivers
|
|
L_0xc3e854208 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1fc640_0 .net/s "acc_in", 31 0, L_0xc3e854208; 1 drivers
|
|
v0xc3f1fc6e0_0 .net/s "acc_out", 31 0, L_0xc3ec64f00; alias, 1 drivers
|
|
v0xc3f1fc780_0 .net/s "product", 15 0, L_0xc3f243f20; 1 drivers
|
|
v0xc3f1fc820_0 .net/s "product_ext", 31 0, L_0xc3f248000; 1 drivers
|
|
v0xc3f1fc8c0_0 .net/s "w", 7 0, L_0xc3ecfdf40; 1 drivers
|
|
v0xc3f1fc960_0 .net/s "x", 7 0, L_0xc3ecfdea0; 1 drivers
|
|
L_0xc3f243de0 .extend/s 16, L_0xc3ecfdea0;
|
|
L_0xc3f243e80 .extend/s 16, L_0xc3ecfdf40;
|
|
L_0xc3f243f20 .arith/mult 16, L_0xc3f243de0, L_0xc3f243e80;
|
|
L_0xc3ecfdd60 .part L_0xc3f243f20, 15, 1;
|
|
L_0xc3ecfde00 .repeat 16, 16, L_0xc3ecfdd60;
|
|
L_0xc3f248000 .concat [ 16 16 0 0], L_0xc3f243f20, L_0xc3ecfde00;
|
|
L_0xc3ec64f00 .arith/sum 32, L_0xc3e854208, L_0xc3f248000;
|
|
S_0x10573cd90 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea280 .param/l "i" 1 6 20, +C4<010>;
|
|
S_0xc3f200000 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0x10573cd90;
|
|
.timescale -9 -12;
|
|
.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_0x1057431e0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105743220 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105743260 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fca00_0 .net/s *"_ivl_0", 15 0, L_0xc3f2480a0; 1 drivers
|
|
v0xc3f1fcaa0_0 .net/s *"_ivl_2", 15 0, L_0xc3f248140; 1 drivers
|
|
v0xc3f1fcb40_0 .net *"_ivl_7", 0 0, L_0xc3ecfdfe0; 1 drivers
|
|
v0xc3f1fcbe0_0 .net *"_ivl_9", 15 0, L_0xc3ecfe080; 1 drivers
|
|
L_0xc3e854250 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1fcc80_0 .net/s "acc_in", 31 0, L_0xc3e854250; 1 drivers
|
|
v0xc3f1fcd20_0 .net/s "acc_out", 31 0, L_0xc3ec64d20; alias, 1 drivers
|
|
v0xc3f1fcdc0_0 .net/s "product", 15 0, L_0xc3f2481e0; 1 drivers
|
|
v0xc3f1fce60_0 .net/s "product_ext", 31 0, L_0xc3f248280; 1 drivers
|
|
v0xc3f1fcf00_0 .net/s "w", 7 0, L_0xc3ecfe1c0; 1 drivers
|
|
v0xc3f1fcfa0_0 .net/s "x", 7 0, L_0xc3ecfe120; 1 drivers
|
|
L_0xc3f2480a0 .extend/s 16, L_0xc3ecfe120;
|
|
L_0xc3f248140 .extend/s 16, L_0xc3ecfe1c0;
|
|
L_0xc3f2481e0 .arith/mult 16, L_0xc3f2480a0, L_0xc3f248140;
|
|
L_0xc3ecfdfe0 .part L_0xc3f2481e0, 15, 1;
|
|
L_0xc3ecfe080 .repeat 16, 16, L_0xc3ecfdfe0;
|
|
L_0xc3f248280 .concat [ 16 16 0 0], L_0xc3f2481e0, L_0xc3ecfe080;
|
|
L_0xc3ec64d20 .arith/sum 32, L_0xc3e854250, L_0xc3f248280;
|
|
S_0xc3f200180 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea2c0 .param/l "i" 1 6 20, +C4<011>;
|
|
S_0xc3f200300 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f200180;
|
|
.timescale -9 -12;
|
|
.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_0x105742fe0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105743020 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105743060 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fd040_0 .net/s *"_ivl_0", 15 0, L_0xc3f248320; 1 drivers
|
|
v0xc3f1fd0e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2483c0; 1 drivers
|
|
v0xc3f1fd180_0 .net *"_ivl_7", 0 0, L_0xc3ecfe260; 1 drivers
|
|
v0xc3f1fd220_0 .net *"_ivl_9", 15 0, L_0xc3ecfe300; 1 drivers
|
|
L_0xc3e854298 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1fd2c0_0 .net/s "acc_in", 31 0, L_0xc3e854298; 1 drivers
|
|
v0xc3f1fd360_0 .net/s "acc_out", 31 0, L_0xc3ec64b40; alias, 1 drivers
|
|
v0xc3f1fd400_0 .net/s "product", 15 0, L_0xc3f248460; 1 drivers
|
|
v0xc3f1fd4a0_0 .net/s "product_ext", 31 0, L_0xc3f248500; 1 drivers
|
|
v0xc3f1fd540_0 .net/s "w", 7 0, L_0xc3ecfe440; 1 drivers
|
|
v0xc3f1fd5e0_0 .net/s "x", 7 0, L_0xc3ecfe3a0; 1 drivers
|
|
L_0xc3f248320 .extend/s 16, L_0xc3ecfe3a0;
|
|
L_0xc3f2483c0 .extend/s 16, L_0xc3ecfe440;
|
|
L_0xc3f248460 .arith/mult 16, L_0xc3f248320, L_0xc3f2483c0;
|
|
L_0xc3ecfe260 .part L_0xc3f248460, 15, 1;
|
|
L_0xc3ecfe300 .repeat 16, 16, L_0xc3ecfe260;
|
|
L_0xc3f248500 .concat [ 16 16 0 0], L_0xc3f248460, L_0xc3ecfe300;
|
|
L_0xc3ec64b40 .arith/sum 32, L_0xc3e854298, L_0xc3f248500;
|
|
S_0xc3f200480 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea300 .param/l "i" 1 6 20, +C4<0100>;
|
|
S_0xc3f200600 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f200480;
|
|
.timescale -9 -12;
|
|
.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_0x105742de0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105742e20 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105742e60 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fd680_0 .net/s *"_ivl_0", 15 0, L_0xc3f2485a0; 1 drivers
|
|
v0xc3f1fd720_0 .net/s *"_ivl_2", 15 0, L_0xc3f248640; 1 drivers
|
|
v0xc3f1fd7c0_0 .net *"_ivl_7", 0 0, L_0xc3ecfe4e0; 1 drivers
|
|
v0xc3f1fd860_0 .net *"_ivl_9", 15 0, L_0xc3ecfe580; 1 drivers
|
|
L_0xc3e8542e0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1fd900_0 .net/s "acc_in", 31 0, L_0xc3e8542e0; 1 drivers
|
|
v0xc3f1fd9a0_0 .net/s "acc_out", 31 0, L_0xc3ec64dc0; alias, 1 drivers
|
|
v0xc3f1fda40_0 .net/s "product", 15 0, L_0xc3f2486e0; 1 drivers
|
|
v0xc3f1fdae0_0 .net/s "product_ext", 31 0, L_0xc3f248780; 1 drivers
|
|
v0xc3f1fdb80_0 .net/s "w", 7 0, L_0xc3ecfe6c0; 1 drivers
|
|
v0xc3f1fdc20_0 .net/s "x", 7 0, L_0xc3ecfe620; 1 drivers
|
|
L_0xc3f2485a0 .extend/s 16, L_0xc3ecfe620;
|
|
L_0xc3f248640 .extend/s 16, L_0xc3ecfe6c0;
|
|
L_0xc3f2486e0 .arith/mult 16, L_0xc3f2485a0, L_0xc3f248640;
|
|
L_0xc3ecfe4e0 .part L_0xc3f2486e0, 15, 1;
|
|
L_0xc3ecfe580 .repeat 16, 16, L_0xc3ecfe4e0;
|
|
L_0xc3f248780 .concat [ 16 16 0 0], L_0xc3f2486e0, L_0xc3ecfe580;
|
|
L_0xc3ec64dc0 .arith/sum 32, L_0xc3e8542e0, L_0xc3f248780;
|
|
S_0xc3f200780 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea340 .param/l "i" 1 6 20, +C4<0101>;
|
|
S_0xc3f200900 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f200780;
|
|
.timescale -9 -12;
|
|
.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_0x105747250 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105747290 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0x1057472d0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fdcc0_0 .net/s *"_ivl_0", 15 0, L_0xc3f248820; 1 drivers
|
|
v0xc3f1fdd60_0 .net/s *"_ivl_2", 15 0, L_0xc3f2488c0; 1 drivers
|
|
v0xc3f1fde00_0 .net *"_ivl_7", 0 0, L_0xc3ecfe760; 1 drivers
|
|
v0xc3f1fdea0_0 .net *"_ivl_9", 15 0, L_0xc3ecfe800; 1 drivers
|
|
L_0xc3e854328 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1fdf40_0 .net/s "acc_in", 31 0, L_0xc3e854328; 1 drivers
|
|
v0xc3f1fdfe0_0 .net/s "acc_out", 31 0, L_0xc3ec64fa0; alias, 1 drivers
|
|
v0xc3f1fe080_0 .net/s "product", 15 0, L_0xc3f248960; 1 drivers
|
|
v0xc3f1fe120_0 .net/s "product_ext", 31 0, L_0xc3f248a00; 1 drivers
|
|
v0xc3f1fe1c0_0 .net/s "w", 7 0, L_0xc3ecfe940; 1 drivers
|
|
v0xc3f1fe260_0 .net/s "x", 7 0, L_0xc3ecfe8a0; 1 drivers
|
|
L_0xc3f248820 .extend/s 16, L_0xc3ecfe8a0;
|
|
L_0xc3f2488c0 .extend/s 16, L_0xc3ecfe940;
|
|
L_0xc3f248960 .arith/mult 16, L_0xc3f248820, L_0xc3f2488c0;
|
|
L_0xc3ecfe760 .part L_0xc3f248960, 15, 1;
|
|
L_0xc3ecfe800 .repeat 16, 16, L_0xc3ecfe760;
|
|
L_0xc3f248a00 .concat [ 16 16 0 0], L_0xc3f248960, L_0xc3ecfe800;
|
|
L_0xc3ec64fa0 .arith/sum 32, L_0xc3e854328, L_0xc3f248a00;
|
|
S_0xc3f200a80 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea380 .param/l "i" 1 6 20, +C4<0110>;
|
|
S_0xc3f200c00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f200a80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34000 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34040 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34080 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fe300_0 .net/s *"_ivl_0", 15 0, L_0xc3f248aa0; 1 drivers
|
|
v0xc3f1fe3a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f248b40; 1 drivers
|
|
v0xc3f1fe440_0 .net *"_ivl_7", 0 0, L_0xc3ecfe9e0; 1 drivers
|
|
v0xc3f1fe4e0_0 .net *"_ivl_9", 15 0, L_0xc3ecfea80; 1 drivers
|
|
L_0xc3e854370 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1fe580_0 .net/s "acc_in", 31 0, L_0xc3e854370; 1 drivers
|
|
v0xc3f1fe620_0 .net/s "acc_out", 31 0, L_0xc3ec65040; alias, 1 drivers
|
|
v0xc3f1fe6c0_0 .net/s "product", 15 0, L_0xc3f248be0; 1 drivers
|
|
v0xc3f1fe760_0 .net/s "product_ext", 31 0, L_0xc3f248c80; 1 drivers
|
|
v0xc3f1fe800_0 .net/s "w", 7 0, L_0xc3ecfebc0; 1 drivers
|
|
v0xc3f1fe8a0_0 .net/s "x", 7 0, L_0xc3ecfeb20; 1 drivers
|
|
L_0xc3f248aa0 .extend/s 16, L_0xc3ecfeb20;
|
|
L_0xc3f248b40 .extend/s 16, L_0xc3ecfebc0;
|
|
L_0xc3f248be0 .arith/mult 16, L_0xc3f248aa0, L_0xc3f248b40;
|
|
L_0xc3ecfe9e0 .part L_0xc3f248be0, 15, 1;
|
|
L_0xc3ecfea80 .repeat 16, 16, L_0xc3ecfe9e0;
|
|
L_0xc3f248c80 .concat [ 16 16 0 0], L_0xc3f248be0, L_0xc3ecfea80;
|
|
L_0xc3ec65040 .arith/sum 32, L_0xc3e854370, L_0xc3f248c80;
|
|
S_0xc3f200d80 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea3c0 .param/l "i" 1 6 20, +C4<0111>;
|
|
S_0xc3f200f00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f200d80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed340c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34100 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34140 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fe940_0 .net/s *"_ivl_0", 15 0, L_0xc3f248d20; 1 drivers
|
|
v0xc3f1fe9e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f248dc0; 1 drivers
|
|
v0xc3f1fea80_0 .net *"_ivl_7", 0 0, L_0xc3ecfec60; 1 drivers
|
|
v0xc3f1feb20_0 .net *"_ivl_9", 15 0, L_0xc3ecfed00; 1 drivers
|
|
L_0xc3e8543b8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1febc0_0 .net/s "acc_in", 31 0, L_0xc3e8543b8; 1 drivers
|
|
v0xc3f1fec60_0 .net/s "acc_out", 31 0, L_0xc3ec650e0; alias, 1 drivers
|
|
v0xc3f1fed00_0 .net/s "product", 15 0, L_0xc3f248e60; 1 drivers
|
|
v0xc3f1feda0_0 .net/s "product_ext", 31 0, L_0xc3f248f00; 1 drivers
|
|
v0xc3f1fee40_0 .net/s "w", 7 0, L_0xc3ecfee40; 1 drivers
|
|
v0xc3f1feee0_0 .net/s "x", 7 0, L_0xc3ecfeda0; 1 drivers
|
|
L_0xc3f248d20 .extend/s 16, L_0xc3ecfeda0;
|
|
L_0xc3f248dc0 .extend/s 16, L_0xc3ecfee40;
|
|
L_0xc3f248e60 .arith/mult 16, L_0xc3f248d20, L_0xc3f248dc0;
|
|
L_0xc3ecfec60 .part L_0xc3f248e60, 15, 1;
|
|
L_0xc3ecfed00 .repeat 16, 16, L_0xc3ecfec60;
|
|
L_0xc3f248f00 .concat [ 16 16 0 0], L_0xc3f248e60, L_0xc3ecfed00;
|
|
L_0xc3ec650e0 .arith/sum 32, L_0xc3e8543b8, L_0xc3f248f00;
|
|
S_0xc3f201080 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea400 .param/l "i" 1 6 20, +C4<01000>;
|
|
S_0xc3f201200 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f201080;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34180 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed341c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34200 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1fef80_0 .net/s *"_ivl_0", 15 0, L_0xc3f248fa0; 1 drivers
|
|
v0xc3f1ff020_0 .net/s *"_ivl_2", 15 0, L_0xc3f249040; 1 drivers
|
|
v0xc3f1ff0c0_0 .net *"_ivl_7", 0 0, L_0xc3ecfeee0; 1 drivers
|
|
v0xc3f1ff160_0 .net *"_ivl_9", 15 0, L_0xc3ecfef80; 1 drivers
|
|
L_0xc3e854400 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1ff200_0 .net/s "acc_in", 31 0, L_0xc3e854400; 1 drivers
|
|
v0xc3f1ff2a0_0 .net/s "acc_out", 31 0, L_0xc3ec65180; alias, 1 drivers
|
|
v0xc3f1ff340_0 .net/s "product", 15 0, L_0xc3f2490e0; 1 drivers
|
|
v0xc3f1ff3e0_0 .net/s "product_ext", 31 0, L_0xc3f249180; 1 drivers
|
|
v0xc3f1ff480_0 .net/s "w", 7 0, L_0xc3ecff160; 1 drivers
|
|
v0xc3f1ff520_0 .net/s "x", 7 0, L_0xc3ecff020; 1 drivers
|
|
L_0xc3f248fa0 .extend/s 16, L_0xc3ecff020;
|
|
L_0xc3f249040 .extend/s 16, L_0xc3ecff160;
|
|
L_0xc3f2490e0 .arith/mult 16, L_0xc3f248fa0, L_0xc3f249040;
|
|
L_0xc3ecfeee0 .part L_0xc3f2490e0, 15, 1;
|
|
L_0xc3ecfef80 .repeat 16, 16, L_0xc3ecfeee0;
|
|
L_0xc3f249180 .concat [ 16 16 0 0], L_0xc3f2490e0, L_0xc3ecfef80;
|
|
L_0xc3ec65180 .arith/sum 32, L_0xc3e854400, L_0xc3f249180;
|
|
S_0xc3f201380 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea440 .param/l "i" 1 6 20, +C4<01001>;
|
|
S_0xc3f201500 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f201380;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34240 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34280 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed342c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1ff5c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f249220; 1 drivers
|
|
v0xc3f1ff660_0 .net/s *"_ivl_2", 15 0, L_0xc3f2492c0; 1 drivers
|
|
v0xc3f1ff700_0 .net *"_ivl_7", 0 0, L_0xc3ecff200; 1 drivers
|
|
v0xc3f1ff7a0_0 .net *"_ivl_9", 15 0, L_0xc3ecff2a0; 1 drivers
|
|
L_0xc3e854448 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1ff840_0 .net/s "acc_in", 31 0, L_0xc3e854448; 1 drivers
|
|
v0xc3f1ff8e0_0 .net/s "acc_out", 31 0, L_0xc3ec65220; alias, 1 drivers
|
|
v0xc3f1ff980_0 .net/s "product", 15 0, L_0xc3f249360; 1 drivers
|
|
v0xc3f1ffa20_0 .net/s "product_ext", 31 0, L_0xc3f249400; 1 drivers
|
|
v0xc3f1ffac0_0 .net/s "w", 7 0, L_0xc3ecff3e0; 1 drivers
|
|
v0xc3f1ffb60_0 .net/s "x", 7 0, L_0xc3ecff340; 1 drivers
|
|
L_0xc3f249220 .extend/s 16, L_0xc3ecff340;
|
|
L_0xc3f2492c0 .extend/s 16, L_0xc3ecff3e0;
|
|
L_0xc3f249360 .arith/mult 16, L_0xc3f249220, L_0xc3f2492c0;
|
|
L_0xc3ecff200 .part L_0xc3f249360, 15, 1;
|
|
L_0xc3ecff2a0 .repeat 16, 16, L_0xc3ecff200;
|
|
L_0xc3f249400 .concat [ 16 16 0 0], L_0xc3f249360, L_0xc3ecff2a0;
|
|
L_0xc3ec65220 .arith/sum 32, L_0xc3e854448, L_0xc3f249400;
|
|
S_0xc3f201680 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea480 .param/l "i" 1 6 20, +C4<01010>;
|
|
S_0xc3f201800 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f201680;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34300 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34340 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34380 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f1ffc00_0 .net/s *"_ivl_0", 15 0, L_0xc3f2494a0; 1 drivers
|
|
v0xc3f1ffca0_0 .net/s *"_ivl_2", 15 0, L_0xc3f249540; 1 drivers
|
|
v0xc3f1ffd40_0 .net *"_ivl_7", 0 0, L_0xc3ecff480; 1 drivers
|
|
v0xc3f1ffde0_0 .net *"_ivl_9", 15 0, L_0xc3ecff520; 1 drivers
|
|
L_0xc3e854490 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f1ffe80_0 .net/s "acc_in", 31 0, L_0xc3e854490; 1 drivers
|
|
v0xc3f1fff20_0 .net/s "acc_out", 31 0, L_0xc3ec652c0; alias, 1 drivers
|
|
v0xc3f208000_0 .net/s "product", 15 0, L_0xc3f2495e0; 1 drivers
|
|
v0xc3f2080a0_0 .net/s "product_ext", 31 0, L_0xc3f249680; 1 drivers
|
|
v0xc3f208140_0 .net/s "w", 7 0, L_0xc3ecff0c0; 1 drivers
|
|
v0xc3f2081e0_0 .net/s "x", 7 0, L_0xc3ecff5c0; 1 drivers
|
|
L_0xc3f2494a0 .extend/s 16, L_0xc3ecff5c0;
|
|
L_0xc3f249540 .extend/s 16, L_0xc3ecff0c0;
|
|
L_0xc3f2495e0 .arith/mult 16, L_0xc3f2494a0, L_0xc3f249540;
|
|
L_0xc3ecff480 .part L_0xc3f2495e0, 15, 1;
|
|
L_0xc3ecff520 .repeat 16, 16, L_0xc3ecff480;
|
|
L_0xc3f249680 .concat [ 16 16 0 0], L_0xc3f2495e0, L_0xc3ecff520;
|
|
L_0xc3ec652c0 .arith/sum 32, L_0xc3e854490, L_0xc3f249680;
|
|
S_0xc3f201980 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea4c0 .param/l "i" 1 6 20, +C4<01011>;
|
|
S_0xc3f201b00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f201980;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed343c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34400 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34440 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f208280_0 .net/s *"_ivl_0", 15 0, L_0xc3f249720; 1 drivers
|
|
v0xc3f208320_0 .net/s *"_ivl_2", 15 0, L_0xc3f2497c0; 1 drivers
|
|
v0xc3f2083c0_0 .net *"_ivl_7", 0 0, L_0xc3ecff660; 1 drivers
|
|
v0xc3f208460_0 .net *"_ivl_9", 15 0, L_0xc3ecff700; 1 drivers
|
|
L_0xc3e8544d8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f208500_0 .net/s "acc_in", 31 0, L_0xc3e8544d8; 1 drivers
|
|
v0xc3f2085a0_0 .net/s "acc_out", 31 0, L_0xc3ec65360; alias, 1 drivers
|
|
v0xc3f208640_0 .net/s "product", 15 0, L_0xc3f249860; 1 drivers
|
|
v0xc3f2086e0_0 .net/s "product_ext", 31 0, L_0xc3f249900; 1 drivers
|
|
v0xc3f208780_0 .net/s "w", 7 0, L_0xc3ecff840; 1 drivers
|
|
v0xc3f208820_0 .net/s "x", 7 0, L_0xc3ecff7a0; 1 drivers
|
|
L_0xc3f249720 .extend/s 16, L_0xc3ecff7a0;
|
|
L_0xc3f2497c0 .extend/s 16, L_0xc3ecff840;
|
|
L_0xc3f249860 .arith/mult 16, L_0xc3f249720, L_0xc3f2497c0;
|
|
L_0xc3ecff660 .part L_0xc3f249860, 15, 1;
|
|
L_0xc3ecff700 .repeat 16, 16, L_0xc3ecff660;
|
|
L_0xc3f249900 .concat [ 16 16 0 0], L_0xc3f249860, L_0xc3ecff700;
|
|
L_0xc3ec65360 .arith/sum 32, L_0xc3e8544d8, L_0xc3f249900;
|
|
S_0xc3f201c80 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea500 .param/l "i" 1 6 20, +C4<01100>;
|
|
S_0xc3f201e00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f201c80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34480 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed344c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34500 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f2088c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f2499a0; 1 drivers
|
|
v0xc3f208960_0 .net/s *"_ivl_2", 15 0, L_0xc3f249a40; 1 drivers
|
|
v0xc3f208a00_0 .net *"_ivl_7", 0 0, L_0xc3ecff8e0; 1 drivers
|
|
v0xc3f208aa0_0 .net *"_ivl_9", 15 0, L_0xc3ecff980; 1 drivers
|
|
L_0xc3e854520 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f208b40_0 .net/s "acc_in", 31 0, L_0xc3e854520; 1 drivers
|
|
v0xc3f208be0_0 .net/s "acc_out", 31 0, L_0xc3ec65400; alias, 1 drivers
|
|
v0xc3f208c80_0 .net/s "product", 15 0, L_0xc3f249ae0; 1 drivers
|
|
v0xc3f208d20_0 .net/s "product_ext", 31 0, L_0xc3f249b80; 1 drivers
|
|
v0xc3f208dc0_0 .net/s "w", 7 0, L_0xc3ecffac0; 1 drivers
|
|
v0xc3f208e60_0 .net/s "x", 7 0, L_0xc3ecffa20; 1 drivers
|
|
L_0xc3f2499a0 .extend/s 16, L_0xc3ecffa20;
|
|
L_0xc3f249a40 .extend/s 16, L_0xc3ecffac0;
|
|
L_0xc3f249ae0 .arith/mult 16, L_0xc3f2499a0, L_0xc3f249a40;
|
|
L_0xc3ecff8e0 .part L_0xc3f249ae0, 15, 1;
|
|
L_0xc3ecff980 .repeat 16, 16, L_0xc3ecff8e0;
|
|
L_0xc3f249b80 .concat [ 16 16 0 0], L_0xc3f249ae0, L_0xc3ecff980;
|
|
L_0xc3ec65400 .arith/sum 32, L_0xc3e854520, L_0xc3f249b80;
|
|
S_0xc3f201f80 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea540 .param/l "i" 1 6 20, +C4<01101>;
|
|
S_0xc3f202100 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f201f80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34540 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34580 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed345c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f208f00_0 .net/s *"_ivl_0", 15 0, L_0xc3f249c20; 1 drivers
|
|
v0xc3f208fa0_0 .net/s *"_ivl_2", 15 0, L_0xc3f249cc0; 1 drivers
|
|
v0xc3f209040_0 .net *"_ivl_7", 0 0, L_0xc3ecffb60; 1 drivers
|
|
v0xc3f2090e0_0 .net *"_ivl_9", 15 0, L_0xc3ecffc00; 1 drivers
|
|
L_0xc3e854568 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f209180_0 .net/s "acc_in", 31 0, L_0xc3e854568; 1 drivers
|
|
v0xc3f209220_0 .net/s "acc_out", 31 0, L_0xc3ec654a0; alias, 1 drivers
|
|
v0xc3f2092c0_0 .net/s "product", 15 0, L_0xc3f249d60; 1 drivers
|
|
v0xc3f209360_0 .net/s "product_ext", 31 0, L_0xc3f249e00; 1 drivers
|
|
v0xc3f209400_0 .net/s "w", 7 0, L_0xc3ecffd40; 1 drivers
|
|
v0xc3f2094a0_0 .net/s "x", 7 0, L_0xc3ecffca0; 1 drivers
|
|
L_0xc3f249c20 .extend/s 16, L_0xc3ecffca0;
|
|
L_0xc3f249cc0 .extend/s 16, L_0xc3ecffd40;
|
|
L_0xc3f249d60 .arith/mult 16, L_0xc3f249c20, L_0xc3f249cc0;
|
|
L_0xc3ecffb60 .part L_0xc3f249d60, 15, 1;
|
|
L_0xc3ecffc00 .repeat 16, 16, L_0xc3ecffb60;
|
|
L_0xc3f249e00 .concat [ 16 16 0 0], L_0xc3f249d60, L_0xc3ecffc00;
|
|
L_0xc3ec654a0 .arith/sum 32, L_0xc3e854568, L_0xc3f249e00;
|
|
S_0xc3f202280 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea580 .param/l "i" 1 6 20, +C4<01110>;
|
|
S_0xc3f202400 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f202280;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34600 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34640 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34680 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f209540_0 .net/s *"_ivl_0", 15 0, L_0xc3f249ea0; 1 drivers
|
|
v0xc3f2095e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f249f40; 1 drivers
|
|
v0xc3f209680_0 .net *"_ivl_7", 0 0, L_0xc3ecffde0; 1 drivers
|
|
v0xc3f209720_0 .net *"_ivl_9", 15 0, L_0xc3ecffe80; 1 drivers
|
|
L_0xc3e8545b0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f2097c0_0 .net/s "acc_in", 31 0, L_0xc3e8545b0; 1 drivers
|
|
v0xc3f209860_0 .net/s "acc_out", 31 0, L_0xc3ec65540; alias, 1 drivers
|
|
v0xc3f209900_0 .net/s "product", 15 0, L_0xc3f249fe0; 1 drivers
|
|
v0xc3f2099a0_0 .net/s "product_ext", 31 0, L_0xc3f24a080; 1 drivers
|
|
v0xc3f209a40_0 .net/s "w", 7 0, L_0xc3ed4c000; 1 drivers
|
|
v0xc3f209ae0_0 .net/s "x", 7 0, L_0xc3ecfff20; 1 drivers
|
|
L_0xc3f249ea0 .extend/s 16, L_0xc3ecfff20;
|
|
L_0xc3f249f40 .extend/s 16, L_0xc3ed4c000;
|
|
L_0xc3f249fe0 .arith/mult 16, L_0xc3f249ea0, L_0xc3f249f40;
|
|
L_0xc3ecffde0 .part L_0xc3f249fe0, 15, 1;
|
|
L_0xc3ecffe80 .repeat 16, 16, L_0xc3ecffde0;
|
|
L_0xc3f24a080 .concat [ 16 16 0 0], L_0xc3f249fe0, L_0xc3ecffe80;
|
|
L_0xc3ec65540 .arith/sum 32, L_0xc3e8545b0, L_0xc3f24a080;
|
|
S_0xc3f202580 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 20, 6 20 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea5c0 .param/l "i" 1 6 20, +C4<01111>;
|
|
S_0xc3f202700 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f202580;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed346c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34700 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34740 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f209b80_0 .net/s *"_ivl_0", 15 0, L_0xc3f24a120; 1 drivers
|
|
v0xc3f209c20_0 .net/s *"_ivl_2", 15 0, L_0xc3f24a1c0; 1 drivers
|
|
v0xc3f209cc0_0 .net *"_ivl_7", 0 0, L_0xc3ed4c0a0; 1 drivers
|
|
v0xc3f209d60_0 .net *"_ivl_9", 15 0, L_0xc3ed4c140; 1 drivers
|
|
L_0xc3e8545f8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f209e00_0 .net/s "acc_in", 31 0, L_0xc3e8545f8; 1 drivers
|
|
v0xc3f209ea0_0 .net/s "acc_out", 31 0, L_0xc3ec655e0; alias, 1 drivers
|
|
v0xc3f209f40_0 .net/s "product", 15 0, L_0xc3f24a260; 1 drivers
|
|
v0xc3f209fe0_0 .net/s "product_ext", 31 0, L_0xc3f24a300; 1 drivers
|
|
v0xc3f20a080_0 .net/s "w", 7 0, L_0xc3ed4c280; 1 drivers
|
|
v0xc3f20a120_0 .net/s "x", 7 0, L_0xc3ed4c1e0; 1 drivers
|
|
L_0xc3f24a120 .extend/s 16, L_0xc3ed4c1e0;
|
|
L_0xc3f24a1c0 .extend/s 16, L_0xc3ed4c280;
|
|
L_0xc3f24a260 .arith/mult 16, L_0xc3f24a120, L_0xc3f24a1c0;
|
|
L_0xc3ed4c0a0 .part L_0xc3f24a260, 15, 1;
|
|
L_0xc3ed4c140 .repeat 16, 16, L_0xc3ed4c0a0;
|
|
L_0xc3f24a300 .concat [ 16 16 0 0], L_0xc3f24a260, L_0xc3ed4c140;
|
|
L_0xc3ec655e0 .arith/sum 32, L_0xc3e8545f8, L_0xc3f24a300;
|
|
S_0xc3f202880 .scope generate, "GEN_TREE_INPUT[0]" "GEN_TREE_INPUT[0]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea600 .param/l "i" 1 6 80, +C4<00>;
|
|
L_0x1057423e0 .functor BUFZ 32, L_0xc3ec64e60, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f202a00 .scope generate, "GEN_TREE_INPUT[1]" "GEN_TREE_INPUT[1]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea640 .param/l "i" 1 6 80, +C4<01>;
|
|
L_0x105742860 .functor BUFZ 32, L_0xc3ec64f00, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f202b80 .scope generate, "GEN_TREE_INPUT[2]" "GEN_TREE_INPUT[2]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea680 .param/l "i" 1 6 80, +C4<010>;
|
|
L_0x105742ce0 .functor BUFZ 32, L_0xc3ec64d20, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f202d00 .scope generate, "GEN_TREE_INPUT[3]" "GEN_TREE_INPUT[3]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea6c0 .param/l "i" 1 6 80, +C4<011>;
|
|
L_0x105742ea0 .functor BUFZ 32, L_0xc3ec64b40, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f202e80 .scope generate, "GEN_TREE_INPUT[4]" "GEN_TREE_INPUT[4]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea700 .param/l "i" 1 6 80, +C4<0100>;
|
|
L_0x1057430a0 .functor BUFZ 32, L_0xc3ec64dc0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203000 .scope generate, "GEN_TREE_INPUT[5]" "GEN_TREE_INPUT[5]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea740 .param/l "i" 1 6 80, +C4<0101>;
|
|
L_0x1057432a0 .functor BUFZ 32, L_0xc3ec64fa0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203180 .scope generate, "GEN_TREE_INPUT[6]" "GEN_TREE_INPUT[6]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea780 .param/l "i" 1 6 80, +C4<0110>;
|
|
L_0x10573a5a0 .functor BUFZ 32, L_0xc3ec65040, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203300 .scope generate, "GEN_TREE_INPUT[7]" "GEN_TREE_INPUT[7]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea7c0 .param/l "i" 1 6 80, +C4<0111>;
|
|
L_0x1057411c0 .functor BUFZ 32, L_0xc3ec650e0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203480 .scope generate, "GEN_TREE_INPUT[8]" "GEN_TREE_INPUT[8]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea800 .param/l "i" 1 6 80, +C4<01000>;
|
|
L_0x105741780 .functor BUFZ 32, L_0xc3ec65180, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203600 .scope generate, "GEN_TREE_INPUT[9]" "GEN_TREE_INPUT[9]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea840 .param/l "i" 1 6 80, +C4<01001>;
|
|
L_0x105739b60 .functor BUFZ 32, L_0xc3ec65220, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203780 .scope generate, "GEN_TREE_INPUT[10]" "GEN_TREE_INPUT[10]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea880 .param/l "i" 1 6 80, +C4<01010>;
|
|
L_0x10573c0c0 .functor BUFZ 32, L_0xc3ec652c0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203900 .scope generate, "GEN_TREE_INPUT[11]" "GEN_TREE_INPUT[11]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea8c0 .param/l "i" 1 6 80, +C4<01011>;
|
|
L_0x10572ec40 .functor BUFZ 32, L_0xc3ec65360, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203a80 .scope generate, "GEN_TREE_INPUT[12]" "GEN_TREE_INPUT[12]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea900 .param/l "i" 1 6 80, +C4<01100>;
|
|
L_0x105740aa0 .functor BUFZ 32, L_0xc3ec65400, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203c00 .scope generate, "GEN_TREE_INPUT[13]" "GEN_TREE_INPUT[13]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea940 .param/l "i" 1 6 80, +C4<01101>;
|
|
L_0x105746660 .functor BUFZ 32, L_0xc3ec654a0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f203d80 .scope generate, "GEN_TREE_INPUT[14]" "GEN_TREE_INPUT[14]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea980 .param/l "i" 1 6 80, +C4<01110>;
|
|
L_0xc3f24c000 .functor BUFZ 32, L_0xc3ec65540, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f210000 .scope generate, "GEN_TREE_INPUT[15]" "GEN_TREE_INPUT[15]" 6 80, 6 80 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecea9c0 .param/l "i" 1 6 80, +C4<01111>;
|
|
L_0xc3f24c070 .functor BUFZ 32, L_0xc3ec655e0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f210180 .scope generate, "GEN_TREE_LEVEL[0]" "GEN_TREE_LEVEL[0]" 6 92, 6 92 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaa00 .param/l "level" 1 6 92, +C4<00>;
|
|
S_0xc3f210300 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaa40 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec65680 .arith/sum 32, L_0x1057423e0, L_0x105742860;
|
|
S_0xc3f210480 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaa80 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ec65720 .arith/sum 32, L_0x105742ce0, L_0x105742ea0;
|
|
S_0xc3f210600 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaac0 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ec657c0 .arith/sum 32, L_0x1057430a0, L_0x1057432a0;
|
|
S_0xc3f210780 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceab00 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ec65860 .arith/sum 32, L_0x10573a5a0, L_0x1057411c0;
|
|
S_0xc3f210900 .scope generate, "GEN_TREE_NODE[4]" "GEN_TREE_NODE[4]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceab40 .param/l "node" 1 6 94, +C4<0100>;
|
|
L_0xc3ec65900 .arith/sum 32, L_0x105741780, L_0x105739b60;
|
|
S_0xc3f210a80 .scope generate, "GEN_TREE_NODE[5]" "GEN_TREE_NODE[5]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceab80 .param/l "node" 1 6 94, +C4<0101>;
|
|
L_0xc3ec659a0 .arith/sum 32, L_0x10573c0c0, L_0x10572ec40;
|
|
S_0xc3f210c00 .scope generate, "GEN_TREE_NODE[6]" "GEN_TREE_NODE[6]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceabc0 .param/l "node" 1 6 94, +C4<0110>;
|
|
L_0xc3ec65a40 .arith/sum 32, L_0x105740aa0, L_0x105746660;
|
|
S_0xc3f210d80 .scope generate, "GEN_TREE_NODE[7]" "GEN_TREE_NODE[7]" 6 94, 6 94 0, S_0xc3f210180;
|
|
.timescale -9 -12;
|
|
P_0xc3eceac00 .param/l "node" 1 6 94, +C4<0111>;
|
|
L_0xc3ec65ae0 .arith/sum 32, L_0xc3f24c000, L_0xc3f24c070;
|
|
S_0xc3f210f00 .scope generate, "GEN_TREE_LEVEL[1]" "GEN_TREE_LEVEL[1]" 6 92, 6 92 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3eceac40 .param/l "level" 1 6 92, +C4<01>;
|
|
S_0xc3f211080 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f210f00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceac80 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec65b80 .arith/sum 32, L_0xc3ec65680, L_0xc3ec65720;
|
|
S_0xc3f211200 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f210f00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceacc0 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ec65c20 .arith/sum 32, L_0xc3ec657c0, L_0xc3ec65860;
|
|
S_0xc3f211380 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f210f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecead00 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ec65cc0 .arith/sum 32, L_0xc3ec65900, L_0xc3ec659a0;
|
|
S_0xc3f211500 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f210f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecead40 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ec65d60 .arith/sum 32, L_0xc3ec65a40, L_0xc3ec65ae0;
|
|
S_0xc3f211680 .scope generate, "GEN_TREE_LEVEL[2]" "GEN_TREE_LEVEL[2]" 6 92, 6 92 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3ecead80 .param/l "level" 1 6 92, +C4<010>;
|
|
S_0xc3f211800 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f211680;
|
|
.timescale -9 -12;
|
|
P_0xc3eceadc0 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec65e00 .arith/sum 32, L_0xc3ec65b80, L_0xc3ec65c20;
|
|
S_0xc3f211980 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f211680;
|
|
.timescale -9 -12;
|
|
P_0xc3eceae00 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ec65ea0 .arith/sum 32, L_0xc3ec65cc0, L_0xc3ec65d60;
|
|
S_0xc3f211b00 .scope generate, "GEN_TREE_LEVEL[3]" "GEN_TREE_LEVEL[3]" 6 92, 6 92 0, S_0x10573bf40;
|
|
.timescale -9 -12;
|
|
P_0xc3eceae40 .param/l "level" 1 6 92, +C4<011>;
|
|
S_0xc3f211c80 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f211b00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceae80 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec65f40 .arith/sum 32, L_0xc3ec65e00, L_0xc3ec65ea0;
|
|
S_0xc3f211e00 .scope generate, "GEN_NEURON[1]" "GEN_NEURON[1]" 4 34, 4 34 0, S_0x1057418a0;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaec0 .param/l "n" 1 4 34, +C4<01>;
|
|
S_0xc3f211f80 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0xc3f211e00;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 1 "clk";
|
|
.port_info 1 /INPUT 1 "rst";
|
|
.port_info 2 /INPUT 1 "start";
|
|
.port_info 3 /INPUT 2048 "x_bus";
|
|
.port_info 4 /INPUT 2048 "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_0xc3f212100 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>;
|
|
P_0xc3f212140 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3f212180 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000010000>;
|
|
P_0xc3f2121c0 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000100>;
|
|
P_0xc3f212200 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000100000000>;
|
|
P_0xc3f212240 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000010000>;
|
|
v0xc3f21e080_0 .net *"_ivl_0", 31 0, L_0xc3f24a440; 1 drivers
|
|
v0xc3f21e120_0 .net *"_ivl_11", 31 0, L_0xc3f24a580; 1 drivers
|
|
v0xc3f21e1c0_0 .net *"_ivl_14", 31 0, L_0xc3f24a620; 1 drivers
|
|
L_0xc3e854718 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21e260_0 .net *"_ivl_17", 27 0, L_0xc3e854718; 1 drivers
|
|
L_0xc3e854760 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21e300_0 .net/2u *"_ivl_18", 31 0, L_0xc3e854760; 1 drivers
|
|
v0xc3f21e3a0_0 .net *"_ivl_21", 31 0, L_0xc3f24a6c0; 1 drivers
|
|
L_0xc3e8547a8 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21e440_0 .net/2u *"_ivl_22", 31 0, L_0xc3e8547a8; 1 drivers
|
|
v0xc3f21e4e0_0 .net *"_ivl_25", 31 0, L_0xc3f24a760; 1 drivers
|
|
v0xc3f21e580_0 .net *"_ivl_29", 0 0, L_0xc3ed4eee0; 1 drivers
|
|
L_0xc3e854640 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21e620_0 .net *"_ivl_3", 27 0, L_0xc3e854640; 1 drivers
|
|
v0xc3f21e6c0_0 .net *"_ivl_31", 23 0, L_0xc3ed4ef80; 1 drivers
|
|
L_0xc3e854688 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21e760_0 .net/2u *"_ivl_4", 31 0, L_0xc3e854688; 1 drivers
|
|
v0xc3f21e800_0 .net *"_ivl_7", 31 0, L_0xc3f24a4e0; 1 drivers
|
|
L_0xc3e8546d0 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21e8a0_0 .net/2u *"_ivl_8", 31 0, L_0xc3e8546d0; 1 drivers
|
|
v0xc3f21e940_0 .var/s "acc", 31 0;
|
|
v0xc3f21e9e0_0 .net/s "acc_next", 31 0, L_0xc3ec67480; 1 drivers
|
|
v0xc3f21ea80_0 .net/s "bias", 7 0, L_0xc3ed4f0c0; 1 drivers
|
|
v0xc3f21eb20_0 .net/s "bias_ext", 31 0, L_0xc3f251040; 1 drivers
|
|
v0xc3f21ebc0_0 .var "busy", 0 0;
|
|
v0xc3f21ec60_0 .net "clk", 0 0, v0xc3f243160_0; alias, 1 drivers
|
|
v0xc3f21ed00_0 .var "done", 0 0;
|
|
v0xc3f21eda0_0 .net/s "final_acc", 31 0, L_0xc3ec67520; 1 drivers
|
|
v0xc3f21ee40_0 .var "group_index", 3 0;
|
|
v0xc3f21eee0_0 .net "rst", 0 0, v0xc3f243480_0; alias, 1 drivers
|
|
v0xc3f21ef80_0 .net "start", 0 0, v0xc3f243520_0; alias, 1 drivers
|
|
v0xc3f21f020_0 .net/s "w_bus", 2047 0, L_0xc3ed4f020; 1 drivers
|
|
v0xc3f21f0c0_0 .net/s "w_group", 127 0, L_0xc3ed4c640; 1 drivers
|
|
v0xc3f21f160_0 .net/s "x_bus", 2047 0, v0xc3f243660_0; alias, 1 drivers
|
|
v0xc3f21f200_0 .net/s "x_group", 127 0, L_0xc3ed4c5a0; 1 drivers
|
|
v0xc3f21f2a0_0 .var/s "y", 7 0;
|
|
L_0xc3f24a440 .concat [ 4 28 0 0], v0xc3f21ee40_0, L_0xc3e854640;
|
|
L_0xc3f24a4e0 .arith/mult 32, L_0xc3f24a440, L_0xc3e854688;
|
|
L_0xc3f24a580 .arith/mult 32, L_0xc3f24a4e0, L_0xc3e8546d0;
|
|
L_0xc3ed4c5a0 .part/v v0xc3f243660_0, L_0xc3f24a580, 128;
|
|
L_0xc3f24a620 .concat [ 4 28 0 0], v0xc3f21ee40_0, L_0xc3e854718;
|
|
L_0xc3f24a6c0 .arith/mult 32, L_0xc3f24a620, L_0xc3e854760;
|
|
L_0xc3f24a760 .arith/mult 32, L_0xc3f24a6c0, L_0xc3e8547a8;
|
|
L_0xc3ed4c640 .part/v L_0xc3ed4f020, L_0xc3f24a760, 128;
|
|
L_0xc3ed4eee0 .part L_0xc3ed4f0c0, 7, 1;
|
|
L_0xc3ed4ef80 .repeat 24, 24, L_0xc3ed4eee0;
|
|
L_0xc3f251040 .concat [ 8 24 0 0], L_0xc3ed4f0c0, L_0xc3ed4ef80;
|
|
L_0xc3ec67520 .arith/sum 32, L_0xc3ec67480, L_0xc3f251040;
|
|
S_0xc3f212280 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0xc3f211f80;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 128 "x_bus";
|
|
.port_info 1 /INPUT 128 "w_bus";
|
|
.port_info 2 /INPUT 32 "acc_in";
|
|
.port_info 3 /OUTPUT 32 "acc_out";
|
|
P_0x105742be0 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105742c20 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105742c60 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000010000>;
|
|
P_0x105742ca0 .param/l "TREE_LEVELS" 1 6 70, +C4<00000000000000000000000000000100>;
|
|
v0xc3f21dcc0_0 .net/s "acc_in", 31 0, v0xc3f21e940_0; 1 drivers
|
|
v0xc3f21dd60_0 .net/s "acc_out", 31 0, L_0xc3ec67480; alias, 1 drivers
|
|
v0xc3f21de00 .array "products", 15 0;
|
|
v0xc3f21de00_0 .net/s v0xc3f21de00 0, 31 0, L_0xc3ec66120; 1 drivers
|
|
v0xc3f21de00_1 .net/s v0xc3f21de00 1, 31 0, L_0xc3ec661c0; 1 drivers
|
|
v0xc3f21de00_2 .net/s v0xc3f21de00 2, 31 0, L_0xc3ec66260; 1 drivers
|
|
v0xc3f21de00_3 .net/s v0xc3f21de00 3, 31 0, L_0xc3ec66300; 1 drivers
|
|
v0xc3f21de00_4 .net/s v0xc3f21de00 4, 31 0, L_0xc3ec663a0; 1 drivers
|
|
v0xc3f21de00_5 .net/s v0xc3f21de00 5, 31 0, L_0xc3ec66440; 1 drivers
|
|
v0xc3f21de00_6 .net/s v0xc3f21de00 6, 31 0, L_0xc3ec664e0; 1 drivers
|
|
v0xc3f21de00_7 .net/s v0xc3f21de00 7, 31 0, L_0xc3ec66580; 1 drivers
|
|
v0xc3f21de00_8 .net/s v0xc3f21de00 8, 31 0, L_0xc3ec66620; 1 drivers
|
|
v0xc3f21de00_9 .net/s v0xc3f21de00 9, 31 0, L_0xc3ec666c0; 1 drivers
|
|
v0xc3f21de00_10 .net/s v0xc3f21de00 10, 31 0, L_0xc3ec66760; 1 drivers
|
|
v0xc3f21de00_11 .net/s v0xc3f21de00 11, 31 0, L_0xc3ec66800; 1 drivers
|
|
v0xc3f21de00_12 .net/s v0xc3f21de00 12, 31 0, L_0xc3ec668a0; 1 drivers
|
|
v0xc3f21de00_13 .net/s v0xc3f21de00 13, 31 0, L_0xc3ec66940; 1 drivers
|
|
v0xc3f21de00_14 .net/s v0xc3f21de00 14, 31 0, L_0xc3ec669e0; 1 drivers
|
|
v0xc3f21de00_15 .net/s v0xc3f21de00 15, 31 0, L_0xc3ec66a80; 1 drivers
|
|
v0xc3f21dea0 .array "tree", 79 0;
|
|
v0xc3f21dea0_0 .net/s v0xc3f21dea0 0, 31 0, L_0xc3f24c0e0; 1 drivers
|
|
v0xc3f21dea0_1 .net/s v0xc3f21dea0 1, 31 0, L_0xc3f24c150; 1 drivers
|
|
v0xc3f21dea0_2 .net/s v0xc3f21dea0 2, 31 0, L_0xc3f24c1c0; 1 drivers
|
|
v0xc3f21dea0_3 .net/s v0xc3f21dea0 3, 31 0, L_0xc3f24c230; 1 drivers
|
|
v0xc3f21dea0_4 .net/s v0xc3f21dea0 4, 31 0, L_0xc3f24c2a0; 1 drivers
|
|
v0xc3f21dea0_5 .net/s v0xc3f21dea0 5, 31 0, L_0xc3f24c310; 1 drivers
|
|
v0xc3f21dea0_6 .net/s v0xc3f21dea0 6, 31 0, L_0xc3f24c380; 1 drivers
|
|
v0xc3f21dea0_7 .net/s v0xc3f21dea0 7, 31 0, L_0xc3f24c3f0; 1 drivers
|
|
v0xc3f21dea0_8 .net/s v0xc3f21dea0 8, 31 0, L_0xc3f24c460; 1 drivers
|
|
v0xc3f21dea0_9 .net/s v0xc3f21dea0 9, 31 0, L_0xc3f24c4d0; 1 drivers
|
|
v0xc3f21dea0_10 .net/s v0xc3f21dea0 10, 31 0, L_0xc3f24c540; 1 drivers
|
|
v0xc3f21dea0_11 .net/s v0xc3f21dea0 11, 31 0, L_0xc3f24c5b0; 1 drivers
|
|
v0xc3f21dea0_12 .net/s v0xc3f21dea0 12, 31 0, L_0xc3f24c620; 1 drivers
|
|
v0xc3f21dea0_13 .net/s v0xc3f21dea0 13, 31 0, L_0xc3f24c690; 1 drivers
|
|
v0xc3f21dea0_14 .net/s v0xc3f21dea0 14, 31 0, L_0xc3f24c700; 1 drivers
|
|
v0xc3f21dea0_15 .net/s v0xc3f21dea0 15, 31 0, L_0xc3f24c770; 1 drivers
|
|
v0xc3f21dea0_16 .net/s v0xc3f21dea0 16, 31 0, L_0xc3ec66b20; 1 drivers
|
|
v0xc3f21dea0_17 .net/s v0xc3f21dea0 17, 31 0, L_0xc3ec66bc0; 1 drivers
|
|
v0xc3f21dea0_18 .net/s v0xc3f21dea0 18, 31 0, L_0xc3ec66c60; 1 drivers
|
|
v0xc3f21dea0_19 .net/s v0xc3f21dea0 19, 31 0, L_0xc3ec66d00; 1 drivers
|
|
v0xc3f21dea0_20 .net/s v0xc3f21dea0 20, 31 0, L_0xc3ec66da0; 1 drivers
|
|
v0xc3f21dea0_21 .net/s v0xc3f21dea0 21, 31 0, L_0xc3ec66e40; 1 drivers
|
|
v0xc3f21dea0_22 .net/s v0xc3f21dea0 22, 31 0, L_0xc3ec66ee0; 1 drivers
|
|
v0xc3f21dea0_23 .net/s v0xc3f21dea0 23, 31 0, L_0xc3ec66f80; 1 drivers
|
|
o0xc3e827000 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_24 .net/s v0xc3f21dea0 24, 31 0, o0xc3e827000; 0 drivers
|
|
o0xc3e827030 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_25 .net/s v0xc3f21dea0 25, 31 0, o0xc3e827030; 0 drivers
|
|
o0xc3e827060 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_26 .net/s v0xc3f21dea0 26, 31 0, o0xc3e827060; 0 drivers
|
|
o0xc3e827090 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_27 .net/s v0xc3f21dea0 27, 31 0, o0xc3e827090; 0 drivers
|
|
o0xc3e8270c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_28 .net/s v0xc3f21dea0 28, 31 0, o0xc3e8270c0; 0 drivers
|
|
o0xc3e8270f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_29 .net/s v0xc3f21dea0 29, 31 0, o0xc3e8270f0; 0 drivers
|
|
o0xc3e827120 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_30 .net/s v0xc3f21dea0 30, 31 0, o0xc3e827120; 0 drivers
|
|
o0xc3e827150 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_31 .net/s v0xc3f21dea0 31, 31 0, o0xc3e827150; 0 drivers
|
|
v0xc3f21dea0_32 .net/s v0xc3f21dea0 32, 31 0, L_0xc3ec67020; 1 drivers
|
|
v0xc3f21dea0_33 .net/s v0xc3f21dea0 33, 31 0, L_0xc3ec670c0; 1 drivers
|
|
v0xc3f21dea0_34 .net/s v0xc3f21dea0 34, 31 0, L_0xc3ec67160; 1 drivers
|
|
v0xc3f21dea0_35 .net/s v0xc3f21dea0 35, 31 0, L_0xc3ec67200; 1 drivers
|
|
o0xc3e827240 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_36 .net/s v0xc3f21dea0 36, 31 0, o0xc3e827240; 0 drivers
|
|
o0xc3e827270 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_37 .net/s v0xc3f21dea0 37, 31 0, o0xc3e827270; 0 drivers
|
|
o0xc3e8272a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_38 .net/s v0xc3f21dea0 38, 31 0, o0xc3e8272a0; 0 drivers
|
|
o0xc3e8272d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_39 .net/s v0xc3f21dea0 39, 31 0, o0xc3e8272d0; 0 drivers
|
|
o0xc3e827300 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_40 .net/s v0xc3f21dea0 40, 31 0, o0xc3e827300; 0 drivers
|
|
o0xc3e827330 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_41 .net/s v0xc3f21dea0 41, 31 0, o0xc3e827330; 0 drivers
|
|
o0xc3e827360 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_42 .net/s v0xc3f21dea0 42, 31 0, o0xc3e827360; 0 drivers
|
|
o0xc3e827390 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_43 .net/s v0xc3f21dea0 43, 31 0, o0xc3e827390; 0 drivers
|
|
o0xc3e8273c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_44 .net/s v0xc3f21dea0 44, 31 0, o0xc3e8273c0; 0 drivers
|
|
o0xc3e8273f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_45 .net/s v0xc3f21dea0 45, 31 0, o0xc3e8273f0; 0 drivers
|
|
o0xc3e827420 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_46 .net/s v0xc3f21dea0 46, 31 0, o0xc3e827420; 0 drivers
|
|
o0xc3e827450 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_47 .net/s v0xc3f21dea0 47, 31 0, o0xc3e827450; 0 drivers
|
|
v0xc3f21dea0_48 .net/s v0xc3f21dea0 48, 31 0, L_0xc3ec672a0; 1 drivers
|
|
v0xc3f21dea0_49 .net/s v0xc3f21dea0 49, 31 0, L_0xc3ec67340; 1 drivers
|
|
o0xc3e8274e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_50 .net/s v0xc3f21dea0 50, 31 0, o0xc3e8274e0; 0 drivers
|
|
o0xc3e827510 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_51 .net/s v0xc3f21dea0 51, 31 0, o0xc3e827510; 0 drivers
|
|
o0xc3e827540 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_52 .net/s v0xc3f21dea0 52, 31 0, o0xc3e827540; 0 drivers
|
|
o0xc3e827570 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_53 .net/s v0xc3f21dea0 53, 31 0, o0xc3e827570; 0 drivers
|
|
o0xc3e8275a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_54 .net/s v0xc3f21dea0 54, 31 0, o0xc3e8275a0; 0 drivers
|
|
o0xc3e8275d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_55 .net/s v0xc3f21dea0 55, 31 0, o0xc3e8275d0; 0 drivers
|
|
o0xc3e827600 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_56 .net/s v0xc3f21dea0 56, 31 0, o0xc3e827600; 0 drivers
|
|
o0xc3e827630 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_57 .net/s v0xc3f21dea0 57, 31 0, o0xc3e827630; 0 drivers
|
|
o0xc3e827660 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_58 .net/s v0xc3f21dea0 58, 31 0, o0xc3e827660; 0 drivers
|
|
o0xc3e827690 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_59 .net/s v0xc3f21dea0 59, 31 0, o0xc3e827690; 0 drivers
|
|
o0xc3e8276c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_60 .net/s v0xc3f21dea0 60, 31 0, o0xc3e8276c0; 0 drivers
|
|
o0xc3e8276f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_61 .net/s v0xc3f21dea0 61, 31 0, o0xc3e8276f0; 0 drivers
|
|
o0xc3e827720 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_62 .net/s v0xc3f21dea0 62, 31 0, o0xc3e827720; 0 drivers
|
|
o0xc3e827750 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_63 .net/s v0xc3f21dea0 63, 31 0, o0xc3e827750; 0 drivers
|
|
v0xc3f21dea0_64 .net/s v0xc3f21dea0 64, 31 0, L_0xc3ec673e0; 1 drivers
|
|
o0xc3e8277b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_65 .net/s v0xc3f21dea0 65, 31 0, o0xc3e8277b0; 0 drivers
|
|
o0xc3e8277e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_66 .net/s v0xc3f21dea0 66, 31 0, o0xc3e8277e0; 0 drivers
|
|
o0xc3e827810 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_67 .net/s v0xc3f21dea0 67, 31 0, o0xc3e827810; 0 drivers
|
|
o0xc3e827840 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_68 .net/s v0xc3f21dea0 68, 31 0, o0xc3e827840; 0 drivers
|
|
o0xc3e827870 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_69 .net/s v0xc3f21dea0 69, 31 0, o0xc3e827870; 0 drivers
|
|
o0xc3e8278a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_70 .net/s v0xc3f21dea0 70, 31 0, o0xc3e8278a0; 0 drivers
|
|
o0xc3e8278d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_71 .net/s v0xc3f21dea0 71, 31 0, o0xc3e8278d0; 0 drivers
|
|
o0xc3e827900 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_72 .net/s v0xc3f21dea0 72, 31 0, o0xc3e827900; 0 drivers
|
|
o0xc3e827930 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_73 .net/s v0xc3f21dea0 73, 31 0, o0xc3e827930; 0 drivers
|
|
o0xc3e827960 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_74 .net/s v0xc3f21dea0 74, 31 0, o0xc3e827960; 0 drivers
|
|
o0xc3e827990 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_75 .net/s v0xc3f21dea0 75, 31 0, o0xc3e827990; 0 drivers
|
|
o0xc3e8279c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_76 .net/s v0xc3f21dea0 76, 31 0, o0xc3e8279c0; 0 drivers
|
|
o0xc3e8279f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_77 .net/s v0xc3f21dea0 77, 31 0, o0xc3e8279f0; 0 drivers
|
|
o0xc3e827a20 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_78 .net/s v0xc3f21dea0 78, 31 0, o0xc3e827a20; 0 drivers
|
|
o0xc3e827a50 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f21dea0_79 .net/s v0xc3f21dea0 79, 31 0, o0xc3e827a50; 0 drivers
|
|
v0xc3f21df40_0 .net/s "w_bus", 127 0, L_0xc3ed4c640; alias, 1 drivers
|
|
v0xc3f21dfe0_0 .net/s "x_bus", 127 0, L_0xc3ed4c5a0; alias, 1 drivers
|
|
L_0xc3ed4c820 .part L_0xc3ed4c5a0, 0, 8;
|
|
L_0xc3ed4c8c0 .part L_0xc3ed4c640, 0, 8;
|
|
L_0xc3ed4caa0 .part L_0xc3ed4c5a0, 8, 8;
|
|
L_0xc3ed4cb40 .part L_0xc3ed4c640, 8, 8;
|
|
L_0xc3ed4cd20 .part L_0xc3ed4c5a0, 16, 8;
|
|
L_0xc3ed4cdc0 .part L_0xc3ed4c640, 16, 8;
|
|
L_0xc3ed4cfa0 .part L_0xc3ed4c5a0, 24, 8;
|
|
L_0xc3ed4d040 .part L_0xc3ed4c640, 24, 8;
|
|
L_0xc3ed4d220 .part L_0xc3ed4c5a0, 32, 8;
|
|
L_0xc3ed4d2c0 .part L_0xc3ed4c640, 32, 8;
|
|
L_0xc3ed4d4a0 .part L_0xc3ed4c5a0, 40, 8;
|
|
L_0xc3ed4d540 .part L_0xc3ed4c640, 40, 8;
|
|
L_0xc3ed4d720 .part L_0xc3ed4c5a0, 48, 8;
|
|
L_0xc3ed4d7c0 .part L_0xc3ed4c640, 48, 8;
|
|
L_0xc3ed4d9a0 .part L_0xc3ed4c5a0, 56, 8;
|
|
L_0xc3ed4da40 .part L_0xc3ed4c640, 56, 8;
|
|
L_0xc3ed4dc20 .part L_0xc3ed4c5a0, 64, 8;
|
|
L_0xc3ed4dd60 .part L_0xc3ed4c640, 64, 8;
|
|
L_0xc3ed4df40 .part L_0xc3ed4c5a0, 72, 8;
|
|
L_0xc3ed4dfe0 .part L_0xc3ed4c640, 72, 8;
|
|
L_0xc3ed4e1c0 .part L_0xc3ed4c5a0, 80, 8;
|
|
L_0xc3ed4dcc0 .part L_0xc3ed4c640, 80, 8;
|
|
L_0xc3ed4e3a0 .part L_0xc3ed4c5a0, 88, 8;
|
|
L_0xc3ed4e440 .part L_0xc3ed4c640, 88, 8;
|
|
L_0xc3ed4e620 .part L_0xc3ed4c5a0, 96, 8;
|
|
L_0xc3ed4e6c0 .part L_0xc3ed4c640, 96, 8;
|
|
L_0xc3ed4e8a0 .part L_0xc3ed4c5a0, 104, 8;
|
|
L_0xc3ed4e940 .part L_0xc3ed4c640, 104, 8;
|
|
L_0xc3ed4eb20 .part L_0xc3ed4c5a0, 112, 8;
|
|
L_0xc3ed4ebc0 .part L_0xc3ed4c640, 112, 8;
|
|
L_0xc3ed4eda0 .part L_0xc3ed4c5a0, 120, 8;
|
|
L_0xc3ed4ee40 .part L_0xc3ed4c640, 120, 8;
|
|
L_0xc3ec67480 .arith/sum 32, v0xc3f21e940_0, L_0xc3ec673e0;
|
|
S_0xc3f212400 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaf00 .param/l "i" 1 6 20, +C4<00>;
|
|
S_0xc3f212580 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f212400;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34780 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed347c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34800 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f20b840_0 .net/s *"_ivl_0", 15 0, L_0xc3f24a800; 1 drivers
|
|
v0xc3f20b8e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f24a8a0; 1 drivers
|
|
v0xc3f20b980_0 .net *"_ivl_7", 0 0, L_0xc3ed4c6e0; 1 drivers
|
|
v0xc3f20ba20_0 .net *"_ivl_9", 15 0, L_0xc3ed4c780; 1 drivers
|
|
L_0xc3e8547f0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f20bac0_0 .net/s "acc_in", 31 0, L_0xc3e8547f0; 1 drivers
|
|
v0xc3f20bb60_0 .net/s "acc_out", 31 0, L_0xc3ec66120; alias, 1 drivers
|
|
v0xc3f20bc00_0 .net/s "product", 15 0, L_0xc3f24a940; 1 drivers
|
|
v0xc3f20bca0_0 .net/s "product_ext", 31 0, L_0xc3f24a9e0; 1 drivers
|
|
v0xc3f20bd40_0 .net/s "w", 7 0, L_0xc3ed4c8c0; 1 drivers
|
|
v0xc3f20bde0_0 .net/s "x", 7 0, L_0xc3ed4c820; 1 drivers
|
|
L_0xc3f24a800 .extend/s 16, L_0xc3ed4c820;
|
|
L_0xc3f24a8a0 .extend/s 16, L_0xc3ed4c8c0;
|
|
L_0xc3f24a940 .arith/mult 16, L_0xc3f24a800, L_0xc3f24a8a0;
|
|
L_0xc3ed4c6e0 .part L_0xc3f24a940, 15, 1;
|
|
L_0xc3ed4c780 .repeat 16, 16, L_0xc3ed4c6e0;
|
|
L_0xc3f24a9e0 .concat [ 16 16 0 0], L_0xc3f24a940, L_0xc3ed4c780;
|
|
L_0xc3ec66120 .arith/sum 32, L_0xc3e8547f0, L_0xc3f24a9e0;
|
|
S_0xc3f212700 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaf40 .param/l "i" 1 6 20, +C4<01>;
|
|
S_0xc3f212880 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f212700;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34840 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34880 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed348c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f20be80_0 .net/s *"_ivl_0", 15 0, L_0xc3f24aa80; 1 drivers
|
|
v0xc3f20bf20_0 .net/s *"_ivl_2", 15 0, L_0xc3f24ab20; 1 drivers
|
|
v0xc3f214000_0 .net *"_ivl_7", 0 0, L_0xc3ed4c960; 1 drivers
|
|
v0xc3f2140a0_0 .net *"_ivl_9", 15 0, L_0xc3ed4ca00; 1 drivers
|
|
L_0xc3e854838 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f214140_0 .net/s "acc_in", 31 0, L_0xc3e854838; 1 drivers
|
|
v0xc3f2141e0_0 .net/s "acc_out", 31 0, L_0xc3ec661c0; alias, 1 drivers
|
|
v0xc3f214280_0 .net/s "product", 15 0, L_0xc3f24abc0; 1 drivers
|
|
v0xc3f214320_0 .net/s "product_ext", 31 0, L_0xc3f24ac60; 1 drivers
|
|
v0xc3f2143c0_0 .net/s "w", 7 0, L_0xc3ed4cb40; 1 drivers
|
|
v0xc3f214460_0 .net/s "x", 7 0, L_0xc3ed4caa0; 1 drivers
|
|
L_0xc3f24aa80 .extend/s 16, L_0xc3ed4caa0;
|
|
L_0xc3f24ab20 .extend/s 16, L_0xc3ed4cb40;
|
|
L_0xc3f24abc0 .arith/mult 16, L_0xc3f24aa80, L_0xc3f24ab20;
|
|
L_0xc3ed4c960 .part L_0xc3f24abc0, 15, 1;
|
|
L_0xc3ed4ca00 .repeat 16, 16, L_0xc3ed4c960;
|
|
L_0xc3f24ac60 .concat [ 16 16 0 0], L_0xc3f24abc0, L_0xc3ed4ca00;
|
|
L_0xc3ec661c0 .arith/sum 32, L_0xc3e854838, L_0xc3f24ac60;
|
|
S_0xc3f212a00 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceaf80 .param/l "i" 1 6 20, +C4<010>;
|
|
S_0xc3f212b80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f212a00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34900 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34940 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34980 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f214500_0 .net/s *"_ivl_0", 15 0, L_0xc3f24ad00; 1 drivers
|
|
v0xc3f2145a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f24ada0; 1 drivers
|
|
v0xc3f214640_0 .net *"_ivl_7", 0 0, L_0xc3ed4cbe0; 1 drivers
|
|
v0xc3f2146e0_0 .net *"_ivl_9", 15 0, L_0xc3ed4cc80; 1 drivers
|
|
L_0xc3e854880 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f214780_0 .net/s "acc_in", 31 0, L_0xc3e854880; 1 drivers
|
|
v0xc3f214820_0 .net/s "acc_out", 31 0, L_0xc3ec66260; alias, 1 drivers
|
|
v0xc3f2148c0_0 .net/s "product", 15 0, L_0xc3f24ae40; 1 drivers
|
|
v0xc3f214960_0 .net/s "product_ext", 31 0, L_0xc3f24aee0; 1 drivers
|
|
v0xc3f214a00_0 .net/s "w", 7 0, L_0xc3ed4cdc0; 1 drivers
|
|
v0xc3f214aa0_0 .net/s "x", 7 0, L_0xc3ed4cd20; 1 drivers
|
|
L_0xc3f24ad00 .extend/s 16, L_0xc3ed4cd20;
|
|
L_0xc3f24ada0 .extend/s 16, L_0xc3ed4cdc0;
|
|
L_0xc3f24ae40 .arith/mult 16, L_0xc3f24ad00, L_0xc3f24ada0;
|
|
L_0xc3ed4cbe0 .part L_0xc3f24ae40, 15, 1;
|
|
L_0xc3ed4cc80 .repeat 16, 16, L_0xc3ed4cbe0;
|
|
L_0xc3f24aee0 .concat [ 16 16 0 0], L_0xc3f24ae40, L_0xc3ed4cc80;
|
|
L_0xc3ec66260 .arith/sum 32, L_0xc3e854880, L_0xc3f24aee0;
|
|
S_0xc3f212d00 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceafc0 .param/l "i" 1 6 20, +C4<011>;
|
|
S_0xc3f212e80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f212d00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed349c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34a00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34a40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f214b40_0 .net/s *"_ivl_0", 15 0, L_0xc3f24af80; 1 drivers
|
|
v0xc3f214be0_0 .net/s *"_ivl_2", 15 0, L_0xc3f24b020; 1 drivers
|
|
v0xc3f214c80_0 .net *"_ivl_7", 0 0, L_0xc3ed4ce60; 1 drivers
|
|
v0xc3f214d20_0 .net *"_ivl_9", 15 0, L_0xc3ed4cf00; 1 drivers
|
|
L_0xc3e8548c8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f214dc0_0 .net/s "acc_in", 31 0, L_0xc3e8548c8; 1 drivers
|
|
v0xc3f214e60_0 .net/s "acc_out", 31 0, L_0xc3ec66300; alias, 1 drivers
|
|
v0xc3f214f00_0 .net/s "product", 15 0, L_0xc3f24b0c0; 1 drivers
|
|
v0xc3f214fa0_0 .net/s "product_ext", 31 0, L_0xc3f24b160; 1 drivers
|
|
v0xc3f215040_0 .net/s "w", 7 0, L_0xc3ed4d040; 1 drivers
|
|
v0xc3f2150e0_0 .net/s "x", 7 0, L_0xc3ed4cfa0; 1 drivers
|
|
L_0xc3f24af80 .extend/s 16, L_0xc3ed4cfa0;
|
|
L_0xc3f24b020 .extend/s 16, L_0xc3ed4d040;
|
|
L_0xc3f24b0c0 .arith/mult 16, L_0xc3f24af80, L_0xc3f24b020;
|
|
L_0xc3ed4ce60 .part L_0xc3f24b0c0, 15, 1;
|
|
L_0xc3ed4cf00 .repeat 16, 16, L_0xc3ed4ce60;
|
|
L_0xc3f24b160 .concat [ 16 16 0 0], L_0xc3f24b0c0, L_0xc3ed4cf00;
|
|
L_0xc3ec66300 .arith/sum 32, L_0xc3e8548c8, L_0xc3f24b160;
|
|
S_0xc3f213000 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb000 .param/l "i" 1 6 20, +C4<0100>;
|
|
S_0xc3f213180 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f213000;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34a80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34ac0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34b00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f215180_0 .net/s *"_ivl_0", 15 0, L_0xc3f24b200; 1 drivers
|
|
v0xc3f215220_0 .net/s *"_ivl_2", 15 0, L_0xc3f24b2a0; 1 drivers
|
|
v0xc3f2152c0_0 .net *"_ivl_7", 0 0, L_0xc3ed4d0e0; 1 drivers
|
|
v0xc3f215360_0 .net *"_ivl_9", 15 0, L_0xc3ed4d180; 1 drivers
|
|
L_0xc3e854910 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f215400_0 .net/s "acc_in", 31 0, L_0xc3e854910; 1 drivers
|
|
v0xc3f2154a0_0 .net/s "acc_out", 31 0, L_0xc3ec663a0; alias, 1 drivers
|
|
v0xc3f215540_0 .net/s "product", 15 0, L_0xc3f24b340; 1 drivers
|
|
v0xc3f2155e0_0 .net/s "product_ext", 31 0, L_0xc3f24b3e0; 1 drivers
|
|
v0xc3f215680_0 .net/s "w", 7 0, L_0xc3ed4d2c0; 1 drivers
|
|
v0xc3f215720_0 .net/s "x", 7 0, L_0xc3ed4d220; 1 drivers
|
|
L_0xc3f24b200 .extend/s 16, L_0xc3ed4d220;
|
|
L_0xc3f24b2a0 .extend/s 16, L_0xc3ed4d2c0;
|
|
L_0xc3f24b340 .arith/mult 16, L_0xc3f24b200, L_0xc3f24b2a0;
|
|
L_0xc3ed4d0e0 .part L_0xc3f24b340, 15, 1;
|
|
L_0xc3ed4d180 .repeat 16, 16, L_0xc3ed4d0e0;
|
|
L_0xc3f24b3e0 .concat [ 16 16 0 0], L_0xc3f24b340, L_0xc3ed4d180;
|
|
L_0xc3ec663a0 .arith/sum 32, L_0xc3e854910, L_0xc3f24b3e0;
|
|
S_0xc3f213300 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb040 .param/l "i" 1 6 20, +C4<0101>;
|
|
S_0xc3f213480 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f213300;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34b40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34b80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34bc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f2157c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f24b480; 1 drivers
|
|
v0xc3f215860_0 .net/s *"_ivl_2", 15 0, L_0xc3f24b520; 1 drivers
|
|
v0xc3f215900_0 .net *"_ivl_7", 0 0, L_0xc3ed4d360; 1 drivers
|
|
v0xc3f2159a0_0 .net *"_ivl_9", 15 0, L_0xc3ed4d400; 1 drivers
|
|
L_0xc3e854958 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f215a40_0 .net/s "acc_in", 31 0, L_0xc3e854958; 1 drivers
|
|
v0xc3f215ae0_0 .net/s "acc_out", 31 0, L_0xc3ec66440; alias, 1 drivers
|
|
v0xc3f215b80_0 .net/s "product", 15 0, L_0xc3f24b5c0; 1 drivers
|
|
v0xc3f215c20_0 .net/s "product_ext", 31 0, L_0xc3f24b660; 1 drivers
|
|
v0xc3f215cc0_0 .net/s "w", 7 0, L_0xc3ed4d540; 1 drivers
|
|
v0xc3f215d60_0 .net/s "x", 7 0, L_0xc3ed4d4a0; 1 drivers
|
|
L_0xc3f24b480 .extend/s 16, L_0xc3ed4d4a0;
|
|
L_0xc3f24b520 .extend/s 16, L_0xc3ed4d540;
|
|
L_0xc3f24b5c0 .arith/mult 16, L_0xc3f24b480, L_0xc3f24b520;
|
|
L_0xc3ed4d360 .part L_0xc3f24b5c0, 15, 1;
|
|
L_0xc3ed4d400 .repeat 16, 16, L_0xc3ed4d360;
|
|
L_0xc3f24b660 .concat [ 16 16 0 0], L_0xc3f24b5c0, L_0xc3ed4d400;
|
|
L_0xc3ec66440 .arith/sum 32, L_0xc3e854958, L_0xc3f24b660;
|
|
S_0xc3f213600 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb080 .param/l "i" 1 6 20, +C4<0110>;
|
|
S_0xc3f213780 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f213600;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34c00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34c40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34c80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f215e00_0 .net/s *"_ivl_0", 15 0, L_0xc3f24b700; 1 drivers
|
|
v0xc3f215ea0_0 .net/s *"_ivl_2", 15 0, L_0xc3f24b7a0; 1 drivers
|
|
v0xc3f215f40_0 .net *"_ivl_7", 0 0, L_0xc3ed4d5e0; 1 drivers
|
|
v0xc3f215fe0_0 .net *"_ivl_9", 15 0, L_0xc3ed4d680; 1 drivers
|
|
L_0xc3e8549a0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f216080_0 .net/s "acc_in", 31 0, L_0xc3e8549a0; 1 drivers
|
|
v0xc3f216120_0 .net/s "acc_out", 31 0, L_0xc3ec664e0; alias, 1 drivers
|
|
v0xc3f2161c0_0 .net/s "product", 15 0, L_0xc3f24b840; 1 drivers
|
|
v0xc3f216260_0 .net/s "product_ext", 31 0, L_0xc3f24b8e0; 1 drivers
|
|
v0xc3f216300_0 .net/s "w", 7 0, L_0xc3ed4d7c0; 1 drivers
|
|
v0xc3f2163a0_0 .net/s "x", 7 0, L_0xc3ed4d720; 1 drivers
|
|
L_0xc3f24b700 .extend/s 16, L_0xc3ed4d720;
|
|
L_0xc3f24b7a0 .extend/s 16, L_0xc3ed4d7c0;
|
|
L_0xc3f24b840 .arith/mult 16, L_0xc3f24b700, L_0xc3f24b7a0;
|
|
L_0xc3ed4d5e0 .part L_0xc3f24b840, 15, 1;
|
|
L_0xc3ed4d680 .repeat 16, 16, L_0xc3ed4d5e0;
|
|
L_0xc3f24b8e0 .concat [ 16 16 0 0], L_0xc3f24b840, L_0xc3ed4d680;
|
|
L_0xc3ec664e0 .arith/sum 32, L_0xc3e8549a0, L_0xc3f24b8e0;
|
|
S_0xc3f213900 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb0c0 .param/l "i" 1 6 20, +C4<0111>;
|
|
S_0xc3f213a80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f213900;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34cc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34d00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34d40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f216440_0 .net/s *"_ivl_0", 15 0, L_0xc3f24b980; 1 drivers
|
|
v0xc3f2164e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f24ba20; 1 drivers
|
|
v0xc3f216580_0 .net *"_ivl_7", 0 0, L_0xc3ed4d860; 1 drivers
|
|
v0xc3f216620_0 .net *"_ivl_9", 15 0, L_0xc3ed4d900; 1 drivers
|
|
L_0xc3e8549e8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f2166c0_0 .net/s "acc_in", 31 0, L_0xc3e8549e8; 1 drivers
|
|
v0xc3f216760_0 .net/s "acc_out", 31 0, L_0xc3ec66580; alias, 1 drivers
|
|
v0xc3f216800_0 .net/s "product", 15 0, L_0xc3f24bac0; 1 drivers
|
|
v0xc3f2168a0_0 .net/s "product_ext", 31 0, L_0xc3f24bb60; 1 drivers
|
|
v0xc3f216940_0 .net/s "w", 7 0, L_0xc3ed4da40; 1 drivers
|
|
v0xc3f2169e0_0 .net/s "x", 7 0, L_0xc3ed4d9a0; 1 drivers
|
|
L_0xc3f24b980 .extend/s 16, L_0xc3ed4d9a0;
|
|
L_0xc3f24ba20 .extend/s 16, L_0xc3ed4da40;
|
|
L_0xc3f24bac0 .arith/mult 16, L_0xc3f24b980, L_0xc3f24ba20;
|
|
L_0xc3ed4d860 .part L_0xc3f24bac0, 15, 1;
|
|
L_0xc3ed4d900 .repeat 16, 16, L_0xc3ed4d860;
|
|
L_0xc3f24bb60 .concat [ 16 16 0 0], L_0xc3f24bac0, L_0xc3ed4d900;
|
|
L_0xc3ec66580 .arith/sum 32, L_0xc3e8549e8, L_0xc3f24bb60;
|
|
S_0xc3f213c00 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb100 .param/l "i" 1 6 20, +C4<01000>;
|
|
S_0xc3f213d80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f213c00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34d80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34dc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34e00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f216a80_0 .net/s *"_ivl_0", 15 0, L_0xc3f24bc00; 1 drivers
|
|
v0xc3f216b20_0 .net/s *"_ivl_2", 15 0, L_0xc3f24bca0; 1 drivers
|
|
v0xc3f216bc0_0 .net *"_ivl_7", 0 0, L_0xc3ed4dae0; 1 drivers
|
|
v0xc3f216c60_0 .net *"_ivl_9", 15 0, L_0xc3ed4db80; 1 drivers
|
|
L_0xc3e854a30 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f216d00_0 .net/s "acc_in", 31 0, L_0xc3e854a30; 1 drivers
|
|
v0xc3f216da0_0 .net/s "acc_out", 31 0, L_0xc3ec66620; alias, 1 drivers
|
|
v0xc3f216e40_0 .net/s "product", 15 0, L_0xc3f24bd40; 1 drivers
|
|
v0xc3f216ee0_0 .net/s "product_ext", 31 0, L_0xc3f24bde0; 1 drivers
|
|
v0xc3f216f80_0 .net/s "w", 7 0, L_0xc3ed4dd60; 1 drivers
|
|
v0xc3f217020_0 .net/s "x", 7 0, L_0xc3ed4dc20; 1 drivers
|
|
L_0xc3f24bc00 .extend/s 16, L_0xc3ed4dc20;
|
|
L_0xc3f24bca0 .extend/s 16, L_0xc3ed4dd60;
|
|
L_0xc3f24bd40 .arith/mult 16, L_0xc3f24bc00, L_0xc3f24bca0;
|
|
L_0xc3ed4dae0 .part L_0xc3f24bd40, 15, 1;
|
|
L_0xc3ed4db80 .repeat 16, 16, L_0xc3ed4dae0;
|
|
L_0xc3f24bde0 .concat [ 16 16 0 0], L_0xc3f24bd40, L_0xc3ed4db80;
|
|
L_0xc3ec66620 .arith/sum 32, L_0xc3e854a30, L_0xc3f24bde0;
|
|
S_0xc3f218000 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb140 .param/l "i" 1 6 20, +C4<01001>;
|
|
S_0xc3f218180 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f218000;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34e40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34e80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34ec0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f2170c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f24be80; 1 drivers
|
|
v0xc3f217160_0 .net/s *"_ivl_2", 15 0, L_0xc3f24bf20; 1 drivers
|
|
v0xc3f217200_0 .net *"_ivl_7", 0 0, L_0xc3ed4de00; 1 drivers
|
|
v0xc3f2172a0_0 .net *"_ivl_9", 15 0, L_0xc3ed4dea0; 1 drivers
|
|
L_0xc3e854a78 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f217340_0 .net/s "acc_in", 31 0, L_0xc3e854a78; 1 drivers
|
|
v0xc3f2173e0_0 .net/s "acc_out", 31 0, L_0xc3ec666c0; alias, 1 drivers
|
|
v0xc3f217480_0 .net/s "product", 15 0, L_0xc3f250000; 1 drivers
|
|
v0xc3f217520_0 .net/s "product_ext", 31 0, L_0xc3f2500a0; 1 drivers
|
|
v0xc3f2175c0_0 .net/s "w", 7 0, L_0xc3ed4dfe0; 1 drivers
|
|
v0xc3f217660_0 .net/s "x", 7 0, L_0xc3ed4df40; 1 drivers
|
|
L_0xc3f24be80 .extend/s 16, L_0xc3ed4df40;
|
|
L_0xc3f24bf20 .extend/s 16, L_0xc3ed4dfe0;
|
|
L_0xc3f250000 .arith/mult 16, L_0xc3f24be80, L_0xc3f24bf20;
|
|
L_0xc3ed4de00 .part L_0xc3f250000, 15, 1;
|
|
L_0xc3ed4dea0 .repeat 16, 16, L_0xc3ed4de00;
|
|
L_0xc3f2500a0 .concat [ 16 16 0 0], L_0xc3f250000, L_0xc3ed4dea0;
|
|
L_0xc3ec666c0 .arith/sum 32, L_0xc3e854a78, L_0xc3f2500a0;
|
|
S_0xc3f218300 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb180 .param/l "i" 1 6 20, +C4<01010>;
|
|
S_0xc3f218480 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f218300;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34f00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed34f40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed34f80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f217700_0 .net/s *"_ivl_0", 15 0, L_0xc3f250140; 1 drivers
|
|
v0xc3f2177a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2501e0; 1 drivers
|
|
v0xc3f217840_0 .net *"_ivl_7", 0 0, L_0xc3ed4e080; 1 drivers
|
|
v0xc3f2178e0_0 .net *"_ivl_9", 15 0, L_0xc3ed4e120; 1 drivers
|
|
L_0xc3e854ac0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f217980_0 .net/s "acc_in", 31 0, L_0xc3e854ac0; 1 drivers
|
|
v0xc3f217a20_0 .net/s "acc_out", 31 0, L_0xc3ec66760; alias, 1 drivers
|
|
v0xc3f217ac0_0 .net/s "product", 15 0, L_0xc3f250280; 1 drivers
|
|
v0xc3f217b60_0 .net/s "product_ext", 31 0, L_0xc3f250320; 1 drivers
|
|
v0xc3f217c00_0 .net/s "w", 7 0, L_0xc3ed4dcc0; 1 drivers
|
|
v0xc3f217ca0_0 .net/s "x", 7 0, L_0xc3ed4e1c0; 1 drivers
|
|
L_0xc3f250140 .extend/s 16, L_0xc3ed4e1c0;
|
|
L_0xc3f2501e0 .extend/s 16, L_0xc3ed4dcc0;
|
|
L_0xc3f250280 .arith/mult 16, L_0xc3f250140, L_0xc3f2501e0;
|
|
L_0xc3ed4e080 .part L_0xc3f250280, 15, 1;
|
|
L_0xc3ed4e120 .repeat 16, 16, L_0xc3ed4e080;
|
|
L_0xc3f250320 .concat [ 16 16 0 0], L_0xc3f250280, L_0xc3ed4e120;
|
|
L_0xc3ec66760 .arith/sum 32, L_0xc3e854ac0, L_0xc3f250320;
|
|
S_0xc3f218600 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb1c0 .param/l "i" 1 6 20, +C4<01011>;
|
|
S_0xc3f218780 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f218600;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed34fc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35000 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35040 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f217d40_0 .net/s *"_ivl_0", 15 0, L_0xc3f2503c0; 1 drivers
|
|
v0xc3f217de0_0 .net/s *"_ivl_2", 15 0, L_0xc3f250460; 1 drivers
|
|
v0xc3f217e80_0 .net *"_ivl_7", 0 0, L_0xc3ed4e260; 1 drivers
|
|
v0xc3f217f20_0 .net *"_ivl_9", 15 0, L_0xc3ed4e300; 1 drivers
|
|
L_0xc3e854b08 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21c000_0 .net/s "acc_in", 31 0, L_0xc3e854b08; 1 drivers
|
|
v0xc3f21c0a0_0 .net/s "acc_out", 31 0, L_0xc3ec66800; alias, 1 drivers
|
|
v0xc3f21c140_0 .net/s "product", 15 0, L_0xc3f250500; 1 drivers
|
|
v0xc3f21c1e0_0 .net/s "product_ext", 31 0, L_0xc3f2505a0; 1 drivers
|
|
v0xc3f21c280_0 .net/s "w", 7 0, L_0xc3ed4e440; 1 drivers
|
|
v0xc3f21c320_0 .net/s "x", 7 0, L_0xc3ed4e3a0; 1 drivers
|
|
L_0xc3f2503c0 .extend/s 16, L_0xc3ed4e3a0;
|
|
L_0xc3f250460 .extend/s 16, L_0xc3ed4e440;
|
|
L_0xc3f250500 .arith/mult 16, L_0xc3f2503c0, L_0xc3f250460;
|
|
L_0xc3ed4e260 .part L_0xc3f250500, 15, 1;
|
|
L_0xc3ed4e300 .repeat 16, 16, L_0xc3ed4e260;
|
|
L_0xc3f2505a0 .concat [ 16 16 0 0], L_0xc3f250500, L_0xc3ed4e300;
|
|
L_0xc3ec66800 .arith/sum 32, L_0xc3e854b08, L_0xc3f2505a0;
|
|
S_0xc3f218900 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb200 .param/l "i" 1 6 20, +C4<01100>;
|
|
S_0xc3f218a80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f218900;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35080 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed350c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35100 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f21c3c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f250640; 1 drivers
|
|
v0xc3f21c460_0 .net/s *"_ivl_2", 15 0, L_0xc3f2506e0; 1 drivers
|
|
v0xc3f21c500_0 .net *"_ivl_7", 0 0, L_0xc3ed4e4e0; 1 drivers
|
|
v0xc3f21c5a0_0 .net *"_ivl_9", 15 0, L_0xc3ed4e580; 1 drivers
|
|
L_0xc3e854b50 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21c640_0 .net/s "acc_in", 31 0, L_0xc3e854b50; 1 drivers
|
|
v0xc3f21c6e0_0 .net/s "acc_out", 31 0, L_0xc3ec668a0; alias, 1 drivers
|
|
v0xc3f21c780_0 .net/s "product", 15 0, L_0xc3f250780; 1 drivers
|
|
v0xc3f21c820_0 .net/s "product_ext", 31 0, L_0xc3f250820; 1 drivers
|
|
v0xc3f21c8c0_0 .net/s "w", 7 0, L_0xc3ed4e6c0; 1 drivers
|
|
v0xc3f21c960_0 .net/s "x", 7 0, L_0xc3ed4e620; 1 drivers
|
|
L_0xc3f250640 .extend/s 16, L_0xc3ed4e620;
|
|
L_0xc3f2506e0 .extend/s 16, L_0xc3ed4e6c0;
|
|
L_0xc3f250780 .arith/mult 16, L_0xc3f250640, L_0xc3f2506e0;
|
|
L_0xc3ed4e4e0 .part L_0xc3f250780, 15, 1;
|
|
L_0xc3ed4e580 .repeat 16, 16, L_0xc3ed4e4e0;
|
|
L_0xc3f250820 .concat [ 16 16 0 0], L_0xc3f250780, L_0xc3ed4e580;
|
|
L_0xc3ec668a0 .arith/sum 32, L_0xc3e854b50, L_0xc3f250820;
|
|
S_0xc3f218c00 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb240 .param/l "i" 1 6 20, +C4<01101>;
|
|
S_0xc3f218d80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f218c00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35140 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35180 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed351c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f21ca00_0 .net/s *"_ivl_0", 15 0, L_0xc3f2508c0; 1 drivers
|
|
v0xc3f21caa0_0 .net/s *"_ivl_2", 15 0, L_0xc3f250960; 1 drivers
|
|
v0xc3f21cb40_0 .net *"_ivl_7", 0 0, L_0xc3ed4e760; 1 drivers
|
|
v0xc3f21cbe0_0 .net *"_ivl_9", 15 0, L_0xc3ed4e800; 1 drivers
|
|
L_0xc3e854b98 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21cc80_0 .net/s "acc_in", 31 0, L_0xc3e854b98; 1 drivers
|
|
v0xc3f21cd20_0 .net/s "acc_out", 31 0, L_0xc3ec66940; alias, 1 drivers
|
|
v0xc3f21cdc0_0 .net/s "product", 15 0, L_0xc3f250a00; 1 drivers
|
|
v0xc3f21ce60_0 .net/s "product_ext", 31 0, L_0xc3f250aa0; 1 drivers
|
|
v0xc3f21cf00_0 .net/s "w", 7 0, L_0xc3ed4e940; 1 drivers
|
|
v0xc3f21cfa0_0 .net/s "x", 7 0, L_0xc3ed4e8a0; 1 drivers
|
|
L_0xc3f2508c0 .extend/s 16, L_0xc3ed4e8a0;
|
|
L_0xc3f250960 .extend/s 16, L_0xc3ed4e940;
|
|
L_0xc3f250a00 .arith/mult 16, L_0xc3f2508c0, L_0xc3f250960;
|
|
L_0xc3ed4e760 .part L_0xc3f250a00, 15, 1;
|
|
L_0xc3ed4e800 .repeat 16, 16, L_0xc3ed4e760;
|
|
L_0xc3f250aa0 .concat [ 16 16 0 0], L_0xc3f250a00, L_0xc3ed4e800;
|
|
L_0xc3ec66940 .arith/sum 32, L_0xc3e854b98, L_0xc3f250aa0;
|
|
S_0xc3f218f00 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb280 .param/l "i" 1 6 20, +C4<01110>;
|
|
S_0xc3f219080 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f218f00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35200 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35240 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35280 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f21d040_0 .net/s *"_ivl_0", 15 0, L_0xc3f250b40; 1 drivers
|
|
v0xc3f21d0e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f250be0; 1 drivers
|
|
v0xc3f21d180_0 .net *"_ivl_7", 0 0, L_0xc3ed4e9e0; 1 drivers
|
|
v0xc3f21d220_0 .net *"_ivl_9", 15 0, L_0xc3ed4ea80; 1 drivers
|
|
L_0xc3e854be0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21d2c0_0 .net/s "acc_in", 31 0, L_0xc3e854be0; 1 drivers
|
|
v0xc3f21d360_0 .net/s "acc_out", 31 0, L_0xc3ec669e0; alias, 1 drivers
|
|
v0xc3f21d400_0 .net/s "product", 15 0, L_0xc3f250c80; 1 drivers
|
|
v0xc3f21d4a0_0 .net/s "product_ext", 31 0, L_0xc3f250d20; 1 drivers
|
|
v0xc3f21d540_0 .net/s "w", 7 0, L_0xc3ed4ebc0; 1 drivers
|
|
v0xc3f21d5e0_0 .net/s "x", 7 0, L_0xc3ed4eb20; 1 drivers
|
|
L_0xc3f250b40 .extend/s 16, L_0xc3ed4eb20;
|
|
L_0xc3f250be0 .extend/s 16, L_0xc3ed4ebc0;
|
|
L_0xc3f250c80 .arith/mult 16, L_0xc3f250b40, L_0xc3f250be0;
|
|
L_0xc3ed4e9e0 .part L_0xc3f250c80, 15, 1;
|
|
L_0xc3ed4ea80 .repeat 16, 16, L_0xc3ed4e9e0;
|
|
L_0xc3f250d20 .concat [ 16 16 0 0], L_0xc3f250c80, L_0xc3ed4ea80;
|
|
L_0xc3ec669e0 .arith/sum 32, L_0xc3e854be0, L_0xc3f250d20;
|
|
S_0xc3f219200 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 20, 6 20 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb2c0 .param/l "i" 1 6 20, +C4<01111>;
|
|
S_0xc3f219380 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f219200;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed352c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35300 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35340 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f21d680_0 .net/s *"_ivl_0", 15 0, L_0xc3f250dc0; 1 drivers
|
|
v0xc3f21d720_0 .net/s *"_ivl_2", 15 0, L_0xc3f250e60; 1 drivers
|
|
v0xc3f21d7c0_0 .net *"_ivl_7", 0 0, L_0xc3ed4ec60; 1 drivers
|
|
v0xc3f21d860_0 .net *"_ivl_9", 15 0, L_0xc3ed4ed00; 1 drivers
|
|
L_0xc3e854c28 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21d900_0 .net/s "acc_in", 31 0, L_0xc3e854c28; 1 drivers
|
|
v0xc3f21d9a0_0 .net/s "acc_out", 31 0, L_0xc3ec66a80; alias, 1 drivers
|
|
v0xc3f21da40_0 .net/s "product", 15 0, L_0xc3f250f00; 1 drivers
|
|
v0xc3f21dae0_0 .net/s "product_ext", 31 0, L_0xc3f250fa0; 1 drivers
|
|
v0xc3f21db80_0 .net/s "w", 7 0, L_0xc3ed4ee40; 1 drivers
|
|
v0xc3f21dc20_0 .net/s "x", 7 0, L_0xc3ed4eda0; 1 drivers
|
|
L_0xc3f250dc0 .extend/s 16, L_0xc3ed4eda0;
|
|
L_0xc3f250e60 .extend/s 16, L_0xc3ed4ee40;
|
|
L_0xc3f250f00 .arith/mult 16, L_0xc3f250dc0, L_0xc3f250e60;
|
|
L_0xc3ed4ec60 .part L_0xc3f250f00, 15, 1;
|
|
L_0xc3ed4ed00 .repeat 16, 16, L_0xc3ed4ec60;
|
|
L_0xc3f250fa0 .concat [ 16 16 0 0], L_0xc3f250f00, L_0xc3ed4ed00;
|
|
L_0xc3ec66a80 .arith/sum 32, L_0xc3e854c28, L_0xc3f250fa0;
|
|
S_0xc3f219500 .scope generate, "GEN_TREE_INPUT[0]" "GEN_TREE_INPUT[0]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb300 .param/l "i" 1 6 80, +C4<00>;
|
|
L_0xc3f24c0e0 .functor BUFZ 32, L_0xc3ec66120, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f219680 .scope generate, "GEN_TREE_INPUT[1]" "GEN_TREE_INPUT[1]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb340 .param/l "i" 1 6 80, +C4<01>;
|
|
L_0xc3f24c150 .functor BUFZ 32, L_0xc3ec661c0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f219800 .scope generate, "GEN_TREE_INPUT[2]" "GEN_TREE_INPUT[2]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb380 .param/l "i" 1 6 80, +C4<010>;
|
|
L_0xc3f24c1c0 .functor BUFZ 32, L_0xc3ec66260, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f219980 .scope generate, "GEN_TREE_INPUT[3]" "GEN_TREE_INPUT[3]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb3c0 .param/l "i" 1 6 80, +C4<011>;
|
|
L_0xc3f24c230 .functor BUFZ 32, L_0xc3ec66300, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f219b00 .scope generate, "GEN_TREE_INPUT[4]" "GEN_TREE_INPUT[4]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb400 .param/l "i" 1 6 80, +C4<0100>;
|
|
L_0xc3f24c2a0 .functor BUFZ 32, L_0xc3ec663a0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f219c80 .scope generate, "GEN_TREE_INPUT[5]" "GEN_TREE_INPUT[5]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb440 .param/l "i" 1 6 80, +C4<0101>;
|
|
L_0xc3f24c310 .functor BUFZ 32, L_0xc3ec66440, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f219e00 .scope generate, "GEN_TREE_INPUT[6]" "GEN_TREE_INPUT[6]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb480 .param/l "i" 1 6 80, +C4<0110>;
|
|
L_0xc3f24c380 .functor BUFZ 32, L_0xc3ec664e0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f219f80 .scope generate, "GEN_TREE_INPUT[7]" "GEN_TREE_INPUT[7]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb4c0 .param/l "i" 1 6 80, +C4<0111>;
|
|
L_0xc3f24c3f0 .functor BUFZ 32, L_0xc3ec66580, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21a100 .scope generate, "GEN_TREE_INPUT[8]" "GEN_TREE_INPUT[8]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb500 .param/l "i" 1 6 80, +C4<01000>;
|
|
L_0xc3f24c460 .functor BUFZ 32, L_0xc3ec66620, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21a280 .scope generate, "GEN_TREE_INPUT[9]" "GEN_TREE_INPUT[9]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb540 .param/l "i" 1 6 80, +C4<01001>;
|
|
L_0xc3f24c4d0 .functor BUFZ 32, L_0xc3ec666c0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21a400 .scope generate, "GEN_TREE_INPUT[10]" "GEN_TREE_INPUT[10]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb580 .param/l "i" 1 6 80, +C4<01010>;
|
|
L_0xc3f24c540 .functor BUFZ 32, L_0xc3ec66760, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21a580 .scope generate, "GEN_TREE_INPUT[11]" "GEN_TREE_INPUT[11]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb5c0 .param/l "i" 1 6 80, +C4<01011>;
|
|
L_0xc3f24c5b0 .functor BUFZ 32, L_0xc3ec66800, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21a700 .scope generate, "GEN_TREE_INPUT[12]" "GEN_TREE_INPUT[12]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb600 .param/l "i" 1 6 80, +C4<01100>;
|
|
L_0xc3f24c620 .functor BUFZ 32, L_0xc3ec668a0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21a880 .scope generate, "GEN_TREE_INPUT[13]" "GEN_TREE_INPUT[13]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb640 .param/l "i" 1 6 80, +C4<01101>;
|
|
L_0xc3f24c690 .functor BUFZ 32, L_0xc3ec66940, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21aa00 .scope generate, "GEN_TREE_INPUT[14]" "GEN_TREE_INPUT[14]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb680 .param/l "i" 1 6 80, +C4<01110>;
|
|
L_0xc3f24c700 .functor BUFZ 32, L_0xc3ec669e0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21ab80 .scope generate, "GEN_TREE_INPUT[15]" "GEN_TREE_INPUT[15]" 6 80, 6 80 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb6c0 .param/l "i" 1 6 80, +C4<01111>;
|
|
L_0xc3f24c770 .functor BUFZ 32, L_0xc3ec66a80, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f21ad00 .scope generate, "GEN_TREE_LEVEL[0]" "GEN_TREE_LEVEL[0]" 6 92, 6 92 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb700 .param/l "level" 1 6 92, +C4<00>;
|
|
S_0xc3f21ae80 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb740 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec66b20 .arith/sum 32, L_0xc3f24c0e0, L_0xc3f24c150;
|
|
S_0xc3f21b000 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb780 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ec66bc0 .arith/sum 32, L_0xc3f24c1c0, L_0xc3f24c230;
|
|
S_0xc3f21b180 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb7c0 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ec66c60 .arith/sum 32, L_0xc3f24c2a0, L_0xc3f24c310;
|
|
S_0xc3f21b300 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb800 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ec66d00 .arith/sum 32, L_0xc3f24c380, L_0xc3f24c3f0;
|
|
S_0xc3f21b480 .scope generate, "GEN_TREE_NODE[4]" "GEN_TREE_NODE[4]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb840 .param/l "node" 1 6 94, +C4<0100>;
|
|
L_0xc3ec66da0 .arith/sum 32, L_0xc3f24c460, L_0xc3f24c4d0;
|
|
S_0xc3f21b600 .scope generate, "GEN_TREE_NODE[5]" "GEN_TREE_NODE[5]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb880 .param/l "node" 1 6 94, +C4<0101>;
|
|
L_0xc3ec66e40 .arith/sum 32, L_0xc3f24c540, L_0xc3f24c5b0;
|
|
S_0xc3f21b780 .scope generate, "GEN_TREE_NODE[6]" "GEN_TREE_NODE[6]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb8c0 .param/l "node" 1 6 94, +C4<0110>;
|
|
L_0xc3ec66ee0 .arith/sum 32, L_0xc3f24c620, L_0xc3f24c690;
|
|
S_0xc3f21b900 .scope generate, "GEN_TREE_NODE[7]" "GEN_TREE_NODE[7]" 6 94, 6 94 0, S_0xc3f21ad00;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb900 .param/l "node" 1 6 94, +C4<0111>;
|
|
L_0xc3ec66f80 .arith/sum 32, L_0xc3f24c700, L_0xc3f24c770;
|
|
S_0xc3f21ba80 .scope generate, "GEN_TREE_LEVEL[1]" "GEN_TREE_LEVEL[1]" 6 92, 6 92 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb940 .param/l "level" 1 6 92, +C4<01>;
|
|
S_0xc3f21bc00 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f21ba80;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb980 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec67020 .arith/sum 32, L_0xc3ec66b20, L_0xc3ec66bc0;
|
|
S_0xc3f21bd80 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f21ba80;
|
|
.timescale -9 -12;
|
|
P_0xc3eceb9c0 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ec670c0 .arith/sum 32, L_0xc3ec66c60, L_0xc3ec66d00;
|
|
S_0xc3f220000 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f21ba80;
|
|
.timescale -9 -12;
|
|
P_0xc3eceba00 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ec67160 .arith/sum 32, L_0xc3ec66da0, L_0xc3ec66e40;
|
|
S_0xc3f220180 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f21ba80;
|
|
.timescale -9 -12;
|
|
P_0xc3eceba40 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ec67200 .arith/sum 32, L_0xc3ec66ee0, L_0xc3ec66f80;
|
|
S_0xc3f220300 .scope generate, "GEN_TREE_LEVEL[2]" "GEN_TREE_LEVEL[2]" 6 92, 6 92 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3eceba80 .param/l "level" 1 6 92, +C4<010>;
|
|
S_0xc3f220480 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f220300;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebac0 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec672a0 .arith/sum 32, L_0xc3ec67020, L_0xc3ec670c0;
|
|
S_0xc3f220600 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f220300;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebb00 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ec67340 .arith/sum 32, L_0xc3ec67160, L_0xc3ec67200;
|
|
S_0xc3f220780 .scope generate, "GEN_TREE_LEVEL[3]" "GEN_TREE_LEVEL[3]" 6 92, 6 92 0, S_0xc3f212280;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebb40 .param/l "level" 1 6 92, +C4<011>;
|
|
S_0xc3f220900 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f220780;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebb80 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ec673e0 .arith/sum 32, L_0xc3ec672a0, L_0xc3ec67340;
|
|
S_0xc3f220a80 .scope generate, "GEN_NEURON[2]" "GEN_NEURON[2]" 4 34, 4 34 0, S_0x1057418a0;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebbc0 .param/l "n" 1 4 34, +C4<010>;
|
|
S_0xc3f220c00 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0xc3f220a80;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 1 "clk";
|
|
.port_info 1 /INPUT 1 "rst";
|
|
.port_info 2 /INPUT 1 "start";
|
|
.port_info 3 /INPUT 2048 "x_bus";
|
|
.port_info 4 /INPUT 2048 "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_0xc3f220d80 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>;
|
|
P_0xc3f220dc0 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3f220e00 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000010000>;
|
|
P_0xc3f220e40 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000100>;
|
|
P_0xc3f220e80 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000100000000>;
|
|
P_0xc3f220ec0 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000010000>;
|
|
v0xc3f229b80_0 .net *"_ivl_0", 31 0, L_0xc3f2510e0; 1 drivers
|
|
v0xc3f229c20_0 .net *"_ivl_11", 31 0, L_0xc3f251220; 1 drivers
|
|
v0xc3f229cc0_0 .net *"_ivl_14", 31 0, L_0xc3f2512c0; 1 drivers
|
|
L_0xc3e854d48 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f229d60_0 .net *"_ivl_17", 27 0, L_0xc3e854d48; 1 drivers
|
|
L_0xc3e854d90 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f229e00_0 .net/2u *"_ivl_18", 31 0, L_0xc3e854d90; 1 drivers
|
|
v0xc3f229ea0_0 .net *"_ivl_21", 31 0, L_0xc3f251360; 1 drivers
|
|
L_0xc3e854dd8 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f229f40_0 .net/2u *"_ivl_22", 31 0, L_0xc3e854dd8; 1 drivers
|
|
v0xc3f229fe0_0 .net *"_ivl_25", 31 0, L_0xc3f251400; 1 drivers
|
|
v0xc3f22a080_0 .net *"_ivl_29", 0 0, L_0xc3ed55ae0; 1 drivers
|
|
L_0xc3e854c70 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f22a120_0 .net *"_ivl_3", 27 0, L_0xc3e854c70; 1 drivers
|
|
v0xc3f22a1c0_0 .net *"_ivl_31", 23 0, L_0xc3ed55b80; 1 drivers
|
|
L_0xc3e854cb8 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f22a260_0 .net/2u *"_ivl_4", 31 0, L_0xc3e854cb8; 1 drivers
|
|
v0xc3f22a300_0 .net *"_ivl_7", 31 0, L_0xc3f251180; 1 drivers
|
|
L_0xc3e854d00 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f22a3a0_0 .net/2u *"_ivl_8", 31 0, L_0xc3e854d00; 1 drivers
|
|
v0xc3f22a440_0 .var/s "acc", 31 0;
|
|
v0xc3f22a4e0_0 .net/s "acc_next", 31 0, L_0xc3ed5c960; 1 drivers
|
|
v0xc3f22a580_0 .net/s "bias", 7 0, L_0xc3ed55cc0; 1 drivers
|
|
v0xc3f22a620_0 .net/s "bias_ext", 31 0, L_0xc3f253ca0; 1 drivers
|
|
v0xc3f22a6c0_0 .var "busy", 0 0;
|
|
v0xc3f22a760_0 .net "clk", 0 0, v0xc3f243160_0; alias, 1 drivers
|
|
v0xc3f22a800_0 .var "done", 0 0;
|
|
v0xc3f22a8a0_0 .net/s "final_acc", 31 0, L_0xc3ed5ca00; 1 drivers
|
|
v0xc3f22a940_0 .var "group_index", 3 0;
|
|
v0xc3f22a9e0_0 .net "rst", 0 0, v0xc3f243480_0; alias, 1 drivers
|
|
v0xc3f22aa80_0 .net "start", 0 0, v0xc3f243520_0; alias, 1 drivers
|
|
v0xc3f22ab20_0 .net/s "w_bus", 2047 0, L_0xc3ed55c20; 1 drivers
|
|
v0xc3f22abc0_0 .net/s "w_group", 127 0, L_0xc3ed4f200; 1 drivers
|
|
v0xc3f22ac60_0 .net/s "x_bus", 2047 0, v0xc3f243660_0; alias, 1 drivers
|
|
v0xc3f22ad00_0 .net/s "x_group", 127 0, L_0xc3ed4f160; 1 drivers
|
|
v0xc3f22ada0_0 .var/s "y", 7 0;
|
|
L_0xc3f2510e0 .concat [ 4 28 0 0], v0xc3f22a940_0, L_0xc3e854c70;
|
|
L_0xc3f251180 .arith/mult 32, L_0xc3f2510e0, L_0xc3e854cb8;
|
|
L_0xc3f251220 .arith/mult 32, L_0xc3f251180, L_0xc3e854d00;
|
|
L_0xc3ed4f160 .part/v v0xc3f243660_0, L_0xc3f251220, 128;
|
|
L_0xc3f2512c0 .concat [ 4 28 0 0], v0xc3f22a940_0, L_0xc3e854d48;
|
|
L_0xc3f251360 .arith/mult 32, L_0xc3f2512c0, L_0xc3e854d90;
|
|
L_0xc3f251400 .arith/mult 32, L_0xc3f251360, L_0xc3e854dd8;
|
|
L_0xc3ed4f200 .part/v L_0xc3ed55c20, L_0xc3f251400, 128;
|
|
L_0xc3ed55ae0 .part L_0xc3ed55cc0, 7, 1;
|
|
L_0xc3ed55b80 .repeat 24, 24, L_0xc3ed55ae0;
|
|
L_0xc3f253ca0 .concat [ 8 24 0 0], L_0xc3ed55cc0, L_0xc3ed55b80;
|
|
L_0xc3ed5ca00 .arith/sum 32, L_0xc3ed5c960, L_0xc3f253ca0;
|
|
S_0xc3f220f00 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0xc3f220c00;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 128 "x_bus";
|
|
.port_info 1 /INPUT 128 "w_bus";
|
|
.port_info 2 /INPUT 32 "acc_in";
|
|
.port_info 3 /OUTPUT 32 "acc_out";
|
|
P_0x105742760 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>;
|
|
P_0x1057427a0 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>;
|
|
P_0x1057427e0 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000010000>;
|
|
P_0x105742820 .param/l "TREE_LEVELS" 1 6 70, +C4<00000000000000000000000000000100>;
|
|
v0xc3f2297c0_0 .net/s "acc_in", 31 0, v0xc3f22a440_0; 1 drivers
|
|
v0xc3f229860_0 .net/s "acc_out", 31 0, L_0xc3ed5c960; alias, 1 drivers
|
|
v0xc3f229900 .array "products", 15 0;
|
|
v0xc3f229900_0 .net/s v0xc3f229900 0, 31 0, L_0xc3ec675c0; 1 drivers
|
|
v0xc3f229900_1 .net/s v0xc3f229900 1, 31 0, L_0xc3ec67660; 1 drivers
|
|
v0xc3f229900_2 .net/s v0xc3f229900 2, 31 0, L_0xc3ec67700; 1 drivers
|
|
v0xc3f229900_3 .net/s v0xc3f229900 3, 31 0, L_0xc3ec677a0; 1 drivers
|
|
v0xc3f229900_4 .net/s v0xc3f229900 4, 31 0, L_0xc3ec67840; 1 drivers
|
|
v0xc3f229900_5 .net/s v0xc3f229900 5, 31 0, L_0xc3ec678e0; 1 drivers
|
|
v0xc3f229900_6 .net/s v0xc3f229900 6, 31 0, L_0xc3ec67980; 1 drivers
|
|
v0xc3f229900_7 .net/s v0xc3f229900 7, 31 0, L_0xc3ec67a20; 1 drivers
|
|
v0xc3f229900_8 .net/s v0xc3f229900 8, 31 0, L_0xc3ec67ac0; 1 drivers
|
|
v0xc3f229900_9 .net/s v0xc3f229900 9, 31 0, L_0xc3ec67b60; 1 drivers
|
|
v0xc3f229900_10 .net/s v0xc3f229900 10, 31 0, L_0xc3ec67c00; 1 drivers
|
|
v0xc3f229900_11 .net/s v0xc3f229900 11, 31 0, L_0xc3ec67ca0; 1 drivers
|
|
v0xc3f229900_12 .net/s v0xc3f229900 12, 31 0, L_0xc3ec67d40; 1 drivers
|
|
v0xc3f229900_13 .net/s v0xc3f229900 13, 31 0, L_0xc3ec67de0; 1 drivers
|
|
v0xc3f229900_14 .net/s v0xc3f229900 14, 31 0, L_0xc3ec67e80; 1 drivers
|
|
v0xc3f229900_15 .net/s v0xc3f229900 15, 31 0, L_0xc3ec67f20; 1 drivers
|
|
v0xc3f2299a0 .array "tree", 79 0;
|
|
v0xc3f2299a0_0 .net/s v0xc3f2299a0 0, 31 0, L_0xc3f24c7e0; 1 drivers
|
|
v0xc3f2299a0_1 .net/s v0xc3f2299a0 1, 31 0, L_0xc3f24c850; 1 drivers
|
|
v0xc3f2299a0_2 .net/s v0xc3f2299a0 2, 31 0, L_0xc3f24c8c0; 1 drivers
|
|
v0xc3f2299a0_3 .net/s v0xc3f2299a0 3, 31 0, L_0xc3f24c930; 1 drivers
|
|
v0xc3f2299a0_4 .net/s v0xc3f2299a0 4, 31 0, L_0xc3f24c9a0; 1 drivers
|
|
v0xc3f2299a0_5 .net/s v0xc3f2299a0 5, 31 0, L_0xc3f24ca10; 1 drivers
|
|
v0xc3f2299a0_6 .net/s v0xc3f2299a0 6, 31 0, L_0xc3f24ca80; 1 drivers
|
|
v0xc3f2299a0_7 .net/s v0xc3f2299a0 7, 31 0, L_0xc3f24caf0; 1 drivers
|
|
v0xc3f2299a0_8 .net/s v0xc3f2299a0 8, 31 0, L_0xc3f24cb60; 1 drivers
|
|
v0xc3f2299a0_9 .net/s v0xc3f2299a0 9, 31 0, L_0xc3f24cbd0; 1 drivers
|
|
v0xc3f2299a0_10 .net/s v0xc3f2299a0 10, 31 0, L_0xc3f24cc40; 1 drivers
|
|
v0xc3f2299a0_11 .net/s v0xc3f2299a0 11, 31 0, L_0xc3f24ccb0; 1 drivers
|
|
v0xc3f2299a0_12 .net/s v0xc3f2299a0 12, 31 0, L_0xc3f24cd20; 1 drivers
|
|
v0xc3f2299a0_13 .net/s v0xc3f2299a0 13, 31 0, L_0xc3f24cd90; 1 drivers
|
|
v0xc3f2299a0_14 .net/s v0xc3f2299a0 14, 31 0, L_0xc3f24ce00; 1 drivers
|
|
v0xc3f2299a0_15 .net/s v0xc3f2299a0 15, 31 0, L_0xc3f24ce70; 1 drivers
|
|
v0xc3f2299a0_16 .net/s v0xc3f2299a0 16, 31 0, L_0xc3ed5c000; 1 drivers
|
|
v0xc3f2299a0_17 .net/s v0xc3f2299a0 17, 31 0, L_0xc3ed5c0a0; 1 drivers
|
|
v0xc3f2299a0_18 .net/s v0xc3f2299a0 18, 31 0, L_0xc3ed5c140; 1 drivers
|
|
v0xc3f2299a0_19 .net/s v0xc3f2299a0 19, 31 0, L_0xc3ed5c1e0; 1 drivers
|
|
v0xc3f2299a0_20 .net/s v0xc3f2299a0 20, 31 0, L_0xc3ed5c280; 1 drivers
|
|
v0xc3f2299a0_21 .net/s v0xc3f2299a0 21, 31 0, L_0xc3ed5c320; 1 drivers
|
|
v0xc3f2299a0_22 .net/s v0xc3f2299a0 22, 31 0, L_0xc3ed5c3c0; 1 drivers
|
|
v0xc3f2299a0_23 .net/s v0xc3f2299a0 23, 31 0, L_0xc3ed5c460; 1 drivers
|
|
o0xc3e82b050 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_24 .net/s v0xc3f2299a0 24, 31 0, o0xc3e82b050; 0 drivers
|
|
o0xc3e82b080 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_25 .net/s v0xc3f2299a0 25, 31 0, o0xc3e82b080; 0 drivers
|
|
o0xc3e82b0b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_26 .net/s v0xc3f2299a0 26, 31 0, o0xc3e82b0b0; 0 drivers
|
|
o0xc3e82b0e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_27 .net/s v0xc3f2299a0 27, 31 0, o0xc3e82b0e0; 0 drivers
|
|
o0xc3e82b110 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_28 .net/s v0xc3f2299a0 28, 31 0, o0xc3e82b110; 0 drivers
|
|
o0xc3e82b140 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_29 .net/s v0xc3f2299a0 29, 31 0, o0xc3e82b140; 0 drivers
|
|
o0xc3e82b170 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_30 .net/s v0xc3f2299a0 30, 31 0, o0xc3e82b170; 0 drivers
|
|
o0xc3e82b1a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_31 .net/s v0xc3f2299a0 31, 31 0, o0xc3e82b1a0; 0 drivers
|
|
v0xc3f2299a0_32 .net/s v0xc3f2299a0 32, 31 0, L_0xc3ed5c500; 1 drivers
|
|
v0xc3f2299a0_33 .net/s v0xc3f2299a0 33, 31 0, L_0xc3ed5c5a0; 1 drivers
|
|
v0xc3f2299a0_34 .net/s v0xc3f2299a0 34, 31 0, L_0xc3ed5c640; 1 drivers
|
|
v0xc3f2299a0_35 .net/s v0xc3f2299a0 35, 31 0, L_0xc3ed5c6e0; 1 drivers
|
|
o0xc3e82b290 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_36 .net/s v0xc3f2299a0 36, 31 0, o0xc3e82b290; 0 drivers
|
|
o0xc3e82b2c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_37 .net/s v0xc3f2299a0 37, 31 0, o0xc3e82b2c0; 0 drivers
|
|
o0xc3e82b2f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_38 .net/s v0xc3f2299a0 38, 31 0, o0xc3e82b2f0; 0 drivers
|
|
o0xc3e82b320 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_39 .net/s v0xc3f2299a0 39, 31 0, o0xc3e82b320; 0 drivers
|
|
o0xc3e82b350 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_40 .net/s v0xc3f2299a0 40, 31 0, o0xc3e82b350; 0 drivers
|
|
o0xc3e82b380 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_41 .net/s v0xc3f2299a0 41, 31 0, o0xc3e82b380; 0 drivers
|
|
o0xc3e82b3b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_42 .net/s v0xc3f2299a0 42, 31 0, o0xc3e82b3b0; 0 drivers
|
|
o0xc3e82b3e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_43 .net/s v0xc3f2299a0 43, 31 0, o0xc3e82b3e0; 0 drivers
|
|
o0xc3e82b410 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_44 .net/s v0xc3f2299a0 44, 31 0, o0xc3e82b410; 0 drivers
|
|
o0xc3e82b440 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_45 .net/s v0xc3f2299a0 45, 31 0, o0xc3e82b440; 0 drivers
|
|
o0xc3e82b470 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_46 .net/s v0xc3f2299a0 46, 31 0, o0xc3e82b470; 0 drivers
|
|
o0xc3e82b4a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_47 .net/s v0xc3f2299a0 47, 31 0, o0xc3e82b4a0; 0 drivers
|
|
v0xc3f2299a0_48 .net/s v0xc3f2299a0 48, 31 0, L_0xc3ed5c780; 1 drivers
|
|
v0xc3f2299a0_49 .net/s v0xc3f2299a0 49, 31 0, L_0xc3ed5c820; 1 drivers
|
|
o0xc3e82b530 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_50 .net/s v0xc3f2299a0 50, 31 0, o0xc3e82b530; 0 drivers
|
|
o0xc3e82b560 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_51 .net/s v0xc3f2299a0 51, 31 0, o0xc3e82b560; 0 drivers
|
|
o0xc3e82b590 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_52 .net/s v0xc3f2299a0 52, 31 0, o0xc3e82b590; 0 drivers
|
|
o0xc3e82b5c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_53 .net/s v0xc3f2299a0 53, 31 0, o0xc3e82b5c0; 0 drivers
|
|
o0xc3e82b5f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_54 .net/s v0xc3f2299a0 54, 31 0, o0xc3e82b5f0; 0 drivers
|
|
o0xc3e82b620 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_55 .net/s v0xc3f2299a0 55, 31 0, o0xc3e82b620; 0 drivers
|
|
o0xc3e82b650 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_56 .net/s v0xc3f2299a0 56, 31 0, o0xc3e82b650; 0 drivers
|
|
o0xc3e82b680 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_57 .net/s v0xc3f2299a0 57, 31 0, o0xc3e82b680; 0 drivers
|
|
o0xc3e82b6b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_58 .net/s v0xc3f2299a0 58, 31 0, o0xc3e82b6b0; 0 drivers
|
|
o0xc3e82b6e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_59 .net/s v0xc3f2299a0 59, 31 0, o0xc3e82b6e0; 0 drivers
|
|
o0xc3e82b710 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_60 .net/s v0xc3f2299a0 60, 31 0, o0xc3e82b710; 0 drivers
|
|
o0xc3e82b740 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_61 .net/s v0xc3f2299a0 61, 31 0, o0xc3e82b740; 0 drivers
|
|
o0xc3e82b770 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_62 .net/s v0xc3f2299a0 62, 31 0, o0xc3e82b770; 0 drivers
|
|
o0xc3e82b7a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_63 .net/s v0xc3f2299a0 63, 31 0, o0xc3e82b7a0; 0 drivers
|
|
v0xc3f2299a0_64 .net/s v0xc3f2299a0 64, 31 0, L_0xc3ed5c8c0; 1 drivers
|
|
o0xc3e82b800 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_65 .net/s v0xc3f2299a0 65, 31 0, o0xc3e82b800; 0 drivers
|
|
o0xc3e82b830 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_66 .net/s v0xc3f2299a0 66, 31 0, o0xc3e82b830; 0 drivers
|
|
o0xc3e82b860 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_67 .net/s v0xc3f2299a0 67, 31 0, o0xc3e82b860; 0 drivers
|
|
o0xc3e82b890 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_68 .net/s v0xc3f2299a0 68, 31 0, o0xc3e82b890; 0 drivers
|
|
o0xc3e82b8c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_69 .net/s v0xc3f2299a0 69, 31 0, o0xc3e82b8c0; 0 drivers
|
|
o0xc3e82b8f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_70 .net/s v0xc3f2299a0 70, 31 0, o0xc3e82b8f0; 0 drivers
|
|
o0xc3e82b920 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_71 .net/s v0xc3f2299a0 71, 31 0, o0xc3e82b920; 0 drivers
|
|
o0xc3e82b950 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_72 .net/s v0xc3f2299a0 72, 31 0, o0xc3e82b950; 0 drivers
|
|
o0xc3e82b980 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_73 .net/s v0xc3f2299a0 73, 31 0, o0xc3e82b980; 0 drivers
|
|
o0xc3e82b9b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_74 .net/s v0xc3f2299a0 74, 31 0, o0xc3e82b9b0; 0 drivers
|
|
o0xc3e82b9e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_75 .net/s v0xc3f2299a0 75, 31 0, o0xc3e82b9e0; 0 drivers
|
|
o0xc3e82ba10 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_76 .net/s v0xc3f2299a0 76, 31 0, o0xc3e82ba10; 0 drivers
|
|
o0xc3e82ba40 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_77 .net/s v0xc3f2299a0 77, 31 0, o0xc3e82ba40; 0 drivers
|
|
o0xc3e82ba70 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_78 .net/s v0xc3f2299a0 78, 31 0, o0xc3e82ba70; 0 drivers
|
|
o0xc3e82baa0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2299a0_79 .net/s v0xc3f2299a0 79, 31 0, o0xc3e82baa0; 0 drivers
|
|
v0xc3f229a40_0 .net/s "w_bus", 127 0, L_0xc3ed4f200; alias, 1 drivers
|
|
v0xc3f229ae0_0 .net/s "x_bus", 127 0, L_0xc3ed4f160; alias, 1 drivers
|
|
L_0xc3ed4f3e0 .part L_0xc3ed4f160, 0, 8;
|
|
L_0xc3ed4f480 .part L_0xc3ed4f200, 0, 8;
|
|
L_0xc3ed4f660 .part L_0xc3ed4f160, 8, 8;
|
|
L_0xc3ed4f700 .part L_0xc3ed4f200, 8, 8;
|
|
L_0xc3ed4f8e0 .part L_0xc3ed4f160, 16, 8;
|
|
L_0xc3ed4f980 .part L_0xc3ed4f200, 16, 8;
|
|
L_0xc3ed4fb60 .part L_0xc3ed4f160, 24, 8;
|
|
L_0xc3ed4fc00 .part L_0xc3ed4f200, 24, 8;
|
|
L_0xc3ed4fde0 .part L_0xc3ed4f160, 32, 8;
|
|
L_0xc3ed4fe80 .part L_0xc3ed4f200, 32, 8;
|
|
L_0xc3ed540a0 .part L_0xc3ed4f160, 40, 8;
|
|
L_0xc3ed54140 .part L_0xc3ed4f200, 40, 8;
|
|
L_0xc3ed54320 .part L_0xc3ed4f160, 48, 8;
|
|
L_0xc3ed543c0 .part L_0xc3ed4f200, 48, 8;
|
|
L_0xc3ed545a0 .part L_0xc3ed4f160, 56, 8;
|
|
L_0xc3ed54640 .part L_0xc3ed4f200, 56, 8;
|
|
L_0xc3ed54820 .part L_0xc3ed4f160, 64, 8;
|
|
L_0xc3ed54960 .part L_0xc3ed4f200, 64, 8;
|
|
L_0xc3ed54b40 .part L_0xc3ed4f160, 72, 8;
|
|
L_0xc3ed54be0 .part L_0xc3ed4f200, 72, 8;
|
|
L_0xc3ed54dc0 .part L_0xc3ed4f160, 80, 8;
|
|
L_0xc3ed548c0 .part L_0xc3ed4f200, 80, 8;
|
|
L_0xc3ed54fa0 .part L_0xc3ed4f160, 88, 8;
|
|
L_0xc3ed55040 .part L_0xc3ed4f200, 88, 8;
|
|
L_0xc3ed55220 .part L_0xc3ed4f160, 96, 8;
|
|
L_0xc3ed552c0 .part L_0xc3ed4f200, 96, 8;
|
|
L_0xc3ed554a0 .part L_0xc3ed4f160, 104, 8;
|
|
L_0xc3ed55540 .part L_0xc3ed4f200, 104, 8;
|
|
L_0xc3ed55720 .part L_0xc3ed4f160, 112, 8;
|
|
L_0xc3ed557c0 .part L_0xc3ed4f200, 112, 8;
|
|
L_0xc3ed559a0 .part L_0xc3ed4f160, 120, 8;
|
|
L_0xc3ed55a40 .part L_0xc3ed4f200, 120, 8;
|
|
L_0xc3ed5c960 .arith/sum 32, v0xc3f22a440_0, L_0xc3ed5c8c0;
|
|
S_0xc3f221080 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebc00 .param/l "i" 1 6 20, +C4<00>;
|
|
S_0xc3f221200 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f221080;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35380 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed353c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35400 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f21f340_0 .net/s *"_ivl_0", 15 0, L_0xc3f2514a0; 1 drivers
|
|
v0xc3f21f3e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f251540; 1 drivers
|
|
v0xc3f21f480_0 .net *"_ivl_7", 0 0, L_0xc3ed4f2a0; 1 drivers
|
|
v0xc3f21f520_0 .net *"_ivl_9", 15 0, L_0xc3ed4f340; 1 drivers
|
|
L_0xc3e854e20 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21f5c0_0 .net/s "acc_in", 31 0, L_0xc3e854e20; 1 drivers
|
|
v0xc3f21f660_0 .net/s "acc_out", 31 0, L_0xc3ec675c0; alias, 1 drivers
|
|
v0xc3f21f700_0 .net/s "product", 15 0, L_0xc3f2515e0; 1 drivers
|
|
v0xc3f21f7a0_0 .net/s "product_ext", 31 0, L_0xc3f251680; 1 drivers
|
|
v0xc3f21f840_0 .net/s "w", 7 0, L_0xc3ed4f480; 1 drivers
|
|
v0xc3f21f8e0_0 .net/s "x", 7 0, L_0xc3ed4f3e0; 1 drivers
|
|
L_0xc3f2514a0 .extend/s 16, L_0xc3ed4f3e0;
|
|
L_0xc3f251540 .extend/s 16, L_0xc3ed4f480;
|
|
L_0xc3f2515e0 .arith/mult 16, L_0xc3f2514a0, L_0xc3f251540;
|
|
L_0xc3ed4f2a0 .part L_0xc3f2515e0, 15, 1;
|
|
L_0xc3ed4f340 .repeat 16, 16, L_0xc3ed4f2a0;
|
|
L_0xc3f251680 .concat [ 16 16 0 0], L_0xc3f2515e0, L_0xc3ed4f340;
|
|
L_0xc3ec675c0 .arith/sum 32, L_0xc3e854e20, L_0xc3f251680;
|
|
S_0xc3f221380 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebc40 .param/l "i" 1 6 20, +C4<01>;
|
|
S_0xc3f221500 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f221380;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35440 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35480 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed354c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f21f980_0 .net/s *"_ivl_0", 15 0, L_0xc3f251720; 1 drivers
|
|
v0xc3f21fa20_0 .net/s *"_ivl_2", 15 0, L_0xc3f2517c0; 1 drivers
|
|
v0xc3f21fac0_0 .net *"_ivl_7", 0 0, L_0xc3ed4f520; 1 drivers
|
|
v0xc3f21fb60_0 .net *"_ivl_9", 15 0, L_0xc3ed4f5c0; 1 drivers
|
|
L_0xc3e854e68 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f21fc00_0 .net/s "acc_in", 31 0, L_0xc3e854e68; 1 drivers
|
|
v0xc3f21fca0_0 .net/s "acc_out", 31 0, L_0xc3ec67660; alias, 1 drivers
|
|
v0xc3f21fd40_0 .net/s "product", 15 0, L_0xc3f251860; 1 drivers
|
|
v0xc3f21fde0_0 .net/s "product_ext", 31 0, L_0xc3f251900; 1 drivers
|
|
v0xc3f21fe80_0 .net/s "w", 7 0, L_0xc3ed4f700; 1 drivers
|
|
v0xc3f21ff20_0 .net/s "x", 7 0, L_0xc3ed4f660; 1 drivers
|
|
L_0xc3f251720 .extend/s 16, L_0xc3ed4f660;
|
|
L_0xc3f2517c0 .extend/s 16, L_0xc3ed4f700;
|
|
L_0xc3f251860 .arith/mult 16, L_0xc3f251720, L_0xc3f2517c0;
|
|
L_0xc3ed4f520 .part L_0xc3f251860, 15, 1;
|
|
L_0xc3ed4f5c0 .repeat 16, 16, L_0xc3ed4f520;
|
|
L_0xc3f251900 .concat [ 16 16 0 0], L_0xc3f251860, L_0xc3ed4f5c0;
|
|
L_0xc3ec67660 .arith/sum 32, L_0xc3e854e68, L_0xc3f251900;
|
|
S_0xc3f221680 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebc80 .param/l "i" 1 6 20, +C4<010>;
|
|
S_0xc3f221800 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f221680;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35500 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35540 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35580 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f224000_0 .net/s *"_ivl_0", 15 0, L_0xc3f2519a0; 1 drivers
|
|
v0xc3f2240a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f251a40; 1 drivers
|
|
v0xc3f224140_0 .net *"_ivl_7", 0 0, L_0xc3ed4f7a0; 1 drivers
|
|
v0xc3f2241e0_0 .net *"_ivl_9", 15 0, L_0xc3ed4f840; 1 drivers
|
|
L_0xc3e854eb0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f224280_0 .net/s "acc_in", 31 0, L_0xc3e854eb0; 1 drivers
|
|
v0xc3f224320_0 .net/s "acc_out", 31 0, L_0xc3ec67700; alias, 1 drivers
|
|
v0xc3f2243c0_0 .net/s "product", 15 0, L_0xc3f251ae0; 1 drivers
|
|
v0xc3f224460_0 .net/s "product_ext", 31 0, L_0xc3f251b80; 1 drivers
|
|
v0xc3f224500_0 .net/s "w", 7 0, L_0xc3ed4f980; 1 drivers
|
|
v0xc3f2245a0_0 .net/s "x", 7 0, L_0xc3ed4f8e0; 1 drivers
|
|
L_0xc3f2519a0 .extend/s 16, L_0xc3ed4f8e0;
|
|
L_0xc3f251a40 .extend/s 16, L_0xc3ed4f980;
|
|
L_0xc3f251ae0 .arith/mult 16, L_0xc3f2519a0, L_0xc3f251a40;
|
|
L_0xc3ed4f7a0 .part L_0xc3f251ae0, 15, 1;
|
|
L_0xc3ed4f840 .repeat 16, 16, L_0xc3ed4f7a0;
|
|
L_0xc3f251b80 .concat [ 16 16 0 0], L_0xc3f251ae0, L_0xc3ed4f840;
|
|
L_0xc3ec67700 .arith/sum 32, L_0xc3e854eb0, L_0xc3f251b80;
|
|
S_0xc3f221980 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebcc0 .param/l "i" 1 6 20, +C4<011>;
|
|
S_0xc3f221b00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f221980;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed355c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35600 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35640 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f224640_0 .net/s *"_ivl_0", 15 0, L_0xc3f251c20; 1 drivers
|
|
v0xc3f2246e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f251cc0; 1 drivers
|
|
v0xc3f224780_0 .net *"_ivl_7", 0 0, L_0xc3ed4fa20; 1 drivers
|
|
v0xc3f224820_0 .net *"_ivl_9", 15 0, L_0xc3ed4fac0; 1 drivers
|
|
L_0xc3e854ef8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f2248c0_0 .net/s "acc_in", 31 0, L_0xc3e854ef8; 1 drivers
|
|
v0xc3f224960_0 .net/s "acc_out", 31 0, L_0xc3ec677a0; alias, 1 drivers
|
|
v0xc3f224a00_0 .net/s "product", 15 0, L_0xc3f251d60; 1 drivers
|
|
v0xc3f224aa0_0 .net/s "product_ext", 31 0, L_0xc3f251e00; 1 drivers
|
|
v0xc3f224b40_0 .net/s "w", 7 0, L_0xc3ed4fc00; 1 drivers
|
|
v0xc3f224be0_0 .net/s "x", 7 0, L_0xc3ed4fb60; 1 drivers
|
|
L_0xc3f251c20 .extend/s 16, L_0xc3ed4fb60;
|
|
L_0xc3f251cc0 .extend/s 16, L_0xc3ed4fc00;
|
|
L_0xc3f251d60 .arith/mult 16, L_0xc3f251c20, L_0xc3f251cc0;
|
|
L_0xc3ed4fa20 .part L_0xc3f251d60, 15, 1;
|
|
L_0xc3ed4fac0 .repeat 16, 16, L_0xc3ed4fa20;
|
|
L_0xc3f251e00 .concat [ 16 16 0 0], L_0xc3f251d60, L_0xc3ed4fac0;
|
|
L_0xc3ec677a0 .arith/sum 32, L_0xc3e854ef8, L_0xc3f251e00;
|
|
S_0xc3f221c80 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebd00 .param/l "i" 1 6 20, +C4<0100>;
|
|
S_0xc3f221e00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f221c80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35680 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed356c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35700 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f224c80_0 .net/s *"_ivl_0", 15 0, L_0xc3f251ea0; 1 drivers
|
|
v0xc3f224d20_0 .net/s *"_ivl_2", 15 0, L_0xc3f251f40; 1 drivers
|
|
v0xc3f224dc0_0 .net *"_ivl_7", 0 0, L_0xc3ed4fca0; 1 drivers
|
|
v0xc3f224e60_0 .net *"_ivl_9", 15 0, L_0xc3ed4fd40; 1 drivers
|
|
L_0xc3e854f40 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f224f00_0 .net/s "acc_in", 31 0, L_0xc3e854f40; 1 drivers
|
|
v0xc3f224fa0_0 .net/s "acc_out", 31 0, L_0xc3ec67840; alias, 1 drivers
|
|
v0xc3f225040_0 .net/s "product", 15 0, L_0xc3f251fe0; 1 drivers
|
|
v0xc3f2250e0_0 .net/s "product_ext", 31 0, L_0xc3f252080; 1 drivers
|
|
v0xc3f225180_0 .net/s "w", 7 0, L_0xc3ed4fe80; 1 drivers
|
|
v0xc3f225220_0 .net/s "x", 7 0, L_0xc3ed4fde0; 1 drivers
|
|
L_0xc3f251ea0 .extend/s 16, L_0xc3ed4fde0;
|
|
L_0xc3f251f40 .extend/s 16, L_0xc3ed4fe80;
|
|
L_0xc3f251fe0 .arith/mult 16, L_0xc3f251ea0, L_0xc3f251f40;
|
|
L_0xc3ed4fca0 .part L_0xc3f251fe0, 15, 1;
|
|
L_0xc3ed4fd40 .repeat 16, 16, L_0xc3ed4fca0;
|
|
L_0xc3f252080 .concat [ 16 16 0 0], L_0xc3f251fe0, L_0xc3ed4fd40;
|
|
L_0xc3ec67840 .arith/sum 32, L_0xc3e854f40, L_0xc3f252080;
|
|
S_0xc3f221f80 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebd40 .param/l "i" 1 6 20, +C4<0101>;
|
|
S_0xc3f222100 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f221f80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35740 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35780 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed357c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f2252c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f252120; 1 drivers
|
|
v0xc3f225360_0 .net/s *"_ivl_2", 15 0, L_0xc3f2521c0; 1 drivers
|
|
v0xc3f225400_0 .net *"_ivl_7", 0 0, L_0xc3ed4ff20; 1 drivers
|
|
v0xc3f2254a0_0 .net *"_ivl_9", 15 0, L_0xc3ed54000; 1 drivers
|
|
L_0xc3e854f88 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f225540_0 .net/s "acc_in", 31 0, L_0xc3e854f88; 1 drivers
|
|
v0xc3f2255e0_0 .net/s "acc_out", 31 0, L_0xc3ec678e0; alias, 1 drivers
|
|
v0xc3f225680_0 .net/s "product", 15 0, L_0xc3f252260; 1 drivers
|
|
v0xc3f225720_0 .net/s "product_ext", 31 0, L_0xc3f252300; 1 drivers
|
|
v0xc3f2257c0_0 .net/s "w", 7 0, L_0xc3ed54140; 1 drivers
|
|
v0xc3f225860_0 .net/s "x", 7 0, L_0xc3ed540a0; 1 drivers
|
|
L_0xc3f252120 .extend/s 16, L_0xc3ed540a0;
|
|
L_0xc3f2521c0 .extend/s 16, L_0xc3ed54140;
|
|
L_0xc3f252260 .arith/mult 16, L_0xc3f252120, L_0xc3f2521c0;
|
|
L_0xc3ed4ff20 .part L_0xc3f252260, 15, 1;
|
|
L_0xc3ed54000 .repeat 16, 16, L_0xc3ed4ff20;
|
|
L_0xc3f252300 .concat [ 16 16 0 0], L_0xc3f252260, L_0xc3ed54000;
|
|
L_0xc3ec678e0 .arith/sum 32, L_0xc3e854f88, L_0xc3f252300;
|
|
S_0xc3f222280 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebd80 .param/l "i" 1 6 20, +C4<0110>;
|
|
S_0xc3f222400 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f222280;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35800 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35840 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35880 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f225900_0 .net/s *"_ivl_0", 15 0, L_0xc3f2523a0; 1 drivers
|
|
v0xc3f2259a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f252440; 1 drivers
|
|
v0xc3f225a40_0 .net *"_ivl_7", 0 0, L_0xc3ed541e0; 1 drivers
|
|
v0xc3f225ae0_0 .net *"_ivl_9", 15 0, L_0xc3ed54280; 1 drivers
|
|
L_0xc3e854fd0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f225b80_0 .net/s "acc_in", 31 0, L_0xc3e854fd0; 1 drivers
|
|
v0xc3f225c20_0 .net/s "acc_out", 31 0, L_0xc3ec67980; alias, 1 drivers
|
|
v0xc3f225cc0_0 .net/s "product", 15 0, L_0xc3f2524e0; 1 drivers
|
|
v0xc3f225d60_0 .net/s "product_ext", 31 0, L_0xc3f252580; 1 drivers
|
|
v0xc3f225e00_0 .net/s "w", 7 0, L_0xc3ed543c0; 1 drivers
|
|
v0xc3f225ea0_0 .net/s "x", 7 0, L_0xc3ed54320; 1 drivers
|
|
L_0xc3f2523a0 .extend/s 16, L_0xc3ed54320;
|
|
L_0xc3f252440 .extend/s 16, L_0xc3ed543c0;
|
|
L_0xc3f2524e0 .arith/mult 16, L_0xc3f2523a0, L_0xc3f252440;
|
|
L_0xc3ed541e0 .part L_0xc3f2524e0, 15, 1;
|
|
L_0xc3ed54280 .repeat 16, 16, L_0xc3ed541e0;
|
|
L_0xc3f252580 .concat [ 16 16 0 0], L_0xc3f2524e0, L_0xc3ed54280;
|
|
L_0xc3ec67980 .arith/sum 32, L_0xc3e854fd0, L_0xc3f252580;
|
|
S_0xc3f222580 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebdc0 .param/l "i" 1 6 20, +C4<0111>;
|
|
S_0xc3f222700 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f222580;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed358c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35900 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35940 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f225f40_0 .net/s *"_ivl_0", 15 0, L_0xc3f252620; 1 drivers
|
|
v0xc3f225fe0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2526c0; 1 drivers
|
|
v0xc3f226080_0 .net *"_ivl_7", 0 0, L_0xc3ed54460; 1 drivers
|
|
v0xc3f226120_0 .net *"_ivl_9", 15 0, L_0xc3ed54500; 1 drivers
|
|
L_0xc3e855018 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f2261c0_0 .net/s "acc_in", 31 0, L_0xc3e855018; 1 drivers
|
|
v0xc3f226260_0 .net/s "acc_out", 31 0, L_0xc3ec67a20; alias, 1 drivers
|
|
v0xc3f226300_0 .net/s "product", 15 0, L_0xc3f252760; 1 drivers
|
|
v0xc3f2263a0_0 .net/s "product_ext", 31 0, L_0xc3f252800; 1 drivers
|
|
v0xc3f226440_0 .net/s "w", 7 0, L_0xc3ed54640; 1 drivers
|
|
v0xc3f2264e0_0 .net/s "x", 7 0, L_0xc3ed545a0; 1 drivers
|
|
L_0xc3f252620 .extend/s 16, L_0xc3ed545a0;
|
|
L_0xc3f2526c0 .extend/s 16, L_0xc3ed54640;
|
|
L_0xc3f252760 .arith/mult 16, L_0xc3f252620, L_0xc3f2526c0;
|
|
L_0xc3ed54460 .part L_0xc3f252760, 15, 1;
|
|
L_0xc3ed54500 .repeat 16, 16, L_0xc3ed54460;
|
|
L_0xc3f252800 .concat [ 16 16 0 0], L_0xc3f252760, L_0xc3ed54500;
|
|
L_0xc3ec67a20 .arith/sum 32, L_0xc3e855018, L_0xc3f252800;
|
|
S_0xc3f222880 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebe00 .param/l "i" 1 6 20, +C4<01000>;
|
|
S_0xc3f222a00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f222880;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35980 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed359c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35a00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f226580_0 .net/s *"_ivl_0", 15 0, L_0xc3f2528a0; 1 drivers
|
|
v0xc3f226620_0 .net/s *"_ivl_2", 15 0, L_0xc3f252940; 1 drivers
|
|
v0xc3f2266c0_0 .net *"_ivl_7", 0 0, L_0xc3ed546e0; 1 drivers
|
|
v0xc3f226760_0 .net *"_ivl_9", 15 0, L_0xc3ed54780; 1 drivers
|
|
L_0xc3e855060 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f226800_0 .net/s "acc_in", 31 0, L_0xc3e855060; 1 drivers
|
|
v0xc3f2268a0_0 .net/s "acc_out", 31 0, L_0xc3ec67ac0; alias, 1 drivers
|
|
v0xc3f226940_0 .net/s "product", 15 0, L_0xc3f2529e0; 1 drivers
|
|
v0xc3f2269e0_0 .net/s "product_ext", 31 0, L_0xc3f252a80; 1 drivers
|
|
v0xc3f226a80_0 .net/s "w", 7 0, L_0xc3ed54960; 1 drivers
|
|
v0xc3f226b20_0 .net/s "x", 7 0, L_0xc3ed54820; 1 drivers
|
|
L_0xc3f2528a0 .extend/s 16, L_0xc3ed54820;
|
|
L_0xc3f252940 .extend/s 16, L_0xc3ed54960;
|
|
L_0xc3f2529e0 .arith/mult 16, L_0xc3f2528a0, L_0xc3f252940;
|
|
L_0xc3ed546e0 .part L_0xc3f2529e0, 15, 1;
|
|
L_0xc3ed54780 .repeat 16, 16, L_0xc3ed546e0;
|
|
L_0xc3f252a80 .concat [ 16 16 0 0], L_0xc3f2529e0, L_0xc3ed54780;
|
|
L_0xc3ec67ac0 .arith/sum 32, L_0xc3e855060, L_0xc3f252a80;
|
|
S_0xc3f222b80 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebe40 .param/l "i" 1 6 20, +C4<01001>;
|
|
S_0xc3f222d00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f222b80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35a40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35a80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35ac0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f226bc0_0 .net/s *"_ivl_0", 15 0, L_0xc3f252b20; 1 drivers
|
|
v0xc3f226c60_0 .net/s *"_ivl_2", 15 0, L_0xc3f252bc0; 1 drivers
|
|
v0xc3f226d00_0 .net *"_ivl_7", 0 0, L_0xc3ed54a00; 1 drivers
|
|
v0xc3f226da0_0 .net *"_ivl_9", 15 0, L_0xc3ed54aa0; 1 drivers
|
|
L_0xc3e8550a8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f226e40_0 .net/s "acc_in", 31 0, L_0xc3e8550a8; 1 drivers
|
|
v0xc3f226ee0_0 .net/s "acc_out", 31 0, L_0xc3ec67b60; alias, 1 drivers
|
|
v0xc3f226f80_0 .net/s "product", 15 0, L_0xc3f252c60; 1 drivers
|
|
v0xc3f227020_0 .net/s "product_ext", 31 0, L_0xc3f252d00; 1 drivers
|
|
v0xc3f2270c0_0 .net/s "w", 7 0, L_0xc3ed54be0; 1 drivers
|
|
v0xc3f227160_0 .net/s "x", 7 0, L_0xc3ed54b40; 1 drivers
|
|
L_0xc3f252b20 .extend/s 16, L_0xc3ed54b40;
|
|
L_0xc3f252bc0 .extend/s 16, L_0xc3ed54be0;
|
|
L_0xc3f252c60 .arith/mult 16, L_0xc3f252b20, L_0xc3f252bc0;
|
|
L_0xc3ed54a00 .part L_0xc3f252c60, 15, 1;
|
|
L_0xc3ed54aa0 .repeat 16, 16, L_0xc3ed54a00;
|
|
L_0xc3f252d00 .concat [ 16 16 0 0], L_0xc3f252c60, L_0xc3ed54aa0;
|
|
L_0xc3ec67b60 .arith/sum 32, L_0xc3e8550a8, L_0xc3f252d00;
|
|
S_0xc3f222e80 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebe80 .param/l "i" 1 6 20, +C4<01010>;
|
|
S_0xc3f223000 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f222e80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35b00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35b40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35b80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f227200_0 .net/s *"_ivl_0", 15 0, L_0xc3f252da0; 1 drivers
|
|
v0xc3f2272a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f252e40; 1 drivers
|
|
v0xc3f227340_0 .net *"_ivl_7", 0 0, L_0xc3ed54c80; 1 drivers
|
|
v0xc3f2273e0_0 .net *"_ivl_9", 15 0, L_0xc3ed54d20; 1 drivers
|
|
L_0xc3e8550f0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f227480_0 .net/s "acc_in", 31 0, L_0xc3e8550f0; 1 drivers
|
|
v0xc3f227520_0 .net/s "acc_out", 31 0, L_0xc3ec67c00; alias, 1 drivers
|
|
v0xc3f2275c0_0 .net/s "product", 15 0, L_0xc3f252ee0; 1 drivers
|
|
v0xc3f227660_0 .net/s "product_ext", 31 0, L_0xc3f252f80; 1 drivers
|
|
v0xc3f227700_0 .net/s "w", 7 0, L_0xc3ed548c0; 1 drivers
|
|
v0xc3f2277a0_0 .net/s "x", 7 0, L_0xc3ed54dc0; 1 drivers
|
|
L_0xc3f252da0 .extend/s 16, L_0xc3ed54dc0;
|
|
L_0xc3f252e40 .extend/s 16, L_0xc3ed548c0;
|
|
L_0xc3f252ee0 .arith/mult 16, L_0xc3f252da0, L_0xc3f252e40;
|
|
L_0xc3ed54c80 .part L_0xc3f252ee0, 15, 1;
|
|
L_0xc3ed54d20 .repeat 16, 16, L_0xc3ed54c80;
|
|
L_0xc3f252f80 .concat [ 16 16 0 0], L_0xc3f252ee0, L_0xc3ed54d20;
|
|
L_0xc3ec67c00 .arith/sum 32, L_0xc3e8550f0, L_0xc3f252f80;
|
|
S_0xc3f223180 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebec0 .param/l "i" 1 6 20, +C4<01011>;
|
|
S_0xc3f223300 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f223180;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35bc0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35c00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35c40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f227840_0 .net/s *"_ivl_0", 15 0, L_0xc3f253020; 1 drivers
|
|
v0xc3f2278e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2530c0; 1 drivers
|
|
v0xc3f227980_0 .net *"_ivl_7", 0 0, L_0xc3ed54e60; 1 drivers
|
|
v0xc3f227a20_0 .net *"_ivl_9", 15 0, L_0xc3ed54f00; 1 drivers
|
|
L_0xc3e855138 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f227ac0_0 .net/s "acc_in", 31 0, L_0xc3e855138; 1 drivers
|
|
v0xc3f227b60_0 .net/s "acc_out", 31 0, L_0xc3ec67ca0; alias, 1 drivers
|
|
v0xc3f227c00_0 .net/s "product", 15 0, L_0xc3f253160; 1 drivers
|
|
v0xc3f227ca0_0 .net/s "product_ext", 31 0, L_0xc3f253200; 1 drivers
|
|
v0xc3f227d40_0 .net/s "w", 7 0, L_0xc3ed55040; 1 drivers
|
|
v0xc3f227de0_0 .net/s "x", 7 0, L_0xc3ed54fa0; 1 drivers
|
|
L_0xc3f253020 .extend/s 16, L_0xc3ed54fa0;
|
|
L_0xc3f2530c0 .extend/s 16, L_0xc3ed55040;
|
|
L_0xc3f253160 .arith/mult 16, L_0xc3f253020, L_0xc3f2530c0;
|
|
L_0xc3ed54e60 .part L_0xc3f253160, 15, 1;
|
|
L_0xc3ed54f00 .repeat 16, 16, L_0xc3ed54e60;
|
|
L_0xc3f253200 .concat [ 16 16 0 0], L_0xc3f253160, L_0xc3ed54f00;
|
|
L_0xc3ec67ca0 .arith/sum 32, L_0xc3e855138, L_0xc3f253200;
|
|
S_0xc3f223480 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebf00 .param/l "i" 1 6 20, +C4<01100>;
|
|
S_0xc3f223600 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f223480;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35c80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35cc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35d00 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f227e80_0 .net/s *"_ivl_0", 15 0, L_0xc3f2532a0; 1 drivers
|
|
v0xc3f227f20_0 .net/s *"_ivl_2", 15 0, L_0xc3f253340; 1 drivers
|
|
v0xc3f228000_0 .net *"_ivl_7", 0 0, L_0xc3ed550e0; 1 drivers
|
|
v0xc3f2280a0_0 .net *"_ivl_9", 15 0, L_0xc3ed55180; 1 drivers
|
|
L_0xc3e855180 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f228140_0 .net/s "acc_in", 31 0, L_0xc3e855180; 1 drivers
|
|
v0xc3f2281e0_0 .net/s "acc_out", 31 0, L_0xc3ec67d40; alias, 1 drivers
|
|
v0xc3f228280_0 .net/s "product", 15 0, L_0xc3f2533e0; 1 drivers
|
|
v0xc3f228320_0 .net/s "product_ext", 31 0, L_0xc3f253480; 1 drivers
|
|
v0xc3f2283c0_0 .net/s "w", 7 0, L_0xc3ed552c0; 1 drivers
|
|
v0xc3f228460_0 .net/s "x", 7 0, L_0xc3ed55220; 1 drivers
|
|
L_0xc3f2532a0 .extend/s 16, L_0xc3ed55220;
|
|
L_0xc3f253340 .extend/s 16, L_0xc3ed552c0;
|
|
L_0xc3f2533e0 .arith/mult 16, L_0xc3f2532a0, L_0xc3f253340;
|
|
L_0xc3ed550e0 .part L_0xc3f2533e0, 15, 1;
|
|
L_0xc3ed55180 .repeat 16, 16, L_0xc3ed550e0;
|
|
L_0xc3f253480 .concat [ 16 16 0 0], L_0xc3f2533e0, L_0xc3ed55180;
|
|
L_0xc3ec67d40 .arith/sum 32, L_0xc3e855180, L_0xc3f253480;
|
|
S_0xc3f223780 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebf40 .param/l "i" 1 6 20, +C4<01101>;
|
|
S_0xc3f223900 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f223780;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35d40 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35d80 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35dc0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f228500_0 .net/s *"_ivl_0", 15 0, L_0xc3f253520; 1 drivers
|
|
v0xc3f2285a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2535c0; 1 drivers
|
|
v0xc3f228640_0 .net *"_ivl_7", 0 0, L_0xc3ed55360; 1 drivers
|
|
v0xc3f2286e0_0 .net *"_ivl_9", 15 0, L_0xc3ed55400; 1 drivers
|
|
L_0xc3e8551c8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f228780_0 .net/s "acc_in", 31 0, L_0xc3e8551c8; 1 drivers
|
|
v0xc3f228820_0 .net/s "acc_out", 31 0, L_0xc3ec67de0; alias, 1 drivers
|
|
v0xc3f2288c0_0 .net/s "product", 15 0, L_0xc3f253660; 1 drivers
|
|
v0xc3f228960_0 .net/s "product_ext", 31 0, L_0xc3f253700; 1 drivers
|
|
v0xc3f228a00_0 .net/s "w", 7 0, L_0xc3ed55540; 1 drivers
|
|
v0xc3f228aa0_0 .net/s "x", 7 0, L_0xc3ed554a0; 1 drivers
|
|
L_0xc3f253520 .extend/s 16, L_0xc3ed554a0;
|
|
L_0xc3f2535c0 .extend/s 16, L_0xc3ed55540;
|
|
L_0xc3f253660 .arith/mult 16, L_0xc3f253520, L_0xc3f2535c0;
|
|
L_0xc3ed55360 .part L_0xc3f253660, 15, 1;
|
|
L_0xc3ed55400 .repeat 16, 16, L_0xc3ed55360;
|
|
L_0xc3f253700 .concat [ 16 16 0 0], L_0xc3f253660, L_0xc3ed55400;
|
|
L_0xc3ec67de0 .arith/sum 32, L_0xc3e8551c8, L_0xc3f253700;
|
|
S_0xc3f223a80 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebf80 .param/l "i" 1 6 20, +C4<01110>;
|
|
S_0xc3f223c00 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f223a80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35e00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35e40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35e80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f228b40_0 .net/s *"_ivl_0", 15 0, L_0xc3f2537a0; 1 drivers
|
|
v0xc3f228be0_0 .net/s *"_ivl_2", 15 0, L_0xc3f253840; 1 drivers
|
|
v0xc3f228c80_0 .net *"_ivl_7", 0 0, L_0xc3ed555e0; 1 drivers
|
|
v0xc3f228d20_0 .net *"_ivl_9", 15 0, L_0xc3ed55680; 1 drivers
|
|
L_0xc3e855210 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f228dc0_0 .net/s "acc_in", 31 0, L_0xc3e855210; 1 drivers
|
|
v0xc3f228e60_0 .net/s "acc_out", 31 0, L_0xc3ec67e80; alias, 1 drivers
|
|
v0xc3f228f00_0 .net/s "product", 15 0, L_0xc3f2538e0; 1 drivers
|
|
v0xc3f228fa0_0 .net/s "product_ext", 31 0, L_0xc3f253980; 1 drivers
|
|
v0xc3f229040_0 .net/s "w", 7 0, L_0xc3ed557c0; 1 drivers
|
|
v0xc3f2290e0_0 .net/s "x", 7 0, L_0xc3ed55720; 1 drivers
|
|
L_0xc3f2537a0 .extend/s 16, L_0xc3ed55720;
|
|
L_0xc3f253840 .extend/s 16, L_0xc3ed557c0;
|
|
L_0xc3f2538e0 .arith/mult 16, L_0xc3f2537a0, L_0xc3f253840;
|
|
L_0xc3ed555e0 .part L_0xc3f2538e0, 15, 1;
|
|
L_0xc3ed55680 .repeat 16, 16, L_0xc3ed555e0;
|
|
L_0xc3f253980 .concat [ 16 16 0 0], L_0xc3f2538e0, L_0xc3ed55680;
|
|
L_0xc3ec67e80 .arith/sum 32, L_0xc3e855210, L_0xc3f253980;
|
|
S_0xc3f223d80 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 20, 6 20 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ecebfc0 .param/l "i" 1 6 20, +C4<01111>;
|
|
S_0xc3f22c000 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f223d80;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35ec0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35f00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed35f40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f229180_0 .net/s *"_ivl_0", 15 0, L_0xc3f253a20; 1 drivers
|
|
v0xc3f229220_0 .net/s *"_ivl_2", 15 0, L_0xc3f253ac0; 1 drivers
|
|
v0xc3f2292c0_0 .net *"_ivl_7", 0 0, L_0xc3ed55860; 1 drivers
|
|
v0xc3f229360_0 .net *"_ivl_9", 15 0, L_0xc3ed55900; 1 drivers
|
|
L_0xc3e855258 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f229400_0 .net/s "acc_in", 31 0, L_0xc3e855258; 1 drivers
|
|
v0xc3f2294a0_0 .net/s "acc_out", 31 0, L_0xc3ec67f20; alias, 1 drivers
|
|
v0xc3f229540_0 .net/s "product", 15 0, L_0xc3f253b60; 1 drivers
|
|
v0xc3f2295e0_0 .net/s "product_ext", 31 0, L_0xc3f253c00; 1 drivers
|
|
v0xc3f229680_0 .net/s "w", 7 0, L_0xc3ed55a40; 1 drivers
|
|
v0xc3f229720_0 .net/s "x", 7 0, L_0xc3ed559a0; 1 drivers
|
|
L_0xc3f253a20 .extend/s 16, L_0xc3ed559a0;
|
|
L_0xc3f253ac0 .extend/s 16, L_0xc3ed55a40;
|
|
L_0xc3f253b60 .arith/mult 16, L_0xc3f253a20, L_0xc3f253ac0;
|
|
L_0xc3ed55860 .part L_0xc3f253b60, 15, 1;
|
|
L_0xc3ed55900 .repeat 16, 16, L_0xc3ed55860;
|
|
L_0xc3f253c00 .concat [ 16 16 0 0], L_0xc3f253b60, L_0xc3ed55900;
|
|
L_0xc3ec67f20 .arith/sum 32, L_0xc3e855258, L_0xc3f253c00;
|
|
S_0xc3f22c180 .scope generate, "GEN_TREE_INPUT[0]" "GEN_TREE_INPUT[0]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44000 .param/l "i" 1 6 80, +C4<00>;
|
|
L_0xc3f24c7e0 .functor BUFZ 32, L_0xc3ec675c0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22c300 .scope generate, "GEN_TREE_INPUT[1]" "GEN_TREE_INPUT[1]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44040 .param/l "i" 1 6 80, +C4<01>;
|
|
L_0xc3f24c850 .functor BUFZ 32, L_0xc3ec67660, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22c480 .scope generate, "GEN_TREE_INPUT[2]" "GEN_TREE_INPUT[2]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44080 .param/l "i" 1 6 80, +C4<010>;
|
|
L_0xc3f24c8c0 .functor BUFZ 32, L_0xc3ec67700, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22c600 .scope generate, "GEN_TREE_INPUT[3]" "GEN_TREE_INPUT[3]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed440c0 .param/l "i" 1 6 80, +C4<011>;
|
|
L_0xc3f24c930 .functor BUFZ 32, L_0xc3ec677a0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22c780 .scope generate, "GEN_TREE_INPUT[4]" "GEN_TREE_INPUT[4]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44100 .param/l "i" 1 6 80, +C4<0100>;
|
|
L_0xc3f24c9a0 .functor BUFZ 32, L_0xc3ec67840, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22c900 .scope generate, "GEN_TREE_INPUT[5]" "GEN_TREE_INPUT[5]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44140 .param/l "i" 1 6 80, +C4<0101>;
|
|
L_0xc3f24ca10 .functor BUFZ 32, L_0xc3ec678e0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22ca80 .scope generate, "GEN_TREE_INPUT[6]" "GEN_TREE_INPUT[6]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44180 .param/l "i" 1 6 80, +C4<0110>;
|
|
L_0xc3f24ca80 .functor BUFZ 32, L_0xc3ec67980, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22cc00 .scope generate, "GEN_TREE_INPUT[7]" "GEN_TREE_INPUT[7]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed441c0 .param/l "i" 1 6 80, +C4<0111>;
|
|
L_0xc3f24caf0 .functor BUFZ 32, L_0xc3ec67a20, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22cd80 .scope generate, "GEN_TREE_INPUT[8]" "GEN_TREE_INPUT[8]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44200 .param/l "i" 1 6 80, +C4<01000>;
|
|
L_0xc3f24cb60 .functor BUFZ 32, L_0xc3ec67ac0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22cf00 .scope generate, "GEN_TREE_INPUT[9]" "GEN_TREE_INPUT[9]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44240 .param/l "i" 1 6 80, +C4<01001>;
|
|
L_0xc3f24cbd0 .functor BUFZ 32, L_0xc3ec67b60, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22d080 .scope generate, "GEN_TREE_INPUT[10]" "GEN_TREE_INPUT[10]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44280 .param/l "i" 1 6 80, +C4<01010>;
|
|
L_0xc3f24cc40 .functor BUFZ 32, L_0xc3ec67c00, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22d200 .scope generate, "GEN_TREE_INPUT[11]" "GEN_TREE_INPUT[11]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed442c0 .param/l "i" 1 6 80, +C4<01011>;
|
|
L_0xc3f24ccb0 .functor BUFZ 32, L_0xc3ec67ca0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22d380 .scope generate, "GEN_TREE_INPUT[12]" "GEN_TREE_INPUT[12]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44300 .param/l "i" 1 6 80, +C4<01100>;
|
|
L_0xc3f24cd20 .functor BUFZ 32, L_0xc3ec67d40, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22d500 .scope generate, "GEN_TREE_INPUT[13]" "GEN_TREE_INPUT[13]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44340 .param/l "i" 1 6 80, +C4<01101>;
|
|
L_0xc3f24cd90 .functor BUFZ 32, L_0xc3ec67de0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22d680 .scope generate, "GEN_TREE_INPUT[14]" "GEN_TREE_INPUT[14]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44380 .param/l "i" 1 6 80, +C4<01110>;
|
|
L_0xc3f24ce00 .functor BUFZ 32, L_0xc3ec67e80, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22d800 .scope generate, "GEN_TREE_INPUT[15]" "GEN_TREE_INPUT[15]" 6 80, 6 80 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed443c0 .param/l "i" 1 6 80, +C4<01111>;
|
|
L_0xc3f24ce70 .functor BUFZ 32, L_0xc3ec67f20, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f22d980 .scope generate, "GEN_TREE_LEVEL[0]" "GEN_TREE_LEVEL[0]" 6 92, 6 92 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44400 .param/l "level" 1 6 92, +C4<00>;
|
|
S_0xc3f22db00 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44440 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5c000 .arith/sum 32, L_0xc3f24c7e0, L_0xc3f24c850;
|
|
S_0xc3f22dc80 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44480 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ed5c0a0 .arith/sum 32, L_0xc3f24c8c0, L_0xc3f24c930;
|
|
S_0xc3f22de00 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed444c0 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ed5c140 .arith/sum 32, L_0xc3f24c9a0, L_0xc3f24ca10;
|
|
S_0xc3f22df80 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44500 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ed5c1e0 .arith/sum 32, L_0xc3f24ca80, L_0xc3f24caf0;
|
|
S_0xc3f22e100 .scope generate, "GEN_TREE_NODE[4]" "GEN_TREE_NODE[4]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44540 .param/l "node" 1 6 94, +C4<0100>;
|
|
L_0xc3ed5c280 .arith/sum 32, L_0xc3f24cb60, L_0xc3f24cbd0;
|
|
S_0xc3f22e280 .scope generate, "GEN_TREE_NODE[5]" "GEN_TREE_NODE[5]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44580 .param/l "node" 1 6 94, +C4<0101>;
|
|
L_0xc3ed5c320 .arith/sum 32, L_0xc3f24cc40, L_0xc3f24ccb0;
|
|
S_0xc3f22e400 .scope generate, "GEN_TREE_NODE[6]" "GEN_TREE_NODE[6]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed445c0 .param/l "node" 1 6 94, +C4<0110>;
|
|
L_0xc3ed5c3c0 .arith/sum 32, L_0xc3f24cd20, L_0xc3f24cd90;
|
|
S_0xc3f22e580 .scope generate, "GEN_TREE_NODE[7]" "GEN_TREE_NODE[7]" 6 94, 6 94 0, S_0xc3f22d980;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44600 .param/l "node" 1 6 94, +C4<0111>;
|
|
L_0xc3ed5c460 .arith/sum 32, L_0xc3f24ce00, L_0xc3f24ce70;
|
|
S_0xc3f22e700 .scope generate, "GEN_TREE_LEVEL[1]" "GEN_TREE_LEVEL[1]" 6 92, 6 92 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44640 .param/l "level" 1 6 92, +C4<01>;
|
|
S_0xc3f22e880 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f22e700;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44680 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5c500 .arith/sum 32, L_0xc3ed5c000, L_0xc3ed5c0a0;
|
|
S_0xc3f22ea00 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f22e700;
|
|
.timescale -9 -12;
|
|
P_0xc3ed446c0 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ed5c5a0 .arith/sum 32, L_0xc3ed5c140, L_0xc3ed5c1e0;
|
|
S_0xc3f22eb80 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f22e700;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44700 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ed5c640 .arith/sum 32, L_0xc3ed5c280, L_0xc3ed5c320;
|
|
S_0xc3f22ed00 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f22e700;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44740 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ed5c6e0 .arith/sum 32, L_0xc3ed5c3c0, L_0xc3ed5c460;
|
|
S_0xc3f22ee80 .scope generate, "GEN_TREE_LEVEL[2]" "GEN_TREE_LEVEL[2]" 6 92, 6 92 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44780 .param/l "level" 1 6 92, +C4<010>;
|
|
S_0xc3f22f000 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f22ee80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed447c0 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5c780 .arith/sum 32, L_0xc3ed5c500, L_0xc3ed5c5a0;
|
|
S_0xc3f22f180 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f22ee80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44800 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ed5c820 .arith/sum 32, L_0xc3ed5c640, L_0xc3ed5c6e0;
|
|
S_0xc3f22f300 .scope generate, "GEN_TREE_LEVEL[3]" "GEN_TREE_LEVEL[3]" 6 92, 6 92 0, S_0xc3f220f00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44840 .param/l "level" 1 6 92, +C4<011>;
|
|
S_0xc3f22f480 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f22f300;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44880 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5c8c0 .arith/sum 32, L_0xc3ed5c780, L_0xc3ed5c820;
|
|
S_0xc3f22f600 .scope generate, "GEN_NEURON[3]" "GEN_NEURON[3]" 4 34, 4 34 0, S_0x1057418a0;
|
|
.timescale -9 -12;
|
|
P_0xc3ed448c0 .param/l "n" 1 4 34, +C4<011>;
|
|
S_0xc3f22f780 .scope module, "u_neuron" "neuron_parallel" 4 41, 5 1 0, S_0xc3f22f600;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 1 "clk";
|
|
.port_info 1 /INPUT 1 "rst";
|
|
.port_info 2 /INPUT 1 "start";
|
|
.port_info 3 /INPUT 2048 "x_bus";
|
|
.port_info 4 /INPUT 2048 "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_0xc3f22f900 .param/l "ACC_WIDTH" 0 5 5, +C4<00000000000000000000000000100000>;
|
|
P_0xc3f22f940 .param/l "DATA_WIDTH" 0 5 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3f22f980 .param/l "GROUPS" 1 5 20, +C4<00000000000000000000000000010000>;
|
|
P_0xc3f22f9c0 .param/l "GROUP_INDEX_WIDTH" 1 5 21, +C4<00000000000000000000000000000100>;
|
|
P_0xc3f22fa00 .param/l "N_INPUTS" 0 5 3, +C4<00000000000000000000000100000000>;
|
|
P_0xc3f22fa40 .param/l "PARALLEL" 0 5 4, +C4<00000000000000000000000000010000>;
|
|
v0xc3f241680_0 .net *"_ivl_0", 31 0, L_0xc3f253d40; 1 drivers
|
|
v0xc3f241720_0 .net *"_ivl_11", 31 0, L_0xc3f253e80; 1 drivers
|
|
v0xc3f2417c0_0 .net *"_ivl_14", 31 0, L_0xc3f253f20; 1 drivers
|
|
L_0xc3e855378 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f241860_0 .net *"_ivl_17", 27 0, L_0xc3e855378; 1 drivers
|
|
L_0xc3e8553c0 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f241900_0 .net/2u *"_ivl_18", 31 0, L_0xc3e8553c0; 1 drivers
|
|
v0xc3f2419a0_0 .net *"_ivl_21", 31 0, L_0xc3f254000; 1 drivers
|
|
L_0xc3e855408 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f241a40_0 .net/2u *"_ivl_22", 31 0, L_0xc3e855408; 1 drivers
|
|
v0xc3f241ae0_0 .net *"_ivl_25", 31 0, L_0xc3f2540a0; 1 drivers
|
|
v0xc3f241b80_0 .net *"_ivl_29", 0 0, L_0xc3ed646e0; 1 drivers
|
|
L_0xc3e8552a0 .functor BUFT 1, C4<0000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f241c20_0 .net *"_ivl_3", 27 0, L_0xc3e8552a0; 1 drivers
|
|
v0xc3f241cc0_0 .net *"_ivl_31", 23 0, L_0xc3ed64780; 1 drivers
|
|
L_0xc3e8552e8 .functor BUFT 1, C4<00000000000000000000000000010000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f241d60_0 .net/2u *"_ivl_4", 31 0, L_0xc3e8552e8; 1 drivers
|
|
v0xc3f241e00_0 .net *"_ivl_7", 31 0, L_0xc3f253de0; 1 drivers
|
|
L_0xc3e855330 .functor BUFT 1, C4<00000000000000000000000000001000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f241ea0_0 .net/2u *"_ivl_8", 31 0, L_0xc3e855330; 1 drivers
|
|
v0xc3f241f40_0 .var/s "acc", 31 0;
|
|
v0xc3f241fe0_0 .net/s "acc_next", 31 0, L_0xc3ed5de00; 1 drivers
|
|
v0xc3f242080_0 .net/s "bias", 7 0, L_0xc3ed648c0; 1 drivers
|
|
v0xc3f242120_0 .net/s "bias_ext", 31 0, L_0xc3f256940; 1 drivers
|
|
v0xc3f2421c0_0 .var "busy", 0 0;
|
|
v0xc3f242260_0 .net "clk", 0 0, v0xc3f243160_0; alias, 1 drivers
|
|
v0xc3f242300_0 .var "done", 0 0;
|
|
v0xc3f2423a0_0 .net/s "final_acc", 31 0, L_0xc3ed5dea0; 1 drivers
|
|
v0xc3f242440_0 .var "group_index", 3 0;
|
|
v0xc3f2424e0_0 .net "rst", 0 0, v0xc3f243480_0; alias, 1 drivers
|
|
v0xc3f242580_0 .net "start", 0 0, v0xc3f243520_0; alias, 1 drivers
|
|
v0xc3f242620_0 .net/s "w_bus", 2047 0, L_0xc3ed64820; 1 drivers
|
|
v0xc3f2426c0_0 .net/s "w_group", 127 0, L_0xc3ed55e00; 1 drivers
|
|
v0xc3f242760_0 .net/s "x_bus", 2047 0, v0xc3f243660_0; alias, 1 drivers
|
|
v0xc3f242800_0 .net/s "x_group", 127 0, L_0xc3ed55d60; 1 drivers
|
|
v0xc3f2428a0_0 .var/s "y", 7 0;
|
|
L_0xc3f253d40 .concat [ 4 28 0 0], v0xc3f242440_0, L_0xc3e8552a0;
|
|
L_0xc3f253de0 .arith/mult 32, L_0xc3f253d40, L_0xc3e8552e8;
|
|
L_0xc3f253e80 .arith/mult 32, L_0xc3f253de0, L_0xc3e855330;
|
|
L_0xc3ed55d60 .part/v v0xc3f243660_0, L_0xc3f253e80, 128;
|
|
L_0xc3f253f20 .concat [ 4 28 0 0], v0xc3f242440_0, L_0xc3e855378;
|
|
L_0xc3f254000 .arith/mult 32, L_0xc3f253f20, L_0xc3e8553c0;
|
|
L_0xc3f2540a0 .arith/mult 32, L_0xc3f254000, L_0xc3e855408;
|
|
L_0xc3ed55e00 .part/v L_0xc3ed64820, L_0xc3f2540a0, 128;
|
|
L_0xc3ed646e0 .part L_0xc3ed648c0, 7, 1;
|
|
L_0xc3ed64780 .repeat 24, 24, L_0xc3ed646e0;
|
|
L_0xc3f256940 .concat [ 8 24 0 0], L_0xc3ed648c0, L_0xc3ed64780;
|
|
L_0xc3ed5dea0 .arith/sum 32, L_0xc3ed5de00, L_0xc3f256940;
|
|
S_0xc3f22fa80 .scope module, "u_mac8" "mac8" 5 52, 6 1 0, S_0xc3f22f780;
|
|
.timescale -9 -12;
|
|
.port_info 0 /INPUT 128 "x_bus";
|
|
.port_info 1 /INPUT 128 "w_bus";
|
|
.port_info 2 /INPUT 32 "acc_in";
|
|
.port_info 3 /OUTPUT 32 "acc_out";
|
|
P_0x1057422e0 .param/l "ACC_WIDTH" 0 6 3, +C4<00000000000000000000000000100000>;
|
|
P_0x105742320 .param/l "DATA_WIDTH" 0 6 2, +C4<00000000000000000000000000001000>;
|
|
P_0x105742360 .param/l "PARALLEL" 0 6 4, +C4<00000000000000000000000000010000>;
|
|
P_0x1057423a0 .param/l "TREE_LEVELS" 1 6 70, +C4<00000000000000000000000000000100>;
|
|
v0xc3f2412c0_0 .net/s "acc_in", 31 0, v0xc3f241f40_0; 1 drivers
|
|
v0xc3f241360_0 .net/s "acc_out", 31 0, L_0xc3ed5de00; alias, 1 drivers
|
|
v0xc3f241400 .array "products", 15 0;
|
|
v0xc3f241400_0 .net/s v0xc3f241400 0, 31 0, L_0xc3ed5caa0; 1 drivers
|
|
v0xc3f241400_1 .net/s v0xc3f241400 1, 31 0, L_0xc3ed5cb40; 1 drivers
|
|
v0xc3f241400_2 .net/s v0xc3f241400 2, 31 0, L_0xc3ed5cbe0; 1 drivers
|
|
v0xc3f241400_3 .net/s v0xc3f241400 3, 31 0, L_0xc3ed5cc80; 1 drivers
|
|
v0xc3f241400_4 .net/s v0xc3f241400 4, 31 0, L_0xc3ed5cd20; 1 drivers
|
|
v0xc3f241400_5 .net/s v0xc3f241400 5, 31 0, L_0xc3ed5cdc0; 1 drivers
|
|
v0xc3f241400_6 .net/s v0xc3f241400 6, 31 0, L_0xc3ed5ce60; 1 drivers
|
|
v0xc3f241400_7 .net/s v0xc3f241400 7, 31 0, L_0xc3ed5cf00; 1 drivers
|
|
v0xc3f241400_8 .net/s v0xc3f241400 8, 31 0, L_0xc3ed5cfa0; 1 drivers
|
|
v0xc3f241400_9 .net/s v0xc3f241400 9, 31 0, L_0xc3ed5d040; 1 drivers
|
|
v0xc3f241400_10 .net/s v0xc3f241400 10, 31 0, L_0xc3ed5d0e0; 1 drivers
|
|
v0xc3f241400_11 .net/s v0xc3f241400 11, 31 0, L_0xc3ed5d180; 1 drivers
|
|
v0xc3f241400_12 .net/s v0xc3f241400 12, 31 0, L_0xc3ed5d220; 1 drivers
|
|
v0xc3f241400_13 .net/s v0xc3f241400 13, 31 0, L_0xc3ed5d2c0; 1 drivers
|
|
v0xc3f241400_14 .net/s v0xc3f241400 14, 31 0, L_0xc3ed5d360; 1 drivers
|
|
v0xc3f241400_15 .net/s v0xc3f241400 15, 31 0, L_0xc3ed5d400; 1 drivers
|
|
v0xc3f2414a0 .array "tree", 79 0;
|
|
v0xc3f2414a0_0 .net/s v0xc3f2414a0 0, 31 0, L_0xc3f24cee0; 1 drivers
|
|
v0xc3f2414a0_1 .net/s v0xc3f2414a0 1, 31 0, L_0xc3f24cf50; 1 drivers
|
|
v0xc3f2414a0_2 .net/s v0xc3f2414a0 2, 31 0, L_0xc3f24cfc0; 1 drivers
|
|
v0xc3f2414a0_3 .net/s v0xc3f2414a0 3, 31 0, L_0xc3f24d030; 1 drivers
|
|
v0xc3f2414a0_4 .net/s v0xc3f2414a0 4, 31 0, L_0xc3f24d0a0; 1 drivers
|
|
v0xc3f2414a0_5 .net/s v0xc3f2414a0 5, 31 0, L_0xc3f24d110; 1 drivers
|
|
v0xc3f2414a0_6 .net/s v0xc3f2414a0 6, 31 0, L_0xc3f24d180; 1 drivers
|
|
v0xc3f2414a0_7 .net/s v0xc3f2414a0 7, 31 0, L_0xc3f24d1f0; 1 drivers
|
|
v0xc3f2414a0_8 .net/s v0xc3f2414a0 8, 31 0, L_0xc3f24d260; 1 drivers
|
|
v0xc3f2414a0_9 .net/s v0xc3f2414a0 9, 31 0, L_0xc3f24d2d0; 1 drivers
|
|
v0xc3f2414a0_10 .net/s v0xc3f2414a0 10, 31 0, L_0xc3f24d340; 1 drivers
|
|
v0xc3f2414a0_11 .net/s v0xc3f2414a0 11, 31 0, L_0xc3f24d3b0; 1 drivers
|
|
v0xc3f2414a0_12 .net/s v0xc3f2414a0 12, 31 0, L_0xc3f24d420; 1 drivers
|
|
v0xc3f2414a0_13 .net/s v0xc3f2414a0 13, 31 0, L_0xc3f24d490; 1 drivers
|
|
v0xc3f2414a0_14 .net/s v0xc3f2414a0 14, 31 0, L_0xc3f24d500; 1 drivers
|
|
v0xc3f2414a0_15 .net/s v0xc3f2414a0 15, 31 0, L_0xc3f24d570; 1 drivers
|
|
v0xc3f2414a0_16 .net/s v0xc3f2414a0 16, 31 0, L_0xc3ed5d4a0; 1 drivers
|
|
v0xc3f2414a0_17 .net/s v0xc3f2414a0 17, 31 0, L_0xc3ed5d540; 1 drivers
|
|
v0xc3f2414a0_18 .net/s v0xc3f2414a0 18, 31 0, L_0xc3ed5d5e0; 1 drivers
|
|
v0xc3f2414a0_19 .net/s v0xc3f2414a0 19, 31 0, L_0xc3ed5d680; 1 drivers
|
|
v0xc3f2414a0_20 .net/s v0xc3f2414a0 20, 31 0, L_0xc3ed5d720; 1 drivers
|
|
v0xc3f2414a0_21 .net/s v0xc3f2414a0 21, 31 0, L_0xc3ed5d7c0; 1 drivers
|
|
v0xc3f2414a0_22 .net/s v0xc3f2414a0 22, 31 0, L_0xc3ed5d860; 1 drivers
|
|
v0xc3f2414a0_23 .net/s v0xc3f2414a0 23, 31 0, L_0xc3ed5d900; 1 drivers
|
|
o0xc3e82f0a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_24 .net/s v0xc3f2414a0 24, 31 0, o0xc3e82f0a0; 0 drivers
|
|
o0xc3e82f0d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_25 .net/s v0xc3f2414a0 25, 31 0, o0xc3e82f0d0; 0 drivers
|
|
o0xc3e82f100 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_26 .net/s v0xc3f2414a0 26, 31 0, o0xc3e82f100; 0 drivers
|
|
o0xc3e82f130 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_27 .net/s v0xc3f2414a0 27, 31 0, o0xc3e82f130; 0 drivers
|
|
o0xc3e82f160 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_28 .net/s v0xc3f2414a0 28, 31 0, o0xc3e82f160; 0 drivers
|
|
o0xc3e82f190 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_29 .net/s v0xc3f2414a0 29, 31 0, o0xc3e82f190; 0 drivers
|
|
o0xc3e82f1c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_30 .net/s v0xc3f2414a0 30, 31 0, o0xc3e82f1c0; 0 drivers
|
|
o0xc3e82f1f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_31 .net/s v0xc3f2414a0 31, 31 0, o0xc3e82f1f0; 0 drivers
|
|
v0xc3f2414a0_32 .net/s v0xc3f2414a0 32, 31 0, L_0xc3ed5d9a0; 1 drivers
|
|
v0xc3f2414a0_33 .net/s v0xc3f2414a0 33, 31 0, L_0xc3ed5da40; 1 drivers
|
|
v0xc3f2414a0_34 .net/s v0xc3f2414a0 34, 31 0, L_0xc3ed5dae0; 1 drivers
|
|
v0xc3f2414a0_35 .net/s v0xc3f2414a0 35, 31 0, L_0xc3ed5db80; 1 drivers
|
|
o0xc3e82f2e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_36 .net/s v0xc3f2414a0 36, 31 0, o0xc3e82f2e0; 0 drivers
|
|
o0xc3e82f310 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_37 .net/s v0xc3f2414a0 37, 31 0, o0xc3e82f310; 0 drivers
|
|
o0xc3e82f340 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_38 .net/s v0xc3f2414a0 38, 31 0, o0xc3e82f340; 0 drivers
|
|
o0xc3e82f370 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_39 .net/s v0xc3f2414a0 39, 31 0, o0xc3e82f370; 0 drivers
|
|
o0xc3e82f3a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_40 .net/s v0xc3f2414a0 40, 31 0, o0xc3e82f3a0; 0 drivers
|
|
o0xc3e82f3d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_41 .net/s v0xc3f2414a0 41, 31 0, o0xc3e82f3d0; 0 drivers
|
|
o0xc3e82f400 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_42 .net/s v0xc3f2414a0 42, 31 0, o0xc3e82f400; 0 drivers
|
|
o0xc3e82f430 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_43 .net/s v0xc3f2414a0 43, 31 0, o0xc3e82f430; 0 drivers
|
|
o0xc3e82f460 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_44 .net/s v0xc3f2414a0 44, 31 0, o0xc3e82f460; 0 drivers
|
|
o0xc3e82f490 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_45 .net/s v0xc3f2414a0 45, 31 0, o0xc3e82f490; 0 drivers
|
|
o0xc3e82f4c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_46 .net/s v0xc3f2414a0 46, 31 0, o0xc3e82f4c0; 0 drivers
|
|
o0xc3e82f4f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_47 .net/s v0xc3f2414a0 47, 31 0, o0xc3e82f4f0; 0 drivers
|
|
v0xc3f2414a0_48 .net/s v0xc3f2414a0 48, 31 0, L_0xc3ed5dc20; 1 drivers
|
|
v0xc3f2414a0_49 .net/s v0xc3f2414a0 49, 31 0, L_0xc3ed5dcc0; 1 drivers
|
|
o0xc3e82f580 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_50 .net/s v0xc3f2414a0 50, 31 0, o0xc3e82f580; 0 drivers
|
|
o0xc3e82f5b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_51 .net/s v0xc3f2414a0 51, 31 0, o0xc3e82f5b0; 0 drivers
|
|
o0xc3e82f5e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_52 .net/s v0xc3f2414a0 52, 31 0, o0xc3e82f5e0; 0 drivers
|
|
o0xc3e82f610 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_53 .net/s v0xc3f2414a0 53, 31 0, o0xc3e82f610; 0 drivers
|
|
o0xc3e82f640 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_54 .net/s v0xc3f2414a0 54, 31 0, o0xc3e82f640; 0 drivers
|
|
o0xc3e82f670 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_55 .net/s v0xc3f2414a0 55, 31 0, o0xc3e82f670; 0 drivers
|
|
o0xc3e82f6a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_56 .net/s v0xc3f2414a0 56, 31 0, o0xc3e82f6a0; 0 drivers
|
|
o0xc3e82f6d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_57 .net/s v0xc3f2414a0 57, 31 0, o0xc3e82f6d0; 0 drivers
|
|
o0xc3e82f700 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_58 .net/s v0xc3f2414a0 58, 31 0, o0xc3e82f700; 0 drivers
|
|
o0xc3e82f730 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_59 .net/s v0xc3f2414a0 59, 31 0, o0xc3e82f730; 0 drivers
|
|
o0xc3e82f760 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_60 .net/s v0xc3f2414a0 60, 31 0, o0xc3e82f760; 0 drivers
|
|
o0xc3e82f790 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_61 .net/s v0xc3f2414a0 61, 31 0, o0xc3e82f790; 0 drivers
|
|
o0xc3e82f7c0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_62 .net/s v0xc3f2414a0 62, 31 0, o0xc3e82f7c0; 0 drivers
|
|
o0xc3e82f7f0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_63 .net/s v0xc3f2414a0 63, 31 0, o0xc3e82f7f0; 0 drivers
|
|
v0xc3f2414a0_64 .net/s v0xc3f2414a0 64, 31 0, L_0xc3ed5dd60; 1 drivers
|
|
o0xc3e82f850 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_65 .net/s v0xc3f2414a0 65, 31 0, o0xc3e82f850; 0 drivers
|
|
o0xc3e82f880 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_66 .net/s v0xc3f2414a0 66, 31 0, o0xc3e82f880; 0 drivers
|
|
o0xc3e82f8b0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_67 .net/s v0xc3f2414a0 67, 31 0, o0xc3e82f8b0; 0 drivers
|
|
o0xc3e82f8e0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_68 .net/s v0xc3f2414a0 68, 31 0, o0xc3e82f8e0; 0 drivers
|
|
o0xc3e82f910 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_69 .net/s v0xc3f2414a0 69, 31 0, o0xc3e82f910; 0 drivers
|
|
o0xc3e82f940 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_70 .net/s v0xc3f2414a0 70, 31 0, o0xc3e82f940; 0 drivers
|
|
o0xc3e82f970 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_71 .net/s v0xc3f2414a0 71, 31 0, o0xc3e82f970; 0 drivers
|
|
o0xc3e82f9a0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_72 .net/s v0xc3f2414a0 72, 31 0, o0xc3e82f9a0; 0 drivers
|
|
o0xc3e82f9d0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_73 .net/s v0xc3f2414a0 73, 31 0, o0xc3e82f9d0; 0 drivers
|
|
o0xc3e82fa00 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_74 .net/s v0xc3f2414a0 74, 31 0, o0xc3e82fa00; 0 drivers
|
|
o0xc3e82fa30 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_75 .net/s v0xc3f2414a0 75, 31 0, o0xc3e82fa30; 0 drivers
|
|
o0xc3e82fa60 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_76 .net/s v0xc3f2414a0 76, 31 0, o0xc3e82fa60; 0 drivers
|
|
o0xc3e82fa90 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_77 .net/s v0xc3f2414a0 77, 31 0, o0xc3e82fa90; 0 drivers
|
|
o0xc3e82fac0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_78 .net/s v0xc3f2414a0 78, 31 0, o0xc3e82fac0; 0 drivers
|
|
o0xc3e82faf0 .functor BUFZ 32, c4<zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz>; HiZ drive
|
|
v0xc3f2414a0_79 .net/s v0xc3f2414a0 79, 31 0, o0xc3e82faf0; 0 drivers
|
|
v0xc3f241540_0 .net/s "w_bus", 127 0, L_0xc3ed55e00; alias, 1 drivers
|
|
v0xc3f2415e0_0 .net/s "x_bus", 127 0, L_0xc3ed55d60; alias, 1 drivers
|
|
L_0xc3ed55fe0 .part L_0xc3ed55d60, 0, 8;
|
|
L_0xc3ed56080 .part L_0xc3ed55e00, 0, 8;
|
|
L_0xc3ed56260 .part L_0xc3ed55d60, 8, 8;
|
|
L_0xc3ed56300 .part L_0xc3ed55e00, 8, 8;
|
|
L_0xc3ed564e0 .part L_0xc3ed55d60, 16, 8;
|
|
L_0xc3ed56580 .part L_0xc3ed55e00, 16, 8;
|
|
L_0xc3ed56760 .part L_0xc3ed55d60, 24, 8;
|
|
L_0xc3ed56800 .part L_0xc3ed55e00, 24, 8;
|
|
L_0xc3ed569e0 .part L_0xc3ed55d60, 32, 8;
|
|
L_0xc3ed56a80 .part L_0xc3ed55e00, 32, 8;
|
|
L_0xc3ed56c60 .part L_0xc3ed55d60, 40, 8;
|
|
L_0xc3ed56d00 .part L_0xc3ed55e00, 40, 8;
|
|
L_0xc3ed56ee0 .part L_0xc3ed55d60, 48, 8;
|
|
L_0xc3ed56f80 .part L_0xc3ed55e00, 48, 8;
|
|
L_0xc3ed57160 .part L_0xc3ed55d60, 56, 8;
|
|
L_0xc3ed57200 .part L_0xc3ed55e00, 56, 8;
|
|
L_0xc3ed573e0 .part L_0xc3ed55d60, 64, 8;
|
|
L_0xc3ed57520 .part L_0xc3ed55e00, 64, 8;
|
|
L_0xc3ed57700 .part L_0xc3ed55d60, 72, 8;
|
|
L_0xc3ed577a0 .part L_0xc3ed55e00, 72, 8;
|
|
L_0xc3ed57980 .part L_0xc3ed55d60, 80, 8;
|
|
L_0xc3ed57480 .part L_0xc3ed55e00, 80, 8;
|
|
L_0xc3ed57b60 .part L_0xc3ed55d60, 88, 8;
|
|
L_0xc3ed57c00 .part L_0xc3ed55e00, 88, 8;
|
|
L_0xc3ed57de0 .part L_0xc3ed55d60, 96, 8;
|
|
L_0xc3ed57e80 .part L_0xc3ed55e00, 96, 8;
|
|
L_0xc3ed640a0 .part L_0xc3ed55d60, 104, 8;
|
|
L_0xc3ed64140 .part L_0xc3ed55e00, 104, 8;
|
|
L_0xc3ed64320 .part L_0xc3ed55d60, 112, 8;
|
|
L_0xc3ed643c0 .part L_0xc3ed55e00, 112, 8;
|
|
L_0xc3ed645a0 .part L_0xc3ed55d60, 120, 8;
|
|
L_0xc3ed64640 .part L_0xc3ed55e00, 120, 8;
|
|
L_0xc3ed5de00 .arith/sum 32, v0xc3f241f40_0, L_0xc3ed5dd60;
|
|
S_0xc3f22fc00 .scope generate, "GEN_MAC[0]" "GEN_MAC[0]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44900 .param/l "i" 1 6 20, +C4<00>;
|
|
S_0xc3f22fd80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f22fc00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed35f80 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed35fc0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36000 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f22ae40_0 .net/s *"_ivl_0", 15 0, L_0xc3f254140; 1 drivers
|
|
v0xc3f22aee0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2541e0; 1 drivers
|
|
v0xc3f22af80_0 .net *"_ivl_7", 0 0, L_0xc3ed55ea0; 1 drivers
|
|
v0xc3f22b020_0 .net *"_ivl_9", 15 0, L_0xc3ed55f40; 1 drivers
|
|
L_0xc3e855450 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f22b0c0_0 .net/s "acc_in", 31 0, L_0xc3e855450; 1 drivers
|
|
v0xc3f22b160_0 .net/s "acc_out", 31 0, L_0xc3ed5caa0; alias, 1 drivers
|
|
v0xc3f22b200_0 .net/s "product", 15 0, L_0xc3f254280; 1 drivers
|
|
v0xc3f22b2a0_0 .net/s "product_ext", 31 0, L_0xc3f254320; 1 drivers
|
|
v0xc3f22b340_0 .net/s "w", 7 0, L_0xc3ed56080; 1 drivers
|
|
v0xc3f22b3e0_0 .net/s "x", 7 0, L_0xc3ed55fe0; 1 drivers
|
|
L_0xc3f254140 .extend/s 16, L_0xc3ed55fe0;
|
|
L_0xc3f2541e0 .extend/s 16, L_0xc3ed56080;
|
|
L_0xc3f254280 .arith/mult 16, L_0xc3f254140, L_0xc3f2541e0;
|
|
L_0xc3ed55ea0 .part L_0xc3f254280, 15, 1;
|
|
L_0xc3ed55f40 .repeat 16, 16, L_0xc3ed55ea0;
|
|
L_0xc3f254320 .concat [ 16 16 0 0], L_0xc3f254280, L_0xc3ed55f40;
|
|
L_0xc3ed5caa0 .arith/sum 32, L_0xc3e855450, L_0xc3f254320;
|
|
S_0xc3f230000 .scope generate, "GEN_MAC[1]" "GEN_MAC[1]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44940 .param/l "i" 1 6 20, +C4<01>;
|
|
S_0xc3f230180 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f230000;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36040 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36080 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed360c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f22b480_0 .net/s *"_ivl_0", 15 0, L_0xc3f2543c0; 1 drivers
|
|
v0xc3f22b520_0 .net/s *"_ivl_2", 15 0, L_0xc3f254460; 1 drivers
|
|
v0xc3f22b5c0_0 .net *"_ivl_7", 0 0, L_0xc3ed56120; 1 drivers
|
|
v0xc3f22b660_0 .net *"_ivl_9", 15 0, L_0xc3ed561c0; 1 drivers
|
|
L_0xc3e855498 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f22b700_0 .net/s "acc_in", 31 0, L_0xc3e855498; 1 drivers
|
|
v0xc3f22b7a0_0 .net/s "acc_out", 31 0, L_0xc3ed5cb40; alias, 1 drivers
|
|
v0xc3f22b840_0 .net/s "product", 15 0, L_0xc3f254500; 1 drivers
|
|
v0xc3f22b8e0_0 .net/s "product_ext", 31 0, L_0xc3f2545a0; 1 drivers
|
|
v0xc3f22b980_0 .net/s "w", 7 0, L_0xc3ed56300; 1 drivers
|
|
v0xc3f22ba20_0 .net/s "x", 7 0, L_0xc3ed56260; 1 drivers
|
|
L_0xc3f2543c0 .extend/s 16, L_0xc3ed56260;
|
|
L_0xc3f254460 .extend/s 16, L_0xc3ed56300;
|
|
L_0xc3f254500 .arith/mult 16, L_0xc3f2543c0, L_0xc3f254460;
|
|
L_0xc3ed56120 .part L_0xc3f254500, 15, 1;
|
|
L_0xc3ed561c0 .repeat 16, 16, L_0xc3ed56120;
|
|
L_0xc3f2545a0 .concat [ 16 16 0 0], L_0xc3f254500, L_0xc3ed561c0;
|
|
L_0xc3ed5cb40 .arith/sum 32, L_0xc3e855498, L_0xc3f2545a0;
|
|
S_0xc3f230300 .scope generate, "GEN_MAC[2]" "GEN_MAC[2]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44980 .param/l "i" 1 6 20, +C4<010>;
|
|
S_0xc3f230480 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f230300;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36100 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36140 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36180 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f22bac0_0 .net/s *"_ivl_0", 15 0, L_0xc3f254640; 1 drivers
|
|
v0xc3f22bb60_0 .net/s *"_ivl_2", 15 0, L_0xc3f2546e0; 1 drivers
|
|
v0xc3f22bc00_0 .net *"_ivl_7", 0 0, L_0xc3ed563a0; 1 drivers
|
|
v0xc3f22bca0_0 .net *"_ivl_9", 15 0, L_0xc3ed56440; 1 drivers
|
|
L_0xc3e8554e0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f22bd40_0 .net/s "acc_in", 31 0, L_0xc3e8554e0; 1 drivers
|
|
v0xc3f22bde0_0 .net/s "acc_out", 31 0, L_0xc3ed5cbe0; alias, 1 drivers
|
|
v0xc3f22be80_0 .net/s "product", 15 0, L_0xc3f254780; 1 drivers
|
|
v0xc3f22bf20_0 .net/s "product_ext", 31 0, L_0xc3f254820; 1 drivers
|
|
v0xc3f234000_0 .net/s "w", 7 0, L_0xc3ed56580; 1 drivers
|
|
v0xc3f2340a0_0 .net/s "x", 7 0, L_0xc3ed564e0; 1 drivers
|
|
L_0xc3f254640 .extend/s 16, L_0xc3ed564e0;
|
|
L_0xc3f2546e0 .extend/s 16, L_0xc3ed56580;
|
|
L_0xc3f254780 .arith/mult 16, L_0xc3f254640, L_0xc3f2546e0;
|
|
L_0xc3ed563a0 .part L_0xc3f254780, 15, 1;
|
|
L_0xc3ed56440 .repeat 16, 16, L_0xc3ed563a0;
|
|
L_0xc3f254820 .concat [ 16 16 0 0], L_0xc3f254780, L_0xc3ed56440;
|
|
L_0xc3ed5cbe0 .arith/sum 32, L_0xc3e8554e0, L_0xc3f254820;
|
|
S_0xc3f230600 .scope generate, "GEN_MAC[3]" "GEN_MAC[3]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed449c0 .param/l "i" 1 6 20, +C4<011>;
|
|
S_0xc3f230780 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f230600;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed361c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36200 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36240 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f234140_0 .net/s *"_ivl_0", 15 0, L_0xc3f2548c0; 1 drivers
|
|
v0xc3f2341e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f254960; 1 drivers
|
|
v0xc3f234280_0 .net *"_ivl_7", 0 0, L_0xc3ed56620; 1 drivers
|
|
v0xc3f234320_0 .net *"_ivl_9", 15 0, L_0xc3ed566c0; 1 drivers
|
|
L_0xc3e855528 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f2343c0_0 .net/s "acc_in", 31 0, L_0xc3e855528; 1 drivers
|
|
v0xc3f234460_0 .net/s "acc_out", 31 0, L_0xc3ed5cc80; alias, 1 drivers
|
|
v0xc3f234500_0 .net/s "product", 15 0, L_0xc3f254a00; 1 drivers
|
|
v0xc3f2345a0_0 .net/s "product_ext", 31 0, L_0xc3f254aa0; 1 drivers
|
|
v0xc3f234640_0 .net/s "w", 7 0, L_0xc3ed56800; 1 drivers
|
|
v0xc3f2346e0_0 .net/s "x", 7 0, L_0xc3ed56760; 1 drivers
|
|
L_0xc3f2548c0 .extend/s 16, L_0xc3ed56760;
|
|
L_0xc3f254960 .extend/s 16, L_0xc3ed56800;
|
|
L_0xc3f254a00 .arith/mult 16, L_0xc3f2548c0, L_0xc3f254960;
|
|
L_0xc3ed56620 .part L_0xc3f254a00, 15, 1;
|
|
L_0xc3ed566c0 .repeat 16, 16, L_0xc3ed56620;
|
|
L_0xc3f254aa0 .concat [ 16 16 0 0], L_0xc3f254a00, L_0xc3ed566c0;
|
|
L_0xc3ed5cc80 .arith/sum 32, L_0xc3e855528, L_0xc3f254aa0;
|
|
S_0xc3f230900 .scope generate, "GEN_MAC[4]" "GEN_MAC[4]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44a00 .param/l "i" 1 6 20, +C4<0100>;
|
|
S_0xc3f230a80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f230900;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36280 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed362c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36300 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f234780_0 .net/s *"_ivl_0", 15 0, L_0xc3f254b40; 1 drivers
|
|
v0xc3f234820_0 .net/s *"_ivl_2", 15 0, L_0xc3f254be0; 1 drivers
|
|
v0xc3f2348c0_0 .net *"_ivl_7", 0 0, L_0xc3ed568a0; 1 drivers
|
|
v0xc3f234960_0 .net *"_ivl_9", 15 0, L_0xc3ed56940; 1 drivers
|
|
L_0xc3e855570 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f234a00_0 .net/s "acc_in", 31 0, L_0xc3e855570; 1 drivers
|
|
v0xc3f234aa0_0 .net/s "acc_out", 31 0, L_0xc3ed5cd20; alias, 1 drivers
|
|
v0xc3f234b40_0 .net/s "product", 15 0, L_0xc3f254c80; 1 drivers
|
|
v0xc3f234be0_0 .net/s "product_ext", 31 0, L_0xc3f254d20; 1 drivers
|
|
v0xc3f234c80_0 .net/s "w", 7 0, L_0xc3ed56a80; 1 drivers
|
|
v0xc3f234d20_0 .net/s "x", 7 0, L_0xc3ed569e0; 1 drivers
|
|
L_0xc3f254b40 .extend/s 16, L_0xc3ed569e0;
|
|
L_0xc3f254be0 .extend/s 16, L_0xc3ed56a80;
|
|
L_0xc3f254c80 .arith/mult 16, L_0xc3f254b40, L_0xc3f254be0;
|
|
L_0xc3ed568a0 .part L_0xc3f254c80, 15, 1;
|
|
L_0xc3ed56940 .repeat 16, 16, L_0xc3ed568a0;
|
|
L_0xc3f254d20 .concat [ 16 16 0 0], L_0xc3f254c80, L_0xc3ed56940;
|
|
L_0xc3ed5cd20 .arith/sum 32, L_0xc3e855570, L_0xc3f254d20;
|
|
S_0xc3f230c00 .scope generate, "GEN_MAC[5]" "GEN_MAC[5]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44a40 .param/l "i" 1 6 20, +C4<0101>;
|
|
S_0xc3f230d80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f230c00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36340 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36380 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed363c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f234dc0_0 .net/s *"_ivl_0", 15 0, L_0xc3f254dc0; 1 drivers
|
|
v0xc3f234e60_0 .net/s *"_ivl_2", 15 0, L_0xc3f254e60; 1 drivers
|
|
v0xc3f234f00_0 .net *"_ivl_7", 0 0, L_0xc3ed56b20; 1 drivers
|
|
v0xc3f234fa0_0 .net *"_ivl_9", 15 0, L_0xc3ed56bc0; 1 drivers
|
|
L_0xc3e8555b8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f235040_0 .net/s "acc_in", 31 0, L_0xc3e8555b8; 1 drivers
|
|
v0xc3f2350e0_0 .net/s "acc_out", 31 0, L_0xc3ed5cdc0; alias, 1 drivers
|
|
v0xc3f235180_0 .net/s "product", 15 0, L_0xc3f254f00; 1 drivers
|
|
v0xc3f235220_0 .net/s "product_ext", 31 0, L_0xc3f254fa0; 1 drivers
|
|
v0xc3f2352c0_0 .net/s "w", 7 0, L_0xc3ed56d00; 1 drivers
|
|
v0xc3f235360_0 .net/s "x", 7 0, L_0xc3ed56c60; 1 drivers
|
|
L_0xc3f254dc0 .extend/s 16, L_0xc3ed56c60;
|
|
L_0xc3f254e60 .extend/s 16, L_0xc3ed56d00;
|
|
L_0xc3f254f00 .arith/mult 16, L_0xc3f254dc0, L_0xc3f254e60;
|
|
L_0xc3ed56b20 .part L_0xc3f254f00, 15, 1;
|
|
L_0xc3ed56bc0 .repeat 16, 16, L_0xc3ed56b20;
|
|
L_0xc3f254fa0 .concat [ 16 16 0 0], L_0xc3f254f00, L_0xc3ed56bc0;
|
|
L_0xc3ed5cdc0 .arith/sum 32, L_0xc3e8555b8, L_0xc3f254fa0;
|
|
S_0xc3f230f00 .scope generate, "GEN_MAC[6]" "GEN_MAC[6]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44a80 .param/l "i" 1 6 20, +C4<0110>;
|
|
S_0xc3f231080 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f230f00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36400 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36440 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36480 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f235400_0 .net/s *"_ivl_0", 15 0, L_0xc3f255040; 1 drivers
|
|
v0xc3f2354a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2550e0; 1 drivers
|
|
v0xc3f235540_0 .net *"_ivl_7", 0 0, L_0xc3ed56da0; 1 drivers
|
|
v0xc3f2355e0_0 .net *"_ivl_9", 15 0, L_0xc3ed56e40; 1 drivers
|
|
L_0xc3e855600 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f235680_0 .net/s "acc_in", 31 0, L_0xc3e855600; 1 drivers
|
|
v0xc3f235720_0 .net/s "acc_out", 31 0, L_0xc3ed5ce60; alias, 1 drivers
|
|
v0xc3f2357c0_0 .net/s "product", 15 0, L_0xc3f255180; 1 drivers
|
|
v0xc3f235860_0 .net/s "product_ext", 31 0, L_0xc3f255220; 1 drivers
|
|
v0xc3f235900_0 .net/s "w", 7 0, L_0xc3ed56f80; 1 drivers
|
|
v0xc3f2359a0_0 .net/s "x", 7 0, L_0xc3ed56ee0; 1 drivers
|
|
L_0xc3f255040 .extend/s 16, L_0xc3ed56ee0;
|
|
L_0xc3f2550e0 .extend/s 16, L_0xc3ed56f80;
|
|
L_0xc3f255180 .arith/mult 16, L_0xc3f255040, L_0xc3f2550e0;
|
|
L_0xc3ed56da0 .part L_0xc3f255180, 15, 1;
|
|
L_0xc3ed56e40 .repeat 16, 16, L_0xc3ed56da0;
|
|
L_0xc3f255220 .concat [ 16 16 0 0], L_0xc3f255180, L_0xc3ed56e40;
|
|
L_0xc3ed5ce60 .arith/sum 32, L_0xc3e855600, L_0xc3f255220;
|
|
S_0xc3f231200 .scope generate, "GEN_MAC[7]" "GEN_MAC[7]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44ac0 .param/l "i" 1 6 20, +C4<0111>;
|
|
S_0xc3f231380 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f231200;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed364c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36500 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36540 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f235a40_0 .net/s *"_ivl_0", 15 0, L_0xc3f2552c0; 1 drivers
|
|
v0xc3f235ae0_0 .net/s *"_ivl_2", 15 0, L_0xc3f255360; 1 drivers
|
|
v0xc3f235b80_0 .net *"_ivl_7", 0 0, L_0xc3ed57020; 1 drivers
|
|
v0xc3f235c20_0 .net *"_ivl_9", 15 0, L_0xc3ed570c0; 1 drivers
|
|
L_0xc3e855648 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f235cc0_0 .net/s "acc_in", 31 0, L_0xc3e855648; 1 drivers
|
|
v0xc3f235d60_0 .net/s "acc_out", 31 0, L_0xc3ed5cf00; alias, 1 drivers
|
|
v0xc3f235e00_0 .net/s "product", 15 0, L_0xc3f255400; 1 drivers
|
|
v0xc3f235ea0_0 .net/s "product_ext", 31 0, L_0xc3f2554a0; 1 drivers
|
|
v0xc3f235f40_0 .net/s "w", 7 0, L_0xc3ed57200; 1 drivers
|
|
v0xc3f235fe0_0 .net/s "x", 7 0, L_0xc3ed57160; 1 drivers
|
|
L_0xc3f2552c0 .extend/s 16, L_0xc3ed57160;
|
|
L_0xc3f255360 .extend/s 16, L_0xc3ed57200;
|
|
L_0xc3f255400 .arith/mult 16, L_0xc3f2552c0, L_0xc3f255360;
|
|
L_0xc3ed57020 .part L_0xc3f255400, 15, 1;
|
|
L_0xc3ed570c0 .repeat 16, 16, L_0xc3ed57020;
|
|
L_0xc3f2554a0 .concat [ 16 16 0 0], L_0xc3f255400, L_0xc3ed570c0;
|
|
L_0xc3ed5cf00 .arith/sum 32, L_0xc3e855648, L_0xc3f2554a0;
|
|
S_0xc3f231500 .scope generate, "GEN_MAC[8]" "GEN_MAC[8]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44b00 .param/l "i" 1 6 20, +C4<01000>;
|
|
S_0xc3f231680 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f231500;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36580 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed365c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36600 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f236080_0 .net/s *"_ivl_0", 15 0, L_0xc3f255540; 1 drivers
|
|
v0xc3f236120_0 .net/s *"_ivl_2", 15 0, L_0xc3f2555e0; 1 drivers
|
|
v0xc3f2361c0_0 .net *"_ivl_7", 0 0, L_0xc3ed572a0; 1 drivers
|
|
v0xc3f236260_0 .net *"_ivl_9", 15 0, L_0xc3ed57340; 1 drivers
|
|
L_0xc3e855690 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f236300_0 .net/s "acc_in", 31 0, L_0xc3e855690; 1 drivers
|
|
v0xc3f2363a0_0 .net/s "acc_out", 31 0, L_0xc3ed5cfa0; alias, 1 drivers
|
|
v0xc3f236440_0 .net/s "product", 15 0, L_0xc3f255680; 1 drivers
|
|
v0xc3f2364e0_0 .net/s "product_ext", 31 0, L_0xc3f255720; 1 drivers
|
|
v0xc3f236580_0 .net/s "w", 7 0, L_0xc3ed57520; 1 drivers
|
|
v0xc3f236620_0 .net/s "x", 7 0, L_0xc3ed573e0; 1 drivers
|
|
L_0xc3f255540 .extend/s 16, L_0xc3ed573e0;
|
|
L_0xc3f2555e0 .extend/s 16, L_0xc3ed57520;
|
|
L_0xc3f255680 .arith/mult 16, L_0xc3f255540, L_0xc3f2555e0;
|
|
L_0xc3ed572a0 .part L_0xc3f255680, 15, 1;
|
|
L_0xc3ed57340 .repeat 16, 16, L_0xc3ed572a0;
|
|
L_0xc3f255720 .concat [ 16 16 0 0], L_0xc3f255680, L_0xc3ed57340;
|
|
L_0xc3ed5cfa0 .arith/sum 32, L_0xc3e855690, L_0xc3f255720;
|
|
S_0xc3f231800 .scope generate, "GEN_MAC[9]" "GEN_MAC[9]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44b40 .param/l "i" 1 6 20, +C4<01001>;
|
|
S_0xc3f231980 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f231800;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36640 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36680 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed366c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f2366c0_0 .net/s *"_ivl_0", 15 0, L_0xc3f2557c0; 1 drivers
|
|
v0xc3f236760_0 .net/s *"_ivl_2", 15 0, L_0xc3f255860; 1 drivers
|
|
v0xc3f236800_0 .net *"_ivl_7", 0 0, L_0xc3ed575c0; 1 drivers
|
|
v0xc3f2368a0_0 .net *"_ivl_9", 15 0, L_0xc3ed57660; 1 drivers
|
|
L_0xc3e8556d8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f236940_0 .net/s "acc_in", 31 0, L_0xc3e8556d8; 1 drivers
|
|
v0xc3f2369e0_0 .net/s "acc_out", 31 0, L_0xc3ed5d040; alias, 1 drivers
|
|
v0xc3f236a80_0 .net/s "product", 15 0, L_0xc3f255900; 1 drivers
|
|
v0xc3f236b20_0 .net/s "product_ext", 31 0, L_0xc3f2559a0; 1 drivers
|
|
v0xc3f236bc0_0 .net/s "w", 7 0, L_0xc3ed577a0; 1 drivers
|
|
v0xc3f236c60_0 .net/s "x", 7 0, L_0xc3ed57700; 1 drivers
|
|
L_0xc3f2557c0 .extend/s 16, L_0xc3ed57700;
|
|
L_0xc3f255860 .extend/s 16, L_0xc3ed577a0;
|
|
L_0xc3f255900 .arith/mult 16, L_0xc3f2557c0, L_0xc3f255860;
|
|
L_0xc3ed575c0 .part L_0xc3f255900, 15, 1;
|
|
L_0xc3ed57660 .repeat 16, 16, L_0xc3ed575c0;
|
|
L_0xc3f2559a0 .concat [ 16 16 0 0], L_0xc3f255900, L_0xc3ed57660;
|
|
L_0xc3ed5d040 .arith/sum 32, L_0xc3e8556d8, L_0xc3f2559a0;
|
|
S_0xc3f231b00 .scope generate, "GEN_MAC[10]" "GEN_MAC[10]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44b80 .param/l "i" 1 6 20, +C4<01010>;
|
|
S_0xc3f231c80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f231b00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36700 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36740 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36780 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f236d00_0 .net/s *"_ivl_0", 15 0, L_0xc3f255a40; 1 drivers
|
|
v0xc3f236da0_0 .net/s *"_ivl_2", 15 0, L_0xc3f255ae0; 1 drivers
|
|
v0xc3f236e40_0 .net *"_ivl_7", 0 0, L_0xc3ed57840; 1 drivers
|
|
v0xc3f236ee0_0 .net *"_ivl_9", 15 0, L_0xc3ed578e0; 1 drivers
|
|
L_0xc3e855720 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f236f80_0 .net/s "acc_in", 31 0, L_0xc3e855720; 1 drivers
|
|
v0xc3f237020_0 .net/s "acc_out", 31 0, L_0xc3ed5d0e0; alias, 1 drivers
|
|
v0xc3f2370c0_0 .net/s "product", 15 0, L_0xc3f255b80; 1 drivers
|
|
v0xc3f237160_0 .net/s "product_ext", 31 0, L_0xc3f255c20; 1 drivers
|
|
v0xc3f237200_0 .net/s "w", 7 0, L_0xc3ed57480; 1 drivers
|
|
v0xc3f2372a0_0 .net/s "x", 7 0, L_0xc3ed57980; 1 drivers
|
|
L_0xc3f255a40 .extend/s 16, L_0xc3ed57980;
|
|
L_0xc3f255ae0 .extend/s 16, L_0xc3ed57480;
|
|
L_0xc3f255b80 .arith/mult 16, L_0xc3f255a40, L_0xc3f255ae0;
|
|
L_0xc3ed57840 .part L_0xc3f255b80, 15, 1;
|
|
L_0xc3ed578e0 .repeat 16, 16, L_0xc3ed57840;
|
|
L_0xc3f255c20 .concat [ 16 16 0 0], L_0xc3f255b80, L_0xc3ed578e0;
|
|
L_0xc3ed5d0e0 .arith/sum 32, L_0xc3e855720, L_0xc3f255c20;
|
|
S_0xc3f231e00 .scope generate, "GEN_MAC[11]" "GEN_MAC[11]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44bc0 .param/l "i" 1 6 20, +C4<01011>;
|
|
S_0xc3f231f80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f231e00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed367c0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36800 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36840 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f237340_0 .net/s *"_ivl_0", 15 0, L_0xc3f255cc0; 1 drivers
|
|
v0xc3f2373e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f255d60; 1 drivers
|
|
v0xc3f237480_0 .net *"_ivl_7", 0 0, L_0xc3ed57a20; 1 drivers
|
|
v0xc3f237520_0 .net *"_ivl_9", 15 0, L_0xc3ed57ac0; 1 drivers
|
|
L_0xc3e855768 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f2375c0_0 .net/s "acc_in", 31 0, L_0xc3e855768; 1 drivers
|
|
v0xc3f237660_0 .net/s "acc_out", 31 0, L_0xc3ed5d180; alias, 1 drivers
|
|
v0xc3f237700_0 .net/s "product", 15 0, L_0xc3f255e00; 1 drivers
|
|
v0xc3f2377a0_0 .net/s "product_ext", 31 0, L_0xc3f255ea0; 1 drivers
|
|
v0xc3f237840_0 .net/s "w", 7 0, L_0xc3ed57c00; 1 drivers
|
|
v0xc3f2378e0_0 .net/s "x", 7 0, L_0xc3ed57b60; 1 drivers
|
|
L_0xc3f255cc0 .extend/s 16, L_0xc3ed57b60;
|
|
L_0xc3f255d60 .extend/s 16, L_0xc3ed57c00;
|
|
L_0xc3f255e00 .arith/mult 16, L_0xc3f255cc0, L_0xc3f255d60;
|
|
L_0xc3ed57a20 .part L_0xc3f255e00, 15, 1;
|
|
L_0xc3ed57ac0 .repeat 16, 16, L_0xc3ed57a20;
|
|
L_0xc3f255ea0 .concat [ 16 16 0 0], L_0xc3f255e00, L_0xc3ed57ac0;
|
|
L_0xc3ed5d180 .arith/sum 32, L_0xc3e855768, L_0xc3f255ea0;
|
|
S_0xc3f232100 .scope generate, "GEN_MAC[12]" "GEN_MAC[12]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44c00 .param/l "i" 1 6 20, +C4<01100>;
|
|
S_0xc3f232280 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f232100;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36880 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed368c0 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36900 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f237980_0 .net/s *"_ivl_0", 15 0, L_0xc3f255f40; 1 drivers
|
|
v0xc3f237a20_0 .net/s *"_ivl_2", 15 0, L_0xc3f255fe0; 1 drivers
|
|
v0xc3f237ac0_0 .net *"_ivl_7", 0 0, L_0xc3ed57ca0; 1 drivers
|
|
v0xc3f237b60_0 .net *"_ivl_9", 15 0, L_0xc3ed57d40; 1 drivers
|
|
L_0xc3e8557b0 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f237c00_0 .net/s "acc_in", 31 0, L_0xc3e8557b0; 1 drivers
|
|
v0xc3f237ca0_0 .net/s "acc_out", 31 0, L_0xc3ed5d220; alias, 1 drivers
|
|
v0xc3f237d40_0 .net/s "product", 15 0, L_0xc3f256080; 1 drivers
|
|
v0xc3f237de0_0 .net/s "product_ext", 31 0, L_0xc3f256120; 1 drivers
|
|
v0xc3f237e80_0 .net/s "w", 7 0, L_0xc3ed57e80; 1 drivers
|
|
v0xc3f237f20_0 .net/s "x", 7 0, L_0xc3ed57de0; 1 drivers
|
|
L_0xc3f255f40 .extend/s 16, L_0xc3ed57de0;
|
|
L_0xc3f255fe0 .extend/s 16, L_0xc3ed57e80;
|
|
L_0xc3f256080 .arith/mult 16, L_0xc3f255f40, L_0xc3f255fe0;
|
|
L_0xc3ed57ca0 .part L_0xc3f256080, 15, 1;
|
|
L_0xc3ed57d40 .repeat 16, 16, L_0xc3ed57ca0;
|
|
L_0xc3f256120 .concat [ 16 16 0 0], L_0xc3f256080, L_0xc3ed57d40;
|
|
L_0xc3ed5d220 .arith/sum 32, L_0xc3e8557b0, L_0xc3f256120;
|
|
S_0xc3f232400 .scope generate, "GEN_MAC[13]" "GEN_MAC[13]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44c40 .param/l "i" 1 6 20, +C4<01101>;
|
|
S_0xc3f232580 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f232400;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36940 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36980 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed369c0 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f240000_0 .net/s *"_ivl_0", 15 0, L_0xc3f2561c0; 1 drivers
|
|
v0xc3f2400a0_0 .net/s *"_ivl_2", 15 0, L_0xc3f256260; 1 drivers
|
|
v0xc3f240140_0 .net *"_ivl_7", 0 0, L_0xc3ed57f20; 1 drivers
|
|
v0xc3f2401e0_0 .net *"_ivl_9", 15 0, L_0xc3ed64000; 1 drivers
|
|
L_0xc3e8557f8 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f240280_0 .net/s "acc_in", 31 0, L_0xc3e8557f8; 1 drivers
|
|
v0xc3f240320_0 .net/s "acc_out", 31 0, L_0xc3ed5d2c0; alias, 1 drivers
|
|
v0xc3f2403c0_0 .net/s "product", 15 0, L_0xc3f256300; 1 drivers
|
|
v0xc3f240460_0 .net/s "product_ext", 31 0, L_0xc3f2563a0; 1 drivers
|
|
v0xc3f240500_0 .net/s "w", 7 0, L_0xc3ed64140; 1 drivers
|
|
v0xc3f2405a0_0 .net/s "x", 7 0, L_0xc3ed640a0; 1 drivers
|
|
L_0xc3f2561c0 .extend/s 16, L_0xc3ed640a0;
|
|
L_0xc3f256260 .extend/s 16, L_0xc3ed64140;
|
|
L_0xc3f256300 .arith/mult 16, L_0xc3f2561c0, L_0xc3f256260;
|
|
L_0xc3ed57f20 .part L_0xc3f256300, 15, 1;
|
|
L_0xc3ed64000 .repeat 16, 16, L_0xc3ed57f20;
|
|
L_0xc3f2563a0 .concat [ 16 16 0 0], L_0xc3f256300, L_0xc3ed64000;
|
|
L_0xc3ed5d2c0 .arith/sum 32, L_0xc3e8557f8, L_0xc3f2563a0;
|
|
S_0xc3f232700 .scope generate, "GEN_MAC[14]" "GEN_MAC[14]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44c80 .param/l "i" 1 6 20, +C4<01110>;
|
|
S_0xc3f232880 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f232700;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36a00 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36a40 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36a80 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f240640_0 .net/s *"_ivl_0", 15 0, L_0xc3f256440; 1 drivers
|
|
v0xc3f2406e0_0 .net/s *"_ivl_2", 15 0, L_0xc3f2564e0; 1 drivers
|
|
v0xc3f240780_0 .net *"_ivl_7", 0 0, L_0xc3ed641e0; 1 drivers
|
|
v0xc3f240820_0 .net *"_ivl_9", 15 0, L_0xc3ed64280; 1 drivers
|
|
L_0xc3e855840 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f2408c0_0 .net/s "acc_in", 31 0, L_0xc3e855840; 1 drivers
|
|
v0xc3f240960_0 .net/s "acc_out", 31 0, L_0xc3ed5d360; alias, 1 drivers
|
|
v0xc3f240a00_0 .net/s "product", 15 0, L_0xc3f256580; 1 drivers
|
|
v0xc3f240aa0_0 .net/s "product_ext", 31 0, L_0xc3f256620; 1 drivers
|
|
v0xc3f240b40_0 .net/s "w", 7 0, L_0xc3ed643c0; 1 drivers
|
|
v0xc3f240be0_0 .net/s "x", 7 0, L_0xc3ed64320; 1 drivers
|
|
L_0xc3f256440 .extend/s 16, L_0xc3ed64320;
|
|
L_0xc3f2564e0 .extend/s 16, L_0xc3ed643c0;
|
|
L_0xc3f256580 .arith/mult 16, L_0xc3f256440, L_0xc3f2564e0;
|
|
L_0xc3ed641e0 .part L_0xc3f256580, 15, 1;
|
|
L_0xc3ed64280 .repeat 16, 16, L_0xc3ed641e0;
|
|
L_0xc3f256620 .concat [ 16 16 0 0], L_0xc3f256580, L_0xc3ed64280;
|
|
L_0xc3ed5d360 .arith/sum 32, L_0xc3e855840, L_0xc3f256620;
|
|
S_0xc3f232a00 .scope generate, "GEN_MAC[15]" "GEN_MAC[15]" 6 20, 6 20 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44cc0 .param/l "i" 1 6 20, +C4<01111>;
|
|
S_0xc3f232b80 .scope module, "u_mac" "mac_unit" 6 25, 7 1 0, S_0xc3f232a00;
|
|
.timescale -9 -12;
|
|
.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_0xc3ed36ac0 .param/l "ACC_WIDTH" 0 7 3, +C4<00000000000000000000000000100000>;
|
|
P_0xc3ed36b00 .param/l "DATA_WIDTH" 0 7 2, +C4<00000000000000000000000000001000>;
|
|
P_0xc3ed36b40 .param/l "PROD_WIDTH" 1 7 11, +C4<0000000000000000000000000000000000000000000000000000000000010000>;
|
|
v0xc3f240c80_0 .net/s *"_ivl_0", 15 0, L_0xc3f2566c0; 1 drivers
|
|
v0xc3f240d20_0 .net/s *"_ivl_2", 15 0, L_0xc3f256760; 1 drivers
|
|
v0xc3f240dc0_0 .net *"_ivl_7", 0 0, L_0xc3ed64460; 1 drivers
|
|
v0xc3f240e60_0 .net *"_ivl_9", 15 0, L_0xc3ed64500; 1 drivers
|
|
L_0xc3e855888 .functor BUFT 1, C4<00000000000000000000000000000000>, C4<0>, C4<0>, C4<0>;
|
|
v0xc3f240f00_0 .net/s "acc_in", 31 0, L_0xc3e855888; 1 drivers
|
|
v0xc3f240fa0_0 .net/s "acc_out", 31 0, L_0xc3ed5d400; alias, 1 drivers
|
|
v0xc3f241040_0 .net/s "product", 15 0, L_0xc3f256800; 1 drivers
|
|
v0xc3f2410e0_0 .net/s "product_ext", 31 0, L_0xc3f2568a0; 1 drivers
|
|
v0xc3f241180_0 .net/s "w", 7 0, L_0xc3ed64640; 1 drivers
|
|
v0xc3f241220_0 .net/s "x", 7 0, L_0xc3ed645a0; 1 drivers
|
|
L_0xc3f2566c0 .extend/s 16, L_0xc3ed645a0;
|
|
L_0xc3f256760 .extend/s 16, L_0xc3ed64640;
|
|
L_0xc3f256800 .arith/mult 16, L_0xc3f2566c0, L_0xc3f256760;
|
|
L_0xc3ed64460 .part L_0xc3f256800, 15, 1;
|
|
L_0xc3ed64500 .repeat 16, 16, L_0xc3ed64460;
|
|
L_0xc3f2568a0 .concat [ 16 16 0 0], L_0xc3f256800, L_0xc3ed64500;
|
|
L_0xc3ed5d400 .arith/sum 32, L_0xc3e855888, L_0xc3f2568a0;
|
|
S_0xc3f232d00 .scope generate, "GEN_TREE_INPUT[0]" "GEN_TREE_INPUT[0]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44d00 .param/l "i" 1 6 80, +C4<00>;
|
|
L_0xc3f24cee0 .functor BUFZ 32, L_0xc3ed5caa0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f232e80 .scope generate, "GEN_TREE_INPUT[1]" "GEN_TREE_INPUT[1]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44d40 .param/l "i" 1 6 80, +C4<01>;
|
|
L_0xc3f24cf50 .functor BUFZ 32, L_0xc3ed5cb40, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233000 .scope generate, "GEN_TREE_INPUT[2]" "GEN_TREE_INPUT[2]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44d80 .param/l "i" 1 6 80, +C4<010>;
|
|
L_0xc3f24cfc0 .functor BUFZ 32, L_0xc3ed5cbe0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233180 .scope generate, "GEN_TREE_INPUT[3]" "GEN_TREE_INPUT[3]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44dc0 .param/l "i" 1 6 80, +C4<011>;
|
|
L_0xc3f24d030 .functor BUFZ 32, L_0xc3ed5cc80, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233300 .scope generate, "GEN_TREE_INPUT[4]" "GEN_TREE_INPUT[4]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44e00 .param/l "i" 1 6 80, +C4<0100>;
|
|
L_0xc3f24d0a0 .functor BUFZ 32, L_0xc3ed5cd20, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233480 .scope generate, "GEN_TREE_INPUT[5]" "GEN_TREE_INPUT[5]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44e40 .param/l "i" 1 6 80, +C4<0101>;
|
|
L_0xc3f24d110 .functor BUFZ 32, L_0xc3ed5cdc0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233600 .scope generate, "GEN_TREE_INPUT[6]" "GEN_TREE_INPUT[6]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44e80 .param/l "i" 1 6 80, +C4<0110>;
|
|
L_0xc3f24d180 .functor BUFZ 32, L_0xc3ed5ce60, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233780 .scope generate, "GEN_TREE_INPUT[7]" "GEN_TREE_INPUT[7]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44ec0 .param/l "i" 1 6 80, +C4<0111>;
|
|
L_0xc3f24d1f0 .functor BUFZ 32, L_0xc3ed5cf00, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233900 .scope generate, "GEN_TREE_INPUT[8]" "GEN_TREE_INPUT[8]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44f00 .param/l "i" 1 6 80, +C4<01000>;
|
|
L_0xc3f24d260 .functor BUFZ 32, L_0xc3ed5cfa0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233a80 .scope generate, "GEN_TREE_INPUT[9]" "GEN_TREE_INPUT[9]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44f40 .param/l "i" 1 6 80, +C4<01001>;
|
|
L_0xc3f24d2d0 .functor BUFZ 32, L_0xc3ed5d040, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233c00 .scope generate, "GEN_TREE_INPUT[10]" "GEN_TREE_INPUT[10]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44f80 .param/l "i" 1 6 80, +C4<01010>;
|
|
L_0xc3f24d340 .functor BUFZ 32, L_0xc3ed5d0e0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f233d80 .scope generate, "GEN_TREE_INPUT[11]" "GEN_TREE_INPUT[11]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed44fc0 .param/l "i" 1 6 80, +C4<01011>;
|
|
L_0xc3f24d3b0 .functor BUFZ 32, L_0xc3ed5d180, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f244000 .scope generate, "GEN_TREE_INPUT[12]" "GEN_TREE_INPUT[12]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45000 .param/l "i" 1 6 80, +C4<01100>;
|
|
L_0xc3f24d420 .functor BUFZ 32, L_0xc3ed5d220, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f244180 .scope generate, "GEN_TREE_INPUT[13]" "GEN_TREE_INPUT[13]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45040 .param/l "i" 1 6 80, +C4<01101>;
|
|
L_0xc3f24d490 .functor BUFZ 32, L_0xc3ed5d2c0, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f244300 .scope generate, "GEN_TREE_INPUT[14]" "GEN_TREE_INPUT[14]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45080 .param/l "i" 1 6 80, +C4<01110>;
|
|
L_0xc3f24d500 .functor BUFZ 32, L_0xc3ed5d360, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f244480 .scope generate, "GEN_TREE_INPUT[15]" "GEN_TREE_INPUT[15]" 6 80, 6 80 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed450c0 .param/l "i" 1 6 80, +C4<01111>;
|
|
L_0xc3f24d570 .functor BUFZ 32, L_0xc3ed5d400, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>, C4<00000000000000000000000000000000>;
|
|
S_0xc3f244600 .scope generate, "GEN_TREE_LEVEL[0]" "GEN_TREE_LEVEL[0]" 6 92, 6 92 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45100 .param/l "level" 1 6 92, +C4<00>;
|
|
S_0xc3f244780 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45140 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5d4a0 .arith/sum 32, L_0xc3f24cee0, L_0xc3f24cf50;
|
|
S_0xc3f244900 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45180 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ed5d540 .arith/sum 32, L_0xc3f24cfc0, L_0xc3f24d030;
|
|
S_0xc3f244a80 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed451c0 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ed5d5e0 .arith/sum 32, L_0xc3f24d0a0, L_0xc3f24d110;
|
|
S_0xc3f244c00 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45200 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ed5d680 .arith/sum 32, L_0xc3f24d180, L_0xc3f24d1f0;
|
|
S_0xc3f244d80 .scope generate, "GEN_TREE_NODE[4]" "GEN_TREE_NODE[4]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45240 .param/l "node" 1 6 94, +C4<0100>;
|
|
L_0xc3ed5d720 .arith/sum 32, L_0xc3f24d260, L_0xc3f24d2d0;
|
|
S_0xc3f244f00 .scope generate, "GEN_TREE_NODE[5]" "GEN_TREE_NODE[5]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45280 .param/l "node" 1 6 94, +C4<0101>;
|
|
L_0xc3ed5d7c0 .arith/sum 32, L_0xc3f24d340, L_0xc3f24d3b0;
|
|
S_0xc3f245080 .scope generate, "GEN_TREE_NODE[6]" "GEN_TREE_NODE[6]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed452c0 .param/l "node" 1 6 94, +C4<0110>;
|
|
L_0xc3ed5d860 .arith/sum 32, L_0xc3f24d420, L_0xc3f24d490;
|
|
S_0xc3f245200 .scope generate, "GEN_TREE_NODE[7]" "GEN_TREE_NODE[7]" 6 94, 6 94 0, S_0xc3f244600;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45300 .param/l "node" 1 6 94, +C4<0111>;
|
|
L_0xc3ed5d900 .arith/sum 32, L_0xc3f24d500, L_0xc3f24d570;
|
|
S_0xc3f245380 .scope generate, "GEN_TREE_LEVEL[1]" "GEN_TREE_LEVEL[1]" 6 92, 6 92 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45340 .param/l "level" 1 6 92, +C4<01>;
|
|
S_0xc3f245500 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f245380;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45380 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5d9a0 .arith/sum 32, L_0xc3ed5d4a0, L_0xc3ed5d540;
|
|
S_0xc3f245680 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f245380;
|
|
.timescale -9 -12;
|
|
P_0xc3ed453c0 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ed5da40 .arith/sum 32, L_0xc3ed5d5e0, L_0xc3ed5d680;
|
|
S_0xc3f245800 .scope generate, "GEN_TREE_NODE[2]" "GEN_TREE_NODE[2]" 6 94, 6 94 0, S_0xc3f245380;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45400 .param/l "node" 1 6 94, +C4<010>;
|
|
L_0xc3ed5dae0 .arith/sum 32, L_0xc3ed5d720, L_0xc3ed5d7c0;
|
|
S_0xc3f245980 .scope generate, "GEN_TREE_NODE[3]" "GEN_TREE_NODE[3]" 6 94, 6 94 0, S_0xc3f245380;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45440 .param/l "node" 1 6 94, +C4<011>;
|
|
L_0xc3ed5db80 .arith/sum 32, L_0xc3ed5d860, L_0xc3ed5d900;
|
|
S_0xc3f245b00 .scope generate, "GEN_TREE_LEVEL[2]" "GEN_TREE_LEVEL[2]" 6 92, 6 92 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45480 .param/l "level" 1 6 92, +C4<010>;
|
|
S_0xc3f245c80 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f245b00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed454c0 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5dc20 .arith/sum 32, L_0xc3ed5d9a0, L_0xc3ed5da40;
|
|
S_0xc3f245e00 .scope generate, "GEN_TREE_NODE[1]" "GEN_TREE_NODE[1]" 6 94, 6 94 0, S_0xc3f245b00;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45500 .param/l "node" 1 6 94, +C4<01>;
|
|
L_0xc3ed5dcc0 .arith/sum 32, L_0xc3ed5dae0, L_0xc3ed5db80;
|
|
S_0xc3f245f80 .scope generate, "GEN_TREE_LEVEL[3]" "GEN_TREE_LEVEL[3]" 6 92, 6 92 0, S_0xc3f22fa80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45540 .param/l "level" 1 6 92, +C4<011>;
|
|
S_0xc3f246100 .scope generate, "GEN_TREE_NODE[0]" "GEN_TREE_NODE[0]" 6 94, 6 94 0, S_0xc3f245f80;
|
|
.timescale -9 -12;
|
|
P_0xc3ed45580 .param/l "node" 1 6 94, +C4<00>;
|
|
L_0xc3ed5dd60 .arith/sum 32, L_0xc3ed5dc20, L_0xc3ed5dcc0;
|
|
S_0xc3f246280 .scope task, "run_layer" "run_layer" 3 55, 3 55 0, S_0x105740920;
|
|
.timescale -9 -12;
|
|
E_0xc3ed12bc0 .event anyedge, v0xc3f242b20_0;
|
|
TD_tb.run_layer ;
|
|
%wait E_0xc3ed11980;
|
|
%pushi/vec4 1, 0, 1;
|
|
%store/vec4 v0xc3f243520_0, 0, 1;
|
|
%wait E_0xc3ed11980;
|
|
%pushi/vec4 0, 0, 1;
|
|
%store/vec4 v0xc3f243520_0, 0, 1;
|
|
T_0.0 ;
|
|
%load/vec4 v0xc3f243200_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_0xc3ed12bc0;
|
|
%jmp T_0.0;
|
|
T_0.1 ;
|
|
%wait E_0xc3ed11980;
|
|
%end;
|
|
.scope S_0x10572eac0;
|
|
T_1 ;
|
|
%wait E_0xc3ed11980;
|
|
%load/vec4 v0xc3f20b3e0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_1.0, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f20b340_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f20ae40_0, 0;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f20b7a0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f20b0c0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f20b200_0, 0;
|
|
%jmp T_1.1;
|
|
T_1.0 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f20b200_0, 0;
|
|
%load/vec4 v0xc3f20b480_0;
|
|
%flag_set/vec4 9;
|
|
%flag_get/vec4 9;
|
|
%jmp/0 T_1.4, 9;
|
|
%load/vec4 v0xc3f20b0c0_0;
|
|
%nor/r;
|
|
%and;
|
|
T_1.4;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_1.2, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f20b340_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f20ae40_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f20b0c0_0, 0;
|
|
%jmp T_1.3;
|
|
T_1.2 ;
|
|
%load/vec4 v0xc3f20b0c0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_1.5, 8;
|
|
%load/vec4 v0xc3f20b340_0;
|
|
%pad/u 32;
|
|
%cmpi/e 15, 0, 32;
|
|
%jmp/0xz T_1.7, 4;
|
|
%load/vec4 v0xc3f20b2a0_0;
|
|
%assign/vec4 v0xc3f20ae40_0, 0;
|
|
%load/vec4 v0xc3f20b2a0_0;
|
|
%cmpi/s 0, 0, 32;
|
|
%flag_or 5, 4;
|
|
%jmp/0xz T_1.9, 5;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f20b7a0_0, 0;
|
|
%jmp T_1.10;
|
|
T_1.9 ;
|
|
%load/vec4 v0xc3f20b2a0_0;
|
|
%cmpi/s 127, 0, 32;
|
|
%flag_or 5, 4; GT is !LE
|
|
%flag_inv 5;
|
|
%jmp/0xz T_1.11, 5;
|
|
%pushi/vec4 127, 0, 8;
|
|
%assign/vec4 v0xc3f20b7a0_0, 0;
|
|
%jmp T_1.12;
|
|
T_1.11 ;
|
|
%load/vec4 v0xc3f20b2a0_0;
|
|
%parti/s 8, 0, 2;
|
|
%assign/vec4 v0xc3f20b7a0_0, 0;
|
|
T_1.12 ;
|
|
T_1.10 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f20b0c0_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f20b200_0, 0;
|
|
%jmp T_1.8;
|
|
T_1.7 ;
|
|
%load/vec4 v0xc3f20aee0_0;
|
|
%assign/vec4 v0xc3f20ae40_0, 0;
|
|
%load/vec4 v0xc3f20b340_0;
|
|
%addi 1, 0, 4;
|
|
%assign/vec4 v0xc3f20b340_0, 0;
|
|
T_1.8 ;
|
|
T_1.5 ;
|
|
T_1.3 ;
|
|
T_1.1 ;
|
|
%jmp T_1;
|
|
.thread T_1;
|
|
.scope S_0xc3f211f80;
|
|
T_2 ;
|
|
%wait E_0xc3ed11980;
|
|
%load/vec4 v0xc3f21eee0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_2.0, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f21ee40_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f21e940_0, 0;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f21f2a0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f21ebc0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f21ed00_0, 0;
|
|
%jmp T_2.1;
|
|
T_2.0 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f21ed00_0, 0;
|
|
%load/vec4 v0xc3f21ef80_0;
|
|
%flag_set/vec4 9;
|
|
%flag_get/vec4 9;
|
|
%jmp/0 T_2.4, 9;
|
|
%load/vec4 v0xc3f21ebc0_0;
|
|
%nor/r;
|
|
%and;
|
|
T_2.4;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_2.2, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f21ee40_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f21e940_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f21ebc0_0, 0;
|
|
%jmp T_2.3;
|
|
T_2.2 ;
|
|
%load/vec4 v0xc3f21ebc0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_2.5, 8;
|
|
%load/vec4 v0xc3f21ee40_0;
|
|
%pad/u 32;
|
|
%cmpi/e 15, 0, 32;
|
|
%jmp/0xz T_2.7, 4;
|
|
%load/vec4 v0xc3f21eda0_0;
|
|
%assign/vec4 v0xc3f21e940_0, 0;
|
|
%load/vec4 v0xc3f21eda0_0;
|
|
%cmpi/s 0, 0, 32;
|
|
%flag_or 5, 4;
|
|
%jmp/0xz T_2.9, 5;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f21f2a0_0, 0;
|
|
%jmp T_2.10;
|
|
T_2.9 ;
|
|
%load/vec4 v0xc3f21eda0_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 v0xc3f21f2a0_0, 0;
|
|
%jmp T_2.12;
|
|
T_2.11 ;
|
|
%load/vec4 v0xc3f21eda0_0;
|
|
%parti/s 8, 0, 2;
|
|
%assign/vec4 v0xc3f21f2a0_0, 0;
|
|
T_2.12 ;
|
|
T_2.10 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f21ebc0_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f21ed00_0, 0;
|
|
%jmp T_2.8;
|
|
T_2.7 ;
|
|
%load/vec4 v0xc3f21e9e0_0;
|
|
%assign/vec4 v0xc3f21e940_0, 0;
|
|
%load/vec4 v0xc3f21ee40_0;
|
|
%addi 1, 0, 4;
|
|
%assign/vec4 v0xc3f21ee40_0, 0;
|
|
T_2.8 ;
|
|
T_2.5 ;
|
|
T_2.3 ;
|
|
T_2.1 ;
|
|
%jmp T_2;
|
|
.thread T_2;
|
|
.scope S_0xc3f220c00;
|
|
T_3 ;
|
|
%wait E_0xc3ed11980;
|
|
%load/vec4 v0xc3f22a9e0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_3.0, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f22a940_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f22a440_0, 0;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f22ada0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f22a6c0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f22a800_0, 0;
|
|
%jmp T_3.1;
|
|
T_3.0 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f22a800_0, 0;
|
|
%load/vec4 v0xc3f22aa80_0;
|
|
%flag_set/vec4 9;
|
|
%flag_get/vec4 9;
|
|
%jmp/0 T_3.4, 9;
|
|
%load/vec4 v0xc3f22a6c0_0;
|
|
%nor/r;
|
|
%and;
|
|
T_3.4;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_3.2, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f22a940_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f22a440_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f22a6c0_0, 0;
|
|
%jmp T_3.3;
|
|
T_3.2 ;
|
|
%load/vec4 v0xc3f22a6c0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_3.5, 8;
|
|
%load/vec4 v0xc3f22a940_0;
|
|
%pad/u 32;
|
|
%cmpi/e 15, 0, 32;
|
|
%jmp/0xz T_3.7, 4;
|
|
%load/vec4 v0xc3f22a8a0_0;
|
|
%assign/vec4 v0xc3f22a440_0, 0;
|
|
%load/vec4 v0xc3f22a8a0_0;
|
|
%cmpi/s 0, 0, 32;
|
|
%flag_or 5, 4;
|
|
%jmp/0xz T_3.9, 5;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f22ada0_0, 0;
|
|
%jmp T_3.10;
|
|
T_3.9 ;
|
|
%load/vec4 v0xc3f22a8a0_0;
|
|
%cmpi/s 127, 0, 32;
|
|
%flag_or 5, 4; GT is !LE
|
|
%flag_inv 5;
|
|
%jmp/0xz T_3.11, 5;
|
|
%pushi/vec4 127, 0, 8;
|
|
%assign/vec4 v0xc3f22ada0_0, 0;
|
|
%jmp T_3.12;
|
|
T_3.11 ;
|
|
%load/vec4 v0xc3f22a8a0_0;
|
|
%parti/s 8, 0, 2;
|
|
%assign/vec4 v0xc3f22ada0_0, 0;
|
|
T_3.12 ;
|
|
T_3.10 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f22a6c0_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f22a800_0, 0;
|
|
%jmp T_3.8;
|
|
T_3.7 ;
|
|
%load/vec4 v0xc3f22a4e0_0;
|
|
%assign/vec4 v0xc3f22a440_0, 0;
|
|
%load/vec4 v0xc3f22a940_0;
|
|
%addi 1, 0, 4;
|
|
%assign/vec4 v0xc3f22a940_0, 0;
|
|
T_3.8 ;
|
|
T_3.5 ;
|
|
T_3.3 ;
|
|
T_3.1 ;
|
|
%jmp T_3;
|
|
.thread T_3;
|
|
.scope S_0xc3f22f780;
|
|
T_4 ;
|
|
%wait E_0xc3ed11980;
|
|
%load/vec4 v0xc3f2424e0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_4.0, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f242440_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f241f40_0, 0;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f2428a0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f2421c0_0, 0;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f242300_0, 0;
|
|
%jmp T_4.1;
|
|
T_4.0 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f242300_0, 0;
|
|
%load/vec4 v0xc3f242580_0;
|
|
%flag_set/vec4 9;
|
|
%flag_get/vec4 9;
|
|
%jmp/0 T_4.4, 9;
|
|
%load/vec4 v0xc3f2421c0_0;
|
|
%nor/r;
|
|
%and;
|
|
T_4.4;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_4.2, 8;
|
|
%pushi/vec4 0, 0, 4;
|
|
%assign/vec4 v0xc3f242440_0, 0;
|
|
%pushi/vec4 0, 0, 32;
|
|
%assign/vec4 v0xc3f241f40_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f2421c0_0, 0;
|
|
%jmp T_4.3;
|
|
T_4.2 ;
|
|
%load/vec4 v0xc3f2421c0_0;
|
|
%flag_set/vec4 8;
|
|
%jmp/0xz T_4.5, 8;
|
|
%load/vec4 v0xc3f242440_0;
|
|
%pad/u 32;
|
|
%cmpi/e 15, 0, 32;
|
|
%jmp/0xz T_4.7, 4;
|
|
%load/vec4 v0xc3f2423a0_0;
|
|
%assign/vec4 v0xc3f241f40_0, 0;
|
|
%load/vec4 v0xc3f2423a0_0;
|
|
%cmpi/s 0, 0, 32;
|
|
%flag_or 5, 4;
|
|
%jmp/0xz T_4.9, 5;
|
|
%pushi/vec4 0, 0, 8;
|
|
%assign/vec4 v0xc3f2428a0_0, 0;
|
|
%jmp T_4.10;
|
|
T_4.9 ;
|
|
%load/vec4 v0xc3f2423a0_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 v0xc3f2428a0_0, 0;
|
|
%jmp T_4.12;
|
|
T_4.11 ;
|
|
%load/vec4 v0xc3f2423a0_0;
|
|
%parti/s 8, 0, 2;
|
|
%assign/vec4 v0xc3f2428a0_0, 0;
|
|
T_4.12 ;
|
|
T_4.10 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%assign/vec4 v0xc3f2421c0_0, 0;
|
|
%pushi/vec4 1, 0, 1;
|
|
%assign/vec4 v0xc3f242300_0, 0;
|
|
%jmp T_4.8;
|
|
T_4.7 ;
|
|
%load/vec4 v0xc3f241fe0_0;
|
|
%assign/vec4 v0xc3f241f40_0, 0;
|
|
%load/vec4 v0xc3f242440_0;
|
|
%addi 1, 0, 4;
|
|
%assign/vec4 v0xc3f242440_0, 0;
|
|
T_4.8 ;
|
|
T_4.5 ;
|
|
T_4.3 ;
|
|
T_4.1 ;
|
|
%jmp T_4;
|
|
.thread T_4;
|
|
.scope S_0x105740920;
|
|
T_5 ;
|
|
%pushi/vec4 0, 0, 1;
|
|
%store/vec4 v0xc3f243160_0, 0, 1;
|
|
T_5.0 ;
|
|
%delay 5000, 0;
|
|
%load/vec4 v0xc3f243160_0;
|
|
%inv;
|
|
%store/vec4 v0xc3f243160_0, 0, 1;
|
|
%jmp T_5.0;
|
|
T_5.1 ;
|
|
%end;
|
|
.thread T_5;
|
|
.scope S_0x105740920;
|
|
T_6 ;
|
|
%vpi_call/w 3 71 "$dumpfile", "sim/parametric.vcd" {0 0 0};
|
|
%vpi_call/w 3 72 "$dumpvars", 32'sb00000000000000000000000000000000, S_0x105740920 {0 0 0};
|
|
%pushi/vec4 1, 0, 1;
|
|
%store/vec4 v0xc3f243480_0, 0, 1;
|
|
%pushi/vec4 0, 0, 1;
|
|
%store/vec4 v0xc3f243520_0, 0, 1;
|
|
%pushi/vec4 0, 0, 2048;
|
|
%store/vec4 v0xc3f243660_0, 0, 2048;
|
|
%pushi/vec4 0, 0, 8192;
|
|
%store/vec4 v0xc3f2435c0_0, 0, 8192;
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f243020_0, 0, 32;
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f2432a0_0, 0, 32;
|
|
%pushi/vec4 2, 0, 32;
|
|
T_6.0 %dup/vec4;
|
|
%cmpi/s 0, 0, 32;
|
|
%jmp/1xz T_6.1, 5;
|
|
%jmp/1 T_6.1, 4;
|
|
%subi 1, 0, 32;
|
|
%wait E_0xc3ed11980;
|
|
%jmp T_6.0;
|
|
T_6.1 ;
|
|
%pop/vec4 1;
|
|
%pushi/vec4 0, 0, 1;
|
|
%store/vec4 v0xc3f243480_0, 0, 1;
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
T_6.2 ; Top of for-loop
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%cmpi/s 256, 0, 32;
|
|
%jmp/0xz T_6.3, 5;
|
|
%pushi/vec4 1, 0, 8;
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%muli 8, 0, 32;
|
|
%ix/vec4/s 4;
|
|
%store/vec4 v0xc3f243660_0, 4, 8;
|
|
T_6.4 ; for-loop step statement
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
%jmp T_6.2;
|
|
T_6.3 ; for-loop exit label
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
T_6.5 ; Top of for-loop
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%cmpi/s 256, 0, 32;
|
|
%jmp/0xz T_6.6, 5;
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%cmpi/s 32, 0, 32;
|
|
%flag_mov 8, 5;
|
|
%jmp/0 T_6.8, 8;
|
|
%pushi/vec4 1, 0, 8;
|
|
%jmp/1 T_6.9, 8;
|
|
T_6.8 ; End of true expr.
|
|
%pushi/vec4 0, 0, 8;
|
|
%jmp/0 T_6.9, 8;
|
|
; End of false expr.
|
|
%blend;
|
|
T_6.9;
|
|
%pushi/vec4 0, 0, 32;
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%muli 8, 0, 32;
|
|
%add;
|
|
%ix/vec4/s 4;
|
|
%store/vec4 v0xc3f2435c0_0, 4, 8;
|
|
T_6.7 ; for-loop step statement
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
%jmp T_6.5;
|
|
T_6.6 ; for-loop exit label
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
T_6.10 ; Top of for-loop
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%cmpi/s 256, 0, 32;
|
|
%jmp/0xz T_6.11, 5;
|
|
%pushi/vec4 0, 0, 8;
|
|
%pushi/vec4 2048, 0, 32;
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%muli 8, 0, 32;
|
|
%add;
|
|
%ix/vec4/s 4;
|
|
%store/vec4 v0xc3f2435c0_0, 4, 8;
|
|
T_6.12 ; for-loop step statement
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
%jmp T_6.10;
|
|
T_6.11 ; for-loop exit label
|
|
%pushi/vec4 10, 0, 8;
|
|
%ix/load 4, 8, 0;
|
|
%flag_set/imm 4, 0;
|
|
%store/vec4 v0xc3f243020_0, 4, 8;
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
T_6.13 ; Top of for-loop
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%cmpi/s 256, 0, 32;
|
|
%jmp/0xz T_6.14, 5;
|
|
%pushi/vec4 255, 0, 8;
|
|
%pushi/vec4 4096, 0, 32;
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%muli 8, 0, 32;
|
|
%add;
|
|
%ix/vec4/s 4;
|
|
%store/vec4 v0xc3f2435c0_0, 4, 8;
|
|
T_6.15 ; for-loop step statement
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
%jmp T_6.13;
|
|
T_6.14 ; for-loop exit label
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
T_6.16 ; Top of for-loop
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%cmpi/s 256, 0, 32;
|
|
%jmp/0xz T_6.17, 5;
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%cmpi/s 32, 0, 32;
|
|
%flag_mov 8, 5;
|
|
%jmp/0 T_6.19, 8;
|
|
%pushi/vec4 4, 0, 8;
|
|
%jmp/1 T_6.20, 8;
|
|
T_6.19 ; End of true expr.
|
|
%pushi/vec4 0, 0, 8;
|
|
%jmp/0 T_6.20, 8;
|
|
; End of false expr.
|
|
%blend;
|
|
T_6.20;
|
|
%pushi/vec4 6144, 0, 32;
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%muli 8, 0, 32;
|
|
%add;
|
|
%ix/vec4/s 4;
|
|
%store/vec4 v0xc3f2435c0_0, 4, 8;
|
|
T_6.18 ; for-loop step statement
|
|
%load/vec4 v0xc3f2433e0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2433e0_0, 0, 32;
|
|
%jmp T_6.16;
|
|
T_6.17 ; for-loop exit label
|
|
%vpi_call/w 3 153 "$display", "\000" {0 0 0};
|
|
%vpi_call/w 3 154 "$display", "========================================" {0 0 0};
|
|
%vpi_call/w 3 155 "$display", "INT8 / INT32 PARAMETRIC LAYER TEST" {0 0 0};
|
|
%vpi_call/w 3 156 "$display", "N_INPUTS = %0d", P_0xc3ece7f00 {0 0 0};
|
|
%vpi_call/w 3 157 "$display", "N_NEURONS = %0d", P_0xc3ece7f40 {0 0 0};
|
|
%vpi_call/w 3 158 "$display", "PARALLEL = %0d", P_0xc3ece7f80 {0 0 0};
|
|
%vpi_call/w 3 159 "$display", "DATA_WIDTH = %0d", P_0xc3ece7ec0 {0 0 0};
|
|
%vpi_call/w 3 160 "$display", "ACC_WIDTH = %0d", P_0xc3ece7e80 {0 0 0};
|
|
%vpi_call/w 3 161 "$display", "========================================" {0 0 0};
|
|
%fork TD_tb.run_layer, S_0xc3f246280;
|
|
%join;
|
|
%pushi/vec4 32, 0, 32;
|
|
%store/vec4 v0xc3f243340_0, 0, 32;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 0, 2;
|
|
%pad/s 32;
|
|
%load/vec4 v0xc3f243340_0;
|
|
%cmp/ne;
|
|
%jmp/0xz T_6.21, 6;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 0, 2;
|
|
%vpi_call/w 3 171 "$display", "FAIL N0: got %0d expected %0d", S<0,vec4,s8>, v0xc3f243340_0 {1 0 0};
|
|
%load/vec4 v0xc3f2432a0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2432a0_0, 0, 32;
|
|
%jmp T_6.22;
|
|
T_6.21 ;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 0, 2;
|
|
%vpi_call/w 3 177 "$display", "PASS N0: %0d", S<0,vec4,s8> {1 0 0};
|
|
T_6.22 ;
|
|
%pushi/vec4 10, 0, 32;
|
|
%store/vec4 v0xc3f243340_0, 0, 32;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 8, 5;
|
|
%pad/s 32;
|
|
%load/vec4 v0xc3f243340_0;
|
|
%cmp/ne;
|
|
%jmp/0xz T_6.23, 6;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 8, 5;
|
|
%vpi_call/w 3 187 "$display", "FAIL N1: got %0d expected %0d", S<0,vec4,s8>, v0xc3f243340_0 {1 0 0};
|
|
%load/vec4 v0xc3f2432a0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2432a0_0, 0, 32;
|
|
%jmp T_6.24;
|
|
T_6.23 ;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 8, 5;
|
|
%vpi_call/w 3 193 "$display", "PASS N1: %0d", S<0,vec4,s8> {1 0 0};
|
|
T_6.24 ;
|
|
%pushi/vec4 0, 0, 32;
|
|
%store/vec4 v0xc3f243340_0, 0, 32;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 16, 6;
|
|
%pad/s 32;
|
|
%cmpi/ne 0, 0, 32;
|
|
%jmp/0xz T_6.25, 6;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 16, 6;
|
|
%vpi_call/w 3 205 "$display", "FAIL N2: got %0d expected 0", S<0,vec4,s8> {1 0 0};
|
|
%load/vec4 v0xc3f2432a0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2432a0_0, 0, 32;
|
|
%jmp T_6.26;
|
|
T_6.25 ;
|
|
%vpi_call/w 3 210 "$display", "PASS N2: 0 (ReLU)" {0 0 0};
|
|
T_6.26 ;
|
|
%pushi/vec4 127, 0, 32;
|
|
%store/vec4 v0xc3f243340_0, 0, 32;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 24, 6;
|
|
%pad/s 32;
|
|
%load/vec4 v0xc3f243340_0;
|
|
%cmp/ne;
|
|
%jmp/0xz T_6.27, 6;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 24, 6;
|
|
%vpi_call/w 3 224 "$display", "FAIL N3: got %0d expected %0d", S<0,vec4,s8>, v0xc3f243340_0 {1 0 0};
|
|
%load/vec4 v0xc3f2432a0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2432a0_0, 0, 32;
|
|
%jmp T_6.28;
|
|
T_6.27 ;
|
|
%load/vec4 v0xc3f243700_0;
|
|
%parti/s 8, 24, 6;
|
|
%vpi_call/w 3 230 "$display", "PASS N3: %0d (saturation)", S<0,vec4,s8> {1 0 0};
|
|
T_6.28 ;
|
|
%load/vec4 v0xc3f2430c0_0;
|
|
%pad/u 32;
|
|
%cmpi/ne 0, 0, 32;
|
|
%jmp/0xz T_6.29, 6;
|
|
%vpi_call/w 3 235 "$display", "FAIL: busy still active" {0 0 0};
|
|
%load/vec4 v0xc3f2432a0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2432a0_0, 0, 32;
|
|
T_6.29 ;
|
|
%load/vec4 v0xc3f243200_0;
|
|
%pad/u 32;
|
|
%cmpi/ne 1, 0, 32;
|
|
%jmp/0xz T_6.31, 6;
|
|
%vpi_call/w 3 240 "$display", "FAIL: done not asserted" {0 0 0};
|
|
%load/vec4 v0xc3f2432a0_0;
|
|
%addi 1, 0, 32;
|
|
%store/vec4 v0xc3f2432a0_0, 0, 32;
|
|
T_6.31 ;
|
|
%vpi_call/w 3 244 "$display", "\000" {0 0 0};
|
|
%vpi_call/w 3 245 "$display", "========================================" {0 0 0};
|
|
%load/vec4 v0xc3f2432a0_0;
|
|
%cmpi/e 0, 0, 32;
|
|
%jmp/0xz T_6.33, 4;
|
|
%vpi_call/w 3 248 "$display", "INT8 PARAMETRIC TEST PASSED" {0 0 0};
|
|
%jmp T_6.34;
|
|
T_6.33 ;
|
|
%vpi_call/w 3 250 "$display", "INT8 PARAMETRIC TEST FAILED: %0d errors", v0xc3f2432a0_0 {0 0 0};
|
|
T_6.34 ;
|
|
%vpi_call/w 3 252 "$display", "========================================" {0 0 0};
|
|
%vpi_call/w 3 253 "$display", "\000" {0 0 0};
|
|
%vpi_call/w 3 255 "$finish" {0 0 0};
|
|
%end;
|
|
.thread T_6;
|
|
# The file index is used to find the file name in the following table.
|
|
:file_names 8;
|
|
"N/A";
|
|
"<interactive>";
|
|
"-";
|
|
"sim/parametric_tb.v";
|
|
"rtl/layer.v";
|
|
"rtl/neuron_parallel.v";
|
|
"rtl/mac8.v";
|
|
"rtl/mac_unit.v";
|