sky130.pcells.pmos_5v#
- sky130.pcells.pmos_5v(diffusion_layer=(65, 20), poly_layer=(66, 20), gate_width=0.75, gate_length=0.5, sd_width=0.3, end_cap=0.13, contact_size=(0.17, 0.17), contact_spacing=(0.17, 0.17), contact_layer=(66, 44), contact_enclosure=(0.06, 0.06), diff_spacing=0.37, diff_enclosure=(0.33, 0.33), diffn_layer=(65, 44), nwell_layer=(64, 22), dnwell_enclosure=(0.4, 0.4), dnwell_layer=(64, 18), nf=1, sdm_enclosure=(0.125, 0.125), nsdm_layer=(93, 44), psdm_layer=(94, 20), sdm_spacing=0.13, hvi_layer=(75, 20), li_width=0.17, li_layer=(67, 20), li_enclosure=0.08, mcon_layer=(67, 44), mcon_enclosure=(0.03, 0.06), m1_layer=(68, 20), npc_layer=(95, 20), npc_spacing=0.09)[source]#
Return PMOS_5v.
- Parameters:
diffusion_layer (tuple[int, int] | str | int | LayerEnum) – spec.
poly_layer (tuple[int, int] | str | int | LayerEnum) – spec.
gate_width (float) – for poly.
gate_length (float) – for poly.
sd_width (float) – source drain length.
end_cap (float) – end cap length.
contact_size (tuple[float, float]) – contact dimension (length and width).
contact_layer (tuple[int, int] | str | int | LayerEnum) – for contacts.
contact_enclosure (tuple[float, float]) – for contacts within diffusion or poly.
diff_spacing (float) – for two adjacent diffusions.
diff_enclosure (tuple[float, float]) – for diffusion within well.
diffp_layer – for bulk tie.
layer (dnwell) – for deep nwell.
nf (int) – for finger option.
sdm_enclosure (tuple[float, float]) – for source drain metal.
nsdm_layer (tuple[int, int] | str | int | LayerEnum) – for source drain metal.
psdm_layer (tuple[int, int] | str | int | LayerEnum) – for source drain metal.
sdm_spacing (float) – for source drain metal.
hvi_layer (tuple[int, int] | str | int | LayerEnum) – for high voltage implant.
li_width (float) – for local interconnect.
li_layer (tuple[int, int] | str | int | LayerEnum) – for local interconnect.
li_enclosure (float) – for local interconnect.
mcon_layer (tuple[int, int] | str | int | LayerEnum) – for metal contact.
mcon_enclosure (tuple[float, float]) – for metal contact.
m1_layer (tuple[int, int] | str | int | LayerEnum) – for metal1.
npc_layer (tuple[int, int] | str | int | LayerEnum) – for poly contact.
npc_spacing (float) – for poly contact.
contact_spacing (tuple[float, float])
diffn_layer (tuple[int, int] | str | int | LayerEnum)
nwell_layer (tuple[int, int] | str | int | LayerEnum)
dnwell_enclosure (tuple[float, float])
dnwell_layer (tuple[int, int] | str | int | LayerEnum)
- Return type:
Component
import sky130 c = sky130.pcells.pmos_5v(gate_length= 2, gate_width=10, sd_width=5) c.plot()
(
Source code
,png
,hires.png
,pdf
)