* SemiAgora SKY130 6T SRAM read transient .lib /opt/pdk/sky130A/libs.tech/ngspice/sky130.lib.spice tt .param VDDVAL=1.8 LCH=0.15 WPU=0.42 WPD=0.65 WAX=0.42 WPRE=0.84 VDD vdd 0 {VDDVAL} VPRE pre 0 PWL(0 0 1.8n 0 2.0n {VDDVAL} 8n {VDDVAL}) VWL wl 0 PWL(0 0 2.2n 0 2.4n {VDDVAL} 6.0n {VDDVAL} 6.2n 0 8n 0) XPUQ q qb vdd vdd sky130_fd_pr__pfet_01v8 L={LCH} W={WPU} XPDQ q qb 0 0 sky130_fd_pr__nfet_01v8 L={LCH} W={WPD} XPUQB qb q vdd vdd sky130_fd_pr__pfet_01v8 L={LCH} W={WPU} XPDQB qb q 0 0 sky130_fd_pr__nfet_01v8 L={LCH} W={WPD} XAXQ bl wl q 0 sky130_fd_pr__nfet_01v8 L={LCH} W={WAX} XAXQB blb wl qb 0 sky130_fd_pr__nfet_01v8 L={LCH} W={WAX} XPREBL bl pre vdd vdd sky130_fd_pr__pfet_01v8 L={LCH} W={WPRE} XPREBLB blb pre vdd vdd sky130_fd_pr__pfet_01v8 L={LCH} W={WPRE} CBL bl 0 100f CBLB blb 0 100f .ic v(q)=0 v(qb)=1.8 v(bl)=1.8 v(blb)=1.8 .control set wr_singlescale set wr_vecnames tran 2p 8n uic wrdata /tmp/semiagora_sram_read_100ff.csv time v(pre) v(wl) v(bl) v(blb) v(q) v(qb) i(vdd) quit .endc .end