Use rowend instead of tie in ClockTree for removed clock buffers.

* Bug: In Cumulus, in ClockTree.py, do not use "tie_x0" which is 2 pitch
    wide to fill the free space left by clock-tree removed (unused)
    buffers. If the buffer size width is odd (in pitch), it will left
    a gap in the WELL. That was the cause of DRC notch errors.
      Instead use "rowend_x0" which is one pitch wide.
      Should use the same mechanism as in Mauka InsertFeed.
This commit is contained in:
Jean-Paul Chaput 2014-10-02 00:42:59 +02:00
parent c244c9ce70
commit 648b85226e
2 changed files with 7 additions and 16 deletions

View File

@ -110,7 +110,7 @@ class HTree ( GaugeConfWrapper ):
self.area = area self.area = area
self.childs = [] self.childs = []
self._getBufferIo() self._getBufferIo()
self.tieCell = self.framework.getCell( 'tie_x0', CRL.Catalog.State.Views ) self.tieCell = self.framework.getCell( 'rowend_x0', CRL.Catalog.State.Views )
self.cellGauge = self.framework.getCellGauge() self.cellGauge = self.framework.getCellGauge()
self.topBuffer = Instance.create( self.cell, 'ck_htree', self.bufferCell ) self.topBuffer = Instance.create( self.cell, 'ck_htree', self.bufferCell )
self.cloneds = [ self.cell ] self.cloneds = [ self.cell ]

View File

@ -1,15 +1,9 @@
// -*- C++ -*- // -*- C++ -*-
// //
// This file is part of the Coriolis Software. // This file is part of the Coriolis Software.
// Copyright (c) UPMC/LIP6 2008-2010, All Rights Reserved // Copyright (c) UPMC 2008-2014, All Rights Reserved
// //
// =================================================================== // +-----------------------------------------------------------------+
//
// $Id$
//
// x-----------------------------------------------------------------x
// | |
// | C O R I O L I S | // | C O R I O L I S |
// | M a u k a - P l a c e r | // | M a u k a - P l a c e r |
// | | // | |
@ -17,15 +11,12 @@
// | E-mail : Jean-Paul.Chaput@asim.lip6.fr | // | E-mail : Jean-Paul.Chaput@asim.lip6.fr |
// | =============================================================== | // | =============================================================== |
// | C++ Module : "./InsertFeeds.cpp" | // | C++ Module : "./InsertFeeds.cpp" |
// | *************************************************************** | // +-----------------------------------------------------------------+
// | U p d a t e s |
// | |
// x-----------------------------------------------------------------x
#include "hurricane/UpdateSession.h" #include "hurricane/UpdateSession.h"
#include "crlcore/ToolBox.h" #include "crlcore/ToolBox.h"
#include "mauka/MaukaEngine.h" #include "mauka/MaukaEngine.h"
namespace { namespace {