Skip to content

Commit 45c6171

Browse files
committed
resotre more to main
1 parent 7933d42 commit 45c6171

File tree

4 files changed

+21
-18
lines changed

4 files changed

+21
-18
lines changed

hls4ml/report/vivado_report.py

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ def read_vivado_report(hls_dir, full_report=False):
1212
prj_dir = None
1313
top_func_name = None
1414

15-
if os.path.isfile(hls_dir + '/build_prj.tcl'):
16-
prj_dir, top_func_name = _parse_build_script(hls_dir + '/build_prj.tcl')
15+
if os.path.isfile(hls_dir + '/project.tcl'):
16+
prj_dir, top_func_name = _parse_project_script(hls_dir)
1717

1818
if prj_dir is None or top_func_name is None:
1919
print('Unable to read project data. Exiting.')
@@ -31,21 +31,17 @@ def read_vivado_report(hls_dir, full_report=False):
3131
print('Reports for solution "{}":\n'.format(sln))
3232
_find_reports(sln_dir + '/' + sln, top_func_name, full_report)
3333

34-
def _parse_build_script(path):
34+
def _parse_project_script(path):
3535
prj_dir = None
3636
top_func_name = None
3737

38-
build_path = path + '/build_prj.tcl'
3938
project_path = path + '/project.tcl'
40-
with open(build_path, 'r') as f:
41-
for line in f.readlines():
42-
if 'set_top' in line:
43-
top_func_name = line.split()[-1]
4439

4540
with open(project_path, 'r') as f:
4641
for line in f.readlines():
47-
if 'set myproject' in line:
48-
prj_dir = line.split('"')[-2] + '_prj'
42+
if 'set project_name' in line:
43+
top_func_name = line.split('"')[-2]
44+
prj_dir = top_func_name + '_prj'
4945

5046
return prj_dir, top_func_name
5147

@@ -113,8 +109,8 @@ def parse_vivado_report(hls_dir):
113109
prj_dir = None
114110
top_func_name = None
115111

116-
if os.path.isfile(hls_dir + '/build_prj.tcl'):
117-
prj_dir, top_func_name = _parse_build_script(hls_dir)
112+
if os.path.isfile(hls_dir + '/project.tcl'):
113+
prj_dir, top_func_name = _parse_project_script(hls_dir)
118114

119115
if prj_dir is None or top_func_name is None:
120116
print('Unable to read project data. Exiting.')
Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1-
add_files myproject_prj/solution1/syn/vhdl
2-
synth_design -top myproject -part xcku115-flvb2104-2-i
1+
set tcldir [file dirname [info script]]
2+
source [file join $tcldir project.tcl]
3+
4+
add_files ${project_name}_prj/solution1/syn/vhdl
5+
synth_design -top ${project_name} -part $part
36
report_utilization -file vivado_synth.rpt

hls4ml/templates/vivado_accelerator/alveo/tcl_scripts/axi_stream_design.tcl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
set tcldir [file dirname [info script]]
22
source [file join $tcldir project.tcl]
33

4-
create_project project_1 ${myproject}_vivado_accelerator -part ${part} -force
4+
create_project project_1 ${project_name}_vivado_accelerator -part ${part} -force
55

6-
set_property ip_repo_paths ${myproject}_prj [current_project]
6+
set_property ip_repo_paths ${project_name}_prj [current_project]
77
update_ip_catalog
88

99

@@ -12,7 +12,7 @@ import_files [list src/krnl_rtl_int.sv src/krnl_rtl_axi_read_master.sv src/krnl_
1212

1313

1414

15-
create_ip -vlnv xilinx.com:hls:${myproject}_axi:1.0 -module_name myproject_axi_0
15+
create_ip -vlnv xilinx.com:hls:${project_name}_axi:1.0 -module_name ${project_name}_axi_0
1616

1717

1818
ipx::package_project -root_dir hls4ml_IP -vendor fastmachinelearning.org -library hls4ml -taxonomy /UserIP -import_files -set_current false
@@ -106,4 +106,4 @@ ipx::archive_core hls4ml_IP/fastmachinelearning.org_hls4ml_krnl_rtl_1.0.zip [ipx
106106
current_project project_1
107107

108108

109-
package_xo -force -xo_path xo_files/${myproject}_kernel.xo -kernel_name krnl_rtl -ip_directory hls4ml_IP
109+
package_xo -force -xo_path xo_files/${project_name}_kernel.xo -kernel_name krnl_rtl -ip_directory hls4ml_IP

hls4ml/writer/vivado_writer.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -591,6 +591,10 @@ def write_build_script(self, model):
591591
f.write(f'set project_name "{model.config.get_project_name()}"\n')
592592
f.write('variable backend\n')
593593
f.write('set backend "vivado"\n')
594+
f.write('variable part\n')
595+
f.write('set part "{}"\n'.format(model.config.get_config_value('Part')))
596+
f.write('variable clock_period\n')
597+
f.write('set clock_period {}\n'.format(model.config.get_config_value('ClockPeriod')))
594598
f.close()
595599

596600
# build_prj.tcl

0 commit comments

Comments
 (0)