mirror of
https://github.com/RTimothyEdwards/magic.git
synced 2026-08-28 17:15:13 +02:00
Added a (obvious, in retrospect) additional automatic handling of
nets to be avoided for running antenna gate and diffusion area checks when doing "lef write", which is to check if the pin of the net is flagged with use "power" or use "ground". This avoids the need to use the (recently added) "lef nocheck" option (although that still exists as an additional way to control which nets do and do not get checked).
This commit is contained in:
+13
-3
@@ -1442,12 +1442,22 @@ lefWriteMacro(def, f, scale, setback, pinonly, toplayer, domaster)
|
||||
scx.scx_area = labr;
|
||||
SelectClear();
|
||||
|
||||
// Check for net names to ignore for antenna checks.
|
||||
ignored = FALSE;
|
||||
for (lnn = lefIgnoreNets; lnn; lnn = lnn->lnn_next)
|
||||
if (!strcmp(lnn->lnn_name, lab->lab_text))
|
||||
|
||||
// Ports that have been flagged as power or ground should not be
|
||||
// checked for antenna diffusion and gate area.
|
||||
|
||||
if ((lab->lab_flags & PORT_DIR_MASK) != 0)
|
||||
if (((lab->lab_flags & PORT_USE_MASK) == PORT_USE_POWER) ||
|
||||
((lab->lab_flags & PORT_USE_MASK) == PORT_USE_GROUND))
|
||||
ignored = TRUE;
|
||||
|
||||
// Check for net names to ignore for antenna checks.
|
||||
if (!ignored)
|
||||
for (lnn = lefIgnoreNets; lnn; lnn = lnn->lnn_next)
|
||||
if (!strcmp(lnn->lnn_name, lab->lab_text))
|
||||
ignored = TRUE;
|
||||
|
||||
if (!ignored || (setback != 0))
|
||||
SelectNet(&scx, lab->lab_type, 0, NULL, FALSE);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user