Removed the scalefactor from the DRC-CIF rule parsing, so that rules

are interpreted in the dimensions used in the cifoutput section rather
than always in centimicrons (otherwise, rules at, say, 5nm cannot be
represented in the DRC section).
This commit is contained in:
Tim Edwards 2020-10-16 09:37:24 -04:00
parent 4b0652ecc9
commit d99d84c533
2 changed files with 11 additions and 4 deletions

View File

@ -1 +1 @@
8.3.67
8.3.68

View File

@ -157,6 +157,13 @@ drcCifWarning()
* Side effects:
* Updates the DRC technology variables.
*
* Notes: "centidistance" is by default in centimicrons, but it is really in
* whatever units are declared in the cifoutput section; so if cifoutput
* declares nanometers, then units are in nanometers. This may be in
* different units from the non-CIF part of the DRC section. The escape
* sequence substitution in the "Why" text will make sure that the correct
* physical dimensions are presented to the end user.
*
* ----------------------------------------------------------------------------
*/
@ -194,7 +201,7 @@ drcCifWidth(argc, argv)
}
scalefactor = drcCifStyle->cs_scaleFactor;
centidistance *= drcCifStyle->cs_expander; // BSI
// centidistance *= drcCifStyle->cs_expander; // BSI
dpnext = drcCifRules[thislayer][DRC_CIF_SPACE];
dpnew = (DRCCookie *) mallocMagic((unsigned) (sizeof (DRCCookie)));
@ -287,7 +294,7 @@ drcCifSpacing(argc, argv)
}
scalefactor = drcCifStyle->cs_scaleFactor;
centidistance *= drcCifStyle->cs_expander; // BSI
// centidistance *= drcCifStyle->cs_expander; // BSI
dpnext = drcCifRules[layer[0]][DRC_CIF_SOLID];
dpnew = (DRCCookie *) mallocMagic((unsigned) sizeof (DRCCookie));
drcCifAssign(dpnew, centidistance, dpnext, &DBSpaceBits,
@ -1167,7 +1174,7 @@ drcCifMaxwidth(argc, argv)
}
scalefactor = drcCifStyle->cs_scaleFactor;
centidistance *= drcCifStyle->cs_expander; // BSI
// centidistance *= drcCifStyle->cs_expander; // BSI
dpnext = drcCifRules[thislayer][DRC_CIF_SPACE];
dpnew = (DRCCookie *) mallocMagic((unsigned) (sizeof (DRCCookie)));
drcCifAssign(dpnew, centidistance, dpnext, &CIFSolidBits, &CIFSolidBits,