Skip to content

Commit 4ace6dc

Browse files
committed
Merge remote-tracking branch 'private/master' into secure-gpl-binSize-float
2 parents 9fefd16 + 9299682 commit 4ace6dc

File tree

39 files changed

+319
-79
lines changed

39 files changed

+319
-79
lines changed

.github/workflows/github-actions-yaml-test.yml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,12 @@ jobs:
1111
steps:
1212
- name: Checkout repository
1313
uses: actions/checkout@v4
14+
with:
15+
fetch-depth: 1
16+
sparse-checkout: |
17+
flow/scripts/generate-variables-docs.py
18+
docs/user/FlowVariables.md
19+
yamlfix.toml
1420
- name: Run generate-variables-docs.py
1521
run: |
1622
python3 flow/scripts/generate-variables-docs.py
@@ -19,5 +25,8 @@ jobs:
1925
git diff --exit-code docs/user/FlowVariables.md
2026
- name: Run yamlfix check
2127
run: |
22-
pip install yamlfix==1.17.0
23-
yamlfix -c yamlfix.toml flow/scripts/variables.yaml --check
28+
pip install --quiet yamlfix==1.17.0
29+
yamlfix --version
30+
set -x
31+
yamlfix -c yamlfix.toml flow/scripts/variables.yaml
32+
git diff flow/scripts/variables.yaml

