DrcPolicy

Explicit per-run DRC suppression policy keyed by cell name.

Import with from rosette.drc import DrcPolicy and pass the policy to run_drc(..., policy=policy). Policies are separate from Cell geometry and hierarchy.

from rosette import BBox, Point
from rosette.drc import DrcPolicy, run_drc

policy = DrcPolicy()
policy.skip_cell("trusted_pdk_cell")
policy.waive_region("taper", BBox(Point(9, -1), Point(11, 1)))

result = run_drc(cell, rules, policy=policy)

Methods

func__init__() -> None

Create an empty DRC policy.

Returns

None
funcskip_cell(name) -> None

Suppress violations attributed entirely to the named cell or its reachable subtree. Violations involving an unskipped cell remain visible.

paramnamestr

Name of the cell whose subtree should be skipped.

Returns

None
funcwaive_region(name, region) -> None

Add a region waiver in the named cell's local coordinate system. A violation is waived only when its location is fully contained by the region after the region is transformed for that cell placement.

paramnamestr

Name of the cell that owns the local waiver region.

paramregionBBox

Finite bounding box with ordered corners.

Returns

None
funcskips(name) -> bool

Return whether the named cell was explicitly passed to skip_cell. This does not report cells included only because they are descendants of a skipped cell.

paramnamestr

Cell name to query.

Returns

bool
funcwaiver_regions(name) -> list[BBox]

Return a copy of the local waiver regions registered for the named cell.

paramnamestr

Cell name to query.

Returns

list[BBox]

On this page