Skip to content

Commit e8eb31a

Browse files
authored
Merge branch 'master' into gf12-bp-quad-dual
Signed-off-by: Jeff Ng <[email protected]>
2 parents 226cddb + 1085222 commit e8eb31a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+292
-88
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 & 2 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.| | |
@@ -183,7 +182,9 @@ configuration file.
183182
| <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.| | |
184183
| <a name="SYNTH_HIERARCHICAL"></a>SYNTH_HIERARCHICAL| Enable to Synthesis hierarchically, otherwise considered flat synthesis.| 0| |
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.| | |
187+
| <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.| | |
187188
| <a name="TAPCELL_TCL"></a>TAPCELL_TCL| Path to Endcap and Welltie cells file.| | |
188189
| <a name="TAP_CELL_NAME"></a>TAP_CELL_NAME| Name of the cell to use in tap cell insertion.| | |
189190
| <a name="TECH_LEF"></a>TECH_LEF| A technology LEF file of the PDK that includes all relevant information regarding metal layers, vias, and spacing requirements.| | |
@@ -204,15 +205,16 @@ configuration file.
204205
- [ADDER_MAP_FILE](#ADDER_MAP_FILE)
205206
- [CLKGATE_MAP_FILE](#CLKGATE_MAP_FILE)
206207
- [LATCH_MAP_FILE](#LATCH_MAP_FILE)
207-
- [MAX_UNGROUP_SIZE](#MAX_UNGROUP_SIZE)
208208
- [MIN_BUF_CELL_AND_PORTS](#MIN_BUF_CELL_AND_PORTS)
209209
- [SDC_FILE](#SDC_FILE)
210210
- [SDC_GUT](#SDC_GUT)
211211
- [SYNTH_BLACKBOXES](#SYNTH_BLACKBOXES)
212212
- [SYNTH_GUT](#SYNTH_GUT)
213213
- [SYNTH_HIERARCHICAL](#SYNTH_HIERARCHICAL)
214214
- [SYNTH_MEMORY_MAX_BITS](#SYNTH_MEMORY_MAX_BITS)
215+
- [SYNTH_MINIMUM_KEEP_SIZE](#SYNTH_MINIMUM_KEEP_SIZE)
215216
- [SYNTH_NETLIST_FILES](#SYNTH_NETLIST_FILES)
217+
- [SYNTH_WRAPPED_OPERATORS](#SYNTH_WRAPPED_OPERATORS)
216218
- [TIEHI_CELL_AND_PORT](#TIEHI_CELL_AND_PORT)
217219
- [TIELO_CELL_AND_PORT](#TIELO_CELL_AND_PORT)
218220
- [VERILOG_FILES](#VERILOG_FILES)

flow/Makefile

Lines changed: 6 additions & 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
@@ -1026,6 +1026,11 @@ run:
10261026
@mkdir -p $(RESULTS_DIR) $(LOG_DIR) $(REPORTS_DIR) $(OBJECTS_DIR)
10271027
($(OPENROAD_CMD) -no_splash $(if $(filter %.py,$(RUN_SCRIPT)),-python) $(RUN_SCRIPT) 2>&1 | tee $(abspath $(LOG_DIR)/$(RUN_LOG_NAME_STEM).log))
10281028

1029+
export RUN_YOSYS_ARGS ?= -c $(SCRIPTS_DIR)/yosys_keep.tcl
1030+
.phony: run-yosys
1031+
run-yosys:
1032+
$(YOSYS_EXE) $(RUN_YOSYS_ARGS)
1033+
10291034
# Utilities
10301035
#-------------------------------------------------------------------------------
10311036
include $(UTILS_DIR)/utils.mk

flow/designs/asap7/aes-block/rules-base.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": "<="
3333
},
3434
"detailedroute__route__wirelength": {
35-
"value": 72180,
35+
"value": 71923,
3636
"compare": "<="
3737
},
3838
"detailedroute__route__drc_errors": {
@@ -48,23 +48,23 @@
4848
"compare": "<="
4949
},
5050
"finish__timing__setup__ws": {
51-
"value": -89.24,
51+
"value": -86.6,
5252
"compare": ">="
5353
},
5454
"finish__design__instance__area": {
55-
"value": 7362,
55+
"value": 7354,
5656
"compare": "<="
5757
},
5858
"finish__timing__drv__setup_violation_count": {
5959
"value": 478,
6060
"compare": "<="
6161
},
6262
"finish__timing__drv__hold_violation_count": {
63-
"value": 388,
63+
"value": 326,
6464
"compare": "<="
6565
},
6666
"finish__timing__wns_percent_delay": {
67-
"value": -21.75,
67+
"value": -21.47,
6868
"compare": ">="
6969
}
7070
}

flow/designs/asap7/aes-mbff/rules-base.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@
4848
"compare": "<="
4949
},
5050
"finish__timing__setup__ws": {
51-
"value": -78.86,
51+
"value": -68.71,
5252
"compare": ">="
5353
},
5454
"finish__design__instance__area": {
55-
"value": 2360,
55+
"value": 2359,
5656
"compare": "<="
5757
},
5858
"finish__timing__drv__setup_violation_count": {
@@ -64,7 +64,7 @@
6464
"compare": "<="
6565
},
6666
"finish__timing__wns_percent_delay": {
67-
"value": -23.22,
67+
"value": -21.4,
6868
"compare": ">="
6969
}
7070
}

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/aes/rules-base.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
"compare": "<="
4949
},
5050
"finish__timing__setup__ws": {
51-
"value": -66.42,
51+
"value": -61.05,
5252
"compare": ">="
5353
},
5454
"finish__design__instance__area": {
@@ -64,7 +64,7 @@
6464
"compare": "<="
6565
},
6666
"finish__timing__wns_percent_delay": {
67-
"value": -20.87,
67+
"value": -19.6,
6868
"compare": ">="
6969
}
7070
}

flow/designs/asap7/gcd-ccs/rules-base.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
"compare": "<="
4949
},
5050
"finish__timing__setup__ws": {
51-
"value": -80.19,
51+
"value": -79.79,
5252
"compare": ">="
5353
},
5454
"finish__design__instance__area": {
@@ -64,7 +64,7 @@
6464
"compare": "<="
6565
},
6666
"finish__timing__wns_percent_delay": {
67-
"value": -34.82,
67+
"value": -34.7,
6868
"compare": ">="
6969
}
7070
}

flow/designs/asap7/gcd/rules-base.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"compare": "<="
3333
},
3434
"detailedroute__route__wirelength": {
35-
"value": 1454,
35+
"value": 1451,
3636
"compare": "<="
3737
},
3838
"detailedroute__route__drc_errors": {

flow/designs/asap7/ibex/rules-base.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@
4848
"compare": "<="
4949
},
5050
"finish__timing__setup__ws": {
51-
"value": -127.02,
51+
"value": -108.44,
5252
"compare": ">="
5353
},
5454
"finish__design__instance__area": {
@@ -64,7 +64,7 @@
6464
"compare": "<="
6565
},
6666
"finish__timing__wns_percent_delay": {
67-
"value": -17.16,
67+
"value": -15.17,
6868
"compare": ">="
6969
}
7070
}

0 commit comments

Comments
 (0)