docs/user/FlowVariables.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,6 @@ configuration file.
122122
| <a name="MAKE_TRACKS"></a>MAKE_TRACKS| Tcl file that defines add routing tracks to a floorplan.| | |
123123
| <a name="MATCH_CELL_FOOTPRINT"></a>MATCH_CELL_FOOTPRINT| Enforce sizing operations to only swap cells that have the same layout boundary.| 0| |
124124
| <a name="MAX_ROUTING_LAYER"></a>MAX_ROUTING_LAYER| The highest metal layer name to be used in routing.| | |
125-
| <a name="MAX_UNGROUP_SIZE"></a>MAX_UNGROUP_SIZE| For hierarchical synthesis, we ungroup modules of larger area than given by this variable. The area unit used is the size of a basic nand2 gate from the platform's standard cell library. The default value is platform specific.| | |
126125
| <a name="MIN_BUF_CELL_AND_PORTS"></a>MIN_BUF_CELL_AND_PORTS| Used to insert a buffer cell to pass through wires. Used in synthesis.| | |
127126
| <a name="MIN_ROUTING_LAYER"></a>MIN_ROUTING_LAYER| The lowest metal layer name to be used in routing.| | |
128127
| <a name="PDN_TCL"></a>PDN_TCL| File path which has a set of power grid policies used by pdn to be applied to the design, such as layers to use, stripe width and spacing to generate the actual metal straps.| | |
@@ -132,7 +131,6 @@ configuration file.
132131
| <a name="PLACE_SITE"></a>PLACE_SITE| Placement site for core cells defined in the technology LEF file.| | |
133132
| <a name="PLATFORM"></a>PLATFORM| Specifies process design kit or technology node to be used.| | |
134133
| <a name="POST_CTS_TCL"></a>POST_CTS_TCL| Specifies a Tcl script with commands to run after CTS is completed.| | |
135-
| <a name="PRESERVE_CELLS"></a>PRESERVE_CELLS| Mark modules to keep from getting removed in flattening.| | |
136134
| <a name="PROCESS"></a>PROCESS| Technology node or process in use.| | |
137135
| <a name="PWR_NETS_VOLTAGES"></a>PWR_NETS_VOLTAGES| Used for IR Drop calculation.| | |
138136
| <a name="RCX_RULES"></a>RCX_RULES| RC Extraction rules file path.| | |
@@ -182,7 +180,9 @@ configuration file.
182180
| <a name="SYNTH_BLACKBOXES"></a>SYNTH_BLACKBOXES| List of cells treated as a black box by Yosys. With Bazel, this can be used to run synthesis in parallel for the large modules of the design.| | |
183181
| <a name="SYNTH_GUT"></a>SYNTH_GUT| Load design and remove all internal logic before doing synthesis. This is useful when creating a mock .lef abstract that has a smaller area than the amount of logic would allow. bazel-orfs uses this to mock SRAMs, for instance.| | |
184182
| <a name="SYNTH_HIERARCHICAL"></a>SYNTH_HIERARCHICAL| Enable to Synthesis hierarchically, otherwise considered flat synthesis.| 0| |
183+
| <a name="SYNTH_KEEP_MODULES"></a>SYNTH_KEEP_MODULES| Mark modules to keep from getting removed in flattening.| | |
185184
| <a name="SYNTH_MEMORY_MAX_BITS"></a>SYNTH_MEMORY_MAX_BITS| Maximum number of bits for memory synthesis.| 4096| |
185+
| <a name="SYNTH_MINIMUM_KEEP_SIZE"></a>SYNTH_MINIMUM_KEEP_SIZE| For hierarchical synthesis, we keep modules of larger area than given by this variable and flatten smaller modules. The area unit used is the size of a basic nand2 gate from the platform's standard cell library. The default value is platform specific.| | |
186186
| <a name="SYNTH_NETLIST_FILES"></a>SYNTH_NETLIST_FILES| Skips synthesis and uses the supplied netlist files. If the netlist files contains duplicate modules, which can happen when using hierarchical synthesis on indvidual netlist files and combining here, subsequent modules are silently ignored and only the first module is used.| | |
187187
| <a name="SYNTH_WRAPPED_OPERATORS"></a>SYNTH_WRAPPED_OPERATORS| Synthesize multiple architectural options for each arithmetic operator in the design. These options are available for switching among in later stages of the flow.| | |
188188
| <a name="TAPCELL_TCL"></a>TAPCELL_TCL| Path to Endcap and Welltie cells file.| | |
@@ -205,14 +205,15 @@ configuration file.
205205
- [ADDER_MAP_FILE](#ADDER_MAP_FILE)
206206
- [CLKGATE_MAP_FILE](#CLKGATE_MAP_FILE)
207207
- [LATCH_MAP_FILE](#LATCH_MAP_FILE)
208-
- [MAX_UNGROUP_SIZE](#MAX_UNGROUP_SIZE)
209208
- [MIN_BUF_CELL_AND_PORTS](#MIN_BUF_CELL_AND_PORTS)
210209
- [SDC_FILE](#SDC_FILE)
211210
- [SDC_GUT](#SDC_GUT)
212211
- [SYNTH_BLACKBOXES](#SYNTH_BLACKBOXES)
213212
- [SYNTH_GUT](#SYNTH_GUT)
214213
- [SYNTH_HIERARCHICAL](#SYNTH_HIERARCHICAL)
214+
- [SYNTH_KEEP_MODULES](#SYNTH_KEEP_MODULES)
215215
- [SYNTH_MEMORY_MAX_BITS](#SYNTH_MEMORY_MAX_BITS)
216+
- [SYNTH_MINIMUM_KEEP_SIZE](#SYNTH_MINIMUM_KEEP_SIZE)
216217
- [SYNTH_NETLIST_FILES](#SYNTH_NETLIST_FILES)
217218
- [SYNTH_WRAPPED_OPERATORS](#SYNTH_WRAPPED_OPERATORS)
218219
- [TIEHI_CELL_AND_PORT](#TIEHI_CELL_AND_PORT)
@@ -400,7 +401,6 @@ configuration file.
400401
- [LIB_FILES](#LIB_FILES)
401402
- [MACRO_EXTENSION](#MACRO_EXTENSION)
402403
- [PLATFORM](#PLATFORM)
403-
- [PRESERVE_CELLS](#PRESERVE_CELLS)
404404
- [PROCESS](#PROCESS)
405405
- [RCX_RULES](#RCX_RULES)
406406
- [RECOVER_POWER](#RECOVER_POWER)

flow/.bazelversion

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
7.4.0rc3
1+
7.5.0

flow/MODULE.bazel

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ module(
99
bazel_dep(name = "bazel-orfs")
1010
git_override(
1111
module_name = "bazel-orfs",
12-
commit = "4392a87877b4196502fc89dcdf898fd6efdb3fc0",
12+
commit = "a33cd61ae13d2c4eb8d00e4475bfe214c828bc64",
1313
remote = "https://github.com/The-OpenROAD-Project/bazel-orfs.git",
1414
)
1515

@@ -50,9 +50,9 @@ orfs.default(
5050
# and update "image" to point to the local image.
5151

5252
# Official image https://hub.docker.com/r/openroad/orfs/tags
53-
image = "docker.io/openroad/orfs:v3.0-2528-ga8780221",
53+
image = "docker.io/openroad/orfs:v3.0-2581-g11b93cfa",
5454
# image = "gcr.io/ascenium/orfs-megaboom/flow-ubuntu22.04-builder:3d2c3d-2",
55-
sha256 = "5093434a9d3adaaf8e9a4d62fc0df2537d43ceaf01bf2acf9e94d9d38131b7ca",
55+
sha256 = "6b778fcdc3c7ba5cc5250cde588c43a63c45ffb3126ee072596a4173fe4d7101",
5656
)
5757
use_repo(orfs, "com_github_nixos_patchelf_download")
5858
use_repo(orfs, "docker_orfs")

flow/MODULE.bazel.lock

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

flow/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ include $(PLATFORM_DIR)/config.mk
160160
$(foreach line,$(shell $(SCRIPTS_DIR)/defaults.py),$(eval export $(subst __SPACE__, ,$(line))))
161161

162162
# If the design, nor $(PLATFORM_DIR)/config.mk provided a default, provide one here
163-
export MAX_UNGROUP_SIZE ?= 0
163+
export SYNTH_MINIMUM_KEEP_SIZE ?= 0
164164

165165
# Not normally adjusted by user
166166
export SYNTH_OPERATIONS_ARGS ?= -extra-map $(FLOW_HOME)/platforms/common/lcu_kogge_stone.v

flow/designs/asap7/aes/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
For large designs, it can be useful to split synthesis for the
44
major blocks and combine the synthesized result.
55

6-
SYNTH_HIERARCHICAL=1 and MAX_UNGROUP_SIZE can be used to adjust which
6+
SYNTH_HIERARCHICAL=1 and SYNTH_MINIMUM_KEEP_SIZE can be used to adjust which
77
modules are flattened and which are kept.
88

99
A module that is not flattened, can be built separately without any

flow/designs/asap7/minimal/config.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ export PLATFORM = asap7
44
# Faster build and more information in GUI with hierarchical synthesis
55
export SYNTH_HIERARCHICAL ?= 1
66
# Keep all modules so we can examine the full hierarchy
7-
export MAX_UNGROUP_SIZE ?= 0
7+
export SYNTH_MINIMUM_KEEP_SIZE ?= 0
88

99
# Set the core utilization to 10% for the minimal design to
1010
# maximize chances of getting an initial floorplan. This

flow/designs/asap7/mock-alu/constraints.sdc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,6 @@ set_output_delay [expr $clk_period * $clk_io_pct] -clock $clk_name [all_outputs]
1414

1515
set output_regs [get_cells *io_out_REG*]
1616
if {[llength $output_regs] == 0} {
17-
puts "ERROR: Could not find *io_out_REG*"
17+
puts "Error: Could not find *io_out_REG*"
1818
exit 1
1919
}

flow/designs/asap7/riscv32i/config.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ export RTLMP_MAX_INST = 3500
99
export RTLMP_MIN_MACRO = 1
1010
export RTLMP_MAX_MACRO = 5
1111

12-
export MAX_UNGROUP_SIZE ?= 10000
12+
export SYNTH_MINIMUM_KEEP_SIZE ?= 10000
1313

1414
export VERILOG_FILES = $(sort $(wildcard $(DESIGN_HOME)/src/riscv32i/*.v))
1515
export SDC_FILE = $(DESIGN_HOME)/$(PLATFORM)/riscv32i/constraint.sdc

0 commit comments

Comments
 (0)