Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions flow/designs/asap7/jpeg/rules-base.json
Original file line number Diff line number Diff line change
@@ -1,30 +1,30 @@
{
"synth__design__instance__area__stdcell": {
"value": 7117.21,
"value": 7008.24,
"compare": "<="
},
"constraints__clocks__count": {
"value": 1,
"compare": "=="
},
"placeopt__design__instance__area": {
"value": 7801,
"value": 7648,
"compare": "<="
},
"placeopt__design__instance__count__stdcell": {
"value": 66869,
"value": 65384,
"compare": "<="
},
"detailedplace__design__violations": {
"value": 0,
"compare": "=="
},
"cts__design__instance__count__setup_buffer": {
"value": 5815,
"value": 5686,
"compare": "<="
},
"cts__design__instance__count__hold_buffer": {
"value": 5815,
"value": 5686,
"compare": "<="
},
"globalroute__antenna_diodes_count": {
Expand All @@ -48,15 +48,15 @@
"compare": "<="
},
"finish__timing__setup__ws": {
"value": 0.0,
"value": -54.68,
"compare": ">="
},
"finish__design__instance__area": {
"value": 7973,
"value": 7738,
"compare": "<="
},
"finish__timing__drv__setup_violation_count": {
"value": 2907,
"value": 2843,
"compare": "<="
},
"finish__timing__drv__hold_violation_count": {
Expand Down
4 changes: 2 additions & 2 deletions flow/designs/asap7/mock-alu/rules-base.json
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@
"compare": "<="
},
"finish__timing__setup__ws": {
"value": -515.34,
"value": -521.3,
"compare": ">="
},
"finish__design__instance__area": {
Expand All @@ -60,7 +60,7 @@
"compare": "<="
},
"finish__timing__drv__hold_violation_count": {
"value": 148,
"value": 116,
"compare": "<="
},
"finish__timing__wns_percent_delay": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ export PLACE_DENSITY = 0.80
# fakeram7 doesn't block off M5, so limit to M4 here.
# However, PDN will use M5, so it is still added to blockages.
export MAX_ROUTING_LAYER = M4
export MIN_CLK_ROUTING_LAYER = M2

export PLACE_PINS_ARGS = -min_distance 6 -min_distance_in_tracks
export IO_CONSTRAINTS = $(DESIGN_HOME)/asap7/riscv32i-mock-sram/fakeram7_256x32/io.tcl
Expand Down
5 changes: 4 additions & 1 deletion flow/platforms/asap7/config.mk
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,12 @@ export SET_RC_TCL = $(PLATFORM_DIR)/setRC.tcl

# Route options
export MIN_ROUTING_LAYER ?= M2
#export MIN_CLOCK_ROUTING_LAYER = M4
export MIN_CLK_ROUTING_LAYER ?= M4
export MAX_ROUTING_LAYER ?= M7

# Define fastRoute tcl
export FASTROUTE_TCL ?= $(PLATFORM_DIR)/fastroute.tcl

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So now set_macro_extension is no longer invoked.

Is that intentional?

proc fast_route {} {
if {[env_var_exists_and_non_empty FASTROUTE_TCL]} {
log_cmd source $::env(FASTROUTE_TCL)
} else {
log_cmd set_global_routing_layer_adjustment $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) $::env(ROUTING_LAYER_ADJUSTMENT)
log_cmd set_routing_layers -signal $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER)
if {[env_var_exists_and_non_empty MACRO_EXTENSION]} {
log_cmd set_macro_extension $::env(MACRO_EXTENSION)
}
}
}

I take it this is somehow related to The-OpenROAD-Project/OpenROAD#7371 ?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The main motivation is that I believe the default derates are likely too high. All other PDKs have a fastroute.tcl with lower values. The macro extension is probably not intended though if we don't need it that's fine. Its mostly a workaround for drt issues we have seen in some PDKs.

@eder-matheus eder-matheus May 15, 2025

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@oharboe The MACRO_EXTENSION is not used by any design, so it shouldn't have any effect.

Regarding The-OpenROAD-Project/OpenROAD#7371, I intend to review what we're calling regarding GRT configuration and do any necessary cleanup before storing them in ODB. I should start creating PRs for it next week.


# KLayout technology file
export KLAYOUT_TECH_FILE = $(PLATFORM_DIR)/KLayout/asap7.lyt

