sky130.pcells.pmos_5v

Contents

sky130.pcells.pmos_5v#

sky130.pcells.pmos_5v(diffusion_layer: LayerEnum | str | tuple[int, int] = (65, 20), poly_layer: LayerEnum | str | tuple[int, int] = (66, 20), gate_width: float = 0.75, gate_length: float = 0.5, sd_width: float = 0.3, end_cap: float = 0.13, contact_size: tuple[float, float] = (0.17, 0.17), contact_spacing: tuple[float, float] = (0.17, 0.17), contact_layer: LayerEnum | str | tuple[int, int] = (66, 44), contact_enclosure: tuple[float, float] = (0.06, 0.06), diff_spacing: float = 0.37, diff_enclosure: tuple[float, float] = (0.33, 0.33), diffn_layer: LayerEnum | str | tuple[int, int] = (65, 44), nwell_layer: LayerEnum | str | tuple[int, int] = (64, 22), dnwell_enclosure: tuple[float, float] = (0.4, 0.4), dnwell_layer: LayerEnum | str | tuple[int, int] = (64, 18), nf: int = 1, sdm_enclosure: tuple[float, float] = (0.125, 0.125), nsdm_layer: LayerEnum | str | tuple[int, int] = (93, 44), psdm_layer: LayerEnum | str | tuple[int, int] = (94, 20), sdm_spacing: float = 0.13, hvi_layer: LayerEnum | str | tuple[int, int] = (75, 20), li_width: float = 0.17, li_layer: LayerEnum | str | tuple[int, int] = (67, 20), li_enclosure: float = 0.08, mcon_layer: LayerEnum | str | tuple[int, int] = (67, 44), mcon_enclosure: tuple[float, float] = (0.03, 0.06), m1_layer: LayerEnum | str | tuple[int, int] = (68, 20), npc_layer: LayerEnum | str | tuple[int, int] = (95, 20), npc_spacing: float = 0.09) Component[source]#

Return PMOS_5v.

Parameters:
  • diffusion_layer – spec.

  • poly_layer – spec.

  • gate_width – for poly.

  • gate_length – for poly.

  • sd_width – source drain length.

  • end_cap – end cap length.

  • contact_size – contact dimension (length and width).

  • contact_layer – for contacts.

  • contact_enclosure – for contacts within diffusion or poly.

  • diff_spacing – for two adjacent diffusions.

  • diff_enclosure – for diffusion within well.

  • diffp_layer – for bulk tie.

  • layer (dnwell) – for deep nwell.

  • nf – for finger option.

  • sdm_enclosure – for source drain metal.

  • nsdm_layer – for source drain metal.

  • psdm_layer – for source drain metal.

  • sdm_spacing – for source drain metal.

  • hvi_layer – for high voltage implant.

  • li_width – for local interconnect.

  • li_layer – for local interconnect.

  • li_enclosure – for local interconnect.

  • mcon_layer – for metal contact.

  • mcon_enclosure – for metal contact.

  • m1_layer – for metal1.

  • npc_layer – for poly contact.

  • npc_spacing – for poly contact.

import sky130

c = sky130.pcells.pmos_5v(gate_length= 2, gate_width=10, sd_width=5)
c.plot()

(Source code, png, hires.png, pdf)

../_images/sky130-pcells-pmos_5v-1.png