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: 16 additions & 0 deletions src/rsz/src/Resizer.cc
Original file line number Diff line number Diff line change
Expand Up @@ -3330,6 +3330,22 @@ sta::Instance* Resizer::createNewTieCellForLoadPin(const sta::Pin* load_pin,
new_tie_loc,
odb::dbNameUniquifyType::IF_NEEDED_WITH_UNDERSCORE);

// If the load pin's instance is not placed, the computed location is
// meaningless; mark the new tie cell as unplaced
if (!db_network_->isPlaced(load_pin)) {
dbInst* new_tie_db_inst = db_network_->staToDb(new_tie_inst);
new_tie_db_inst->setPlacementStatus(odb::dbPlacementStatus::UNPLACED);
}
debugPrint(logger_,
RSZ,
"repair_tie_fanout",
1,
"Created tie instance {} for load pin {} at location ({}, {})",
network_->name(new_tie_inst),
sdc_network_->pathName(load_pin),
dbuToMeters(new_tie_loc.getX()),
dbuToMeters(new_tie_loc.getY()));

// If the load pin is not in the top module, move the new tie instance
sta::Instance* load_inst = network_->instance(load_pin);
if (!network_->isTopInstance(load_inst)) {
Expand Down
4 changes: 2 additions & 2 deletions src/rsz/test/repair_tie10_hier.ok
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ Net gcd/ALU_16_0_16_0_16_unused_CO[14:0]_X_HAN_CARLSON/BI
Number of pins: 2

Driver pins
_395__1/H output (TIEHIx1_ASAP7_75t_R) (0, 0)
_395__1/H output (TIEHIx1_ASAP7_75t_R)

Load pins
_395_/_087_/A input (BUFx2_ASAP7_75t_R) 0.44-0.58
Expand All @@ -77,7 +77,7 @@ Net gcd/ALU_16_0_16_0_16_unused_CO[14:0]_X_HAN_CARLSON/CI
Number of pins: 2

Driver pins
_395__2/H output (TIEHIx1_ASAP7_75t_R) (0, 0)
_395__2/H output (TIEHIx1_ASAP7_75t_R)

Load pins
_395_/_153_/B input (FAx1_ASAP7_75t_R) 1.80-2.18
Expand Down
6 changes: 3 additions & 3 deletions src/rsz/test/repair_tie11_hier.defok
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ UNITS DISTANCE MICRONS 1000 ;
COMPONENTS 8 ;
- alu0/hier2/load1 BUFx2_ASAP7_75t_R ;
- alu0/load2 BUFx2_ASAP7_75t_R ;
- alu0_1 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + PLACED ( 0 0 ) N ;
- alu0_1 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + UNPLACED ;
- alu1/hier2/load1 BUFx2_ASAP7_75t_R ;
- alu1/load2 BUFx2_ASAP7_75t_R ;
- alu1_2 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + PLACED ( 0 0 ) N ;
- alu1_2 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + UNPLACED ;
- load0 BUFx2_ASAP7_75t_R ;
- load0_3 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + PLACED ( 36 135 ) N ;
- load0_3 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + UNPLACED ;
END COMPONENTS
PINS 1 ;
- top_in + NET top_in + DIRECTION INPUT + USE SIGNAL ;
Expand Down
6 changes: 3 additions & 3 deletions src/rsz/test/repair_tie12_hier.defok
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ UNITS DISTANCE MICRONS 1000 ;
COMPONENTS 8 ;
- alu0/hier2/load1 BUFx2_ASAP7_75t_R ;
- alu0/load2 BUFx2_ASAP7_75t_R ;
- alu0_1 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + PLACED ( 0 0 ) N ;
- alu0_1 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + UNPLACED ;
- hier3/alu1/hier2/load1 BUFx2_ASAP7_75t_R ;
- hier3/alu1/load2 BUFx2_ASAP7_75t_R ;
- hier3/alu1_2 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + PLACED ( 0 0 ) N ;
- hier3/alu1_2 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + UNPLACED ;
- load0 BUFx2_ASAP7_75t_R ;
- load0_3 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + PLACED ( 36 135 ) N ;
- load0_3 TIEHIx1_ASAP7_75t_R + SOURCE TIMING + UNPLACED ;
END COMPONENTS
PINS 1 ;
- top_in + NET top_in + DIRECTION INPUT + USE SIGNAL ;
Expand Down
2 changes: 1 addition & 1 deletion src/rsz/test/repair_tie9.defok
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ DIEAREA ( 0 0 ) ( 40000 40000 ) ;
COMPONENTS 4 ;
- t1 sky130_fd_sc_hd__conb_1 ;
- u0 sky130_fd_sc_hd__buf_4 ;
- u0_1 sky130_fd_sc_hd__conb_1 + SOURCE TIMING + PLACED ( 280 1195 ) N ;
- u0_1 sky130_fd_sc_hd__conb_1 + SOURCE TIMING + UNPLACED ;
- u1 sky130_fd_sc_hd__buf_4 ;
END COMPONENTS
NETS 2 ;
Expand Down
Loading