Skip to content

Commit 058b452

Browse files
authored
Merge pull request #3857 from Pinata-Consulting/gui-yosys
gui: add gui/open_yosys targets
2 parents 0cbf0c6 + f457ed1 commit 058b452

4 files changed

Lines changed: 19 additions & 0 deletions

File tree

flow/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -389,6 +389,8 @@ endef
389389
# Custom target to go from synthesis to placement in a single OpenROAD run
390390
$(eval $(call do-step,1_3_floorplan_to_place, $(RESULTS_DIR)/1_synth.odb $(RESULTS_DIR)/1_synth.sdc,floorplan_to_place))
391391

392+
$(eval $(call OPEN_GUI_SHORTCUT,yosys,1_2_yosys.v))
393+
392394
.PHONY: floorplan_to_place
393395
floorplan_to_place: $(RESULTS_DIR)/1_synth.odb $(RESULTS_DIR)/1_synth.sdc
394396
$(UNSET_AND_MAKE) do-1_3_floorplan_to_place
@@ -777,6 +779,7 @@ $(eval $(call OPEN_GUI_SHORTCUT,final,6_final.odb))
777779

778780
$(foreach file,$(RESULTS_DEF),$(eval $(call OPEN_GUI,$(file),DEF_FILE)))
779781
$(foreach file,$(RESULTS_ODB),$(eval $(call OPEN_GUI,$(file),ODB_FILE)))
782+
$(foreach file,$(RESULTS_V),$(eval $(call OPEN_GUI,$(file),V_FILE)))
780783

781784
# Write a def for the corresponding odb
782785
$(foreach file,$(RESULTS_ODB),$(file).def): %.def:

flow/designs/asap7/minimal/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ gui_synth
6262
The module hierarchy can here be examined to give a sense of
6363
area required for the default placement density.
6464

65+
## `make gui_yosys` OpenROAD GUI information for Yosys netlist
66+
67+
It is possible to set up hierarchical synthesis using ORFS, in which case it can be helpful to view a netlist with blackboxed submodules, in which case there's no .odb file and `make gui_synth` is not available.
68+
6569
## `make gui_floorplan` OpenROAD GUI information
6670

6771
Next to iterate on floorplan settings:

flow/scripts/open.tcl

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,17 @@ if { [env_var_exists_and_non_empty DEF_FILE] } {
1616
}
1717
set input_file $::env(DEF_FILE)
1818
log_cmd read_def $input_file
19+
} elseif { [env_var_exists_and_non_empty V_FILE] } {
20+
log_cmd read_lef $::env(TECH_LEF)
21+
log_cmd read_lef $::env(SC_LEF)
22+
if { [env_var_exists_and_non_empty ADDITIONAL_LEFS] } {
23+
foreach lef $::env(ADDITIONAL_LEFS) {
24+
log_cmd read_lef $lef
25+
}
26+
}
27+
set input_file $::env(V_FILE)
28+
log_cmd read_verilog $input_file
29+
log_cmd link_design {*}[hier_options] $::env(DESIGN_NAME)
1930
} else {
2031
set input_file $::env(ODB_FILE)
2132
log_cmd read_db {*}[hier_options] $input_file

flow/scripts/variables.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,7 @@ export RESULTS_ODB = $(notdir $(sort $(wildcard $(RESULTS_DIR)/*.odb)))
187187
export RESULTS_DEF = $(notdir $(sort $(wildcard $(RESULTS_DIR)/*.def)))
188188
export RESULTS_GDS = $(notdir $(sort $(wildcard $(RESULTS_DIR)/*.gds)))
189189
export RESULTS_OAS = $(notdir $(sort $(wildcard $(RESULTS_DIR)/*.oas)))
190+
export RESULTS_V = $(notdir $(sort $(wildcard $(RESULTS_DIR)/*.v)))
190191
export GDS_MERGED_FILE = $(RESULTS_DIR)/6_1_merged.$(STREAM_SYSTEM_EXT)
191192

192193
define get_variables

0 commit comments

Comments
 (0)