xbase.layout.mos.guardring
Module Contents
Classes
A layout generator that adds substrate rows on top and bottom of a MOSBase instance. |
- class xbase.layout.mos.guardring.GuardRing(temp_db: bag.layout.template.TemplateDB, params: bag.util.immutable.Param, **kwargs: Any)[source]
Bases:
xbase.layout.mos.base.MOSBase
A layout generator that adds substrate rows on top and bottom of a MOSBase instance.
- property core: xbase.layout.mos.base.MOSBase[source]
- classmethod get_params_info() Dict[str, str] [source]
Returns a dictionary from parameter names to descriptions.
- classmethod get_default_param_values() Dict[str, Any] [source]
Returns a dictionary containing default parameter values.
Override this method to define default parameter values. As good practice, you should avoid defining default values for technology-dependent parameters (such as channel length, transistor width, etc.), but only define default values for technology-independent parameters (such as number of tracks).
- Returns:
default_params – dictionary of default parameter values.
- Return type:
Mapping[str, Any]
- get_schematic_class_inst() Optional[Type[bag.design.module.Module]] [source]
- get_layout_basename() str [source]
Returns the base name for this template.
- Returns:
base_name – the base name of this template.
- Return type:
- draw_layout() None [source]
Draw the layout of this template.
Override this method to create the layout.
WARNING: you should never call this method yourself.
- draw_guard_ring(master: xbase.layout.mos.base.MOSBase, pmos_gr: str, nmos_gr: str, sep_ncol: Tuple[int, int], edge_ncol: int, export_pins: bool = True) Tuple[bag.layout.template.PyLayInstance, List[Tuple[List[bag.layout.routing.base.WireArray], List[bag.layout.routing.base.WireArray]]]] [source]
- _connect_vm(warr_list: List[bag.layout.routing.base.WireArray], keys: List[int], table: Dict[int, bag.layout.routing.base.WireArray]) None [source]
- _get_gr_name(master: xbase.layout.mos.base.MOSBase, is_top: bool) str [source]