LayoutValidation#

class pyedb.dotnet.database.layout_validation.LayoutValidation(pedb)#

Manages all layout validation capabilities

Overview#

dc_shorts

Find DC shorts on layout.

disjoint_nets

Find and fix disjoint nets from a given netlist.

fix_self_intersections

Find and fix self intersections from a given netlist.

illegal_net_names

Find and fix illegal net names.

illegal_rlc_values

Find and fix RLC illegal values.

padstacks_no_name

Find and fix padstacks without aedt_name.

delete_empty_pin_groups

Import detail#

from pyedb.dotnet.database.layout_validation import LayoutValidation

Method detail#

LayoutValidation.dc_shorts(net_list=None, fix=False)#

Find DC shorts on layout.

Parameters:
net_liststr or list[str], optional

List of nets.

fixbool, optional

If True, rename all the nets. (default) If False, only report dc shorts.

Returns:
List[List[str, str]]

[[net name, net name]].

Examples

>>> edb = Edb("edb_file")
>>> dc_shorts = edb.layout_validation.dc_shorts()
LayoutValidation.disjoint_nets(net_list=None, keep_only_main_net=False, clean_disjoints_less_than=0.0, order_by_area=False, keep_disjoint_pins=False)#

Find and fix disjoint nets from a given netlist.

Parameters:
net_liststr, list, optional

List of nets on which check disjoints. If None is provided then the algorithm will loop on all nets.

keep_only_main_netbool, optional

Remove all secondary nets other than principal one (the one with more objects in it). Default is False.

clean_disjoints_less_thanbool, optional

Clean all disjoint nets with area less than specified area in square meters. Default is 0.0 to disable it.

order_by_areabool, optional

Whether if the naming order has to be by number of objects (fastest) or area (slowest but more accurate). Default is False.

keep_disjoint_pinsbool, optional

Whether if delete disjoints pins not connected to any other primitive or not. Default is False.

Returns:
List

New nets created.

Examples

>>> renamed_nets = edb.layout_validation.disjoint_nets(["GND", "Net2"])
LayoutValidation.fix_self_intersections(net_list=None)#

Find and fix self intersections from a given netlist.

Parameters:
net_liststr, list, optional

List of nets on which check disjoints. If None is provided then the algorithm will loop on all nets.

Returns:
bool
LayoutValidation.illegal_net_names(fix=False)#

Find and fix illegal net names.

LayoutValidation.illegal_rlc_values(fix=False)#

Find and fix RLC illegal values.

LayoutValidation.padstacks_no_name(fix=False)#

Find and fix padstacks without aedt_name.

LayoutValidation.delete_empty_pin_groups()#