replace_cell checks
This commit is contained in:
parent
a988588dac
commit
cfaef559e6
|
|
@ -1141,14 +1141,20 @@ ConcreteNetwork::makePins(Instance *inst)
|
|||
void
|
||||
ConcreteNetwork::replaceCell(Instance *inst,
|
||||
LibertyCell *cell)
|
||||
{
|
||||
replaceCellIntenal(inst, cell);
|
||||
}
|
||||
|
||||
void
|
||||
ConcreteNetwork::replaceCellIntenal(Instance *inst,
|
||||
ConcreteCell *cell)
|
||||
{
|
||||
InstancePinIterator *pin_iter = pinIterator(inst);
|
||||
ConcreteCell *ccell = cell;
|
||||
while (pin_iter->hasNext()) {
|
||||
Pin *pin = pin_iter->next();
|
||||
ConcretePin *cpin = reinterpret_cast<ConcretePin*>(pin);
|
||||
ConcretePort *pin_cport = reinterpret_cast<ConcretePort*>(cpin->port());
|
||||
ConcretePort *cport = ccell->findPort(pin_cport->name());
|
||||
ConcretePort *cport = cell->findPort(pin_cport->name());
|
||||
if (cport)
|
||||
cpin->port_ = cport;
|
||||
else
|
||||
|
|
@ -1611,7 +1617,7 @@ ConcreteInstance::deleteNet(ConcreteNet *net)
|
|||
}
|
||||
|
||||
void
|
||||
ConcreteInstance::setCell(LibertyCell *cell)
|
||||
ConcreteInstance::setCell(ConcreteCell *cell)
|
||||
{
|
||||
cell_ = cell;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -247,6 +247,8 @@ protected:
|
|||
ConcretePin *cpin);
|
||||
void connectNetPin(ConcreteNet *cnet,
|
||||
ConcretePin *cpin);
|
||||
void replaceCellIntenal(Instance *inst,
|
||||
ConcreteCell *cell);
|
||||
|
||||
// Cell lookup search order sequence.
|
||||
ConcreteLibrarySeq library_seq_;
|
||||
|
|
@ -284,7 +286,7 @@ public:
|
|||
void addNet(const char *name,
|
||||
ConcreteNet *net);
|
||||
void deleteNet(ConcreteNet *net);
|
||||
void setCell(LibertyCell *cell);
|
||||
void setCell(ConcreteCell *cell);
|
||||
void initPins();
|
||||
|
||||
protected:
|
||||
|
|
|
|||
|
|
@ -254,7 +254,10 @@ proc insert_buffer { buffer_name buffer_cell net load_pins buffer_out_net_name }
|
|||
lappend load_pins $pin1
|
||||
}
|
||||
}
|
||||
insert_buffer_cmd $buffer_name $buffer_cell $net $load_pins $buffer_out_net_name
|
||||
if { $buffer_cell != "NULL" \
|
||||
&& $net != "NULL" } {
|
||||
insert_buffer_cmd $buffer_name $buffer_cell $net $load_pins $buffer_out_net_name
|
||||
}
|
||||
}
|
||||
|
||||
# sta namespace end.
|
||||
|
|
|
|||
Loading…
Reference in New Issue