Added additional rule for HVNTM spacing, especially for nhvnative transistors with a p-tap between them.
diff --git a/sky130/magic/sky130.tech b/sky130/magic/sky130.tech index b3158b5..33a3d9f 100644 --- a/sky130/magic/sky130.tech +++ b/sky130/magic/sky130.tech
@@ -1532,6 +1532,19 @@ bloat-all varactor,mvvaractor nwell and allpactive + # HVNTM spacing requires recreating HVNTM + templayer hvntm_block *mvpsd + grow 185 + + templayer hvntm_generate + bloat-all mvnfet,mvnnfet,*mvndiode,mvrdn,*nndiode *mvndiff + bloat-all mvvaractor *mvnsd + and-not hvntm_block + grow 185 + grow 345 + shrink 345 + and-not hvntm_block + templayer m1_small_hole allm1,obsm1,obslic close 140000 @@ -5116,6 +5129,8 @@ "N-well overlap of MV varactor < %d (lvtn.10 + lvtn.4b)" spacing *mvndiode *mvndiode 1070 touching_ok \ "MV N-diode spacing < %d (hvntm.2 + 2 * hvntm.3)" + spacing alldiffmv nwell 825 surround_ok \ + "MV N-diffusion to nwell spacing < %d (hvi.5 + nsd/psd.5)" spacing allnfets allpactivenonfet 270 touching_illegal \ "nFET cannot abut P-diffusion (diff/tap.3)" @@ -5726,6 +5741,14 @@ #endif (MIM) #---------------------------- +# HVNTM +#---------------------------- +variants (full) + cifspacing hvntm_generate hvntm_generate 700 touching_ok \ + "HVNTM spacing < %d (hvntm.2)" +variants (fast),(full) + +#---------------------------- # End DRC style #----------------------------