xbase.layout.array.base
Module Contents
Classes
The base template class. |
Attributes
- class xbase.layout.array.base.ArrayPlaceInfo(parent_grid: bag.layout.routing.grid.RoutingGrid, wire_specs: Mapping[int, Any], tr_widths: bag.layout.routing.base.WDictType, tr_spaces: bag.layout.routing.base.SpDictType, top_layer: int, nx: int, ny: int, tech_cls: T, *, conn_layer: Optional[int] = None, tr_specs: Optional[List[bag.layout.routing.grid.TrackSpec]] = None, half_space: bool = True, ext_mode: xbase.layout.enum.ExtendMode = ExtendMode.AREA, base_orient: pybag.enum.Orientation = Orientation.R0, is_top: bool = True, **kwargs: Any)[source]
- property grid: bag.layout.routing.grid.RoutingGrid[source]
- property tr_manager: bag.layout.routing.base.TrackManager[source]
- property blk_info: xbase.layout.array.data.ArrayLayInfo[source]
- abstract classmethod get_tech_cls(tech_info: bag.layout.tech.TechInfo, **kwargs: Any) xbase.layout.array.tech.ArrayTech [source]
- classmethod get_conn_layer(tech_info: bag.layout.tech.TechInfo, **kwargs: Any) int [source]
- classmethod make_place_info(grid: bag.layout.routing.grid.RoutingGrid, val: Union[ArrayPlaceInfo, Mapping[str, Any]]) A [source]
- class xbase.layout.array.base.ArrayBase(temp_db: bag.layout.template.TemplateDB, params: bag.util.immutable.Param, **kwargs: Any)[source]
Bases:
bag.layout.template.TemplateBase
,abc.ABC
The base template class.
- Parameters:
temp_db (TemplateDB) – the template database.
params (Param) – the parameter values.
log_file (str) – the log file path.
log_level (LogLevel) – the logging level.
**kwargs (Any) –
dictionary of the following optional parameters:
- gridRoutingGrid
the routing grid to use for this template.
- property tech_cls: xbase.layout.array.tech.ArrayTech[source]
- property place_info: Optional[ArrayPlaceInfo][source]
- property tr_manager: bag.layout.routing.base.TrackManager[source]
- draw_base(info: ArrayPlaceInfo, flip_lr: bool = False, flip_ud: bool = False, commit: bool = None) xbase.layout.array.primitives.ArrayUnit [source]
- get_track_info(wire_name: str, wire_idx: int = 0, layer: Optional[int] = None) Tuple[bag.util.math.HalfInt, int] [source]
- get_track_id(wire_name: str, wire_idx: int = 0, layer: Optional[int] = None) bag.layout.routing.base.TrackID [source]
- get_track_index(wire_name: str, wire_idx: int = 0, layer: Optional[int] = None) bag.util.math.HalfInt [source]
- get_device_port(xidx: int, yidx: int, name: str) Union[bag.layout.routing.base.WireArray, pybag.core.BBox, pybag.core.BBoxArray] [source]