@@ -7,27 +7,6 @@ def __init__(self):
7
7
super (VivadoBackend , self ).__init__ (name = 'VitisAccelerator' )
8
8
self ._register_layer_attributes ()
9
9
self ._register_flows ()
10
-
11
- def _register_flows (self ):
12
- validation_passes = [
13
- 'vitisaccelerator:validate_conv_implementation' ,
14
- 'vitisaccelerator:validate_strategy' ,
15
- ]
16
- validation_flow = register_flow ('validation' , validation_passes , requires = ['vivado:init_layers' ], backend = self .name )
17
-
18
- # Any potential templates registered specifically for Vitis backend
19
- template_flow = register_flow (
20
- 'apply_templates' , self ._get_layer_templates , requires = ['vivado:init_layers' ], backend = self .name
21
- )
22
-
23
- writer_passes = ['make_stamp' , 'vitisaccelerator:write_hls' ]
24
- self ._writer_flow = register_flow ('write' , writer_passes , requires = ['vitis:ip' ], backend = self .name )
25
-
26
- ip_flow_requirements = get_flow ('vivado:ip' ).requires .copy ()
27
- ip_flow_requirements .insert (ip_flow_requirements .index ('vivado:init_layers' ), validation_flow )
28
- ip_flow_requirements .insert (ip_flow_requirements .index ('vivado:apply_templates' ), template_flow )
29
-
30
- self ._default_flow = register_flow ('ip' , None , requires = ip_flow_requirements , backend = self .name )
31
10
32
11
def create_initial_config (
33
12
self ,
@@ -58,4 +37,25 @@ def create_initial_config(
58
37
config ['AcceleratorConfig' ]['Num_Kernel' ] = num_kernel
59
38
config ['AcceleratorConfig' ]['Num_Thread' ] = num_thread
60
39
config ['AcceleratorConfig' ]['Batchsize' ] = batchsize
61
- return config
40
+ return config
41
+
42
+ def _register_flows (self ):
43
+ validation_passes = [
44
+ 'vitisaccelerator:validate_conv_implementation' ,
45
+ 'vitisaccelerator:validate_strategy' ,
46
+ ]
47
+ validation_flow = register_flow ('validation' , validation_passes , requires = ['vivado:init_layers' ], backend = self .name )
48
+
49
+ # Any potential templates registered specifically for Vitis backend
50
+ template_flow = register_flow (
51
+ 'apply_templates' , self ._get_layer_templates , requires = ['vivado:init_layers' ], backend = self .name
52
+ )
53
+
54
+ writer_passes = ['make_stamp' , 'vitisaccelerator:write_hls' ]
55
+ self ._writer_flow = register_flow ('write' , writer_passes , requires = ['vitis:ip' ], backend = self .name )
56
+
57
+ ip_flow_requirements = get_flow ('vivado:ip' ).requires .copy ()
58
+ ip_flow_requirements .insert (ip_flow_requirements .index ('vivado:init_layers' ), validation_flow )
59
+ ip_flow_requirements .insert (ip_flow_requirements .index ('vivado:apply_templates' ), template_flow )
60
+
61
+ self ._default_flow = register_flow ('ip' , None , requires = ip_flow_requirements , backend = self .name )
0 commit comments