from typing import Any import nazca as nd from .Foundry import Foundry from .layer_models import LayerSpec class ANT_Si220_MPW(Foundry) : ## Generall parameters STD_SMWG_WIDTH = 0.45 SLAB_GROWTH = 2 W_METAL_MIN = 5 SPACING_HEATER_MIN = 2 SPACING_METAL_MIN = 4 W_HEATER_MIN = 3 lib_path = 'GDS_lib\\' LAYERS = { 'RIB' : LayerSpec('RIB', 1, aliases=('STRIP_COR',)), 'METAL' : 12, 'HTR' : LayerSpec('HTR', 11, aliases=('HEATER',)), 'BONDPAD' : LayerSpec('BONDPAD', 13, aliases=('PAD',)), 'ISOLATION' : LayerSpec('ISOLATION', 203, aliases=('ISL',)), 'DEEPTRENCH' : LayerSpec('DEEPTRENCH', 201, aliases=('DT',)), } ROLES = {} def __init__(self, layermap: Any=None, roles: Any=None) -> None: super().__init__(layermap=layermap or self.LAYERS, roles=roles or self.ROLES) self._add_xsection_(xsection='strip',layers=['STRIP_COR'],growth=[0]) self._add_xsection_(xsection='pad',layers=['METAL','PAD'],growth=[0,-5])