Expand Down
3 changes: 3 additions & 0 deletions flow/platforms/asap7/fastroute.tcl
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
set_global_routing_layer_adjustment $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER) 0.25
set_routing_layers -clock $::env(MIN_CLK_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER)
set_routing_layers -signal $::env(MIN_ROUTING_LAYER)-$::env(MAX_ROUTING_LAYER)
2 changes: 1 addition & 1 deletion tools/OpenROAD
Submodule OpenROAD updated 93 files
+9 −0 .bazelrc
+1 −1 .github/workflows/github-actions-clang-tidy.yml
+2 −0 BUILD.bazel
+1 −0 MODULE.bazel
+1 −2 src/Timing.cc
+2 −4 src/cts/src/TritonCTS.cpp
+2 −5 src/dbSta/include/db_sta/dbNetwork.hh
+4 −7 src/dbSta/src/SpefWriter.cc
+58 −162 src/dbSta/src/dbNetwork.cc
+0 −1 src/dbSta/src/dbSta.cc
+2 −4 src/dbSta/src/dbSta.i
+1 −5 src/dbSta/test/cpp/TestHconn.cpp
+10 −4 src/dpl/src/Place.cpp
+8 −8 src/dpl/src/infrastructure/Objects.h
+1 −1 src/dpl/src/infrastructure/architecture.cxx
+3 −3 src/dpl/src/infrastructure/architecture.h
+5 −1 src/dpl/src/optimization/detailed_global.cxx
+0 −185 src/dpl/src/optimization/detailed_manager.cxx
+10 −2 src/dpl/src/optimization/detailed_mis.cxx
+3 −0 src/dpl/src/optimization/detailed_orient.cxx
+5 −3 src/dpl/src/optimization/detailed_reorder.cxx
+5 −1 src/dpl/src/optimization/detailed_vertical.cxx
+2 −2 src/dpl/test/multi_height1-opt.defok
+5 −52 src/dpl/test/multi_height1-opt.ok
+2 −2 src/drt/src/dr/FlexDR_maze.cpp
+12 −0 src/drt/src/gc/FlexGC.cpp
+1 −0 src/drt/src/gc/FlexGC.h
+1 −0 src/drt/src/gc/FlexGC_impl.h
+3 −0 src/drt/src/gc/FlexGC_main.cpp
+1 −0 src/grt/src/GlobalRouter.cpp
+3 −1 src/gui/CMakeLists.txt
+76 −0 src/gui/README.md
+54 −1 src/gui/include/gui/gui.h
+4 −8 src/gui/src/clockWidget.cpp
+25 −26 src/gui/src/dbDescriptors.cpp
+24 −0 src/gui/src/displayControls.cpp
+7 −0 src/gui/src/displayControls.h
+130 −0 src/gui/src/gui.cpp
+86 −79 src/gui/src/gui.i
+122 −0 src/gui/src/gui.tcl
+201 −0 src/gui/src/label.cpp
+92 −0 src/gui/src/label.h
+3 −0 src/gui/src/layoutTabs.cpp
+3 −0 src/gui/src/layoutTabs.h
+68 −23 src/gui/src/layoutViewer.cpp
+7 −0 src/gui/src/layoutViewer.h
+64 −0 src/gui/src/mainWindow.cpp
+20 −0 src/gui/src/mainWindow.h
+4 −0 src/gui/src/options.h
+128 −0 src/gui/src/painter.cpp
+2 −0 src/gui/src/painter.h
+41 −1 src/gui/src/renderThread.cpp
+6 −1 src/gui/src/renderThread.h
+42 −52 src/gui/src/ruler.cpp
+1 −4 src/gui/src/ruler.h
+5 −10 src/gui/src/staDescriptors.cpp
+2 −4 src/gui/src/staGui.cpp
+2 −4 src/gui/src/staGuiInterface.cpp
+5 −0 src/gui/src/stub.cpp
+1 −0 src/odb/BUILD
+27 −0 src/odb/include/odb/dbStream.h
+3 −0 src/odb/src/db/CMakeLists.txt
+8 −0 src/odb/src/db/dbCore.h
+18 −2 src/odb/src/db/dbITerm.cpp
+2 −1 src/odb/src/db/dbITerm.h
+2 −1 src/rcx/include/rcx/extRCap.h
+30 −8 src/rcx/src/extRCmodel.cpp
+7 −0 src/rcx/src/extSpef.cpp
+4 −0 src/rcx/src/extmeasure_res.cpp
+4 −0 src/rcx/src/extmeasure_res_v2.cpp
+1 −2 src/rmp/src/Restructure.cpp
+1 −0 src/rsz/include/rsz/Resizer.hh
+71 −49 src/rsz/src/Rebuffer.cc
+1 −1 src/rsz/src/RepairDesign.cc
+1 −1 src/rsz/src/RepairDesign.hh
+4 −13 src/rsz/src/RepairHold.cc
+13 −12 src/rsz/src/Resizer.cc
+1 −3 src/rsz/src/SplitLoadMove.cc
+1 −2 src/rsz/src/SteinerTree.cc
+1 −1 src/rsz/src/UnbufferMove.cc
+806 −814 src/rsz/test/clone_hier.ok
+1,390 −270 src/rsz/test/clone_hier_out.vok
+7 −7 src/rsz/test/pinswap_hier.ok
+8 −12 src/rsz/test/pinswap_hier_out.vok
+3 −3 src/rsz/test/repair_setup4_hier.ok
+73 −8 src/rsz/test/repair_setup4_hier_out.vok
+4 −6 src/rsz/test/split_load_hier.ok
+49 −27 src/rsz/test/split_load_hier_out.vok
+23,692 −23,692 test/upf_aes.defok
+19 −19 test/upf_aes.ok
+24 −0 third-party/gif-h/LICENSE
+52 −0 third-party/gif-h/README.md
+938 −0 third-party/gif-h/gif.h