mirror of
https://github.com/RTimothyEdwards/magic.git
synced 2026-10-06 09:53:00 +02:00
Modified the routine that determines contact size from the CIF rules
to accomodate a method used for processes that require additional spacing between contacts for large via arrays; this requires distinguishing between large and small areas to output vias, and so requires use of "and" and "and-not" before "squares". This highlights the arbitrary nature of this routine, which probably works better getting data from cifinput, or not at all (i.e., it is used when reading LEF, but it is known that the LEF read routines would be better implemented by running input through CIFGen(). If that were done, then this problem would not come up).
This commit is contained in:
+5
-1
@@ -2143,7 +2143,11 @@ CIFGetContactSize(type, edge, spacing, border)
|
||||
|
||||
/* Anything other than an OR function will break */
|
||||
/* the relationship between magic layers and cuts. */
|
||||
else if (sop->co_opcode != CIFOP_OR)
|
||||
/* NOTE: Making an exception for AND_NOT, which is */
|
||||
/* used to distinguish between small and large via */
|
||||
/* areas. */
|
||||
else if ((sop->co_opcode != CIFOP_OR) &&
|
||||
(sop->co_opcode != CIFOP_ANDNOT))
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user