Skip to content

Commit bea4348

Browse files
committed
rsz: Use Steiner tree as fallback if w/o parasitics src
Signed-off-by: Martin Povišer <[email protected]>
1 parent 2e35a8a commit bea4348

File tree

2 files changed

+10
-1
lines changed

2 files changed

+10
-1
lines changed

src/rsz/src/RepairDesign.cc

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1185,6 +1185,13 @@ void RepairDesign::repairNet(Net* net,
11851185
// For tristate nets all we can do is resize the driver.
11861186
if (!resizer_->isTristateDriver(drvr_pin)) {
11871187
BufferedNetPtr bnet = resizer_->makeBufferedNet(drvr_pin, corner);
1188+
1189+
if (!bnet) {
1190+
// Create a Steiner bnet in case we haven't selected a source of
1191+
// parasitics
1192+
bnet = resizer_->makeBufferedNetSteiner(drvr_pin, corner);
1193+
}
1194+
11881195
if (bnet) {
11891196
int wire_length = bnet->maxLoadWireLength();
11901197
repair_wire

src/rsz/test/repair_wire3.ok

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,7 @@ in1 manhtn 0.7 steiner 0.7 0.00
1717
Iteration | Area | Resized | Buffers | Nets repaired | Remaining
1818
---------------------------------------------------------------------
1919
0 | +0.0% | 0 | 0 | 0 | 4
20-
final | +0.0% | 0 | 0 | 0 | 0
20+
final | +100.0% | 0 | 3 | 1 | 0
2121
---------------------------------------------------------------------
22+
[INFO RSZ-0037] Found 1 long wires.
23+
[INFO RSZ-0038] Inserted 3 buffers in 1 nets.

0 commit comments

Comments
 (0)