From 9e7c59db7f4249417086fbe5bb014057b1ccd642 Mon Sep 17 00:00:00 2001 From: Jean-Paul Chaput Date: Tue, 18 Oct 2005 09:17:30 +0000 Subject: [PATCH] Solve the "bug" of missing VIAs around pad terminals. This was not really a bug : the VIAs where too close of each others in ALU4,ALU5 nero discarting silently one of them. With this modification we no longer respect the double pitch for upper layers at the edge of the routing grid. --- alliance/src/nero/src/RMBK.cpp | 33 ++------------------------------- 1 file changed, 2 insertions(+), 31 deletions(-) diff --git a/alliance/src/nero/src/RMBK.cpp b/alliance/src/nero/src/RMBK.cpp index c7f51341..e597e68a 100644 --- a/alliance/src/nero/src/RMBK.cpp +++ b/alliance/src/nero/src/RMBK.cpp @@ -1,7 +1,7 @@ // -*- C++ -*- // -// $Id: RMBK.cpp,v 1.13 2005/10/17 23:11:06 jpc Exp $ +// $Id: RMBK.cpp,v 1.14 2005/10/18 09:17:30 jpc Exp $ // // /----------------------------------------------------------------\ // | | @@ -851,7 +851,7 @@ void CRBox::mbkload (MBK::CFig *mbkfig // Plane loop for VIAs. for (z = 1; z < mZ; z++) { // Track loop for VIAs. - if (z >= drgrid->zupper) pitch = 2; + if (z >= drgrid->zupper) pitch = 1; else pitch = 1; if (z % 2) { @@ -919,35 +919,6 @@ void CRBox::mbkload (MBK::CFig *mbkfig } } -# if 0 - // Plane loop for VIAs. - for (x = 0; x < mX; x++) { - for (y = 0; y < mY; y++) { - // Loop on Z axis. - for (z = 1; z < mZ; z++) { - if ( (z >= drgrid->zupper) && ( (x % 2) || (y % 2) ) ) - break; - - node = & ( coord.set(x,y,z).node() ); - if (coord.inside()) pNet = node->data.owner; - else pNet = NULL; - - node = & ( coord.set(x,y,z-1).node() ); - if (coord.inside()) pNextNet = node->data.owner; - - if (pNet && (pNet == pNextNet)) { - via.TYPE = MBK::env.z2via (z); - via.XVIA = fig->XAB1() + x * D::X_GRID; - via.YVIA = fig->YAB1() + y * D::Y_GRID; - via.NAME = MBK::namealloc(pNet->name.c_str ()); - - fig->addphvia (via); - } - } // End of Z axis loop. - } - } // End of plane loop for VIAs. -# endif - // Special case of nets with only one terminal. endNet = nets.end ();