Compare commits
2 Commits
1569e2807e
...
2e015ea780
Author | SHA1 | Date |
---|---|---|
Jean-Paul Chaput | 2e015ea780 | |
Jean-Paul Chaput | 63d2f69459 |
|
@ -1180,15 +1180,15 @@ namespace Katana {
|
|||
kflags |= (flags & AllowTerminalMoveUp) ? Flags::AllowTerminal : Flags::NoFlags;
|
||||
kflags |= (flags & IgnoreContacts ) ? Flags::IgnoreContacts : Flags::NoFlags;
|
||||
|
||||
//float reserve = 1.0;
|
||||
float reserve = 0.5;
|
||||
float reserve = 1.0;
|
||||
//float reserve = 0.5;
|
||||
if (_segment->base() and (_segment->base()->getRpDistance() > 2)) reserve = 1.0;
|
||||
if (_segment->getLength() > 60*getPitch()) reserve = 1.0;
|
||||
|
||||
if (_segment->isFixed()) return false;
|
||||
if (not (flags & AllowLocalMoveUp)) {
|
||||
if (_segment->isLocal()) {
|
||||
if (not _segment->canPivotUp(0.5,kflags)) return false;
|
||||
if (not _segment->canPivotUp(1.0,kflags)) return false;
|
||||
} else {
|
||||
if (_segment->getLength() < 20*getPitch()) {
|
||||
if (not (flags & AllowShortPivotUp)) return false;
|
||||
|
@ -1197,7 +1197,7 @@ namespace Katana {
|
|||
if (not _segment->canMoveUp(reserve,kflags)) return false;
|
||||
}
|
||||
} else {
|
||||
if (not _segment->canMoveUp(0.5,kflags)) return false;
|
||||
if (not _segment->canMoveUp(1.0,kflags)) return false;
|
||||
}
|
||||
|
||||
//reprocessParallels();
|
||||
|
|
|
@ -915,9 +915,10 @@ namespace {
|
|||
virtual void doQuery ();
|
||||
inline void doLayout ();
|
||||
inline uint32_t getGoMatchCount () const;
|
||||
inline RoutingGauge* getRoutingGauge () const;
|
||||
private:
|
||||
AllianceFramework* _framework;
|
||||
KatanaEngine* _katana;
|
||||
KatanaEngine* _katana;
|
||||
RoutingGauge* _routingGauge;
|
||||
const ChipTools& _chipTools;
|
||||
PowerRailsPlanes _powerRailsPlanes;
|
||||
|
@ -957,6 +958,10 @@ namespace {
|
|||
{ return _powerRailsPlanes.doLayout(); }
|
||||
|
||||
|
||||
inline RoutingGauge* QueryPowerRails::getRoutingGauge () const
|
||||
{ return _routingGauge; }
|
||||
|
||||
|
||||
bool QueryPowerRails::hasBasicLayer ( const BasicLayer* basicLayer )
|
||||
{ return _powerRailsPlanes.hasPlane ( basicLayer ); }
|
||||
|
||||
|
@ -1031,6 +1036,12 @@ namespace {
|
|||
cdebug_log(159,0) << " rootNet " << rootNet << " (" << rootNet->isClock() << ") "
|
||||
<< go->getCell() << " (" << go->getCell()->isTerminal() << ")" << endl;
|
||||
|
||||
// unsigned int type = _powerRailsPlanes.getActivePlane()->getRoutingPlane()->getLayerGauge()->getType();
|
||||
if (go->getCell()->isTerminalNetlist()) {
|
||||
if (not rootNet->isSupply() and not rootNet->isClock() and not _isBlockagePlane)
|
||||
return;
|
||||
}
|
||||
|
||||
const Segment* segment = dynamic_cast<const Segment*>(component);
|
||||
if ( segment != NULL ) {
|
||||
_goMatchCount++;
|
||||
|
|
Loading…
Reference in New Issue