|
9 | 9 | # Arg 2: path to sim sources |
10 | 10 | # Arg 3: path to test sources |
11 | 11 | # Arg 4: path to include sources |
12 | | -# Arg 5: target clock period |
13 | | -# Arg 6: input type width (log) |
14 | | -# Arg 7: weight type width (log) |
15 | | -# Arg 8: accum type width (log) |
16 | | -# Arg 9: output type width (log) |
17 | | -# Arg 10: batch size (log) |
18 | | -# Arg 11: in block size (log) |
19 | | -# Arg 12: out block size (log) |
20 | | -# Arg 13: uop buffer size in B (log) |
21 | | -# Arg 14: inp buffer size in B (log) |
22 | | -# Arg 15: wgt buffer size in B (log) |
23 | | -# Arg 16: acc buffer size in B (log) |
24 | | -# Arg 17: out buffer size in B (log) |
25 | | -# Arg 18: mode |
26 | | -# Arg 19: no_dsp |
27 | | -# Arg 20: no_alu |
| 12 | +# Arg 5: mode |
| 13 | +# Arg 6: debug |
| 14 | +# Arg 7: no_dsp |
| 15 | +# Arg 8: no_alu |
| 16 | +# Arg 9: target clock period |
| 17 | +# Arg 10: input type width (log) |
| 18 | +# Arg 11: weight type width (log) |
| 19 | +# Arg 12: accum type width (log) |
| 20 | +# Arg 13: output type width (log) |
| 21 | +# Arg 14: batch size (log) |
| 22 | +# Arg 15: in block size (log) |
| 23 | +# Arg 16: out block size (log) |
| 24 | +# Arg 17: uop buffer size in B (log) |
| 25 | +# Arg 18: inp buffer size in B (log) |
| 26 | +# Arg 19: wgt buffer size in B (log) |
| 27 | +# Arg 20: acc buffer size in B (log) |
| 28 | +# Arg 21: out buffer size in B (log) |
28 | 29 |
|
29 | | -if { [llength $argv] eq 22 } { |
| 30 | +if { [llength $argv] eq 23 } { |
30 | 31 | set src_dir [lindex $argv 2] |
31 | 32 | set sim_dir [lindex $argv 3] |
32 | 33 | set test_dir [lindex $argv 4] |
33 | 34 | set include_dir [lindex $argv 5] |
34 | | - set target_period [lindex $argv 6] |
35 | | - set inp_width [lindex $argv 7] |
36 | | - set wgt_width [lindex $argv 8] |
37 | | - set acc_width [lindex $argv 9] |
38 | | - set out_width [lindex $argv 10] |
39 | | - set batch [lindex $argv 11] |
40 | | - set block_in [lindex $argv 12] |
41 | | - set block_out [lindex $argv 13] |
42 | | - set uop_buff_size [lindex $argv 14] |
43 | | - set inp_buff_size [lindex $argv 15] |
44 | | - set wgt_buff_size [lindex $argv 16] |
45 | | - set acc_buff_size [lindex $argv 17] |
46 | | - set out_buff_size [lindex $argv 18] |
47 | | - set mode [lindex $argv 19] |
48 | | - set no_dsp [lindex $argv 20] |
49 | | - set no_alu [lindex $argv 21] |
| 35 | + set mode [lindex $argv 6] |
| 36 | + set debug [lindex $argv 7] |
| 37 | + set no_dsp [lindex $argv 8] |
| 38 | + set no_alu [lindex $argv 9] |
| 39 | + set target_period [lindex $argv 10] |
| 40 | + set inp_width [lindex $argv 11] |
| 41 | + set wgt_width [lindex $argv 12] |
| 42 | + set acc_width [lindex $argv 13] |
| 43 | + set out_width [lindex $argv 14] |
| 44 | + set batch [lindex $argv 15] |
| 45 | + set block_in [lindex $argv 16] |
| 46 | + set block_out [lindex $argv 17] |
| 47 | + set uop_buff_size [lindex $argv 18] |
| 48 | + set inp_buff_size [lindex $argv 19] |
| 49 | + set wgt_buff_size [lindex $argv 20] |
| 50 | + set acc_buff_size [lindex $argv 21] |
| 51 | + set out_buff_size [lindex $argv 22] |
50 | 52 | } else { |
51 | 53 | set src_dir "../src" |
52 | 54 | set sim_dir "../sim" |
53 | 55 | set test_dir "../../src/test" |
54 | 56 | set include_dir "../../include" |
| 57 | + set mode "all" |
| 58 | + set debug "false" |
| 59 | + set no_dsp "true" |
| 60 | + set no_alu "false" |
55 | 61 | set target_period 10 |
56 | 62 | set inp_width 3 |
57 | 63 | set wgt_width 3 |
58 | 64 | set acc_width 5 |
59 | 65 | set out_width 3 |
60 | 66 | set batch 1 |
61 | | - set block_out 4 |
62 | 67 | set block_in 4 |
| 68 | + set block_out 4 |
63 | 69 | set uop_buff_size 15 |
64 | 70 | set inp_buff_size 15 |
65 | 71 | set wgt_buff_size 15 |
66 | 72 | set acc_buff_size 17 |
67 | 73 | set out_buff_size 15 |
68 | | - set mode "all" |
69 | | - set no_dsp "true" |
70 | | - set no_alu "false" |
| 74 | + exit |
71 | 75 | } |
72 | 76 |
|
73 | 77 | # Initializes the HLS design and sets HLS pragmas for memory partitioning. |
@@ -124,12 +128,15 @@ proc init_design {per inp_width wgt_width out_width batch block_in block_out} { |
124 | 128 |
|
125 | 129 | # C define flags to pass to compiler |
126 | 130 | set cflags "-I $include_dir -I $src_dir -I $test_dir \ |
127 | | - -DVTA_DEBUG=0 -DVTA_LOG_WGT_WIDTH=$wgt_width -DVTA_LOG_INP_WIDTH=$inp_width \ |
| 131 | + -DVTA_LOG_WGT_WIDTH=$wgt_width -DVTA_LOG_INP_WIDTH=$inp_width \ |
128 | 132 | -DVTA_LOG_ACC_WIDTH=$acc_width -DVTA_LOG_OUT_WIDTH=$out_width \ |
129 | 133 | -DVTA_LOG_BATCH=$batch -DVTA_LOG_BLOCK_OUT=$block_out -DVTA_LOG_BLOCK_IN=$block_in \ |
130 | 134 | -DVTA_LOG_UOP_BUFF_SIZE=$uop_buff_size -DVTA_LOG_INP_BUFF_SIZE=$inp_buff_size \ |
131 | 135 | -DVTA_LOG_WGT_BUFF_SIZE=$wgt_buff_size -DVTA_LOG_ACC_BUFF_SIZE=$acc_buff_size \ |
132 | 136 | -DVTA_LOG_OUT_BUFF_SIZE=$out_buff_size" |
| 137 | +if {$debug=="true"} { |
| 138 | + append cflags " -DVTA_DEBUG=1" |
| 139 | +} |
133 | 140 | if {$no_dsp=="true"} { |
134 | 141 | append cflags " -DNO_DSP" |
135 | 142 | } |
|
0 commit comments